77m2脚本编写注意项 77M2如何完美的运行变量说明

[复制链接]
发表于 2019-10-11 00:15:56 | 显示全部楼层 |阅读模式
[QFunctionNpc]

1.不可对OnBagItemEvent函数传入的物品Item执行穿戴、丢弃或删除等操作,该事件的目的只是为了表示背包数量物品变化

2.事件PlayerDropItem、PlayerThrowItem中如果对物品执行穿戴、丢弃或删除等操作,则必须设置Accept为False

3.不可对不属于人物的物品执行穿戴操作,如事件MonDropItem、DropItemByMonName中的物品

4.事件OnTakeOffItem中永远无法也不可以对正在取下的物品执行穿戴到另外一个位置的操作



[变量使用]

unit Q56;

inte**ce
  uses Classes, SysUtils;

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);

var
  HumCount: Integer;
  //这里表示的是全局变量,如果做个人变量使用则需要谨慎,逻辑不清可能会导致数据错乱

implementation

var
  HumCountA: Integer;
  //这里表示单元内的全局变量,针对本单元此变量是唯一的,不属于个人变量,同样如果做个
  //人变量使用则需要谨慎,逻辑不清可能会导致数据错乱

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
  HumCountB: Integer; //这里的变量是函数局部变量,个人数据处理时不影响其他玩家,可任意赋值
begin
  //如果需要使用个人变量,则应该考虑如下方式

  //1.常规变量
  Player.S[11] := '字符串'; //临时变量,退出游戏清空
  Player.P[11] := 110; //临时变量,退出游戏清空
  Player.N[11] := 110; //永久变量,将保存到数据

  //2.自定义变量
  Player.VarBoolean('是否领取奖励').AsBoolean := True; //定义一个布尔型变量,并且赋值
  Player.VarBoolean('是否领取奖励').Save; //存储该变量,如果不存储,则玩家离线后此变量消失  
  //同样的还有: Player.VarString,Player.VarInteger,Player.VarFloat,Player.VarDateTime
end;

end.





上一篇:188m2引擎扩展装备地图等补丁说明 188M2补丁读取优先级顺序
下一篇:77m2如何查看M2Server所在机器的机器码
爱上论坛,GM基地,传奇基地,传奇SF,传奇素材网,传奇脚本网,传奇一条龙,服务器租用,版本定制!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|传奇GM论坛 ( 湘ICP备16009886号-2 )|网站地图

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.

禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.如遇版权问题,请及时QQ联系(2364142471)

今天是: | 本站已经安全运行: //这个地方可以改颜色

9pk | 9ss | 99j | 88a | haosf | zhaosf | laomir | qusf | 2hq | 6xq

热血传奇 | 英雄合击 | 贪玩蓝月 | 手机版传奇 | 网页版传奇 | 单职业传奇 | 传奇服务端 | 传奇广告代理 | 传奇广告价格表

传奇引擎 | 传奇版本 | 传奇脚本 | 传奇工具 | 传奇加速器 | 传奇登陆器 | 传奇教程 | 传奇论坛 | 传奇广告发布 | 传奇版本下载站

复古传奇 | 金币传奇 | 打金传奇 | 轻变传奇 | 微变传奇 | 中变传奇 | 超变传奇 | 变态传奇 | 合击传奇 | 连击传奇 | 迷失传奇 | 单职业传奇 | 开区模板

51LA统计
快速回复 返回顶部 返回列表