战神引擎小眼神插件功能介绍

-->


//================给与身体某部位装备元素===============

//TPlayer:通常传递This_Player;

//id:元素类型1-5【6号投保,被人专用】

//pis:身体部位0~15; 

 //val:给与的值

procedure Ys_GivePis(Player:TPlayer;id,pis,val:integer); 


//================给元素物品===============

//TPlayer:通常传递This_Player;

ItemName:物品名字

 //id:元素id,1-5

 //pis身体坐标,0-15

 //val给与的值

procedure Ys_GiveItem(Player:TPlayer;ItemName:string;ys1,ys2,ys3,ys4,ys5:integer); 

//===============获取元素函数====================

//TPlayer:通常传递This_Player;

//id:元素类型1-5【6号投保,被人专用】

//pis:身体部位0~15; 

function Ys_GetPis(Player:TPlayer;id,pis:integer):integer;



//=============全屏吸怪函数================

//TPlayer:通常传递This_Player;

Ys_XiGuai(Player:TPlayer);

//=============自定义伤害函数===========

//RoleId:怪物或敌人id

//hp:掉血值

procedure Ys_Attact(RoleId,hp:integer);


//==========================装备投保函数==============

//TPlayer:通常传递This_Player;

//p:装备位置,

//v:传递100

function Ys_TouBao(Player:TPlayer;p,v:integer):integer;




//【一对函数

 //设置v变量当前时间秒数

procedure ys_SetCD(v_x,v_y:integer);


//==========================自定义秒级别时间对比函数==============

//v_x:getV函数的参数1,

//v_y:getV函数的参数2,

//chazhi:需要判断的cd时长,秒为单位

//【此函数需要和上面函数合用才有意义】

function ys_CmpTime(v_x,v_y,chazhi:integer):Boolean;

//】


//==========================cd过了多少秒==============

function ys_GetHowTime(v_x,v_y,chazhi:integer):integer;


//====================被人定制【五月解锁】=========================

function ys_HeroJp(Player:TPlayer;pos,id:integer):integer;//获取英雄极品装备属性



//【一对函数

////======================================自定义毫秒时间设置函数==================================================


//procedure ys_SetCD_min(v_x,v_y:integer);//目的将当前毫秒数设置进v变量,用于下一个函数对比,不和下面连用就毫无意义

////======================================自定义毫秒时间对比函数==================================================

////v_x:getV函数的参数1,

////v_y:getV函数的参数2,

////chazhi:需要判断的cd时长,毫秒为单位

////【此函数需要和上面函数合用才有意义】

//function ys_CmpTime_min(v_x,v_y,chazhi:integer):Boolean;

//】


//======================================自定义回收函数,通查和Mytimer合用(直接引入调用就会回收json配置的回收物品列表)==================================================

function Ys_HuiShou():Integer;//一旦自动回收返回-999,那么就是回收配置文件语法错误!


//======================================伤害函数==================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// magicLV:技能等级【通常直接传递坐标】

// baseHP:技能基础伤害 【计算公式:技能最终伤害=(攻击上限(和幸运有关) - 防御上限(底线和顶限间随机触发)) + (基础威力 * (技能等级 + 1)) / 10 + 技能切割;】

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// Canl:技能可以施法放成功的距离,【0:代表无施法距离限制;其他值为施法距离】

// cuttingV:技能切割值,【额外增加技能固定伤害】

//返回值:0:代表无伤害或是和平对象,大于零:表示技能最终伤害,-999:表示目标距离太原,攻击无效果

function ys_MyJn_plus(Player:TPlayer;magicLV,baseHP,round,TargetX,TargetY,Canl,types,cuttingV:integer):integer;


//========================================//新伤害函数===========================================================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// magicLV:技能等级【通常直接传递坐标】

// baseHP:技能基础伤害 【计算公式:技能最终伤害=(攻击上限(和幸运有关) - 防御上限(底线和顶限间随机触发)) + (基础威力 * (技能等级 + 1)) / 10 + 技能切割;】

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// Canl:技能可以施法放成功的距离,【0:代表无施法距离限制;其他值为施法距离】

// cuttingV:技能切割值,【额外增加技能固定伤害】

// lei:技能作用半径类型【0:以round为半径的圆形伤害,1:以round为长度的直线伤害】

//返回值:0:代表无伤害或是和平对象,大于零:表示技能最终伤害,-999:表示目标距离太原,攻击无效果

function ys_MyJn_plus2(Player:TPlayer;magicLV,baseHP,round,TargetX,TargetY,Canl,types,cuttingV,lei:integer):integer;


//==========================自定义 推进函数=========================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// juli:推开敌人的距离【1就是普通距离】

// fangxiang:推开敌人的方向【0为后退,1为拉进】

// gailv:推开敌人的概率【100就是百分百触发】

// fanwei:推开敌人的范围【0表示指向性技能】

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// isqun:是否概率群推【1:表示分开每个怪物计算概率;0:只要触发推开,就全部范围内怪物均推开(仅群推起作用)】



function ys_JiTui(Player:TPlayer;juli,fangxiang,gailv,fanwei,TargetX,TargetY,Canl,isqun:integer):integer;

//==========================自定义 推进函数=========================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// juli:推开敌人的距离【1就是普通距离】

// fangxiang:推开敌人的方向【0为后退,1为拉进】

// gailv:推开敌人的概率【100就是百分百触发】

// fanwei:推开敌人的范围【0表示指向性技能】

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// isqun:是否概率群推【1:表示分开每个怪物计算概率;0:只要触发推开,就全部范围内怪物均推开(仅群推起作用)】

//          roleid: 传递参数后,不会推落空,但是不能乱传递,不然报错


function ys_JiTui2(Player:TPlayer;juli,fangxiang,gailv,fanwei,TargetX,TargetY,Canl,isqun,roleid:integer):integer;


//==========================自定义麻痹函数=========================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// timer:麻痹时间【1就是被麻痹1秒】

// rand:麻痹概率【100就是百分百触发】

// round:推开敌人的范围【0表示指向性技能】

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// isqun:是否概率群推【true:表示分开每个怪物计算概率;isqun=false:只要触发就群麻,就全部范围内怪物均群麻(仅群麻起作用)】

function Ys_Mymabi(Player:TPlayer;timer,rand,round,TargetX,TargetY,Canl:integer;isqun:boolean):Integer;

//==========================自定义施毒术=========================================================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// shijian:中毒时间【1就是被中毒1秒】

// leix:中毒类型【0为红毒,1为绿毒】

// hp:绿毒每秒掉血量

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// isqun:是否概率群推【true:表示分开每个怪物计算概率;isqun=false:只要触发就群毒,就全部范围内怪物均群毒(仅群毒起作用)】


function ys_ShiDu(Player:TPlayer;shijian,leix,hp,gailv,fanwei,TargetX,TargetY,Canl,isqun:integer):integer;

//=============================自定义丢物品==================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// num:物品数量

// range:物品范围

// name:丢出物品名字

// 注意:此函数是在角色周围地面上新产生物品,和角色背包有不有物品毫无关系。

function ys_DropItem(Player:TPlayer;num,range:integer;name:string):integer;


//=============================吸血函数==================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// hp:固定吸血【0无效】

// bf_hp:当前最大生命值百分比吸血【0无效】

function ys_XiXue(Player:TPlayer;hp,bf_hp:integer):integer;


//===============2024年3月10日新增函数(勾选【眼神特殊函数】与【自定义伤害plus】配合【super攻击触发】使用就生效)==================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// magicLV:技能等级【通常直接传递坐标】

// baseHP:技能基础伤害 【计算公式:技能最终伤害=(攻击上限(和幸运有关) - 防御上限(底线和顶限间随机触发)) + (基础威力 * (技能等级 + 1)) / 10 + 技能切割;】

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// Canl:技能可以施法放成功的距离,【0:代表无施法距离限制;其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// cuttingV:技能切割值,【额外增加技能固定伤害】

// lei:技能作用半径类型【0:以round为半径的圆形伤害,1:以round为长度的直线伤害】

// effect:技能特效id,对应客户端config176.zip里面补丁skillMagic.json中 "effectID": effect,例如:雷电术特效effect=9

//返回值:0:代表无伤害或是和平对象,大于零:表示技能最终伤害,-999:表示目标距离太原,攻击无效果

function ys_MyJn_effect(Player:TPlayer;magicLV,baseHP,round,TargetX,TargetY,Canl,types,cuttingV,lei,effect:integer):integer;



//参数说明  TPlayer:玩家对象,通常传递This_Player

// shijian:中毒时间【1就是被中毒1秒】

// leix:中毒类型【0为红毒,1为绿毒】

// hp:绿毒每秒掉血量

//          gailv:中毒的概率【100就是百分百触发】

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// isqun:是否概率群推【true:表示分开每个怪物计算概率;isqun=false:只要触发就群毒,就全部范围内怪物均群毒(仅群毒起作用)】

// effect:技能特效id,对应客户端config176.zip里面补丁skillMagic.json中 "effectID": effect,例如:施毒术特效effect=4

function ys_ShiDu_effect(Player:TPlayer;shijian,leix,hp,gailv,fanwei,TargetX,TargetY,Canl,isqun,effect:integer):integer;





//参数说明  TPlayer:玩家对象,通常传递This_Player

// why:【拉怪或者人的判断】 0:都拉,1:只拉人,2:只拉怪,3:飞向敌人

// level:0:不限制等级,1就是小于1级的怪物

// gailv:拉人概率

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// isqun:暂时无作用


function ys_TuiTui(Player:TPlayer;why,level,gailv,fanwei,TargetX,TargetY,Canl,isqun:integer):integer;



//参数说明  TPlayer:玩家对象,通常传递This_Player

// why:【拉怪或者人的判断】 0:都拉,1:只拉人,2:只拉怪,3:飞向敌人

// level:0:不限制等级,1就是小于1级的怪物

// gailv:拉人概率

// TargetX:技能指向坐标x

// TargetY:技能指向坐标y

// Canl:施法距离 【0:表示无距离限制,其他值为施法距离】

// isqun:暂时无作用

//          roleid: 传递参数后,不会推落空,但是不能乱传递,不然报错


function ys_TuiTui2(Player:TPlayer;why,level,gailv,fanwei,TargetX,TargetY,Canl,isqun,roleid:integer):integer;




//参数说明  TPlayer:玩家对象,通常传递This_Player

// magicLV:技能等级【通常直接传递坐标】

// baseHP:技能基础伤害 【计算公式:技能最终伤害=(攻击上限(和幸运有关) - 防御上限(底线和顶限间随机触发)) + (基础威力 * (技能等级 + 1)) / 10 + 技能切割;】

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// Canl:技能可以施法放成功的距离,【0:代表无施法距离限制;其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// cuttingV:技能切割值,【额外增加技能固定伤害】

// lei:技能作用半径类型【0:以round为半径的圆形伤害,1:以round为长度的直线伤害】

// effect:技能特效id,对应客户端config176.zip里面补丁skillMagic.json中 "effectID": effect,例如:雷电术特效effect=9

// undead:对不死族额外伤害,例如undead=1500代表对不死族额外增加1.5倍伤害,

//返回值:0:代表无伤害或是和平对象,大于零:表示技能最终伤害,-999:表示目标距离太原,攻击无效果

function ys_MyJn_undead(Player:TPlayer;magicLV,baseHP,round,TargetX,TargetY,Canl,types,cuttingV,lei,effect,undead:integer):integer;


//=============【仅播放特效,不出伤害函数】================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// all=0表示无视能否攻击,均产生特效,all=1表示只对可以攻击对象产生特效【一般都填写1即可】

// effect:技能特效id,对应客户端config176.zip里面补丁skillMagic.json中 "effectID": effect,例如:雷电术特效effect=9

//返回值:0:

function ys_DoEffect(Player:TPlayer;round,TargetX,TargetY,all,effect:integer):integer;



//=============【自定义伤害,增加了新参数】================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// magicLV:技能等级【通常直接传递坐标】

// baseHP:技能基础伤害 【计算公式:技能最终伤害=(攻击上限(和幸运有关) - 防御上限(底线和顶限间随机触发)) + (基础威力 * (技能等级 + 1)) / 10 + 技能切割;】

// round:技能作用范围半径【0:指向性技能,其他值为范围技能】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// Canl:技能可以施法放成功的距离,【0:代表无施法距离限制;其他值为施法距离】

// types:技能伤害类型,0:攻击类型,1:魔法类型,2:道术类型,3:(仅打怪物)攻击类型,4:(仅打怪物)魔法类型,5:(仅打怪物)道术类型,6:(仅打人物)攻击类型,7:(仅打人物)魔法类型,8:(仅打人物)道术类型,

// cuttingV:技能切割值,【额外增加技能固定伤害】

// lei:技能作用半径类型【0:以round为半径的圆形伤害,1:以round为长度的直线伤害】

// effect:技能特效id,对应客户端config176.zip里面补丁skillMagic.json中 "effectID": effect,例如:雷电术特效effect=9

// undead:对不死族额外伤害,例如undead=1500代表对不死族额外增加1.5倍伤害,

// MgId:给自定义技能定义一个id,不填默认为-1(用于被攻击触发函数获取这个id,如果未使用被攻击触发,可以无视此参数)

// AttactId:当技能范围为零时有效,就是攻击对象的roleid,通常是直接触发脚本传递,详细见runquest的例子。【千万别自己乱填,会出错,不懂怎么用就不要用这个】(此参数传递后,指向性技能不会因为怪物跑太快落空)

// double:上面的伤害除cuttingV这个值以外,技能伤害翻倍,例如double=1500则伤害增加1.5倍,double=500伤害变为0.5倍,

// delay:飘血延迟(毫秒)(用于多段伤害,如果一段伤害,建议填200),经过本人测试每段间隔200是一个很合适的数字

//返回值:0:代表无伤害或是和平对象,大于零:表示技能最终伤害,-999:表示目标距离太原,攻击无效果


function ys_MyJn_delay(Player:TPlayer;magicLV,baseHP,round,TargetX,TargetY,Canl,types,cuttingV,lei,effect,undead,MgId,AttactId,double,delay:integer):integer;


//=============【新增自愈术函数】================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// round:技能作用范围半径【0:指向性治愈术,其他值为范围治愈术】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// onehp:治愈术的首次加血量

// allhp:自愈术持续总加血量【每次增加血量和自己等级有关,运行的原版治愈术,持续回血总量=allhp-onehp】

// cuttingV:技能切割值,【额外增加技能固定伤害】

// isStack:是否允许叠加治愈术【0:代表必须等待持续回血结束,才能再次给他治愈,1:代表一直可以无限制给他叠加治愈】

// roleid:执行性传递才有效(范围不生效)【使用不管,直接按触发函数传递参数】切记可以填零,但是不能自己乱私自填写非零值,否则报错崩溃。

// effect:自愈术在对方头上飘什么特效id,和自定义技能用法一样

//返回值:-1:代表无伤害或是和平对象,大于零:表示给与的治愈总量

function ys_Healing(Player:TPlayer;round,TargetX,TargetY,onehp,allhp,isStack,roleid,effect:integer):integer;

//=============【新增属性增减函数】(可以对自己或敌人释放)================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// round:技能作用范围半径【0:指向性治愈术,其他值为范围治愈术】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// value:给与的属性值,小于零是减临时属性,大于0是增益【系统自动判别,大于0可以给自己和队友释放(和平模式除怪物以外都能释放);小于0只能对敌人释放,全体模式除自己外都会被释放】

// time:持续的时间

// pid:临时属性编号 //21:抗魔力  22:防御力  32:攻击  33:魔法  34:道术  35:攻速  36:生命值  37:魔法值  38:敏捷  39:魔法躲避  39:魔法躲避  40:防御力  41:魔防  44:力量  49:无敌状态   60:进入隐身(这是我测试的一部分,还有很多,全是调用原版的临时属性)

// roleid:执行性传递才有效(范围不生效)【使用不管,直接按触发函数传递参数】切记可以填零,但是不能自己乱私自填写非零值,否则报错崩溃。

// effect:自愈术在对方头上飘什么特效id,和自定义技能用法一样

//返回值:-1:无效,其他值就是给与的临时属性值

function ys_SubShuxing(Player:TPlayer;round,TargetX,TargetY,value,time,pid,roleid,effect:integer):integer;


//=============【新增可以获取或设置身上装备持久函数】================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// pis:身体部位0-15

// val:设置的值【这个值/1000=持久】,也就是持久你看到的50其实内部是5万多,内部的你面板看不到,但是可以根据我函数可以查询到

// types:函数类型【0:表示查询装备的持久,假如装备持久为50,返回值为5万多,】;【1:代表增加持久;2:代表减少持久,3:代表直接修改持久】


//返回值:当前装备剩余持久值(这个值=持久*1000)

function ys_GiveDuar(Player:TPlayer;pis,val,types:integer):integer;


//===========2024.5.20新增=============

//====================================================================

 // TPlayer:玩家对象,通常传递This_Player

 // ItemName:装备名字

 // isbind:是否给绑定物品,0为不绑定,1为绑定

 // ys1~ys17:17种元素,仅1号元素最大值是21亿,其他都是255


procedure Ys_GiveNewItem(Player:TPlayer;ItemName:string;isbind,ys1,ys2,ys3,ys4,ys5,ys6,ys7,ys8,ys9,ys10,ys11,ys12,ys13,ys14,ys15,ys16,ys17:integer); 

//====================================================================

 // TPlayer:玩家对象,通常传递This_Player

 // pis:装备位置0~15

 // pid:元素位置1~17

 // val:元素值,仅当pid=1时可以传递最大21亿,其他位置最大255

  //返回值:0:无效,其他值就是给与的元素值

function ys_SetYs(Player:TPlayer;pis,pid,val:integer):integer;

//====================================================================

 // TPlayer:玩家对象,通常传递This_Player

 // pis:装备位置0~15

 // pid:元素位置1~17

 // isHero:0代表获取主号指定装备的指定位置的元素,1代表获取英雄指定装备位置元素值

 //返回值:0:无效,其他值就是当前位置的元素值

function ys_GetYs(Player:TPlayer;pis,pid,isHero:integer):integer;

//====================================================================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// round:技能作用范围半径【0:指向性治愈术,其他值为范围治愈术】

// TargetX:技能目标坐标x【通常直接传递坐标】

// TargetY:技能目标坐标y【通常直接传递坐标】

// value:给与的属性值,小于零是减临时属性,大于0是增益【系统自动判别,大于0可以给自己和队友释放(和平模式除怪物以外都能释放);小于0只能对敌人释放,全体模式除自己外都会被释放】

// time:持续的时间

// pid:临时属性编号 //21:抗魔力  22:防御力  32:攻击  33:魔法  34:道术  35:攻速  36:生命值  37:魔法值  38:敏捷  39:魔法躲避  39:魔法躲避  40:防御力  41:魔防  44:力量  49:无敌状态   60:进入隐身(这是我测试的一部分,还有很多,全是调用原版的临时属性)

// roleid:执行性传递才有效(范围不生效)【使用不管,直接按触发函数传递参数】切记可以填零,但是不能自己乱私自填写非零值,否则报错崩溃。

// effect:自愈术在对方头上飘什么特效id,和自定义技能用法一样

// IsOther:给敌人还是给自己,填1是给自己以及队友,填0是给敌人,2代表仅给自己

//返回值:-1:无效,其他值就是给与的临时属性值

function ys_AddShuxing(Player:TPlayer;round,TargetX,TargetY,value,time,pid,roleid,effect,IsOther:integer):integer;

//====================================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// round:事情身边多大范围的物品,最大支持20的半径

// v1:变量的一个参数

// gbv:变量关闭值

// *****上面两个值组合运用,比如This_Player.SetV(v1,物品数据库id,100),一旦gbv=This_Player.GetV(v1,物品数据库id)那么这个物品就不会被全屏捡起来*********

// 【增加这个函数的目的是全屏拾取可以绕过网关,m2直接拾取,节约性能,无需设置网关npc间隔】

// 特别注意:使用这个功能除了要勾选【眼神特殊函数】还要勾选【配置1】中的【全屏拾取】,也必须设置以前的This_Player.SetS(1,61,拾取范围)

// ismy:是否仅捡取自己爆的物品。0:表示地上有物品就捡,1:表示只拾取自己打怪爆的物品

//返回值:拾取的数量

function ys_pick(Player:TPlayer;round,v1,gbv,ismy:integer):integer;

//====================================================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// MapName:地图名字(如果填 '' 表示当前玩家的地图)

// MonName:怪物名字

//返回值:指定地图指定怪物名字数量

function ys_CheckMapMonByName(Player:TPlayer;MapName,MonName:string):integer;//直接查询地图怪物数量


//===========================给宝宝设置属性函数=========================================

//参数说明  TPlayer:玩家对象,通常传递This_Player

// MonName:怪物名字,特别注意:【如果要用怪物id设置,MonName必须传递''】

// id:召唤宝宝的序号,特别注意:【如果要用怪物id设置,MonName必须传递''】

//-=---以下几个参数,必须大于0才生效,小于等于0都认为不设置。

// Ac-Sc:和数据库的对应

// gs:攻击间隔(值越小,速度越快)

// ys:移动间隔(值越小,速度越快)【攻速和移动速度必须勾选第二季-》第三页->怪物技能-》怪物伤害技能特效 才有效果】

// hp:设置当前hp

// Maxhp:设置最大hp

//返回值:指定地图指定怪物名字数量

function ys_SetPetV(Player:TPlayer;MonName:string;id,Ac,Dc,DcMax,Mac,Mc,Sc,gs,ys,hp,Maxhp:Integer):integer;//返回值大于0就代表成功


//参数说明  TPlayer:玩家对象,通常传递This_Player

// MonName:怪物名字,特别注意:【如果要用怪物id设置,MonName必须传递''】

// num:召唤的宝宝数量

// lv:召唤的宝宝等级

//-=---以下几个参数,必须大于0才生效,小于等于0都认为不设置。

// Ac-Sc:和数据库的对应

// gs:攻击间隔(值越小,速度越快)

// ys:移动间隔(值越小,速度越快)【攻速和移动速度必须勾选第二季-》第三页->怪物技能-》怪物伤害技能特效 才有效果】

// hp:设置当前hp

// Maxhp:设置最大hp

//返回值:指定地图指定怪物名字数量

function ys_MakeSlaveEx(Player:TPlayer;MonName:string;num,lv,Ac,Dc,DcMax,Mac,Mc,Sc,gs,ys,hp,Maxhp:Integer):integer;//召唤指定属性的宝宝


//=============眼神无限定时器=================


//参数说明  TPlayer:玩家对象,通常传递This_Player

// timer:定时循环运行间隔时间(单位:毫秒),最快间隔:500毫秒

//          特别注意:timer=0 表示清理当前定时器。

// fucName:调用的RunQuest.pas里面的函数名字

//只能定时调用无参数函数

//Ys_SetTimerByName(This_Player,0,'ClearAll');固定写法,表示清理所有定时器(可以随便滥用,是否开启过定时器都可以清理。)

function Ys_SetTimerByName(Player:TPlayer;timer:integer;fucName:string):integer;


//=============眼神弹射技能=================


//参数说明  TPlayer:玩家对象,通常传递This_Player

//           MagicId:拥有弹射技能id。

//   x,y,roleid:坐标x,坐标y,roleid,填0【设置原生技能】

//   用到脚本触发,就可以传递参数,但是magicid就必须填0或者不存在的技能,不然技能就会被附上特殊弹射

//   times:弹射次数,

//   round:最大范围,

//   double:伤害千分比,如果为500弹射伤害为原来伤害的百分之50

//   cutting:脚本触发才生效,额外伤害,(附加原生伤害填0)

//   effectid:弹射的特效技能

//   js:0弹射,=1为溅射

//例如,Ys_TanTanSkill(This_Player,39,0,0,0,10,5,50,0,1,0)//表示39号id的技能赋予10次范围5的弹射,弹射伤害为原来的50/1000,播放弹射技能特效1

function Ys_TanTanSkill(Player:TPlayer;MagicId,x,y,roleid,times,round,double,cutting,effectid,js:integer):integer;

//===============给宝宝提供技能函数===============

//参数说明  TPlayer:玩家对象,通常传递This_Player

//           MagicId:宝宝拥有发生技能特效id。

//   gailv:本技能触发概率

//   shanghai:触发本技能后,基础伤害加成千分比,(大于1000加成,小于一千减少【减少后飘血显示不会变,但是伤害实际会减少;增加伤害会额外叠加一次飘血】),

//   del:0表示添加技能,1表示删除技能,

//   name:宝宝的名字

// 对应参数 :玩家对象,技能id,触发概率百分比,伤害比例,是否删除(0:添加技能,1:删除技能),怪物名字

//插件要求-》勾选 眼神第二季-》第三页》技能相关》怪物技能》怪物伤害触发技能特效(非所有宝宝有效)

function Ys_GiveBBSkill(Player:TPlayer;magicId,gailv,shanghai,del:integer;name:string):integer;

//==============给宝宝特殊属性=============================

//参数说明  TPlayer:玩家对象,通常传递This_Player

//           key1:给与的第一个值,一般是伤害或者倍数。

// key2:给与特殊属性一旦有概率,就是概率值,否则无效

//   shuxing:字符串支持('倍攻','切割','暴击','连击','连击削弱伤害')/

//注意:【倍攻,连击削弱伤害  的key2值无效,key1表示千分比】

//注意:【切割,暴击没  的key2表示百分比触发概率,key1表示千分比伤害】

//注意:【连击  的key2表示百分比触发概率,key1=1即可】

//   name:宝宝的名字

//插件要求-》勾选 眼神第二季-》第三页》技能相关》怪物技能》怪物伤害触发技能特效(非所有宝宝有效)

function Ys_GiveBB_SX(Player:TPlayer;key1,key2:integer;shuxing,name:string):integer;

//==============指定英雄释放技能=============================

//勾选后可以使用脚本指定英雄放指定id技能!

//只支持道士和法师技能!

//可以指定持续释放,也可以指定当前释放一次!

//参数说明  TPlayer:玩家对象,通常传递This_Player

//magicid;将要释放技能id

//isrun;0表示当前释放一次,=1表示一直持续释放这个id的技能

function Ys_SetHeroCSkill(Player:TPlayer;magicid,isrun:integer):integer;

//==============通过npc给物品17个元素值=============================

//类似通过npc的ok框给物品加极品一样,这个可以加元素值。

//参数说明  TPlayer:玩家对象,通常传递This_Player

//This_Item.ClientItemID:npc的ok框有这个参数,和极品给与的参数方案一模一样

//ys1~ys17:大于等于0表示设置这个元素值,小于0表示这个元素值不修改。

function Ys_NpcGiveItemYs(This_player,This_Item.ClientItemID,ys1,ys2,ys3,ys4,ys5,ys6,ys7,ys8,ys9,ys10,ys11,ys12,ys13,ys14,ys15,ys16,ys17);

//==============新的吸怪函数=============================

//参数说明  TPlayer:玩家对象,通常传递This_Player

//round:吸怪范围

//lv:吸怪的等级

//num:吸怪的数量,小于等于0表示不限制数量。

function Ys_NewXiGuai(Player:TPlayer;round,lv,num:integer):integer;


//==============通过itemid给与或者获取装备的极品或者元素属性(一般与进包触发,或者拾取触发合用)=============================

//参数说明  TPlayer:玩家对象,通常传递This_Player

//itemid:物品id,传递参数

//id:1-6或者1-17;具体效果看types的取值,

//val:这个值大于等于0表示赋值,小于0表示获取物品身上本来的值

//types:0表示极品值的获取或者设置,1表示元素值的获取或者设置

function Ys_GetOther(Player:TPlayer;itemid,id,val,types:integer):integer;


//==============通过itemid绑定某个物品(一般与进包触发,或者拾取触发合用)=============================

//参数说明  TPlayer:玩家对象,通常传递This_Player

//itemid:物品id,传递参数

//flag:=0表示绑定,>0表示消除绑定

function Ys_GiveBind(Player:TPlayer;itemid,flag:integer):integer;