当前位置:首页 > 引擎 > 翎风引擎

传奇脚本当前目标变量C取值操作教程 人物对象脚本使用方法

admin18小时前2
一、传奇脚本C.目标变量核心使用规则在传奇游戏脚本编写中,当前目标变量取值操作C是针对人物对象的核心常用功能,该变量使用有硬性前提条件,仅可在目标不为空、操作对象为人物的场景下使用,空目标、非人物对象均无法正常调用C.系列变量。针对当前人物目标的私人常量、私人变量,脚本拥有专属的调用格式,和玩家自身…


一、传奇脚本C.目标变量核心使用规则

在传奇游戏脚本编写中,当前目标变量取值操作C是针对人物对象的核心常用功能,该变量使用有硬性前提条件,仅可在目标不为空、操作对象为人物的场景下使用,空目标、非人物对象均无法正常调用C.系列变量。

针对当前人物目标的私人常量、私人变量,脚本拥有专属的调用格式,和玩家自身变量调用方式形成明确区分,是编写对战触发、角色信息查询、变量传递脚本的基础语法。

二、C.常量与C.变量调用格式区别

传奇脚本中当前人物对象的常量、变量调用格式差异明显,编写脚本时需严格区分,避免语法报错、功能失效。

2.1 当前对象私人常量调用

当前人物目标的所有私人常量,直接在常量名称前添加前缀C.即可调用,无需额外格式嵌套,适配各类触发场景。

常用常量调用示例:<$C.HP>、<$C.PKPOINT>、<$C.GOLDCOUNT>、<$C.GAMEGOLD>

2.2 当前对象私人变量调用

当前人物目标的私人变量调用,相比玩家自身变量多一个C.前缀,自身变量调用格式为<$STR(S1)>,而目标人物变量需使用<$C.STR(S1)>格式,这是二者最核心的区别。

常用变量调用示例:<$C.STR(S1)>、<$C.STR(A1)>、<$C.STR(T1)>、<$C.STR(U1)>、<$C.HUMAN(QQQQ)>、<$C.GUILD(WWWW)>

三、C.变量适配的脚本触发场景

C.系列目标变量并非全场景通用,仅适配传奇脚本指定核心触发场景,涵盖战斗交互、角色信息查看等常用玩法,具体适用场景如下:

攻击触发、被攻击触发、死亡触发、查看出售角色其他信息触发。在以上场景中,系统可正常识别当前人物目标,C.变量可稳定生效。

四、SetCurrTarget设置当前对象命令详解

想要正常使用C.目标变量,需先通过专属命令绑定当前人物对象,SetCurrTarget是核心设置指令,决定C.变量的生效目标。

4.1 命令基础规则

命令格式:SetCurrTarget 名称

核心规则:名称为空时,代表清空当前锁定的人物对象;填写对应人物名称时,可将指定人物设置为当前操作对象。

生效前提:目标人物必须和执行脚本的玩家处于同一地图,且双方坐标间距在20格以内,超出范围或地图不一致,命令无法生效。

五、传奇脚本C.变量实战示例代码

以下为可直接复用的完整脚本示例,包含变量传递、对象检测、他人装备查看触发等常用功能,适配传奇服务端脚本编写规范。

5.1 目标对象变量传递脚本

#IF

CHECKCURRTARGETRACE = 0

#ACT

;使用MOV命令调整当前对象的变量 ---MOV对象变量只可读不可写,所以不支持!!!!

;MOV <$C.STR(S1)> <$STR(S1)>

;SENDMSG 6 把我的S1变量值传递给当前对象的S1变量里,MOV不支持这样操作,可用SetHumVar变量传递进行修改,如下

SetHumVar <$C.USERNAME> S1 S2

SENDMSG 6 把我的S2变量值传递给当前对象的S1变量里

#IF

CHECKCURRTARGETRACE = 0

#ACT

;使用MOV命令将自己的变量改为当前对象的变量

MOV <$STR(N1)> <$C.STR(N1)>

SENDMSG 6 把对方的的N1变量值传递给我的的N1变量里,使用“C.STR”代表当前对象的变量比自己的“STR”前面多一个“C.”

5.2 查看他人装备及角色信息脚本

;查看他人装备触发:

[@QueryUserState]

#ACT

MOV S1 <$UserStateName>

;SetCurrTarget 名称 (名称空的情况下表示清空当前对象;设置指定人物为当前对象,要求和执行脚本的玩家在同一地图且坐标在20格以内)

;使用SetCurrTarget设置当前对象

SetCurrTarget S1

#IF

CompareText <$C.USERNAME> S1

;检测设置的对象是否成功

#say

当前对象名称:\

【<$C.USERNAME> 】等级=【<$C.LEVEL> 】攻击=【<$C.DC> - <$C.MAXDC> 】PK值=【<$C.PKPOINT> 】\

#ELSESAY

对象获取失败。

六、脚本编写常见注意要点

1、 MOV命令仅支持读取当前对象变量,不支持直接写入修改目标对象变量,修改他人人物变量需使用SetHumVar命令。

2、 C.系列变量仅针对人物对象生效,怪物、NPC等非人物目标无法调用,使用前需通过CHECKCURRTARGETRACE检测目标类型。

3、 SetCurrTarget命令有地图和坐标距离限制,跨地图、距离超20格会导致对象绑定失败,C.变量无法读取数据。

扫描二维码推送至手机访问。

本文章九路游发布,如需转载请注明出处。如有侵权请联系站长删除。

本文链接:https://www.9luu.com/680.html

分享给朋友: