您当前的位置:首页 > 传奇技术

91M2引擎版本如何读写个人变量、行会变量及全局变量脚本

本文出处:网游动力作者:本站发布时间:2019-03-11阅读次数:
如何读写个人变量、行会变量及全局变量

procedure Main(Npc: TNormNPC; Player: TPlayObject; Args: TArgs);
begin
  //个人变量读写
  if Player.VarDateTime('最后登陆时间').AsDateTime < Now then //如果最后登陆时间小于当前系统时间
  begin
    Player.VarDateTime('最后登陆时间').AsDateTime := Now; //将最后登陆时间置为当前时间
    Player.VarDateTime('最后登陆时间').Save; //保存
  end;
  Player.VarString('黄金黑店元宝刷新累计').AsInteger := Player.VarString('黄金黑店元宝刷新累计').AsInteger + 100;
  Player.VarString('黄金黑店元宝刷新累计').Save;
  //行会变量读写
  if Player.Guild <> nil then
  begin
    Player.Guild.VarInteger('帮会资金').AsInteger := Player.Guild.VarInteger('帮会资金').AsInteger + 10000; //帮会变量"帮会资金"增加
    Player.Guild.VarInteger('帮会资金').Save; //保存
  end;  
  //系统变量读写
  Gamelib.VarString('天下第一战').AsString := 'CC';
  Gamelib.VarString('天下第一战').Save;    

  //声明变量但不保存,则该变量只在M2运行期有效
  Gamelib.VarString('临时变量').AsString := 'xxxx'; //该变量不调用Save函数将不会被保存到文件
end;

注:所有的变量不需要特殊声明,使用的时候不需要判断变量是否存在,变量的原则是使用就有没使用就没有,变量赋值后如果不调用Save函数,则变量不会被更新到文件,但是其值在M2运行期是有效的