项目

一般

简介

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

chenjun, 2022-06-13 20:20

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