在传奇游戏中,脚本的制作是玩家互动和游戏逻辑实现的关键。以下是一些常用的传奇脚本制作命令,涵盖了NPC的互动、检测条件、物品操作、地图移动等方面,帮助玩家更好地理解和编写脚本。
基本命令与函数
checkjob (Warr, Wizard, Taos):检测职业
checkgold (金币数):检测金币数量
checklevel (等级):检测角色等级
checkitem (物品名) (数量):检测物品及数量
give gold (金币数):给予金币
give (物品名) (数量):给予物品及数量
take gold (金币数):拿走金币
take (物品名) (数量):拿走物品及数量
checkpkpoint (pk值):检测PK值
checkluckypoint (幸运值):检测幸运值
checkduraeva (物品名) (数值):测试物品品质
checkhum (地图名) (数值):检测地图人数
checkmonmap (地图名) (数值):检测地图怪物数
map (地图名):移动到指定地图
mapmove (地图名) (坐标A) (坐标B):移动到指定地图的指定坐标
monclear:地图清除
close:关闭对话框
TimeRecall (设定时间值):设置时间限制
BreakTimeRecall:中断时间限制
ExchangeMap (地图名):与指定地图的人交换位置
daytime sunset:设置一天的时间
checkbaggage:检测背包是否满
变量操作
*** all (变量) (数值):测试变量是否小于指定数值
large (变量) (数值):测试变量是否大于指定数值
equal (变量) (数值):测试变量是否等于指定数值
mov (变量) (数值):让变量等于指定数值
sum (变量A) (变量B):变量A加变量B
movr (变量) (数值):随机给变量赋予小于指定数值的数
inc (变量) (数值):变量自动加指定数值
骰子与随机数
playdice (骰子数) @xxx:玩骰子,跳转到标签[@xxx]
random (随机数):用于触发随机事件
NPC互动示例
#IF
checkitem 筹码 1 ;检测是否有筹码
#ACT
mov p9 1 ;有,设置p9为1
take 筹码 1 ;拿走一个筹码
movr d0 6 ;随机给d0赋予1到6之间的数
inc d0 1 ;d0加1
playdice 1 @cube ;玩骰子,跳转到[@cube]
#SAY
正在投骰子... <下一步/@cube>
Copy
地图移动示例
[@cube]
#IF
#SAY
骰子的点数 <STR(D0)> 你可以前进 <STR(D0)>
<移动/@next_cube>
[@next_cube]
#IF
equal d0 1
#ACT
goto @posi1
break
#IF
equal d0 2
#ACT
goto @posi2
break
#IF
equal d0 3
#ACT
goto @posi3
break
#IF
equal d0 4
#ACT
goto @posi4
break
#IF
equal d0 5
#ACT
goto @posi5
break
#IF
equal d0 6
#ACT
goto @posi6
break
Copy
结束与跳转
goto (标签名):跳转到指定标签
break:中断当前流程
通过以上命令和示例,玩家可以更好地理解和编写传奇脚本,实现丰富的游戏互动和逻辑控制。
基本命令与函数
checkjob (Warr, Wizard, Taos):检测职业
checkgold (金币数):检测金币数量
checklevel (等级):检测角色等级
checkitem (物品名) (数量):检测物品及数量
give gold (金币数):给予金币
give (物品名) (数量):给予物品及数量
take gold (金币数):拿走金币
take (物品名) (数量):拿走物品及数量
checkpkpoint (pk值):检测PK值
checkluckypoint (幸运值):检测幸运值
checkduraeva (物品名) (数值):测试物品品质
checkhum (地图名) (数值):检测地图人数
checkmonmap (地图名) (数值):检测地图怪物数
map (地图名):移动到指定地图
mapmove (地图名) (坐标A) (坐标B):移动到指定地图的指定坐标
monclear:地图清除
close:关闭对话框
TimeRecall (设定时间值):设置时间限制
BreakTimeRecall:中断时间限制
ExchangeMap (地图名):与指定地图的人交换位置
daytime sunset:设置一天的时间
checkbaggage:检测背包是否满
变量操作
*** all (变量) (数值):测试变量是否小于指定数值
large (变量) (数值):测试变量是否大于指定数值
equal (变量) (数值):测试变量是否等于指定数值
mov (变量) (数值):让变量等于指定数值
sum (变量A) (变量B):变量A加变量B
movr (变量) (数值):随机给变量赋予小于指定数值的数
inc (变量) (数值):变量自动加指定数值
骰子与随机数
playdice (骰子数) @xxx:玩骰子,跳转到标签[@xxx]
random (随机数):用于触发随机事件
NPC互动示例
#IF
checkitem 筹码 1 ;检测是否有筹码
#ACT
mov p9 1 ;有,设置p9为1
take 筹码 1 ;拿走一个筹码
movr d0 6 ;随机给d0赋予1到6之间的数
inc d0 1 ;d0加1
playdice 1 @cube ;玩骰子,跳转到[@cube]
#SAY
正在投骰子... <下一步/@cube>
Copy
地图移动示例
[@cube]
#IF
#SAY
骰子的点数 <STR(D0)> 你可以前进 <STR(D0)>
<移动/@next_cube>
[@next_cube]
#IF
equal d0 1
#ACT
goto @posi1
break
#IF
equal d0 2
#ACT
goto @posi2
break
#IF
equal d0 3
#ACT
goto @posi3
break
#IF
equal d0 4
#ACT
goto @posi4
break
#IF
equal d0 5
#ACT
goto @posi5
break
#IF
equal d0 6
#ACT
goto @posi6
break
Copy
结束与跳转
goto (标签名):跳转到指定标签
break:中断当前流程
通过以上命令和示例,玩家可以更好地理解和编写传奇脚本,实现丰富的游戏互动和逻辑控制。

