diff --git a/modules/entertainment/xxlPlat.go b/modules/entertainment/xxlPlat.go index 5e8a7f40f..93b6562d0 100644 --- a/modules/entertainment/xxlPlat.go +++ b/modules/entertainment/xxlPlat.go @@ -526,7 +526,15 @@ func (this *MapData) SkillUp(pos int32, color int32, skillid int32, value int32, switch skillid { case 1: - ids = utils.RandomNumbers(0, Total-1, int(value)) + randNum := utils.RandomNumbers(0, Total-1, int(value)*2) + for _, v := range randNum { + if this.Plat[v].Special > 0 { + ids = append(ids, v) + if len(ids) >= int(value) { + break + } + } + } case 2: for i := 0; i < Height; i++ { ids = append(ids, 3*Width+i)