项目

一般

简介

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

chenjun, 2022-06-13 09:59

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