宏按键 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日志');