【热血传奇】 脚本开发之初识命令

巴西世界杯梅西

随便找个npc的功能代码 上图可见,这个功能文件里面包含了三个代码段。

[@main] 表示主函数(主代码段),也就是点击npc第一个执行的代码段[]传奇脚本是以中括号的形式来定义代码段的。\ 表示换行 有几个换几行<> 用来表示按钮,按钮中的 /@SY 表示点击按钮执行的代码段/ 转义符 如果直接 写@SY 那他就是普通的文字 ,而/@SY 表示代码段SY; 注释符号脚本自带了一些函数 例如@exit 表示关闭弹窗

[@j] 代码段讲解

#IF //if判断开始标识

checkitem 金条 1 //判断玩家是否有1个金条

#ACT //上面的判断如果成立(true)执行下面的操作

take 金条 1 //拿走玩家身上的金条

TimeRecall 60 //限时60分钟,超时传送到原来位置

mapmove B101 //将玩家移动到B101地图

break //执行结束

#ELSESAY //如果判断不成立(false)显示下面的内容

你没有钱!\ //弹出窗上显示的文字

<取消/@exit>\ //显示取消按钮

步骤讲解

点击npc时,会自动执行[@main]中的代码 也就是弹出弹窗显示内容和按钮 当我点击 打听圣域的消息 时,会执行[@SY]代码段 也就是在弹窗显示新的内容。点击关闭 调用@exit 会关闭弹窗 当我点击 去 的时候会执行[@j] 代码段,进行一系列的操作,根据是否有金币,觉得是执行#ACT还是#ELSESAY 当然了,我没有钱,执行了#ELSESAY

常用代码

指令含义#IFif判断#ACT执行代码#ELSEACT执行代码break结束命令,不再向下执行了#SAY在弹窗上显示内容#ELSESAY在弹窗上显示内容close关闭对话框#call调用子程序命令。例#CALL [\商人\杂货铺.txt] @杂货铺 表示: D:\MirServer\Mir200\Envir\QuestDiary\商人goto @段跳转到指定段,开始执行相当于B中的语句

#call详解:#CALL [\商人\杂货铺.txt] @杂货铺 表示:调用 D:\MirServer\Mir200\Envir\QuestDiary\商人\杂货铺.txt 文件中的 @杂货铺 代码段

条件命令(用于#IF后面的校验)

指令含义示例CHECKITEM 物品名 数量检测当前人物所带物品及数量CHECKGOLD 数量检测当前人物所带金币数量CHECKLEVELEX (>,<,=) 等级数检测当前人物等级CHECKCREDITPOINT (>,<,=) 声望数检测当前人物声望CHECKJOB (Warrior,Wizard,Taoist)检测当前人物所属职业CHECKHUM 地图名 数量检测指定地图的玩家数量CHECKITEMW 物品名 数量检测当前人物是否佩带指定物品CHECKDURAEVA 物品名 数值检测当前人物所带矿物等物品的品质CHECKBAGGAGE检测当前人物的背包是否已满ONLINELONGMIN (>,<,=) 时长检测当前人物在线时长CHECKCASTLEDOOR (损坏,开启,关闭)检测沙城城门状态CASTLEWARAY (>,<,=) 天数检测上次攻城到现在的天数CASTLECHANGEDAY (>,<,=) 天数检测沙巴克占领天数CHECKOFGUILD 行会名称检测当前人物行会名称CHECKNAMELIST 角色名列表.txt检测当前人物角色名是否在列表中CHECKGUILDLIST 行会列表.txt检测当前人物行会是否在列表中CHECKACCOUNTLIST 帐号列表.txt检测当前人物帐号是否在列表中CHECKIPLIST IP列表.txt检测当前人物IP是否在列表中CHECKACCOUNTIPLIST 帐号和IP列表.txt检测当前人物登录帐号与IP是否与列表中匹配CHECKNAMEIPLIST 角色名和IP列表.txt检测当前人物角色名称与IP是否与列表中匹配ISADMIN检测当前人物是否为管理员HAVEGUILD检测当前人物是否加入行会ISCASTLEGUILD检测当前人物是否为沙城成员ISCASTLEMASTER检测当前人物是否为沙城老大ISGUILDMASTER检测当前人物是否为行会老大ISNEWHUMAN检测当前人物是否为新人CHECKSLAVECOUNT (>,<,=) 数量检测当前人物所带宠物的数量CHECKSLAVELEVEL (>,<,=) 等级数(7)检测当前人物所带宠物的等级CHECKEXP (>,<,=) 经验值检测当前人物经验值CHECKPOSELEVEL (>,<,=) 等级数检测当前人物对面人物的等级CHECKPOSEGENDER 性别(男,女)检测当前人物对面人物的性别CHECKMEMBERLEVEL 类型 (>,<,=) 等级数检测当前人物的会员等级CHECKMEMBERTYPE (=,>,<) 类型数检测当前人物的会员类型CHECKRENEWLEVEL (=,>,<) 转生次数检测当前人物的转生次数CheckBagSize 数量检测当前人物背包空格数CHECKDC (=,>,<) 攻击下限 (=,>,<) 攻击上限检测当前人物攻击力的上限及下限值CHECKMC (=,>,<) 魔法下限 (=,>,<) 魔法上限检测当前人物魔法力的上限及下限值CHECKSC (=,>,<) 道术下限 (=,>,<) 道术上限检测当前人物道术力的上限及下限值CHECKHP (=,>,<) HP下限 (=,>,<) HP上限检测当前人物HP值的上限及下限值CHECKMP (=,>,<) MP下限 (=,>,<) MP上限检测当前人物MP值的上限及下限值CHECKUSEITEM 物品位置检测当前人物身上指定位置是否戴物品CHECKITEMTYPE 物品位置 物品类型检测当前人物身上指定位置戴的物品是否为指定类型CHECKGAMEPOINT 活力值检测当前人物活力值ISLOCKPASSWORD检测当前人物的仓库是否解锁PASSWORDERRORCOUNT (=,>,<) 次数检测当前人物输入仓库密码错误次数CheckRangeMonCount 地图号 X Y 范围 (=,>,<) 数量检测一个坐标范围内怪物数量CheckMonMap 地图号 数量检测一个指定地图内的怪物数量CHECKMON 数量检测当前人物所在地图内的怪物数量CHECKSKILL 技能名称 (=,>,<) 修炼等级检测当前人物已学技能

功能命令(一般用于 #ACT,#ELSEACT 后面)

指令含义示例MAP 地图名将当前人物移动到指定地图give 物品名 数量给物及数量take 物品名 数量拿走物及数量MOVEMAP 地图名 X Y将当前人物移动到指定地图的指定坐标TIMERECALL 时间值指定当前人物到达多少时间后被传回这里BREAKTIMERECALL中断指定人物达多少时间后被传回这里RECALLMOB 怪物名称 宝宝等级(最高为 7) 叛变时间(分钟) 是否自动变色(0、1)固定颜色(1-7)给予当前人物指定怪物为宝宝setautogetexp 命令 时间 经验 是否安全区(0为任何地方) 地图号(任何地图请不用填)指定当前人物在线泡经验(直接得到经验)GAMEGOLD (=,+,-) 数量调整当前人物的元宝数量SETRANKLEVELNAME 封号调整当前人物的封号ADDGUILDLIST 行会列表.txt将当前人物行会名加入列表DELGUILDLIST 行会列表.txt将当前人物行会名从列表删除ADLNAMELIST 角色名列表.txt将当前人物角色名加入列表DELNAMELIST 角色名列表.txt将当前人物角色名从列表删除CLEARNAMELIST 列表.txt清除列表内的所有信息HAIRSTYLE 数值调整当前人物的发型CHANGENAMECOLOR 数值调整当前人物的名字颜色CHANGEJOB 职业名称(Warrior,Wizard,Taoist)调整当前人物的所属职业CHANGEGENDER 数值调整当前人物的所属性别ADDSKILL 技能名称 技能等级给予当前人物添加指定技能DELSKILL 技能名称删除当前人物的指定技能SKILLLEVEL 技能名称 (=,+,-) 技能等级调整当前人物的指定技能为指定等级DELNOJOBSKILL删除当前人物非本职业的所有技能CLEARSKILL删除当前人物的所有技能GAMEPOINT (=,+,-) 数量调整当前人物的活力值CREDITPOINT (=,+,-) 数量调整当前人物的声望点数SETMEMBERLEVEL (=,+,-) 等级数调整当前人物的会员等级SETMEMBERTYPE (=,+,-) 等级数调整当前人物的会员类型CHANGELEVEL (=,+,-) 等级数调整当前人物的等级CHANGEPKPOINT (=,+,-) 点数调整当前人物的PK点数CHANGEEXP (=,+,-) 经验值调整当前人物的经验值CHANGEMODE 模式类型(1管理模式、2无敌模式、3隐身模式) 开关(1为开,0为关)调整当前人物的游戏模式CHANGEPERMISSION 权限等级调整当前人物的权限等级KILLMONEXPRATE 倍率 有效时间调整当前人物的杀怪经验倍率POWERRATE 倍率 有效时间调整当前人物的攻击力倍率KICK将当前人物踢下线KILL 数值将当前人物杀死,并设置杀死类型KILLSLAVE将当前人物的宝宝全部杀死CLEARPASSWORD清除当前人物的仓库密码RestRenewLevel将人物的转生次数复位为零,即未转生DELMARRY清除当前人物的结婚信息DELMASTER清除当前人物的拜师信息RENEWLEVEL 转次数 转后等级 0将当前人物转生,并设置转生次数以及转生后人物等级跳到多少级SENDMSG 信息类型代码 %s信息内容%d发送文字信息CLEARMAPMON 地图号清除指定地图的所有怪物RESTBONUSPOINT清除当前人物的属性点PARAM1 地图NPC指定刷怪地图PARAM2 横坐标NPC刷怪X坐标PARAM3 纵坐标NPC刷怪Y坐标MONGEN 怪物名称 数量 时间NPC刷怪命令+怪物+数量+时间OpenBigDialogBox打开大的弹出层GuildNoticeMsg发送自定义颜色的文字信息MESSAGEBOX弹出带有确定按钮的提示文字对话框GetRandomText从文件中随机获取一行字符串GetRandomText 文件路径 变量(S0–S99) 指定行(0-10000)SetNewItemValue给装备附加新属性SetNewItemValue 位置(0-12) 属性(0-5) 操作符(+,-,=) 值(1-100)AutoTakeOnItem自动穿装备装备名称 位置(0-16)AutoTakeOffItem自动脱装备装备名称 位置(0-16)

内置变量

指令含义<$USERNAME>人物名称<$GUILDNAME>行会名称<$RANKNAME>行会职位名称<$LEVEL>等级<$HP>生命值<$AC>防御力<$MAXAC>最高防御力<$MAC>魔法防御力<$MAXMAC>最高魔法防御力<$DC>物理攻击力<$MAXDC>最高物理攻击力<$MC>魔法力<$MAXMC>最高魔法力<$SC>道术<$MAXSC>最高道术<$EXP>当前经验值<$MAXEXP>升级经验值<$PKPOINT>PK点数<$CREDITPOINT>声望点数<$GOLDCOUNT>金币数量<$GAMEGOLD>游戏币数<$GAMEPOINT>游戏点数<$HW>腕力<$MAXHW>最高腕力<$BW>背包重量<$MAXBW>最高背包重量<$WW>负重力<$MAXWW>最高负重<$HUNGER>饥饿程度<$LOGINTIME>登录时间<$LOGINLONG>登录时长<$DRESS>衣服<$WEAPON>武器<$RIGHTHAND>蜡烛<$HELMET>头盔<$NECKLACE>项链<$RING_R>右戒指<$RING_L>右戒指<$ARMRING_R>右手镯<$ARMRING_L>左手镯<$BUJUK>护身符<$BELT>腰带<$BOOTS>鞋子<$CHARM>宝石<$CASTLENAME>沙城名称

服务器活动变量

指令含义<$SERVERNAME>服务器名字<$SERVERIP>服务器IP地址<$WEBSITE>游戏网址<$BBSSITE>论坛网址<$CLIENTDOWNLOAD>客户端程序下载地址<$QQ>联系QQ号<$PHONE>联系电话号码<$BANKACCOUNT0>银行帐号信息<$BANKACCOUNT1>银行帐号信息<$BANKACCOUNT2>银行帐号信息<$BANKACCOUNT3>银行帐号信息<$BANKACCOUNT4>银行帐号信息<$BANKACCOUNT5>银行帐号信息<$BANKACCOUNT6>银行帐号信息<$BANKACCOUNT7>银行帐号信息<$BANKACCOUNT8>银行帐号信息<$BANKACCOUNT9>银行帐号信息<$GAMEGOLDNAME>游戏币名称<$USERCOUNT>在线人数<$DATETIME>当前日期时间<$GAMEGOLDNAME>游戏币名称<$HIGHLEVELINFO>最高等人物信息<$HIGHPKINFO>最高PK点数人物信息<$HIGHDCINFO>最高攻击力人物信息<$HIGHMCINFO>最高魔法力人物信息<$HIGHSCINFO>最高道术人物信息

变量命名规则

P0-P9 私人变量(数字型) 不可保存 命令: MOV INC DEC MUL equal small large G0-G499 全局变量(数字型) 可保存 命令: MOV INC DEC MUL equal small large M0-M99 私人变量(数字型) 不可保存 命令: MOV INC DEC MUL equal small large I0-I99 全局变量(数字型) 不可保存 命令: MOV INC DEC MUL equal small large D0-D9 私人变量(数字型) 不可保存 命令: MOV INC DEC MUL equal small large N0-N99 私人变量(数字型) 不可保存 命令: MOV INC DEC MUL equal small large S0-S99 私人变量(字符型)(自定义输入@@InPutString) 不可保存 命令: MOV INC DEC MUL equal small large A0-A499 全局变量(字符型)(自定义输入@@InPutInteger) 可保存 命令: MOV INC DEC MUL equal small large

操作变量

指令含义RANDOM 随机数一般用在#IF语句中作为触发#IF机率EQUAL 变量名 数值检测变量是否等于指定数值LARGE 变量名 数值检测变量是否大于指定数值SMALL 变量名 数值检测变量是否小于指定数值MOV 变量名 数值给予变量赋于指定值INC 变量名 数值给予变量加上指定值DEC 变量名 数值给予变量减去指定值SUM 变量名A 变量名B将两个变量相加MOVR 数值变量赋予小于指定数值的随机非负数$STR(变量)>把变量转为字符串SET [变量名] 数值定义变量RESET [变量名] 连续数字变量清零,reset [100] 7 就是把100 101 102 103 104 105 106这7个变量赋值为0CHECK [变量数值] 数值检测变量是否等于指定数值

敲7游戏怎么玩?从1到100的数字挑战规则详解!
《阴阳师》跳跳妹妹哪里多 跳跳妹妹悬赏封印位置一览