xtreme 发表于 2016-4-22 10:28:32

一种私服踢桶的思路

我玩的是1.09私服,这里是以CNBN 1.09为对象来做的,使用的是d2jsp平台,个人认为也可以套用到d2nt等平台
针对的是ACT1 随机坐标的桶,可以做到0配置,自动检测桶位踢桶

演示视频如下:

http://v.youku.com/v_show/id_XMTU0Mjc5ODA2MA==.html?from=y1.7-1.2


代码如下:
   //找到waypoint
   wp = getUnit(2, "Waypoint");   
            
   //扫描所在场景中的所有object,通过比较每个木桶和waypoint的坐标差,找到该踢桶的位置,加上偏移量后走位,注意偏移量是必须要的,否则有时会因为走不到精确点位,反复尝试几次走位后再踢,影响速度
   obj = getObject();
   do {
       if (obj.name == "Barrel") {   
         if (Math.abs(wp.x -obj.x) <30 && Math.abs(wp.y - obj.y)<30 ) {   
               Sc_TownMoveXY(me.act,obj.x+1,obj.y+1);
               break;
               }
       }
   } while (obj && obj.getNext());
         
//到预定踢桶位置后,再次扫描所在场景中的所有object,通过比较每个木桶和char的坐标差,只踢自己身边3个坐标单位内的桶,踢每个桶时判断桶的状态,完好的桶状态是0,重试的时间间隔为1毫秒,CNBN测试不加间隔会被踢
   obj = getObject();
   do {
       if (obj.name == "Barrel") {
                     
         if ( Math.abs(me.x -obj.x) <4 && Math.abs(me.y - obj.y)<4) {
                        
               do { obj.interact(); delay(1); } while (obj.state == 0);
         }
       }
   } while (obj && obj.getNext());

pengpeng 发表于 2016-4-22 10:36:55

技术贴,沙发学习

trade 发表于 2020-4-10 15:18:06

技术贴,学习了

D2-ft 发表于 2020-12-3 00:16:57

厉害了

D2-ft 发表于 2020-12-3 00:17:01

厉害了

idi 发表于 2021-12-30 08:51:21

标记下,厉害了
页: [1]
查看完整版本: 一种私服踢桶的思路