查看: 3627|回复: 0

藏宝阁传奇脚本系统的改进与读写配置项的应用-传奇素材网

[复制链接]

签到天数: 389 天

[LV.9]㊣黄金裁决㊣

发表于 2022-4-9 14:26:02 | 显示全部楼层 |阅读模式
藏宝阁传奇脚本系统的改进与读写配置项的应用-传奇素材网

接触过传奇素材网奇幻版本的想必对藏宝阁系统不陌生,
应该是 Magical大师兄  原创的传奇脚本,
写的非常的优秀,既解决了无用装备的互斥性,变废为宝,也解决了玩家的一些痛点,可以增加属性等等
这个脚本我也用过,可谓又爱又恨
由于占用标识符比较多,难免和别的脚本冲突,有时候会出现丢星星的情况。
那么如何不用标识符来实现功能?
咱们尝试用    #读写配置项#  将它改造!



读写配置项是个很实用的功能,因为它不占用保留变量,并且格式多样化,原理是把变量写入文本当中,
这里用到3个命令:
读配置项     ReadConfigFileItem   索引 变量名 变量
写配置项     WriteConfigFileItem  索引 变量名 参数   

删除配置项  DelConfigFileItem  索引 变量名   
打个比方:“礼包领取限制每台电脑只能领取两个账号”。
机器码一般来说,如果没有硬件更换是不会变的,所以用它来判断是否同一台电脑。

换成编程思维,问题转化成,如何判断机器码的领奖次数?

  1. ;首先检测领奖次数,读取文本中,机器码的领奖次数赋值到变量,然后判断
  2. #if
  3. #act
  4. ReadConfigFileItem ..\QuestDiary\领奖记录.txt <$MACHINEID> 领取次数 <$STR(N$领取次数)>
  5. ;判断领奖次数,如果为0可以领奖,可以领取,把 {机器码 领取次数 1} 写入配置项。
  6. #if
  7. EQUAL <$STR(N$领取次数)> 0
  8. #ACT
  9. WriteConfigFileItem ..\QuestDiary\领奖记录.txt <$MACHINEID> 领取次数 1
  10. sendmsg 7 初次领奖!写入领奖成功,目前领奖次数为:1
  11. break
  12. ;判断领奖次数,如果为1还可以领取一次.代码含义为删除原有的配置项重新写入,为了改变领奖次数
  13. #if
  14. EQUAL <$STR(N$领取次数)> 1
  15. #ACT
  16. DelConfigFileItem ..\QuestDiary\领奖记录.txt <$MACHINEID> 领取次数
  17. WriteConfigFileItem ..\QuestDiary\领奖记录.txt <$MACHINEID> 领取次数 2
  18. sendmsg 7 第二次领奖!写入领奖成功,目前领奖次数为:2
  19. break

  20. #if
  21. EQUAL <$STR(N$领取次数)> 2
  22. #ACT

  23. sendmsg 7 这台电脑已经领取过2次,每台电脑只可以领取两个账号!
  24. break


  25. #elseact

  26. sendmsg 7 参数错误!
复制代码
领奖记录里的内容是这样的:
  1. [F896AE54F3D3922189D31FFAB8BB751C]
  2. 领取次数=2
  3. [H896AE54F3D392342189D31FFAB8B51F]
  4. 领取次数=2
  5. [9896AE2345445D3922189D31FFAB751H]
  6. 领取次数=1
  7. [7896AE54F3D3922189D31FFAB8BB751J]
  8. 领取次数=2
  9. [6696AE54F3D392342189D31FFAB8B51L]
  10. 领取次数=2
  11. [F296AE2345445D3922189D31FFAB7513]
  12. 领取次数=1

复制代码
扩展:
ReadConfigFileItem,WriteConfigFileItem  这两个命令是实时写入文本的,可以查看和修改
另外还有带Cache命令是写入内存缓存中,不能查看和修改,关闭引擎以后才会写入文件,优点是运行速度快很多!
ReadCacheConfigFileItem
WriteCacheConfigFileItem
DelCacheConfigFileItem
DelCacheConfigFileSection





传奇素材网首先抛出几个问题:

1.标识符在这个系统中的意义?
2.如何转化到配置项中存储?


第一个问题很简单,装备激活后标识符会变成1
第二个问题,以每个传奇素材网玩家角色名创建一个TXT文本,[藏宝阁当前页]为索引,装备几号位是变量名= 变量
看一下,激活一号位的例子:
核心代码是这个:
WriteConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 一号位 1

  1. [@激活一号位]
  2. #If
  3. checkitem <$Str(S$藏宝一号位)> 1
  4. #act
  5. take <$Str(S$藏宝一号位)> 1
  6. ChangeHumAbilityEX 6 + <$Str(S$藏宝单属)>
  7. ChangeHumAbilityEX 8 + <$Str(S$藏宝单属)>
  8. ChangeHumAbilityEX 10 + <$Str(S$藏宝单属)>
  9. ChangeHumAbilityEX 11 + <$Str(S$藏宝单HP)>
  10. WriteConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 一号位 1
  11. messagebox <恭喜您!!/FCOLOR=250>\\激活成功,系统已从背包中回收【<$Str(S$藏宝一号位)>】一件!
复制代码
文本里内容是这样:
  1. [14]
  2. 四号位=1
  3. 五号位=1
  4. 八号位=1
  5. [2]
  6. 一号位=1
  7. 二号位=1
  8. 三号位=1
  9. [6]
  10. 三号位=1
  11. 六号位=1
  12. 七号位=1
复制代码
写入方法知道了,如何读取看下面代码
  1. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 全套   N$藏宝全套标识
  2. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 一号位 N$藏宝一号位标识
  3. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 二号位 N$藏宝二号位标识
  4. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 三号位 N$藏宝三号位标识
  5. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 四号位 N$藏宝四号位标识
  6. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 五号位 N$藏宝五号位标识
  7. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 六号位 N$藏宝六号位标识
  8. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 七号位 N$藏宝七号位标识
  9. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 八号位 N$藏宝八号位标识
  10. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 九号位 N$藏宝九号位标识
  11. ReadConfigFileItem ..\QuestDiary\藏宝阁\数据文件\<$USERNAME>.txt <$str(N$藏宝当页)> 十号位 N$藏宝十号位标识
复制代码
理解配置项读写后,写这个还是比较简单的,有动手能力的小伙伴可以试试了
1.jpg

代码已经打包上传,带素材,感兴趣的可以下载测试!

文件名称:藏宝阁.txt 
售价:399素材币 [记录]
下载权限: 不限    [购买VIP]     [充值素材币]    [失效反馈]
安全检测,请放心下载








您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

关闭

站长推荐上一条 /1 下一条

光柱封号特效定制

联系QQ1985466803

地图等其它素材定制

联系QQ179331053

售后技术-下载失效

联系QQ2505099556

加入QQ新群

加入Q群230572444

补丁破解-补丁优化

联系QQ179331053
快速回复 返回顶部 返回列表