//================给与身体某部位装备的元素===============
//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;
上一篇 战神引擎小眼神插件安装教程
下一篇 战神引擎老虎插件免费版