设为首页收藏本站 国外访客:

 找回密码
 立即注册
搜索
查看: 9062

[教程/工具] 传奇GEE引擎铭文系统读写配置应用

[复制链接]
灌水成绩
17837
95
18341
主题
帖子
积分

等级头衔

ID : 1

管理员

积分成就 威望 : 9
贡献 : 9
下载币 : 382
在线时间 : 1654 小时
注册时间 : 2013-9-5
最后登录 : 2026-6-11

发表于 2026-3-18 12:57:37 | 显示全部楼层 |阅读模式
免责
相信大家写铭文系统都会碰到两大问题,+ F- b0 N: f+ {2 W& \; t, `( r
第一:获取铭文印记对应图片序号
0 @' v5 ~  e- m第二:抽取概率9 E  {3 F' g5 E3 |
今天咱们先来说说铭文抽取问题,也是应用到了读写配置项,
* v5 j* E" ^/ G$ Q6 L  s8 R
, P, m% I; E" m% B; u8 }4 l- U# f传统获取铭文序号有两种方法:
4 ^) J% a! Z1 ]6 c" K7 t1.铭文直接以图片代码存储,类似这样:
  • <img:170:54:0:0>
  • <img:104:54:0:0>
  • <img:171:54:0:0>
  • <img:172:54:0:0>
  • 6 ^. H9 E2 |( ]/ j! |6 x3 A4 e/ I
& B* c# M- o( ^1 [
[color=rgb(51, 102, 153) !important]复制代码

- t- f2 I( m1 C+ d2 N
% Y: t$ U0 S: D缺点是从序号上看来你不知道他是哪个印记。, s2 ^6 _  ?2 d: ]$ f
2.铭文以中文存储,或许到以后用GetStringPos 代码从一张总表里获取行数,这个行数就是图片的代码
+ Z. P! n7 h5 N& U  r4 [/ j
  • 铭文表:
  • 基本剑术[旋风印]
  • 基本剑术[主宰印]
  • 基本剑术[幽速印]
  • 获取行数:
  • GetStringPos 铭文总表 N$铭文代码

  • # E4 S1 G* Q. }$ l# y- [

+ }6 h) r9 |  o! q6 p[color=rgb(51, 102, 153) !important]复制代码

9 u# N/ U* D( b; Z
% D0 f/ s) ~# e6 B复制代码0 R; S! e; h- W/ ~0 ]
这样的方法提升了可读性,但是每个铭文的行数必须和资源文件里的序号对应,这个就把位置限制死了,一但有些改动将不好维护3 |8 d. `( ~& [/ p* _

  o0 Z$ M4 \4 B3.接下来说一下优化的写法,; u3 `( b. x6 o0 e+ F" }
我们把铭文名称和图片序号代码对应的关系
- x  z/ W4 ~- ^+ m: {: \* V写进一个文本文件里,暂且叫做铭文代码表
- Z3 ]: y) c0 a0 Z5 i  D/ w; u+ Q. ?内容是这样
$ B: I# [' @: Y
  • [铭文代码]
  • 基本剑术[旋风印] = 1
  • 施毒术[凌云印] = 41
  • 召唤骷髅[迦兰印] = 49
  • 诱惑之光[军势印] = 66

  • 4 O( x5 D- Y% ?/ I$ j0 f
; {5 [7 |5 Q1 _
[color=rgb(51, 102, 153) !important]复制代码

# l; d( x  H* d8 {7 t% i1 D8 d  ^  j. q# v
复制代码; R# {! n# v; e: e
这种方式就很自由了,可以随意顺序写铭文的对应,并且对应的图片序号随时可改: y# e. x$ u# ~$ U
下面是写抽取代码验证:
; e: W; o$ Y3 N( ~2 r, N8 a
  • [@main]
  • <抽取印记/@chouqu> \
  • 您抽取到的第一个印记名字为:{<$STR(S$抽取铭文_1)>/fcolor=151}代码是:{<$STR(N$印记代码1)>/fcolor=215}\
  • 您抽取到的第二个印记名字为:{<$STR(S$抽取铭文_2)>/fcolor=151}代码是:{<$STR(N$印记代码2)>/fcolor=215}
  • [@chouqu]
  • #if
  • #act
  • GetRandomText ..\QuestDiary\铭文系统\抽取\战士铭文.txt S$抽取铭文_1
  • ReadConfigFileItem ..\QuestDiary\铭文系统\抽取\铭文代码表.txt 铭文代码 <$STR(S$抽取铭文_1)> <$STR(N$印记代码1)>
  • GetRandomText ..\QuestDiary\铭文系统\抽取\战士铭文.txt S$抽取铭文_2
  • ReadConfigFileItem ..\QuestDiary\铭文系统\抽取\铭文代码表.txt 铭文代码 <$STR(S$抽取铭文_2)> <$STR(N$印记代码2)>
  • #if
  • equal N$印记代码1 <$STR(N$印记代码2)>
  • #act
  • sendmsg 7 印记相同,重新抽取!
  • goto @chouqu
  • break
  • #if
  • not equal N$印记代码1 <$STR(N$印记代码2)>
  • #act
  • goto @main

  • % t4 v7 Y0 X9 M" P9 \. U1 b
$ ~# C. F% X! k7 U0 ^4 R) t
" s* m7 ~. T3 G/ x( Q

# r3 ^  K- Y8 y0 d, K0 D
免责
帖子地址打造全网最多免费游戏网站
今日来客 列表模式
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|蔡州手游 |网站地图 wapmz.com

GMT+8, 2026-6-11 08:12