广告 广告 广告

[GOM引擎脚本] GOM引擎人物名获取改名增加颜色脚本说明

[复制链接]
玖风论坛 发表于 2021-8-16 22:44:53 | 显示全部楼层 |阅读模式
本帖最后由 玖风论坛 于 2024-6-17 15:59 编辑

本文将具体描述人物名从配置-获取人物名赋值-人物名更改-人物名增加文字-名字改色-名字判断等


1人物名显示配置

String.ini 224行 - 233行说明
  1. ;城堡行会名字格式=(城堡名)行会名[职务名]
  2. CastleGuildName=(%CastleName)%Guildname[%RankName]

  3. ;非城堡名字格式=行会名[职务名]
  4. NoCastleGuildName=%GuildName[%RankName]

  5. ;战士转生格式
  6. WarrReNewName=%ChrName\*<圣>*
  7. ;法师转生格式
  8. WizardReNewName=%ChrName\*<神>*
  9. ;导师转生格式
  10. TaosReNewName=%ChrName\*<尊>*

  11. ;结婚格式
  12. ManDearName=[%s 的丈夫]
  13. WoManDearName=[%s 的妻子]

  14. ;师徒格式
  15. MasterName=[%s 的师父]
  16. NoMasterName=[%s 的%s徒弟]

  17. HumanShowName=%ChrName\%GuildName\%DearName\%MasterName
复制代码
2获取人物名

<$USERNAME>
示例
  1. #SAY
  2. <$USERNAME>,欢迎您
复制代码
获取人物名并赋值
GETUSERNAME 字符串变量
示例
  1. #ACT
  2. GETUSERNAME S10
  3. SENDMSG 6 <$STR(S10)>
复制代码
获取对面人物名并赋值
GETPOSENAME 字符串变量
示例
  1. #ACT
  2. GETPOSENAME S10
  3. SENDMSG 6 <$STR(S10)>
复制代码

3调整人物名

  • 检查人物名是否存在: QUERYHUMNAMEEXIST 字符串
  • 执行改名: CHANGEHUMNAME 字符串
改名后,\QuestDiary文本中还是旧的人物名,可能导致会员、排行等与人物名相关的系统,判断为是新玩家,
可以使用 CHANGEHUMNAMEFILE 文本路径 替换成新的人物名
示例
  1. ;人物在线改名系统

  2. [@Main]  
  3. <查询人物名是否可以使用/@@InputString1(请输入新的人物名:)>\
  4. <我要改名/@@InputString2(请输入新的人物名:)>\

  5. [@InputString1]  
  6. #IF  
  7. EQUAL S1
  8. #ACT  
  9. SENDMSG 6 请输入一个正确的人物名
  10. BREAK

  11. #OR  
  12. CheckStringlength S1 > 20  
  13. CheckStringlength S1 < 4  
  14. #ACT  
  15. SENDMSG 6 输入人物名长度不正确  
  16. Break

  17. #IF  
  18. #ACT  
  19. QUERYHUMNAMEEXIST S1

  20. [@InputString2]  
  21. #IF  
  22. Equal S2  
  23. #ACT  
  24. SENDMSG 6 请输入一个正确的人物名
  25. Break

  26. #OR  
  27. CheckStringlength S2 > 20  
  28. CheckStringlength S2 < 4  
  29. #ACT  
  30. SENDMSG 6 输入人物名长度不正确  
  31. Break

  32. #IF  
  33. #ACT  
  34. CHANGEHUMNAME S2
  35. \Market_def\QFunction-0.txt

  36. [@QueryingHumName]
  37. #SAY
  38. 正在查询请稍候...\
  39. <关闭/@exit>

  40. [@QueryHumNameOK]  
  41. #SAY
  42. 该人物名可以使用!\
  43. <关闭/@exit>

  44. [@ChangeingHumName]  
  45. #SAY
  46. 正在修改请稍候...\
  47. <关闭/@exit>

  48. [@ChangeHumNameOK]  
  49. #ACT  
  50. ;这个方法是将一些保存在文档中的旧人物名,替换成新的人物名,如果不需要替换可以去掉
  51. CHANGEHUMNAMEFILE ..\QuestDiary\会员名称.txt  
  52. #SAY  
  53. 人物名修改成功,旧人物名:<$USERNAME> 新人物名:<$USERNEWNAME>!\
  54. <关闭/@exit>

  55. [@NameLengthFail]  
  56. 人物名长度不允许超过30个字符!\
  57. <关闭/@exit>

  58. [@HumNameFilter]  
  59. 该人物名存在非法字符!\
  60. <关闭/@exit>

  61. [@HumNameExists]  
  62. 该人物名已经被其他玩家占用,请选择其他名字!\
  63. <关闭/@exit>

  64. [@ChangeHumNameFail]
  65. 改名失败!\
  66. <关闭/@exit>
复制代码

4人物名增加文字

SETRANKLEVELNAME %s字符串(%s表示人物名 必须包含)
需要开启才能生效 M2server.exe>选项>参数设置>游戏选项(1)>开启封号
示例: \为换行,U8U9私人变量,可以参考 杀人触发死亡触发
  1. #ACT
  2. SETRANKLEVELNAME %s\杀人[<$STR(U8)>]被杀[<$STR(U9)>]
复制代码

5调整人物名颜色

CHANGENAMECOLOR 颜色代码
示例
#ACTCHANGENAMECOLOR 252MESSAGEBOX 您的人物名已经改成蓝色!
小退失效
6人物名文本操作

添加人物名到文本中ADDNAMELIST 文件路径
示例
  1. #ACT
  2. ADDNAMELIST ..\QuestDiary\文本.txt
复制代码
判断文本中是否有人物名
CHECKNAMELIST 文件路径
示例
  1. #IF
  2. CHECKNAMELIST ..\QuestDiary\文本.txt
  3. #ACT
  4. ...
  5. #ELSEACT
  6. ...
复制代码
删除文本中的人物名
DELNAMELIST 文件路径
示例
  1. #ACT
  2. DELNAMELIST ..\QuestDiary\文本.txt
复制代码




[月版VIP购买元宝资源8折优惠][季度VIP购买元宝资源7折优惠][年版VIP购买元宝资源5折优惠].每日回帖.签到.等可获取免费元宝.站长QQ361846846
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【随意内容可能封禁账号】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则