yangpanpan007 发表于 2022-1-18 21:09:54

4Km2ASP引擎三端添加或删除自定义按钮教程

精诚香港高防空间分享
https://bbs.jingchengyouxi.com/
========================================
准备工作:
1.搭建好三端游戏
2.准备好自定义按钮素材
3.签名工具
开始教程:
自定义按钮功能(20个)
格式:命令 参数1 参数2 参数3 参数4 参数5 参数6 参数7 参数8 参数9 参数10
命令:ADDBUTTON




例子
#IF
#ACT
ADDBUTTON 3 1 283 284 285 10 200 1 -1 253/自定义按钮1\254/测试增加按钮
ADDBUTTON 0 1 26 27 20 100 100 0 -1 253/迷点技术\254/迷点三端


[@ButtonClick1]




参数说明:
参数1为WIL补丁序号,此序号在M2-查看-列表信息二-WIL资源 里面编辑
参数2为按钮点击后的脚本触发序号,触发QF里面的[@ButtonClickX]X即为触发序号
参数3为按钮默认图片
参数4为鼠标经过图片
参数5为按钮按下图片
参数6为距离窗口左边的距离(此参数建议用分辨率宽变量计算)
参数7为距离窗口顶边的距离(此参数建议用分辨率高变量计算)


参数8为按钮是否可以移动


按钮是否可以移动,默认不可移动
0=大背景
2=人物装备栏
11=技能栏
15=状态栏
17=属性栏
3=人物背包栏
4=英雄装备栏
12=英雄技能栏
16=英雄状态栏
18=英雄属性栏
5=英雄背包栏
6=聊天框左侧龙界面
7=聊天框右侧等级界面
8=商铺界面
9=时装界面 X
10=英雄时装 X
13=称号栏 X
14=英雄称号栏 X
19=人物出战栏 X
20=行会界面
21=详细属性位置 X
22=宠物界面 X
23=宠物背包 X
24=人物首饰 X
25=英雄首饰 X
26=人物神佑 X
27=英雄神佑 X
; “\”表示换行 “/”颜色分割符


参数9为按钮上面显示的文字标题,-1时为空标题(用于不显示标题) 249/我是自定义按钮 支持20个字符


参数10为鼠标移动到按钮显示的悬浮框备注信息 255/我是自定义按钮提示01\251/我是自定义按钮提示02 支持100个字符
其他说明:
按钮序号只能为1-20,因为最多就添加20个自定义按钮


格式:命令 参数1 参数2


命令:DELBUTTON


例子
#IF
CheckContainsText <$SERVERNAME> 9pka
#ACT
DELBUTTON 1


说明:参数1为按钮序号(1-20) 参数2(0或空的时删除自己的,1时删除全服用户的)




脚本实例:


一定要知道,GOM传奇引擎的“自定义按钮”对应的脚本为


\MirServer2\Mir200\Envir\Market_Def\QFunction-0.txt


\MirServer2\Mir200\Envir\MapQuest_def\QManage.txt


QManage.txt


[@Login]
#IF
#ACT
DELAYGOTO 1 @自定义按钮


[@自定义按钮]
#IF
#ACT
ADDBUTTON 30 1 480 481 482 645 6 0 -1 会员办理
ADDBUTTON 30 2 483 484 485 575 6 0 -1 开始充值
ADDBUTTON 30 3 486 487 488 505 6 0 -1 充值礼包




QFunction-0.txt


[@ButtonClick1]
#IF
#ACT
#CALL [\自定义按钮\会员版本.txt] @会员办理脚本




[@ButtonClick2]
#IF
#ACT
#CALL [\自定义按钮\开始充值.txt] @开始充值脚本




[@ButtonClick3]
#IF
#ACT
#CALL [\自定义按钮\充值礼包.txt] @充值礼包脚本




自定义特效顶戴
--------------------------------------------------------------------------------------------------------------
变量大全


英雄穿戴触发:
[@HeroTakeOnX]
[@HeroTakeOffX]
--------------------------------------------------------------------------------------------------------------------
英雄攻击触发:
[@HeroMagicAttack]         ;(魔法攻击触发)
[@HeroMagicStruck]      ;(被魔法攻击触发)
[@HeroAttack]         ;(攻击触发)
[@HeroStruck]      ;(被攻击触发)
--------------------------------------------------------------------------------------------------------------------


ASP引擎脚本变量大全【变量必须大写】       英雄变量如用在英雄穿戴触发和英雄攻击触发时,变量不用加H. 英雄登陆、英雄升级触发中需要加H.
比如 攻击触发中检测英雄身上的项链直接用<$NECKLACE>,在英雄登陆和英雄升级触发这些老引擎就有的功能脚本中就用<$H.NECKLACE>;
好处是:你写好了人物的带装备时的各种攻击buff脚本,准备写英雄段的时候直接复制粘贴过去就好了。不用去考虑什么乱七八糟的H.\HM.\HL.\HP.
记住这个逻辑:不论人物还是英雄,都是单个独立存在的人物!既然是独立的人物,那他进行的操作触发都应该是把他当作第一人称。这也就是很多玩家
把英雄和人物合称为双号,为什么叫双号,玩家都知道:主号是一个号,英雄也是一个号!
只要你把这个逻辑习惯了,写脚本就不要去考虑其他乱七八糟的,写好主号的之后直接复制粘贴到英雄那段就OK了!如果不是考虑到老引擎版本的转换方便,英雄登陆和升级触发都全给它改成这样了!


变量名 注释说明
<$SERVERNAME> 服务器名称
<$SERVERIP> 服务器IP
<$WEBSITE> 网站在String.ini设置
<$BBSSITE> 论坛在String.ini设置
<$CLIENTDOWNLOAD> 下载地址在String.ini设置
<$QQ> 客服QQ在String.ini设置
<$PHONE> 客服电话在String.ini设置
<$BANKACCOUNT0> 银行信息在String.ini设置
$BANKACCOUNT1....9 银行信息1...9在String.ini设置
<$GAMEGOLDNAME> 游戏币名称
<$GAMEPOINTNAME> 游戏点名称
<$USERCOUNT> 在线人数
<$MACRUNTIME> 服务器运行天数
   
;指向物品的相关常量 意思就是在某些脚本执行或脚本段触发时返回的物品相关信息;
目前支持指向物品的触发段:
[@PickUpItemEx]
[@PickUpItemX]
目前支持指向物品的脚本命令: 检测命令(#IF/GIVEOK)
执行命令(#ACT)
GIVE
GIVEEX
<$CURRTEMNAME> 当前操作指向物品名称
<$CURRTEMMAKEINDEX> 当前操作指向物品唯一生产编号
<$G_CURRTEMNAME> 当前操作指向物品改名名称
<$CURRTEMSTDMODE> 当前操作指向物品DB字段StdMode值
<$CURRTEMSHAPE> 当前操作指向物品DB字段Shape值
<$CURRTEMANICOUNT> 当前操作指向物品DB字段AniCount值
<$CURRTEMDURA> 当前操作指向物品剩余持久值
<$CURRTEMINDEX> 当前操作指向物品DB字段Idx值
<$CURRTEMDURAMAX> 当前操作指向物品DB库中持久最大字段值
<$CURRTEMAC> 当前操作指向物品DB库中防御下限字段值
<$CURRTEMMAXAC> 当前操作指向物品DB库中防御上限字段值
<$CURRTEMMAC> 当前操作指向物品DB库中魔御下限字段值
<$CURRTEMMAXMAC> 当前操作指向物品DB库中魔御上限字段值
<$CURRTEMDC> 当前操作指向物品DB库中攻击下限字段值
<$CURRTEMMAXDC> 当前操作指向物品DB库中攻击上限字段值
<$CURRTEMMC> 当前操作指向物品DB库中魔法下限字段值
<$CURRTEMMAXMC> 当前操作指向物品DB库中魔法上限字段值
<$CURRTEMSC> 当前操作指向物品DB库中道术下限字段值
<$CURRTEMMAXSC> 当前操作指向物品DB库中道术上限字段值
<$CURRTEMSMITE> 当前操作指向物品DB库中暴击字段值
<$CURRTEMLOOKS> 当前操作指向物品DB库中Looks值字段值
<$CURRRTARGETNAME> 当前指向攻击对象的名称
<$CURRRTARGETMAXHP> 当前攻击(被攻击)对象(受)攻击时的最大血量
<$CURRRTARGETDELHP>   当前被攻击对象受攻击被减少的血量
<$CURRRTARGETHP>当前攻击(被攻击)对象(受)攻击时的剩余血量
<$CURRRUSEMAGICID> 攻击对象使用的魔法ID
<$CURHUMANHPTARGETPOWER> HumanHP - 数值 减掉的血
   
<$DATETIME> 服务器时间
<$YEAR> 年
<$MONTH> 月
<$DAY> 日
<$HOUR> 小时
<$MINUTE> 分钟
<$SECOND> 秒数
<$WEEK>星期    注意:国外是星期天才是一周的第一天,所以用此常量的时候注意这一点
<$SCREENWIDTH>角色当前登录游戏使用的分辨率宽度
<$SCREENHEIGHT>角色当前登录游戏使用的分辨率高度
   
<$MONKILLER> 把人物击杀的怪物名称   
<$KILLMONNAME> 被人物击杀的怪物名称
<$KILLMONX> 被人物击杀的怪物X坐标
<$KILLMONY> 被人物击杀的怪物Y坐标   
<$DECEDENT> 被杀者名称
<$KILLER> 杀人者名称
<$HIGHLEVELINFO> 最高级别信息
<$HIGHPKINFO> 最高PK值
<$HIGHDCINFO> 最高攻击
<$HIGHMCINFO> 最高魔法
<$HIGHSCINFO> 最高道术

<$Smite>


//暴击 <$H.Smite>         //英雄暴击
<$DropRate>//PK目标爆率
<$IgnDef>//忽视目标防御
<$DamAdd>//增加伤害
<$DamReb>//伤害反射
<$DcRedu>//物理伤害减少
<$McRedu>   //魔法伤害减少
<$ExpAdd>//经验吸收增加
   
<$HIGHONLINEINFO> 在线最长时间玩家的信息
<$CURRENTMAPDESC> 人物当前地图名称信息如:盟重省
<$CURRENTMAP> 人物当前地图名称编号如:3
<$CURRENTX> 人物当前坐标X
<$CURRENTY> 人物当前坐标Y
<$DIR> 人物朝向(0-8) 英雄的加H
<$BACKDIR> 人物背向(0-8) 英雄的加H
<$STALLNAME>摆摊摊位名称
<$MASTERNAME>主人名字变量(指英雄的主人、宠物的主人也就是本体;或英雄宠物的主人也就是英雄;)
<$GENDER> 人物性别
<$JOB> 人物职业
英雄的变量在人物变量符号前面加H.即可,如下:就不再单独赘述
<$H.JOB> 英雄职业
<$H.GENDER> 英雄性别
<$USERNAME> 人物名称
<$HWID> 人物机器码
<$USERID> 人物登陆账号
<$DLGITEMNAME> 点击后可得到的物品名
<$RANDOMNO> 随机值变量
<$DEALGOLDPLAY> 元宝交易对象
<$RELEVEL> 转生级别
<$H.RELEVEL> 英雄转生级别
<$GUILDNAME> 行会名称
<$RANKNAME> 行会职位名称
<$LEVEL> 级别
<$HP> 当前生命值
<$MAXHP> 最高生命值
<$MP> 魔法值
<$MAXMP> 最高魔法值
<$AC> 防御
<$MAXAC> 最高防御
<$MAC> 魔御
<$MAXMAC> 最高魔御
<$DC> 攻击
<$MAXDC> 最高攻击
<$MC> 魔法
<$MAXMC> 最高魔法
<$SC> 道术
<$MAXSC> 最高道术
<$HIT> 准确
<$SPD> 躲避率
<$EXP> 当前经验
<$MAXEXP> 升级经验值
<$PKPOINT> PK点数
<$CREDITPOINT> 声望点数
<$FENGHAOCOUNT> 人物称号个数
<$HW> 腕力
<$MAXHW> 最高腕力
<$BW> 背包重量
<$MAXBW> 最高背包重量
<$WW> 负重力
<$MAXWW> 最高负重
<$GOLDCOUNT> 金币
<$GAMEGOLD> 元宝
<$NIMBUS> 灵气值
<$GAMEPOINT> 游戏点
<$GAMEDIAMOND> 金刚石数
<$GAMEGIRD> 灵符
<$HUNGER> 饥饿程度
<$LOGINTIME> 登录时间
<$LOGINLONG> 登录时长
<$DRESS> 身上衣服名称
<$WEAPON> 身上武器名称
<$RIGHTHAND> 蜡烛
<$HELMET> 头盔
<$HELMETEX> 斗笠
<$NECKLACE> 项链
<$ARMRING_R> 手镯右
<$ARMRING_L> 手镯左
<$RING_R> 戒指右
<$RING_L> 戒指左
<$BELT> 腰带
<$BOOTS> 鞋子
<$CHARM> 宝石
<$BUJUK> 符
<$DRUM> 军鼓
<$HORSE> 马牌
<$FASHION> 时装
<$IPADDR> IP地址
<$IPLOCAL> IP地区信息如:来自于[<$IPLOCAL>]的玩家[<$USERNAME>]先生进入了游戏..
<$HUMANSHOWNAME> 人物名字全称(可包含行会封号,结婚对象,师徒名……等等)
<$MEMBRETYPE> 会员类型
<$MEMBRELEVEL> 会员等级
<$REVIVALTIME>复活间隔
;可显示的玩家命令对应Command.ini里面相关的值
<$CMD_DATE> 此变量对应Command.ini里面的DATE=服务器时间,这里DATE值为服务器时间变量显示为,服务器时间
<$CMD_ALLOWMSG> 同上
<$CMD_LETSHOUT>   
<$CMD_LETTRADE>   
<$CMD_LETGUILD>   
<$CMD_ENDGUILD>   
<$CMD_BANGUILDCHAT>   
<$CMD_AUTHALLY>   
<$CMD_AUTH>   
<$CMD_AUTHCANCEL>   
<$CMD_USERMOVE>   
<$CMD_SEARCHING>   
<$CMD_ALLOWGROUPCALL>   
<$CMD_GROUPRECALLL>   
<$CMD_ATTACKMODE>   
<$CMD_REST>   
<$CMD_STORAGESETPASSWORD>   
<$CMD_STORAGECHGPASSWORD>   
<$CMD_STORAGELOCK>   
<$CMD_STORAGEUNLOCK>   
<$CMD_UNLOCK>   
   
;记路标识所配套的变量
<$TAGMAPNAME0~<$TAGMAPNAME06> 0~6目标地图名
<$TAGX0~<$TAGX6> 0~6目标坐标X
<$TAGY0~<$TAGY6> 0~6目标坐标Y
例:MAPMOVE <TAGMAPNAME3> <$TAGX3> <$TAGY3>
;城堡相关
<$CASTLEGOLD> 城堡金币数
<$TODAYINCOME> 每天的收入
<$CASTLEDOORSTATE> 城门状态
<$REPAIRDOORGOLD> 修理城门的费用
<$REPAIRWALLGOLD> 修理皇宫城墙的费用
<$GUARDFEE> 雇佣守卫费用
<$ARCHERFEE> 雇佣弓箭手费用
<$REQUESTCASTLELIST> 攻城列表
   
;商人NPC   
<$PRICERATE> 价格倍数
<$UPGRADEWEAPONFEE> 升级武器的价格
<$USERWEAPON> 手上拿的武器的名称
<$QUERYYBDEALLOG> 元宝寄售交易记录(寄售人不在线,交易成功后,使用此变量回收已交易的元宝)
   
;属性附加相关配套变量   
<$ABILITYADDPOINT0> HP附加点数
<$ABILITYADDPOINT1> MP附加点数
<$ABILITYADDPOINT2> 防御附加点数
<$ABILITYADDPOINT3> 魔御附加点数
<$ABILITYADDPOINT4> 攻击附加点数
<$ABILITYADDPOINT5> 魔法附加点数
<$ABILITYADDPOINT6> 道术附加点数
<$ABILITYADDTIME0> HP附加点数时间
<$ABILITYADDTIME1> MP附加点数时间
<$ABILITYADDTIME2> 防御附加点数时间
<$ABILITYADDTIME3> 魔御附加点数时间
<$ABILITYADDTIME4>
攻击附加点数时间
<$ABILITYADDTIME5> 魔法附加点数时间
<$ABILITYADDTIME6> 道术附加点数时间
   
;行会相关   
<$GUILDHUMCOUNT> 行会人数
<$GUILDBUILDPOINT> 行会建筑度
<$GUILDAURAEPOINT> 行会人气度
<$GUILDSTABILITYPOINT>
行会安定度
<$GUILDFLOURISHPOINT>
行会繁荣度
<$REQUESTCASTLEWARITEM> 攻城需要的物品(祖玛头像)
<$REQUESTCASTLEWARDAY> 多少天后攻城
<$REQUESTBUILDGUILDITEM> 允许建立行会的物品(号角)
<$OWNERGUILD> 城堡所属行会
<$CASTLENAME> 城堡名称
<$LORD>
城堡所属行会的老大
<$GUILDWARFEE> 申请行会战需要金币数
<$BUILDGUILDFEE> 建立行会所需的金币数
<$CASTLEWARDATE> 攻城的日期
<$LISTOFWAR> 攻城的时间表
<$CASTLECHANGEDATE> 占领日期
<$CASTLEWARLASTDATE> 最后一次攻城战的日期
<$CASTLEGETDAYS> 占领天数
   
;天地结晶   
<$GCEPAYMENT> 天地结晶开启元宝
<$COLLECTEXP> 天地结晶当前经验
<$COLLECTIPEXP> 天地结晶当前内功经验
<$GAINCOLLECTEXP> 天地结晶当前能提取的经验
<$GAINCOLLECTIPEXP> 天地结晶当前能提取的内功经验
   
;自由属性加点   
<$BONUSPOINT> 剩余点数
<$BONUSABIL_AC> 已+防御点数
<$BONUSABIL_MAC> 已+魔御点数
<$BONUSABIL_DC> 已+攻击点数
<$BONUSABIL_MC> 已+魔法点数
<$BONUSABIL_SC> 已+道术点数
<$BONUSABIL_HP> 已+HP点数
<$BONUSABIL_MP> 已+MC点数
<$BONUSABIL_HIT> 已+准确点数
<$BONUSABIL_SPD> 已+躲避点数
<$BONUSTICK_AC> 增加1点AC所需要的自由点数,如X/17,表示需要17自由点才+1点AC值,AC上下限自动分配,下同
<$BONUSTICK_MAC>   
<$BONUSTICK_MC>   
<$BONUSTICK_DC>   
<$BONUSTICK_SC>   
<$BONUSTICK_HP>   
<$BONUSTICK_MP>   
<$BONUSTICK_HIT>   
<$BONUSTICK_SPD>   
   
;改名后的装备变量信息   
<$CHANGEDRESS>人物身上穿着的衣服改名后名称
<$CHANGEWEAPON>   
<$CHANGEHELMET>   
<$CHANGEHELMETEX>   
<$CHANGERIGHTHAND>   
<$CHANGENECKLACE>   
<$CHANGERING_R>   
<$CHANGERING_L>   
<$CHANGEARMRING_R>   
<$CHANGEARMRING_L>   
<$CHANGEBUJUK>   
<$CHANGEBELT>   
<$CHANGEBOOTS>   
<$CHANGECHARM>   
<$CHANGEDRUM>   
<$CHANGEFASHION>   









页: [1]
查看完整版本: 4Km2ASP引擎三端添加或删除自定义按钮教程