@@ -171,45 +171,51 @@ func init() {
171171 ctx .SendChain (message .Text ("[ERROR at fish.go.5.1]:" , err ))
172172 return
173173 }
174+
175+ localProbabilities := make (map [string ]probabilityLimit , len (probabilities ))
176+ for k , v := range probabilities {
177+ localProbabilities [k ] = v
178+ }
179+
174180 if number > 100 || equipInfo .Equip == "美西螈" { // 放大概率
175- probabilities ["treasure" ] = probabilityLimit {
181+ localProbabilities ["treasure" ] = probabilityLimit {
176182 Min : 0 ,
177183 Max : 2 ,
178184 }
179- probabilities ["pole" ] = probabilityLimit {
185+ localProbabilities ["pole" ] = probabilityLimit {
180186 Min : 2 ,
181187 Max : 10 ,
182188 }
183- probabilities ["fish" ] = probabilityLimit {
189+ localProbabilities ["fish" ] = probabilityLimit {
184190 Min : 10 ,
185191 Max : 45 ,
186192 }
187- probabilities ["waste" ] = probabilityLimit {
193+ localProbabilities ["waste" ] = probabilityLimit {
188194 Min : 45 ,
189195 Max : 90 ,
190196 }
191197 }
192198 if number2 != 0 {
193- info := probabilities ["waste" ]
199+ info := localProbabilities ["waste" ]
194200 info .Max = 100
195- probabilities ["waste" ] = info
201+ localProbabilities ["waste" ] = info
196202 }
197- for name , info := range probabilities {
203+ for name , info := range localProbabilities {
198204 switch name {
199205 case "treasure" :
200206 info .Max += equipInfo .Favor
201- probabilities [name ] = info
207+ localProbabilities [name ] = info
202208 case "pole" :
203209 info .Min += equipInfo .Favor
204210 info .Max += equipInfo .Favor * 2
205- probabilities [name ] = info
211+ localProbabilities [name ] = info
206212 case "fish" :
207213 info .Min += equipInfo .Favor * 2
208214 info .Max += equipInfo .Favor * 3
209- probabilities [name ] = info
215+ localProbabilities [name ] = info
210216 case "waste" :
211217 info .Min += equipInfo .Favor * 3
212- probabilities [name ] = info
218+ localProbabilities [name ] = info
213219 }
214220 }
215221 // 钓鱼结算
@@ -221,34 +227,34 @@ func init() {
221227 number := 1
222228 dice := rand .Intn (100 )
223229 switch {
224- case dice >= probabilities ["waste" ].Min && dice < probabilities ["waste" ].Max : // 垃圾
230+ case dice >= localProbabilities ["waste" ].Min && dice < localProbabilities ["waste" ].Max : // 垃圾
225231 typeOfThing = "waste"
226232 thingName = wasteList [rand .Intn (len (wasteList ))]
227233 picName = thingName
228- case dice >= probabilities ["treasure" ].Min && dice < probabilities ["treasure" ].Max : // 宝藏
234+ case dice >= localProbabilities ["treasure" ].Min && dice < localProbabilities ["treasure" ].Max : // 宝藏
229235 dice = rand .Intn (100 )
230236 switch {
231- case dice >= probabilities ["美西螈" ].Min && dice < probabilities ["美西螈" ].Max :
237+ case dice >= localProbabilities ["美西螈" ].Min && dice < localProbabilities ["美西螈" ].Max :
232238 typeOfThing = "pole"
233239 picName = "美西螈"
234240 thingName = "美西螈"
235- case dice >= probabilities ["唱片" ].Min && dice < probabilities ["唱片" ].Max :
241+ case dice >= localProbabilities ["唱片" ].Min && dice < localProbabilities ["唱片" ].Max :
236242 typeOfThing = "article"
237243 picName = "唱片"
238244 thingName = "唱片"
239- case dice >= probabilities ["海之眷顾" ].Min && dice < probabilities ["海之眷顾" ].Max :
245+ case dice >= localProbabilities ["海之眷顾" ].Min && dice < localProbabilities ["海之眷顾" ].Max :
240246 typeOfThing = "article"
241247 picName = "book"
242248 thingName = "海之眷顾"
243- case dice >= probabilities ["净化书" ].Min && dice < probabilities ["净化书" ].Max :
249+ case dice >= localProbabilities ["净化书" ].Min && dice < localProbabilities ["净化书" ].Max :
244250 typeOfThing = "article"
245251 picName = "book"
246252 thingName = "净化书"
247- case dice >= probabilities ["宝藏诅咒" ].Min && dice < probabilities ["宝藏诅咒" ].Max :
253+ case dice >= localProbabilities ["宝藏诅咒" ].Min && dice < localProbabilities ["宝藏诅咒" ].Max :
248254 typeOfThing = "article"
249255 picName = "book"
250256 thingName = "宝藏诅咒"
251- case dice >= probabilities ["海豚" ].Min && dice < probabilities ["海豚" ].Max :
257+ case dice >= localProbabilities ["海豚" ].Min && dice < localProbabilities ["海豚" ].Max :
252258 typeOfThing = "fish"
253259 picName = "海豚"
254260 thingName = "海豚"
@@ -257,35 +263,35 @@ func init() {
257263 picName = "book"
258264 thingName = "诱钓"
259265 }
260- case dice >= probabilities ["pole" ].Min && dice < probabilities ["pole" ].Max : // 宝藏
266+ case dice >= localProbabilities ["pole" ].Min && dice < localProbabilities ["pole" ].Max : // 鱼竿
261267 typeOfThing = "pole"
262268 dice := rand .Intn (100 )
263269 switch {
264- case dice >= probabilities ["铁竿" ].Min && dice < probabilities ["铁竿" ].Max :
270+ case dice >= localProbabilities ["铁竿" ].Min && dice < localProbabilities ["铁竿" ].Max :
265271 thingName = "铁竿"
266- case dice >= probabilities ["金竿" ].Min && dice < probabilities ["金竿" ].Max :
272+ case dice >= localProbabilities ["金竿" ].Min && dice < localProbabilities ["金竿" ].Max :
267273 thingName = "金竿"
268- case dice >= probabilities ["钻石竿" ].Min && dice < probabilities ["钻石竿" ].Max :
274+ case dice >= localProbabilities ["钻石竿" ].Min && dice < localProbabilities ["钻石竿" ].Max :
269275 thingName = "钻石竿"
270- case dice >= probabilities ["下界合金竿" ].Min && dice < probabilities ["下界合金竿" ].Max :
276+ case dice >= localProbabilities ["下界合金竿" ].Min && dice < localProbabilities ["下界合金竿" ].Max :
271277 thingName = "下界合金竿"
272278 default :
273279 thingName = "木竿"
274280 }
275281 picName = thingName
276- case dice >= probabilities ["fish" ].Min && dice < probabilities ["fish" ].Max :
282+ case dice >= localProbabilities ["fish" ].Min && dice < localProbabilities ["fish" ].Max : // 鱼类
277283 typeOfThing = "fish"
278284 dice = rand .Intn (100 )
279285 switch {
280- case dice >= probabilities ["墨鱼" ].Min && dice < probabilities ["墨鱼" ].Max :
286+ case dice >= localProbabilities ["墨鱼" ].Min && dice < localProbabilities ["墨鱼" ].Max :
281287 thingName = "墨鱼"
282- case dice >= probabilities ["鳕鱼" ].Min && dice < probabilities ["鳕鱼" ].Max :
288+ case dice >= localProbabilities ["鳕鱼" ].Min && dice < localProbabilities ["鳕鱼" ].Max :
283289 thingName = "鳕鱼"
284- case dice >= probabilities ["鲑鱼" ].Min && dice < probabilities ["鲑鱼" ].Max :
290+ case dice >= localProbabilities ["鲑鱼" ].Min && dice < localProbabilities ["鲑鱼" ].Max :
285291 thingName = "鲑鱼"
286- case dice >= probabilities ["热带鱼" ].Min && dice < probabilities ["热带鱼" ].Max :
292+ case dice >= localProbabilities ["热带鱼" ].Min && dice < localProbabilities ["热带鱼" ].Max :
287293 thingName = "热带鱼"
288- case dice >= probabilities ["河豚" ].Min && dice < probabilities ["河豚" ].Max :
294+ case dice >= localProbabilities ["河豚" ].Min && dice < localProbabilities ["河豚" ].Max :
289295 thingName = "河豚"
290296 default :
291297 thingName = "鹦鹉螺"
0 commit comments