传奇部落

GOM引擎利用Text变量+遍历循环嵌套实现随机套装教程

[复制链接]
发表于 2023-3-21 20:06:05 | 显示全部楼层 |阅读模式
QQ截图20230321200519.jpg - S$ l) `1 I+ Y/ B0 X
+ c% m: J( `; @; E' t% \

8 K9 T% M8 {1 I) E: J( {  g& @; d
+ N. M  |1 c/ x6 K+ D/ }& h
装备上属性的显示实现方法:2 }/ H7 Y' B! Q' y( g- K" D0 X
Text变量  l# r; ^; D3 [4 H; J0 p: d3 `3 x
第一行:{特效套装·天威|146}{($$2/2)|224}7 s& W5 G" G6 ?( Z3 J& r6 K
第二行:{(2)套装:攻击时一定几率对目标周|$$3}\{围造成本次攻击25%的真实溅射伤害。|$$3}/ y6 S2 ]' J) ~! ?0 ]
+ C- p; s0 ~2 j# I3 q! w
9 B# Z9 A7 Z! e, }" r9 [. v
<TEXT$1>, r: s+ D) n+ c7 l* [5 \- j' L
第一行:
- I" E) e, P# [  S- x5 x0 F$$1 记录了行数 则对应了相应的套装编号1 e% Z  z# _8 o4 q( y; b
$$2 记录了套装当前穿戴的件数,那么初始为0,当穿戴的时候通过遍历并修改已实现动态显示& D  q1 N6 I( b! p( ^
第二行:$ X  O- B& E- L, i" B5 L+ s
$$1 同样是行数,用以显示,给装备赋值时,根据需要编号+1即可,换行是为了统一格式,方便扩展更多激活条件
- }% I. q7 L5 }  G比如2件套 4件套 6件套 8件套
" d! p( f# e; m) ~1 R8 ~1 U$$3 用来实现动态修改颜色
, G& T9 b: ]0 E$$2 暂未使用,可扩展为随机套装内的随机变量,比如几率的随机." Q; Q4 a. x! F0 q7 U

+ y0 u1 h' g# |1 r1 E4 j
6 r3 F: \- [" @* p
;===========  g( w6 U* c) H2 _8 ]
核心代码:穿戴后的动态修改与全身BUFF的统计; x4 d+ o8 `7 N) t* e
之前我在群里分享这个的时候,有人提出此方法BUFF如果多了,代码极其繁杂...2 n; s! ^' q- N2 a- ^9 ]! b
然而实际上 利用 遍历循环 全身装备,以及 变量的嵌套,可以以极少代码实现统计以及动态修改8 r3 l+ m2 n2 D3 a  G4 _- \3 a+ j
[@穿戴触发]! k; h1 `/ ]" ^8 \7 M) v: a( f/ k
#IF; p6 F+ T: |) z
#ACT
/ t' |! J9 q; y; |) p/ r;参数根据自己设定来填写 这里的 20 是我自己版本的设定, 700为我的Text变量中 第一个BUFF的行数
3 x) j$ n$ ~- IGetAllCustomItemValueByTextLine 20 0 700  N$无效数据 N$无效数据2 N32 G" ?. q- F6 O$ T( W
MOV N$BUFF700 <$STR(N3)>2 o. @) Q: [  T  X; ~. ?
4 \0 |. U0 T3 w" P3 n  y
3 L# {1 S- `  H. Y7 [6 v# R
;这里,我们获取到了 这个Buff全身一共符合条件的有多少件,下面我们需要动态修改对应装备的显示& u: ~0 r$ j8 U' f6 x) }6 W. S
;此时,我们用一个循环
; W$ X3 j2 [7 R$ Y; H1 ^#IF0 @" G; y  N$ t0 s6 J% f/ s
#ACT
% K" E) f) B+ |! X9 x% xMOV N$起始位置 22               
) x8 H$ [! ~, W- p" GLoopgoto @循环统计 4" p- X4 w1 j& y: |  S

' k8 P& x' B" i

: S5 U9 S; T5 u7 k  g" |5 \/ J;这个起始位置是装备的起始位置,我写22是因为我随机套装只在22-25 4个时装位置上  |8 N( `  @) {/ Y
;你如果要遍历全身装备,可以选择 起始位置为0....全身20件装备 Loop循环 20次这样以此类推
* l5 p4 R; h. f, ~6 W) C5 i
1 ~% ~* J+ `4 ]/ I/ N8 y. B3 m

9 B* o; i1 {! k6 _[@循环统计]
! S& U; E; x5 q  V8 b& N# R;对应件数
, o6 f* r9 o/ F* L0 z#IF( ~1 {) s! \' }  {: h7 R7 N
CHECKUSEITEM <$STR(N$起始位置)>: g# }3 v, d9 d2 _) Y/ F) n/ E
;这里我们检测遍历的装备位置是否穿戴了装备,如果穿戴了 则执行下面的* @4 g( L+ g4 r5 ^6 ~; y1 @5 W% x
#ACT
: a5 K. e7 [8 \- Q5 A5 z  gGetCustomItemValue <$STR(N$起始位置)> 17 N$Buff编号 N$无效值 04 @: q& m( B* U7 N5 w
;这里我们取得了这个位置装备有的Buff 编号即 此装备绑定的行数--比如700  那么结合上面我们提前统计的值进行变量嵌套
! _+ L# ^$ e* k: A4 {, r;  <$STR(N$BUFF<$STR(N$Buff编号)>)> = <$STR(N$BUFF700)> = 700这个套装的件数5 v' x, a7 V8 {- ~$ p
;此时 直接对该位置 $$2 值赋值 就得到了 装备件数的动态修改* k& ?* z6 s2 }
SetCustomItemValue <$STR(N$起始位置)> 17 = <$STR(N$BUFF<$STR(N$Buff编号)>)> 1
. k7 M9 s& Z8 ^& X. }+ u2 l( C/ b- v( ]8 E1 `: q1 G- L) N
/ D6 [+ n& P7 H
;如果你没有获取到此属性 你后续赋值为0 则无任何影响.
) A3 n. t  ]( T, h$ j$ z;此时件数有了,我们判定是否生效3 e- ^+ k, d) Q  c6 N: X

; Y& p4 s$ f# W2 e" h: B
9 t% t; k. A, }3 i$ u; A. H3 m
;生效改色
$ F3 V) [& A* Y* ], a; g. }# F$ g#IF3 P1 V8 O' g2 \6 u2 v) m3 v" }
EQUAL <$STR(N$BUFF<$STR(N$Buff编号)>)> 2
0 U1 L! E& O( X;如果为2件, 为啥用EQUAL 因为我最大2件, 你可以换其他判断,来挨个进行激活 类推, x& @* t) ^0 g, l% d7 ?7 {
#ACT% j# ]6 c8 S4 `  Z

* A) I! z% P4 A; @- Q. NSetCustomItemValueEX <$STR(N$起始位置)> 17 = <$STR(N$Buff编号)> <$STR(N$BUFF<$STR(N$Buff编号)>)> 1          ;$$2 $$3赋值
; p0 Y5 _& U( `" mSetCustomItemValue <$STR(N$起始位置)> 18 = 224 2           ;$$2 $$3赋值9 [" s! y- s( r& @
" E7 ?: e% G; r$ S& Z; a
;对装备进行改色触发↑  224 是 $$3的值 224正好是绿色% y0 A9 M) d" P. f: B- M9 V7 c3 `  W% d
$ L; o. s4 y9 l4 |8 h
;====================2 L8 Q4 ?6 \2 U1 V! L5 O$ k  U( l
你的所有套装属性的触发 直接检测
* }: d/ V3 Z* B8 I$ g; _N$BUFF700 这个值即可
4 s! A* G3 y$ Y/ V6 m; R) e) o( Y6 O& C$ h, D; c( w
, X& U/ f# S8 b: ~3 U9 X
取下装备触发
& P6 |( i* k1 v2 `' x# o4 I
* h8 q6 f" _& N5 t% B0 r4 ?[@TakeOffEx]
- f7 y# ^/ r6 W" f" X- z6 x#ACT! _$ ?3 [- c, @1 T
LinkPickupItem
3 ?; W( v; m  O7 gSetCustomItemValue -1 17 = 0  11 h  J3 s) g* ]0 E
SetCustomItemValue -1 18 = 10 2           ;$$2 $$3赋值8 U6 Y8 g0 U* i3 l
clearLinkItem
+ V! O9 w$ b" U8 E#CALL [穿脱触发\特效套装.txt] @特效套装
) Z0 P. ^1 L' \1 F3 r. S" K5 v* d( u' r
;但凡取下的装备直接修改对应颜色为灰色,件数为0即可
9 a+ |) s4 }& {脚本核心就是变量的嵌套与遍历循环.附件为脚本实例- k" K# j! s+ f
8 ]+ q8 ]/ J. M5 o
站长承接传奇一切业务,小问题免费咨询。站长QQ137919001
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|网站地图|皖ICP备18020244号-7|传奇部落

GMT+8, 2026-10-12 16:09 , Processed in 皖公网安备:34112402000394号 0.204514 second(s), 25 queries .