项目

一般

简介

装备熔炼 » 历史记录 » 版本 9

tejie, 2025-10-11 15:56

1 1 chenjun
h4. _*%{color:green}装备熔炼%*_
2
3
标签:模块示例|装备熔炼
4
5 4 chenjun
*模块说明*
6 1 chenjun
符合条件的装备可以通过熔炼转化为其它游戏道具
7
属于设置好的装备范围内,没有强过星,没有自定义属性,没有额外属性,没有任意可转移属性,符合上述全部条件的装备,可以进行熔炼
8
装备熔炼分为手动熔炼与自动熔炼
9
背包中的可熔炼装备,会显示在熔炼界面的装备列表中,勾选本次想熔炼的装备后,点击熔炼按钮,进行手动熔炼
10
11 9 tejie
无法自定义筛选框UI美术资源 <smeltEquipList:
12
13 1 chenjun
-
14
-
15
16 6 tejie
h4. %{color:green}测试用例下载%
17 1 chenjun
18 6 tejie
"测试用例":http://112.124.36.36/redmine/attachments/1207/道具筛选1.7z
19
20 1 chenjun
-
21
-
22
23 6 tejie
h4. *{color:deepskyblue}特戒引擎脚本示例:*
24 1 chenjun
25
bq. %{color:lightGrey};..\Mir200\Envir\QuestDiary\装备熔炼\装备熔炼.txt%
26
[<notextile>@</notextile>main]
27
#act
28
%{color:lightGrey};获取可手动熔炼装备名列表%
29
*{color:green}[[getListstring]]* ..\QuestDiary\装备熔炼\可熔炼装备装备名.txt 0 S$可手动熔炼装备名列表
30
%{color:lightGrey};获取可手动熔炼装备列表%
31
*{color:green}[[getSmeltEquipList]]* S$可手动熔炼装备名列表 S$返回可手动熔炼装备名 S$返回可手动熔炼装备实例化id
32
&nbsp;
33
#say
34
%{color:lightGrey};创建熔炼装备列表界面%
35 8 tejie
<notextile><</notextile>*{color:green}[[dlg_smeltEquipList_|smeltEquipList]]*:熔炼装备框:<$str(S$返回可手动熔炼装备实例化id)>:48:0,0:100:settings_mark,settings_markbg:4:400/<notextile>@</notextile>熔炼gridClk>
36 1 chenjun
&nbsp;
37
&nbsp;
38
[<notextile>@</notextile>熔炼gridClk]
39
#act
40
sendmsg 6 本次要熔炼的装备有<$SmeltEquipList.name>
41
%{color:lightGrey};sendmsg 6 本次选中的熔炼装备的实例化id是<$SmeltEquipList.InstanceId>%
42
&nbsp;
43
&nbsp;
44
[<notextile>@</notextile>熔炼花费]
45
#if
46
#act
47
mov S$选中待熔炼装备名 <$SmeltEquipList.name>
48
*{color:green}[[pgExtractstring]]* , S$选中待熔炼装备名 S$返回值 N$分割数
49
%{color:lightGrey};定义计数器%
50
mov N$装备个数计数 0
51
%{color:lightGrey};定义花费值,用于累计%
52
mov N$选中装备熔炼花费值累计 0
53
%{color:lightGrey};定义中间变量,用于调用装备名%
54
goto <notextile>@</notextile>计算花费
55
&nbsp;
56
&nbsp;
57
[<notextile>@</notextile>计算花费]
58
%{color:lightGrey};如果计数器小于等于装备数,则继续取花费,累加到花费值上%
59
%{color:lightGrey};如果计数器大于装备数,则结束%
60
#if
61
small N$装备个数计数 N$分割数
62
#act
63
goto <notextile>@</notextile>进入循环
64
#elseact
65
sendMsg 6 本次熔炼花费为:<$str(N$选中装备熔炼花费值累计)>
66
&nbsp;
67
&nbsp;
68
[<notextile>@</notextile>进入循环]
69
#act
70
inc N$装备个数计数 1
71
mov S$当前处理装备的名字 <$str(S$返回值_<$str(N$装备个数计数)>)>
72
%{color:lightGrey};获取装备的行号%
73
*{color:green}[[getstringPos]]* ..\QuestDiary\装备熔炼\熔炼装备装备名.txt S$当前处理装备的名字
74
*{color:green}[[getListstring]]* ..\QuestDiary\装备熔炼\熔炼装备花费.txt <$str(N0)> S$返回串
75
inc N$选中装备熔炼花费值累计 <$str(S$返回串)>
76
goto <notextile>@</notextile>计算花费
77
&nbsp;
78
&nbsp;
79
[<notextile>@</notextile>熔炼btnClk]
80
#if
81
equal S$选中待熔炼装备名
82
#act
83
sendmsg 6 啥也没选中
84
#elseact
85
goto <notextile>@</notextile>手动熔炼装备
86
&nbsp;
87
&nbsp;
88
[<notextile>@</notextile>手动熔炼装备]
89
#if
90
#act
91
mov S$选中待熔炼装备名1 <$SmeltEquipList.name>
92
pgExtractstring , S$选中待熔炼装备名1 S$返回值1 N$分割数1
93
mov S$选中待熔炼装备实例化id1 <$SmeltEquipList.InstanceId>
94
pgExtractstring , S$选中待熔炼装备实例化id1 S$返回值11 N$分割数11
95
%{color:lightGrey};定义计数器%
96
mov N$装备个数计数1 0
97
%{color:lightGrey};定义花费值,用于累计%
98
mov N$选中装备熔炼花费值累计1 0
99
goto <notextile>@</notextile>开始手动熔炼
100
&nbsp;
101
&nbsp;
102
[<notextile>@</notextile>开始手动熔炼]
103
%{color:lightGrey};如果计数器小于等于装备数,则删除该装备+扣除熔炼花费+获得熔炼奖励%
104
%{color:lightGrey};如果计数器大于装备数,则结束%
105
#if
106
small N$装备个数计数1 N$分割数1
107
#act
108
goto <notextile>@</notextile>手动熔炼循环
109
#elseact
110
sendMsg 6 本次熔炼花费为:<$str(N$选中装备熔炼花费值累计1)>
111
&nbsp;
112
&nbsp;
113
[<notextile>@</notextile>手动熔炼循环]
114
#act
115
inc N$装备个数计数1 1
116
%{color:lightGrey};删除该装备%
117
mov S$当前处理装备的实例化id1 <$str(S$返回值11_<$str(N$装备个数计数1)>)>
118
*{color:green}[[delEquipId]]* <$str(S$当前处理装备的实例化id1)>
119
%{color:lightGrey};扣除熔炼花费%
120
mov S$当前处理装备的名字1 <$str(S$返回值1_<$str(N$装备个数计数1)>)>
121
%{color:lightGrey};获取装备的行号%
122
getstringPos ..\QuestDiary\装备熔炼\熔炼装备装备名.txt S$当前处理装备的名字1
123
getListstring ..\QuestDiary\装备熔炼\熔炼装备花费.txt <$str(N0)> S$返回串1
124
inc N$选中装备熔炼花费值累计1 <$str(S$返回串1)>
125
gamegold - <$str(S$返回串1)>
126 7 tejie
%{color:lightGrey};--获得熔炼奖励处理%
127
<notextile></notextile>
128 1 chenjun
goto <notextile>@</notextile>开始手动熔炼
129 7 tejie
<notextile></notextile>
130
<notextile></notextile>
131 1 chenjun
[<notextile>@</notextile>背包自动熔炼]
132
#act
133
mov S$设置自动熔炼装备名 <$SmeltEquipList.name>
134 7 tejie
<notextile></notextile>
135 1 chenjun
#if
136
%{color:lightGrey};勾选了自动熔炼,且自动熔炼设置不为空%
137
check [1001] 1
138
equal S$设置自动熔炼装备名
139
#act
140
%{color:lightGrey};获取可熔炼装备列表%
141
getSmeltEquipList S$设置自动熔炼装备名 S$待自动熔炼装备名 S$待自动熔炼装备实例化id
142
mov S$待自动熔炼装备名 <$SmeltEquipList.name>
143
pgExtractstring , S$待自动熔炼装备名 S$返回值2 N$分割数2
144
mov S$待自动熔炼装备实例化id <$SmeltEquipList.InstanceId>
145
pgExtractstring , S$待自动熔炼装备实例化id S$返回值21 N$分割数21
146
%{color:lightGrey};定义计数器%
147
mov N$装备个数计数3 0
148
%{color:lightGrey};定义花费值,用于累计%
149
mov N$自动装备熔炼花费值累计 0
150
goto <notextile>@</notextile>开始自动熔炼
151
&nbsp;
152
&nbsp;
153
[<notextile>@</notextile>开始自动熔炼]
154
%{color:lightGrey};如果计数器小于等于装备数,则删除该装备+扣除熔炼花费+获得熔炼奖励%
155
%{color:lightGrey};如果计数器大于装备数,则结束%
156
#if
157
small N$装备个数计数3 N$分割数2
158
#act
159
goto <notextile>@</notextile>自动熔炼循环
160
#elseact
161
sendMsg 6 本次熔炼花费为:<$str(N$自动装备熔炼花费值累计)>
162
&nbsp;
163
&nbsp;
164
[<notextile>@</notextile>自动熔炼循环]
165
#act
166
inc N$装备个数计数3 1
167
%{color:lightGrey};删除该装备%
168
mov S$当前处理装备的实例化id2 <$str(S$返回值21_<$str(N$装备个数计数3)>)>
169
delEquipId <$str(S$当前处理装备的实例化id2)>
170
%{color:lightGrey};扣除熔炼花费%
171
mov S$当前处理装备的名字2 <$str(S$返回值2_<$str(N$装备个数计数3)>)>
172
%{color:lightGrey};获取装备的行号%
173
getstringPos ..\QuestDiary\装备熔炼\熔炼装备装备名.txt S$当前处理装备的名字2
174
getListstring ..\QuestDiary\装备熔炼\熔炼装备花费.txt <$str(N0)> S$返回串2
175
gamegold - <$str(S$返回串2)>
176
%{color:lightGrey};获得熔炼奖励%
177
mov S$当前处理装备的怪物名字2 S$当前处理装备的名字2
178
monsterDrop2 <$str(S$当前处理装备的怪物名字2)>
179
goto <notextile>@</notextile>开始自动熔炼