Browse Source

fix(gmcp): 分辨 GMCP 角色状态数据是不是自己的

dzp 3 years ago
parent
commit
3cbc27cae6
2 changed files with 14 additions and 3 deletions
  1. 13 2
      mud/pkuxkx/plugins/basic/char/gmcp.tin
  2. 1 1
      mud/pkuxkx/plugins/basic/char/hp.tin

+ 13 - 2
mud/pkuxkx/plugins/basic/char/gmcp.tin

@@ -54,8 +54,8 @@ event.Define {char/nofight} {无参} {$MODULE} {角色脱离战斗};
         {头衔}      {头衔}              {title}                 {头衔}
         {门派}      {门派}              {family/family_name}    {门派}
         {级别}      {人物等级}          {level}                 {人物等级}
-                                        {id}                    {账号}
-                                        {name}                  {大名}
+        {ID}      {账号}              {id}                    {账号}
+        {姓名}      {大名}              {name}                  {大名}
     }
 
     {天赋} {
@@ -72,6 +72,17 @@ event.Define {char/nofight} {无参} {$MODULE} {角色脱离战斗};
     #local fight    {};
     #local hasHP    {};
 
+    #local id {$gGMCP[Status][id]};
+    #if { "$id" == "" } {
+        #local id {$gGMCP[Status][ID]};
+    };
+
+    #nop ID 中包含 # 号的,是 NPC,没有 # 号但和自己 ID 不同的,是玩家。;
+    #nop 没有 ID 或者 ID 和自己相同的,才是自己的数据。;
+    #if { "$id" != "" && "$id" != "$user[id]" } {
+        #return;
+    };
+
     #local key      {};
     #foreach {*gGMCP[Status][]} {key} {
         #local value {$gGMCP[Status][$key]};

+ 1 - 1
mud/pkuxkx/plugins/basic/char/hp.tin

@@ -61,7 +61,7 @@ event.Define {char/hpbrief}  {无参}  {$MODULE} {已经获取到 hpbrief 命令
     #class data/basic/char close;
 
     set hpbrief long,report;
-    #delay {char.Init} {char.GetHP; char.GetHP2} {10};
+    #delay {char.Init} {char.GetHP; char.GetHP2} {1};
 
     #return true;
 };