设为首页收藏本站意见反馈 国外访客:

 找回密码
 立即注册
搜索
查看: 9548|回复: 0

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

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

等级头衔

ID : 1

管理员

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

发表于 2026-3-18 12:57:37 | 显示全部楼层 |阅读模式 IP:广东东莞
免责
相信大家写铭文系统都会碰到两大问题,
8 h7 N# Q3 }* S6 e第一:获取铭文印记对应图片序号0 n; X) E5 b7 l0 E
第二:抽取概率
) Z/ Q% C6 H7 n2 H: R2 @( S今天咱们先来说说铭文抽取问题,也是应用到了读写配置项,
3 g4 T" y, g- b  f9 a( {6 z5 s0 b& k* ?3 y' z
传统获取铭文序号有两种方法:
' M2 l6 S- U+ N2 q! A3 y1.铭文直接以图片代码存储,类似这样:
  • <img:170:54:0:0>
  • <img:104:54:0:0>
  • <img:171:54:0:0>
  • <img:172:54:0:0>
  • 8 N& X' [: _  N; j
$ u- N# U" H9 @
[color=rgb(51, 102, 153) !important]复制代码

1 t; ?  E: Q+ {7 z/ U5 }
8 Q  ^1 E  O- X5 f7 U缺点是从序号上看来你不知道他是哪个印记。
7 {' r- n( ?4 m) |) t2.铭文以中文存储,或许到以后用GetStringPos 代码从一张总表里获取行数,这个行数就是图片的代码! B' R7 P, ?0 s, l
  • 铭文表:
  • 基本剑术[旋风印]
  • 基本剑术[主宰印]
  • 基本剑术[幽速印]
  • 获取行数:
  • GetStringPos 铭文总表 N$铭文代码
  • ; L( ~- r, Z) \! T2 E: }
$ C2 }. f& V2 q( _# o5 Q  Q! g% v
[color=rgb(51, 102, 153) !important]复制代码
2 W8 P3 o9 a1 b! X- @4 S- p

1 k- _5 z( I) M" `/ D复制代码; q  G; n/ P9 S, C7 f+ [
这样的方法提升了可读性,但是每个铭文的行数必须和资源文件里的序号对应,这个就把位置限制死了,一但有些改动将不好维护
3 c1 o- K0 b* [$ ~) o. S
% T1 ^3 S! T4 I/ C1 v  p% U3.接下来说一下优化的写法,' w/ p+ d: ?3 A! B0 b" E; v
我们把铭文名称和图片序号代码对应的关系
( Z: C3 C- b5 U9 q3 B7 g  W写进一个文本文件里,暂且叫做铭文代码表% W: @* p3 |5 r* Z) Z, M
内容是这样; `5 Z" F+ G! s+ m) L2 z
  • [铭文代码]
  • 基本剑术[旋风印] = 1
  • 施毒术[凌云印] = 41
  • 召唤骷髅[迦兰印] = 49
  • 诱惑之光[军势印] = 66
  • ( e8 _/ }* f4 I$ g+ e5 N# ~+ ~

: Q1 e& v8 R% r[color=rgb(51, 102, 153) !important]复制代码
" m; H: ^9 d, @; u! o+ ]
9 P0 H( O. v2 \5 i$ F" c0 y* _
复制代码, V" {  _; O5 M4 `& k' ^1 X
这种方式就很自由了,可以随意顺序写铭文的对应,并且对应的图片序号随时可改
8 [/ W6 ^8 F, B( f+ K  p, x下面是写抽取代码验证:
; w* F% ^# ~2 ~! X  ~6 R, [
  • [@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

  • * `: B: d& B. ]( s, \; }' C0 l5 u8 J

, }0 z3 z$ g8 R3 \9 w. w# `$ _

7 v) l2 _7 Z7 y8 O* n% ]+ ]$ `6 ?- o! H0 m  j- A
免责
今日来客 列表模式
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-18 10:41

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表