宏按键 JS 接口
void click(int x,int y);
说明
点击操作,参数x和y为整型
示例
mapi.click(100,200);
void click(mapi.point pos);
说明
点击操作,参数pos为坐标对象,可通过获取findimage或findcolor的返回值传入,也可以通过mapi.point的返回值new一个坐标对象。
示例
var pos = mapi.point(100, 200); mapi.click(pos); 或 var imgpos = mapi.findimage(...); mapi.click(imgpos); 或 var corpos = mapi.findcolor(...); mapi.click(corpos);
void delay(int milliseconds);
说明
延时操作,milliseconds为整型,单位毫秒
示例
mapi.delay(1000);
void longpress(int x, int y, int delay);
说明
长按坐标操作,按住一个坐标delay毫秒后松开,参数x和y和delay为整型
示例
mapi.longpress(100,200,2000);
void slide(int sx, int sy, int ex, int ey, int delay, int num);
说明
滑动操作,从点A滑动到点B,不可中断,sx和sy为起始坐标,ex和xy为结束坐标,delay是坐标间隔时间单位毫秒,num为坐标的点数,最少2个,delay*num=实际滑动需要的时间
示例
mapi.slide(100,200,500,600,10,5);
void holdpress(int x, int y);
说明
按住操作,按键松开后才会释放此接口,参数x和y为整型
示例
mapi.holdpress(100,200);
void holdpress(mapi.point pos);
说明
按住操作,按键松开后才会释放此接口,参数pos为坐标对象,可通过获取findimage或findcolor的返回值传入,也可以通过mapi.point的返回值new一个坐标对象。
示例
var pos = mapi.point(100, 200); mapi.holdpress(pos); 或 var imgpos = mapi.findimage(...); mapi.holdpress(imgpos); 或 var corpos = mapi.findcolor(...); mapi.holdpress(corpos);
void key(string keyName, int? releaseTime = null);
说明
执行其他按键的操作,当设置了其他按键,假如你想操作其他按键,可以使用此接口,releasetime为空的情况下,其他按键的释放需要当前按键松开才会释放,当releasetime不为空的情况下,单位毫秒后自动释放
示例
mapi.key('W'); 或 mapi.key('W+1', 1000);
void aimreset();
说明
准心重置操作,在隐藏鼠标控制视角时,使用此接口会释放视角然后立即在准心位置重新按下,主要解决某些游戏因为点击其他位置导致视角失灵的情况
示例
mapi.aimreset();
void directionreset(long delay = 200);
说明
WASD方向键重置,当某些场景或接口操作导致WASD方向键失灵时,使用此接口会重新按WASD,delay不填的时候默认200毫秒延时后重按,延时是为了等待游戏场景切换的时间
示例
mapi.directionrest(); 或 mapi.directionrest(500);
void direction(bool isOpen);
说明
WASD方向键开关,当使用了逻辑判断场景时,如果某个游戏场景需要屏蔽WASD,可以使用此接口,true为打开,false为关闭
示例
mapi.direction(false); 或 mapi.direction(true);
void shotmodeswitch();
说明
在隐藏鼠标控制视角时,可以通过此开关控制鼠标的隐藏或显示,自动切换,无需传参。
示例
mapi.shotmodeswitch();
void shotmode(bool isEnter);
说明
在隐藏鼠标控制视角时,可以通过此开关控制鼠标的隐藏或显示,传参切换。
示例
mapi.shotmode(true); 或 mapi.shotmode(false);
void keyrefresh(string keyName, int x, int y, int offsetx = 0, int offsety = 0);
说明
按键显示位置刷新,keyName按键名称,x和y是坐标,offsetx和offsety是坐标偏移值。
示例
mapi.keyrefresh('Q',100, 200, 0 ,0);
void keyrefresh(string keyName, mapi.point pos, mapi.point offsetPos);
说明
按键显示位置刷新,keyName按键名称,pos是设置的坐标,offsetPos是偏移值。
示例
var imgpos = mapi.findimage(...); var posOffset = mapi.point(0, 0); mapi.keyrefresh('Q',imgpos,posOffset );
void mouseleftswitch();
说明
鼠标左键默认是控制整个TCG窗口,假如按键里设置了鼠标左键,需要通过此接口来切换。
示例
mapi.mouseleftswitch();
void mouseleft(bool isOpen);
说明
自定义鼠标左键控制模式,true或false控制。
示例
mapi.mouseleft(true); 或mapi.mouseleft(false);
void directionrunfast(float val);
说明
自定义键盘行走快跑。例:按shift人物快跑,松开走路。val是shift按下后滑动范围的倍率,也就是手搓时拇指滑动快跑的范围。
示例
mapi.directionrunfast(2);
void directionrunslowly(float val);
说明
自定义键盘行走慢走。例:按shift人物静步或慢走,松开快跑。val是shift按下后滑动范围的倍率,也就是手搓时拇指滑静步或慢走的范围。
示例
mapi.directionrunslowly(2);
void startsimpleaimpar(int x, int y, int delay);
说明
模拟鼠标宏,控制鼠标的移动方向,x和y是鼠标移动的方向,可以为0,delay是每隔多少毫秒移动一次。
示例
mapi.startsimpleaimpar(0,1,20);
void startcustomaimpar();
说明
启动自定义鼠标宏,在代码起始位置,写一次就好,参数调节需要使用changecustomaimpar,启停需要配合使用customaimpar。
示例
mapi.startcustomaimpar();
void changecustomaimpar(int x, int y, int delay);
说明
动态调整自定义的鼠标宏参数,x和y是鼠标移动的方向,可以为0,delay是每隔多少毫秒移动一次,可以通过逻辑处理不同场景下的鼠标参数。
示例
mapi.changecustomaimpar(0,1,20);
void startsectionaimpar();
说明
启动多段参数获取,在代码起始位置,写一次就好,参数调节需要使用changesectionaimpar,启停需要配合使用customaimpar。
示例
mapi.startsectionaimpar();
void changesectionaimpar(string name, int delay, int num, string par, double coeffNum)
说明
多段动态调整自定义鼠标宏参数,name为当前的名称,相同则不处理,delay为弹夹打完所需要的总耗时,num为子弹数量,par为多段参数的数组,数组最大只会截取子弹的最大数,数组长度代码分段长度,coeffNum为偏移系数,支持正数和负数
示例
var list = [5,4,3,2,1]; mapi.changecustomaimpar('测试', 3000, 30, list.toString(), 0);
void customaimpar(bool isOpen);
说明
控制鼠标宏的启停,在某些场景下,不需要使用鼠标宏,通过控制isOpen,来处理逻辑,true是停止,false是取消停止
示例
mapi.customaimpar(true); 或 mapi.customaimpar(false);
void tip(string info, int closeTime = 3);
说明
在TCGAME显示的上方显示一个不会影响操作的弹窗,方便查看当前逻辑执行的内容。info是提示内容,closeTime是弹窗隐藏的时间(单位秒)
示例
mapi.tip('当前模式鼠标下压'); 或mapi.tip('当前模式鼠标下压',3);
mapi.point findimage(string imgName, float sim, int setCol, int setRow, int selectCol, int selectRow);
说明
简单找图,返回当前图标在屏幕的坐标点。imgName是图片的名称,sim是相似度当图片达到后就判断为找到,setCol和setRow设置图片的分块,最大4*4,electCol和 selectRow是选中当前图片所在的块,最大4*4
示例
mapi.findimage('目标', 0.75, 4, 4, 1, 4);
mapi.point findcolor(string color, string poslist);
说明
多点找色,返回当前颜色的坐标点。可以通过TCG界面里的取色工具,直接获取,点击+号后添加到代码里。color是颜色,poslist是坐标
示例
mapi.findimage('255:254:247:142', '1475:648+1477:648+1475:650+1477:650');
mapi.point findcolor(string color, mapi.point point);
说明
单点找色,返回当前颜色的坐标。point参数可以为找图后的坐标,或者为point接口新建的对象。主要解决部分图标按下后会变色的场景,如要要区分按钮变色状态可以通过此接口处理
示例
var img = mapi.findimage('目标', 0.75, 4, 4, 1, 4); mapi.findimage('255:254:247:142',img );
void setglobalmap(object key, object val);
说明
设置全局缓存map,可以在宏按键A,获取宏按键B里缓存的内容。
示例
mapi.setglobalmap('目标', true);
object getglobalmap(object key);
说明
获取全局缓存map,可以在宏按键A,获取宏按键B里缓存的内容。
示例
var result = Boolean(mapi.getglobalmap('目标'));
bool keyispress(string srcKeyCode = null)
说明
获取当前按键或者指定的按键是否被按下,srcKeyCode可为空,为空时获取当前按键,有值时获取指定按键
示例
var result = keyispress(); 或 var result = keyispress('A');
point(int x, int y);
说明
new 一个新的point坐标对象,x和y为整型,循环的代码尽量不用
示例
var pos = mapi.point(100, 200);
void loginfo(string info);
说明
日志输出路径:%appdata%\Sigma-RT\TC Games\Log\macro_javascript.log
示例
loginfo('info日志');
void logwarning(string warning);
说明
日志输出路径:%appdata%\Sigma-RT\TC Games\Log\macro_javascript.log
示例
logwarning('warning日志');
void logerror(string error);
说明
日志输出路径:%appdata%\Sigma-RT\TC Games\Log\macro_javascript.log
示例
logerror('error日志');
void logdebug(string debug);
说明
日志输出路径:%appdata%\Sigma-RT\TC Games\Log\macro_javascript.log
示例
logdebug('debug日志');
void logfatal(string fatal);
说明
日志输出路径:%appdata%\Sigma-RT\TC Games\Log\macro_javascript.log
示例
logfatal('fatal日志');