diff --git a/src/server/game/activity_func.go b/src/server/game/activity_func.go index 54a2d155..51a6fe4f 100644 --- a/src/server/game/activity_func.go +++ b/src/server/game/activity_func.go @@ -23,7 +23,6 @@ import ( // 活动模块 登录 func (p *Player) ActivityLogin() { ItemMod := p.PlayMod.getItemMod() - // 通用登录处理:检查旧Activity道具并通过邮件退还 handleSimpleLogin := func(actType int, loginFn func(int) int) { ActivityId := p.GetActivityId(actType) @@ -58,10 +57,10 @@ func (p *Player) ActivityLogin() { // 赛跑 handleSimpleLogin(activity.ACT_TYPE_RACE, p.PlayMod.getRaceMod().Login) // 猫草大作战 - CatnipActivityId := p.GetActivityId(activity.ACT_TYPE_CATNIP) + catnipActivityId := p.GetActivityId(activity.ACT_TYPE_CATNIP) CatnipMod := p.PlayMod.getCatnipMod() - OldId, CatnipUnReward := CatnipMod.Login(CatnipActivityId) - if OldId != 0 && len(CatnipUnReward) > 0 { + oldId, catnipUnReward := CatnipMod.Login(catnipActivityId) + if oldId != 0 && len(catnipUnReward) > 0 { // 清空猫草大作战数据无需发邮件 MailMod := p.PlayMod.getMailMod() MailMod.SendMail(&mail.MailStruct{ @@ -73,25 +72,24 @@ func (p *Player) ActivityLogin() { ContentPtBr: languageCfg.GetLanguage(msg.LANG_TYPE_LANG_PTBR, "backend_gardenend_mail_content"), TitleEsLatam: languageCfg.GetLanguage(msg.LANG_TYPE_LANG_ES_LATAM, "backend_gardenend_mail_title"), ContentEsLatam: languageCfg.GetLanguage(msg.LANG_TYPE_LANG_ES_LATAM, "backend_gardenend_mail_content"), - Items: CatnipUnReward, + Items: catnipUnReward, Type: mail.MAIL_TYPE_NORMAL, }) } // 通行证 - PassActivityId := p.GetActivityId(activity.ACT_TYPE_PASS) + passActivityId := p.GetActivityId(activity.ACT_TYPE_PASS) PassMod := p.PlayMod.getPassMod() - PassOldId := PassMod.Login(PassActivityId) - if PassOldId != 0 { - ItemId := passCfg.GetActivityItemId(PassOldId) + passOldId := PassMod.Login(passActivityId) + if passOldId != 0 { + ItemId := passCfg.GetActivityItemId(passOldId) ItemNum := PassMod.Num RewardItems, _ := PassMod.GetRewardItems() if ItemNum != 0 { ItemMod.AddItem(ItemId, -ItemNum) - p.SendActivityMail(ItemId, ItemNum, PassActivityId, RewardItems) + p.SendActivityMail(ItemId, ItemNum, passActivityId, RewardItems) } } - // 初始化活动道具 initItem := p.GetMiningMod().GetInitItem() if len(initItem) > 0 { @@ -189,15 +187,15 @@ func (p *Player) GetActivityInfoById(Id int) *ActivityInfo { // 获取活动状态 func (p *Player) GetActivityStatus(actType int) int { - ActivityInfo := p.GetActivityInfo(actType) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(actType) + if activityInfo == nil { return ACT_STATUS_NOT_START } - Now := GoUtil.Now() - if Now < ActivityInfo.StartT { + now := GoUtil.Now() + if now < activityInfo.StartT { return ACT_STATUS_NOT_START } - if Now > ActivityInfo.EndT { + if now > activityInfo.EndT { return ACT_STATUS_END } return ACT_STATUS_START @@ -205,12 +203,12 @@ func (p *Player) GetActivityStatus(actType int) int { // 挖矿活动数据返回 func (p *Player) MiningBackData() { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_MINING) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_MINING) + if activityInfo == nil { return } - Status := p.GetActivityStatus(activity.ACT_TYPE_MINING) - Template := miningCfg.GetTemplate(ActivityInfo.Id) + status := p.GetActivityStatus(activity.ACT_TYPE_MINING) + template := miningCfg.GetTemplate(activityInfo.Id) DecorateMod := p.PlayMod.getDecorateMod() orderFactor := orderCfg.GetOrderFactor(DecorateMod.GetAreaId()) passRewardList := miningCfg.GetPassItemList(orderFactor) @@ -220,10 +218,10 @@ func (p *Player) MiningBackData() { } MiningMod := p.PlayMod.getMiningMod() p.PushClientRes(&msg.ResMining{ - Id: int32(ActivityInfo.Id), - Status: int32(Status), - EndTime: int32(ActivityInfo.EndT), - Template: int32(Template), + Id: int32(activityInfo.Id), + Status: int32(status), + EndTime: int32(activityInfo.EndT), + Template: int32(template), Pass: int32(MiningMod.GetPass()), Gem: GoUtil.IntToInt32(MiningMod.GetGem()), Map: MiningMod.GetMap(), @@ -234,23 +232,23 @@ func (p *Player) MiningBackData() { // 猜颜色活动数据返回 func (p *Player) GuessColorBackData() { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_GUESS_COLOR) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_GUESS_COLOR) + if activityInfo == nil { return } - Status := p.GetActivityStatus(activity.ACT_TYPE_GUESS_COLOR) + status := p.GetActivityStatus(activity.ACT_TYPE_GUESS_COLOR) GuessColorMod := p.PlayMod.getGuessColorMod() - MapList := make([]*msg.GuessColorInfo, 0, len(GuessColorMod.MapList)) + mapList := make([]*msg.GuessColorInfo, 0, len(GuessColorMod.MapList)) for _, v := range GuessColorMod.MapList { - MapList = append(MapList, &msg.GuessColorInfo{ + mapList = append(mapList, &msg.GuessColorInfo{ Map: v, }) } p.PushClientRes(&msg.ResGuessColor{ - Id: int32(ActivityInfo.Id), - Status: int32(Status), - EndTime: int32(ActivityInfo.EndT), + Id: int32(activityInfo.Id), + Status: int32(status), + EndTime: int32(activityInfo.EndT), Pass: int32(GuessColorMod.Pass), Opponent: &msg.Opponent{ Name: GuessColorMod.Opponent.Name, @@ -259,22 +257,22 @@ func (p *Player) GuessColorBackData() { Progress: int32(GuessColorMod.Opponent.Progress), }, WinTime: int32(GuessColorMod.WinTime), - MapList: MapList, + MapList: mapList, OMap: GuessColorMod.OMap, }) } // 赛跑活动数据返回 func (p *Player) RaceBackData() { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_RACE) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_RACE) + if activityInfo == nil { return } - Status := p.GetActivityStatus(activity.ACT_TYPE_RACE) + status := p.GetActivityStatus(activity.ACT_TYPE_RACE) RaceMod := p.PlayMod.getRaceMod() - Opponent := make([]*msg.Raceopponent, 0, len(RaceMod.Opponent)) + opponent := make([]*msg.Raceopponent, 0, len(RaceMod.Opponent)) for _, v := range RaceMod.Opponent { - Opponent = append(Opponent, &msg.Raceopponent{ + opponent = append(opponent, &msg.Raceopponent{ Id: int32(v.Id), Name: v.Name, Face: int32(v.Face), @@ -283,14 +281,14 @@ func (p *Player) RaceBackData() { }) } p.PushClientRes(&msg.ResRace{ - Id: int32(ActivityInfo.Id), - Status: int32(Status), - EndTime: int32(ActivityInfo.EndT), + Id: int32(activityInfo.Id), + Status: int32(status), + EndTime: int32(activityInfo.EndT), Pass: int32(RaceMod.Pass), GameStartTime: int32(RaceMod.StartTime), Progress: int32(RaceMod.Progress), GameEndTime: int32(RaceMod.EndTime), - Opponent: Opponent, + Opponent: opponent, Rank: int32(RaceMod.Rank), }) } @@ -298,9 +296,9 @@ func (p *Player) RaceBackData() { // 红点数据返回 func (p *Player) RedBackData() { result := make(map[int32]int32) - Now := GoUtil.Now() + now := GoUtil.Now() for _, v := range p.activity { - if v.StartT < Now && v.EndT > Now { + if v.StartT < now && v.EndT > now { result[int32(v.Type)] = int32(p.GetRed(v)) } } @@ -308,27 +306,27 @@ func (p *Player) RedBackData() { } func (p *Player) GetMiningItemId() int { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_MINING) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_MINING) + if activityInfo == nil { return 0 } - return miningCfg.GetActivityItemId(ActivityInfo.Id) + return miningCfg.GetActivityItemId(activityInfo.Id) } // 通行证活动数据返回 func (p *Player) ActPassBackData() { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_PASS) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_PASS) + if activityInfo == nil { return } - Status := p.GetActivityStatus(activity.ACT_TYPE_PASS) - Template := passCfg.GetTemplate(ActivityInfo.Id) + status := p.GetActivityStatus(activity.ACT_TYPE_PASS) + template := passCfg.GetTemplate(activityInfo.Id) PassMod := p.PlayMod.getPassMod() p.PushClientRes(&msg.ResActPass{ - Id: int32(ActivityInfo.Id), - Status: int32(Status), - Template: int32(Template), - EndTime: int32(ActivityInfo.EndT), + Id: int32(activityInfo.Id), + Status: int32(status), + Template: int32(template), + EndTime: int32(activityInfo.EndT), LowPass: PassMod.LowPass > 0, HighPass: PassMod.HighPass > 0, Score: int32(PassMod.Num), @@ -338,57 +336,57 @@ func (p *Player) ActPassBackData() { // 获取活动道具 func (p *Player) GetActivityItem(ActType []int) []*item.Item { - Items := make([]*item.Item, 0) - Now := GoUtil.Now() + items := make([]*item.Item, 0) + now := GoUtil.Now() for _, v := range ActType { - ActivityInfo := p.GetActivityInfo(v) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(v) + if activityInfo == nil { continue } - Status := ACT_STATUS_START - if Now < ActivityInfo.StartT { - Status = ACT_STATUS_NOT_START - } else if Now > ActivityInfo.EndT { - Status = ACT_STATUS_END + status := ACT_STATUS_START + if now < activityInfo.StartT { + status = ACT_STATUS_NOT_START + } else if now > activityInfo.EndT { + status = ACT_STATUS_END } - if Status != ACT_STATUS_START { + if status != ACT_STATUS_START { continue } switch v { case activity.ACT_TYPE_MINING: - Item := miningCfg.GetLoseItem(ActivityInfo.Id) - Items = item.Merge(Items, Item) + itemInfo := miningCfg.GetLoseItem(activityInfo.Id) + items = item.Merge(items, itemInfo) case activity.ACT_TYPE_GUESS_COLOR: - Item := guesscolorCfg.GetLoseItem(ActivityInfo.Id) - Items = item.Merge(Items, Item) + itemInfo := guesscolorCfg.GetLoseItem(activityInfo.Id) + items = item.Merge(items, itemInfo) case activity.ACT_TYPE_RACE: - ItemId := raceCfg.GetCoin(ActivityInfo.Id) - Item := item.NewItem(ItemId, 1) - Items = append(Items, Item) + itemId := raceCfg.GetCoin(activityInfo.Id) + itemInfo := item.NewItem(itemId, 1) + items = append(items, itemInfo) case activity.ACT_TYPE_PASS: - ItemId := passCfg.GetActivityItemId(ActivityInfo.Id) - Item := item.NewItem(ItemId, 1) - Items = append(Items, Item) + itemId := passCfg.GetActivityItemId(activityInfo.Id) + itemInfo := item.NewItem(itemId, 1) + items = append(items, itemInfo) } } - return Items + return items } // 猫草大作战活动数据返回 func (p *Player) CatnipBackData() { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_CATNIP) - if ActivityInfo == nil { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_CATNIP) + if activityInfo == nil { return } CatnipMod := p.PlayMod.getCatnipMod() - Status := p.GetActivityStatus(activity.ACT_TYPE_CATNIP) + status := p.GetActivityStatus(activity.ACT_TYPE_CATNIP) if CatnipMod == nil { return } FriendMod := p.PlayMod.getFriendMod() - GameList := make([]*msg.CatnipGame, 0, len(CatnipMod.Game)) + gameList := make([]*msg.CatnipGame, 0, len(CatnipMod.Game)) for _, v := range CatnipMod.Game { - GameInfo := &msg.CatnipGame{ + gameInfo := &msg.CatnipGame{ Id: int32(v.Id), Progress: int32(v.Progress), Status: int32(v.Status), @@ -398,13 +396,13 @@ func (p *Player) CatnipBackData() { SendEmoji: int32(v.SendEmoji), } if v.Partner != 0 { - PlayerData := G_getGameLogic().GetResSimplePlayerByUid(v.Partner) - if PlayerData != nil { - GameInfo.Partner = PlayerData + playerData := G_getGameLogic().GetResSimplePlayerByUid(v.Partner) + if playerData != nil { + gameInfo.Partner = playerData } } - GameList = append(GameList, GameInfo) + gameList = append(gameList, gameInfo) } tmpData := make(map[int]*msg.CatnipInvite) for uid, info := range CatnipMod.InviteList { @@ -443,24 +441,24 @@ func (p *Player) CatnipBackData() { invite.Type = 4 // 已参与游戏的好友不显示邀请 } } - InviteList := make([]*msg.CatnipInvite, 0, len(tmpData)) + inviteList := make([]*msg.CatnipInvite, 0, len(tmpData)) for _, v := range tmpData { - ResPlayerSimple := G_getGameLogic().GetResSimplePlayerByUid(int(v.Uid)) - if ResPlayerSimple != nil { - v.Player = ResPlayerSimple + resPlayerSimple := G_getGameLogic().GetResSimplePlayerByUid(int(v.Uid)) + if resPlayerSimple != nil { + v.Player = resPlayerSimple } - InviteList = append(InviteList, v) + inviteList = append(inviteList, v) } - Template := catnipCfg.GetTemplateId(CatnipMod.Id) + template := catnipCfg.GetTemplateId(CatnipMod.Id) res := &msg.ResCatnip{ Id: int32(CatnipMod.Id), - EndTime: int32(ActivityInfo.EndT), - Status: int32(Status), - Template: int32(Template), - GameList: GameList, + EndTime: int32(activityInfo.EndT), + Status: int32(status), + Template: int32(template), + GameList: gameList, Multiply: int32(CatnipMod.Mul), - FriendList: InviteList, + FriendList: inviteList, } p.PushClientRes(res) } @@ -469,8 +467,8 @@ func (p *Player) GetChampshipActivityId() (int, int) { var todayActivityId int var yesterdayActivityId int activiyCfgList := G_GameLogicPtr.ActivityMgr.GetActivityList() - Now := GoUtil.Now() - YesterDay := GoUtil.ZeroTimestamp() - 1 + now := GoUtil.Now() + yesterday := GoUtil.ZeroTimestamp() - 1 level := p.GetBaseMod().GetLevel() champshipActivityIds := champshipCfg.GetChampshipActivityId() for _, v := range activiyCfgList { @@ -480,10 +478,10 @@ func (p *Player) GetChampshipActivityId() (int, int) { if v.Level > level { continue } - if v.Startime <= Now && v.Endtime >= Now { + if v.Startime <= now && v.Endtime >= now { todayActivityId = v.Id } - if v.Startime <= YesterDay && v.Endtime >= YesterDay { + if v.Startime <= yesterday && v.Endtime >= yesterday { yesterdayActivityId = v.Id } } @@ -493,7 +491,7 @@ func (p *Player) GetChampshipActivityId() (int, int) { func (p *Player) GetDailyTaskActivityId() int { var activityId int activiyCfgList := G_GameLogicPtr.ActivityMgr.GetActivityList() - Now := GoUtil.Now() + now := GoUtil.Now() level := p.GetBaseMod().GetLevel() activityIds := dailyTaskCfg.GetActivityIds() for _, v := range activiyCfgList { @@ -503,7 +501,7 @@ func (p *Player) GetDailyTaskActivityId() int { if v.Level > level { continue } - if v.Startime <= Now && v.Endtime >= Now { + if v.Startime <= now && v.Endtime >= now { activityId = v.Id break } diff --git a/src/server/game/admin.go b/src/server/game/admin.go index aac65f31..21de05c0 100644 --- a/src/server/game/admin.go +++ b/src/server/game/admin.go @@ -30,14 +30,14 @@ var AdminFuncMap = map[string]func([]interface{}) error{ "ReqAdminShipping": ReqAdminShipping, } -func AdminProcess(Func string, args []interface{}) { +func AdminProcess(funcName string, args []interface{}) { defer func() { if r := recover(); r != nil { - log.Error("uid : %d, func : %s, fatal : %s", 0, Func, r) - //GoUtil.SendFeishuFatal(0, Func, fmt.Sprintf("fatal : %s", r)) + log.Error("uid : %d, func : %s, fatal : %s", 0, funcName, r) + //GoUtil.SendFeishuFatal(0, funcName, fmt.Sprintf("fatal : %s", r)) } }() - if f, ok := AdminFuncMap[Func]; ok { + if f, ok := AdminFuncMap[funcName]; ok { err := f(args) if err != nil { log.Debug("AdminProcess error: %v", err) @@ -123,27 +123,27 @@ func ReqAdminShipping(args []interface{}) error { proto.Unmarshal(buf, req) res := make(map[string]interface{}) res["Code"] = 0 - OrderInfo, err := db.GetPlayerChargeData(req.OrderSn) + orderInfo, err := db.GetPlayerChargeData(req.OrderSn) if err != nil { res["Code"] = 1 res["Msg"] = "order not found" AdminPlayerBack(a, res) } - if OrderInfo.PayStatus == MergeConst.ORDER_STATUS_SHIP { + if orderInfo.PayStatus == MergeConst.ORDER_STATUS_SHIP { res["Msg"] = "order already shipped" AdminPlayerBack(a, res) } - Player := G_GameLogicPtr.GetPlayer(int64(OrderInfo.Uid)) - if Player != nil { - go Player.TriggerShippingOrderOrigin(&msg.ReqShippingOrder{ + player := G_GameLogicPtr.GetPlayer(int64(orderInfo.Uid)) + if player != nil { + go player.TriggerShippingOrderOrigin(&msg.ReqShippingOrder{ OrderSn: req.OrderSn, }) res["Msg"] = "player online,triggered sync" AdminPlayerBack(a, res) } else { - OrderInfo.PayStatus = MergeConst.ORDER_STATUS_PAY - OrderInfo.PayChannelOrderId = req.ChannelOrderSn - db.UpdatePlayerChargeData(OrderInfo) + orderInfo.PayStatus = MergeConst.ORDER_STATUS_PAY + orderInfo.PayChannelOrderId = req.ChannelOrderSn + db.UpdatePlayerChargeData(orderInfo) } return nil } @@ -230,10 +230,10 @@ func AdminPlayerInfo(args []interface{}) error { } func AdminPlayerBack(a gate.Agent, res map[string]interface{}) { - JsonBuff, _ := json.Marshal(res) + jsonBuff, _ := json.Marshal(res) response := &msg.AdminRes{} response.Func = "admin" - response.Info = string(JsonBuff) + response.Info = string(jsonBuff) a.WriteMsg(response) } @@ -330,18 +330,18 @@ func AcitivityCfgReload() { func AdminShipping(req *msg.ReqOrderShipping) (*msg.ResOrderShipping, error) { res := &msg.ResOrderShipping{} res.Code = 0 - OrderInfo, err := db.GetPlayerChargeData(req.OrderSn) + orderInfo, err := db.GetPlayerChargeData(req.OrderSn) if err != nil { res.Code = 1 res.Msg = "order not found" } - if OrderInfo.PayStatus == MergeConst.ORDER_STATUS_SHIP { + if orderInfo.PayStatus == MergeConst.ORDER_STATUS_SHIP { res.Msg = "order already shipped" } // 玩家在线,通知发货 - Player := G_GameLogicPtr.GetPlayer(int64(OrderInfo.Uid)) - if Player != nil { - go Player.TriggerShippingOrderOrigin(&msg.ReqShippingOrder{ + player := G_GameLogicPtr.GetPlayer(int64(orderInfo.Uid)) + if player != nil { + go player.TriggerShippingOrderOrigin(&msg.ReqShippingOrder{ OrderSn: req.OrderSn, }) res.Msg = "player online,triggered sync" diff --git a/src/server/game/champship_mgr.go b/src/server/game/champship_mgr.go index 4ff59a4c..f9510804 100644 --- a/src/server/game/champship_mgr.go +++ b/src/server/game/champship_mgr.go @@ -94,15 +94,15 @@ func (c *ChampshipMgr) Init() { } // 注册处理函数 c.init() - Now := GoUtil.Now() - ZeroTime := GoUtil.ZeroTimestamp() - if c.getData().ZeroTime != ZeroTime { + now := GoUtil.Now() + zeroTime := GoUtil.ZeroTimestamp() + if c.getData().ZeroTime != zeroTime { c.ZeroUpdate() } - Remain := Now - ZeroTime - Remain1 := 1800 - Remain%1800 + remain := now - zeroTime + remain1 := 1800 - remain%1800 - c.mDispatr.AfterFunc(time.Duration(Remain1)*time.Second, func() { // 30分钟后重新分组 + c.mDispatr.AfterFunc(time.Duration(remain1)*time.Second, func() { // 30分钟后重新分组 c.group(false) }) @@ -205,10 +205,10 @@ func (c *ChampshipMgr) ai() (interface{}, error) { ChampshipData := c.getData() ChampshipData.mu.Lock() defer ChampshipData.mu.Unlock() - Now := GoUtil.Now() + now := GoUtil.Now() uids := make(map[int]struct{}) for k, v := range ChampshipData.Rank { - Notify := make(map[int]int) + notify := make(map[int]int) for e, r := range v { if r.Type == RANK_PLAYER_ROBOT { AddScore := 0.0 @@ -217,17 +217,17 @@ func (c *ChampshipMgr) ai() (interface{}, error) { continue } - if Robot.Type == 2 && Robot.Time+60 < Now { + if Robot.Type == 2 && Robot.Time+60 < now { AddScore = Robot.PerScore - Robot.Time = Now + Robot.Time = now } - if Robot.Type == 3 && Robot.Time+1800 < Now { + if Robot.Type == 3 && Robot.Time+1800 < now { AddScore = Robot.PerScore - Robot.Time = Now + Robot.Time = now } r.Score += AddScore } else { - Notify[r.Uid] = e + notify[r.Uid] = e } } sort.Slice(v, func(i, j int) bool { // 排序 从大到小 数值相等按时间排序 @@ -242,14 +242,13 @@ func (c *ChampshipMgr) ai() (interface{}, error) { if r.Type == RANK_PLAYER_ROBOT { continue } - if Notify[r.Uid] != e { + if notify[r.Uid] != e { c.SetRankCache(r.Uid) uids[r.Uid] = struct{}{} } } ChampshipData.Rank[k] = v } - now := GoUtil.Now() // 在锁外通知玩家,避免在持锁时启动 goroutine 访问可能被并发修改的数据 for uid := range uids { go NotifyPlayer(uid, &msg.Msg{ @@ -264,180 +263,180 @@ func (c *ChampshipMgr) ai() (interface{}, error) { return nil, nil } -func (c *ChampshipMgr) GetPreRankMsg(Uid int) *proto.ResChampshipPreRank { +func (c *ChampshipMgr) GetPreRankMsg(uid int) *proto.ResChampshipPreRank { ChampshipData := c.getData() ChampshipData.mu.RLock() defer ChampshipData.mu.RUnlock() - GroupId := ChampshipData.PreGroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.PreGroupInfo[uid] + if groupId == 0 { return &proto.ResChampshipPreRank{} } - RankList, ok := ChampshipData.PreRank[GroupId] + RankList, ok := ChampshipData.PreRank[groupId] if !ok { return &proto.ResChampshipPreRank{} } - MyRank := 0 - MyScore := 0.0 + myRank := 0 + myScore := 0.0 RL := make(map[int32]*proto.ResPlayerRank, 0) for k, v := range RankList { - if v.Uid == Uid { - MyRank = k + 1 - MyScore = v.Score + if v.Uid == uid { + myRank = k + 1 + myScore = v.Score } if v.Type == RANK_PLAYER_ROBOT { - Robot := ChampshipData.PreRobot[v.Uid] - if Robot == nil { + robot := ChampshipData.PreRobot[v.Uid] + if robot == nil { continue } last := &proto.ActLog{} - if Robot.ActLog != nil { + if robot.ActLog != nil { last = &proto.ActLog{ - Type: int32(Robot.ActLog.Type), - Time: Robot.ActLog.Time, - Param: Robot.ActLog.Param, + Type: int32(robot.ActLog.Type), + Time: robot.ActLog.Time, + Param: robot.ActLog.Param, } } RL[int32(k+1)] = &proto.ResPlayerRank{ Uid: int64(v.Uid), Score: float32(v.Score), - Name: Robot.Name, - Avatar: int32(Robot.Avatar), - Face: int32(Robot.Face), - Level: int32(Robot.Level), + Name: robot.Name, + Avatar: int32(robot.Avatar), + Face: int32(robot.Face), + Level: int32(robot.Level), Type: int32(v.Type), - PlayroomSet: GoUtil.MapIntToInt32(Robot.Playroom), - DressSet: GoUtil.MapIntToInt32(Robot.DressSet), - FurSet: int32(Robot.FurSet), - PetName: Robot.PetName, + PlayroomSet: GoUtil.MapIntToInt32(robot.Playroom), + DressSet: GoUtil.MapIntToInt32(robot.DressSet), + FurSet: int32(robot.FurSet), + PetName: robot.PetName, Last: last, } } else { - SimplePlayer := G_GameLogicPtr.GetSimplePlayerByUid(v.Uid) - if SimplePlayer == nil { + simplePlayer := G_GameLogicPtr.GetSimplePlayerByUid(v.Uid) + if simplePlayer == nil { continue } last := &proto.ActLog{} - if SimplePlayer.ActLog != nil { + if simplePlayer.ActLog != nil { last = &proto.ActLog{ - Type: int32(SimplePlayer.ActLog.Type), - Time: SimplePlayer.ActLog.Time, - Param: SimplePlayer.ActLog.Param, + Type: int32(simplePlayer.ActLog.Type), + Time: simplePlayer.ActLog.Time, + Param: simplePlayer.ActLog.Param, } } RL[int32(k+1)] = &proto.ResPlayerRank{ Uid: int64(v.Uid), Score: float32(v.Score), - Name: SimplePlayer.Name, - Avatar: int32(SimplePlayer.Avatar), - Face: int32(SimplePlayer.Face), - Level: int32(SimplePlayer.Level), + Name: simplePlayer.Name, + Avatar: int32(simplePlayer.Avatar), + Face: int32(simplePlayer.Face), + Level: int32(simplePlayer.Level), Type: int32(v.Type), - PlayroomSet: GoUtil.MapIntToInt32(SimplePlayer.Playroom), - DressSet: GoUtil.MapIntToInt32(SimplePlayer.DressSet), - FurSet: int32(SimplePlayer.PetFur), - PetName: SimplePlayer.PetName, + PlayroomSet: GoUtil.MapIntToInt32(simplePlayer.Playroom), + DressSet: GoUtil.MapIntToInt32(simplePlayer.DressSet), + FurSet: int32(simplePlayer.PetFur), + PetName: simplePlayer.PetName, Last: last, } } } return &proto.ResChampshipPreRank{ - MyRank: int32(MyRank), - MyScore: float32(MyScore), + MyRank: int32(myRank), + MyScore: float32(myScore), RankList: RL, } } // TODO 待优化 -func (c *ChampshipMgr) GetRankMsg(Uid int) *proto.ResChampshipRank { +func (c *ChampshipMgr) GetRankMsg(uid int) *proto.ResChampshipRank { ChampshipData := c.getData() ChampshipData.mu.RLock() defer ChampshipData.mu.RUnlock() - GroupId := ChampshipData.GroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.GroupInfo[uid] + if groupId == 0 { return &proto.ResChampshipRank{} } - RankList, ok := ChampshipData.Rank[GroupId] + rankList, ok := ChampshipData.Rank[groupId] if !ok { return &proto.ResChampshipRank{} } - MyRank := 0 - MyScore := 0.0 + myRank := 0 + myScore := 0.0 RL := make(map[int32]*proto.ResPlayerRank, 0) - for k, v := range RankList { - if v.Uid == Uid { - MyRank = k + 1 - MyScore = v.Score + for k, v := range rankList { + if v.Uid == uid { + myRank = k + 1 + myScore = v.Score } if v.Type == RANK_PLAYER_ROBOT { - Robot := ChampshipData.Robot[v.Uid] - if Robot == nil { + robot := ChampshipData.Robot[v.Uid] + if robot == nil { continue } last := &proto.ActLog{} - if Robot.ActLog != nil { + if robot.ActLog != nil { last = &proto.ActLog{ - Type: int32(Robot.ActLog.Type), - Time: Robot.ActLog.Time, - Param: Robot.ActLog.Param, + Type: int32(robot.ActLog.Type), + Time: robot.ActLog.Time, + Param: robot.ActLog.Param, } } RL[int32(k+1)] = &proto.ResPlayerRank{ Uid: int64(v.Uid), Score: float32(v.Score), - Name: Robot.Name, - Avatar: int32(Robot.Avatar), - Face: int32(Robot.Face), - Level: int32(Robot.Level), + Name: robot.Name, + Avatar: int32(robot.Avatar), + Face: int32(robot.Face), + Level: int32(robot.Level), Type: int32(v.Type), - PlayroomSet: GoUtil.MapIntToInt32(Robot.Playroom), - DressSet: GoUtil.MapIntToInt32(Robot.DressSet), - FurSet: int32(Robot.FurSet), - PetName: Robot.PetName, + PlayroomSet: GoUtil.MapIntToInt32(robot.Playroom), + DressSet: GoUtil.MapIntToInt32(robot.DressSet), + FurSet: int32(robot.FurSet), + PetName: robot.PetName, Last: last, } } else { - SimplePlayer := G_GameLogicPtr.GetSimplePlayerByUid(v.Uid) - if SimplePlayer == nil { + simplePlayer := G_GameLogicPtr.GetSimplePlayerByUid(v.Uid) + if simplePlayer == nil { continue } last := &proto.ActLog{} - if SimplePlayer.ActLog != nil { + if simplePlayer.ActLog != nil { last = &proto.ActLog{ - Type: int32(SimplePlayer.ActLog.Type), - Time: SimplePlayer.ActLog.Time, - Param: SimplePlayer.ActLog.Param, + Type: int32(simplePlayer.ActLog.Type), + Time: simplePlayer.ActLog.Time, + Param: simplePlayer.ActLog.Param, } } RL[int32(k+1)] = &proto.ResPlayerRank{ Uid: int64(v.Uid), Score: float32(v.Score), - Name: SimplePlayer.Name, - Avatar: int32(SimplePlayer.Avatar), - Face: int32(SimplePlayer.Face), - Level: int32(SimplePlayer.Level), + Name: simplePlayer.Name, + Avatar: int32(simplePlayer.Avatar), + Face: int32(simplePlayer.Face), + Level: int32(simplePlayer.Level), Type: int32(v.Type), - PlayroomSet: GoUtil.MapIntToInt32(SimplePlayer.Playroom), - DressSet: GoUtil.MapIntToInt32(SimplePlayer.DressSet), - FurSet: int32(SimplePlayer.PetFur), - PetName: SimplePlayer.PetName, + PlayroomSet: GoUtil.MapIntToInt32(simplePlayer.Playroom), + DressSet: GoUtil.MapIntToInt32(simplePlayer.DressSet), + FurSet: int32(simplePlayer.PetFur), + PetName: simplePlayer.PetName, Last: last, } } } return &proto.ResChampshipRank{ - MyRank: int32(MyRank), - MyScore: float32(MyScore), + MyRank: int32(myRank), + MyScore: float32(myScore), RankList: RL, } } // 分组 func (c *ChampshipMgr) group(iszero bool) (interface{}, error) { - Now := GoUtil.Now() - Zero := GoUtil.ZeroTimestamp() - if Now-Zero < 1800 && !iszero { // 0点30分钟内不分组 + now := GoUtil.Now() + zero := GoUtil.ZeroTimestamp() + if now-zero < 1800 && !iszero { // 0点30分钟内不分组 return nil, nil } c.mDispatr.AfterFunc(time.Duration(1800)*time.Second, func() { // 30分钟后重新分组 @@ -496,35 +495,35 @@ func (c *ChampshipMgr) group(iszero bool) (interface{}, error) { g[i] = g[i][:len(g[i])-remainder] } ChampshipData.AutoId++ - StartId := ChampshipData.AutoId + startId := ChampshipData.AutoId for j := 0; j < len(g[i]); j++ { if len(ChampshipData.Rank[ChampshipData.AutoId]) >= 10 { log.Error("championship error: more than 10 players in a group") } ChampshipData.GroupInfo[g[i][j]] = ChampshipData.AutoId - UserData := ChampshipData.Pool[g[i][j]] + userData := ChampshipData.Pool[g[i][j]] ChampshipData.Rank[ChampshipData.AutoId] = append(ChampshipData.Rank[ChampshipData.AutoId], &ChampshipRank{ - Uid: UserData.Uid, - Score: UserData.Score, - Time: UserData.Time, + Uid: userData.Uid, + Score: userData.Score, + Time: userData.Time, }) - //log.Debug("group AutoId:%d, Uid:%d, Score:%.2f, Time:%d", ChampshipData.AutoId, UserData.Uid, UserData.Score, UserData.Time) + //log.Debug("group AutoId:%d, Uid:%d, Score:%.2f, Time:%d", ChampshipData.AutoId, userData.Uid, userData.Score, userData.Time) if len(ChampshipData.Rank[ChampshipData.AutoId]) >= 10 && j != len(g[i])-1 { ChampshipData.AutoId++ } } - for j := StartId; j <= ChampshipData.AutoId; j++ { // 填充机器人 + for j := startId; j <= ChampshipData.AutoId; j++ { // 填充机器人 if len(ChampshipData.Rank[j]) >= 30 || len(ChampshipData.Rank[j]) == 0 { log.Error("championship error: more than 30 players in a group or no player in a group") continue } - RobotNum := 30 - len(ChampshipData.Rank[j]) - //log.Debug("group AutoId:%d, player num:%d, need robot num:%d", j, len(ChampshipData.Rank[j]), RobotNum) - RobotList := CreateRobotList(i, RobotNum, j) - for i := 0; i < RobotNum; i++ { - go FormatRobotInfo(RobotList[i], i+1, uids) + robotNum := 30 - len(ChampshipData.Rank[j]) + //log.Debug("group AutoId:%d, player num:%d, need robot num:%d", j, len(ChampshipData.Rank[j]), robotNum) + robotList := CreateRobotList(i, robotNum, j) + for i := 0; i < robotNum; i++ { + go FormatRobotInfo(robotList[i], i+1, uids) } - for _, v := range RobotList { + for _, v := range robotList { ChampshipData.Robot[ChampshipData.RobotId] = v ChampshipData.Rank[j] = append(ChampshipData.Rank[j], &ChampshipRank{ Uid: ChampshipData.RobotId, @@ -563,13 +562,13 @@ func (c *ChampshipMgr) group(iszero bool) (interface{}, error) { // 获取分组ID -func (c *ChampshipMgr) getGroupId(Uid int) int { +func (c *ChampshipMgr) getGroupId(uid int) int { ChampshipData := c.getData() ChampshipData.mu.RLock() defer ChampshipData.mu.RUnlock() - GroupId, ok := ChampshipData.GroupInfo[Uid] + groupId, ok := ChampshipData.GroupInfo[uid] if ok { - return GroupId + return groupId } return 0 } @@ -578,7 +577,7 @@ func (c *ChampshipMgr) getGroupId(Uid int) int { func (c *ChampshipMgr) inRank(m *msg.Msg) (interface{}, error) { data := m.Extra.(CRank) // 在加锁前获取 GroupId,避免在持有写锁时调用会获取读锁的 getGroupId 导致死锁 - GroupId := c.getGroupId(data.Uid) + groupId := c.getGroupId(data.Uid) ChampshipData := c.getData() ChampshipData.mu.Lock() @@ -586,10 +585,10 @@ func (c *ChampshipMgr) inRank(m *msg.Msg) (interface{}, error) { // 再次检查 GroupId,因为可能在等待锁期间被其他协程修改 if currentGroupId, ok := ChampshipData.GroupInfo[data.Uid]; ok { - GroupId = currentGroupId + groupId = currentGroupId } - if GroupId == 0 { + if groupId == 0 { ChampshipData.Pool[data.Uid] = &GroupInfo{ Uid: data.Uid, Score: data.Score, @@ -599,13 +598,13 @@ func (c *ChampshipMgr) inRank(m *msg.Msg) (interface{}, error) { } return nil, nil } - RankList, ok := ChampshipData.Rank[GroupId] + rankList, ok := ChampshipData.Rank[groupId] if !ok { - ChampshipData.Rank[GroupId] = make([]*ChampshipRank, 0) + ChampshipData.Rank[groupId] = make([]*ChampshipRank, 0) } inRank := false - Notify := make(map[int]int) - for k, v := range RankList { + notify := make(map[int]int) + for k, v := range rankList { if v.Uid == data.Uid { if v.Score < data.Score { v.Score = data.Score @@ -615,29 +614,29 @@ func (c *ChampshipMgr) inRank(m *msg.Msg) (interface{}, error) { } return nil, nil } - Notify[v.Uid] = k + notify[v.Uid] = k } if !inRank { - RankList = append(RankList, &ChampshipRank{ + rankList = append(rankList, &ChampshipRank{ Uid: data.Uid, Score: data.Score, Time: GoUtil.Now(), }) } - sort.Slice(RankList, func(i, j int) bool { // 排序 从大到小 数值相等按时间排序 - if RankList[i].Score > RankList[j].Score { + sort.Slice(rankList, func(i, j int) bool { // 排序 从大到小 数值相等按时间排序 + if rankList[i].Score > rankList[j].Score { return true - } else if RankList[i].Score == RankList[j].Score { - return RankList[i].Time < RankList[j].Time + } else if rankList[i].Score == rankList[j].Score { + return rankList[i].Time < rankList[j].Time } return false }) - ChampshipData.Rank[GroupId] = RankList + ChampshipData.Rank[groupId] = rankList // 收集需要通知的玩家 notifyList := make([]int, 0) - for k, v := range RankList { - if Notify[v.Uid] != k && v.Type != RANK_PLAYER_ROBOT { + for k, v := range rankList { + if notify[v.Uid] != k && v.Type != RANK_PLAYER_ROBOT { c.SetRankCache(v.Uid) notifyList = append(notifyList, v.Uid) } @@ -653,75 +652,75 @@ func (c *ChampshipMgr) inRank(m *msg.Msg) (interface{}, error) { return nil, nil } -func (c *ChampshipMgr) getMyRank(Uid int) int { +func (c *ChampshipMgr) getMyRank(uid int) int { ChampshipData := c.getData() ChampshipData.mu.RLock() defer ChampshipData.mu.RUnlock() - GroupId := ChampshipData.GroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.GroupInfo[uid] + if groupId == 0 { return 0 } - RankList, ok := ChampshipData.Rank[GroupId] + rankList, ok := ChampshipData.Rank[groupId] if !ok { return 0 } - for k, v := range RankList { - if v.Uid == Uid { + for k, v := range rankList { + if v.Uid == uid { return k + 1 } } return 0 } -func (c *ChampshipMgr) unsafe_getMyRank(Uid int) int { +func (c *ChampshipMgr) unsafe_getMyRank(uid int) int { ChampshipData := c.getData() - GroupId := ChampshipData.GroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.GroupInfo[uid] + if groupId == 0 { return 0 } - RankList, ok := ChampshipData.Rank[GroupId] + rankList, ok := ChampshipData.Rank[groupId] if !ok { return 0 } - for k, v := range RankList { - if v.Uid == Uid { + for k, v := range rankList { + if v.Uid == uid { return k + 1 } } return 0 } -func (c *ChampshipMgr) getLastMyRank(Uid int) int { +func (c *ChampshipMgr) getLastMyRank(uid int) int { ChampshipData := c.getData() ChampshipData.mu.RLock() defer ChampshipData.mu.RUnlock() - GroupId := ChampshipData.PreGroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.PreGroupInfo[uid] + if groupId == 0 { return 0 } - RankList, ok := ChampshipData.PreRank[GroupId] + rankList, ok := ChampshipData.PreRank[groupId] if !ok { return 0 } - for k, v := range RankList { - if v.Uid == Uid { + for k, v := range rankList { + if v.Uid == uid { return k + 1 } } return 0 } -func (c *ChampshipMgr) unsafe_getLastMyRank(Uid int) int { +func (c *ChampshipMgr) unsafe_getLastMyRank(uid int) int { ChampshipData := c.getData() - GroupId := ChampshipData.PreGroupInfo[Uid] - if GroupId == 0 { + groupId := ChampshipData.PreGroupInfo[uid] + if groupId == 0 { return 0 } - RankList, ok := ChampshipData.PreRank[GroupId] + rankList, ok := ChampshipData.PreRank[groupId] if !ok { return 0 } - for k, v := range RankList { - if v.Uid == Uid { + for k, v := range rankList { + if v.Uid == uid { return k + 1 } } @@ -732,215 +731,215 @@ func (c *ChampshipMgr) getData() *ChampshipData { return c.data.(*ChampshipData) } -func CreateRobotList(G, Num, GroupId int) []*ChampshipRobot { +func CreateRobotList(G, num, groupId int) []*ChampshipRobot { r := make([]*ChampshipRobot, 0) switch G { case 1: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) for i := 0; i < 6; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < 5; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 2: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) for i := 0; i < 6; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } - n := Num - 10 + n := num - 10 for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 3: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) for i := 0; i < 6; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } - n := Num - 10 + n := num - 10 for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.15); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 4: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) - n := Num - 4 + n := num - 4 for i := 0; i < int(float64(n)*0.35); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 5: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) - n := Num - 3 + n := num - 3 for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) } for i := 0; i < int(float64(n)*0.3); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.2); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 6: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) - n := Num - 2 + n := num - 2 for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) } for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) } for i := 0; i < int(float64(n)*0.3); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.25); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 7: - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) - n := Num - 1 + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) + n := num - 1 for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) } for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) } for i := 0; i < int(float64(n)*0.3); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.2); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } case 8, 9, 10, 11: M10 := GoUtil.RandMap(map[int]int{0: 98, 1: 2}) if M10 == 1 { - r = append(r, CreateRobot(float64(GoUtil.RandNum(35131, 64980)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(35131, 64980)), groupId)) } - n := Num + n := num for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(12181, 21680)), groupId)) } for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(7531, 12180)), groupId)) } for i := 0; i < int(float64(n)*0.05); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(4631, 7530)), groupId)) } for i := 0; i < int(float64(n)*0.1); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(2781, 4630)), groupId)) } for i := 0; i < int(float64(n)*0.3); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(1731, 2780)), groupId)) } for i := 0; i < int(float64(n)*0.15); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(581, 1730)), groupId)) } for i := 0; i < int(float64(n)*0.2); i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(241, 580)), groupId)) } - Last := Num - len(r) + Last := num - len(r) for i := 0; i < Last; i++ { - r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), GroupId)) + r = append(r, CreateRobot(float64(GoUtil.RandNum(20, 240)), groupId)) } } return r } -func CreateRobot(M float64, GroupId int) *ChampshipRobot { - Type := GoUtil.RandMap(map[int]int{1: 25, 2: 50, 3: 25}) - Score := M / 10 - PerScore := 0.0 - if Type == 2 { - PerScore = math.Round((M/10*0.34)/(float64(GoUtil.NextZeroTimestampDuration())/60)*100) / 100 - Score = M / 10 * 0.66 +func CreateRobot(M float64, groupId int) *ChampshipRobot { + rType := GoUtil.RandMap(map[int]int{1: 25, 2: 50, 3: 25}) + score := M / 10 + perScore := 0.0 + if rType == 2 { + perScore = math.Round((M/10*0.34)/(float64(GoUtil.NextZeroTimestampDuration())/60)*100) / 100 + score = M / 10 * 0.66 } - if Type == 3 { - PerScore = math.Round((M/10*0.34)/(float64(GoUtil.NextZeroTimestampDuration())/1800)*100) / 100 - Score = 2 + if rType == 3 { + perScore = math.Round((M/10*0.34)/(float64(GoUtil.NextZeroTimestampDuration())/1800)*100) / 100 + score = 2 } return &ChampshipRobot{ Max: M / 10, - Type: Type, + Type: rType, Name: randnameCfg.GetRandName(), PetName: randnameCfg.GetRandName(), Avatar: avatarCfg.GetRandInitId(), Face: faceCfg.GetRandInitId(), Level: GoUtil.RandNum(1, 10), - GroupId: GroupId, + GroupId: groupId, Time: GoUtil.Now(), - Score: Score, - PerScore: PerScore, + Score: score, + PerScore: perScore, } } -func FormatRobotInfo(Robot *ChampshipRobot, index int, uids []int) { +func FormatRobotInfo(robot *ChampshipRobot, index int, uids []int) { x := int(len(uids)) / 30 if index > int(x) { index = int(x) @@ -956,24 +955,24 @@ func FormatRobotInfo(Robot *ChampshipRobot, index int, uids []int) { if playerSimpleData == nil { return } - Robot.Level = playerSimpleData.Level - Robot.Avatar = playerSimpleData.Avatar - Robot.Face = playerSimpleData.Face - Robot.Playroom = playerSimpleData.Playroom - Robot.DressSet = playerSimpleData.DressSet - Robot.FurSet = playerSimpleData.PetFur - Robot.ActLog = playerSimpleData.ActLog - Robot.PetName = playerSimpleData.PetName + robot.Level = playerSimpleData.Level + robot.Avatar = playerSimpleData.Avatar + robot.Face = playerSimpleData.Face + robot.Playroom = playerSimpleData.Playroom + robot.DressSet = playerSimpleData.DressSet + robot.FurSet = playerSimpleData.PetFur + robot.ActLog = playerSimpleData.ActLog + robot.PetName = playerSimpleData.PetName } -func (c *ChampshipMgr) SetRankCache(Uid int) { - PreRank := c.unsafe_getLastMyRank(Uid) - Rank := c.unsafe_getMyRank(Uid) - PreGroupId := c.getData().PreGroupInfo[Uid] - GroupId := c.getData().GroupInfo[Uid] - key := fmt.Sprintf("champship_rank_cache_%d", Uid) - log.Debug("SetRankCache key:%s; data:%s", key, fmt.Sprintf("%d_%d_%d_%d", PreRank, Rank, PreGroupId, GroupId)) - db.RedisSetKey(key, fmt.Sprintf("%d_%d_%d_%d", PreRank, Rank, PreGroupId, GroupId), time.Second*172800) +func (c *ChampshipMgr) SetRankCache(uid int) { + preRank := c.unsafe_getLastMyRank(uid) + rank := c.unsafe_getMyRank(uid) + preGroupId := c.getData().PreGroupInfo[uid] + groupId := c.getData().GroupInfo[uid] + key := fmt.Sprintf("champship_rank_cache_%d", uid) + log.Debug("SetRankCache key:%s; data:%s", key, fmt.Sprintf("%d_%d_%d_%d", preRank, rank, preGroupId, groupId)) + db.RedisSetKey(key, fmt.Sprintf("%d_%d_%d_%d", preRank, rank, preGroupId, groupId), time.Second*172800) } func (c *ChampshipMgr) Debug() { @@ -1001,13 +1000,13 @@ func (c *ChampshipMgr) Debug() { log.Debug("Debug player num:%d", i) } -func GetRankCache(Uid int) (int, int, int, int) { - key := fmt.Sprintf("champship_rank_cache_%d", Uid) +func GetRankCache(uid int) (int, int, int, int) { + key := fmt.Sprintf("champship_rank_cache_%d", uid) data, err := db.RedisGetKey(key) if err != nil || data == "" { return 0, 0, 0, 0 } - var PreRank, Rank, PreGroupId, GroupId int - fmt.Sscanf(data, "%d_%d_%d_%d", &PreRank, &Rank, &PreGroupId, &GroupId) - return PreRank, Rank, PreGroupId, GroupId + var preRank, rank, preGroupId, groupId int + fmt.Sscanf(data, "%d_%d_%d_%d", &preRank, &rank, &preGroupId, &groupId) + return preRank, rank, preGroupId, groupId } diff --git a/src/server/game/charge_func.go b/src/server/game/charge_func.go index 7c33e90a..ce6f4ad9 100644 --- a/src/server/game/charge_func.go +++ b/src/server/game/charge_func.go @@ -22,14 +22,14 @@ import ( "time" ) -func (p *Player) Charge(ChargeId int) { - p.ChargeFire(ChargeId) // 充值 - p.EndlessFire(ChargeId) // 无尽礼包 - p.PiggyBankFire(ChargeId) // 猪猪银行 - p.PlayroomFire(ChargeId) // 游乐场 - p.ActivityFire(ChargeId) // 活动礼包 - p.ADPetWorkFire(ChargeId) // 广告宠物工作 - p.PassFire(ChargeId) +func (p *Player) Charge(chargeId int) { + p.ChargeFire(chargeId) // 充值 + p.EndlessFire(chargeId) // 无尽礼包 + p.PiggyBankFire(chargeId) // 猪猪银行 + p.PlayroomFire(chargeId) // 游乐场 + p.ActivityFire(chargeId) // 活动礼包 + p.ADPetWorkFire(chargeId) // 广告宠物工作 + p.PassFire(chargeId) OrderMod := p.PlayMod.getOrderMod() OrderMod.SetIsCharge() // 设置订单模块为充值状态 p.QuestTrigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_PURCHASE, A: []interface{}{}}) @@ -45,9 +45,9 @@ func (p *Player) SendCharge(d *ChargeExtra) { }) } -func (p *Player) ADPetWorkFire(ChargeId int) { +func (p *Player) ADPetWorkFire(chargeId int) { ChargeMod := p.PlayMod.getChargeMod() - items := ChargeMod.FireAdReward(ChargeId) + items := ChargeMod.FireAdReward(chargeId) if items != nil { err := p.HandleItem(items, proto.ITEM_POP_LABEL_ActivityGift.String()) if err != nil { @@ -96,27 +96,27 @@ func (p *Player) ActivityFire(chargeId int) { p.BackDataActivity() } -func (p *Player) PassFire(ChargeId int) { - ActivityInfo := p.GetActivityInfo(activity.ACT_TYPE_PASS) - if ActivityInfo == nil { +func (p *Player) PassFire(chargeId int) { + activityInfo := p.GetActivityInfo(activity.ACT_TYPE_PASS) + if activityInfo == nil { return } - Now := GoUtil.Now() - if Now < ActivityInfo.StartT || Now > ActivityInfo.EndT { + now := GoUtil.Now() + if now < activityInfo.StartT || now > activityInfo.EndT { return } PassMod := p.PlayMod.getPassMod() - var Items []*item.Item - switch ChargeId { - case passCfg.GetLowChargeId(ActivityInfo.Id): - Items = PassMod.GetLowChargeItems() - case passCfg.GetHighChargeId(ActivityInfo.Id): - Items = PassMod.GetHighChargeItems() + var items []*item.Item + switch chargeId { + case passCfg.GetLowChargeId(activityInfo.Id): + items = PassMod.GetLowChargeItems() + case passCfg.GetHighChargeId(activityInfo.Id): + items = PassMod.GetHighChargeItems() } - if len(Items) == 0 { + if len(items) == 0 { return } - err := p.HandleItem(Items, proto.ITEM_POP_LABEL_PassCharge.String()) + err := p.HandleItem(items, proto.ITEM_POP_LABEL_PassCharge.String()) if err != nil { log.Debug("PassFire err : %s", err) return @@ -124,13 +124,13 @@ func (p *Player) PassFire(ChargeId int) { p.PlayMod.save() } -func (p *Player) PlayroomFire(ChargeId int) { +func (p *Player) PlayroomFire(chargeId int) { PlayroomMod := p.PlayMod.getPlayroomMod() - Item := PlayroomMod.Fire(ChargeId) - if Item == nil { + items := PlayroomMod.Fire(chargeId) + if items == nil { return } - err := p.HandleItem(Item, proto.ITEM_POP_LABEL_Playroom.String()) + err := p.HandleItem(items, proto.ITEM_POP_LABEL_Playroom.String()) if err != nil { log.Debug("PlayroomFire err : %s", err) } @@ -140,34 +140,34 @@ func (p *Player) PlayroomFire(ChargeId int) { p.PlayMod.save() } -func (p *Player) PiggyBankFire(ChargeId int) { +func (p *Player) PiggyBankFire(chargeId int) { PiggyBankMod := p.PlayMod.getPiggyBankMod() - Item := PiggyBankMod.Fire(ChargeId) - if Item == nil { + items := PiggyBankMod.Fire(chargeId) + if items == nil { return } - err := p.HandleItem(Item, proto.ITEM_POP_LABEL_PiggyBank.String()) + err := p.HandleItem(items, proto.ITEM_POP_LABEL_PiggyBank.String()) if err != nil { log.Debug("PiggyBankFire err : %s", err) } p.LimitedTimePiggyBankTrigger() p.TeLog("piggy_bank_open", map[string]interface{}{ "piggy_bank_type": piggyBank.PIGGY_BANK_TYPE_CHARGE, - "item_list": Item, - "open_cost": ChargeId, + "item_list": items, + "open_cost": chargeId, }) p.PlayMod.save() } // 处理玩家充值 -func (p *Player) ChargeFire(ChargeId int) { +func (p *Player) ChargeFire(chargeId int) { ChargeMod := p.PlayMod.getChargeMod() - Item := ChargeMod.Fire(ChargeId) - if Item == nil { + items := ChargeMod.Fire(chargeId) + if items == nil { return } - err := p.HandleItem(Item, proto.ITEM_POP_LABEL_Charge.String()) + err := p.HandleItem(items, proto.ITEM_POP_LABEL_Charge.String()) if err != nil { log.Debug("ChargeFire err : %s", err) } @@ -175,20 +175,20 @@ func (p *Player) ChargeFire(ChargeId int) { p.ChargeBackData() } -func (p *Player) ChargeItem(ChargeId int) []*item.Item { +func (p *Player) ChargeItem(chargeId int) []*item.Item { ChargeMod := p.PlayMod.getChargeMod() - Item := ChargeMod.Fire(ChargeId) - return Item + items := ChargeMod.Fire(chargeId) + return items } // 处理无尽礼包充值 -func (p *Player) EndlessFire(ChargeId int) { +func (p *Player) EndlessFire(chargeId int) { EndlessMod := p.PlayMod.getEndlessMod() - Item := EndlessMod.Fire(ChargeId) - if Item == nil { + items := EndlessMod.Fire(chargeId) + if items == nil { return } - err := p.HandleItem(Item, proto.ITEM_POP_LABEL_Endless.String()) + err := p.HandleItem(items, proto.ITEM_POP_LABEL_Endless.String()) if err != nil { log.Debug("EndlessFire err : %s", err) } @@ -198,38 +198,38 @@ func (p *Player) EndlessFire(ChargeId int) { // 创建订单 func (p *Player) CreateOrderSn(req *proto.ReqCreateOrderSn) (string, error) { - Uid := int(p.M_DwUin) - OrderSn := GoUtil.CreateOrderSn(Uid) + uid := int(p.M_DwUin) + orderSn := GoUtil.CreateOrderSn(uid) - Price, Currency := chargeCfg.GetChargeInfo(int(req.ChargeId)) - Extra := &ChargeExtra{ + price, currency := chargeCfg.GetChargeInfo(int(req.ChargeId)) + extra := &ChargeExtra{ Type: int(req.Type), Uid: req.Uid, } - ExtraData, _ := json.Marshal(Extra) - err := db.CreateOrderSn(Uid, int(req.ChargeId), OrderSn, req.PlatForm, req.Channel, Price, Currency, string(ExtraData)) + extraData, _ := json.Marshal(extra) + err := db.CreateOrderSn(uid, int(req.ChargeId), orderSn, req.PlatForm, req.Channel, price, currency, string(extraData)) if err != nil { return "", err } - return OrderSn, nil + return orderSn, nil } -func (p *Player) GoogleVerify(OrderSn, ProduceId, Token string) (*db.SqlChargeOrderStruct, error) { - Order, err := db.GetPlayerChargeData(OrderSn) +func (p *Player) GoogleVerify(orderSn, produceId, token string) (*db.SqlChargeOrderStruct, error) { + order, err := db.GetPlayerChargeData(orderSn) if err != nil { return nil, err } - if Order.PayStatus == MergeConst.ORDER_STATUS_SHIP { + if order.PayStatus == MergeConst.ORDER_STATUS_SHIP { return nil, fmt.Errorf("订单已经发货") } if !conf.Server.GoogleVerify { - Order.PayStatus = MergeConst.ORDER_STATUS_PAY - return Order, nil + order.PayStatus = MergeConst.ORDER_STATUS_PAY + return order, nil } - if Order.PayStatus != MergeConst.ORDER_STATUS_IDLE { + if order.PayStatus != MergeConst.ORDER_STATUS_IDLE { return nil, fmt.Errorf("订单已经支付") } - cmd := exec.Command(conf.Server.AppPath+"/script/verifyOrder", ProduceId, Token) + cmd := exec.Command(conf.Server.AppPath+"/script/verifyOrder", produceId, token) // 获取命令的输出 output, err := cmd.Output() @@ -257,26 +257,26 @@ func (p *Player) GoogleVerify(OrderSn, ProduceId, Token string) (*db.SqlChargeOr if err == nil { return nil, fmt.Errorf("订单已支付发货 param: %v", r) } - // if r.DeveloperPayload != OrderSn { + // if r.DeveloperPayload != orderSn { // return nil, fmt.Errorf("订单号不匹配") // } if r.ConsumptionState != 1 { return nil, fmt.Errorf("订单未消费") } - Order.PayStatus = MergeConst.ORDER_STATUS_PAY - Order.PayChannelOrderId = r.OrderId - Order.PayTime = GoUtil.Now() - return Order, nil + order.PayStatus = MergeConst.ORDER_STATUS_PAY + order.PayChannelOrderId = r.OrderId + order.PayTime = GoUtil.Now() + return order, nil } -func (p *Player) CancelOrder(OrderSn string) error { - Order, err := db.GetPlayerChargeData(OrderSn) +func (p *Player) CancelOrder(orderSn string) error { + order, err := db.GetPlayerChargeData(orderSn) if err != nil { return err } - if Order.PayStatus != MergeConst.ORDER_STATUS_IDLE { + if order.PayStatus != MergeConst.ORDER_STATUS_IDLE { return fmt.Errorf("订单已支付") } - Order.PayStatus = MergeConst.ORDER_STATUS_CANCEL - return db.UpdatePlayerChargeData(Order) + order.PayStatus = MergeConst.ORDER_STATUS_CANCEL + return db.UpdatePlayerChargeData(order) } diff --git a/src/server/game/cluster_mgr.go b/src/server/game/cluster_mgr.go index d3272ac6..9907acf2 100644 --- a/src/server/game/cluster_mgr.go +++ b/src/server/game/cluster_mgr.go @@ -49,10 +49,10 @@ func champshipRankInfoHandler(m *msg.Msg) error { } func champshipMyRankHandler(m *msg.Msg) error { - MyRank := G_GameLogicPtr.ChampshipMgr.getMyRank(m.From) + myRank := G_GameLogicPtr.ChampshipMgr.getMyRank(m.From) m.To = m.From m.From = 0 - m.Extra = MyRank + m.Extra = myRank FriendMgrSend(m) return nil } diff --git a/src/server/game/friend_func.go b/src/server/game/friend_func.go index b85ec513..b9e75557 100644 --- a/src/server/game/friend_func.go +++ b/src/server/game/friend_func.go @@ -11,16 +11,16 @@ import ( func (p *Player) GetVisitorPlayer() int { PlayroomMod := p.PlayMod.getPlayroomMod() - VisitorList := PlayroomMod.GetVisitor() // 到访用户 - TodayVisitedUsers := PlayroomMod.GetTodayVisitedUsers() // 今日已互动用户 + visitorList := PlayroomMod.GetVisitor() // 到访用户 + todayVisitedUsers := PlayroomMod.GetTodayVisitedUsers() // 今日已互动用户 FriendMod := p.PlayMod.getFriendMod() type sortData struct { Uid int Time int64 } - PlayerList := make([]sortData, 0) - PlayerList2 := make([]sortData, 0) - Now := GoUtil.Now() + playerList := make([]sortData, 0) + playerList2 := make([]sortData, 0) + now := GoUtil.Now() /** 排除当日玩家已对其发起过交互的用户 优先选择24小时内曾经与玩家进行过宠物交互的好友 @@ -30,30 +30,30 @@ func (p *Player) GetVisitorPlayer() int { 若不存在符合条件的用户,则选择24小时内登入过游戏且上次登入时间与当前时间最近的好友 若不存在符合条件的用户,则依据以上用户推荐算法,选择一位随机推荐用户,并且在下次触发式订单完成时,不再排除已发起过交互的用户 */ - for k, v := range VisitorList { - if GoUtil.InArray(k, TodayVisitedUsers) { + for k, v := range visitorList { + if GoUtil.InArray(k, todayVisitedUsers) { continue } - if v.Time < Now-86400 { + if v.Time < now-86400 { continue } if FriendMod.CheckFriend(k) { - PlayerList = append(PlayerList, sortData{k, v.Time}) + playerList = append(playerList, sortData{k, v.Time}) } else { - PlayerList2 = append(PlayerList2, sortData{k, v.Time}) + playerList2 = append(playerList2, sortData{k, v.Time}) } } - if len(PlayerList) != 0 { - sort.Slice(PlayerList, func(i, j int) bool { - return PlayerList[i].Time > PlayerList[j].Time + if len(playerList) != 0 { + sort.Slice(playerList, func(i, j int) bool { + return playerList[i].Time > playerList[j].Time }) - return PlayerList[0].Uid + return playerList[0].Uid } - if len(PlayerList2) != 0 { - sort.Slice(PlayerList2, func(i, j int) bool { - return PlayerList2[i].Time > PlayerList2[j].Time + if len(playerList2) != 0 { + sort.Slice(playerList2, func(i, j int) bool { + return playerList2[i].Time > playerList2[j].Time }) - return PlayerList2[0].Uid + return playerList2[0].Uid } // 若不存在符合条件的用户,则选择24小时内登入过游戏且上次登入时间与当前时间最近的好友 var recentFriendUid int @@ -62,14 +62,14 @@ func (p *Player) GetVisitorPlayer() int { if uid == int(p.M_DwUin) { continue } - if GoUtil.InArray(uid, TodayVisitedUsers) { + if GoUtil.InArray(uid, todayVisitedUsers) { continue } ps := G_GameLogicPtr.GetSimplePlayerByUid(uid) if ps == nil { continue } - if Now-ps.Loginout > 86400 { // 24小时内登录过 + if now-ps.Loginout > 86400 { // 24小时内登录过 continue } if ps.Loginout > recentLoginTime { @@ -84,51 +84,51 @@ func (p *Player) GetVisitorPlayer() int { if err != nil { return 0 } - var PlayerList4 []int - for _, Uid := range uids { - if Uid == int(p.M_DwUin) { + var playerList4 []int + for _, uid := range uids { + if uid == int(p.M_DwUin) { continue } - if G_GameLogicPtr.GetSimplePlayerByUid(Uid) == nil { + if G_GameLogicPtr.GetSimplePlayerByUid(uid) == nil { continue } - PlayerList4 = append(PlayerList4, Uid) + playerList4 = append(playerList4, uid) } - L := GoUtil.RandSliceNum(PlayerList4, 1) - if len(L) == 0 { + lastList := GoUtil.RandSliceNum(playerList4, 1) + if len(lastList) == 0 { return 0 } - return L[0] + return lastList[0] } -func GetRecommendPlayer(p *Player, Num int) []int { +func GetRecommendPlayer(p *Player, num int) []int { uids, err := db.GetCommendPlayerFromDb(p.M_DwUin, GoUtil.Now()-259200, 4) if err != nil { log.Debug("GetCommendPlayerFromDb err:%v, uid=%d", err, p.M_DwUin) return nil } - PlayerList1 := make([]int, 0, len(uids)) + playerList1 := make([]int, 0, len(uids)) FriendMod := p.PlayMod.getFriendMod() - for _, Uid := range uids { - if Uid == int(p.M_DwUin) { + for _, uid := range uids { + if uid == int(p.M_DwUin) { continue } - if FriendMod.CheckSendApply(Uid) { + if FriendMod.CheckSendApply(uid) { continue } - if FriendMod.CheckAddBefore(Uid) { + if FriendMod.CheckAddBefore(uid) { continue } - PlayerList1 = append(PlayerList1, Uid) + playerList1 = append(playerList1, uid) } // 按照时间门槛筛选用户 filterByTime := func(excludeSeconds int64) []int { now := GoUtil.Now() - result := make([]int, 0, len(PlayerList1)) - for _, Uid := range PlayerList1 { - recommendTime := FriendMod.GetRecommendTime(Uid) + result := make([]int, 0, len(playerList1)) + for _, uid := range playerList1 { + recommendTime := FriendMod.GetRecommendTime(uid) if recommendTime == 0 || recommendTime <= now-excludeSeconds { - result = append(result, Uid) + result = append(result, uid) } } return result @@ -145,16 +145,16 @@ func GetRecommendPlayer(p *Player, Num int) []int { } if len(candidateList) == 0 { - candidateList = append(candidateList, PlayerList1...) + candidateList = append(candidateList, playerList1...) } if len(candidateList) == 0 { candidateList = make([]int, 0, len(uids)) - for _, Uid := range uids { - if Uid == int(p.M_DwUin) { + for _, uid := range uids { + if uid == int(p.M_DwUin) { continue } - candidateList = append(candidateList, Uid) + candidateList = append(candidateList, uid) } } levelFilterList := make([]*PlayerSimpleData, 0, len(candidateList)) @@ -291,9 +291,9 @@ func GetRecommendPlayer(p *Player, Num int) []int { return res } if diffLimit == 10 && len(chargeFilterList) >= 5 { - MaxCharge := p.GetChargeMod().GetMaxCharge() - if MaxCharge > 0 { - endFilterList = chargeFilterFunc(chargeFilterList, MaxCharge) + maxCharge := p.GetChargeMod().GetMaxCharge() + if maxCharge > 0 { + endFilterList = chargeFilterFunc(chargeFilterList, maxCharge) } else { if p.GetChargeMod().GetAdWatch() > 5 { endFilterList = notChargeWatchAdFilterFunc(chargeFilterList) @@ -303,21 +303,21 @@ func GetRecommendPlayer(p *Player, Num int) []int { } } - recommendList := GoUtil.RandSliceNum(endFilterList, Num) - for _, Uid := range recommendList { - FriendMod.AddRecommend(Uid) + recommendList := GoUtil.RandSliceNum(endFilterList, num) + for _, uid := range recommendList { + FriendMod.AddRecommend(uid) } return recommendList } -func GetUidByFaceBook(Fb string) (int, error) { +func GetUidByFaceBook(fb string) (int, error) { sqlStr := "SELECT dwUin FROM t_player_baseinfo WHERE FaceBookId = ?" type Result struct { Uid int `db:"dwUin"` } R := Result{} - err := db.SqlDb.Get(&R, sqlStr, Fb) - log.Debug("Fb :%s;Uid :%d", Fb, R.Uid) + err := db.SqlDb.Get(&R, sqlStr, fb) + log.Debug("Fb :%s;Uid :%d", fb, R.Uid) return R.Uid, err } diff --git a/src/server/game/limited_time_trigger.go b/src/server/game/limited_time_trigger.go index 1d8f1eb5..43b7e824 100644 --- a/src/server/game/limited_time_trigger.go +++ b/src/server/game/limited_time_trigger.go @@ -16,20 +16,20 @@ import ( ) // 限时事件触发器 -func (p *Player) LimitedTimeEventTrigger(AddEventId int) { - Lv := p.GetPlayerBaseMod().GetLevel() - EndTime, TimeoutEvent, AddEvent := p.PlayMod.getLimitedTimeEventMod().Trigger(Lv) +func (p *Player) LimitedTimeEventTrigger(addEventId int) { + lv := p.GetPlayerBaseMod().GetLevel() + endTime, timeoutEvent, addEvent := p.PlayMod.getLimitedTimeEventMod().Trigger(lv) remainingTime := GoUtil.NextHourRemain() - if EndTime <= 0 { - EndTime = int(remainingTime) + if endTime <= 0 { + endTime = int(remainingTime) } else { - EndTime = min(EndTime, int(remainingTime)) + endTime = min(endTime, int(remainingTime)) } - if AddEventId != 0 { - AddEvent = append(AddEvent, AddEventId) + if addEventId != 0 { + addEvent = append(addEvent, addEventId) } - if EndTime > 0 { - p.CallEvent(time.Duration(EndTime)*time.Second, func() { + if endTime > 0 { + p.CallEvent(time.Duration(endTime)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() p.LimitedTimeEventTrigger(0) @@ -37,7 +37,7 @@ func (p *Player) LimitedTimeEventTrigger(AddEventId int) { }, "LimitedTimeEvent") } - for _, v := range TimeoutEvent { // 事件到期处理 + for _, v := range timeoutEvent { // 事件到期处理 p.PushClientRes(&msg.LimitEventNotify{ Id: int32(v), Type: limitedTimeEvent.EVENT_NOTIFY_TYPE_DEL, @@ -45,15 +45,15 @@ func (p *Player) LimitedTimeEventTrigger(AddEventId int) { switch v { case limitedTimeEvent.EVENT_TYPE_HIGH_ROLLER: BaseMod := p.PlayMod.getBaseMod() - EnergyMul := BaseMod.GetEnergyMul() + energyMul := BaseMod.GetEnergyMul() OrderMod := p.PlayMod.getOrderMod() - Emit := p.PlayMod.getChessMod().GetOrderEmit() - ChessList := p.PlayMod.getChessMod().GetUnlockChessList() - OrderMod.ChangeEnergyMul(Lv, Emit, EnergyMul, ChessList) + emit := p.PlayMod.getChessMod().GetOrderEmit() + chessList := p.PlayMod.getChessMod().GetUnlockChessList() + OrderMod.ChangeEnergyMul(lv, emit, energyMul, chessList) p.PushClientRes(OrderMod.BackData()) p.TeLog("mutil_merge_change", map[string]interface{}{ - "change_from": math.Pow(2, float64(EnergyMul)), - "change_to": math.Pow(2, float64(EnergyMul)), + "change_from": math.Pow(2, float64(energyMul)), + "change_to": math.Pow(2, float64(energyMul)), "is_auto": true, }) p.PushClientRes(p.PlayMod.getBaseMod().BackData()) @@ -68,13 +68,13 @@ func (p *Player) LimitedTimeEventTrigger(AddEventId int) { } } - for _, v := range AddEvent { // 增加事件处理 + for _, v := range addEvent { // 增加事件处理 switch v { case limitedTimeEvent.EVENT_TYPE_SUPER_ORDER: - Emit := p.PlayMod.getChessMod().GetOrderEmit() - Lv := p.GetPlayerBaseMod().GetLevel() - EnergyMul := p.PlayMod.getBaseMod().GetEnergyMul() - p.PlayMod.getOrderMod().CreateSuperOrder(Lv, Emit, EnergyMul) + emit := p.PlayMod.getChessMod().GetOrderEmit() + lv := p.GetPlayerBaseMod().GetLevel() + energyMul := p.PlayMod.getBaseMod().GetEnergyMul() + p.PlayMod.getOrderMod().CreateSuperOrder(lv, emit, energyMul) p.PushClientRes(p.PlayMod.getOrderMod().BackData()) case limitedTimeEvent.EVENT_TYPE_CARD_FESTIVAL: p.PlayMod.getCardMod().CreateCardFestival() @@ -95,9 +95,9 @@ func (p *Player) LimitedTimeEventTrigger(AddEventId int) { // 限时猪猪存钱罐触发器 func (p *Player) LimitedTimePiggyBankTrigger() { - Remain := p.PlayMod.getPiggyBankMod().TimeOut() - if Remain > 0 { - p.CallEvent(time.Duration(Remain)*time.Second, func() { + remain := p.PlayMod.getPiggyBankMod().TimeOut() + if remain > 0 { + p.CallEvent(time.Duration(remain)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() p.LimitedTimePiggyBankTrigger() @@ -111,10 +111,10 @@ func (p *Player) LimitedTimePiggyBankTrigger() { func (p *Player) LimitedTimeCardTrigger() { FriendMod := p.PlayMod.getFriendMod() CardMod := p.PlayMod.getCardMod() - Now := GoUtil.Now() - var EndTime int64 + now := GoUtil.Now() + var endTime int64 for k, v := range FriendMod.Card { - if v.EndTime > 0 && v.EndTime <= Now { + if v.EndTime > 0 && v.EndTime <= now { switch v.Status { case card.STATUS_CARD_EX_1: delete(FriendMod.Card, k) @@ -137,12 +137,12 @@ func (p *Player) LimitedTimeCardTrigger() { } continue } - if v.EndTime > 0 && (EndTime == 0 || v.EndTime < EndTime) { - EndTime = v.EndTime + if v.EndTime > 0 && (endTime == 0 || v.EndTime < endTime) { + endTime = v.EndTime } } - if EndTime > 0 { - p.CallEvent(time.Duration(EndTime-Now)*time.Second, func() { + if endTime > 0 { + p.CallEvent(time.Duration(endTime-now)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() p.LimitedTimeCardTrigger() @@ -159,58 +159,58 @@ func (p *Player) LimitedTimePlayroomTrigger() { } } -func (p *Player) LimitedTimePlayroomTrigger_(Id int) { +func (p *Player) LimitedTimePlayroomTrigger_(id int) { PlayroomMod := p.PlayMod.getPlayroomMod() - Physiology := PlayroomMod.GetPhysiology(Id) - if Physiology == nil { + physiology := PlayroomMod.GetPhysiology(id) + if physiology == nil { return } - NewTime, NextSecond, Num := PlayroomTrigger(Physiology.Id, Physiology.Time, Physiology.Num) - Physiology.Time = NewTime - DiffValue := Physiology.Num - Num - MType, MEffect := playroomCfg.GetMoodEffect(Physiology.Id) - CleanMood := PlayroomMod.GetMoodInfo(playroom.MOOD_TYPE_CLEAN) - PlayroomMod.AddMood(MType, -MEffect*DiffValue) + newTime, nextSecond, num := PlayroomTrigger(physiology.Id, physiology.Time, physiology.Num) + physiology.Time = newTime + diffValue := physiology.Num - num + mType, mEffect := playroomCfg.GetMoodEffect(physiology.Id) + cleanMood := PlayroomMod.GetMoodInfo(playroom.MOOD_TYPE_CLEAN) + PlayroomMod.AddMood(mType, -mEffect*diffValue) // 上厕所数值为0 且清洁度大于50时,清洁度降至50 - if CleanMood != nil && Id == playroom.PHYSIOLOGY_TYPE_TOLIET && Num == 0 && CleanMood.Num > 50 { - CleanMood.Num = 50 + if cleanMood != nil && id == playroom.PHYSIOLOGY_TYPE_TOLIET && num == 0 && cleanMood.Num > 50 { + cleanMood.Num = 50 } - Physiology.Num = Num - if PlayroomMod.GetMoodInfo(MType).Num == 0 { // 心情值为0时,重置生理状态 - PlayroomMod.ResetPhysiology(MType) - NewTime = 0 + physiology.Num = num + if PlayroomMod.GetMoodInfo(mType).Num == 0 { // 心情值为0时,重置生理状态 + PlayroomMod.ResetPhysiology(mType) + newTime = 0 } p.PlayMod.save() ResNotifyMood := PlayroomMod.NotifyMood() p.PushClientRes(ResNotifyMood) - if NextSecond > 0 { - p.CallEvent(time.Duration(NextSecond)*time.Second, func() { + if nextSecond > 0 { + p.CallEvent(time.Duration(nextSecond)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() - p.LimitedTimePlayroomTrigger_(Id) + p.LimitedTimePlayroomTrigger_(id) p.SendClientRes() - }, fmt.Sprintf("Playroom_%d", Id)) + }, fmt.Sprintf("Playroom_%d", id)) } } -func PlayroomTrigger(Id int, Time int64, Num int) (int64, int64, int) { - if Num == 0 { +func PlayroomTrigger(id int, time int64, num int) (int64, int64, int) { + if num == 0 { return 0, 0, 0 } - Now := GoUtil.Now() - NeedDuration := playroomCfg.GetPhysiologyDuration(Id, Num) - if Time+int64(NeedDuration) > Now { - return Time, int64(NeedDuration), Num + now := GoUtil.Now() + needDuration := playroomCfg.GetPhysiologyDuration(id, num) + if time+int64(needDuration) > now { + return time, int64(needDuration), num } n := 0 for n <= 100 { - Num-- - NeedDuration := playroomCfg.GetPhysiologyDuration(Id, Num) - Time += int64(NeedDuration) - if Time >= Now { - return Now, int64(NeedDuration), Num + num-- + needDuration := playroomCfg.GetPhysiologyDuration(id, num) + time += int64(needDuration) + if time >= now { + return now, int64(needDuration), num } - if Num == 0 { + if num == 0 { return 0, 0, 0 } n++ @@ -220,18 +220,18 @@ func PlayroomTrigger(Id int, Time int64, Num int) (int64, int64, int) { func LimitedTimePlayroomWorkTrigger(p *Player) { PlayroomMod := p.PlayMod.getPlayroomMod() - EndTime := PlayroomMod.Endtime - Now := GoUtil.Now() - if EndTime > 0 && EndTime <= Now { + endTime := PlayroomMod.Endtime + now := GoUtil.Now() + if endTime > 0 && endTime <= now { PlayroomMod.ResetWork() p.PlayMod.save() p.PlayroomBackData() p.SendClientRes() return } - NextSecond := EndTime - Now - if NextSecond > 0 { - p.CallEvent(time.Duration(NextSecond)*time.Second, func() { + nextSecond := endTime - now + if nextSecond > 0 { + p.CallEvent(time.Duration(nextSecond)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() LimitedTimePlayroomWorkTrigger(p) @@ -245,50 +245,50 @@ func LimitedTimeEnergyAdd(p *Player) { PlayerBaseMod := p.GetPlayerBaseMod() BaseMod := p.PlayMod.getBaseMod() delta := curtime - BaseMod.GetRecoverTime() - Recover := userCfg.GetRecover(BaseMod.GetLevel()) - if Recover <= 0 { + recover := userCfg.GetRecover(BaseMod.GetLevel()) + if recover <= 0 { return } - Addsta := int(delta) / Recover - if Addsta <= 0 { + addsta := int(delta) / recover + if addsta <= 0 { return } - Energy := BaseMod.GetEnergy() - MaxEnergy := PlayerBaseMod.GetMaxEnergy() - if MaxEnergy > Energy { - E := MaxEnergy - Energy - Energy += Addsta - if Energy > MaxEnergy { - Energy = MaxEnergy + energy := BaseMod.GetEnergy() + maxEnergy := PlayerBaseMod.GetMaxEnergy() + if maxEnergy > energy { + e := maxEnergy - energy + energy += addsta + if energy > maxEnergy { + energy = maxEnergy } p.TeLog("asset_change", map[string]interface{}{ "item_id": item.ITEM_ENERGY_ID, "change_type": "gain", - "change_num": min(Addsta, E), - "change_after": Energy, + "change_num": min(addsta, e), + "change_after": energy, "change_reason": "recover_server", }) - p.CallEvent(time.Duration(Recover)*time.Second, func() { + p.CallEvent(time.Duration(recover)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() LimitedTimeEnergyAdd(p) }, "AddEnergy") } - BaseMod.SetEnergy(Energy) + BaseMod.SetEnergy(energy) BaseMod.SetRecoverTime(curtime) p.SendErrClienRes(PlayerBaseMod.BackAsset()) } func GuideTaskTrigger(p *Player) { GuideTaskMod := p.PlayMod.getGuideTaskMod() - UnlockTime := GuideTaskMod.UnlockTime - if UnlockTime == 0 { + unlockTime := GuideTaskMod.UnlockTime + if unlockTime == 0 { return } - Now := GoUtil.Now() - NextSecond := 86400 - (Now-UnlockTime)%86400 - if NextSecond > 0 { - p.CallEvent(time.Duration(NextSecond)*time.Second, func() { + now := GoUtil.Now() + nextSecond := 86400 - (now-unlockTime)%86400 + if nextSecond > 0 { + p.CallEvent(time.Duration(nextSecond)*time.Second, func() { p.lock.Lock() defer p.lock.Unlock() GuideTaskMod.Login() diff --git a/src/server/game/mail_mgr.go b/src/server/game/mail_mgr.go index 65feb1ef..40ea2957 100644 --- a/src/server/game/mail_mgr.go +++ b/src/server/game/mail_mgr.go @@ -57,12 +57,12 @@ func (m *MailMgr) Init() { } func (m *MailMgr) AddMail(msg *msg.Msg) (interface{}, error) { - ServerMail, ok := msg.Extra.(*ServerMail) + serverMail, ok := msg.Extra.(*ServerMail) if !ok { log.Error("AddMail error: invalid mail data") return nil, nil } - m.list[ServerMail.Id] = ServerMail + m.list[serverMail.Id] = serverMail return nil, nil } @@ -76,10 +76,10 @@ func (r *MailMgr) LoadMail(msg *msg.Msg) (interface{}, error) { return nil, err } for _, v := range data { - Uids := make([]int, 0) - UidArr := strings.Split(v.To_uids, ",") - for _, v := range UidArr { - Uids = append(Uids, GoUtil.Int(v)) + uids := make([]int, 0) + uidArr := strings.Split(v.To_uids, ",") + for _, v := range uidArr { + uids = append(uids, GoUtil.Int(v)) } var items []interface{} json.Unmarshal([]byte(v.Items), &items) @@ -99,7 +99,7 @@ func (r *MailMgr) LoadMail(msg *msg.Msg) (interface{}, error) { End_time: v.End_time, Mail_type: v.Mail_type, Send_type: v.Send_type, - To_uids: Uids, + To_uids: uids, } } return nil, nil @@ -107,13 +107,13 @@ func (r *MailMgr) LoadMail(msg *msg.Msg) (interface{}, error) { func (r *MailMgr) Sync(Uid int, Register int64) []ServerMail { // 同步邮件 - Now := GoUtil.Now() + now := GoUtil.Now() list := make([]ServerMail, 0) for _, v := range r.list { - if v.Start_time > 0 && v.Start_time > Now { + if v.Start_time > 0 && v.Start_time > now { continue } - if v.End_time > 0 && v.End_time < Now { + if v.End_time > 0 && v.End_time < now { continue } if v.Register_time > 0 && v.Register_time < Register { diff --git a/src/server/game/message_handler.go b/src/server/game/message_handler.go index 3ef57bc0..8d37373b 100644 --- a/src/server/game/message_handler.go +++ b/src/server/game/message_handler.go @@ -1210,14 +1210,14 @@ func (p *Player) GetPlayroomGameReward(gType, selectId int) []*item.Item { // 获取宠物小偷奖励 func (p *Player) GetPetThiefReward(target int) error { - PlayerData := G_GameLogicPtr.GetSimplePlayerByUid(target) - if PlayerData == nil { + playerData := G_GameLogicPtr.GetSimplePlayerByUid(target) + if playerData == nil { return fmt.Errorf("target %d not exist", target) } cardStar := limitedTimeEventCfg.GetThiefProb() starMap := make(map[int][]int) var cardList []int - for _, v := range PlayerData.CardInfo { + for _, v := range playerData.CardInfo { star := cardCfg.GetStarById(v) starMap[star] = append(starMap[star], v) } diff --git a/src/server/game/mod/activity/activity_gift.go b/src/server/game/mod/activity/activity_gift.go index 23875261..2be986e0 100644 --- a/src/server/game/mod/activity/activity_gift.go +++ b/src/server/game/mod/activity/activity_gift.go @@ -7,16 +7,16 @@ import ( ) // 活动礼包 -func (a *Activity) Fire(Id int, atype int) ([]*item.Item, error) { - // AId := activityCfg.GetActivityGiftId(Id) +func (a *Activity) Fire(id int, atype int) ([]*item.Item, error) { + // AId := activityCfg.GetActivityGiftId(id) // Var := a.getGiftVar(AId) // if Var.Buy { - // return nil, fmt.Errorf("Id%d已购买", Id) + // return nil, fmt.Errorf("Id%d已购买", id) // } // Var.Buy = true // Var.Time = GoUtil.Now() if atype == ACT_TYPE_ADD_GIFT { a.AddEnd = GoUtil.Now() + 7*86400 } - return activityCfg.GetActivityGiftItems(Id), nil + return activityCfg.GetActivityGiftItems(id), nil } diff --git a/src/server/game/mod/avatar/Avatar.go b/src/server/game/mod/avatar/Avatar.go index 7c4cf423..da2f3ca4 100644 --- a/src/server/game/mod/avatar/Avatar.go +++ b/src/server/game/mod/avatar/Avatar.go @@ -17,10 +17,10 @@ type Avatar struct { AddTime int64 } -func (f *AvatarMod) Login(RegisterTime int64) { +func (f *AvatarMod) Login(registerTime int64) { for k, v := range f.List { if v.AddTime == 0 { - v.AddTime = RegisterTime + v.AddTime = registerTime f.List[k] = v } } @@ -28,9 +28,9 @@ func (f *AvatarMod) Login(RegisterTime int64) { func (a *AvatarMod) InitData() { now := GoUtil.Now() if a.List == nil { - InitId := avatarCfg.GetInitList() - a.List = make(map[int]*Avatar, len(InitId)) - for _, v := range InitId { + initId := avatarCfg.GetInitList() + a.List = make(map[int]*Avatar, len(initId)) + for _, v := range initId { a.List[v] = &Avatar{ AddTime: now, } @@ -42,30 +42,30 @@ func (a *AvatarMod) GetAvatarNum() int { return len(a.List) } -func (a *AvatarMod) SetAvatar(Id int) error { - if _, ok := a.List[Id]; !ok { - return fmt.Errorf("avatar id:%d not exist", Id) +func (a *AvatarMod) SetAvatar(id int) error { + if _, ok := a.List[id]; !ok { + return fmt.Errorf("avatar id:%d not exist", id) } - a.SetId = Id + a.SetId = id return nil } -func (a *AvatarMod) Unlock(Id, Time int) error { - v, ok := a.List[Id] +func (a *AvatarMod) Unlock(id, duration int) error { + v, ok := a.List[id] if ok { if v.Ts == 0 { return nil } - v.Ts += int64(Time) + v.Ts += int64(duration) return nil } now := GoUtil.Now() ts := int64(0) - if Time > 0 { - ts = now + int64(Time) + if duration > 0 { + ts = now + int64(duration) } - a.List[Id] = &Avatar{ + a.List[id] = &Avatar{ Ts: ts, AddTime: now, } diff --git a/src/server/game/mod/base/Base.go b/src/server/game/mod/base/Base.go index 0a52df8a..85fbf4b0 100644 --- a/src/server/game/mod/base/Base.go +++ b/src/server/game/mod/base/Base.go @@ -55,15 +55,15 @@ func (b *Base) InitData(Uid int, Ip string) { b.CountryCode = code } if b.AddCode == "" && Ip != "" { - Code, _ := GoUtil.GetCountryByIP(Ip) - CountryCode := conf.Server.CountryCode - if CountryCode == "" { - CountryCode = "000" + code, _ := GoUtil.GetCountryByIP(Ip) + countryCode := conf.Server.CountryCode + if countryCode == "" { + countryCode = "000" } - if Code != "" && len(Code) == 3 { - CountryCode = Code + if code != "" && len(code) == 3 { + countryCode = code } - b.AddCode = fmt.Sprintf("MMM-%s-%s", CountryCode, GoUtil.UniqueStringFromInt(Uid)) + b.AddCode = fmt.Sprintf("MMM-%s-%s", countryCode, GoUtil.UniqueStringFromInt(Uid)) } if b.NickName == "" { b.NickName = fmt.Sprintf("Player_%d", Uid) @@ -71,15 +71,15 @@ func (b *Base) InitData(Uid int, Ip string) { } func (b *Base) Login() int64 { - Now := GoUtil.Now() - if !GoUtil.IsSameDay(b.LoginTime, Now) { + now := GoUtil.Now() + if !GoUtil.IsSameDay(b.LoginTime, now) { b.LoginDay += 1 } logoutDuration := int64(0) if b.LogoutTime != 0 { - logoutDuration = Now - b.LogoutTime + logoutDuration = now - b.LogoutTime } - b.LoginTime = Now + b.LoginTime = now b.LogoutTime = 0 return logoutDuration } @@ -231,16 +231,16 @@ func (b *Base) SetLang(lang msg.LANG_TYPE) { b.Lang = lang } -func (b *Base) BuyEnergy(Energy int) ([]*item.Item, int, int) { +func (b *Base) BuyEnergy(energy int) ([]*item.Item, int, int) { b.EnergyBuy += 1 - Mul := baseCfg.GetEnergyByMul(b.EnergyBuy) - Diamond := int(float64(Energy) / Mul) - return []*item.Item{{Id: item.ITEM_DIAMOND_ID, Num: -Diamond}, {Id: item.ITEM_ENERGY_ID, Num: Energy}}, Energy, Diamond + mul := baseCfg.GetEnergyByMul(b.EnergyBuy) + diamond := int(float64(energy) / mul) + return []*item.Item{{Id: item.ITEM_DIAMOND_ID, Num: -diamond}, {Id: item.ITEM_ENERGY_ID, Num: energy}}, energy, diamond } // HighRoller 结束时重置能量倍数 -func (b *Base) ResetEnergyMul(Mul int) { - b.EnergyMul = Mul +func (b *Base) ResetEnergyMul(mul int) { + b.EnergyMul = mul } func (b *Base) BackData() *msg.BaseInfo { @@ -259,10 +259,10 @@ func (b *Base) ZeroUpdate() { b.TodayCumulative = 0 } -func (b *Base) Outline(Time int) { +func (b *Base) Outline(duration int) { b.LogoutTime = GoUtil.Now() - b.TodayCumulative += Time - b.Cumulative += Time + b.TodayCumulative += duration + b.Cumulative += duration } func (b *Base) GetEnergyByAD() ([]*item.Item, error) { @@ -273,24 +273,7 @@ func (b *Base) GetEnergyByAD() ([]*item.Item, error) { return baseCfg.GetEnergyByADNum(), nil } -func (b *Base) FormatEnergyMul(Energy int) { - for { - if b.EnergyMul <= 0 { - b.EnergyMul = 0 - return - } - EnergyLimit := baseCfg.GetLimitEnergyMul(b.Level) - if EnergyLimit == 0 { - return - } - if Energy > EnergyLimit { - return - } - b.EnergyMul-- - } -} - -func (b *Base) SetId2Verify(UserName, Num string) { - b.IdCardName = UserName - b.IdCardNum = Num +func (b *Base) SetId2Verify(userName, num string) { + b.IdCardName = userName + b.IdCardNum = num } diff --git a/src/server/game/mod/card/Card.go b/src/server/game/mod/card/Card.go index a76eb43b..dbbafdeb 100644 --- a/src/server/game/mod/card/Card.go +++ b/src/server/game/mod/card/Card.go @@ -118,10 +118,10 @@ func (c *CardMod) InitData() { 卡牌系统-登录:赛季结束则重置 */ func (c *CardMod) Login(ServerOpenTime int64) []*item.Item { - Now := GoUtil.Now() - Duration := cardCfg.GetCardDuration() - HandbookItemNum := 0 - if c.EndTime < Now { + now := GoUtil.Now() + duration := cardCfg.GetCardDuration() + handbookItemNum := 0 + if c.EndTime < now { c.CardList = make(map[int]int) c.ExchangeStar = 0 c.CollectReward = make(map[int]struct{}) @@ -132,57 +132,57 @@ func (c *CardMod) Login(ServerOpenTime int64) []*item.Item { if v == HANDBOOK_STATUS_GET { continue } - Round := cardCfg.GetRoundById(k) - if Round < c.Round { + round := cardCfg.GetRoundById(k) + if round < c.Round { continue } - HandbookItemNum += cardCfg.GetStarById(k) + handbookItemNum += cardCfg.GetStarById(k) } c.Handbook = make(map[int]int) } if c.EndTime == 0 { - c.EndTime = ((Now-ServerOpenTime)/Duration+1)*Duration + ServerOpenTime + c.EndTime = ((now-ServerOpenTime)/duration+1)*duration + ServerOpenTime } - return []*item.Item{{Id: item.ITEM_ENERGY_ID, Num: HandbookItemNum}} + return []*item.Item{{Id: item.ITEM_ENERGY_ID, Num: handbookItemNum}} } // 零点更新 -func (c *CardMod) ZeroUpdate(ServerOpenTime int64) []*item.Item { +func (c *CardMod) ZeroUpdate(serverOpenTime int64) []*item.Item { c.ReqTimes = cardCfg.GetReqTimes() c.ExTimes = cardCfg.GetExTimes() c.GoldTimes = 2 - return c.Login(ServerOpenTime) + return c.Login(serverOpenTime) } // 增加卡牌 -func (c *CardMod) AddCard(Id int) { - _, ok := c.CardList[Id] +func (c *CardMod) AddCard(id int) { + _, ok := c.CardList[id] if ok { - star := cardCfg.GetStarById(Id) + star := cardCfg.GetStarById(id) c.ExchangeStar += star c.Cache.ExStar += star - c.CardList[Id]++ + c.CardList[id]++ } else { - c.CardList[Id] = 1 + c.CardList[id] = 1 } - _, ok = c.Handbook[Id] + _, ok = c.Handbook[id] if !ok { - c.Handbook[Id] = HANDBOOK_STATUS_IDLE - c.Cache.Handbook[Id] = 1 + c.Handbook[id] = HANDBOOK_STATUS_IDLE + c.Cache.Handbook[id] = 1 } - c.Cache.Card[Id]++ + c.Cache.Card[id]++ } // 开启卡包 -func (c *CardMod) OpenCardPack(Star int) ([]int, error) { +func (c *CardMod) OpenCardPack(star int) ([]int, error) { cardId := 0 newCard := make([]int, 0) - cnt := cardCfg.GetPackRewardCnt(Star) + cnt := cardCfg.GetPackRewardCnt(star) if cnt == 0 { - return newCard, fmt.Errorf("open star %d card pack cfg err cnt == 0", Star) + return newCard, fmt.Errorf("open star %d card pack cfg err cnt == 0", star) } - mustHaveStar := cardCfg.GetPackMustHave(Star) + mustHaveStar := cardCfg.GetPackMustHave(star) if mustHaveStar != 0 { cardId = randCard(c.Round, mustHaveStar, 0, newCard) if cardId == 0 { @@ -197,7 +197,7 @@ func (c *CardMod) OpenCardPack(Star int) ([]int, error) { Extra := max(1, int(total/2)) cnt += Extra } - randList := cardCfg.GetRandListByStar(Star) + randList := cardCfg.GetRandListByStar(star) for i := 0; i < cnt; i++ { CardStar := GoUtil.RandMap(randList) switch CardStar { @@ -222,10 +222,10 @@ func (c *CardMod) OpenCardPack(Star int) ([]int, error) { // cleanExpired 清理过期的请求和交换记录,返回有效 uid 列表 func (c *CardMod) cleanExpired() (reqUid, exUid []int64) { - Now := GoUtil.Now() + now := GoUtil.Now() reqUid = make([]int64, 0, len(c.ReqFriend)) for k, v := range c.ReqFriend { - if v.EndTime < Now { + if v.EndTime < now { delete(c.ReqFriend, k) continue } @@ -233,7 +233,7 @@ func (c *CardMod) cleanExpired() (reqUid, exUid []int64) { } exUid = make([]int64, 0, len(c.ExCard)) for k, v := range c.ExCard { - if v.EndTime < Now { + if v.EndTime < now { delete(c.ExCard, k) continue } @@ -251,7 +251,7 @@ func (c *CardMod) BackData() *msg.ResCardInfo { } cardList = append(cardList, &msg.Card{Id: int32(k), Count: int32(v)}) } - ReqUid, ExUid := c.cleanExpired() + reqUid, exUid := c.cleanExpired() if c.EndTime < GoUtil.Now() { log.Debug("CardMod BackData EndTime < Now, reset card data") @@ -265,8 +265,8 @@ func (c *CardMod) BackData() *msg.ResCardInfo { ExTimes: int32(c.ExTimes), ReqTimes: int32(c.ReqTimes), AllCard: GoUtil.MapIntToInt32(c.AllCard), - ReqUid: ReqUid, - ExUid: ExUid, + ReqUid: reqUid, + ExUid: exUid, Round: int32(c.Round), Handbook: GoUtil.MapIntToInt32(c.Handbook), SeasonFirst: c.SeasonFirst, @@ -274,35 +274,35 @@ func (c *CardMod) BackData() *msg.ResCardInfo { } // 领取卡牌收集奖励 -func (c *CardMod) GetCollectReward(Id int) ([]*item.Item, int, error) { - _, ok := c.CollectReward[Id] +func (c *CardMod) GetCollectReward(id int) ([]*item.Item, int, error) { + _, ok := c.CollectReward[id] if ok { - return nil, 0, fmt.Errorf("CollectReward id:%d already collect", Id) + return nil, 0, fmt.Errorf("CollectReward id:%d already collect", id) } - cardList := cardCfg.GetCardListByColor(Id) + cardList := cardCfg.GetCardListByColor(id) for _, v := range cardList { count, ok := c.CardList[v] if !ok || count <= 0 { - return nil, 0, fmt.Errorf("card not collect all ,id : %d", Id) + return nil, 0, fmt.Errorf("card not collect all ,id : %d", id) } } - c.CollectReward[Id] = struct{}{} - Item, Chess := cardCfg.GetCollectReward(Id) + c.CollectReward[id] = struct{}{} + Item, Chess := cardCfg.GetCollectReward(id) return Item, Chess, nil } // 兑换星星奖励 -func (c *CardMod) ExStarReward(Id int) ([]*item.Item, int, error) { - if c.ExchangeStar < Id { - return nil, 0, fmt.Errorf("ExStarReward star not enough, Id: %d", Id) +func (c *CardMod) ExStarReward(id int) ([]*item.Item, int, error) { + if c.ExchangeStar < id { + return nil, 0, fmt.Errorf("ExStarReward star not enough, Id: %d", id) } - CostStar, itemList := cardCfg.GetExchangeCfg(Id) - if c.ExchangeStar < CostStar { - return nil, 0, fmt.Errorf("ExStarReward star not enough, Id: %d", Id) + costStar, items := cardCfg.GetExchangeCfg(id) + if c.ExchangeStar < costStar { + return nil, 0, fmt.Errorf("ExStarReward star not enough, Id: %d", id) } - c.ExchangeStar -= CostStar - c.Cache.ExStar -= CostStar - return itemList, CostStar, nil + c.ExchangeStar -= costStar + c.Cache.ExStar -= costStar + return items, costStar, nil } // 领取全收集奖励 @@ -310,8 +310,8 @@ func (c *CardMod) AllCollectReward() ([]*item.Item, []*item.Item, error) { if c.AllCollect == 1 { return nil, nil, fmt.Errorf("AllCollectReward already collect") } - AllCardId := cardCfg.GetAllCardId(c.Round) - for _, v := range AllCardId { + allCardId := cardCfg.GetAllCardId(c.Round) + for _, v := range allCardId { count, ok := c.CardList[v] if !ok || count <= 0 { return nil, nil, fmt.Errorf("card not fully collect for all collect reward, card id : %d", v) @@ -319,26 +319,26 @@ func (c *CardMod) AllCollectReward() ([]*item.Item, []*item.Item, error) { } c.AllCollect = 0 c.CollectReward = make(map[int]struct{}) - ExStar := 0 + exStar := 0 for k, v := range c.CardList { star := cardCfg.GetStarById(k) - ExStar += star * (v - 1) + exStar += star * (v - 1) c.CardList[k] = v - 1 } c.CardList = make(map[int]int) - c.ExchangeStar += ExStar - c.Cache.ExStar += ExStar - Item := cardCfg.GetAllCollectReward() - HandbookItemNum := 0 + c.ExchangeStar += exStar + c.Cache.ExStar += exStar + items := cardCfg.GetAllCollectReward() + handbookItemNum := 0 for k, v := range c.Handbook { if v == HANDBOOK_STATUS_GET { continue } - HandbookItemNum += cardCfg.GetStarById(k) + handbookItemNum += cardCfg.GetStarById(k) } c.Round++ c.Handbook = make(map[int]int) - return Item, []*item.Item{{Id: item.ITEM_ENERGY_ID, Num: HandbookItemNum}}, nil + return items, []*item.Item{{Id: item.ITEM_ENERGY_ID, Num: handbookItemNum}}, nil } func (c *CardMod) ResetCardFestival() { @@ -353,8 +353,8 @@ func (c *CardMod) CreateCardFestival() { c.CardLimit = true } -func (c *CardMod) GetCardNum(Card int) int { - return c.CardList[Card] +func (c *CardMod) GetCardNum(card int) int { + return c.CardList[card] } func (c *CardMod) SubCard(id int) error { @@ -376,19 +376,19 @@ func (c *CardMod) RequestCard() error { } // 增加请求卡牌记录 -func (c *CardMod) AddRequestCard(CardInfo *CardInfo) error { - _, ok := c.ReqFriend[CardInfo.BUid] +func (c *CardMod) AddRequestCard(cardInfo *CardInfo) error { + _, ok := c.ReqFriend[cardInfo.BUid] if ok { - return fmt.Errorf("AddRequestCard already request card to this friend, BUid: %d", CardInfo.BUid) + return fmt.Errorf("AddRequestCard already request card to this friend, BUid: %d", cardInfo.BUid) } - c.ReqFriend[CardInfo.BUid] = CardInfo + c.ReqFriend[cardInfo.BUid] = cardInfo return nil } -func (c *CardMod) DelRequestCard(Uid int) (map[int]*CardInfo, error) { - ci, ok := c.ReqFriend[Uid] +func (c *CardMod) DelRequestCard(uid int) (map[int]*CardInfo, error) { + ci, ok := c.ReqFriend[uid] if !ok { - return nil, fmt.Errorf("DelRequestCard not find request card, Uid: %d", Uid) + return nil, fmt.Errorf("DelRequestCard not find request card, Uid: %d", uid) } r := make(map[int]*CardInfo) for k, v := range c.ReqFriend { @@ -397,106 +397,106 @@ func (c *CardMod) DelRequestCard(Uid int) (map[int]*CardInfo, error) { continue } } - delete(c.ReqFriend, Uid) + delete(c.ReqFriend, uid) return r, nil } -func (c *CardMod) AddReqTimes(Id string, Time int64) { +func (c *CardMod) AddReqTimes(id string, time int64) { n := 0 for _, v := range c.ReqFriend { - if v.Id == Id { + if v.Id == id { n++ } } - Zero := GoUtil.ZeroTime(Time) - ZeroTime := GoUtil.ZeroTimestamp() - if n == 0 && Zero == ZeroTime { + zero := GoUtil.ZeroTime(time) + zeroTime := GoUtil.ZeroTimestamp() + if n == 0 && zero == zeroTime { c.ReqTimes = min(cardCfg.GetReqTimes(), c.ReqTimes+1) } } -func (c *CardMod) AddExTimes(CardInfo *CardInfo) { - Zero := GoUtil.ZeroTime(CardInfo.StartTime) - ZeroTime := GoUtil.ZeroTimestamp() - if Zero == ZeroTime { +func (c *CardMod) AddExTimes(cardInfo *CardInfo) { + zero := GoUtil.ZeroTime(cardInfo.StartTime) + zeroTime := GoUtil.ZeroTimestamp() + if zero == zeroTime { c.ExTimes++ c.ExTimes = min(cardCfg.GetExTimes(), c.ExTimes) } - if cardCfg.CheckCardIsGold(CardInfo.CardId) { + if cardCfg.CheckCardIsGold(cardInfo.CardId) { c.GoldTimes-- } } // 交换卡牌 -func (c *CardMod) ExchangeCard(From, To, CardId int) (*CardInfo, error) { +func (c *CardMod) ExchangeCard(from, to, cardId int) (*CardInfo, error) { if c.ExTimes <= 0 { - return nil, fmt.Errorf("ExchangeCard times not enough, CardId: %d", CardId) + return nil, fmt.Errorf("ExchangeCard times not enough, CardId: %d", cardId) } - err := c.SubCard(CardId) + err := c.SubCard(cardId) if err != nil { return nil, err } c.ExTimes-- - Now := GoUtil.Now() - Id := GoUtil.CreateCardId(From, To, CardId) + now := GoUtil.Now() + id := GoUtil.CreateCardId(from, to, cardId) CardInfo := &CardInfo{ - Id: Id, - AUid: From, - BUid: To, - CardId: CardId, + Id: id, + AUid: from, + BUid: to, + CardId: cardId, Type: TYPE_CARD_EX, Status: STATUS_CARD_EX_1, - StartTime: Now, - EndTime: Now + 86400, + StartTime: now, + EndTime: now + 86400, } - c.ExCard[To] = CardInfo + c.ExCard[to] = CardInfo return CardInfo, nil } -func (c *CardMod) SendCard(From, To, CardId int) (*CardInfo, error) { +func (c *CardMod) SendCard(from, to, cardId int) (*CardInfo, error) { if c.ExTimes <= 0 { - return nil, fmt.Errorf("SendCard times not enough, CardId: %d", CardId) + return nil, fmt.Errorf("SendCard times not enough, CardId: %d", cardId) } - err := c.SubCard(CardId) + err := c.SubCard(cardId) if err != nil { return nil, err } c.ExTimes-- - Now := GoUtil.Now() - Id := GoUtil.CreateCardId(From, To, CardId) + now := GoUtil.Now() + id := GoUtil.CreateCardId(from, to, cardId) CardInfo := &CardInfo{ - Id: Id, - AUid: From, - BUid: To, - CardId: CardId, + Id: id, + AUid: from, + BUid: to, + CardId: cardId, Type: TYPE_CARD_SEND, - StartTime: Now, + StartTime: now, Status: STATUS_CARD_SEND_1, } return CardInfo, nil } -func (c *CardMod) DelExCard(CardInfo *CardInfo) { - delete(c.ExCard, CardInfo.BUid) +func (c *CardMod) DelExCard(cardInfo *CardInfo) { + delete(c.ExCard, cardInfo.BUid) } -func (c *CardMod) AddMasterCard(Id int) { - c.Cache.Master[Id]++ - c.AllCard[Id]++ +func (c *CardMod) AddMasterCard(id int) { + c.Cache.Master[id]++ + c.AllCard[id]++ } -func (c *CardMod) MasterCardEx(Id, CardId int) error { - if c.AllCard[Id] <= 0 { - return fmt.Errorf("MasterCardEx card not enough, Id: %d", Id) +func (c *CardMod) MasterCardEx(id, cardId int) error { + if c.AllCard[id] <= 0 { + return fmt.Errorf("MasterCardEx card not enough, Id: %d", id) } - if Id == MASTER_CARD_NORMAL && cardCfg.CheckCardIsGold(CardId) { - return fmt.Errorf("MasterCardEx card type err, Id: %d, CardId: %d", Id, CardId) + if id == MASTER_CARD_NORMAL && cardCfg.CheckCardIsGold(cardId) { + return fmt.Errorf("MasterCardEx card type err, Id: %d, CardId: %d", id, cardId) } - c.AllCard[Id]-- - c.Cache.Master[Id]-- - c.AddCard(CardId) + c.AllCard[id]-- + c.Cache.Master[id]-- + c.AddCard(cardId) return nil } @@ -517,12 +517,12 @@ func (c *CardMod) NotifyCard() *msg.ResNotifyCard { } func (c *CardMod) NotifyTimes() *msg.ResNotifyCardTimes { - ReqUid, ExUid := c.cleanExpired() + reqUid, exUid := c.cleanExpired() return &msg.ResNotifyCardTimes{ ExTimes: int32(c.ExTimes), ReqTimes: int32(c.ReqTimes), - ExUid: ExUid, - ReqUid: ReqUid, + ExUid: exUid, + ReqUid: reqUid, GoldTimes: int32(c.GoldTimes), } } @@ -551,21 +551,21 @@ func (c *CardMod) AddGoldTimes() { c.GoldTimes = min(2, c.GoldTimes) } -func (c *CardMod) GetHandbookReward(CardId int) ([]*item.Item, error) { - if v, ok := c.Handbook[CardId]; ok { +func (c *CardMod) GetHandbookReward(cardId int) ([]*item.Item, error) { + if v, ok := c.Handbook[cardId]; ok { if v == HANDBOOK_STATUS_GET { - return nil, fmt.Errorf("GetHandbookReward already get reward, CardId: %d", CardId) + return nil, fmt.Errorf("GetHandbookReward already get reward, CardId: %d", cardId) } - Star := cardCfg.GetStarById(CardId) - c.Handbook[CardId] = HANDBOOK_STATUS_GET - c.Cache.Handbook[CardId] = HANDBOOK_STATUS_GET - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, Star)}, nil + star := cardCfg.GetStarById(cardId) + c.Handbook[cardId] = HANDBOOK_STATUS_GET + c.Cache.Handbook[cardId] = HANDBOOK_STATUS_GET + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, star)}, nil } - return nil, fmt.Errorf("GetHandbookReward not find card in handbook, CardId: %d", CardId) + return nil, fmt.Errorf("GetHandbookReward not find card in handbook, CardId: %d", cardId) } -func (c *CardMod) RandCard(Star int) int { - return randCard(c.Round, Star, 0, []int{}) +func (c *CardMod) RandCard(star int) int { + return randCard(c.Round, star, 0, []int{}) } func (c *CardMod) SeasonFirstReward() ([]*item.Item, error) { diff --git a/src/server/game/mod/card/card_func.go b/src/server/game/mod/card/card_func.go index 0f3dc40b..8118379c 100644 --- a/src/server/game/mod/card/card_func.go +++ b/src/server/game/mod/card/card_func.go @@ -6,16 +6,16 @@ import ( ) // 随机卡牌 -func randCard(Round, Star, IsGold int, Except []int) int { - cardList := cardCfg.GetCardListByStar(Round, Star, IsGold) - cardList = GoUtil.SubSlices(cardList, Except) +func randCard(round, star, isGold int, except []int) int { + cardList := cardCfg.GetCardListByStar(round, star, isGold) + cardList = GoUtil.SubSlices(cardList, except) cardId := GoUtil.RandSlice(cardList) return cardId } // 排位赛金卡 func RankGoldCard() (int, int) { - Card1 := randCard(0, 4, 1, []int{}) - Card2 := randCard(0, 5, 1, []int{Card1}) - return Card1, Card2 + card1 := randCard(0, 4, 1, []int{}) + card2 := randCard(0, 5, 1, []int{card1}) + return card1, card2 } diff --git a/src/server/game/mod/catnip/Catnip.go b/src/server/game/mod/catnip/Catnip.go index ad452d59..a2df8815 100644 --- a/src/server/game/mod/catnip/Catnip.go +++ b/src/server/game/mod/catnip/Catnip.go @@ -51,24 +51,24 @@ func (c *CatnipMod) InitData() { } // 登录 判断是否需要重置数据 -func (c *CatnipMod) Login(Id int) (int, []*item.Item) { - OldId := c.Id - if Id == 0 { +func (c *CatnipMod) Login(id int) (int, []*item.Item) { + oldId := c.Id + if id == 0 { c.Id = 0 - return OldId, nil + return oldId, nil } - if c.Id == Id { + if c.Id == id { return 0, nil } - Items := c.GetUnGetReward() - c.Id = Id + items := c.GetUnGetReward() + c.Id = id c.IsGetGrandReward = false // Reset grand reward status on login c.Game = make(map[int]*CatnipGame) c.Mul = 1 // Default multiplier - GameNum := catnipCfg.GetGameNum(c.Id) // Assuming 1 is the default game ID + gameNum := catnipCfg.GetGameNum(c.Id) // Assuming 1 is the default game ID c.InviteList = make(map[int]*InviteInfo) c.BeInvitedList = make(map[int]*InviteInfo) - for i := 1; i <= GameNum; i++ { + for i := 1; i <= gameNum; i++ { c.Game[i] = &CatnipGame{ Id: i, Partner: 0, // No partner initially @@ -76,50 +76,50 @@ func (c *CatnipMod) Login(Id int) (int, []*item.Item) { Status: GAME_STATUS_IDLE, // Not started } } - return OldId, Items + return oldId, items } -func (c *CatnipMod) ZeroUpdate(Id int) { - c.Login(Id) +func (c *CatnipMod) ZeroUpdate(id int) { + c.Login(id) } // 邀请好友 -func (c *CatnipMod) Invite(Uid, Id int) error { - if c.InviteList[Uid] != nil { - return fmt.Errorf("user with ID %d is already invited", Uid) +func (c *CatnipMod) Invite(uid, id int) error { + if c.InviteList[uid] != nil { + return fmt.Errorf("user with ID %d is already invited", uid) } - c.InviteList[Uid] = &InviteInfo{ - InviteId: Id, + c.InviteList[uid] = &InviteInfo{ + InviteId: id, Time: GoUtil.Now(), } return nil } // 被邀请 -func (c *CatnipMod) BeInvited(Uid int, Time int64) error { +func (c *CatnipMod) BeInvited(uid int, time int64) error { // Check if the user is already invited - invite := c.BeInvitedList[Uid] + invite := c.BeInvitedList[uid] if invite != nil { - return fmt.Errorf("user with ID %d has already been invited ", Uid) + return fmt.Errorf("user with ID %d has already been invited ", uid) } - c.BeInvitedList[Uid] = &InviteInfo{ - InviteId: Uid, - Time: Time, + c.BeInvitedList[uid] = &InviteInfo{ + InviteId: uid, + Time: time, } return nil } // 同意邀请 -func (c *CatnipMod) Agree(Id, Uid int) ([]int, error) { - _, exists := c.BeInvitedList[Uid] +func (c *CatnipMod) Agree(id, uid int) ([]int, error) { + _, exists := c.BeInvitedList[uid] if !exists { - return nil, fmt.Errorf("user with ID %d is not invited to game ID %d", Uid, Id) + return nil, fmt.Errorf("user with ID %d is not invited to game ID %d", uid, id) } - delete(c.BeInvitedList, Uid) + delete(c.BeInvitedList, uid) for _, GameInfo := range c.Game { if GameInfo.Partner == 0 { - GameInfo.Partner = Uid + GameInfo.Partner = uid GameInfo.Status = GAME_STATUS_IN_PROGRESS return nil, nil } @@ -128,22 +128,22 @@ func (c *CatnipMod) Agree(Id, Uid int) ([]int, error) { } // 同意邀请-指定格子 -func (c *CatnipMod) BeAgree(Id, Uid int) ([]int, error) { - info, exists := c.InviteList[Uid] +func (c *CatnipMod) BeAgree(id, uid int) ([]int, error) { + info, exists := c.InviteList[uid] if !exists { - return nil, fmt.Errorf("user with ID %d is not invited to game ID %d", Uid, Id) + return nil, fmt.Errorf("user with ID %d is not invited to game ID %d", uid, id) } - delete(c.InviteList, Uid) + delete(c.InviteList, uid) GameInfo := c.Game[info.InviteId] if GameInfo.Partner == 0 { - GameInfo.Partner = Uid + GameInfo.Partner = uid GameInfo.Status = GAME_STATUS_IN_PROGRESS return nil, nil } // 目标格子已有伙伴,分配到第一个空闲格 for _, GameInfo := range c.Game { if GameInfo.Partner == 0 { - GameInfo.Partner = Uid + GameInfo.Partner = uid GameInfo.Status = GAME_STATUS_IN_PROGRESS return nil, nil } @@ -152,58 +152,58 @@ func (c *CatnipMod) BeAgree(Id, Uid int) ([]int, error) { } // 删除邀请 -func (c *CatnipMod) DelInvited(Id, Uid int) error { - delete(c.InviteList, Uid) +func (c *CatnipMod) DelInvited(id, uid int) error { + delete(c.InviteList, uid) return nil } // 设置倍数 -func (c *CatnipMod) Multiply(Mul int) error { - c.Mul = Mul +func (c *CatnipMod) Multiply(mul int) error { + c.Mul = mul return nil } // 拒绝邀请 -func (c *CatnipMod) Refuse(Id, Uid int) error { - delete(c.BeInvitedList, Uid) +func (c *CatnipMod) Refuse(id, uid int) error { + delete(c.BeInvitedList, uid) return nil } // 玩游戏 -func (c *CatnipMod) Play(Id int) (int, int, int, []*item.Item, []*item.Item, int, error) { - GameInfo, ok := c.Game[Id] +func (c *CatnipMod) Play(id int) (int, int, int, []*item.Item, []*item.Item, int, error) { + gameInfo, ok := c.Game[id] if !ok { - return 0, 0, 0, nil, nil, 0, fmt.Errorf("game with ID %d does not exist", Id) + return 0, 0, 0, nil, nil, 0, fmt.Errorf("game with ID %d does not exist", id) } - if GameInfo.Status != GAME_STATUS_IN_PROGRESS { - return 0, 0, 0, nil, nil, 0, fmt.Errorf("game with ID %d is not in progress", Id) + if gameInfo.Status != GAME_STATUS_IN_PROGRESS { + return 0, 0, 0, nil, nil, 0, fmt.Errorf("game with ID %d is not in progress", id) } - Id, Items, Growth, FriendItems := catnipCfg.GetJackpotItem(c.Mul) - Growth = Growth * c.Mul - if Growth > 0 { - c.Growth(Id, Growth) + id, items, growth, friendItems := catnipCfg.GetJackpotItem(c.Mul) + growth = growth * c.Mul + if growth > 0 { + c.Growth(id, growth) } ItemCost := catnipCfg.GetItemCost(c.Id, c.Mul) - GameInfo.Progress += Growth - return Id, Growth, GameInfo.Partner, Items, ItemCost, FriendItems, nil + gameInfo.Progress += growth + return id, growth, gameInfo.Partner, items, ItemCost, friendItems, nil } // 领取奖励 -func (c *CatnipMod) Reward(Id int) ([]*item.Item, *CatnipGame, error) { - GameInfo, ok := c.Game[Id] +func (c *CatnipMod) Reward(id int) ([]*item.Item, *CatnipGame, error) { + gameInfo, ok := c.Game[id] if !ok { - return nil, nil, fmt.Errorf("game with Progress %d does not exist", Id) + return nil, nil, fmt.Errorf("game with Progress %d does not exist", id) } - Items, Ids := catnipCfg.GetProgressReward(c.Id, GameInfo.Reward, GameInfo.Progress) - ProgressNum := catnipCfg.GetProgressNum(c.Id) - GameInfo.Reward = append(GameInfo.Reward, Ids...) - if len(GameInfo.Reward) == ProgressNum { - GameInfo.Status = GAME_STATUS_COMPLETED + items, ids := catnipCfg.GetProgressReward(c.Id, gameInfo.Reward, gameInfo.Progress) + progressNum := catnipCfg.GetProgressNum(c.Id) + gameInfo.Reward = append(gameInfo.Reward, ids...) + if len(gameInfo.Reward) == progressNum { + gameInfo.Status = GAME_STATUS_COMPLETED } - if Items == nil { - return nil, nil, fmt.Errorf("no reward found for progress %d in game ID %d", GameInfo.Progress, Id) + if items == nil { + return nil, nil, fmt.Errorf("no reward found for progress %d in game ID %d", gameInfo.Progress, id) } - return Items, GameInfo, nil + return items, gameInfo, nil } // 领取大奖励 @@ -221,26 +221,26 @@ func (c *CatnipMod) GrandReward() ([]*item.Item, error) { } // 进度增加 -func (c *CatnipMod) Growth(Id, Growth int) { - GameInfo, ok := c.Game[Id] +func (c *CatnipMod) Growth(id, growth int) { + gameInfo, ok := c.Game[id] if !ok { return // Game does not exist } - if GameInfo.Status != GAME_STATUS_IN_PROGRESS { + if gameInfo.Status != GAME_STATUS_IN_PROGRESS { return // Game is not in progress } - GameInfo.Progress += Growth - if GameInfo.Progress >= catnipCfg.GetGameMaxProgress(c.Id) { - GameInfo.Status = GAME_STATUS_COMPLETED + gameInfo.Progress += growth + if gameInfo.Progress >= catnipCfg.GetGameMaxProgress(c.Id) { + gameInfo.Status = GAME_STATUS_COMPLETED } } // 伙伴贡献增加 -func (c *CatnipMod) GrowthByUid(Uid, Growth int) { +func (c *CatnipMod) GrowthByUid(uid, growth int) { for _, v := range c.Game { - if v.Partner == Uid { - v.Progress += Growth - v.PartnerAdd += Growth + if v.Partner == uid { + v.Progress += growth + v.PartnerAdd += growth if v.Progress >= catnipCfg.GetGameMaxProgress(c.Id) { v.Status = GAME_STATUS_COMPLETED } @@ -250,10 +250,10 @@ func (c *CatnipMod) GrowthByUid(Uid, Growth int) { } // 设置表情 -func (c *CatnipMod) SetEmoji(Uid, EmojiId int) { +func (c *CatnipMod) SetEmoji(uid, emojiId int) { for _, v := range c.Game { - if v.Partner == Uid { - v.EmojiId = EmojiId + if v.Partner == uid { + v.EmojiId = emojiId return } } @@ -263,24 +263,24 @@ func (c *CatnipMod) GetMultiple() int { return c.Mul } -func (c *CatnipMod) GetGameInfo(Id int) *CatnipGame { - return c.Game[Id] +func (c *CatnipMod) GetGameInfo(id int) *CatnipGame { + return c.Game[id] } -func (c *CatnipMod) SetSendEmoji(Id, EmojiId int) { - c.Game[Id].SendEmoji = EmojiId +func (c *CatnipMod) SetSendEmoji(id, emojiId int) { + c.Game[id].SendEmoji = emojiId } // 获取未领取的奖励 func (c *CatnipMod) GetUnGetReward() []*item.Item { var rewards []*item.Item for _, v := range c.Game { - Items, _, _ := c.Reward(v.Id) - rewards = append(rewards, Items...) + items, _, _ := c.Reward(v.Id) + rewards = append(rewards, items...) } - BigReward, err := c.GrandReward() + bigReward, err := c.GrandReward() if err == nil { - rewards = append(rewards, BigReward...) + rewards = append(rewards, bigReward...) } return rewards } diff --git a/src/server/game/mod/champship/Champship.go b/src/server/game/mod/champship/Champship.go index 91154502..b04c86e1 100644 --- a/src/server/game/mod/champship/Champship.go +++ b/src/server/game/mod/champship/Champship.go @@ -43,12 +43,12 @@ func (c *ChampshipMod) GetRankReward(Rank, yesterdayActivityId int) ([]*item.Ite return champshipCfg.GetRankReward(Rank, yesterdayActivityId), nil } -func (c *ChampshipMod) AddScore(Chess []int) { +func (c *ChampshipMod) AddScore(chess []int) { if !c.isActive() { return } score := 0 - for _, v := range Chess { + for _, v := range chess { Lv := mergeDataCfg.GetLvById(v) ChessScore := champshipCfg.GetChessScore(Lv) score += ChessScore @@ -57,17 +57,17 @@ func (c *ChampshipMod) AddScore(Chess []int) { } func (c *ChampshipMod) GetReward(activityId, orderFactor int) []*item.Item { - Reward, Items := champshipCfg.GetReward(c.Reward, c.Score, activityId, orderFactor) - c.Reward = Reward + reward, items := champshipCfg.GetReward(c.Reward, c.Score, activityId, orderFactor) + c.Reward = reward c.Max = max(c.Max, c.Reward) - return Items + return items } -func (c *ChampshipMod) BackData(MyRank, MyPreRank, todayActivityId, yesterdayActivityId int) *msg.ResChampship { +func (c *ChampshipMod) BackData(myRank, myPreRank, todayActivityId, yesterdayActivityId int) *msg.ResChampship { rankReward := 0 if c.RankReward { rankReward = 2 - } else if MyPreRank > 0 { + } else if myPreRank > 0 { rankReward = 1 } status := 0 @@ -79,7 +79,7 @@ func (c *ChampshipMod) BackData(MyRank, MyPreRank, todayActivityId, yesterdayAct Reward: int32(c.Reward), EndTime: int32(GoUtil.ZeroTimestamp() + 86400), Period: int32(GoUtil.GetServerOpenDay()), - Rank: int32(MyRank), + Rank: int32(myRank), RankReward: int32(rankReward), Status: int32(status), TodayActivityId: int32(todayActivityId), diff --git a/src/server/game/mod/charge/Charge.go b/src/server/game/mod/charge/Charge.go index 876ca8e6..720afc33 100644 --- a/src/server/game/mod/charge/Charge.go +++ b/src/server/game/mod/charge/Charge.go @@ -112,8 +112,8 @@ func (c *ChargeMod) GetMaxCharge() float64 { return c.MaxCharge } -func (c *ChargeMod) Login(LogoutTime int64) { - c.LastWorkTime = min(LogoutTime, c.PetWorkTime) +func (c *ChargeMod) Login(logoutTime int64) { + c.LastWorkTime = min(logoutTime, c.PetWorkTime) c.PetWorkTime -= c.LastWorkTime } @@ -125,147 +125,147 @@ func (c *ChargeMod) resetSpecialChargeIfExpired(now int64) { } // 零点更新 -func (c *ChargeMod) ZeroUpdate(Emit []int) { - Now := GoUtil.Now() - c.resetSpecialChargeIfExpired(Now) +func (c *ChargeMod) ZeroUpdate(emit []int) { + now := GoUtil.Now() + c.resetSpecialChargeIfExpired(now) if GoUtil.IsFirstDayOfMonth() { c.MonthCharge = 0 } c.FreeShop = 0 - SpecialGrade := 1 + specialGrade := 1 c.TodayCharge = 0 c.AdWatch = 0 c.SpecialShop = make(map[int]*SepcialShop) - SpecialShopCount := chargeCfg.GetSpecialShopCount() + specialShopCount := chargeCfg.GetSpecialShopCount() for i := 1; i <= 2; i++ { if c.Total == 0 { - c.SpecialShop[i] = &SepcialShop{Grade: SpecialGrade, Count: 1} + c.SpecialShop[i] = &SepcialShop{Grade: specialGrade, Count: 1} continue } m := c.SpecialCharge M := chargeCfg.GetSpecialShopGrade(m, i) a := min(2, GoUtil.FullWeeksSince(c.LastSpecialCharge)) - SpecialGrade = max(1, M-a) - c.SpecialShop[i] = &SepcialShop{Grade: SpecialGrade, Count: SpecialShopCount} + specialGrade = max(1, M-a) + c.SpecialShop[i] = &SepcialShop{Grade: specialGrade, Count: specialShopCount} } if c.WishList != nil { c.WishList.SendList = nil } - if c.IsWeeklyDiscountDay() && c.WeeklyEndTime < Now { + if c.IsWeeklyDiscountDay() && c.WeeklyEndTime < now { c.WeeklyDiscount = make(map[int]int) c.WeeklyEndTime = GoUtil.ZeroTimestamp() + secondsIn7Days } - c.InitChessShop(Emit) + c.InitChessShop(emit) } // 十二点更新 重置商店 -func (c *ChargeMod) NoonUpdate(Emit []int) { - c.InitChessShop(Emit) +func (c *ChargeMod) NoonUpdate(emit []int) { + c.InitChessShop(emit) } -func (c *ChargeMod) FixBug(Emit []int) { +func (c *ChargeMod) FixBug(emit []int) { if len(c.ChessShop) < 5 { - c.InitChessShop(Emit) + c.InitChessShop(emit) } } // 充值 -func (c *ChargeMod) Fire(ChargeId int) (Item []*item.Item) { - Money := chargeCfg.GetMoneyCharge(ChargeId) - if Money == 0 { +func (c *ChargeMod) Fire(chargeId int) (Item []*item.Item) { + money := chargeCfg.GetMoneyCharge(chargeId) + if money == 0 { return } - c.Charge += Money - c.TodayCharge += Money - c.MonthCharge += Money + c.Charge += money + c.TodayCharge += money + c.MonthCharge += money c.Total++ - Now := GoUtil.Now() + now := GoUtil.Now() if c.FirstCharge == 0 { - c.FirstCharge = Now + c.FirstCharge = now } - c.resetSpecialChargeIfExpired(Now) - c.LastCharge = Now - if Money > c.MaxCharge { - c.MaxCharge = Money + c.resetSpecialChargeIfExpired(now) + c.LastCharge = now + if money > c.MaxCharge { + c.MaxCharge = money } - if Money > c.SpecialCharge { - c.LastSpecialCharge = Now - c.SpecialCharge = Money + if money > c.SpecialCharge { + c.LastSpecialCharge = now + c.SpecialCharge = money } - Item = c.FireDiamondShop(ChargeId) + Item = c.FireDiamondShop(chargeId) if Item != nil { return } - Item = c.FireEnergyShop(ChargeId) + Item = c.FireEnergyShop(chargeId) if Item != nil { return } - Item = c.FireSpecialShop(ChargeId) + Item = c.FireSpecialShop(chargeId) if Item != nil { return } - Item = c.FirePetCoinShop(ChargeId) + Item = c.FirePetCoinShop(chargeId) if Item != nil { return } - Item = c.FireGift(ChargeId) - c.FireAd(ChargeId) + Item = c.FireGift(chargeId) + c.FireAd(chargeId) return } // 钻石商店 -func (c *ChargeMod) FireDiamondShop(ChargeId int) []*item.Item { - return chargeCfg.GetDiamondShopReward(ChargeId) +func (c *ChargeMod) FireDiamondShop(chargeId int) []*item.Item { + return chargeCfg.GetDiamondShopReward(chargeId) } // 宠物币商店 -func (c *ChargeMod) FirePetCoinShop(ChargeId int) []*item.Item { - return chargeCfg.GetPetCoinShopReward(ChargeId) +func (c *ChargeMod) FirePetCoinShop(chargeId int) []*item.Item { + return chargeCfg.GetPetCoinShopReward(chargeId) } // 能量商店 -func (c *ChargeMod) FireEnergyShop(ChargeId int) []*item.Item { - id := chargeCfg.GetEnergyShopId(ChargeId) +func (c *ChargeMod) FireEnergyShop(chargeId int) []*item.Item { + id := chargeCfg.GetEnergyShopId(chargeId) _, ok := c.EnergyShop[id] c.EnergyShop[id] = struct{}{} - return chargeCfg.GetEnergyShopReward(ChargeId, ok) + return chargeCfg.GetEnergyShopReward(chargeId, ok) } // 特惠礼包 -func (c *ChargeMod) FireSpecialShop(ChargeId int) []*item.Item { - Type := chargeCfg.GetSpecialShopType(ChargeId) - if _, ok := c.SpecialShop[Type]; !ok { +func (c *ChargeMod) FireSpecialShop(chargeId int) []*item.Item { + cType := chargeCfg.GetSpecialShopType(chargeId) + if _, ok := c.SpecialShop[cType]; !ok { return nil } - if c.SpecialShop[Type].Count < 1 { - log.Debug("special shop recharge max, type: %d, charge id: %d", Type, ChargeId) + if c.SpecialShop[cType].Count < 1 { + log.Debug("special shop recharge max, type: %d, charge id: %d", cType, chargeId) return nil } - c.SpecialShop[Type].Count-- - return chargeCfg.GetSpecialShopReward(ChargeId) + c.SpecialShop[cType].Count-- + return chargeCfg.GetSpecialShopReward(chargeId) } // 通用礼包 -func (c *ChargeMod) FireGift(ChargeId int) []*item.Item { - Limit := chargeCfg.GetGiftLimit(ChargeId) - if Limit == 0 { +func (c *ChargeMod) FireGift(chargeId int) []*item.Item { + limit := chargeCfg.GetGiftLimit(chargeId) + if limit == 0 { return nil } - Id := chargeCfg.GetGiftId(ChargeId) + id := chargeCfg.GetGiftId(chargeId) - if v, ok := c.Gift[Id]; ok { - if v >= Limit { + if v, ok := c.Gift[id]; ok { + if v >= limit { return nil } } - c.Gift[Id]++ - return chargeCfg.GetGiftReward(ChargeId) + c.Gift[id]++ + return chargeCfg.GetGiftReward(chargeId) } // 免广告礼包 -func (c *ChargeMod) FireAd(ChargeId int) []*item.Item { - AdChargeId := chargeCfg.GetAdChargeId() - if ChargeId != AdChargeId { +func (c *ChargeMod) FireAd(chargeId int) []*item.Item { + adChargeId := chargeCfg.GetAdChargeId() + if chargeId != adChargeId { return nil } c.Ad = true @@ -273,30 +273,30 @@ func (c *ChargeMod) FireAd(ChargeId int) []*item.Item { } // 免广告礼包 -func (c *ChargeMod) FireAdReward(ChargeId int) []*item.Item { - Items, PetWorkDay := chargeCfg.GetADReward(ChargeId) - if PetWorkDay != 0 { - Now := GoUtil.Now() - if c.AdEndTime < Now { - c.AdEndTime = Now + int64(PetWorkDay*secondsIn1Day) +func (c *ChargeMod) FireAdReward(chargeId int) []*item.Item { + items, petWorkDay := chargeCfg.GetADReward(chargeId) + if petWorkDay != 0 { + now := GoUtil.Now() + if c.AdEndTime < now { + c.AdEndTime = now + int64(petWorkDay*secondsIn1Day) } else { - c.AdEndTime += int64(PetWorkDay * secondsIn1Day) + c.AdEndTime += int64(petWorkDay * secondsIn1Day) } - c.PetWorkTime += int64(PetWorkDay * secondsIn1Day) + c.PetWorkTime += int64(petWorkDay * secondsIn1Day) c.Ad = true } - return Items + return items } -func (c *ChargeMod) AddAdTime(PetWorkDay int) { - if PetWorkDay > 0 { - Now := GoUtil.Now() - if c.AdEndTime < Now { - c.AdEndTime = Now + int64(PetWorkDay*secondsIn1Day) +func (c *ChargeMod) AddAdTime(petWorkDay int) { + if petWorkDay > 0 { + now := GoUtil.Now() + if c.AdEndTime < now { + c.AdEndTime = now + int64(petWorkDay*secondsIn1Day) } else { - c.AdEndTime += int64(PetWorkDay * secondsIn1Day) + c.AdEndTime += int64(petWorkDay * secondsIn1Day) } - c.PetWorkTime += int64(PetWorkDay * secondsIn1Day) + c.PetWorkTime += int64(petWorkDay * secondsIn1Day) c.Ad = true } } @@ -323,53 +323,51 @@ func (c *ChargeMod) InitChessShop(Emit []int) { return } c.ChessShop = make(map[int]*ChessShop) - //ColorList := make([]string, 0) - RandList := make([]*Rand, 0) - + randList := make([]*Rand, 0) for _, v := range Emit { - ProduceList := mergeDataCfg.GetEmitProduceType(v) - for _, p := range ProduceList { - ChessList := order.GetChessByDiff(v, 1, order.DIFF_MID, p) - if len(ChessList) == 1 { - ChessList = append(ChessList, ChessList[0]-1) + produceList := mergeDataCfg.GetEmitProduceType(v) + for _, p := range produceList { + chessList := order.GetChessByDiff(v, 1, order.DIFF_MID, p) + if len(chessList) == 1 { + chessList = append(chessList, chessList[0]-1) } - for _, c := range ChessList { + for _, c := range chessList { if c == 0 { continue } - ChessLv := mergeDataCfg.GetLvById(c) - DynamicLv := mergeDataCfg.GetAdjust(v, p, 0) - ChessLv += DynamicLv - Diamond := math.Round(math.Pow(2, float64(ChessLv-1)) / 5) - Diamond = max(1, Diamond) - RandList = append(RandList, &Rand{ChessId: c, Diamond: int(Diamond)}) + chessLv := mergeDataCfg.GetLvById(c) + dynamicLv := mergeDataCfg.GetAdjust(v, p, 0) + chessLv += dynamicLv + diamond := math.Round(math.Pow(2, float64(chessLv-1)) / 5) + diamond = max(1, diamond) + randList = append(randList, &Rand{ChessId: c, Diamond: int(diamond)}) } } } - randList := make([]interface{}, len(RandList)) - for k, v := range RandList { - randList[k] = v + randList2 := make([]interface{}, len(randList)) + for k, v := range randList { + randList2[k] = v } - L := GoUtil.RandSliceNum2(randList, 5) - for k, v := range L { - Diamond := v.(*Rand).Diamond - ChessId := v.(*Rand).ChessId - if ChessId == 0 { + newList := GoUtil.RandSliceNum2(randList2, 5) + for k, v := range newList { + diamond := v.(*Rand).Diamond + chessId := v.(*Rand).ChessId + if chessId == 0 { continue } - c.ChessShop[k+1] = &ChessShop{Diamond: Diamond, Count: 5, Id: ChessId} + c.ChessShop[k+1] = &ChessShop{Diamond: diamond, Count: 5, Id: chessId} } } // 购买能量 -func (c *ChargeMod) BuyEnergy(IsWeeklyDiscount bool) ([]*item.Item, []*item.Item, int) { +func (c *ChargeMod) BuyEnergy(isWeeklyDiscount bool) ([]*item.Item, []*item.Item, int) { diamond := 40 - if IsWeeklyDiscount { - LimitNum := c.WeeklyDiscount[0] - Discount, WeeklyLimit := chargeCfg.GetWeeklyInfo(0) - if LimitNum < WeeklyLimit { - diamond = int(math.Ceil(float64(diamond) * float64(Discount) / 100.0)) - c.WeeklyDiscount[0] = LimitNum + 1 + if isWeeklyDiscount { + limitNum := c.WeeklyDiscount[0] + discount, weeklyLimit := chargeCfg.GetWeeklyInfo(0) + if limitNum < weeklyLimit { + diamond = int(math.Ceil(float64(diamond) * float64(discount) / 100.0)) + c.WeeklyDiscount[0] = limitNum + 1 } } return []*item.Item{ @@ -381,27 +379,27 @@ func (c *ChargeMod) BuyEnergy(IsWeeklyDiscount bool) ([]*item.Item, []*item.Item } // 购买棋子 -func (c *ChargeMod) BuyChess(Chess int, IsWeeklyDiscount bool) ([]*item.Item, []*item.Item, int, error) { - v, ok := c.ChessShop[Chess] +func (c *ChargeMod) BuyChess(chess int, isWeeklyDiscount bool) ([]*item.Item, []*item.Item, int, error) { + v, ok := c.ChessShop[chess] if !ok { - return nil, nil, 0, fmt.Errorf("BuyChess chess id not exist id:%d", Chess) + return nil, nil, 0, fmt.Errorf("BuyChess chess id not exist id:%d", chess) } if v.Count <= 0 { - return nil, nil, 0, fmt.Errorf("BuyChess chess count less zero id:%d", Chess) + return nil, nil, 0, fmt.Errorf("BuyChess chess count less zero id:%d", chess) } v.Count-- diamond := v.Diamond - if IsWeeklyDiscount { - LimitNum := c.WeeklyDiscount[Chess] - Discount, WeeklyLimit := chargeCfg.GetWeeklyInfo(Chess) - if LimitNum < WeeklyLimit { - diamond = int(math.Ceil(float64(diamond) * float64(Discount) / 100)) + if isWeeklyDiscount { + limitNum := c.WeeklyDiscount[chess] + discount, weeklyLimit := chargeCfg.GetWeeklyInfo(chess) + if limitNum < weeklyLimit { + diamond = int(math.Ceil(float64(diamond) * float64(discount) / 100)) if diamond == v.Diamond { diamond -= 1 } diamond = max(1, diamond) - c.WeeklyDiscount[Chess] = LimitNum + 1 + c.WeeklyDiscount[chess] = limitNum + 1 } } return []*item.Item{ @@ -412,30 +410,30 @@ func (c *ChargeMod) BuyChess(Chess int, IsWeeklyDiscount bool) ([]*item.Item, [] } // 棋子商店解锁 -func (c *ChargeMod) TriggerChargeUnlock(Lv int, Emit []int) { - c.InitChessShop(Emit) +func (c *ChargeMod) TriggerChargeUnlock(lv int, emit []int) { + c.InitChessShop(emit) } // 添加心愿单 -func (c *ChargeMod) AddWish(Id, Type int) ([]*item.Item, error) { - ItemId := 0 - switch Type { +func (c *ChargeMod) AddWish(id, wType int) ([]*item.Item, error) { + itemId := 0 + switch wType { case PLAYROOM_SHOP: - ItemId, _, _, _ = playroomCfg.GetShopItem(Id) + itemId, _, _, _ = playroomCfg.GetShopItem(id) } - if ItemId == 0 { - return nil, fmt.Errorf("AddWish itemid not exist id:%d", Id) + if itemId == 0 { + return nil, fmt.Errorf("AddWish itemid not exist id:%d", id) } - var Items []*item.Item + var items []*item.Item if c.WishList.ItemId != 0 { - if c.WishList.ItemId == ItemId { - return nil, fmt.Errorf("AddWish itemid already exist id:%d", Id) + if c.WishList.ItemId == itemId { + return nil, fmt.Errorf("AddWish itemid already exist id:%d", id) } - Items = append(Items, item.NewItem(item.ITEM_ENERGY_ID, c.WishList.Count)) + items = append(items, item.NewItem(item.ITEM_ENERGY_ID, c.WishList.Count)) c.WishList.Count = 0 } - c.WishList.ItemId = ItemId - return Items, nil + c.WishList.ItemId = itemId + return items, nil } // 获取心愿单奖励 @@ -443,8 +441,8 @@ func (c *ChargeMod) GetWish() ([]*item.Item, error) { if c.WishList.ItemId == 0 { return nil, fmt.Errorf("AddWishCount itemid not exist") } - Max := chargeCfg.GetWishCount(c.WishList.ItemId) - if c.WishList.Count < Max { + max := chargeCfg.GetWishCount(c.WishList.ItemId) + if c.WishList.Count < max { return nil, fmt.Errorf("AddWishCount count max") } rewardItemId := c.WishList.ItemId @@ -469,8 +467,8 @@ func (c *ChargeMod) AddWishCount() { if c.WishList.ItemId == 0 { return } - Max := chargeCfg.GetWishCount(c.WishList.ItemId) - if c.WishList.Count >= Max { + max := chargeCfg.GetWishCount(c.WishList.ItemId) + if c.WishList.Count >= max { return } c.WishList.Count++ @@ -478,12 +476,12 @@ func (c *ChargeMod) AddWishCount() { // 是否在每周折扣日 func (c *ChargeMod) IsWeeklyDiscountDay() bool { - Day := chargeCfg.GetWeeklyDiscountDay() - if Day == -1 { + day := chargeCfg.GetWeeklyDiscountDay() + if day == -1 { return false } Weekday, _ := GoUtil.GetWeekdayAndHour() - return Weekday == Day || c.WeeklyEndTime > GoUtil.Now() + return Weekday == day || c.WeeklyEndTime > GoUtil.Now() } // 重置每周折扣 diff --git a/src/server/game/mod/charge/charge_func.go b/src/server/game/mod/charge/charge_func.go index e0f552f9..c324d9f0 100644 --- a/src/server/game/mod/charge/charge_func.go +++ b/src/server/game/mod/charge/charge_func.go @@ -5,12 +5,12 @@ import ( ) // 弃用 -func GetChessDiamond(Lv, Type int) int { +func GetChessDiamond(lv, cType int) int { Diamond := 0.0 - if Type == 1 { - Diamond = 0.27 * math.Exp(float64(Lv)*0.56) + if cType == 1 { + Diamond = 0.27 * math.Exp(float64(lv)*0.56) } else { - Diamond = 2.64 * math.Pow(float64(Lv), 2.43) + Diamond = 2.64 * math.Pow(float64(lv), 2.43) } d := int(Diamond) if d > 10 { diff --git a/src/server/game/mod/chess/Chess.go b/src/server/game/mod/chess/Chess.go index c2fd7d3e..7dc97773 100644 --- a/src/server/game/mod/chess/Chess.go +++ b/src/server/game/mod/chess/Chess.go @@ -110,8 +110,8 @@ func (cb *ChessBorad) ver() { } if cb.ChessBag.List == nil { cb.ChessBag.List = make(map[int]ChessBagGrid) - InitNum := mergeDataCfg.GetChessBagInitNum() - for i := 1; i <= InitNum; i++ { + initNum := mergeDataCfg.GetChessBagInitNum() + for i := 1; i <= initNum; i++ { cb.ChessBag.List[i] = ChessBagGrid{} } } @@ -562,18 +562,18 @@ func (cb *ChessBorad) PutPartInBag(chessId int) error { if err != nil { return err } - ChessLv := mergeDataCfg.GetLvById(chessId) - ChessMaxLv := mergeDataCfg.GetMaxLvById(chessId) - if ChessLv != ChessMaxLv { // 零件只能放入满级棋子 + chessLv := mergeDataCfg.GetLvById(chessId) + chessMaxLv := mergeDataCfg.GetMaxLvById(chessId) + if chessLv != chessMaxLv { // 零件只能放入满级棋子 return errors.New("part Lv is not max") } if cb.PartBag.List == nil { cb.PartBag.List = make(map[int]PartBagGrid) } - Num := cb.PartBag.List[chessId].Num + num := cb.PartBag.List[chessId].Num cb.PartBag.List[chessId] = PartBagGrid{ PartId: chessId, - Num: Num + 1, + Num: num + 1, } return nil } @@ -585,15 +585,15 @@ func (cb *ChessBorad) TakeChessOutBag(grid int) (int, error) { cb.AddChess(-grid) return 0, nil } - GridInfo, ok := cb.ChessBag.List[grid] + gridInfo, ok := cb.ChessBag.List[grid] if !ok { return 0, errors.New("ChessBag Grid unlock") } - if GridInfo.ChessId == 0 { + if gridInfo.ChessId == 0 { return 0, errors.New("ChessBag Grid is empty") } cb.ChessBag.List[grid] = ChessBagGrid{} - return GridInfo.ChessId, cb.AddChess(GridInfo.ChessId) + return gridInfo.ChessId, cb.AddChess(gridInfo.ChessId) } func (cb *ChessBorad) GetOrderEmit() []int { @@ -652,11 +652,11 @@ func (cb *ChessBorad) RetireOrder(emitType string) error { return errors.New("chess has not been retired") } chess := make([]int, 0, len(cb.ChessMap)) - EmitProduct := mergeDataCfg.GetEmitOrderProduce(emitType) + emitProduct := mergeDataCfg.GetEmitOrderProduce(emitType) for k, v := range cb.ChessMap { arr := strings.Split(k, "@") - Color := mergeDataCfg.GetColorById(int(v)) - if arr[2] == "0" && GoUtil.InStringArray(Color, EmitProduct) { + color := mergeDataCfg.GetColorById(int(v)) + if arr[2] == "0" && GoUtil.InStringArray(color, emitProduct) { chess = append(chess, int(v)) } } diff --git a/src/server/game/mod/compensation/compensation.go b/src/server/game/mod/compensation/compensation.go index 45f55548..de52852a 100644 --- a/src/server/game/mod/compensation/compensation.go +++ b/src/server/game/mod/compensation/compensation.go @@ -21,12 +21,12 @@ func (c *Compensation) Set20250910() { c.C20250910 = true } -func (c *Compensation) Compensation20250910(UserName string) []*item.Item { +func (c *Compensation) Compensation20250910(userName string) []*item.Item { c.Set20250910() // 获取补偿物品 items := make([]*item.Item, 0, len(Compensation20250910_UserList)) for i := 1; i <= len(Compensation20250910_UserList); i++ { - if GoUtil.InStringArray(UserName, Compensation20250910_UserList[i]) { + if GoUtil.InStringArray(userName, Compensation20250910_UserList[i]) { return Compensation20250910_Mail_Item[i] } } diff --git a/src/server/game/mod/daily_task/DailyFunc.go b/src/server/game/mod/daily_task/DailyFunc.go index 55eb6092..34d68644 100644 --- a/src/server/game/mod/daily_task/DailyFunc.go +++ b/src/server/game/mod/daily_task/DailyFunc.go @@ -8,12 +8,11 @@ import ( "sort" ) -func getTaskReward(Id, AreaId, activityId int) []*item.Item { - - switch Id { +func getTaskReward(id, areaId, activityId int) []*item.Item { + switch id { case 2: - StarNum := int(50 * math.Pow(1.04, float64(AreaId))) - return []*item.Item{{Id: item.ITEM_STAR_ID, Num: StarNum}} + starNum := int(50 * math.Pow(1.04, float64(areaId))) + return []*item.Item{{Id: item.ITEM_STAR_ID, Num: starNum}} case 3: return []*item.Item{{Id: item.ITEM_ENERGY_ID, Num: 10}} default: // case 1 及其他 @@ -24,16 +23,16 @@ func getTaskReward(Id, AreaId, activityId int) []*item.Item { // randJackpot 随机选取 num 个奖池项,约束:不允许连续两个 is_card=1 的项相邻。 // 最多尝试 100 次,超时则返回最后一次结果。 func randJackpot(jackpot map[int]dailyTaskCfg.Jackpot, num int) map[int][]*item.Item { - Ids := GoUtil.GetMapKey(jackpot) + ids := GoUtil.GetMapKey(jackpot) var lastIds1 []int for t := 0; t <= 100; t++ { - Ids1 := GoUtil.RandSliceNum(Ids, num) - sort.Ints(Ids1) - lastIds1 = Ids1 + ids1 := GoUtil.RandSliceNum(ids, num) + sort.Ints(ids1) + lastIds1 = ids1 prevIsCard := 0 valid := true cardCount := 0 - for _, k := range Ids1 { + for _, k := range ids1 { curIsCard := jackpot[k].Is_card if prevIsCard == 1 && curIsCard == 1 { valid = false @@ -49,7 +48,7 @@ func randJackpot(jackpot map[int]dailyTaskCfg.Jackpot, num int) map[int][]*item. } if valid { r := make(map[int][]*item.Item, num) - for _, k := range Ids1 { + for _, k := range ids1 { r[k] = jackpot[k].Items } return r diff --git a/src/server/game/mod/decorate/Decorate.go b/src/server/game/mod/decorate/Decorate.go index e7eead07..b5bfac39 100644 --- a/src/server/game/mod/decorate/Decorate.go +++ b/src/server/game/mod/decorate/Decorate.go @@ -65,16 +65,16 @@ func (d *Decorate) Decorate(areaId int, decorateId int) ([]*item.Item, error) { if _, ok := d.FinishList[decorateId]; ok { return nil, fmt.Errorf("decorateId already finished") } - SortList := decorateCfg.GetAllSortIdByAreaId(areaId) - if !GoUtil.InArray(decorateId, SortList) { + sortList := decorateCfg.GetAllSortIdByAreaId(areaId) + if !GoUtil.InArray(decorateId, sortList) { return nil, fmt.Errorf("decorateId not in areaId") } d.FinishList[decorateId] = struct{}{} d.Progress++ - Item := decorateCfg.GetProgressReward(areaId, d.Progress) - Item1 := decorateCfg.GetDecoarteReward(areaId, decorateId) - Item = append(Item, Item1...) - if d.Progress >= len(SortList) { + items := decorateCfg.GetProgressReward(areaId, d.Progress) + items1 := decorateCfg.GetDecoarteReward(areaId, decorateId) + items = append(items, items1...) + if d.Progress >= len(sortList) { d.AreaId++ d.Progress = 0 d.FinishList = make(map[int]struct{}) @@ -82,31 +82,31 @@ func (d *Decorate) Decorate(areaId int, decorateId int) ([]*item.Item, error) { } d.DecorateNum++ - return Item, nil + return items, nil } // 获取装饰增加体力 func (d *Decorate) GetDecorateAddEnergy(cnt int) []*item.Item { - EnergyNum := decorateCfg.GetDecorateAddEnergy() - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, EnergyNum*cnt)} + energyNum := decorateCfg.GetDecorateAddEnergy() + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, energyNum*cnt)} } // 获取装饰消耗 -func (d *Decorate) GetDecorateCostItem(AreaId, DecorateId int, DecorateOffIsExist bool) ([]*item.Item, int, []*item.Item) { - Item := decorateCfg.GetStarCost(AreaId, DecorateId) - PetExp := decorateCfg.GetDecoratePExp(AreaId, DecorateId) - Id := decorateCfg.GetIdBySenceAndLv(AreaId, DecorateId) - if DecorateOffIsExist { - OffRate := limitedTimeEventCfg.GetDecorateOffDiscount(AreaId, DecorateId) - Item = int(math.Ceil(float64(Item) * float64(OffRate))) +func (d *Decorate) GetDecorateCostItem(areaId, decorateId int, decorateOffIsExist bool) ([]*item.Item, int, []*item.Item) { + itemNum := decorateCfg.GetStarCost(areaId, decorateId) + petExp := decorateCfg.GetDecoratePExp(areaId, decorateId) + id := decorateCfg.GetIdBySenceAndLv(areaId, decorateId) + if decorateOffIsExist { + offRate := limitedTimeEventCfg.GetDecorateOffDiscount(areaId, decorateId) + itemNum = int(math.Ceil(float64(itemNum) * float64(offRate))) } - Items := []*item.Item{item.NewItem(item.ITEM_STAR_ID, Item)} - PartItem := d.PartCost[Id] - PartItemList := make([]*item.Item, 0) - if PartItem != nil { - Items = append(Items, PartItem.Items...) - PartItemList = PartItem.Items - delete(d.PartCost, Id) + items := []*item.Item{item.NewItem(item.ITEM_STAR_ID, itemNum)} + partCostInfo := d.PartCost[id] + partItems := make([]*item.Item, 0) + if partCostInfo != nil { + items = append(items, partCostInfo.Items...) + partItems = partCostInfo.Items + delete(d.PartCost, id) } // 清理旧区域零件;若当前区域全部消耗完则预加载下一区域 for k := range d.PartCost { @@ -117,17 +117,17 @@ func (d *Decorate) GetDecorateCostItem(AreaId, DecorateId int, DecorateOffIsExis if len(d.PartCost) == 0 { d.initPartCost(d.AreaId + 1) } - return Items, PetExp, PartItemList + return items, petExp, partItems } func (d *Decorate) GetNextNeedStar() int { - DecorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId) - SubAlice := GoUtil.SubSlices(DecorateAll, GoUtil.MapIntToIntSlice(d.FinishList)) + decorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId) + subAlice := GoUtil.SubSlices(decorateAll, GoUtil.MapIntToIntSlice(d.FinishList)) orderFactor := orderCfg.GetOrderFactor(d.GetAreaId()) - sort.Ints(SubAlice) - if len(SubAlice) > 0 { - NeedStar := decorateCfg.GetStarCost(d.AreaId, SubAlice[0]) - return (NeedStar*orderFactor)/1000 + NeedStar + sort.Ints(subAlice) + if len(subAlice) > 0 { + needStar := decorateCfg.GetStarCost(d.AreaId, subAlice[0]) + return (needStar*orderFactor)/1000 + needStar } return 0 } @@ -137,73 +137,73 @@ func (d *Decorate) GetAreaCost() int { } // 一键装饰 -func (d *Decorate) DecorateAll(Star int, DecorateOffIsExist bool) ([]*item.Item, []*item.Item, int, []int, []interface{}, int) { - DecorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId) - SubAlice := GoUtil.SubSlices(DecorateAll, GoUtil.MapIntToIntSlice(d.FinishList)) - sort.Ints(SubAlice) - SubItem := 0 - SubItems := make([]*item.Item, 0) - AddItem := make([]*item.Item, 0) - DecorateList := make([]int, 0) - Log := make([]interface{}, 0) - Num := 0 - PetExp := 0 - for _, v := range SubAlice { - Id := decorateCfg.GetIdBySenceAndLv(d.AreaId, v) - PartItem := d.PartCost[Id] - if PartItem != nil { +func (d *Decorate) DecorateAll(star int, decorateOffIsExist bool) ([]*item.Item, []*item.Item, int, []int, []interface{}, int) { + decorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId) + subAlice := GoUtil.SubSlices(decorateAll, GoUtil.MapIntToIntSlice(d.FinishList)) + sort.Ints(subAlice) + subItem := 0 + subItems := make([]*item.Item, 0) + addItem := make([]*item.Item, 0) + decorateList := make([]int, 0) + logList := make([]interface{}, 0) + num := 0 + petExp := 0 + for _, v := range subAlice { + id := decorateCfg.GetIdBySenceAndLv(d.AreaId, v) + partItem := d.PartCost[id] + if partItem != nil { break } - NeedStar := decorateCfg.GetStarCost(d.AreaId, v) - if DecorateOffIsExist { - OffRate := limitedTimeEventCfg.GetDecorateOffDiscount(d.AreaId, v) - NeedStar = int(math.Ceil(float64(NeedStar) * float64(OffRate))) + needStar := decorateCfg.GetStarCost(d.AreaId, v) + if decorateOffIsExist { + offRate := limitedTimeEventCfg.GetDecorateOffDiscount(d.AreaId, v) + needStar = int(math.Ceil(float64(needStar) * float64(offRate))) } - if Star < NeedStar { + if star < needStar { break } - Star -= NeedStar - SubItem += NeedStar + star -= needStar + subItem += needStar d.FinishList[v] = struct{}{} d.Progress++ d.DecorateNum++ - Num++ - Item := decorateCfg.GetProgressReward(d.AreaId, d.Progress) - Item = append(Item, decorateCfg.GetDecoarteReward(d.AreaId, v)...) - if len(Item) > 0 { - if d.Progress >= len(DecorateAll) { - Log = append(Log, map[string]interface{}{ + num++ + items := decorateCfg.GetProgressReward(d.AreaId, d.Progress) + items = append(items, decorateCfg.GetDecoarteReward(d.AreaId, v)...) + if len(items) > 0 { + if d.Progress >= len(decorateAll) { + logList = append(logList, map[string]interface{}{ "deco_step_id": fmt.Sprintf("%d_%d", d.AreaId+1, 0), - "item_list": Item, + "item_list": items, }) } else { - Log = append(Log, map[string]interface{}{ + logList = append(logList, map[string]interface{}{ "deco_step_id": fmt.Sprintf("%d_%d", d.AreaId, d.Progress), - "item_list": Item, + "item_list": items, }) } } - PetExp += decorateCfg.GetDecoratePExp(d.AreaId, v) - AddItem = append(AddItem, Item...) - DecorateList = append(DecorateList, v) + petExp += decorateCfg.GetDecoratePExp(d.AreaId, v) + addItem = append(addItem, items...) + decorateList = append(decorateList, v) } - if d.Progress >= len(DecorateAll) { + if d.Progress >= len(decorateAll) { d.AreaId++ d.Progress = 0 d.FinishList = make(map[int]struct{}) d.prunePartCost() } - SubItems = append(SubItems, item.NewItem(item.ITEM_STAR_ID, SubItem)) - return SubItems, AddItem, Num, DecorateList, Log, PetExp + subItems = append(subItems, item.NewItem(item.ITEM_STAR_ID, subItem)) + return subItems, addItem, num, decorateList, logList, petExp } // 获取装饰信息 func (d *Decorate) BackData() *msg.ResDecorateInfo { - var PartRes []*msg.DecoratePart + var partRes []*msg.DecoratePart for k, v := range d.PartCost { - PartRes = append(PartRes, &msg.DecoratePart{ + partRes = append(partRes, &msg.DecoratePart{ Id: int32(k), Items: item.ItemToMsg(v.Items), }) @@ -212,7 +212,7 @@ func (d *Decorate) BackData() *msg.ResDecorateInfo { AreaId: int32(d.AreaId), MFinishList: GoUtil.MapIntToSlice(d.FinishList), RewardArea: GoUtil.IntToInt32(d.AreaReward), - Parts: PartRes, + Parts: partRes, } } @@ -238,49 +238,49 @@ func (d *Decorate) GetDecorateNum() int { } // 获取零件 -func (d *Decorate) GetPart(Num int) map[int]int { +func (d *Decorate) GetPart(num int) map[int]int { d.initPartPool() res := make(map[int]int) - ClassNum := min(Num, 3) - ClassList := d.GetPartClass(ClassNum) - NewClassList := d.sortClass(ClassList) - for i := range Num { - Class := NewClassList[i%ClassNum] - d.PartPool[Class]-- - res[Class]++ + classNum := min(num, 3) + classList := d.GetPartClass(classNum) + newClassList := d.sortClass(classList) + for i := range num { + class := newClassList[i%classNum] + d.PartPool[class]-- + res[class]++ } return res } -func (d *Decorate) sortClass(Class []int) []int { +func (d *Decorate) sortClass(class []int) []int { d.initPartPool() type sortItem struct { Id int Num int } - sortList := make([]sortItem, len(Class)) - for i, v := range Class { + sortList := make([]sortItem, len(class)) + for i, v := range class { sortList[i] = sortItem{Id: v, Num: d.PartPool[v]} } sort.Slice(sortList, func(i, j int) bool { return sortList[i].Num > sortList[j].Num }) - res := make([]int, len(Class)) + res := make([]int, len(class)) for i, v := range sortList { res[i] = v.Id } return res } -func (d *Decorate) GetPartClass(Num int) []int { - res := make([]int, 0, Num) - for range Num { +func (d *Decorate) GetPartClass(num int) []int { + res := make([]int, 0, num) + for i := 0; i < num; i++ { if len(d.PartClassPool) == 0 { d.initPartClassPool() } - Id, newPool := GoUtil.PopSlice(d.PartClassPool) + id, newPool := GoUtil.PopSlice(d.PartClassPool) d.PartClassPool = newPool - res = append(res, Id) + res = append(res, id) } return res } @@ -288,35 +288,35 @@ func (d *Decorate) GetPartClass(Num int) []int { // 初始化零件类别池,优先保证每个类别至少出现一次 func (d *Decorate) initPartClassPool() { if len(d.PartClassPool) == 0 { - ClassList := decorateCfg.GetAllPartId() - r1 := GoUtil.SubSlices(ClassList, d.LastPart) + classList := decorateCfg.GetAllPartId() + r1 := GoUtil.SubSlices(classList, d.LastPart) c1 := GoUtil.RandSlice(r1) - r2 := GoUtil.SubSlices(ClassList, []int{c1}) + r2 := GoUtil.SubSlices(classList, []int{c1}) r3 := GoUtil.ShuffleArray(r2) d.PartClassPool = append([]int{c1}, r3...) } } func (d *Decorate) initPartPool() { - IsEmpty := true + isEmpty := true for _, v := range d.PartPool { if v > 0 { - IsEmpty = false + isEmpty = false break } } - if IsEmpty { - PartList := decorateCfg.GetAllPartId() - for _, v := range PartList { + if isEmpty { + partList := decorateCfg.GetAllPartId() + for _, v := range partList { d.PartPool[v] = 7 } } } // 初始化零件消耗,预加载当前区域和下一区域的零件消耗,减少玩家装饰时的卡顿感 -func (d *Decorate) initPartCost(AreaId int) { - AllPartList := decorateCfg.GetPartNumByAreaId(AreaId) - for k, v := range AllPartList { +func (d *Decorate) initPartCost(areaId int) { + allPartList := decorateCfg.GetPartNumByAreaId(areaId) + for k, v := range allPartList { // 初始零件消耗写死 if k == 33 { d.PartCost[k] = &PartCostInfo{ @@ -336,13 +336,13 @@ func (d *Decorate) initPartCost(AreaId int) { } continue } - PartList := d.GetPart(v) - Items := make([]*item.Item, 0) - for k1, v1 := range PartList { - Items = append(Items, item.NewItem(k1, v1)) + partList := d.GetPart(v) + items := make([]*item.Item, 0) + for k1, v1 := range partList { + items = append(items, item.NewItem(k1, v1)) } d.PartCost[k] = &PartCostInfo{ - Items: Items, + Items: items, } } } diff --git a/src/server/game/mod/emoji/emoji.go b/src/server/game/mod/emoji/emoji.go index 9aa73243..f55a1669 100644 --- a/src/server/game/mod/emoji/emoji.go +++ b/src/server/game/mod/emoji/emoji.go @@ -45,31 +45,31 @@ func (e *EmojiMod) GetEmojiNum() int { } // 设置表情,Id为0表示清空该类型表情 -func (e *EmojiMod) SetEmoji(Id, Type int) error { - if Id == 0 { - e.Set[Type] = Id +func (e *EmojiMod) SetEmoji(id, eType int) error { + if id == 0 { + e.Set[eType] = id return nil } - if _, ok := e.List[Id]; !ok { + if _, ok := e.List[id]; !ok { return fmt.Errorf("emoji id not exist") } - e.Set[Type] = Id + e.Set[eType] = id return nil } // 解锁表情,Time为解锁时长,单位为秒 -func (e *EmojiMod) Unlock(Id, Time int) error { - v, ok := e.List[Id] +func (e *EmojiMod) Unlock(id, time int) error { + v, ok := e.List[id] if ok { if v.Ts == 0 { return nil } - v.Ts += int64(Time) + v.Ts += int64(time) return nil } now := GoUtil.Now() - e.List[Id] = &Emoji{ - Ts: now + int64(Time), + e.List[id] = &Emoji{ + Ts: now + int64(time), AddTime: now, } return nil diff --git a/src/server/game/mod/endless/Endless.go b/src/server/game/mod/endless/Endless.go index 994e3a89..7fcbd28a 100644 --- a/src/server/game/mod/endless/Endless.go +++ b/src/server/game/mod/endless/Endless.go @@ -35,19 +35,19 @@ func (e *EndlessMod) InitData() { } // 零点更新 重置礼包 -func (e *EndlessMod) ZeroUpdate(MaxMoney float64, Lv int) { +func (e *EndlessMod) ZeroUpdate(maxMoney float64, lv int) { e.List = make(map[int]*Endless) e.Auto = 1 - FirstMoney := 0.0 - if MaxMoney > 0 { - m := MaxMoney / 10 - GradeList := []float64{1.99, 3.99, 5.99, 7.99, 9.99} + firstMoney := 0.0 + if maxMoney > 0 { + m := maxMoney / 10 + gradeList := []float64{1.99, 3.99, 5.99, 7.99, 9.99} type duch struct { Grade float64 Num float64 } - duchList := make([]duch, 0, len(GradeList)) - for _, v := range GradeList { + duchList := make([]duch, 0, len(gradeList)) + for _, v := range gradeList { duchList = append(duchList, duch{ Grade: v, Num: math.Abs(v - m), @@ -57,23 +57,23 @@ func (e *EndlessMod) ZeroUpdate(MaxMoney float64, Lv int) { sort.Slice(duchList, func(i, j int) bool { return duchList[i].Num < duchList[j].Num }) - FirstMoney = duchList[0].Grade - if FirstMoney == 0 { - FirstMoney = 9.99 + firstMoney = duchList[0].Grade + if firstMoney == 0 { + firstMoney = 9.99 } } - money := FirstMoney + money := firstMoney for range 3 { - e.appendGrade(money, Lv) + e.appendGrade(money, lv) money = endlessCfg.NextMoney(money) } e.Id = 1 } // appendGrade 初始化一档礼包并合并到列表 -func (e *EndlessMod) appendGrade(money float64, Lv int) { - r, autoNext := initGrade(money, e.Auto, Lv) +func (e *EndlessMod) appendGrade(money float64, lv int) { + r, autoNext := initGrade(money, e.Auto, lv) e.Auto = autoNext for k, v := range r { e.List[k] = v @@ -82,7 +82,7 @@ func (e *EndlessMod) appendGrade(money float64, Lv int) { } // 领取免费礼包 -func (e *EndlessMod) GetReward(Lv int) ([]*item.Item, error) { +func (e *EndlessMod) GetReward(lv int) ([]*item.Item, error) { v, ok := e.List[e.Id] if !ok { return nil, fmt.Errorf("EndlessMod Reward Id:%d not found", e.Id) @@ -93,7 +93,7 @@ func (e *EndlessMod) GetReward(Lv int) ([]*item.Item, error) { delete(e.List, e.Id) e.Id++ if v1 := e.List[e.Id]; v1 != nil && v1.Type == ENDLESS_TYPE_CHARGE { //领完一阶段 随机新的一阶段 - e.appendGrade(endlessCfg.NextMoney(e.LastMoney), Lv) + e.appendGrade(endlessCfg.NextMoney(e.LastMoney), lv) } return v.Items, nil } @@ -114,12 +114,12 @@ func (e *EndlessMod) BackData() *msg.ResEndless { } // 处理充值礼包 -func (e *EndlessMod) Fire(ChargeId int) []*item.Item { +func (e *EndlessMod) Fire(chargeId int) []*item.Item { v, ok := e.List[e.Id] if !ok { return nil } - if v.ChargeId != ChargeId { + if v.ChargeId != chargeId { return nil } delete(e.List, e.Id) diff --git a/src/server/game/mod/endless/endless_func.go b/src/server/game/mod/endless/endless_func.go index 494f0353..d08a30c2 100644 --- a/src/server/game/mod/endless/endless_func.go +++ b/src/server/game/mod/endless/endless_func.go @@ -8,78 +8,78 @@ import ( ) // 初始化奖励 -func InitReward(Energy float64, Lv int) []*item.Item { +func InitReward(energy float64, lv int) []*item.Item { numRand := map[int]int{1: 30, 2: 60, 3: 10} - Num := Util.RandMap(numRand) - PerEnergy := endlessCfg.GetPerEnergy(item.ITEM_ENERGY_ID) - getNum := func(energy, preEnergy float64) int { - num := int(energy / preEnergy) + num := Util.RandMap(numRand) + perEnergy := endlessCfg.GetPerEnergy(item.ITEM_ENERGY_ID) + getNum := func(energy, perEnergy float64) int { + num := int(energy / perEnergy) num = int(math.Round(float64(num)/5.0) * 5) return max(num, 5) // 最少5个能量 } - if Num == 1 { - ItemNum := getNum(Energy, PerEnergy) - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, ItemNum)} + if num == 1 { + itemNum := getNum(energy, perEnergy) + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, itemNum)} } - if Num == 2 { - ItemId := endlessCfg.GetItemId(Energy, 0, Lv) - if len(ItemId) == 0 { - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, getNum(Energy, PerEnergy))} + if num == 2 { + itemId := endlessCfg.GetItemId(energy, 0, lv) + if len(itemId) == 0 { + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, getNum(energy, perEnergy))} } - RandItem := Util.RandSlice(ItemId) - ItemEnergy := endlessCfg.GetEnergyByItemId(RandItem) - LastEnergy := Energy - ItemEnergy - ItemNum := getNum(LastEnergy, PerEnergy) - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, ItemNum), item.NewItem(RandItem, 1)} + randItem := Util.RandSlice(itemId) + itemEnergy := endlessCfg.GetEnergyByItemId(randItem) + lastEnergy := energy - itemEnergy + itemNum := getNum(lastEnergy, perEnergy) + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, itemNum), item.NewItem(randItem, 1)} } - if Num == 3 { - ItemId := endlessCfg.GetItemId(Energy, 0, Lv) - if len(ItemId) == 0 { - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, getNum(Energy, PerEnergy))} + if num == 3 { + itemId := endlessCfg.GetItemId(energy, 0, lv) + if len(itemId) == 0 { + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, getNum(energy, perEnergy))} } - RandItem1 := Util.RandSlice(ItemId) - Type := endlessCfg.GetType(RandItem1) - ItemEnergy := endlessCfg.GetEnergyByItemId(RandItem1) - LastEnergy := Energy - ItemEnergy - ItemId = endlessCfg.GetItemId(LastEnergy, Type, Lv) - if len(ItemId) == 0 { - ItemNum := getNum(LastEnergy, PerEnergy) - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, ItemNum), item.NewItem(RandItem1, 1)} + randItem1 := Util.RandSlice(itemId) + itemType := endlessCfg.GetType(randItem1) + itemEnergy := endlessCfg.GetEnergyByItemId(randItem1) + lastEnergy := energy - itemEnergy + itemId = endlessCfg.GetItemId(lastEnergy, itemType, lv) + if len(itemId) == 0 { + itemNum := getNum(lastEnergy, perEnergy) + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, itemNum), item.NewItem(randItem1, 1)} } - RandItem2 := Util.RandSlice(ItemId) - ItemEnergy = endlessCfg.GetEnergyByItemId(RandItem2) - LastEnergy = LastEnergy - ItemEnergy - ItemNum := getNum(LastEnergy, PerEnergy) - return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, ItemNum), item.NewItem(RandItem1, 1), item.NewItem(RandItem2, 1)} + randItem2 := Util.RandSlice(itemId) + itemEnergy = endlessCfg.GetEnergyByItemId(randItem2) + lastEnergy = lastEnergy - itemEnergy + itemNum := getNum(lastEnergy, perEnergy) + return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, itemNum), item.NewItem(randItem1, 1), item.NewItem(randItem2, 1)} } return nil } // 初始化档次奖励 -func initGrade(Money float64, Auto, Lv int) (map[int]*Endless, int) { - Energy := endlessCfg.GetEnergy(Money) - Per := []float64{0.5, 0.3, 0.2, 0.1} +func initGrade(money float64, auto, lv int) (map[int]*Endless, int) { + energy := endlessCfg.GetEnergy(money) + per := []float64{0.5, 0.3, 0.2, 0.1} result := make(map[int]*Endless) for i := 1; i < 5; i++ { Type := ENDLESS_TYPE_FREE Charge := 0 if i == 1 { - if Money > 0 { + if money > 0 { Type = ENDLESS_TYPE_CHARGE - Charge = endlessCfg.GetChargeId(Money) + Charge = endlessCfg.GetChargeId(money) } else { Type = ENDLESS_TYPE_AD } } - result[Auto] = &Endless{ + result[auto] = &Endless{ ChargeId: Charge, Type: Type, - Items: InitReward(Energy*Per[i-1], Lv), + Items: InitReward(energy*per[i-1], lv), } - Auto++ + auto++ } - return result, Auto + return result, auto } diff --git a/src/server/game/mod/face/Face.go b/src/server/game/mod/face/Face.go index 546cfc97..91c8050d 100644 --- a/src/server/game/mod/face/Face.go +++ b/src/server/game/mod/face/Face.go @@ -17,10 +17,10 @@ type Face struct { AddTime int64 } -func (f *FaceMod) Login(RegisterTime int64) { +func (f *FaceMod) Login(registerTime int64) { for _, v := range f.List { if v.AddTime == 0 { - v.AddTime = RegisterTime + v.AddTime = registerTime } } } @@ -31,8 +31,8 @@ func (f *FaceMod) InitData() { f.List = make(map[int]*Face) f.SetId = 1 } - InitId := faceCfg.GetInitList() - for _, v := range InitId { + initId := faceCfg.GetInitList() + for _, v := range initId { if _, ok := f.List[v]; ok { continue } @@ -49,29 +49,29 @@ func (f *FaceMod) GetFaceNum() int { } // 设置表情,Id为0表示清空表情 -func (f *FaceMod) SetFace(Id int) error { - if Id != 0 { - if _, ok := f.List[Id]; !ok { +func (f *FaceMod) SetFace(id int) error { + if id != 0 { + if _, ok := f.List[id]; !ok { return fmt.Errorf("face id not exist") } } - f.SetId = Id + f.SetId = id return nil } // 解锁表情 -func (f *FaceMod) Unlock(Id, Time int) error { - v, ok := f.List[Id] +func (f *FaceMod) Unlock(id, time int) error { + v, ok := f.List[id] if ok { if v.Ts == 0 { return nil } - v.Ts += int64(Time) + v.Ts += int64(time) return nil } now := GoUtil.Now() - f.List[Id] = &Face{ - Ts: now + int64(Time), + f.List[id] = &Face{ + Ts: now + int64(time), AddTime: now, } return nil diff --git a/src/server/game/mod/friend/Friend.go b/src/server/game/mod/friend/Friend.go index b7636ab6..62cda8d1 100644 --- a/src/server/game/mod/friend/Friend.go +++ b/src/server/game/mod/friend/Friend.go @@ -189,7 +189,7 @@ type LogInfo struct { } // 初始化数据 -func (f *FriendMod) InitData(M_DwUin int64) { +func (f *FriendMod) InitData(m_DwUin int64) { if f.FriendList == nil { f.FriendList = make(map[int]struct{}) } @@ -225,11 +225,11 @@ func (f *FriendMod) InitData(M_DwUin int64) { f.NewApplyList = make(map[int]*ApplyInfo) } for k, v := range f.Card { - if v.AUid != 0 && !f.CheckFriend(v.AUid) && v.AUid != int(M_DwUin) { + if v.AUid != 0 && !f.CheckFriend(v.AUid) && v.AUid != int(m_DwUin) { delete(f.Card, k) continue } - if v.BUid != 0 && !f.CheckFriend(v.BUid) && v.BUid != int(M_DwUin) { + if v.BUid != 0 && !f.CheckFriend(v.BUid) && v.BUid != int(m_DwUin) { delete(f.Card, k) continue } @@ -259,16 +259,16 @@ func (f *FriendMod) version() { Uid int Time int64 } - PlayerList := make([]sortData, 0) + playerList := make([]sortData, 0) for k, v := range f.NewApplyList { - PlayerList = append(PlayerList, sortData{k, v.Time}) + playerList = append(playerList, sortData{k, v.Time}) } - sort.Slice(PlayerList, func(i, j int) bool { - return PlayerList[i].Time > PlayerList[j].Time + sort.Slice(playerList, func(i, j int) bool { + return playerList[i].Time > playerList[j].Time }) - for i := 0; i < len(PlayerList); i++ { + for i := 0; i < len(playerList); i++ { if i >= friendCfg.GetApplyListLimit() { - delete(f.NewApplyList, PlayerList[i].Uid) + delete(f.NewApplyList, playerList[i].Uid) } } } @@ -308,18 +308,18 @@ func (f *FriendMod) SetSyncId(Id int64) { } // 好友交互 -func (f *FriendMod) Interact(id, t int, T int64) { +func (f *FriendMod) Interact(id, t int, visitTime int64) { if _, ok := f.NewFriendList[id]; !ok { return } for _, v := range f.NewFriendList[id].Interact { - if v.Type == t && v.VisitTime < T { - v.VisitTime = T + if v.Type == t && v.VisitTime < visitTime { + v.VisitTime = visitTime return } } f.NewFriendList[id].Interact = append(f.NewFriendList[id].Interact, &Interact{ - VisitTime: T, + VisitTime: visitTime, Type: t, }) if len(f.NewFriendList[id].Interact) > 30 { @@ -332,14 +332,14 @@ func (f *FriendMod) GetInteractTime(id int) int64 { if _, ok := f.NewFriendList[id]; !ok { return 0 } - var LastTime int64 + var lastTime int64 // 获取最近一次拜访或点赞的时间 for _, v := range f.NewFriendList[id].Interact { - if v.VisitTime > LastTime { - LastTime = v.VisitTime + if v.VisitTime > lastTime { + lastTime = v.VisitTime } } - return LastTime + return lastTime } // 获取好友添加时间 @@ -368,13 +368,13 @@ func (f *FriendMod) GetCardInfo(Id string) *card.CardInfo { } // 设置卡牌交换信息 -func (f *FriendMod) SetCardInfo(CardInfo *card.CardInfo) { - f.Card[CardInfo.Id] = CardInfo +func (f *FriendMod) SetCardInfo(cardInfo *card.CardInfo) { + f.Card[cardInfo.Id] = cardInfo } // 删除卡牌交换信息 -func (f *FriendMod) DelCardInfo(Id string) { - delete(f.Card, Id) +func (f *FriendMod) DelCardInfo(id string) { + delete(f.Card, id) } // 删除好友 @@ -389,8 +389,8 @@ func (f *FriendMod) DelFriend(id int) { } // 检查是否好友 -func (f *FriendMod) CheckFriend(Uid int) bool { - v, ok := f.NewFriendList[Uid] +func (f *FriendMod) CheckFriend(uid int) bool { + v, ok := f.NewFriendList[uid] return ok && v.DelTime == 0 } @@ -433,14 +433,14 @@ func (f *FriendMod) GetFriendList() map[int]*FriendInfo { // 获取好友uid列表 func (f *FriendMod) GetSimpleFriendList() []int { - rs := make([]int, 0, len(f.NewFriendList)) + res := make([]int, 0, len(f.NewFriendList)) for k, v := range f.NewFriendList { if v.DelTime != 0 { continue } - rs = append(rs, k) + res = append(res, k) } - return rs + return res } // 检查是否有新的好友 @@ -450,7 +450,7 @@ func (f *FriendMod) CheckAddBefore(uid int) bool { } // 收到申请 -func (f *FriendMod) AddFriendApply(Uid, Type int, sendTime int64) bool { +func (f *FriendMod) AddFriendApply(uid, aType int, sendTime int64) bool { if f.DailyGetApply >= friendCfg.GetDailyGetApplyLimit() { return true } @@ -461,7 +461,7 @@ func (f *FriendMod) AddFriendApply(Uid, Type int, sendTime int64) bool { } } // 好友申请列表只保留十条,好友码申请不受数量限制 - if code_type >= friendCfg.GetApplyListLimit() && Type != APPLY_TYPE_FRIEND_CODE { + if code_type >= friendCfg.GetApplyListLimit() && aType != APPLY_TYPE_FRIEND_CODE { return true } var minTime int64 @@ -478,8 +478,8 @@ func (f *FriendMod) AddFriendApply(Uid, Type int, sendTime int64) bool { } } } - f.NewApplyList[Uid] = &ApplyInfo{ - Type: Type, + f.NewApplyList[uid] = &ApplyInfo{ + Type: aType, Time: sendTime, } f.DailyGetApply++ @@ -487,29 +487,29 @@ func (f *FriendMod) AddFriendApply(Uid, Type int, sendTime int64) bool { } // 发送申请 -func (f *FriendMod) AddSendApply(Uid int) bool { - f.SendApply[Uid] = GoUtil.Now() +func (f *FriendMod) AddSendApply(uid int) bool { + f.SendApply[uid] = GoUtil.Now() return false } -func (f *FriendMod) CheckSendApply(Id int) bool { - _, ok := f.SendApply[Id] +func (f *FriendMod) CheckSendApply(uid int) bool { + _, ok := f.SendApply[uid] return ok } // 获取发送申请时间 -func (f *FriendMod) GetSendApplyTime(Id int) int64 { - if t, ok := f.SendApply[Id]; ok { +func (f *FriendMod) GetSendApplyTime(uid int) int64 { + if t, ok := f.SendApply[uid]; ok { return t } return 0 } // 同意申请 -func (f *FriendMod) AgreeApply(UId int) { - f.AddFriend(UId) - delete(f.SendApply, UId) - delete(f.NewApplyList, UId) +func (f *FriendMod) AgreeApply(uid int) { + f.AddFriend(uid) + delete(f.SendApply, uid) + delete(f.NewApplyList, uid) } // 增加好友日志 @@ -526,9 +526,9 @@ func (f *FriendMod) AddLog(uid, ltype int, param string, send int64) int { case LOG_TYPE_HANDBOOK_UPVOTE, LOG_TYPE_PLAYROOM_UPVOTE: f.AddBubble(f.AutoId, ltype, nil) case LOG_TYPE_TREASURE_HELP: - ItemNum := GoUtil.RandNum(2, 5) - ItemList := []*item.Item{item.NewItem(item.ITEM_STAR_ID, ItemNum)} - f.AddBubble(f.AutoId, ltype, ItemList) + itemNum := GoUtil.RandNum(2, 5) + items := []*item.Item{item.NewItem(item.ITEM_STAR_ID, itemNum)} + f.AddBubble(f.AutoId, ltype, items) } if len(f.Log) > 30 { f.Log = f.Log[len(f.Log)-30:] @@ -537,18 +537,18 @@ func (f *FriendMod) AddLog(uid, ltype int, param string, send int64) int { } // 增加气泡 -func (f *FriendMod) AddBubble(Id, Type int, ItemList []*item.Item) { - f.Bubble[Id] = &BubbleInfo{ - Id: Id, +func (f *FriendMod) AddBubble(id, bType int, items []*item.Item) { + f.Bubble[id] = &BubbleInfo{ + Id: id, Time: GoUtil.Now(), - Type: Type, - ItemList: ItemList, + Type: bType, + ItemList: items, } } // 获取气泡信息 -func (f *FriendMod) GetBubble(Id int) *msg.FriendBubbleInfo { - if v, ok := f.Bubble[Id]; ok { +func (f *FriendMod) GetBubble(id int) *msg.FriendBubbleInfo { + if v, ok := f.Bubble[id]; ok { return &msg.FriendBubbleInfo{ Id: int32(v.Id), Type: int32(v.Type), @@ -559,16 +559,16 @@ func (f *FriendMod) GetBubble(Id int) *msg.FriendBubbleInfo { } func (f *FriendMod) BubbleBackData() *msg.ResFriendBubble { - rs := make([]*msg.FriendBubbleInfo, 0, len(f.Bubble)) + res := make([]*msg.FriendBubbleInfo, 0, len(f.Bubble)) for _, v := range f.Bubble { - rs = append(rs, &msg.FriendBubbleInfo{ + res = append(res, &msg.FriendBubbleInfo{ Id: int32(v.Id), Type: int32(v.Type), Items: item.ItemToMsg(v.ItemList), }) } return &msg.ResFriendBubble{ - Bubble: rs, + Bubble: res, } } @@ -582,11 +582,11 @@ func (f *FriendMod) ResetGoldCardEx() { } // 增加活动日志 -func (f *FriendMod) AddActLog(Type int, Param string) { +func (f *FriendMod) AddActLog(actType int, param string) { f.ActivityLog = append(f.ActivityLog, &ActLogInfo{ - Type: Type, + Type: actType, Time: GoUtil.Now(), - Param: Param, + Param: param, }) if len(f.ActivityLog) > 20 { f.ActivityLog = f.ActivityLog[len(f.ActivityLog)-20:] @@ -594,10 +594,10 @@ func (f *FriendMod) AddActLog(Type int, Param string) { } // 时间线点赞 -func (f *FriendMod) Upvote(Id int) ([]*item.Item, int, error) { +func (f *FriendMod) Upvote(id int) ([]*item.Item, int, error) { info := &LogInfo{} for _, v := range f.Log { - if v.Id == Id { + if v.Id == id { info = v break } @@ -613,8 +613,8 @@ func (f *FriendMod) Upvote(Id int) ([]*item.Item, int, error) { } // 获取时间线点赞奖励 -func (f *FriendMod) GetReward(Id int) ([]*item.Item, error) { - info, ok := f.Bubble[Id] +func (f *FriendMod) GetReward(id int) ([]*item.Item, error) { + info, ok := f.Bubble[id] if !ok { return nil, fmt.Errorf("bubble not exist") } @@ -627,13 +627,12 @@ func (f *FriendMod) GetReward(Id int) ([]*item.Item, error) { default: return nil, fmt.Errorf("log type not support") } - delete(f.Bubble, Id) + delete(f.Bubble, id) return reward, nil } // 增加心愿单申请 -func (f *FriendMod) AddWishApply(Uid int64) error { - +func (f *FriendMod) AddWishApply(uid int64) error { return nil } @@ -649,8 +648,7 @@ func (f *FriendMod) GetWishApply() []*ApplyInfo { } // 同意心愿单申请 -func (f *FriendMod) ApplyWish(Uid int64) error { - +func (f *FriendMod) ApplyWish(uid int64) error { return fmt.Errorf("wish apply not exist") } @@ -663,28 +661,28 @@ func (f *FriendMod) GetActLogLast() *ActLogInfo { } // 增加待回复请求 -func (f *FriendMod) AddReplyInfo(Uid int, Type int, Param string, EndTime int64, Items []*item.Item) *ReplyInfo { +func (f *FriendMod) AddReplyInfo(uid int, rType int, param string, endTime int64, items []*item.Item) *ReplyInfo { f.AutoId++ - Reply := &ReplyInfo{ + reply := &ReplyInfo{ Id: f.AutoId, - Uid: Uid, - Type: Type, - Param: Param, + Uid: uid, + Type: rType, + Param: param, AddTime: GoUtil.Now(), - EndTime: EndTime, - Items: Items, + EndTime: endTime, + Items: items, } - f.ReplyList = append(f.ReplyList, Reply) + f.ReplyList = append(f.ReplyList, reply) if len(f.ReplyList) > 20 { f.ReplyList = f.ReplyList[len(f.ReplyList)-20:] } - return Reply + return reply } // 回复请求 -func (f *FriendMod) ReplyFriend(LogId int) *ReplyInfo { +func (f *FriendMod) ReplyFriend(logId int) *ReplyInfo { for _, v := range f.ReplyList { - if v.Id == LogId { + if v.Id == logId { v.Status = 1 v.ReplyTime = GoUtil.Now() return v @@ -721,14 +719,14 @@ func (f *FriendMod) GetSponsorReward() ([]*item.Item, error) { } // 增加好友推荐记录 -func (f *FriendMod) AddRecommend(Uid int) { +func (f *FriendMod) AddRecommend(uid int) { now := GoUtil.Now() - if v, ok := f.RecommendList[Uid]; ok { + if v, ok := f.RecommendList[uid]; ok { v.Time = now return } - f.RecommendList[Uid] = &Recommend{ - Uid: Uid, + f.RecommendList[uid] = &Recommend{ + Uid: uid, Time: now, } } @@ -749,14 +747,14 @@ func (f *FriendMod) AddDailyRecommend() error { return nil } -func (f *FriendMod) GreetingFriend(Uid int) { - if v, ok := f.NewFriendList[Uid]; ok { +func (f *FriendMod) GreetingFriend(uid int) { + if v, ok := f.NewFriendList[uid]; ok { v.Greeting = true } } -func (f *FriendMod) CheckGreeting(Uid int) bool { - if v, ok := f.NewFriendList[Uid]; ok { +func (f *FriendMod) CheckGreeting(uid int) bool { + if v, ok := f.NewFriendList[uid]; ok { return v.Greeting } return false diff --git a/src/server/game/mod/friend_treasure.go/friend_treasure.go b/src/server/game/mod/friend_treasure.go/friend_treasure.go index eabdb71c..c1ee34b7 100644 --- a/src/server/game/mod/friend_treasure.go/friend_treasure.go +++ b/src/server/game/mod/friend_treasure.go/friend_treasure.go @@ -47,11 +47,11 @@ func (f *FriendTreasureMod) ZeroUpdate() { } // 初始化游戏数据 -func (f *FriendTreasureMod) InitGame(List []*msg.TreasureInfo, List2 []int32) { - for _, v := range List { +func (f *FriendTreasureMod) InitGame(list []*msg.TreasureInfo, list2 []int32) { + for _, v := range list { f.List[int(v.Pos)] = v } - f.List2 = List2 + f.List2 = list2 f.Status = GAME_STATUS_START } @@ -62,12 +62,12 @@ func (f *FriendTreasureMod) AddStar(star, factor int) { } // 翻牌 -func (f *FriendTreasureMod) Flip(Pos int) ([]*item.Item, int64, error) { +func (f *FriendTreasureMod) Flip(pos int) ([]*item.Item, int64, error) { if f.Status == GAME_STATUS_IDLE { return nil, 0, fmt.Errorf("game not start") } f.Shift++ - info, ok := f.List[Pos] + info, ok := f.List[pos] if !ok { return nil, 0, fmt.Errorf("invalid position") } diff --git a/src/server/game/mod/guess_color/guess_color.go b/src/server/game/mod/guess_color/guess_color.go index 6d0ca9bf..ee27c9e7 100644 --- a/src/server/game/mod/guess_color/guess_color.go +++ b/src/server/game/mod/guess_color/guess_color.go @@ -51,16 +51,16 @@ func (g *GuessColorMod) InitData() { } } -func (g *GuessColorMod) Login(Id int) int { - OldId := g.Id - if Id == 0 { +func (g *GuessColorMod) Login(id int) int { + oldId := g.Id + if id == 0 { g.Id = 0 return 0 } - if g.Id == Id { + if g.Id == id { return 0 } - g.Id = Id + g.Id = id g.Pass = 1 g.Opponent = simplePlayer{ Name: randnameCfg.GetRandName(), @@ -71,11 +71,11 @@ func (g *GuessColorMod) Login(Id int) int { g.MapList = nil g.OMap = nil g.WinTime = guesscolorCfg.GetWinTime(g.Pass) - return OldId + return oldId } -func (g *GuessColorMod) ZeroUpdate(Id int) { - g.Login(Id) +func (g *GuessColorMod) ZeroUpdate(id int) { + g.Login(id) } func (g *GuessColorMod) FirstIn() []*item.Item { @@ -87,27 +87,27 @@ func (g *GuessColorMod) FirstIn() []*item.Item { } // 进行猜色 -func (g *GuessColorMod) Take(Map map[int32]int32, OMap map[int32]int32) { - if len(Map) > 0 { - g.MapList = append(g.MapList, Map) +func (g *GuessColorMod) Take(guessMap map[int32]int32, oMap map[int32]int32) { + if len(guessMap) > 0 { + g.MapList = append(g.MapList, guessMap) g.Guess++ } - g.OMap = OMap + g.OMap = oMap } // 获取失败奖励 func (g *GuessColorMod) GetLoseItem() []*item.Item { - Items := guesscolorCfg.GetLoseItem(g.Id) - Num := guesscolorCfg.GetPassNum(g.Pass) + items := guesscolorCfg.GetLoseItem(g.Id) + num := guesscolorCfg.GetPassNum(g.Pass) if len(g.MapList) > 0 { - LastMap := g.MapList[len(g.MapList)-1] - for _, v := range LastMap { + lastMap := g.MapList[len(g.MapList)-1] + for _, v := range lastMap { if v > 10 { - Num-- + num-- } } } - return item.MutilItem(Items, Num) + return item.MutilItem(items, num) } // 获取奖励 @@ -118,15 +118,15 @@ func (g *GuessColorMod) GetReward() ([]*item.Item, error) { if g.Guess < g.WinTime { return nil, fmt.Errorf("guess process not finish") } - Type := GAME_STATUS_FAIL + gType := GAME_STATUS_FAIL if g.Guess == guesscolorCfg.GetPassNum(g.Pass) { - Type = GAME_STATUS_SUCCESS + gType = GAME_STATUS_SUCCESS } - Item := guesscolorCfg.GetRewardItem(g.Pass, Type) + items := guesscolorCfg.GetRewardItem(g.Pass, gType) g.Pass++ g.Guess = 0 g.WinTime = guesscolorCfg.GetWinTime(g.Pass) g.MapList = nil g.OMap = nil - return Item, nil + return items, nil } diff --git a/src/server/game/mod/guide/Guide.go b/src/server/game/mod/guide/Guide.go index 7e48ec0a..6a6c4785 100644 --- a/src/server/game/mod/guide/Guide.go +++ b/src/server/game/mod/guide/Guide.go @@ -22,14 +22,14 @@ func (g *Guide) InitData() { } } -func (g *Guide) GetReward(Id int) ([]*item.Item, error) { - Items, Num := guidecfg.GetGuideReward(Id) - n := g.Reward[Id] - if n >= Num { - return nil, fmt.Errorf("Guide GetReward Id:%v has been received", Id) +func (g *Guide) GetReward(id int) ([]*item.Item, error) { + items, num := guidecfg.GetGuideReward(id) + n := g.Reward[id] + if n >= num { + return nil, fmt.Errorf("Guide GetReward Id:%v has been received", id) } - g.Reward[Id]++ - return Items, nil + g.Reward[id]++ + return items, nil } func (g *Guide) BackData() *msg.ResGuideInfo { diff --git a/src/server/game/mod/guide_task/guide_task.go b/src/server/game/mod/guide_task/guide_task.go index cf9e0795..7df792f8 100644 --- a/src/server/game/mod/guide_task/guide_task.go +++ b/src/server/game/mod/guide_task/guide_task.go @@ -51,15 +51,15 @@ func (gt *GuideTaskMod) Login() { if gt.UnlockTime == 0 { return } - LoginDay := (GoUtil.Now()-gt.UnlockTime)/86400 + 1 - gt.LoginDay[int(LoginDay)] = struct{}{} + loginDay := (GoUtil.Now()-gt.UnlockTime)/86400 + 1 + gt.LoginDay[int(loginDay)] = struct{}{} gt.Trigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_GUIDE_LOGIN, A: []interface{}{len(gt.LoginDay)}}) } // 解锁引导任务 func (gt *GuideTaskMod) Unlock(lv int) bool { - UnLockLv := GuideTaskCfg.GetUnlockLv() - if lv >= UnLockLv && gt.UnlockTime == 0 { + unLockLv := GuideTaskCfg.GetUnlockLv() + if lv >= unLockLv && gt.UnlockTime == 0 { gt.UnlockTime = GoUtil.Now() gt.Login() return true @@ -77,7 +77,7 @@ func (gt *GuideTaskMod) CheckOpen() bool { return GoUtil.Now()-gt.UnlockTime <= guideTaskOpenSeconds } -func (gt *GuideTaskMod) Trigger(Tr *quest.Trigger) bool { +func (gt *GuideTaskMod) Trigger(tr *quest.Trigger) bool { if !gt.CheckOpen() { return false } @@ -89,7 +89,7 @@ func (gt *GuideTaskMod) Trigger(Tr *quest.Trigger) bool { if v.Quest.Label == quest.TRIGGER_LABEL_GUIDE_LOGIN { v.Quest.A = []interface{}{gt.UnlockTime} } - update = quest.TriggerQuestProgress(&v.Quest, Tr) || update + update = quest.TriggerQuestProgress(&v.Quest, tr) || update if v.Quest.Status { v.Status = quest.QUEST_STATUS_FINISH } @@ -98,34 +98,34 @@ func (gt *GuideTaskMod) Trigger(Tr *quest.Trigger) bool { } // 获取任务奖励 -func (gt *GuideTaskMod) GetTaskReward(Id int) ([]*item.Item, error) { - task, ok := gt.Tasks[Id] +func (gt *GuideTaskMod) GetTaskReward(id int) ([]*item.Item, error) { + task, ok := gt.Tasks[id] if !ok { - return nil, fmt.Errorf("guide task %d not found", Id) + return nil, fmt.Errorf("guide task %d not found", id) } if task.Status != quest.QUEST_STATUS_FINISH { - return nil, fmt.Errorf("guide task %d not finished or already claimed", Id) + return nil, fmt.Errorf("guide task %d not finished or already claimed", id) } task.Status = quest.QUEST_STATUS_REWARD - gt.Active += GuideTaskCfg.GetTaskActive(Id) - return GuideTaskCfg.GetTaskRewardById(Id), nil + gt.Active += GuideTaskCfg.GetTaskActive(id) + return GuideTaskCfg.GetTaskRewardById(id), nil } // 获取活跃度奖励 -func (gt *GuideTaskMod) GetActiveReward(Id int) ([]*item.Item, error) { +func (gt *GuideTaskMod) GetActiveReward(id int) ([]*item.Item, error) { for _, v := range gt.Reward { - if v == Id { + if v == id { return nil, fmt.Errorf("active reward already got") } } - items, needActive := GuideTaskCfg.GetActiveReward(Id) + items, needActive := GuideTaskCfg.GetActiveReward(id) if items == nil { - return nil, fmt.Errorf("no active reward id %d", Id) + return nil, fmt.Errorf("no active reward id %d", id) } if gt.Active < needActive { return nil, fmt.Errorf("active not enough") } - gt.Reward = append(gt.Reward, Id) + gt.Reward = append(gt.Reward, id) return items, nil } diff --git a/src/server/game/mod/handbook/Handbook.go b/src/server/game/mod/handbook/Handbook.go index abdefa06..7bd3ee6c 100644 --- a/src/server/game/mod/handbook/Handbook.go +++ b/src/server/game/mod/handbook/Handbook.go @@ -33,62 +33,62 @@ func (h *Handbook) InitData() { } // 解锁图鉴 -func (h *Handbook) SetHandbook(Id int) bool { - if Id <= 0 { +func (h *Handbook) SetHandbook(id int) bool { + if id <= 0 { return false } - _, ok := h.BookList[Id] + _, ok := h.BookList[id] if ok { return false } - h.BookList[Id] = STATUS_IDLE + h.BookList[id] = STATUS_IDLE return true } // 领取图鉴奖励 -func (h *Handbook) GetHandbookReward(Id int) error { - status, ok := h.BookList[Id] +func (h *Handbook) GetHandbookReward(id int) error { + status, ok := h.BookList[id] if !ok { return errors.New("图鉴未解锁") } if status == STATUS_REWARD { return errors.New("图鉴奖励已领取") } - h.BookList[Id] = STATUS_REWARD + h.BookList[id] = STATUS_REWARD return nil } -func (h *Handbook) CollectItem(Id string, AllChess []int) ([]*item.Item, error) { +func (h *Handbook) CollectItem(id string, AllChess []int) ([]*item.Item, error) { for _, v := range AllChess { if _, ok := h.BookList[v]; !ok { return nil, fmt.Errorf("图鉴未解锁") } } - if _, ok := h.Collect[Id]; ok { + if _, ok := h.Collect[id]; ok { return nil, fmt.Errorf("已经领取过该奖励") } - Reward := handbookCfg.GetHandbookReward(Id) - if Reward == nil { + reward := handbookCfg.GetHandbookReward(id) + if reward == nil { return nil, fmt.Errorf("奖励不存在") } - h.Collect[Id] = struct{}{} - return Reward, nil + h.Collect[id] = struct{}{} + return reward, nil } func (h *Handbook) BackData() *msg.Handbook { - BookList := make([]*msg.HandbookInfo, 0, len(h.BookList)) + bookList := make([]*msg.HandbookInfo, 0, len(h.BookList)) for k, v := range h.BookList { - BookList = append(BookList, &msg.HandbookInfo{ + bookList = append(bookList, &msg.HandbookInfo{ ChessId: int32(k), Status: int32(v), }) } - Collect := make([]string, 0, len(h.Collect)) + collect := make([]string, 0, len(h.Collect)) for k := range h.Collect { - Collect = append(Collect, k) + collect = append(collect, k) } return &msg.Handbook{ - Handbooks: BookList, - Collect: Collect, + Handbooks: bookList, + Collect: collect, } } diff --git a/src/server/game/mod/invite/invite.go b/src/server/game/mod/invite/invite.go index 1cc26505..b737b9dc 100644 --- a/src/server/game/mod/invite/invite.go +++ b/src/server/game/mod/invite/invite.go @@ -27,25 +27,25 @@ func (i *InviteMod) AddInvite(id int) error { return nil } -func (i *InviteMod) GetReward(Index int) ([]*item.Item, error) { - if Index <= i.GetIndex { +func (i *InviteMod) GetReward(index int) ([]*item.Item, error) { + if index <= i.GetIndex { return nil, fmt.Errorf("index error") } - var Items []*item.Item + var items []*item.Item cur := i.GetIndex - for cur < Index { + for cur < index { cur++ - Need, Reward := inviteCfg.GetInviteReward(cur) - if Need == 0 { + need, reward := inviteCfg.GetInviteReward(cur) + if need == 0 { return nil, fmt.Errorf("invite reward not found") } - if len(i.InviteList) < Need { + if len(i.InviteList) < need { return nil, fmt.Errorf("invite not enough") } - Items = item.Merge(Items, Reward) + items = item.Merge(items, reward) } i.GetIndex = cur - return Items, nil + return items, nil } func (i *InviteMod) BackData() *msg.ResInviteFriendData { diff --git a/src/server/game/mod/item/Item.go b/src/server/game/mod/item/Item.go index 23eccc73..88f32cda 100644 --- a/src/server/game/mod/item/Item.go +++ b/src/server/game/mod/item/Item.go @@ -184,18 +184,18 @@ func ItemListToMsg(items []*Item) *msg.ItemList { } // 道具叠加 -func Merge(Item1, Item2 []*Item) []*Item { - if Item1 == nil { - return Item2 +func Merge(item1, item2 []*Item) []*Item { + if item1 == nil { + return item2 } - if Item2 == nil { - return Item1 + if item2 == nil { + return item1 } l := make(map[int]int) - for _, v := range Item1 { + for _, v := range item1 { l[v.Id] += v.Num } - for _, v := range Item2 { + for _, v := range item2 { l[v.Id] += v.Num } res := make([]*Item, 0, len(l)) @@ -207,12 +207,12 @@ func Merge(Item1, Item2 []*Item) []*Item { } return res } -func MutilItem(i []*Item, num int) []*Item { - if i == nil { +func MutilItem(item1 []*Item, num int) []*Item { + if item1 == nil { return nil } - res := make([]*Item, 0, len(i)) - for _, v := range i { + res := make([]*Item, 0, len(item1)) + for _, v := range item1 { res = append(res, &Item{ Id: v.Id, Num: v.Num * num, @@ -221,12 +221,12 @@ func MutilItem(i []*Item, num int) []*Item { return res } -func MutilItemFloat(i []*Item, num float64) []*Item { - if i == nil { +func MutilItemFloat(item1 []*Item, num float64) []*Item { + if item1 == nil { return nil } - res := make([]*Item, 0, len(i)) - for _, v := range i { + res := make([]*Item, 0, len(item1)) + for _, v := range item1 { res = append(res, &Item{ Id: v.Id, Num: int(math.Round(float64(v.Num) * num)), diff --git a/src/server/game/mod/limited_time_event/limited_time_event.go b/src/server/game/mod/limited_time_event/limited_time_event.go index 280652b4..3f69af04 100644 --- a/src/server/game/mod/limited_time_event/limited_time_event.go +++ b/src/server/game/mod/limited_time_event/limited_time_event.go @@ -85,7 +85,7 @@ type PaybackDay struct { Count int } -func (l *LimitedTimeEventMod) InitData(Lv int) { +func (l *LimitedTimeEventMod) InitData(lv int) { if l.EventList == nil { l.EventList = make(map[int]*LTEInfo) } @@ -98,8 +98,8 @@ func (l *LimitedTimeEventMod) InitData(Lv int) { } if l.ProgressMax == 0 { - l.Lv = Lv - l.ProgressMax = limitedTimeEventCfg.GetProgressMax(Lv, l.BonusNum) + l.Lv = lv + l.ProgressMax = limitedTimeEventCfg.GetProgressMax(lv, l.BonusNum) } if !l.First { l.First = true @@ -115,25 +115,25 @@ func (l *LimitedTimeEventMod) InitData(Lv int) { } if len(l.ProgressReward) == 0 { - SelectNum := limitedTimeEventCfg.GetProgressSelectNum(Lv) - BonusLv := limitedTimeEventCfg.GetBonusLv(Lv) + SelectNum := limitedTimeEventCfg.GetProgressSelectNum(lv) + BonusLv := limitedTimeEventCfg.GetBonusLv(lv) RandMap := limitedTimeEventCfg.GetProgressRewardRand(BonusLv) l.fillProgressReward(RandMap, SelectNum) } } -func (l *LimitedTimeEventMod) ZeroUpdate(Lv int) { +func (l *LimitedTimeEventMod) ZeroUpdate(lv int) { if !l.FirstReward { return } - l.Lv = Lv + l.Lv = lv l.BonusNum = 0 - l.ProgressMax = limitedTimeEventCfg.GetProgressMax(Lv, l.BonusNum) + l.ProgressMax = limitedTimeEventCfg.GetProgressMax(lv, l.BonusNum) } // 判断限时事件是否存在 -func (l *LimitedTimeEventMod) CheckExist(EventId int) bool { - info, ok := l.EventList[EventId] +func (l *LimitedTimeEventMod) CheckExist(eventId int) bool { + info, ok := l.EventList[eventId] if !ok { return false } @@ -142,16 +142,15 @@ func (l *LimitedTimeEventMod) CheckExist(EventId int) bool { } // 触发限时事件 -func (l *LimitedTimeEventMod) Trigger(Lv int) (int, []int, []int) { - if Lv < 4 { +func (l *LimitedTimeEventMod) Trigger(lv int) (int, []int, []int) { + if lv < 4 { return 0, nil, nil } - TriggerEvent := limitedTimeEventCfg.GetLimitedTimeEventCfg() - TimeoutEvent := make([]int, 0) - AddEvent := make([]int, 0) - Now := GoUtil.Now() - - for _, v := range TriggerEvent { + triggerEvent := limitedTimeEventCfg.GetLimitedTimeEventCfg() + timeoutEvent := make([]int, 0) + addEvent := make([]int, 0) + now := GoUtil.Now() + for _, v := range triggerEvent { if _, ok := l.Triggered[v.Id]; ok { //不重复触发 continue } @@ -159,57 +158,54 @@ func (l *LimitedTimeEventMod) Trigger(Lv int) (int, []int, []int) { info.Remian += int64(v.Duration) } else { LTEInfo := <EInfo{ - StartT: Now, + StartT: now, Remian: int64(v.Duration), } initEventInfo(LTEInfo, v.EventId) l.EventList[v.EventId] = LTEInfo - AddEvent = append(AddEvent, v.EventId) + addEvent = append(addEvent, v.EventId) } l.Triggered[v.Id] = struct{}{} } - Remain := 0 + remain := 0 //删除过期事件 for k, v := range l.EventList { - EndTime := v.StartT + v.Remian - // if k == EVENT_TYPE_CAT_TRICK { - // EndTime += 5 * 60 // 猫咪戏法事件显示时间为5分钟 - // } - if EndTime <= Now { + endTime := v.StartT + v.Remian + if endTime <= now { delete(l.EventList, k) - TimeoutEvent = append(TimeoutEvent, k) + timeoutEvent = append(timeoutEvent, k) continue } - NowRemain := (v.StartT + v.Remian) - Now - if Remain > 0 { - Remain = min(Remain, int(NowRemain)) + nowRemain := (v.StartT + v.Remian) - now + if remain > 0 { + remain = min(remain, int(nowRemain)) } else { - Remain = int(NowRemain) + remain = int(nowRemain) } } - return Remain, TimeoutEvent, AddEvent + return remain, timeoutEvent, addEvent } // 增加限时事件 -func (l *LimitedTimeEventMod) AddEvent(EventId, Duration int) int64 { - v, ok := l.EventList[EventId] - if EventId == EVENT_TYPE_CAT_DAY_SALE { +func (l *LimitedTimeEventMod) AddEvent(eventId, duration int) int64 { + v, ok := l.EventList[eventId] + if eventId == EVENT_TYPE_CAT_DAY_SALE { l.LastCatDaySale = GoUtil.Now() } if ok && v.StartT+v.Remian > GoUtil.Now() { // 事件未过期 - v.Remian += int64(Duration) - addEventInfo(v, EventId, Duration) + v.Remian += int64(duration) + addEventInfo(v, eventId, duration) } else { Event := <EInfo{ - Remian: int64(Duration), + Remian: int64(duration), StartT: GoUtil.Now(), } - initEventInfo(Event, EventId) - l.EventList[EventId] = Event + initEventInfo(Event, eventId) + l.EventList[eventId] = Event } - return l.EventList[EventId].Remian + l.EventList[EventId].StartT + return l.EventList[eventId].Remian + l.EventList[eventId].StartT } // 每周刷新 @@ -217,34 +213,35 @@ func (l *LimitedTimeEventMod) WeekUpdate() { l.Triggered = make(map[int]struct{}) } -func (l *LimitedTimeEventMod) GetMoneyCatReward(ChessList []int) []*item.Item { - L := l.EventList[EVENT_TYPE_MONEY_CAT] - if L == nil { +func (l *LimitedTimeEventMod) GetMoneyCatReward(chessList []int) []*item.Item { + eventInfo := l.EventList[EVENT_TYPE_MONEY_CAT] + if eventInfo == nil { + return nil + } + star := mergeDataCfg.GetMergeStar(chessList) + d, ok := eventInfo.D.(*MoneyCat) + if !ok { return nil } - Star := mergeDataCfg.GetMergeStar(ChessList) - d := L.D.(*MoneyCat) mul := d.Mul - - MaxId := limitedTimeEventCfg.GetMoneyCatMax() - NextId := min(d.Id+1, MaxId) - NextMul, Cd := limitedTimeEventCfg.GetMoneyCat(NextId) - d.Id = NextId - d.Mul = NextMul + maxId := limitedTimeEventCfg.GetMoneyCatMax() + nextId := min(d.Id+1, maxId) + nextMul, Cd := limitedTimeEventCfg.GetMoneyCat(nextId) + d.Id = nextId + d.Mul = nextMul d.EndTime = GoUtil.Now() + int64(Cd) - Star = int(math.Ceil(float64(Star) * (mul - 1))) - - return []*item.Item{{Id: item.ITEM_STAR_ID, Num: Star}} + star = int(math.Ceil(float64(star) * (mul - 1))) + return []*item.Item{{Id: item.ITEM_STAR_ID, Num: star}} } func (l *LimitedTimeEventMod) BackData() *msg.ResLimitEvent { - Res := &msg.ResLimitEvent{} - EventList := make(map[int32]*msg.LimitEvent) + res := &msg.ResLimitEvent{} + eventList := make(map[int32]*msg.LimitEvent) for k, v := range l.EventList { - EventList[int32(k)] = getLimitEventMsg(k, v) + eventList[int32(k)] = getLimitEventMsg(k, v) } - Res.LimitEventList = EventList - return Res + res.LimitEventList = eventList + return res } func (l *LimitedTimeEventMod) ProgressBackData() *msg.ResLimitEventProgress { @@ -260,15 +257,15 @@ func (l *LimitedTimeEventMod) ProgressBackData() *msg.ResLimitEventProgress { } // 获取流星雨奖励 -func (l *LimitedTimeEventMod) GetMeteorReward(MergeList, EmitList []int) []*item.Item { - energy := order.GetVirtualEnergy(MergeList, EmitList) - NewStar := int(max(math.Ceil(float64(energy)/0.36*0.1), 1)) - return []*item.Item{{Id: item.ITEM_STAR_ID, Num: NewStar}} +func (l *LimitedTimeEventMod) GetMeteorReward(mergeList, emitList []int) []*item.Item { + energy := order.GetVirtualEnergy(mergeList, emitList) + newStar := int(max(math.Ceil(float64(energy)/0.36*0.1), 1)) + return []*item.Item{{Id: item.ITEM_STAR_ID, Num: newStar}} } // 获取宝箱雨奖励 -func (l *LimitedTimeEventMod) GetChestReward(MergeList, EmitList []int) []*item.Item { - energy := order.GetVirtualEnergy(MergeList, EmitList) +func (l *LimitedTimeEventMod) GetChestReward(mergeList, emitList []int) []*item.Item { + energy := order.GetVirtualEnergy(mergeList, emitList) star := math.Ceil(float64(energy) / 10 / 2.5) return []*item.Item{item.NewItem(item.ITEM_DIAMOND_ID, int(star))} } @@ -287,116 +284,116 @@ func (l *LimitedTimeEventMod) GetSceneDashReward() (int, []*item.Item, error) { return 0, nil, fmt.Errorf("no dash times") } limitInfo.Info["Times"] = times - 1 - ProbList := limitedTimeEventCfg.GetSenceJackpotProb() - Id := GoUtil.RandMap(ProbList) - Items := limitedTimeEventCfg.GetSenceJackpotReward(Id) - if len(Items) > 1 { + probList := limitedTimeEventCfg.GetSenceJackpotProb() + id := GoUtil.RandMap(probList) + items := limitedTimeEventCfg.GetSenceJackpotReward(id) + if len(items) > 1 { // 多个奖励时,随机选择一个 - Items = []*item.Item{GoUtil.RandItem(Items)} + items = []*item.Item{GoUtil.RandItem(items)} } - return Id, Items, nil + return id, items, nil } // 获取连击快手奖励 func (l *LimitedTimeEventMod) GetFastProduceReward(Energy int) ([]*item.Item, error) { - Event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] + event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] if !ok { return nil, fmt.Errorf("FastProduce event not exist") } - Now := GoUtil.Now() - if Now < GoUtil.Int64(Event.Info["NextPlay"]) { + now := GoUtil.Now() + if now < GoUtil.Int64(event.Info["NextPlay"]) { return nil, fmt.Errorf("FastProduce CD") } return limitedTimeEventCfg.GetFastProduceReward(Energy), nil } func (l *LimitedTimeEventMod) ResetFastProduceCD() { - Event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] + event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] if !ok { return } - Event.Info["NextPlay"] = 0 + event.Info["NextPlay"] = 0 } func (l *LimitedTimeEventMod) GetFastProduceInfo() (int64, int) { - Event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] + event, ok := l.EventList[EVENT_TYPE_FAST_PRODUCE] if !ok { return 0, 0 } - return GoUtil.Int64(Event.Info["NextPlay"]), GoUtil.Int(Event.Info["Times"]) + return GoUtil.Int64(event.Info["NextPlay"]), GoUtil.Int(event.Info["Times"]) } // 增加进度 -func (l *LimitedTimeEventMod) AddProgress(Lv int) { - UnlockLv := limitedTimeEventCfg.GetUnlockLv() - if Lv < UnlockLv { +func (l *LimitedTimeEventMod) AddProgress(lv int) { + unlockLv := limitedTimeEventCfg.GetUnlockLv() + if lv < unlockLv { return } l.Progress++ } // 选择进度奖励 -func (l *LimitedTimeEventMod) SelectProgressReward(Id, Lv, Energy int) ([]*item.Item, int, int, map[int]int, error) { - RewardId, ok := l.ProgressReward[Id] - RewardList := l.ProgressReward +func (l *LimitedTimeEventMod) SelectProgressReward(id, lv, energy int) ([]*item.Item, int, int, map[int]int, error) { + rewardId, ok := l.ProgressReward[id] + rewardList := l.ProgressReward if !ok { return nil, 0, 0, nil, fmt.Errorf("RewardId not exist") } - Item := limitedTimeEventCfg.GetProgressReward(RewardId) - OrderNum := l.ProgressMax - l.LastSelect = RewardId + items := limitedTimeEventCfg.GetProgressReward(rewardId) + orderNum := l.ProgressMax + l.LastSelect = rewardId l.ProgressReward = make(map[int]int) l.Progress = 0 l.BonusNum++ l.ProgressMax = limitedTimeEventCfg.GetProgressMax(l.Lv, l.BonusNum) // 重新生成进度奖励 - SelectNum := limitedTimeEventCfg.GetProgressSelectNum(Lv) - BonusLv := limitedTimeEventCfg.GetBonusLv(Lv) - RandMap := limitedTimeEventCfg.GetProgressRewardRand(BonusLv) + selectNum := limitedTimeEventCfg.GetProgressSelectNum(lv) + bonusLv := limitedTimeEventCfg.GetBonusLv(lv) + randMap := limitedTimeEventCfg.GetProgressRewardRand(bonusLv) // 体力小于200 high roller事件不进池子 - if Energy < limitedTimeEventCfg.GetHighRollerNeedEnergy() { - delete(RandMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_HIGH_ROLLER)) + if energy < limitedTimeEventCfg.GetHighRollerNeedEnergy() { + delete(randMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_HIGH_ROLLER)) } if GoUtil.Now()-l.LastCatDaySale < limitedTimeEventCfg.GetCatSaleCD() { // 参与猫咪大甩卖活动时,猫咪大甩卖事件不进池子 - delete(RandMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_CAT_DAY_SALE)) + delete(randMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_CAT_DAY_SALE)) } - l.fillProgressReward(RandMap, SelectNum) + l.fillProgressReward(randMap, selectNum) l.FirstReward = true - return Item, limitedTimeEventCfg.GetProgressRewardType(RewardId), OrderNum, RewardList, nil + return items, limitedTimeEventCfg.GetProgressRewardType(rewardId), orderNum, rewardList, nil } -func (l *LimitedTimeEventMod) DebugProgressRewardList(Lv, Energy int) map[int]int { +func (l *LimitedTimeEventMod) DebugProgressRewardList(lv, energy int) map[int]int { // 重新生成进度奖励 - SelectNum := limitedTimeEventCfg.GetProgressSelectNum(Lv) - BonusLv := limitedTimeEventCfg.GetBonusLv(Lv) - RandMap := limitedTimeEventCfg.GetProgressRewardRand(BonusLv) + selectNum := limitedTimeEventCfg.GetProgressSelectNum(lv) + bonusLv := limitedTimeEventCfg.GetBonusLv(lv) + randMap := limitedTimeEventCfg.GetProgressRewardRand(bonusLv) // 体力小于200 high roller事件不进池子 - if Energy < limitedTimeEventCfg.GetHighRollerNeedEnergy() { - delete(RandMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_HIGH_ROLLER)) + if energy < limitedTimeEventCfg.GetHighRollerNeedEnergy() { + delete(randMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_HIGH_ROLLER)) } if GoUtil.Now()-l.LastCatDaySale < limitedTimeEventCfg.GetCatSaleCD() { // 参与猫咪大甩卖活动时,猫咪大甩卖事件不进池子 - delete(RandMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_CAT_DAY_SALE)) + delete(randMap, limitedTimeEventCfg.GetJackpotIdByType(EVENT_TYPE_CAT_DAY_SALE)) } - l.fillProgressReward(RandMap, SelectNum) + l.fillProgressReward(randMap, selectNum) return l.ProgressReward } // fillProgressReward 随机填充进度奖励(最多尝试10次避免与上次相同) -func (l *LimitedTimeEventMod) fillProgressReward(RandMap map[int]int, SelectNum int) { - LastOption := l.LastOption +func (l *LimitedTimeEventMod) fillProgressReward(randMap map[int]int, selectNum int) { + lastOption := l.LastOption var r []int for n := 0; n < 10; n++ { - r = GoUtil.RandMapNum(RandMap, SelectNum) + r = GoUtil.RandMapNum(randMap, selectNum) Id := 1 for _, v := range r { l.ProgressReward[Id] = v Id++ } - if !GoUtil.SliceEqual(LastOption, r) { + if !GoUtil.SliceEqual(lastOption, r) { break } } @@ -411,33 +408,39 @@ func (l *LimitedTimeEventMod) RemoveSuperOrder() bool { return false } -func (l *LimitedTimeEventMod) LuckyCat(ChessId int) error { +func (l *LimitedTimeEventMod) LuckyCat(chessId int) error { L := l.EventList[EVENT_TYPE_LUCKY_CAT] if L == nil { return fmt.Errorf("LuckyCat event not exist") } - MaxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(int(L.Remian)) - d := L.D.(*LuckyCat) - Lv := mergeDataCfg.GetLvById(ChessId) - Earn := math.Pow(2, float64(Lv-1)) - d.Earnings += int(Earn) - if d.Earnings >= MaxEarning { + maxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(int(L.Remian)) + d, ok := L.D.(*LuckyCat) + if !ok { + return fmt.Errorf("LuckyCat event data error") + } + lv := mergeDataCfg.GetLvById(chessId) + earn := math.Pow(2, float64(lv-1)) + d.Earnings += int(earn) + if d.Earnings >= maxEarning { delete(l.EventList, EVENT_TYPE_LUCKY_CAT) } return nil } -func (l *LimitedTimeEventMod) AddCatTrickEnergy(Energy int) { - Event, ok := l.EventList[EVENT_TYPE_CAT_TRICK] +func (l *LimitedTimeEventMod) AddCatTrickEnergy(energy int) { + event, ok := l.EventList[EVENT_TYPE_CAT_TRICK] if !ok { return } - if Event.Remian+Event.StartT <= GoUtil.Now() { + if event.Remian+event.StartT <= GoUtil.Now() { return } // 事件未过期 - d := Event.D.(*CatTrick) - d.Energy += Energy + d, ok := event.D.(*CatTrick) + if !ok { + return + } + d.Energy += energy } func (l *LimitedTimeEventMod) SubPaybackDay() error { @@ -445,11 +448,14 @@ func (l *LimitedTimeEventMod) SubPaybackDay() error { } func (l *LimitedTimeEventMod) GetCatTrickReward() ([]*item.Item, error) { - Event, ok := l.EventList[EVENT_TYPE_CAT_TRICK] + event, ok := l.EventList[EVENT_TYPE_CAT_TRICK] if !ok { return nil, fmt.Errorf("CatTrick event not exist") } - d := Event.D.(*CatTrick) + d, ok := event.D.(*CatTrick) + if !ok { + return nil, fmt.Errorf("CatTrick event data error") + } if d.Energy < 100 { return nil, fmt.Errorf("CatTrick energy not enough") } @@ -462,34 +468,34 @@ func (l *LimitedTimeEventMod) GetCatTrickReward() ([]*item.Item, error) { } // #region 事件信息初始化 -func initEventInfo(E *LTEInfo, EventType int) { - switch EventType { +func initEventInfo(event *LTEInfo, eventType int) { + switch eventType { case EVENT_TYPE_SENCE_DASH: - E.Info = map[string]interface{}{ + event.Info = map[string]interface{}{ "Times": 0, } case EVENT_TYPE_FAST_PRODUCE: - E.Info = map[string]interface{}{ + event.Info = map[string]interface{}{ "Times": 0, "NextPlay": 0, } case EVENT_TYPE_MONEY_CAT: - E.D = &MoneyCat{ + event.D = &MoneyCat{ Id: 1, Mul: 1.1, } case EVENT_TYPE_LUCKY_CAT: - MaxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(int(E.Remian)) - E.D = &LuckyCat{ + MaxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(int(event.Remian)) + event.D = &LuckyCat{ MaxEarings: MaxEarning, } case EVENT_TYPE_PAYBACK_DAY: - E.D = &PaybackDay{ + event.D = &PaybackDay{ Count: limitedTimeEventCfg.GetPaybackDay(), } case EVENT_TYPE_CAT_TRICK: - Type := limitedTimeEventCfg.GetCatTrickType(int(E.Remian)) - E.D = &CatTrick{ + Type := limitedTimeEventCfg.GetCatTrickType(int(event.Remian)) + event.D = &CatTrick{ List: []CatTrickInfo{ { Id: 1, @@ -500,66 +506,87 @@ func initEventInfo(E *LTEInfo, EventType int) { } } -func addEventInfo(E *LTEInfo, EventType, Duration int) { - switch EventType { +func addEventInfo(event *LTEInfo, eventType, duration int) { + switch eventType { case EVENT_TYPE_CAT_TRICK: - d := E.D.(*CatTrick) + d, ok := event.D.(*CatTrick) + if !ok { + return + } d.List = append(d.List, CatTrickInfo{ Id: len(d.List) + 1, - Type: limitedTimeEventCfg.GetCatTrickType(Duration), + Type: limitedTimeEventCfg.GetCatTrickType(duration), }) case EVENT_TYPE_LUCKY_CAT: - MaxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(Duration) - d := E.D.(*LuckyCat) + MaxEarning := limitedTimeEventCfg.GetLuckyCatMaxEarning(duration) + d, ok := event.D.(*LuckyCat) + if !ok { + return + } d.MaxEarings += MaxEarning case EVENT_TYPE_PAYBACK_DAY: - d := E.D.(*PaybackDay) + d, ok := event.D.(*PaybackDay) + if !ok { + return + } d.Count += limitedTimeEventCfg.GetPaybackDay() } } -func getLimitEventMsg(t int, e *LTEInfo) *msg.LimitEvent { - Cd := 0 - Mul := 0.0 - Param := make(map[string]int32) - ShowTime := int32(e.StartT + e.Remian) - EndTime := int32(e.StartT + e.Remian) - switch t { +func getLimitEventMsg(eType int, event *LTEInfo) *msg.LimitEvent { + cd := 0 + mul := 0.0 + param := make(map[string]int32) + showTime := int32(event.StartT + event.Remian) + endTime := int32(event.StartT + event.Remian) + switch eType { case EVENT_TYPE_FAST_PRODUCE: - NextPlay := GoUtil.Int64(e.Info["NextPlay"]) - Cd = int(max(NextPlay-GoUtil.Now(), 0)) + nextPlay := GoUtil.Int64(event.Info["NextPlay"]) + cd = int(max(nextPlay-GoUtil.Now(), 0)) case EVENT_TYPE_MONEY_CAT: - d := e.D.(*MoneyCat) - Cd = int(d.EndTime) - Mul = d.Mul + d, ok := event.D.(*MoneyCat) + if !ok { + return nil + } + cd = int(d.EndTime) + mul = d.Mul case EVENT_TYPE_LUCKY_CAT: - d := e.D.(*LuckyCat) - Param[msg.LimitEventParam_LUCKY_CAT_EARNINGS.String()] = int32(d.MaxEarings) + d, ok := event.D.(*LuckyCat) + if !ok { + return nil + } + param[msg.LimitEventParam_LUCKY_CAT_EARNINGS.String()] = int32(d.MaxEarings) case EVENT_TYPE_CAT_TRICK: - d := e.D.(*CatTrick) - Energy := d.Energy - Param[msg.LimitEventParam_CAT_TRICK_ENERGY.String()] = int32(Energy) + d, ok := event.D.(*CatTrick) + if !ok { + return nil + } + energy := d.Energy + param[msg.LimitEventParam_CAT_TRICK_ENERGY.String()] = int32(energy) info := d.List[0] - Param[msg.LimitEventParam_CAT_TRICK_TYPE.String()] = int32(info.Type) - Diamon1, Energy1 := limitedTimeEventCfg.GetCatTrickDiamond(info.Type) - if d.Energy >= Diamon1*Energy1 { + param[msg.LimitEventParam_CAT_TRICK_TYPE.String()] = int32(info.Type) + diamond1, energy1 := limitedTimeEventCfg.GetCatTrickDiamond(info.Type) + if d.Energy >= diamond1*energy1 { // 进度条已满 - EndTime += 5 * 60 // 5分钟 + endTime += 5 * 60 // 5分钟 } case EVENT_TYPE_PAYBACK_DAY: - d := e.D.(*PaybackDay) - Param[msg.LimitEventParam_PAYBACK_DAY_COUNT.String()] = int32(d.Count) + d, ok := event.D.(*PaybackDay) + if !ok { + return nil + } + param[msg.LimitEventParam_PAYBACK_DAY_COUNT.String()] = int32(d.Count) case EVENT_TYPE_SENCE_DASH: - Times := GoUtil.Int(e.Info["Times"]) - Param[msg.LimitEventParam_SENCE_DASH_TIMES.String()] = int32(Times) + times := GoUtil.Int(event.Info["Times"]) + param[msg.LimitEventParam_SENCE_DASH_TIMES.String()] = int32(times) } return &msg.LimitEvent{ - EndTime: EndTime, - ShowTime: ShowTime, - Cd: int32(Cd), - Mul: float32(Mul), - StartTime: int32(e.StartT), - Param: Param, + EndTime: endTime, + ShowTime: showTime, + Cd: int32(cd), + Mul: float32(mul), + StartTime: int32(event.StartT), + Param: param, } } @@ -576,13 +603,13 @@ func (l *LimitedTimeEventMod) GetCatDaySaleEndTime() int64 { } func (l *LimitedTimeEventMod) AddSenceDashTimes() bool { - SenceInfo, ok := l.EventList[EVENT_TYPE_SENCE_DASH] + senceInfo, ok := l.EventList[EVENT_TYPE_SENCE_DASH] if !ok { return false } - if SenceInfo.Info == nil { + if senceInfo.Info == nil { return false } - SenceInfo.Info["Times"] = GoUtil.Int(SenceInfo.Info["Times"]) + 1 + senceInfo.Info["Times"] = GoUtil.Int(senceInfo.Info["Times"]) + 1 return true } diff --git a/src/server/game/mod/mining/mining.go b/src/server/game/mod/mining/mining.go index 1d63c060..253745c2 100644 --- a/src/server/game/mod/mining/mining.go +++ b/src/server/game/mod/mining/mining.go @@ -21,22 +21,22 @@ func (m *MiningMod) InitData() { } } -func (m *MiningMod) Login(Id int) int { - OldId := m.Id - if Id == 0 { +func (m *MiningMod) Login(id int) int { + oldId := m.Id + if id == 0 { m.Id = 0 - return OldId + return oldId } - if m.Id == Id { + if m.Id == id { return 0 } - m.Id = Id + m.Id = id m.Map = make(map[int32]string) m.Gem = nil m.Pass = 1 m.Mining = 0 m.InitItem = false - return OldId + return oldId } func (m *MiningMod) GetInitItem() []*item.Item { @@ -55,8 +55,8 @@ func (m *MiningMod) GetInitItem() []*item.Item { return nil } -func (m *MiningMod) ZeroUpdate(Id int) { - m.Login(Id) +func (m *MiningMod) ZeroUpdate(id int) { + m.Login(id) } func (m *MiningMod) GetMap() map[int32]string { @@ -75,7 +75,7 @@ func (m *MiningMod) GetMining() int { return m.Mining } -func (m *MiningMod) Take(Map map[int32]string, Gem int) ([]*item.Item, error) { +func (m *MiningMod) Take(miningMap map[int32]string, gem int) ([]*item.Item, error) { AreaNum := miningCfg.GetPassArea(m.Pass) if AreaNum == 0 { return nil, fmt.Errorf("pass is not exist") @@ -83,32 +83,32 @@ func (m *MiningMod) Take(Map map[int32]string, Gem int) ([]*item.Item, error) { if m.Mining+1 > AreaNum { return nil, fmt.Errorf("mining is full") } - if Gem > 0 { + if gem > 0 { GemList := miningCfg.GetPassGem(m.Pass) if len(m.Gem)+1 > len(GemList) { return nil, fmt.Errorf("gem is full") } - m.Map = Map + m.Map = miningMap m.Mining++ - m.Gem = append(m.Gem, Gem) + m.Gem = append(m.Gem, gem) return nil, nil } - m.Map = Map + m.Map = miningMap m.Mining++ - Items := miningCfg.GetRandItem() - return Items, nil + items := miningCfg.GetRandItem() + return items, nil } func (m *MiningMod) GetReward(orderFactor int) ([]*item.Item, int, error) { - GemList := miningCfg.GetPassGem(m.Pass) - if len(m.Gem) < len(GemList) { + gemList := miningCfg.GetPassGem(m.Pass) + if len(m.Gem) < len(gemList) { return nil, 0, fmt.Errorf("gem is not full") } - Items := miningCfg.GetPassItem(m.Pass, orderFactor) + items := miningCfg.GetPassItem(m.Pass, orderFactor) m.Pass++ - Ming := m.Mining + mining := m.Mining m.Mining = 0 m.Map = nil m.Gem = nil - return Items, Ming, nil + return items, mining, nil } diff --git a/src/server/game/mod/order/Order.go b/src/server/game/mod/order/Order.go index 163a98cc..f982cfa3 100644 --- a/src/server/game/mod/order/Order.go +++ b/src/server/game/mod/order/Order.go @@ -108,16 +108,16 @@ func (o *OrderMod) GetOrderList() map[int]Order { // 领取奖励 func (o *OrderMod) RewardOrder(id int) ([]*item.Item, []int, int, int, error) { - ItemList := make([]*item.Item, 0) - MergeList := make([]int, 0) + items := make([]*item.Item, 0) + mergeList := make([]int, 0) if v, ok := o.OrderList[id]; ok { o.LastOrder = v delete(o.OrderList, id) - Star := 0 + star := 0 for _, v := range v.MergeId { - Star += mergeDataCfg.GetStarById(v) + star += mergeDataCfg.GetStarById(v) } - ItemList = v.Items + items = v.Items if v.Type == Guide_type { return nil, v.MergeId, v.Type, 0, nil } @@ -130,9 +130,9 @@ func (o *OrderMod) RewardOrder(id int) ([]*item.Item, []int, int, int, error) { if GoUtil.InArray(79, o.FinishOrder) { o.AutoEmit, _ = GoUtil.PopStringElemSlice(o.AutoEmit, "I") } - return ItemList, v.MergeId, v.Type, Star, nil + return items, v.MergeId, v.Type, star, nil } - return ItemList, MergeList, 0, 0, fmt.Errorf("订单不存在, 订单id%d", id) + return items, mergeList, 0, 0, fmt.Errorf("订单不存在, 订单id%d", id) } func (o *OrderMod) CreateOrderSeed(Order *Order) error { for k, v := range o.OrderPool { @@ -145,41 +145,41 @@ func (o *OrderMod) CreateOrderSeed(Order *Order) error { return nil } -func (o *OrderMod) CreatOrderPool(lv int, Emit []int, EnergyMul int) error { +func (o *OrderMod) CreatOrderPool(lv int, emit []int, energyMul int) error { o.OrderPool = make(map[int]*Order) index := 1 for i := 0; i < 10; i++ { - ChessList := o.CreateNormalOrderSeed(lv, Emit, EnergyMul, DIFF_LOW) - if len(ChessList) == 0 { + chessList := o.CreateNormalOrderSeed(lv, emit, energyMul, DIFF_LOW) + if len(chessList) == 0 { continue } o.OrderPool[index] = &Order{ - MergeId: ChessList, + MergeId: chessList, Diff: DIFF_LOW, Timestamp: int64(index), } index++ } for i := 0; i < 10; i++ { - ChessList := o.CreateNormalOrderSeed(lv, Emit, EnergyMul, DIFF_MID) - if len(ChessList) == 0 { + chessList := o.CreateNormalOrderSeed(lv, emit, energyMul, DIFF_MID) + if len(chessList) == 0 { continue } o.OrderPool[index] = &Order{ - MergeId: ChessList, - Diff: DIFF_LOW, + MergeId: chessList, + Diff: DIFF_MID, Timestamp: int64(index), } index++ } for i := 0; i < 10; i++ { - ChessList := o.CreateNormalOrderSeed(lv, Emit, EnergyMul, DIFF_HIGH) - if len(ChessList) == 0 { + chessList := o.CreateNormalOrderSeed(lv, emit, energyMul, DIFF_HIGH) + if len(chessList) == 0 { continue } o.OrderPool[index] = &Order{ - MergeId: ChessList, - Diff: DIFF_LOW, + MergeId: chessList, + Diff: DIFF_HIGH, Timestamp: int64(index), } index++ @@ -188,45 +188,45 @@ func (o *OrderMod) CreatOrderPool(lv int, Emit []int, EnergyMul int) error { } // 触发生成新的固定订单 -func (o *OrderMod) TriggerOrder(lv int, Type string, Emit []int, EnergyMul int) error { - TriggerOrderList := orderCfg.GetStartOrderList() - FixedOrder := 0 +func (o *OrderMod) TriggerOrder(lv int, oType string, emit []int, energyMul int) error { + triggerOrderList := orderCfg.GetStartOrderList() + fixedOrder := 0 for _, v := range o.OrderList { if v.Type == Fixed_type { - FixedOrder++ + fixedOrder++ } } - OrderList := make(map[int]Order, len(o.OrderList)) + orderList := make(map[int]Order, len(o.OrderList)) for k, v := range o.OrderList { - OrderList[k] = v + orderList[k] = v } // 触发生成新的固定订单 - for _, v := range TriggerOrderList { + for _, v := range triggerOrderList { if GoUtil.InArray(v.Id, o.FinishOrder) { continue } - orderInfo, exists := OrderList[v.Id] + orderInfo, exists := orderList[v.Id] if exists && v.Preview == "" { continue } // 预览条件不为空且未存在且未完成 if v.Preview != "" && !exists && !GoUtil.InArray(v.Id, o.FinishOrder) { - if o.CheckCondition(lv, v.Preview, Type, Emit, FixedOrder, OrderList) { + if o.CheckCondition(lv, v.Preview, oType, emit, fixedOrder, orderList) { o.addFixOrder(v.Id, v.MergeList, Preview_type, v.Items) } } if v.Appear != "" { - if o.CheckCondition(lv, v.Appear, Type, Emit, FixedOrder, OrderList) { - Type := Fixed_type - OrderType := orderCfg.GetOrderType(v.Id) - if OrderType != 0 { - Type = OrderType + if o.CheckCondition(lv, v.Appear, oType, emit, fixedOrder, orderList) { + oType1 := Fixed_type + orderType := orderCfg.GetOrderType(v.Id) + if orderType != 0 { + oType1 = orderType } if exists { orderInfo.Type = Fixed_type o.OrderList[v.Id] = orderInfo } else { - o.addFixOrder(v.Id, v.MergeList, Type, v.Items) + o.addFixOrder(v.Id, v.MergeList, oType1, v.Items) if v.Id == 78 { o.Retire("D") o.AutoEmit = append(o.AutoEmit, "D") @@ -242,7 +242,7 @@ func (o *OrderMod) TriggerOrder(lv int, Type string, Emit []int, EnergyMul int) return nil } -func (o *OrderMod) CheckCondition(lv int, condition, Type string, Emit []int, FixedOrder int, OrderList map[int]Order) bool { +func (o *OrderMod) CheckCondition(lv int, condition, cType string, emit []int, fixedOrder int, orderList map[int]Order) bool { r1 := strings.Split(condition, "|") for _, v := range r1 { r2 := strings.Split(v, "=") @@ -252,7 +252,7 @@ func (o *OrderMod) CheckCondition(lv int, condition, Type string, Emit []int, Fi if !GoUtil.InArray(id, o.FinishOrder) && id != 0 { return false } - if id == 0 && Type != TRIGGER_TYPE_ORDER { + if id == 0 && cType != TRIGGER_TYPE_ORDER { return false } case "Lv": @@ -262,34 +262,34 @@ func (o *OrderMod) CheckCondition(lv int, condition, Type string, Emit []int, Fi } case "OrderNum": id := GoUtil.Int(r2[1]) - if FixedOrder != id { + if fixedOrder != id { return false } case "Order": id := GoUtil.Int(r2[1]) - _, ok := OrderList[id] + _, ok := orderList[id] if !GoUtil.InArray(id, o.FinishOrder) && !ok { return false } case "Emit": - Class := []string{} - for _, v := range Emit { - Class = append(Class, mergeDataCfg.GetEmitId(v)) + class := []string{} + for _, v := range emit { + class = append(class, mergeDataCfg.GetEmitId(v)) } - if !GoUtil.InStringArray(r2[1], Class) { + if !GoUtil.InStringArray(r2[1], class) { return false } case "EmitMax": - Class := []string{} - for _, v := range Emit { - EmitLv := mergeDataCfg.GetLvById(v) - MaxLv := mergeDataCfg.GetMaxLvById(v) - if EmitLv < MaxLv { + class := []string{} + for _, v := range emit { + emitLv := mergeDataCfg.GetLvById(v) + maxLv := mergeDataCfg.GetMaxLvById(v) + if emitLv < maxLv { continue } - Class = append(Class, mergeDataCfg.GetEmitId(v)) + class = append(class, mergeDataCfg.GetEmitId(v)) } - if !GoUtil.InStringArray(r2[1], Class) { + if !GoUtil.InStringArray(r2[1], class) { return false } } @@ -298,65 +298,65 @@ func (o *OrderMod) CheckCondition(lv int, condition, Type string, Emit []int, Fi } // 生成新订单 -func (o *OrderMod) CreateOrder(lv int, Emit []int, EnergyMul, OrderType int) error { - if len(Emit) == 0 { +func (o *OrderMod) CreateOrder(lv int, emit []int, energyMul, orderType int) error { + if len(emit) == 0 { return nil } /// 生成优先订单 - if o.CreatePriorityOrder(lv, Emit) { + if o.CreatePriorityOrder(lv, emit) { return nil } - err := o.CreateNormalOrder(lv, Emit, EnergyMul, OrderType) + err := o.CreateNormalOrder(lv, emit, energyMul, orderType) return err } -func (o *OrderMod) CreatePriorityOrder(lv int, Emit []int) bool { - if len(Emit) == 0 { +func (o *OrderMod) CreatePriorityOrder(lv int, emit []int) bool { + if len(emit) == 0 { return false } - ChessList := make(map[string]int) + chessList := make(map[string]int) for _, v := range o.OrderList { for _, vv := range v.MergeId { - Color := mergeDataCfg.GetColorById(vv) - if vvv, ok := ChessList[Color]; ok { - OldLv := mergeDataCfg.GetLvById(vvv) - NewLv := mergeDataCfg.GetLvById(vv) - if NewLv > OldLv { - ChessList[Color] = vv + color := mergeDataCfg.GetColorById(vv) + if vvv, ok := chessList[color]; ok { + oldLv := mergeDataCfg.GetLvById(vvv) + newLv := mergeDataCfg.GetLvById(vv) + if newLv > oldLv { + chessList[color] = vv } } else { - ChessList[Color] = vv + chessList[color] = vv } } } - for v := range Emit { - Produce := mergeDataCfg.GetEmitProduceChessType(v) - if len(Produce) < 2 { + for v := range emit { + produce := mergeDataCfg.GetEmitProduceChessType(v) + if len(produce) < 2 { continue } - for k, v := range ChessList { - if k == Produce[0] { - MaxLv := mergeDataCfg.GetMaxLvById(v) - DurLv := int((MaxLv - 3) * 1 / 3) - ChessLv := mergeDataCfg.GetLvById(v) - if ChessLv > (3 + DurLv*2) { + for k, v := range chessList { + if k == produce[0] { + maxLv := mergeDataCfg.GetMaxLvById(v) + durLv := int((maxLv - 3) * 1 / 3) + chessLv := mergeDataCfg.GetLvById(v) + if chessLv > (3 + durLv*2) { B := GoUtil.RandMap(map[int]int{0: 80, 1: 20}) if B == 1 { - NewColor := GoUtil.RandStringSlice(Produce[1:]) - DiffLv := GoUtil.RandMap(map[int]int{DIFF_LOW: 70, DIFF_MID: 30}) - NewChessId := 0 - switch DiffLv { + newColor := GoUtil.RandStringSlice(produce[1:]) + diffLv := GoUtil.RandMap(map[int]int{DIFF_LOW: 70, DIFF_MID: 30}) + newChessId := 0 + switch diffLv { case DIFF_LOW: - NewLv := GoUtil.RandNum(4, 3+DurLv) - NewChessId = mergeDataCfg.GetChessIdByLvAndColor(NewLv, NewColor) + newLv := GoUtil.RandNum(4, 3+durLv) + newChessId = mergeDataCfg.GetChessIdByLvAndColor(newLv, newColor) case DIFF_MID: - NewLv := GoUtil.RandNum(4+DurLv, 3+DurLv*2) - NewChessId = mergeDataCfg.GetChessIdByLvAndColor(NewLv, NewColor) + newLv := GoUtil.RandNum(4+durLv, 3+durLv*2) + newChessId = mergeDataCfg.GetChessIdByLvAndColor(newLv, newColor) } - if NewChessId == 0 { + if newChessId == 0 { continue } - o.addOrder([]int{NewChessId}, DiffLv, Common_type) + o.addOrder([]int{newChessId}, diffLv, Common_type) return true } } @@ -367,8 +367,8 @@ func (o *OrderMod) CreatePriorityOrder(lv int, Emit []int) bool { } // 生成新订单 -func (o *OrderMod) CreateNormalOrderSeed(lv int, Emit []int, EnergyMul int, Diff int) []int { - if len(Emit) == 0 { +func (o *OrderMod) CreateNormalOrderSeed(lv int, emit []int, energyMul int, diff int) []int { + if len(emit) == 0 { return nil } randNum := 0 @@ -379,7 +379,7 @@ func (o *OrderMod) CreateNormalOrderSeed(lv int, Emit []int, EnergyMul int, Diff break } randNum++ - mergeList, _, err = randOrderChessSeed(o, Emit, EnergyMul, Diff) + mergeList, _, err = randOrderChessSeed(o, emit, energyMul, diff) if err != nil { continue } @@ -400,8 +400,8 @@ func (o *OrderMod) CreateNormalOrderSeed(lv int, Emit []int, EnergyMul int, Diff } // 生成新订单 -func (o *OrderMod) CreateNormalOrder(lv int, Emit []int, EnergyMul, OrderType int) error { - if len(Emit) == 0 { +func (o *OrderMod) CreateNormalOrder(lv int, emit []int, energyMul, orderType int) error { + if len(emit) == 0 { return nil } randNum := 0 @@ -413,7 +413,7 @@ func (o *OrderMod) CreateNormalOrder(lv int, Emit []int, EnergyMul, OrderType in break } randNum++ - mergeList, OrderDiff, err = randOrderChess(o, lv, Emit, EnergyMul, OrderType) + mergeList, OrderDiff, err = randOrderChess(o, lv, emit, energyMul, orderType) if err != nil { continue } @@ -435,7 +435,7 @@ func (o *OrderMod) CreateNormalOrder(lv int, Emit []int, EnergyMul, OrderType in return nil } } - o.addOrder(mergeList, OrderDiff, OrderType) + o.addOrder(mergeList, OrderDiff, orderType) return nil } @@ -444,16 +444,16 @@ func (o *OrderMod) DeleteOrder(OrderId int) { } // 生成超级订单 -func (o *OrderMod) CreateSuperOrder(lv int, Emit []int, EnergyMul int) error { - if len(Emit) == 0 { +func (o *OrderMod) CreateSuperOrder(lv int, emit []int, energyMul int) error { + if len(emit) == 0 { return nil } randNum := 0 mergeList := make([]int, 0) // 忽视上一个订单的难度,生成此订单时,难度默认为50%概率的中难度、50%概率的高难度 - OrderDiff := DIFF_MID + orderDiff := DIFF_MID if GoUtil.RandNum(1, 100) <= 50 { - OrderDiff = DIFF_HIGH + orderDiff = DIFF_HIGH } var err error for { @@ -461,7 +461,7 @@ func (o *OrderMod) CreateSuperOrder(lv int, Emit []int, EnergyMul int) error { break } randNum++ - mergeList, OrderDiff, err = randSuperOrderChess(o, lv, Emit, EnergyMul, OrderDiff) + mergeList, orderDiff, err = randSuperOrderChess(o, lv, emit, energyMul, orderDiff) if err != nil { continue } @@ -478,92 +478,92 @@ func (o *OrderMod) CreateSuperOrder(lv int, Emit []int, EnergyMul int) error { } break } - o.addOrder(mergeList, OrderDiff, Super_type) + o.addOrder(mergeList, orderDiff, Super_type) return nil } -func (o *OrderMod) addOrder(ChessList []int, Diff int, Type int) int { +func (o *OrderMod) addOrder(chessList []int, diff int, oType int) int { o.Auto_id++ Order := Order{ - MergeId: ChessList, - Diff: Diff, - Type: Type, + MergeId: chessList, + Diff: diff, + Type: oType, Timestamp: time.Now().Unix(), Items: nil, } o.OrderList[o.Auto_id] = Order - if Type == Common_type { + if oType == Common_type { o.LastNormalOrder = Order } - o.LastDiff = Diff + o.LastDiff = diff return o.Auto_id } -func (o *OrderMod) AddExtraOrder(ChessList []int) { - o.addOrder(ChessList, DIFF_LOW, Extra_type) +func (o *OrderMod) AddExtraOrder(chessList []int) { + o.addOrder(chessList, DIFF_LOW, Extra_type) } -func (o *OrderMod) AddFixOrder(Id int, ChessList []int, Type int, Items []*item.Item) { - o.addFixOrder(Id, ChessList, Type, Items) +func (o *OrderMod) AddFixOrder(Id int, chessList []int, oType int, items []*item.Item) { + o.addFixOrder(Id, chessList, oType, items) } -func (o *OrderMod) addFixOrder(Id int, ChessList []int, Type int, Items []*item.Item) { +func (o *OrderMod) addFixOrder(Id int, chessList []int, oType int, items []*item.Item) { Order := Order{ - MergeId: ChessList, - Type: Type, + MergeId: chessList, + Type: oType, Timestamp: time.Now().Unix(), - Items: Items, + Items: items, } o.OrderList[Id] = Order } -func (o *OrderMod) AddPreheatOrder(ChessList []int, Diff int, Type int, Items []*item.Item) int { - return o.addPreheatOrder(ChessList, Diff, Type, Items) +func (o *OrderMod) AddPreheatOrder(chessList []int, diff int, oType int, items []*item.Item) int { + return o.addPreheatOrder(chessList, diff, oType, items) } -func (o *OrderMod) addPreheatOrder(ChessList []int, Diff int, Type int, Items []*item.Item) int { +func (o *OrderMod) addPreheatOrder(chessList []int, diff int, oType int, items []*item.Item) int { o.Auto_id++ Order := Order{ - MergeId: ChessList, - Diff: Diff, - Type: Type, + MergeId: chessList, + Diff: diff, + Type: oType, Timestamp: time.Now().Unix(), - Items: Items, + Items: items, } o.OrderList[o.Auto_id] = Order return o.Auto_id } -func (o *OrderMod) CreateCleanOrder(ChessList []int) bool { - o.addOrder(ChessList, DIFF_LOW, Clean_type) +func (o *OrderMod) CreateCleanOrder(chessList []int) bool { + o.addOrder(chessList, DIFF_LOW, Clean_type) return true } -func (o *OrderMod) CreateCleanOrder2(ChessList []int) bool { - o.addOrder(ChessList, DIFF_LOW, Clean_Order_type) +func (o *OrderMod) CreateCleanOrder2(chessList []int) bool { + o.addOrder(chessList, DIFF_LOW, Clean_Order_type) return true } -func (o *OrderMod) CreateExtraOrder(AddChess, AddNewEmit, ChessList []int, EnergyMul, Level int) bool { - BeginExtraEmitId := orderCfg.GetEmitExtraOrder() // 从发射器F系列开始 +func (o *OrderMod) CreateExtraOrder(addChess, addNewEmit, chessList []int, energyMul, level int) bool { + beginExtraEmitId := orderCfg.GetEmitExtraOrder() // 从发射器F系列开始 b1 := false - OrderEmit := 0 - MaxLvChess := make(map[int]int) - for _, v := range AddNewEmit { - Emit_Id := mergeDataCfg.GetEmitId(v) - ok := Emit_Id >= BeginExtraEmitId - _, ok1 := o.EimtOrder[Emit_Id] + orderEmit := 0 + maxLvChess := make(map[int]int) + for _, v := range addNewEmit { + emit_Id := mergeDataCfg.GetEmitId(v) + ok := emit_Id >= beginExtraEmitId + _, ok1 := o.EimtOrder[emit_Id] ChessColor := mergeDataCfg.GetEmitProduceChessType(v) if ok && !ok1 && len(ChessColor) > 0 { b1 = true - OrderEmit = v - o.EimtOrder[Emit_Id] = struct{}{} + orderEmit = v + o.EimtOrder[emit_Id] = struct{}{} break } } - for _, ChessId := range AddChess { - Lv := mergeDataCfg.GetLvById(ChessId) - Type := mergeDataCfg.GetTypeById(ChessId) - if Type != "Product" { + for _, ChessId := range addChess { + lv := mergeDataCfg.GetLvById(ChessId) + cType := mergeDataCfg.GetTypeById(ChessId) + if cType != "Product" { continue } - MaxLv := mergeDataCfg.GetMaxLvById(ChessId) - if Lv == MaxLv { - MaxLvChess[ChessId]++ + maxLv := mergeDataCfg.GetMaxLvById(ChessId) + if lv == maxLv { + maxLvChess[ChessId]++ } } b3 := false @@ -586,15 +586,15 @@ func (o *OrderMod) CreateExtraOrder(AddChess, AddNewEmit, ChessList []int, Energ // } //额外订单补充1;CDEG发射器首次合成时,生成其对应2及棋子订单,完成后生成3及,再完成生成4及的; if b1 { - ChessColor := mergeDataCfg.GetEmitProduceChessType(OrderEmit) - if len(ChessColor) == 0 { + chessColor := mergeDataCfg.GetEmitProduceChessType(orderEmit) + if len(chessColor) == 0 { return b1 } - ChessId := mergeDataCfg.GetChessIdByLvAndColor(EnergyMul+1, ChessColor[0]) - if ChessId != 0 { - o.PreheatStep[ChessColor[0]] = 1 + chessId := mergeDataCfg.GetChessIdByLvAndColor(energyMul+1, chessColor[0]) + if chessId != 0 { + o.PreheatStep[chessColor[0]] = 1 Items := PreheatItems[1] - o.addPreheatOrder([]int{ChessId}, DIFF_LOW, Preheat_type, Items) + o.addPreheatOrder([]int{chessId}, DIFF_LOW, Preheat_type, Items) } } return b1 || b3 @@ -602,19 +602,19 @@ func (o *OrderMod) CreateExtraOrder(AddChess, AddNewEmit, ChessList []int, Energ // 返回订单列表 func (o *OrderMod) BackData() *msg.ResOrderList { - OrderList := make([]*msg.Order, 0) + orderList := make([]*msg.Order, 0) for k, v := range o.OrderList { mergeList := GoUtil.IntToInt32(v.MergeId) - Order := &msg.Order{ + order := &msg.Order{ Id: int32(k), ChessId: mergeList, Type: int32(v.Type), Items: item.ItemToMsg(v.Items), } - OrderList = append(OrderList, Order) + orderList = append(orderList, order) } return &msg.ResOrderList{ - OrderList: OrderList, + OrderList: orderList, } } @@ -638,41 +638,41 @@ func (o *OrderMod) CheckSuperOrder() bool { /* * 根据能量倍数 调整订单 */ -func (o *OrderMod) ChangeEnergyMul(lv int, Emit []int, EnergyMul int, ChessList []int) { +func (o *OrderMod) ChangeEnergyMul(lv int, emit []int, energyMul int, chessList []int) { for k, v := range o.OrderList { if v.Type == Preheat_type { // 预热订单 修改倍数时修改棋子等级 - ChessId := v.MergeId[0] - ChessColor := mergeDataCfg.GetColorById(ChessId) - PreheatStep := o.PreheatStep[ChessColor] - NewChessId := mergeDataCfg.GetChessIdByLvAndColor(EnergyMul+PreheatStep, ChessColor) - if NewChessId == 0 { + chessId := v.MergeId[0] + chessColor := mergeDataCfg.GetColorById(chessId) + preheatStep := o.PreheatStep[chessColor] + newChessId := mergeDataCfg.GetChessIdByLvAndColor(energyMul+preheatStep, chessColor) + if newChessId == 0 { continue } delete(o.OrderList, k) - Items, ok := PreheatItems[PreheatStep] + items, ok := PreheatItems[preheatStep] if !ok { - Items = []*item.Item{item.NewItem(item.ITEM_STAR_ID, GetOrderStar([]int{NewChessId}, Emit))} + items = []*item.Item{item.NewItem(item.ITEM_STAR_ID, GetOrderStar([]int{newChessId}, emit))} } - o.addPreheatOrder([]int{NewChessId}, DIFF_LOW, Preheat_type, Items) + o.addPreheatOrder([]int{newChessId}, DIFF_LOW, Preheat_type, items) } } - MaxStep := orderCfg.GetMaxStep() - if o.Step < MaxStep { // 还在新手引导阶段 + maxStep := orderCfg.GetMaxStep() + if o.Step < maxStep { // 还在新手引导阶段 return } for k, v := range o.OrderList { - NeedTrigger := false + needTrigger := false for _, vv := range v.MergeId { - Lv := mergeDataCfg.GetLvById(vv) - Color := mergeDataCfg.GetColorById(vv) - EmitId := GetEmitByColor(Emit, Color) - _, Max := getChesslvRange(EmitId, EnergyMul, o.IsCharge) - Adjust := mergeDataCfg.GetAdjust(EmitId, Color, EnergyMul) - if Lv >= EnergyMul+1 && Lv <= Max-Adjust { + lv := mergeDataCfg.GetLvById(vv) + color := mergeDataCfg.GetColorById(vv) + emitId := GetEmitByColor(emit, color) + _, max := getChesslvRange(emitId, energyMul, o.IsCharge) + adjust := mergeDataCfg.GetAdjust(emitId, color, energyMul) + if lv >= energyMul+1 && lv <= max-adjust { continue } - NeedTrigger = true + needTrigger = true } if v.Type != Common_type && v.Type != Pet_type { @@ -684,41 +684,41 @@ func (o *OrderMod) ChangeEnergyMul(lv int, Emit []int, EnergyMul int, ChessList 订单棋子等级>n+11 且该棋子在棋盘上没有 则删除该订单,重新生成一个普通订单 */ - if NeedTrigger { + if needTrigger { delete(o.OrderList, k) - o.CreateNormalOrder(lv, Emit, EnergyMul, v.Type) + o.CreateNormalOrder(lv, emit, energyMul, v.Type) } } } -func (o *OrderMod) Retire(EmitId string) { - ChessPool := make([]int, 0) - Product := mergeDataCfg.GetEmitOrderProduce(EmitId) +func (o *OrderMod) Retire(emitId string) { + chessPool := make([]int, 0) + product := mergeDataCfg.GetEmitOrderProduce(emitId) for _, v := range o.ChessPool { - Color := mergeDataCfg.GetColorById(v) - if GoUtil.InStringArray(Color, Product) { + color := mergeDataCfg.GetColorById(v) + if GoUtil.InStringArray(color, product) { continue } - ChessPool = append(ChessPool, v) + chessPool = append(chessPool, v) } - o.ChessPool = ChessPool + o.ChessPool = chessPool o.ColorShuffle = nil } -func (o *OrderMod) DelOrder(OrderId int) (*Order, error) { - Order, ok := o.OrderList[OrderId] +func (o *OrderMod) DelOrder(orderId int) (*Order, error) { + order, ok := o.OrderList[orderId] if !ok { return nil, fmt.Errorf("order not exist") } - if Order.Type != Clean_Order_type { + if order.Type != Clean_Order_type { return nil, fmt.Errorf("order type wrong") } - delete(o.OrderList, OrderId) - return &Order, nil + delete(o.OrderList, orderId) + return &order, nil } -func (o *OrderMod) CreateComfortOrder(lv int, Emit []int, EnergyMul, Diff, ChessNum int) error { - if len(Emit) == 0 { +func (o *OrderMod) CreateComfortOrder(lv int, emit []int, energyMul, diff, chessNum int) error { + if len(emit) == 0 { return nil } randNum := 0 @@ -729,14 +729,14 @@ func (o *OrderMod) CreateComfortOrder(lv int, Emit []int, EnergyMul, Diff, Chess break } randNum++ - mergeList, _, err = randOrderChessWithDiff(o, Emit, EnergyMul, Diff, ChessNum) + mergeList, _, err = randOrderChessWithDiff(o, emit, energyMul, diff, chessNum) if err != nil { continue } break } - o.addOrder(mergeList, Diff, COMFORT_TYPE) + o.addOrder(mergeList, diff, COMFORT_TYPE) return nil } diff --git a/src/server/game/mod/order/order_func.go b/src/server/game/mod/order/order_func.go index 45955ffe..cdeb003a 100644 --- a/src/server/game/mod/order/order_func.go +++ b/src/server/game/mod/order/order_func.go @@ -130,42 +130,42 @@ func getOrderDiffRand(Lv, Diff int) map[int]int { return d } -func getChessByDiff(Lv, Diff, Type int) (int, int, int) { - if Type == Common_type { - switch Diff { +func getChessByDiff(lv, diff, cType int) (int, int, int) { + if cType == Common_type { + switch diff { case DIFF_MID: return 100, 600, GoUtil.RandMap(map[int]int{1: 50, 2: 50}) case DIFF_HIGH: return 500, 1200, GoUtil.RandMap(map[int]int{1: 33, 2: 67}) default: - if Lv < 23 { + if lv < 23 { return 15, 150, GoUtil.RandMap(map[int]int{1: 67, 2: 33}) } return 30, 200, GoUtil.RandMap(map[int]int{1: 67, 2: 33}) } } - if Type == Pet_type { + if cType == Pet_type { return 40, 200, GoUtil.RandMap(map[int]int{1: 50, 2: 50}) } - if Type == Part_type { + if cType == Part_type { return 100, 600, GoUtil.RandMap(map[int]int{1: 50, 2: 50}) } - if Type == COMFORT_TYPE { + if cType == COMFORT_TYPE { return 15, 150, GoUtil.RandMap(map[int]int{1: 33, 2: 67}) } return 100, 600, GoUtil.RandMap(map[int]int{1: 50, 2: 50}) } // 根据订单难度生成棋子难度 -func getChessDiff(ChessNum, OrderDiff int) map[int]int { +func getChessDiff(chessNum, orderDiff int) map[int]int { var rs map[int]int - switch ChessNum { + switch chessNum { case 1: rs = map[int]int{ - 1: OrderDiff, + 1: orderDiff, } case 2: - switch OrderDiff { + switch orderDiff { case DIFF_LOW: rand := map[int]int{ DIFF_LOW: 99, @@ -199,7 +199,7 @@ func getChessDiff(ChessNum, OrderDiff int) map[int]int { } } case 3: - switch OrderDiff { + switch orderDiff { case DIFF_LOW: rand := map[int]int{ DIFF_LOW: 95, @@ -254,146 +254,146 @@ func getChessDiff(ChessNum, OrderDiff int) map[int]int { } // 根据难度生成棋子等级 -func getChessLv(Min, Max, Diff int) int { - Start := Min - End := Max - if Max-Min >= 5 { - switch Diff { +func getChessLv(minNum, maxNum, diff int) int { + start := minNum + end := maxNum + if maxNum-minNum >= 5 { + switch diff { case DIFF_LOW: - End = Min + (Max-Min+1)/3 - 1 + end = minNum + (maxNum-minNum+1)/3 - 1 case DIFF_MID: - Start = Min + (Max-Min+1)/3 - End = Min + (Max-Min+1)/3*2 - 1 + start = minNum + (maxNum-minNum+1)/3 + end = minNum + (maxNum-minNum+1)/3*2 - 1 case DIFF_HIGH: - Start = Min + (Max-Min+1)/3*2 + start = minNum + (maxNum-minNum+1)/3*2 } } - if Max-Min == 2 { - Start = Max - Diff + 1 - End = Start + if maxNum-minNum == 2 { + start = maxNum - diff + 1 + end = start } - if Max-Min == 3 { - switch Diff { + if maxNum-minNum == 3 { + switch diff { case DIFF_LOW: - End = Min + 1 + end = minNum + 1 case DIFF_MID: - Start = Min + 2 - End = Min + 2 + start = minNum + 2 + end = minNum + 2 case DIFF_HIGH: - Start = Min + 3 - End = Min + 3 + start = minNum + 3 + end = minNum + 3 } } - if Max-Min == 4 { - switch Diff { + if maxNum-minNum == 4 { + switch diff { case DIFF_LOW: - End = Min + 1 + end = minNum + 1 case DIFF_MID: - Start = Min + 2 - End = Min + 3 + start = minNum + 2 + end = minNum + 3 case DIFF_HIGH: - Start = Min + 4 - End = Min + 4 + start = minNum + 4 + end = minNum + 4 } } - Start = max(Min, Start) - End = max(Start, End) - End = min(Max, End) - return GoUtil.RandNum(Start, End) + start = max(minNum, start) + end = max(start, end) + end = min(maxNum, end) + return GoUtil.RandNum(start, end) } -func getChessLvRange(Min, Max, Diff int) []int { - Start := Min - End := Max - if Max-Min >= 5 { - switch Diff { +func getChessLvRange(minNum, maxNum, diff int) []int { + start := minNum + end := maxNum + if maxNum-minNum >= 5 { + switch diff { case DIFF_LOW: - End = Min + (Max-Min+1)/3 - 1 + end = minNum + (maxNum-minNum+1)/3 - 1 case DIFF_MID: - Start = Min + (Max-Min+1)/3 - End = Min + (Max-Min+1)/3*2 - 1 + start = minNum + (maxNum-minNum+1)/3 + end = minNum + (maxNum-minNum+1)/3*2 - 1 case DIFF_HIGH: - Start = Min + (Max-Min+1)/3*2 + start = minNum + (maxNum-minNum+1)/3*2 } } - if Max-Min == 4 { - switch Diff { + if maxNum-minNum == 4 { + switch diff { case DIFF_LOW: - End = Min + 1 + end = minNum + 1 case DIFF_MID: - Start = Min + 2 - End = Min + 3 + start = minNum + 2 + end = minNum + 3 case DIFF_HIGH: - Start = Min + 4 + start = minNum + 4 } } - if Max-Min == 3 { - switch Diff { + if maxNum-minNum == 3 { + switch diff { case DIFF_LOW: - End = Min + 1 + end = minNum + 1 case DIFF_MID: - Start = Min + 2 - End = Min + 2 + start = minNum + 2 + end = minNum + 2 case DIFF_HIGH: - Start = Min + 3 + start = minNum + 3 } } - Start = max(Min, Start) - End = max(Start, End) - End = min(Max, End) + start = max(minNum, start) + end = max(start, end) + end = min(maxNum, end) r := make([]int, 0) - for i := Start; i <= End; i++ { + for i := start; i <= end; i++ { r = append(r, i) } return r } // 宝箱雨随机棋子类型 -func RandChessColor(Emit []int) string { +func RandChessColor(emit []int) string { r := make(map[string]int) - for _, v := range Emit { - Produce := mergeDataCfg.GetEmitProduceType(v) - if len(Produce) == 0 { + for _, v := range emit { + produce := mergeDataCfg.GetEmitProduceType(v) + if len(produce) == 0 { continue } - if len(Produce) == 1 { - if Produce[0] == "" { + if len(produce) == 1 { + if produce[0] == "" { continue } - r[Produce[0]] = 100 + r[produce[0]] = 100 continue } - r[Produce[0]] = 80 - r[Produce[1]] = 20 + r[produce[0]] = 80 + r[produce[1]] = 20 } return GoUtil.RandStringMap(r) } // 获取棋子等级范围 -func getChesslvRange(Emit int, EnergyMul int, IsCharge bool) (int, int) { - RandEmitLv := mergeDataCfg.GetLvById(Emit) - EmitId := mergeDataCfg.GetEmitId(Emit) - RandMaxLv := mergeDataCfg.GetMaxLvById(Emit) - RandEmitMinLv := mergeDataCfg.GetEmitMinLvById(EmitId) - Ratio := mergeDataCfg.GetEmitRatio(EmitId) - m := int(float64(1+RandEmitLv-RandEmitMinLv) / float64(1+RandMaxLv-RandEmitMinLv) / Ratio * 100) +func getChesslvRange(emit int, EnergyMul int, IsCharge bool) (int, int) { + randEmitLv := mergeDataCfg.GetLvById(emit) + emitId := mergeDataCfg.GetEmitId(emit) + randMaxLv := mergeDataCfg.GetMaxLvById(emit) + randEmitMinLv := mergeDataCfg.GetEmitMinLvById(emitId) + ratio := mergeDataCfg.GetEmitRatio(emitId) + m := int(float64(1+randEmitLv-randEmitMinLv) / float64(1+randMaxLv-randEmitMinLv) / ratio * 100) if IsCharge { m += 10 } m = max(1, m) m = min(100, m) - ChessMinLev := orderCfg.GetLvMin(EnergyMul) - ChessMaxLev := orderCfg.GetLvMax(EnergyMul, m) - return ChessMinLev, ChessMaxLev + chessMinLev := orderCfg.GetLvMin(EnergyMul) + chessMaxLev := orderCfg.GetLvMax(EnergyMul, m) + return chessMinLev, chessMaxLev } // 根据类型获取发射器id -func GetEmitByColor(Emit []int, color string) int { - sort.Ints(Emit) - for _, v := range Emit { - Produce := mergeDataCfg.GetEmitProduceChessType(v) - for _, c := range Produce { +func GetEmitByColor(emit []int, color string) int { + sort.Ints(emit) + for _, v := range emit { + produce := mergeDataCfg.GetEmitProduceChessType(v) + for _, c := range produce { if c == color { return v } @@ -402,109 +402,109 @@ func GetEmitByColor(Emit []int, color string) int { return 0 } -func GetVirtualEnergy(MergeList, EmitList []int) int { +func GetVirtualEnergy(mergeList, emitList []int) int { eneryg := 0 - for _, v := range MergeList { - ChessLv := mergeDataCfg.GetLvById(v) - Color := mergeDataCfg.GetColorById(v) - EmitId := GetEmitByColor(EmitList, Color) - if EmitId == 0 { + for _, v := range mergeList { + chessLv := mergeDataCfg.GetLvById(v) + color := mergeDataCfg.GetColorById(v) + emitId := GetEmitByColor(emitList, color) + if emitId == 0 { continue } - NewChessLv := mergeDataCfg.DynamicLevRev(ChessLv, EmitId, Color) - eneryg += int(math.Pow(2, float64(NewChessLv-1))) + newChessLv := mergeDataCfg.DynamicLevRev(chessLv, emitId, color) + eneryg += int(math.Pow(2, float64(newChessLv-1))) } return eneryg } // randSuperOrderChess 随机生成超级订单棋子 -func randSuperOrderChess(o *OrderMod, lv int, Emit []int, EnergyMul, OrderDiff int) ([]int, int, error) { - initReflectChess(Emit, EnergyMul) +func randSuperOrderChess(o *OrderMod, lv int, emit []int, energyMul, orderDiff int) ([]int, int, error) { + initReflectChess(emit, energyMul) filterPool(o) - OrderN, err := userCfg.GetOrderNByLv(lv) - RandChessNum := map[int]int{ - 2: 70 - OrderN, - 3: 30 + OrderN, + orderN, err := userCfg.GetOrderNByLv(lv) + randChessNum := map[int]int{ + 2: 70 - orderN, + 3: 30 + orderN, } if err != nil { return nil, DIFF_LOW, err } - ChessNum := GoUtil.RandMap(RandChessNum) - ChessDiff := getChessDiff(ChessNum, OrderDiff) - return buildMergeListFromDiff(o, ChessDiff, Emit, EnergyMul, OrderDiff) + chessNum := GoUtil.RandMap(randChessNum) + chessDiff := getChessDiff(chessNum, orderDiff) + return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff) } // randOrderChessWithDiff 随机生成订单棋子 -func randOrderChessWithDiff(o *OrderMod, Emit []int, EnergyMul, OrderDiff, ChessNum int) ([]int, int, error) { - initReflectChess(Emit, EnergyMul) +func randOrderChessWithDiff(o *OrderMod, emit []int, energyMul, orderDiff, chessNum int) ([]int, int, error) { + initReflectChess(emit, energyMul) filterPool(o) - ChessDiff := getChessDiff(ChessNum, OrderDiff) - return buildMergeListFromDiff(o, ChessDiff, Emit, EnergyMul, OrderDiff) + chessDiff := getChessDiff(chessNum, orderDiff) + return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff) } // 随机生成订单棋子 -func randOrderChess(o *OrderMod, lv int, Emit []int, EnergyMul, OrderType int) ([]int, int, error) { - initReflectChess(Emit, EnergyMul) +func randOrderChess(o *OrderMod, lv int, emit []int, energyMul, orderType int) ([]int, int, error) { + initReflectChess(emit, energyMul) filterPool(o) // 生成订单难度和棋子数量 - OrderDiffRand := getOrderDiffRand(lv, o.LastDiff) - OrderDiff := GoUtil.RandMap(OrderDiffRand) + orderDiffRand := getOrderDiffRand(lv, o.LastDiff) + orderDiff := GoUtil.RandMap(orderDiffRand) if o.NextDiff != 0 { - OrderDiff = o.NextDiff + orderDiff = o.NextDiff o.NextDiff = 0 } //获取订单体力范围和棋子数量 - MinEnergy, MaxEnergy, ChessNum := getChessByDiff(lv, OrderDiff, OrderType) - mergeList := getChessFromPoolByEnergy(o, MinEnergy, MaxEnergy, ChessNum, Emit, EnergyMul, OrderDiff, OrderType) - return mergeList, OrderDiff, nil + MinEnergy, MaxEnergy, ChessNum := getChessByDiff(lv, orderDiff, orderType) + mergeList := getChessFromPoolByEnergy(o, MinEnergy, MaxEnergy, ChessNum, emit, energyMul, orderDiff, orderType) + return mergeList, orderDiff, nil } -func randOrderChessSeed(o *OrderMod, Emit []int, EnergyMul, OrderDiff int) ([]int, int, error) { - initReflectChess(Emit, EnergyMul) +func randOrderChessSeed(o *OrderMod, emit []int, energyMul, orderDiff int) ([]int, int, error) { + initReflectChess(emit, energyMul) filterPool(o) - ChessDiff := getChessDiff(2, OrderDiff) - return buildMergeListFromDiff(o, ChessDiff, Emit, EnergyMul, OrderDiff) + chessDiff := getChessDiff(2, orderDiff) + return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff) } // buildMergeListFromDiff 根据棋子难度映射表从池中取棋子(提取三处重复逻辑) -func buildMergeListFromDiff(o *OrderMod, ChessDiff map[int]int, Emit []int, EnergyMul, OrderDiff int) ([]int, int, error) { - mergeList := make([]int, 0, len(ChessDiff)) - for _, v := range ChessDiff { - ChessId := 0 +func buildMergeListFromDiff(o *OrderMod, chessDiff map[int]int, emit []int, energyMul, orderDiff int) ([]int, int, error) { + mergeList := make([]int, 0, len(chessDiff)) + for _, v := range chessDiff { + chessId := 0 for n := 0; n < 50; n++ { - ChessId = getChessFromPoolByDiff(o, v, Emit, EnergyMul) - if ChessId != 0 && !GoUtil.InArray(ChessId, mergeList) { + chessId = getChessFromPoolByDiff(o, v, emit, energyMul) + if chessId != 0 && !GoUtil.InArray(chessId, mergeList) { break } } - mergeList = append(mergeList, ChessId) + mergeList = append(mergeList, chessId) } - return mergeList, OrderDiff, nil + return mergeList, orderDiff, nil } // 筛选棋子池 从中剔除不符合难度的棋子 func filterPool(o *OrderMod) { - var NewPool []int + var newPool []int for _, v := range o.ChessPool { if _, ok := reflectChess[v]; ok { - NewPool = append(NewPool, v) + newPool = append(newPool, v) } } - o.ChessPool = NewPool + o.ChessPool = newPool } -func ShuffleColor(List []string, Last string) []string { - if len(List) <= 1 { - return List +func ShuffleColor(list []string, last string) []string { + if len(list) <= 1 { + return list } Break := 0 - var List2 []string - var List3 []string - for _, v := range List { + var list2 []string + var list3 []string + for _, v := range list { if mergeDataCfg.GetEmitProductNumByColor(v) == 1 { - List3 = append(List3, v) + list3 = append(list3, v) } else { - List2 = append(List2, v) + list2 = append(list2, v) } } @@ -514,7 +514,7 @@ func ShuffleColor(List []string, Last string) []string { break } Same := false - NewList := GoUtil.ShuffleStringArray(List2) + NewList := GoUtil.ShuffleStringArray(list2) for i := 1; i < len(NewList); i++ { BeforeSries := mergeDataCfg.GetEmitTypeByColor(NewList[i-1]) NowSries := mergeDataCfg.GetEmitTypeByColor(NewList[i]) @@ -523,9 +523,9 @@ func ShuffleColor(List []string, Last string) []string { break } } - // 将 List3 随机插入 NewList 中 - if len(List3) > 0 { - for _, v := range GoUtil.ShuffleStringArray(List3) { + // 将 list3 随机插入 NewList 中 + if len(list3) > 0 { + for _, v := range GoUtil.ShuffleStringArray(list3) { idx := GoUtil.RandNum(0, len(NewList)) if idx >= len(NewList) { NewList = append(NewList, v) @@ -535,7 +535,7 @@ func ShuffleColor(List []string, Last string) []string { } } } - if NewList[0] == Last { + if NewList[0] == last { continue } @@ -543,149 +543,148 @@ func ShuffleColor(List []string, Last string) []string { return NewList } } - L1 := make(map[string][]string, 0) - for _, v := range List { + sriesList := make(map[string][]string, 0) + for _, v := range list { Sries := mergeDataCfg.GetEmitTypeByColor(v) - L1[Sries] = append(L1[Sries], v) + sriesList[Sries] = append(sriesList[Sries], v) } - List = make([]string, 0) - for _, v := range L1 { - - List = append(List, v[0]) + list = make([]string, 0) + for _, v := range sriesList { + list = append(list, v[0]) } - for _, v := range L1 { + for _, v := range sriesList { if len(v) > 1 { - List = append(List, v[1]) + list = append(list, v[1]) } } - for _, v := range L1 { + for _, v := range sriesList { if len(v) > 2 { - List = append(List, v[2]) + list = append(list, v[2]) } } - if List[0] == Last { - List[0], List[1] = List[1], List[0] + if list[0] == last { + list[0], list[1] = list[1], list[0] } - return List + return list } // 获取发射器系列 -func getEmitSeries(o *OrderMod, Emit []int, OrderType int) string { - o.initColorShuffle(Emit) - PopEmitId := "" - NewSlice := make([]string, 0) - ChessColorNum := map[string]int{} +func getEmitSeries(o *OrderMod, emit []int, orderType int) string { + o.initColorShuffle(emit) + popEmitId := "" + newSlice := make([]string, 0) + chessColorNum := map[string]int{} for _, v := range o.OrderList { for _, c := range v.MergeId { - Color := mergeDataCfg.GetColorById(c) - ChessColorNum[Color]++ + color := mergeDataCfg.GetColorById(c) + chessColorNum[color]++ } } - Break := 0 + breakNum := 0 for { - if Break > 1000 { + if breakNum > 1000 { break } - Break++ - PopEmitId, NewSlice = GoUtil.PopStringArray(o.ColorShuffle) - o.ColorShuffle = NewSlice - if PopEmitId == "" { - o.initColorShuffle(Emit) + breakNum++ + popEmitId, newSlice = GoUtil.PopStringArray(o.ColorShuffle) + o.ColorShuffle = newSlice + if popEmitId == "" { + o.initColorShuffle(emit) continue } - if o.LastColor == PopEmitId { + if o.LastColor == popEmitId { continue } - if OrderType == Pet_type { - EmitId := getEmitBySeries(Emit, PopEmitId) - EmitInfo, _ := mergeDataCfg.GetOne(EmitId) - if EmitInfo.Emit_Type == "auto" { + if orderType == Pet_type { + emitId := getEmitBySeries(emit, popEmitId) + emitInfo, _ := mergeDataCfg.GetOne(emitId) + if emitInfo.Emit_Type == "auto" { continue } } - PopEmitIdProductNum := mergeDataCfg.GetEmitProductNumByColor(PopEmitId) - o.initColorShuffle(Emit) + popEmitIdProductNum := mergeDataCfg.GetEmitProductNumByColor(popEmitId) + o.initColorShuffle(emit) // 单链棋子 且订单中已有两个 跳过 - if PopEmitIdProductNum == 1 && ChessColorNum[PopEmitId] >= 2 { + if popEmitIdProductNum == 1 && chessColorNum[popEmitId] >= 2 { continue } else { break } } - o.ColorShuffle = NewSlice - o.LastColor = PopEmitId - o.initColorShuffle(Emit) - return PopEmitId + o.ColorShuffle = newSlice + o.LastColor = popEmitId + o.initColorShuffle(emit) + return popEmitId } -func (o *OrderMod) initColorShuffle(Emit []int) { +func (o *OrderMod) initColorShuffle(emit []int) { if len(o.ColorShuffle) == 0 { - ColorShuffle := make([]string, 0) - for _, v := range Emit { - EmitId := mergeDataCfg.GetEmitId(v) - if GoUtil.InStringArray(EmitId, o.AutoEmit) { + colorShuffle := make([]string, 0) + for _, v := range emit { + emitId := mergeDataCfg.GetEmitId(v) + if GoUtil.InStringArray(emitId, o.AutoEmit) { continue } - EmitProduct := mergeDataCfg.GetEmitProduceType(v) + emitProduct := mergeDataCfg.GetEmitProduceType(v) - if len(EmitProduct) == 0 || EmitProduct[0] == "" { + if len(emitProduct) == 0 || emitProduct[0] == "" { continue } - Preheat, ok := o.PreheatStep[EmitProduct[0]] + Preheat, ok := o.PreheatStep[emitProduct[0]] // 预热订单未全部完成 排除 if ok && Preheat < 5 { continue } - ColorShuffle = append(ColorShuffle, EmitProduct...) + colorShuffle = append(colorShuffle, emitProduct...) } - o.ColorShuffle = ShuffleColor(ColorShuffle, o.LastColor) + o.ColorShuffle = ShuffleColor(colorShuffle, o.LastColor) } } // 订单能获取的宠物币 -func GetOrderStar(ChessList []int, EmitList []int) int { - Star := 0 - for _, v := range ChessList { +func GetOrderStar(chessList []int, emitList []int) int { + star := 0 + for _, v := range chessList { ChessLv := mergeDataCfg.GetLvById(v) Color := mergeDataCfg.GetColorById(v) - EmitId := GetEmitByColor(EmitList, Color) + EmitId := GetEmitByColor(emitList, Color) if EmitId == 0 { continue } - NewChessLv := mergeDataCfg.DynamicLevRev(ChessLv, EmitId, Color) - n := orderCfg.GetOrderK(NewChessLv) - Star += n + newChessLv := mergeDataCfg.DynamicLevRev(ChessLv, EmitId, Color) + n := orderCfg.GetOrderK(newChessLv) + star += n } - return Star + return star } -func GetChessByDiff(EmitId, EnergyMul, Diff int, Color string) []int { - ChessMinLv, ChessMaxLv := getChesslvRange(EmitId, EnergyMul, false) - LvRange := getChessLvRange(ChessMinLv, ChessMaxLv, Diff) - var ChessIds []int - for _, v := range LvRange { - NewLev1 := mergeDataCfg.DynamicLev(v, EmitId, Color) - MaxLev := mergeDataCfg.GetMaxLvByColor(Color) - NewLev1 = min(NewLev1, MaxLev) - ChessId := mergeDataCfg.GetChessIdByLvAndColor(NewLev1, Color) - if ChessId == 0 { +func GetChessByDiff(emitId, energyMul, diff int, color string) []int { + chessMinLv, chessMaxLv := getChesslvRange(emitId, energyMul, false) + lvRange := getChessLvRange(chessMinLv, chessMaxLv, diff) + var chessIds []int + for _, v := range lvRange { + newLev1 := mergeDataCfg.DynamicLev(v, emitId, color) + maxLev := mergeDataCfg.GetMaxLvByColor(color) + newLev1 = min(newLev1, maxLev) + chessId := mergeDataCfg.GetChessIdByLvAndColor(newLev1, color) + if chessId == 0 { continue } - ChessIds = append(ChessIds, ChessId) + chessIds = append(chessIds, chessId) } - return GoUtil.UniqueInts(ChessIds) + return GoUtil.UniqueInts(chessIds) } -func (o *OrderMod) getChessLvFromConfig1(MinEnergy, MaxEnergy, MinLv, MaxLv, LastEnergy int) []int { +func (o *OrderMod) getChessLvFromConfig1(minEnergy, maxEnergy, minLv, maxLv, lastEnergy int) []int { var rand []int t := 0 - if LastEnergy > 0 { + if lastEnergy > 0 { t = 1 } for _, v := range orderCfgMap { - if MinEnergy >= v.Min && MaxEnergy <= v.Max { + if minEnergy >= v.Min && maxEnergy <= v.Max { for _, info := range v.Pool { - if MinLv <= info.lv && MaxLv >= info.lv && LastEnergy+info.energy <= MaxEnergy && LastEnergy+info.energy >= MinEnergy && t >= info.t { + if minLv <= info.lv && maxLv >= info.lv && lastEnergy+info.energy <= maxEnergy && lastEnergy+info.energy >= minEnergy && t >= info.t { rand = append(rand, info.lv) } } @@ -694,27 +693,27 @@ func (o *OrderMod) getChessLvFromConfig1(MinEnergy, MaxEnergy, MinLv, MaxLv, Las return rand } -func (o *OrderMod) ChessPoolChess(Color string, Lv int) bool { - for _, v := range o.ChessPool2[Color] { - if v > Lv { +func (o *OrderMod) ChessPoolChess(color string, lv int) bool { + for _, v := range o.ChessPool2[color] { + if v > lv { return true } } return false } -func (o *OrderMod) getFromPool(Emit int, Color string, Lv int) { - for i, v := range o.ChessPool2[Color] { - if v == Lv { - o.ChessPool2[Color] = append(o.ChessPool2[Color][:i], o.ChessPool2[Color][i+1:]...) +func (o *OrderMod) getFromPool(Emit int, color string, lv int) { + for i, v := range o.ChessPool2[color] { + if v == lv { + o.ChessPool2[color] = append(o.ChessPool2[color][:i], o.ChessPool2[color][i+1:]...) return } } - for i, v := range o.ChessPool2[Color] { - if v > Lv { - o.ChessPool2[Color] = append(o.ChessPool2[Color][:i], o.ChessPool2[Color][i+1:]...) - for k := Lv; k < v; k++ { - o.ChessPool2[Color] = append(o.ChessPool2[Color], k) + for i, v := range o.ChessPool2[color] { + if v > lv { + o.ChessPool2[color] = append(o.ChessPool2[color][:i], o.ChessPool2[color][i+1:]...) + for k := lv; k < v; k++ { + o.ChessPool2[color] = append(o.ChessPool2[color], k) } return } @@ -724,94 +723,92 @@ func (o *OrderMod) getFromPool(Emit int, Color string, Lv int) { return } for _, v := range Product { - if Color == v { + if color == v { continue } - o.ChessPool2[Color] = append(o.ChessPool2[Color], Lv) + o.ChessPool2[color] = append(o.ChessPool2[color], lv) } } -func (o *OrderMod) getChessIdPool(Emit []int, Color string, EnergyMul, MinEnergy, MaxEnergy, OrderDiff, LastEnergy int) (int, int) { - ChessLv := 0 - EmitChessId := getEmitBySeries(Emit, Color) - ChessMinLv, ChessMaxLv := getChesslvRange(EmitChessId, EnergyMul, o.IsCharge) - ChessLvRand := o.getChessLvFromConfig1(MinEnergy, MaxEnergy, ChessMinLv, ChessMaxLv, LastEnergy) - Pool := o.ChessPool2[Color] - ChessLvRand2 := make([]int, 0) - for _, v := range ChessLvRand { - if GoUtil.InArray(v, Pool) { - ChessLvRand2 = append(ChessLvRand2, v) +func (o *OrderMod) getChessIdPool(emit []int, color string, energyMul, minEnergy, maxEnergy, orderDiff, lastEnergy int) (int, int) { + chessLv := 0 + emitChessId := getEmitBySeries(emit, color) + chessMinLv, ChessMaxLv := getChesslvRange(emitChessId, energyMul, o.IsCharge) + chessLvRand := o.getChessLvFromConfig1(minEnergy, maxEnergy, chessMinLv, ChessMaxLv, lastEnergy) + pool := o.ChessPool2[color] + chessLvRand2 := make([]int, 0) + for _, v := range chessLvRand { + if GoUtil.InArray(v, pool) { + chessLvRand2 = append(chessLvRand2, v) } } - if len(ChessLvRand2) > 0 { - ChessLv = GoUtil.RandSlice(ChessLvRand2) + if len(chessLvRand2) > 0 { + chessLv = GoUtil.RandSlice(chessLvRand2) } - sort.Ints(ChessLvRand) - if len(ChessLvRand) > 0 && len(ChessLvRand2) == 0 && o.ChessPoolChess(Color, ChessLvRand[len(ChessLvRand)-1]) { - ChessLv = ChessLvRand[len(ChessLvRand)-1] + sort.Ints(chessLvRand) + if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) { + chessLv = chessLvRand[len(chessLvRand)-1] } - if len(ChessLvRand) > 0 && len(ChessLvRand2) == 0 && !o.ChessPoolChess(Color, ChessLvRand[len(ChessLvRand)-1]) && len(ChessLvRand) > 0 { - ChessLv = GoUtil.RandSlice(ChessLvRand) + if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && !o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) && len(chessLvRand) > 0 { + chessLv = GoUtil.RandSlice(chessLvRand) } - if ChessLv == 0 { - ChessLv = 6 - o.NextDiff = OrderDiff + if chessLv == 0 { + chessLv = 6 + o.NextDiff = orderDiff } - o.getFromPool(EmitChessId, Color, ChessLv) - NewLev := mergeDataCfg.DynamicLev(ChessLv, EmitChessId, Color) - MaxLev := mergeDataCfg.GetMaxLvByColor(Color) - NewLev1 := adjustLev(NewLev, EnergyMul) - NewLev2 := min(NewLev1, MaxLev) - Chess := mergeDataCfg.GetChessIdByLvAndColor(NewLev2, Color) - if Chess == 0 { - Chess = mergeDataCfg.GetChessIdByLvAndColor(6, Color) + o.getFromPool(emitChessId, color, chessLv) + newLev := mergeDataCfg.DynamicLev(chessLv, emitChessId, color) + maxLev := mergeDataCfg.GetMaxLvByColor(color) + newLev1 := adjustLev(newLev, energyMul) + newLev2 := min(newLev1, maxLev) + chess := mergeDataCfg.GetChessIdByLvAndColor(newLev2, color) + if chess == 0 { + chess = mergeDataCfg.GetChessIdByLvAndColor(6, color) } - return Chess, ChessLv + return chess, chessLv } -func getChessFromPoolByEnergy(o *OrderMod, MinEnergy, MaxEnergy, ChessNum int, Emit []int, EnergyMul, OrderDiff, OrderType int) []int { - ColorArr := make([]string, 0) +func getChessFromPoolByEnergy(o *OrderMod, minEnergy, maxEnergy, ChessNum int, Emit []int, energyMul, orderDiff, orderType int) []int { + colorArr := make([]string, 0) for i := 0; i < ChessNum; i++ { - ColorArr = append(ColorArr, getEmitSeries(o, Emit, OrderType)) + colorArr = append(colorArr, getEmitSeries(o, Emit, orderType)) } - if len(ColorArr) == 2 && ColorArr[0] == ColorArr[1] { - } - if len(ColorArr) == 1 { - Chess, _ := o.getChessIdPool(Emit, ColorArr[0], EnergyMul, MinEnergy, MaxEnergy, OrderDiff, 0) - if Chess == 0 { - Chess = mergeDataCfg.GetChessIdByLvAndColor(6, ColorArr[0]) + if len(colorArr) == 1 { + chess, _ := o.getChessIdPool(Emit, colorArr[0], energyMul, minEnergy, maxEnergy, orderDiff, 0) + if chess == 0 { + chess = mergeDataCfg.GetChessIdByLvAndColor(6, colorArr[0]) } - return []int{Chess} + return []int{chess} } - if len(ColorArr) == 2 { - Chess1, Chess1Lv := o.getChessIdPool(Emit, ColorArr[0], EnergyMul, MinEnergy, MaxEnergy, OrderDiff, 0) - if Chess1 == 0 { - Chess1 = mergeDataCfg.GetChessIdByLvAndColor(6, ColorArr[0]) + if len(colorArr) == 2 { + chess1, chess1Lv := o.getChessIdPool(Emit, colorArr[0], energyMul, minEnergy, maxEnergy, orderDiff, 0) + if chess1 == 0 { + chess1 = mergeDataCfg.GetChessIdByLvAndColor(6, colorArr[0]) } - Energy := int(math.Pow(2, float64(Chess1Lv-1))) - Chess2, _ := o.getChessIdPool(Emit, ColorArr[1], EnergyMul, MinEnergy, MaxEnergy, OrderDiff, Energy) - return []int{Chess1, Chess2} + energy := int(math.Pow(2, float64(chess1Lv-1))) + chess2, _ := o.getChessIdPool(Emit, colorArr[1], energyMul, minEnergy, maxEnergy, orderDiff, energy) + return []int{chess1, chess2} } return nil } // 从棋子池中获取棋子 -func getChessFromPoolByDiff(o *OrderMod, Diff int, Emit []int, EnergyMul int) int { - Color := getEmitSeries(o, Emit, 0) - EmitChessId := getEmitBySeries(Emit, Color) +func getChessFromPoolByDiff(o *OrderMod, diff int, emit []int, energyMul int) int { + color := getEmitSeries(o, emit, 0) + emitChessId := getEmitBySeries(emit, color) //ColorRand := mergeDataCfg.GetEmitProduceType(EmitChessId) // 从棋子池中获取棋子 - MinChessId := 0 + minChessId := 0 for i, chess := range o.ChessPool { chessColor := mergeDataCfg.GetColorById(chess) - if Color != chessColor { + if color != chessColor { continue } - if reflectChess[chess] > Diff { - MinChessId = chess + if reflectChess[chess] > diff { + minChessId = chess } - ChessLv := mergeDataCfg.GetLvById(chess) - if reflectChess[chess] == Diff && ChessLv >= EnergyMul+1 && ChessLv <= EnergyMul+12 { + chessLv := mergeDataCfg.GetLvById(chess) + if reflectChess[chess] == diff && chessLv >= energyMul+1 && chessLv <= energyMul+12 { o.ChessPool = append(o.ChessPool[:i], o.ChessPool[i+1:]...) return chess } @@ -819,98 +816,98 @@ func getChessFromPoolByDiff(o *OrderMod, Diff int, Emit []int, EnergyMul int) in /** 获取不到时选最接近的棋子 * 1. 选取最接近的棋子 */ - if MinChessId != 0 { - ColorRand := mergeDataCfg.GetEmitProduceType(EmitChessId) - ChessMinLv, ChessMaxLv := getChesslvRange(EmitChessId, EnergyMul, o.IsCharge) - NewLev := getChessLv(ChessMinLv, ChessMaxLv, Diff) - MinChessLv := mergeDataCfg.GetLvById(MinChessId) - NewLev2 := mergeDataCfg.DynamicLev2(NewLev, EmitChessId, ColorRand[0], Color) - NewLev3 := adjustLev(NewLev2, EnergyMul) - o.ChessPool = GoUtil.DeleteEleByValue(o.ChessPool, MinChessId) - for i := NewLev3; i < MinChessLv; i++ { - ChessId2 := mergeDataCfg.GetChessIdByLvAndColor(i, Color) - if ChessId2 != 0 { - o.ChessPool = append(o.ChessPool, ChessId2) + if minChessId != 0 { + colorRand := mergeDataCfg.GetEmitProduceType(emitChessId) + chessMinLv, ChessMaxLv := getChesslvRange(emitChessId, energyMul, o.IsCharge) + newLev := getChessLv(chessMinLv, ChessMaxLv, diff) + minChessLv := mergeDataCfg.GetLvById(minChessId) + newLev2 := mergeDataCfg.DynamicLev2(newLev, emitChessId, colorRand[0], color) + newLev3 := adjustLev(newLev2, energyMul) + o.ChessPool = GoUtil.DeleteEleByValue(o.ChessPool, minChessId) + for i := newLev3; i < minChessLv; i++ { + chessId2 := mergeDataCfg.GetChessIdByLvAndColor(i, color) + if chessId2 != 0 { + o.ChessPool = append(o.ChessPool, chessId2) } } - Chess := mergeDataCfg.GetChessIdByLvAndColor(NewLev2, Color) - return Chess + chess := mergeDataCfg.GetChessIdByLvAndColor(newLev2, color) + return chess } - ChessMinLv, ChessMaxLv := getChesslvRange(EmitChessId, EnergyMul, o.IsCharge) - NewLev := getChessLv(ChessMinLv, ChessMaxLv, Diff) - NewLev1 := mergeDataCfg.DynamicLev(NewLev, EmitChessId, Color) - MaxLev := mergeDataCfg.GetMaxLvByColor(Color) - NewLev1 = min(NewLev1, MaxLev) - ChessId := mergeDataCfg.GetChessIdByLvAndColor(NewLev1, Color) - ProductColor := mergeDataCfg.GetEmitProduceType(EmitChessId) - for _, i := range ProductColor { - if i == Color { + chessMinLv, chessMaxLv := getChesslvRange(emitChessId, energyMul, o.IsCharge) + newLev := getChessLv(chessMinLv, chessMaxLv, diff) + newLev1 := mergeDataCfg.DynamicLev(newLev, emitChessId, color) + maxLev := mergeDataCfg.GetMaxLvByColor(color) + newLev1 = min(newLev1, maxLev) + chessId := mergeDataCfg.GetChessIdByLvAndColor(newLev1, color) + productColor := mergeDataCfg.GetEmitProduceType(emitChessId) + for _, i := range productColor { + if i == color { continue } - NewLev2 := mergeDataCfg.DynamicLev2(NewLev1, EmitChessId, Color, i) - NewLev2 = adjustLev(NewLev2, EnergyMul) - MaxLev := mergeDataCfg.GetMaxLvByColor(i) - NewLev2 = min(NewLev2, MaxLev) - ChessId2 := mergeDataCfg.GetChessIdByLvAndColor(NewLev2, i) - if ChessId2 != 0 { - o.ChessPool = append(o.ChessPool, ChessId2) + newLev2 := mergeDataCfg.DynamicLev2(newLev1, emitChessId, color, i) + newLev2 = adjustLev(newLev2, energyMul) + maxLev := mergeDataCfg.GetMaxLvByColor(i) + newLev2 = min(newLev2, maxLev) + chessId2 := mergeDataCfg.GetChessIdByLvAndColor(newLev2, i) + if chessId2 != 0 { + o.ChessPool = append(o.ChessPool, chessId2) } } o.ChessPool = GoUtil.ShuffleArray(o.ChessPool) if len(o.ChessPool) > 200 { o.ChessPool = o.ChessPool[:200] } - return ChessId + return chessId } // 初始化棋子难度映射表 -func initReflectChess(Emits []int, EnergyMul int) { +func initReflectChess(emits []int, energyMul int) { reflectChess = make(map[int]int) - Start, End := 0, 0 - for _, Emit := range Emits { - ProduceColor := mergeDataCfg.GetEmitProduceType(Emit) - if len(ProduceColor) == 0 || ProduceColor[0] == "" { + start, end := 0, 0 + for _, emit := range emits { + produceColor := mergeDataCfg.GetEmitProduceType(emit) + if len(produceColor) == 0 || produceColor[0] == "" { continue } - ChessMinLv, ChessMaxLv := getChesslvRange(Emit, EnergyMul, false) - Product := mergeDataCfg.GetEmitProduceChessType(Emit) - Start = ChessMinLv - End = ChessMinLv + (ChessMaxLv-ChessMinLv+1)/3 - 1 - for _, v := range Product { - Adjust := mergeDataCfg.DynamicAdjust(Emit, v, EnergyMul) - initReflectChess2(v, Start, End, DIFF_LOW, Adjust) + chessMinLv, chessMaxLv := getChesslvRange(emit, energyMul, false) + product := mergeDataCfg.GetEmitProduceChessType(emit) + start = chessMinLv + end = chessMinLv + (chessMaxLv-chessMinLv+1)/3 - 1 + for _, v := range product { + adjust := mergeDataCfg.DynamicAdjust(emit, v, energyMul) + initReflectChess2(v, start, end, DIFF_LOW, adjust) } - Start = ChessMinLv + (ChessMaxLv-ChessMinLv+1)/3 - End = ChessMinLv + (ChessMaxLv-ChessMinLv+1)/3*2 - 1 - for _, v := range Product { - Adjust := mergeDataCfg.DynamicAdjust(Emit, v, EnergyMul) - initReflectChess2(v, Start, End, DIFF_MID, Adjust) + start = chessMinLv + (chessMaxLv-chessMinLv+1)/3 + end = chessMinLv + (chessMaxLv-chessMinLv+1)/3*2 - 1 + for _, v := range product { + adjust := mergeDataCfg.DynamicAdjust(emit, v, energyMul) + initReflectChess2(v, start, end, DIFF_MID, adjust) } - Start = ChessMinLv + (ChessMaxLv-ChessMinLv+1)/3*2 - End = ChessMaxLv - for _, v := range Product { - Adjust := mergeDataCfg.DynamicAdjust(Emit, v, EnergyMul) - initReflectChess2(v, Start, End, DIFF_HIGH, Adjust) + start = chessMinLv + (chessMaxLv-chessMinLv+1)/3*2 + end = chessMaxLv + for _, v := range product { + adjust := mergeDataCfg.DynamicAdjust(emit, v, energyMul) + initReflectChess2(v, start, end, DIFF_HIGH, adjust) } } } -func initReflectChess2(Color string, Start, End, Diff, adjust int) { - for i := Start; i <= End; i++ { - Lv := max(i-adjust, 1) - ChessId := mergeDataCfg.GetChessIdByLvAndColor(Lv, Color) - if ChessId == 0 { +func initReflectChess2(color string, start, end, diff, adjust int) { + for i := start; i <= end; i++ { + lv := max(i-adjust, 1) + chessId := mergeDataCfg.GetChessIdByLvAndColor(lv, color) + if chessId == 0 { continue } - reflectChess[ChessId] = Diff + reflectChess[chessId] = diff } } -func AdjustLev(Lev, EnergyMul int) int { - return adjustLev(Lev, EnergyMul) +func AdjustLev(lev, energyMul int) int { + return adjustLev(lev, energyMul) } // 调整棋子等级 -func adjustLev(Lev, EnergyMul int) int { +func adjustLev(lev, energyMul int) int { randMapList := map[int]map[int]int{ 1: {}, 2: {0: 30, 1: 70}, @@ -924,20 +921,20 @@ func adjustLev(Lev, EnergyMul int) int { 10: {5: 40, 6: 60}, 11: {5: 20, 6: 70, 7: 10}, } - if v, ok := randMapList[EnergyMul]; ok { - Lev += GoUtil.RandMap(v) + if v, ok := randMapList[energyMul]; ok { + lev += GoUtil.RandMap(v) } - return Lev + return lev } // 获取发射器系列 -func getEmitBySeries(EmitList []int, EmitId string) int { - for _, v := range EmitList { - ProduceColor := mergeDataCfg.GetEmitProduceType(v) - if len(ProduceColor) == 0 || ProduceColor[0] == "" { +func getEmitBySeries(emitList []int, emitId string) int { + for _, v := range emitList { + produceColor := mergeDataCfg.GetEmitProduceType(v) + if len(produceColor) == 0 || produceColor[0] == "" { continue } - if GoUtil.InStringArray(EmitId, ProduceColor) { + if GoUtil.InStringArray(emitId, produceColor) { return v } } diff --git a/src/server/game/mod/pass/Pass.go b/src/server/game/mod/pass/Pass.go index 9a99524b..c3976112 100644 --- a/src/server/game/mod/pass/Pass.go +++ b/src/server/game/mod/pass/Pass.go @@ -17,71 +17,71 @@ type PassMod struct { func (p *PassMod) InitData() { } -func (p *PassMod) ZeroUpdate(Id int) { - p.Login(Id) +func (p *PassMod) ZeroUpdate(id int) { + p.Login(id) } func (p *PassMod) GetRewardItems() ([]*item.Item, []int) { template := passCfg.GetTemplate(p.Id) - NewLevel := passCfg.GetNewLevel(template, p.Num, p.Reward) - if len(NewLevel) == 0 { + newLevel := passCfg.GetNewLevel(template, p.Num, p.Reward) + if len(newLevel) == 0 { return nil, nil } - var Items []*item.Item - Items = append(Items, passCfg.GetFreeChargeItems(template, p.Reward)...) + var items []*item.Item + items = append(items, passCfg.GetFreeChargeItems(template, p.Reward)...) if p.LowPass != 0 { - Items = append(Items, passCfg.GetLowChargeItems(template, p.Reward)...) + items = append(items, passCfg.GetLowChargeItems(template, p.Reward)...) } if p.HighPass != 0 { - Items = append(Items, passCfg.GetHighChargeItems(template, p.Reward)...) + items = append(items, passCfg.GetHighChargeItems(template, p.Reward)...) } - p.Reward = append(p.Reward, NewLevel...) - return Items, NewLevel + p.Reward = append(p.Reward, newLevel...) + return items, newLevel } -func (p *PassMod) Login(Id int) int { - OldId := p.Id - if Id == 0 { +func (p *PassMod) Login(id int) int { + oldId := p.Id + if id == 0 { p.Id = 0 - return OldId + return oldId } - if p.Id == Id { + if p.Id == id { return 0 } - p.Id = Id + p.Id = id p.LowPass = 0 p.HighPass = 0 p.Num = 0 p.Reward = nil - return OldId + return oldId } func (p *PassMod) GetLowChargeItems() []*item.Item { if p.LowPass != 0 { return nil } - Template := passCfg.GetTemplate(p.Id) - if Template == 0 { + template := passCfg.GetTemplate(p.Id) + if template == 0 { return nil } - Items := passCfg.GetLowChargeItems(Template, p.Reward) + items := passCfg.GetLowChargeItems(template, p.Reward) p.LowPass = GoUtil.Now() - return Items + return items } func (p *PassMod) GetHighChargeItems() []*item.Item { if p.HighPass != 0 { return nil } - Template := passCfg.GetTemplate(p.Id) - if Template == 0 { + template := passCfg.GetTemplate(p.Id) + if template == 0 { return nil } - Items := passCfg.GetHighChargeItems(Template, p.Reward) + items := passCfg.GetHighChargeItems(template, p.Reward) p.HighPass = GoUtil.Now() - return Items + return items } -func (p *PassMod) AddExp(Score int) { - p.Num += Score +func (p *PassMod) AddExp(score int) { + p.Num += score } diff --git a/src/server/game/mod/piggy_bank/piggy_bank.go b/src/server/game/mod/piggy_bank/piggy_bank.go index 9e428c8e..32d40731 100644 --- a/src/server/game/mod/piggy_bank/piggy_bank.go +++ b/src/server/game/mod/piggy_bank/piggy_bank.go @@ -22,13 +22,13 @@ const ( func (p *PiggyBankMod) InitData() { } -func (p *PiggyBankMod) AddPiggyBank(Type int) { - p.List = append(p.List, Type) +func (p *PiggyBankMod) AddPiggyBank(pType int) { + p.List = append(p.List, pType) } -func (p *PiggyBankMod) Fire(ChargeId int) []*item.Item { - PiggyBankChargeId := chargeCfg.GetPiggyBankChargeId() - if ChargeId != PiggyBankChargeId && ChargeId != 0 { +func (p *PiggyBankMod) Fire(chargeId int) []*item.Item { + piggyBankChargeId := chargeCfg.GetPiggyBankChargeId() + if chargeId != piggyBankChargeId && chargeId != 0 { return nil } reward := []*item.Item{item.NewItem(item.ITEM_DIAMOND_ID, p.Diamond)} @@ -39,25 +39,25 @@ func (p *PiggyBankMod) Fire(ChargeId int) []*item.Item { } func (p *PiggyBankMod) TimeOut() int64 { - Now := GoUtil.Now() - Remain := p.EndTime - Now - if Remain > 0 { - return Remain + now := GoUtil.Now() + remain := p.EndTime - now + if remain > 0 { + return remain } if len(p.List) == 0 { return 0 } - var Type int - Type, p.List = GoUtil.PopSlice(p.List) - p.Type = Type - Duration := int64(chargeCfg.GetPiggyDuration()) - p.EndTime = Now + Duration - return Duration + var pType int + pType, p.List = GoUtil.PopSlice(p.List) + p.Type = pType + duration := int64(chargeCfg.GetPiggyDuration()) + p.EndTime = now + duration + return duration } func (p *PiggyBankMod) Trigger() { - Now := GoUtil.Now() - if p.EndTime < Now { + now := GoUtil.Now() + if p.EndTime < now { return } minDia, maxDia := chargeCfg.GetPiggyRandDia() diff --git a/src/server/game/mod/playroom/playroom.go b/src/server/game/mod/playroom/playroom.go index 95326368..c8c5eeaa 100644 --- a/src/server/game/mod/playroom/playroom.go +++ b/src/server/game/mod/playroom/playroom.go @@ -176,9 +176,9 @@ func (p *PlayroomMod) InitData() { if p.NewCollect == nil { p.NewCollect = make(map[int]*CollectInfo) } - InitCollect := playroomCfg.GetInitDecorate() + initCollect := playroomCfg.GetInitDecorate() if len(p.NewCollect) == 0 { - for _, v := range InitCollect { + for _, v := range initCollect { p.NewCollect[v] = &CollectInfo{ Id: v, AddTime: GoUtil.Now(), @@ -196,7 +196,7 @@ func (p *PlayroomMod) InitData() { } p.Collect = make(map[int]int) } - for _, v := range InitCollect { + for _, v := range initCollect { p.Collect[v] = 1 } if p.Room == nil { @@ -229,8 +229,8 @@ func (p *PlayroomMod) InitData() { } if len(p.NewPetAir) == 0 { p.NewPetAir = make(map[int]*PetAirInfo) - InitPetAir := playroomCfg.GetInitAirList() - for _, v := range InitPetAir { + initPetAir := playroomCfg.GetInitAirList() + for _, v := range initPetAir { p.NewPetAir[v] = &PetAirInfo{ Id: v, AddTime: GoUtil.Now(), @@ -253,12 +253,12 @@ func (p *PlayroomMod) InitData() { p.NewDress = make(map[int]*DressInfo) } if len(p.NewDress) == 0 { - InitDressList := playroomCfg.GetInitDressList() - for _, v := range InitDressList { - Part := playroomCfg.GetDressPart(v) + initDressList := playroomCfg.GetInitDressList() + for _, v := range initDressList { + part := playroomCfg.GetDressPart(v) p.NewDress[v] = &DressInfo{ Id: v, - Part: Part, + Part: part, AddTime: GoUtil.Now(), Num: 1, } @@ -268,10 +268,10 @@ func (p *PlayroomMod) InitData() { if len(p.Dress) != 0 { for _, v := range p.Dress { for _, id := range v { - Part := playroomCfg.GetDressPart(id) + part := playroomCfg.GetDressPart(id) p.NewDress[id] = &DressInfo{ Id: id, - Part: Part, + Part: part, AddTime: GoUtil.Now(), Num: 1, } @@ -300,34 +300,34 @@ func (p *PlayroomMod) ZeroUpdate() { func (p *PlayroomMod) InitDailyTask() { p.DailyTask = make(map[int]*DailyTask) - Index := 1 - TaskList1 := playroomCfg.GetDailyTask(DAILY_TASK_TYPE_ONE) - for k, v := range TaskList1 { - Items := playroomCfg.GetDailyTaskReward(Index) - Quest, _ := quest.ParseQuest(v) + index := 1 + taskList1 := playroomCfg.GetDailyTask(DAILY_TASK_TYPE_ONE) + for k, v := range taskList1 { + items := playroomCfg.GetDailyTaskReward(index) + quest, _ := quest.ParseQuest(v) p.DailyTask[k] = &DailyTask{ - Items: Items, - Quest: Quest, + Items: items, + Quest: quest, UnLock: true, - Index: Index, + Index: index, } - Index++ + index++ } - TaskList2 := playroomCfg.GetDailyTask(DAILY_TASK_TYPE_TWO) - for k, v := range TaskList2 { - Items := playroomCfg.GetDailyTaskReward(Index) - Quest, _ := quest.ParseQuest(v) + taskList2 := playroomCfg.GetDailyTask(DAILY_TASK_TYPE_TWO) + for k, v := range taskList2 { + items := playroomCfg.GetDailyTaskReward(index) + quest, _ := quest.ParseQuest(v) p.DailyTask[k] = &DailyTask{ - Items: Items, - Quest: Quest, + Items: items, + Quest: quest, UnLock: false, - Index: Index, + Index: index, } - Index++ + index++ } } -func (p *PlayroomMod) QuestTrigger(Tr *quest.Trigger) bool { +func (p *PlayroomMod) QuestTrigger(tr *quest.Trigger) bool { update := false unlock := true for k, v := range p.DailyTask { @@ -337,14 +337,14 @@ func (p *PlayroomMod) QuestTrigger(Tr *quest.Trigger) bool { if v.Status != quest.QUEST_STATUS_UNFINISH { continue } - update = quest.TriggerQuestProgress(&v.Quest, Tr) || update + update = quest.TriggerQuestProgress(&v.Quest, tr) || update if v.Quest.Status { v.Status = quest.QUEST_STATUS_FINISH } - Type := playroomCfg.GetDailyTaskType(k) - if Type == DAILY_TASK_TYPE_ONE && v.Status == quest.QUEST_STATUS_UNFINISH { + qType := playroomCfg.GetDailyTaskType(k) + if qType == DAILY_TASK_TYPE_ONE && v.Status == quest.QUEST_STATUS_UNFINISH { unlock = false } } @@ -356,9 +356,9 @@ func (p *PlayroomMod) QuestTrigger(Tr *quest.Trigger) bool { return update } -func (p *PlayroomMod) DailyTaskCanReward(Id int) bool { - IdList := playroomCfg.GetDailyTaskListById(Id) - for _, v := range IdList { +func (p *PlayroomMod) DailyTaskCanReward(id int) bool { + idList := playroomCfg.GetDailyTaskListById(id) + for _, v := range idList { v, ok := p.DailyTask[v] if !ok { return false @@ -370,8 +370,8 @@ func (p *PlayroomMod) DailyTaskCanReward(Id int) bool { return true } -func (p *PlayroomMod) GetDailyTaskReward(Id int) ([]*item.Item, error) { - v, ok := p.DailyTask[Id] +func (p *PlayroomMod) GetDailyTaskReward(id int) ([]*item.Item, error) { + v, ok := p.DailyTask[id] if !ok { return nil, fmt.Errorf("GetDailyTaskReward Id is not ok") } @@ -414,12 +414,12 @@ func (p *PlayroomMod) GetPhysiologyList() map[int]int { return Physiology } -func (p *PlayroomMod) GetMoodInfo(Id int) *Mood { - return p.MoodInfo[Id] +func (p *PlayroomMod) GetMoodInfo(id int) *Mood { + return p.MoodInfo[id] } -func (p *PlayroomMod) GetPhysiology(Id int) *Physiology { - return p.Physiology[Id] +func (p *PlayroomMod) GetPhysiology(id int) *Physiology { + return p.Physiology[id] } func (p *PlayroomMod) GetCollect() map[int]*CollectInfo { @@ -438,154 +438,154 @@ func (p *PlayroomMod) GetChip() int { return len(p.ChipList) } -func (p *PlayroomMod) AddChip(Uid int, Time int64, Emoji int) { +func (p *PlayroomMod) AddChip(uid int, time int64, emoji int) { if len(p.ChipList) >= playroomCfg.GetChipNum() { return } - p.ChipList = append(p.ChipList, &ChipInfo{Uid: Uid, Time: Time, Emoji: Emoji}) - p.RevengeUid = int64(Uid) + p.ChipList = append(p.ChipList, &ChipInfo{Uid: uid, Time: time, Emoji: emoji}) + p.RevengeUid = int64(uid) } -func (p *PlayroomMod) SetTarget(Target int) { - p.Target = Target +func (p *PlayroomMod) SetTarget(target int) { + p.Target = target p.Status = 1 - p.HasVisit[Target] = GoUtil.Now() + p.HasVisit[target] = GoUtil.Now() } -func (p *PlayroomMod) SetGameId(GameId int) { - p.GameId = GameId +func (p *PlayroomMod) SetGameId(gameId int) { + p.GameId = gameId } -func (p *PlayroomMod) CreateOrderReward(Star int, itemMod *item.ItemMod) { - if Star == 0 { +func (p *PlayroomMod) CreateOrderReward(star int, itemMod *item.ItemMod) { + if star == 0 { return } - FoodItem := playroomCfg.GetFoodItem() - CleanItem := playroomCfg.GetCleanItem() - ToyItem := playroomCfg.GetToyItem() - DailyItem := playroomCfg.GetDailyItem() + foodItem := playroomCfg.GetFoodItem() + cleanItem := playroomCfg.GetCleanItem() + toyItem := playroomCfg.GetToyItem() + dailyItem := playroomCfg.GetDailyItem() - FoodItemNum := itemMod.GetItemNumByList(FoodItem) - CleanItemNum := itemMod.GetItemNumByList(CleanItem) - ToyItemNum := itemMod.GetItemNumByList(ToyItem) - DailyItemNum := itemMod.GetItemNumByList(DailyItem) + foodItemNum := itemMod.GetItemNumByList(foodItem) + cleanItemNum := itemMod.GetItemNumByList(cleanItem) + toyItemNum := itemMod.GetItemNumByList(toyItem) + dailyItemNum := itemMod.GetItemNumByList(dailyItem) type d struct { Id []int Num int } sortList := []d{ - {Id: FoodItem, Num: FoodItemNum}, - {Id: CleanItem, Num: CleanItemNum}, - {Id: ToyItem, Num: ToyItemNum}, - {Id: DailyItem, Num: DailyItemNum}, + {Id: foodItem, Num: foodItemNum}, + {Id: cleanItem, Num: cleanItemNum}, + {Id: toyItem, Num: toyItemNum}, + {Id: dailyItem, Num: dailyItemNum}, } sort.Slice(sortList, func(i, j int) bool { return sortList[i].Num < sortList[j].Num }) - Prob := GoUtil.RandSlice(sortList[0].Id) - p.Reward = []*item.Item{{Id: Prob, Num: 1}} + prob := GoUtil.RandSlice(sortList[0].Id) + p.Reward = []*item.Item{{Id: prob, Num: 1}} } func (p *PlayroomMod) GetReward() []*item.Item { return p.Reward } -func (p *PlayroomMod) Interact(Id, Type int) ([]*item.Item, int, error) { - MoodType, ItemList, Effect := playroomCfg.GetInteract(Id, Type) - if MoodType == 0 { +func (p *PlayroomMod) Interact(id, iType int) ([]*item.Item, int, error) { + moodType, items, effect := playroomCfg.GetInteract(id, iType) + if moodType == 0 { return nil, 0, fmt.Errorf("Interact MoodType is 0") } - if Effect > 0 { + if effect > 0 { p.AllMood = min(100, p.AllMood+10) } - PType, PEffect := playroomCfg.GetInteractPhysiology(Id) - p.AddPhysiology(PType, PEffect) - p.AddMood(MoodType, Effect) - return ItemList, PType, nil + pType, pEffect := playroomCfg.GetInteractPhysiology(id) + p.AddPhysiology(pType, pEffect) + p.AddMood(moodType, effect) + return items, pType, nil } -func (p *PlayroomMod) AddInteractNum(Lv int) { - Unlock := playroomCfg.GetInteractUnlock() - if Lv < Unlock { +func (p *PlayroomMod) AddInteractNum(lv int) { + unlock := playroomCfg.GetInteractUnlock() + if lv < unlock { return } p.InteractNum++ p.InteractNum = min(p.InteractNum, playroomCfg.GetInteractNum()) } -func (p *PlayroomMod) AddMood(Id, Num int) { - _, ok := p.MoodInfo[Id] +func (p *PlayroomMod) AddMood(id, num int) { + _, ok := p.MoodInfo[id] if !ok { - p.MoodInfo[Id] = &Mood{Id: Id} + p.MoodInfo[id] = &Mood{Id: id} } - p.MoodInfo[Id].Num = max(0, min(p.MoodInfo[Id].Num+Num, 100)) - if p.MoodInfo[Id].Num != 0 && p.MoodInfo[Id].Time == 0 { - p.MoodInfo[Id].Time = GoUtil.Now() + p.MoodInfo[id].Num = max(0, min(p.MoodInfo[id].Num+num, 100)) + if p.MoodInfo[id].Num != 0 && p.MoodInfo[id].Time == 0 { + p.MoodInfo[id].Time = GoUtil.Now() } - if p.MoodInfo[Id].Num == 0 { - p.MoodInfo[Id].Time = 0 + if p.MoodInfo[id].Num == 0 { + p.MoodInfo[id].Time = 0 } } -func (p *PlayroomMod) GetMoodNum(MoodType int) int { - Mood, ok := p.MoodInfo[MoodType] +func (p *PlayroomMod) GetMoodNum(moodType int) int { + mood, ok := p.MoodInfo[moodType] if !ok { return 0 } - return Mood.Num + return mood.Num } -func (p *PlayroomMod) AddPhysiology(Id, Num int) { - Phy := p.GetPhysiology(Id) - if Phy == nil { - Phy = &Physiology{Id: Id} - p.Physiology[Id] = Phy +func (p *PlayroomMod) AddPhysiology(id, num int) { + phy := p.GetPhysiology(id) + if phy == nil { + phy = &Physiology{Id: id} + p.Physiology[id] = phy } - Max := playroomCfg.GetPhysiologyMax(Id) - Phy.Num = max(0, min(Phy.Num+Num, Max)) - Phy.Time = GoUtil.Now() - if Phy.Num == 0 { - Phy.Time = 0 + maxNum := playroomCfg.GetPhysiologyMax(id) + phy.Num = max(0, min(phy.Num+num, maxNum)) + phy.Time = GoUtil.Now() + if phy.Num == 0 { + phy.Time = 0 } } -func (p *PlayroomMod) AddVisitor(Id int, Time int64) { - v, ok := p.Visitor[Id] +func (p *PlayroomMod) AddVisitor(id int, time int64) { + v, ok := p.Visitor[id] if !ok { - p.Visitor[Id] = &Info{Time: Time, Times: 1} + p.Visitor[id] = &Info{Time: time, Times: 1} return } v.Times++ - v.Time = Time + v.Time = time } -func (p *PlayroomMod) SetRoom(Room map[int]int) (map[int]int, error) { - diff := GoUtil.DiffMap(p.Room, Room) - p.Room = Room +func (p *PlayroomMod) SetRoom(room map[int]int) (map[int]int, error) { + diff := GoUtil.DiffMap(p.Room, room) + p.Room = room return diff, nil } -func (p *PlayroomMod) AddCollect(Id int, Label string) { - p.NewCollect[Id] = &CollectInfo{ - Id: Id, +func (p *PlayroomMod) AddCollect(id int, label string) { + p.NewCollect[id] = &CollectInfo{ + Id: id, AddTime: GoUtil.Now(), - Label: Label, + Label: label, } } -func (p *PlayroomMod) AddDress(Id int, Label string) { - Part := playroomCfg.GetDressPart(Id) - if _, ok := p.NewDress[Id]; !ok { - p.NewDress[Id] = &DressInfo{ - Id: Id, - Part: Part, +func (p *PlayroomMod) AddDress(id int, label string) { + part := playroomCfg.GetDressPart(id) + if _, ok := p.NewDress[id]; !ok { + p.NewDress[id] = &DressInfo{ + Id: id, + Part: part, AddTime: GoUtil.Now(), - Label: Label, + Label: label, Num: 1, } } else { - p.NewDress[Id].Num++ + p.NewDress[id].Num++ } } @@ -606,44 +606,44 @@ func (p *PlayroomMod) ResetLose() { p.LoseItem = nil } -func (p *PlayroomMod) SetGameReward(Chess1, Chess2, Star int) { - p.GameReward[1] = &item.Item{Id: Chess1, Num: 1} - p.GameReward[2] = &item.Item{Id: Chess2, Num: 1} - p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} +func (p *PlayroomMod) SetGameReward(chess1, chess2, star int) { + p.GameReward[1] = &item.Item{Id: chess1, Num: 1} + p.GameReward[2] = &item.Item{Id: chess2, Num: 1} + p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} } -func (p *PlayroomMod) SetGameReward2(Chess1, Star int) { - p.GameReward[1] = &item.Item{Id: Chess1, Num: 1} - p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} - p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} +func (p *PlayroomMod) SetGameReward2(chess1, star int) { + p.GameReward[1] = &item.Item{Id: chess1, Num: 1} + p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} + p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} } -func (p *PlayroomMod) SetGameReward3(Star int) { - p.GameReward[1] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} - p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} - p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: Star} +func (p *PlayroomMod) SetGameReward3(star int) { + p.GameReward[1] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} + p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} + p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: star} } // N1, N2, N3分别是铜、银、金翻牌的奖励数量,经过玩家的加成后再设置到GameReward中 -func (p *PlayroomMod) SetGameRewardFlip(N1, N2, N3 int) { - p.GameReward[1] = &item.Item{Id: item.ITEM_STAR_ID, Num: N1} - p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: N2} - p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: N3} +func (p *PlayroomMod) SetGameRewardFlip(n1, n2, n3 int) { + p.GameReward[1] = &item.Item{Id: item.ITEM_STAR_ID, Num: n1} + p.GameReward[2] = &item.Item{Id: item.ITEM_STAR_ID, Num: n2} + p.GameReward[3] = &item.Item{Id: item.ITEM_STAR_ID, Num: n3} } -func (p *PlayroomMod) SelectReward(Id int) []*item.Item { - v, ok := p.GameReward[Id] +func (p *PlayroomMod) SelectReward(id int) []*item.Item { + v, ok := p.GameReward[id] if !ok { return nil } - var Items []*item.Item - Items = append(Items, v) - if Id < 3 { - Items = append(Items, item.NewItem(item.ITEM_STAR_ID, 5)) + var items []*item.Item + items = append(items, v) + if id < 3 { + items = append(items, item.NewItem(item.ITEM_STAR_ID, 5)) } - return Items + return items } -func (p *PlayroomMod) Lose(Item []*item.Item) { - p.LoseItem = append(p.LoseItem, Item...) +func (p *PlayroomMod) Lose(items []*item.Item) { + p.LoseItem = append(p.LoseItem, items...) } func (p *PlayroomMod) Work() ([]*item.Item, error) { @@ -654,16 +654,19 @@ func (p *PlayroomMod) Work() ([]*item.Item, error) { p.Starttime = GoUtil.Now() p.Endtime = GoUtil.Now() + 86400 p.WorkStatus = 1 - ItemId := playroomCfg.GetWorkItem() - return []*item.Item{item.NewItem(ItemId, 1)}, nil + itemId := playroomCfg.GetWorkItem() + if itemId == 0 { + return nil, fmt.Errorf("Work ItemId is 0") + } + return []*item.Item{item.NewItem(itemId, 1)}, nil } func (p *PlayroomMod) Rest() { p.WorkStatus = 2 } -func (p *PlayroomMod) SetWorkOutline(Status int) { - p.WorkOutline = Status +func (p *PlayroomMod) SetWorkOutline(status int) { + p.WorkOutline = status } func (p *PlayroomMod) ResetWork() { @@ -675,16 +678,16 @@ func (p *PlayroomMod) Outline() { p.WorkOutline = 1 } -func (p *PlayroomMod) GetVisitorInfo(Id int) (int, int64) { - v, ok := p.Visitor[Id] +func (p *PlayroomMod) GetVisitorInfo(id int) (int, int64) { + v, ok := p.Visitor[id] if !ok { return 0, 0 } return v.Times, v.Time } -func (p *PlayroomMod) GetTaskReward(Type int) (int, []*item.Item, error) { - if GoUtil.InArray(Type, p.DailyTaskReward) { +func (p *PlayroomMod) GetTaskReward(taskType int) (int, []*item.Item, error) { + if GoUtil.InArray(taskType, p.DailyTaskReward) { return 0, nil, fmt.Errorf("GetTaskReward Type is already in DailyTaskReward") } finish := 0 @@ -693,42 +696,39 @@ func (p *PlayroomMod) GetTaskReward(Type int) (int, []*item.Item, error) { finish++ } } - if Type == DAILY_TASK_TYPE_ONE && finish < playroomCfg.GetPlayroomTaskDailyNum1() { + if taskType == DAILY_TASK_TYPE_ONE && finish < playroomCfg.GetPlayroomTaskDailyNum1() { return 0, nil, fmt.Errorf("GetTaskReward Type is DAILY_TASK_TYPE_ONE but finish is %d", finish) } - if Type == DAILY_TASK_TYPE_TWO && finish < playroomCfg.GetPlayroomTaskDailyNum1()+playroomCfg.GetPlayroomTaskDailyNum2() { + if taskType == DAILY_TASK_TYPE_TWO && finish < playroomCfg.GetPlayroomTaskDailyNum1()+playroomCfg.GetPlayroomTaskDailyNum2() { return 0, nil, fmt.Errorf("GetTaskReward Type is DAILY_TASK_TYPE_TWO but finish is %d", finish) } - p.DailyTaskReward = append(p.DailyTaskReward, Type) - Id := 0 - var Items []*item.Item - ProbList := playroomCfg.GetTaskJackpotProb() - Id = GoUtil.RandMap(ProbList) - Items = playroomCfg.GetTaskJackpotReward(Id) - if len(Items) > 1 { + p.DailyTaskReward = append(p.DailyTaskReward, taskType) + id := 0 + var items []*item.Item + probList := playroomCfg.GetTaskJackpotProb() + id = GoUtil.RandMap(probList) + items = playroomCfg.GetTaskJackpotReward(id) + if len(items) > 1 { // 多个奖励时,随机选择一个 - Items = []*item.Item{GoUtil.RandItem(Items)} + items = []*item.Item{GoUtil.RandItem(items)} } - return Id, Items, nil + return id, items, nil } func (p *PlayroomMod) Draw() (int, []*item.Item, error) { - // if p.AllMood < 100 { - // return 0, nil, fmt.Errorf("Draw AllMood < 100") - // } if p.JackpotNum == 0 { return 0, nil, fmt.Errorf("Draw JackpotNum is 0") } p.JackpotNum-- p.AllMood = 0 - ProbList := limitedTimeEventCfg.GetSenceJackpotProb() - Id := GoUtil.RandMap(ProbList) - Items := limitedTimeEventCfg.GetSenceJackpotReward(Id) - if len(Items) > 1 { + probList := limitedTimeEventCfg.GetSenceJackpotProb() + id := GoUtil.RandMap(probList) + items := limitedTimeEventCfg.GetSenceJackpotReward(id) + if len(items) > 1 { // 多个奖励时,随机选择一个 - Items = []*item.Item{GoUtil.RandItem(Items)} + items = []*item.Item{GoUtil.RandItem(items)} } - return Id, Items, nil + return id, items, nil } func (p *PlayroomMod) NotifyWork() *msg.NotifyPlayroomWork { @@ -739,25 +739,25 @@ func (p *PlayroomMod) NotifyWork() *msg.NotifyPlayroomWork { } func (p *PlayroomMod) NotifyLose() *msg.NotifyPlayroomLose { - ChipMessage := make([]*msg.ChipInfo, 0, len(p.ChipList)) + chipMessage := make([]*msg.ChipInfo, 0, len(p.ChipList)) for _, v := range p.ChipList { - ChipMessage = append(ChipMessage, &msg.ChipInfo{ + chipMessage = append(chipMessage, &msg.ChipInfo{ Uid: int64(v.Uid), }) } return &msg.NotifyPlayroomLose{ LoseItem: item.ItemToMsg(p.LoseItem), - Chip: ChipMessage, + Chip: chipMessage, Revenge: p.RevengeUid, } } func (p *PlayroomMod) ResetPhysiology(MoodType int) { - PhysiologyList := playroomCfg.GetPhysiologyList(MoodType) - for _, v := range PhysiologyList { - Phy := p.GetPhysiology(v) - if Phy != nil { - Phy.Num = 0 - Phy.Time = 0 + physiologyList := playroomCfg.GetPhysiologyList(MoodType) + for _, v := range physiologyList { + phy := p.GetPhysiology(v) + if phy != nil { + phy.Num = 0 + phy.Time = 0 } } } @@ -768,9 +768,9 @@ func (p *PlayroomMod) NotifyStatus() *msg.NofiPlayroomStatus { } func (p *PlayroomMod) NotifyMood() *msg.NotifyPlayroomMood { - Mood := make(map[int32]int32) + mood := make(map[int32]int32) for k, v := range p.MoodInfo { - Mood[int32(k)] = int32(v.Num) + mood[int32(k)] = int32(v.Num) } var resAdItems []*msg.AdItem for k, v := range p.ADItem { @@ -782,24 +782,24 @@ func (p *PlayroomMod) NotifyMood() *msg.NotifyPlayroomMood { } return &msg.NotifyPlayroomMood{ AllMood: int32(p.AllMood), - Mood: Mood, + Mood: mood, Physiology: GoUtil.MapIntToInt32(p.GetPhysiologyList()), AdItem: resAdItems, } } -func (p *PlayroomMod) Fire(ChargeId int) []*item.Item { - WorkChargeId := playroomCfg.GetWorkChargeId() - if ChargeId == WorkChargeId { - ItemId := playroomCfg.GetWorkItem() - return []*item.Item{item.NewItem(ItemId, 1)} +func (p *PlayroomMod) Fire(chargeId int) []*item.Item { + workChargeId := playroomCfg.GetWorkChargeId() + if chargeId == workChargeId { + itemId := playroomCfg.GetWorkItem() + return []*item.Item{item.NewItem(itemId, 1)} } return nil } -func (p *PlayroomMod) RemoveChip(Uids []int64) ([]*item.Item, int, error) { +func (p *PlayroomMod) RemoveChip(uids []int64) ([]*item.Item, int, error) { len1 := len(p.ChipList) - len2 := len(Uids) + len2 := len(uids) if len1 == 0 { return nil, 0, fmt.Errorf("RemoveChip Uids is 0") } @@ -807,7 +807,7 @@ func (p *PlayroomMod) RemoveChip(Uids []int64) ([]*item.Item, int, error) { p.ChipList = nil } else { uidCount := make(map[int64]int) - for _, uid := range Uids { + for _, uid := range uids { uidCount[uid]++ } @@ -824,16 +824,16 @@ func (p *PlayroomMod) RemoveChip(Uids []int64) ([]*item.Item, int, error) { return []*item.Item{item.NewItem(item.ITEM_STAR_ID, len2*25)}, len2, nil } -func (p *PlayroomMod) FlipCard(Pos int) (int, error) { +func (p *PlayroomMod) FlipCard(pos int) (int, error) { if p.Status != STATUS_VISIT { return 0, fmt.Errorf("FlipCard Status is not STATUS_VISIT") } - RandMap := map[int]int{ + randMap := map[int]int{ FLIP_TYPE_COPPER: 35, FLIP_TYPE_SILVER: 45, FLIP_TYPE_GOLD: 20, } - Prob := GoUtil.RandMap(RandMap) + Prob := GoUtil.RandMap(randMap) /** 若玩家同一天内上一次游玩猫猫小金库未能获得金币档位奖励,且当天还未获得过金币档位奖励 @@ -852,58 +852,57 @@ func (p *PlayroomMod) FlipCard(Pos int) (int, error) { Prob = FLIP_TYPE_GOLD } } - p.Flip[Pos] = Prob + p.Flip[pos] = Prob return Prob, nil } func (p *PlayroomMod) GetFlipReward() ([]*item.Item, int, int, error) { check := make(map[int]int) - var Items []*item.Item - T := p.Target - Result := FLIP_TYPE_COPPER + var items []*item.Item + result := FLIP_TYPE_COPPER for _, v := range p.Flip { check[v]++ if check[v] == 3 { switch v { case FLIP_TYPE_COPPER: p.NoFlip++ - Items = append(Items, p.GameReward[FLIP_TYPE_COPPER]) + items = append(items, p.GameReward[FLIP_TYPE_COPPER]) case FLIP_TYPE_SILVER: p.NoFlip++ - Result = FLIP_TYPE_SILVER - Items = append(Items, p.GameReward[FLIP_TYPE_SILVER]) + result = FLIP_TYPE_SILVER + items = append(items, p.GameReward[FLIP_TYPE_SILVER]) case FLIP_TYPE_GOLD: p.NoFlip = 0 p.TodayFlip = true - Result = FLIP_TYPE_GOLD - Items = append(Items, p.GameReward[FLIP_TYPE_GOLD]) + result = FLIP_TYPE_GOLD + items = append(items, p.GameReward[FLIP_TYPE_GOLD]) } p.LastFlip = v p.Flip = make(map[int]int) p.ResetGame() - return Items, T, Result, nil + return items, 0, result, nil } } - return Items, T, Result, fmt.Errorf("GetFlipReward check is not 3") + return items, p.Target, result, fmt.Errorf("GetFlipReward check is not 3") } -func (p *PlayroomMod) BuyItem(Id int) ([]*item.Item, []*item.Item) { - return playroomCfg.GetBuyItem(Id) +func (p *PlayroomMod) BuyItem(id int) ([]*item.Item, []*item.Item) { + return playroomCfg.GetBuyItem(id) } -func (p *PlayroomMod) UnLock(Lv int) bool { +func (p *PlayroomMod) UnLock(lv int) bool { UnlockLv := playroomCfg.GetUnLockLv() - if Lv < UnlockLv || len(p.Physiology) != 0 { + if lv < UnlockLv || len(p.Physiology) != 0 { return false } - Now := GoUtil.Now() + now := GoUtil.Now() p.Physiology = make(map[int]*Physiology) - TypeList := playroomCfg.GetPhysiologyTypeList() - for _, v := range TypeList { - Max := playroomCfg.GetPhysiologyMax(v) - p.Physiology[v] = &Physiology{Id: v, Num: Max, Time: Now} + typeList := playroomCfg.GetPhysiologyTypeList() + for _, v := range typeList { + max := playroomCfg.GetPhysiologyMax(v) + p.Physiology[v] = &Physiology{Id: v, Num: max, Time: now} } if len(p.MoodInfo) == 0 { p.MoodInfo = make(map[int]*Mood) @@ -914,17 +913,17 @@ func (p *PlayroomMod) UnLock(Lv int) bool { return true } -func (p *PlayroomMod) FixUnLock(Lv int) bool { - UnlockLv := playroomCfg.GetUnLockLv() - if Lv < UnlockLv || len(p.Physiology) != 0 { +func (p *PlayroomMod) FixUnLock(lv int) bool { + unlockLv := playroomCfg.GetUnLockLv() + if lv < unlockLv || len(p.Physiology) != 0 { return false } - Now := GoUtil.Now() + now := GoUtil.Now() p.Physiology = make(map[int]*Physiology) - TypeList := playroomCfg.GetPhysiologyTypeList() - for _, v := range TypeList { - Max := playroomCfg.GetPhysiologyMax(v) - p.Physiology[v] = &Physiology{Id: v, Num: Max, Time: Now} + typeList := playroomCfg.GetPhysiologyTypeList() + for _, v := range typeList { + max := playroomCfg.GetPhysiologyMax(v) + p.Physiology[v] = &Physiology{Id: v, Num: max, Time: now} } if len(p.MoodInfo) == 0 { p.MoodInfo = make(map[int]*Mood) @@ -936,27 +935,30 @@ func (p *PlayroomMod) FixUnLock(Lv int) bool { } // shop -func (p *PlayroomMod) ShopBuy(Id, Num int, WeeklyDiscount bool) ([]*item.Item, []*item.Item, error) { - AddItemId, CostItem, Discount, Limit := playroomCfg.GetShopItem(Id) - if AddItemId == 0 { +func (p *PlayroomMod) ShopBuy(id, num int, weeklyDiscount bool) ([]*item.Item, []*item.Item, error) { + addItemId, costItem, discount, limit := playroomCfg.GetShopItem(id) + if addItemId == 0 { return nil, nil, fmt.Errorf("ShopBuy AddItemId is 0") } - NewCostItem := CostItem[0].Num * Num - if WeeklyDiscount { - LimitNum := p.WeeklyDiscount[Id] - if LimitNum < Limit { - NewCostItem = int(math.Ceil(float64(NewCostItem) * float64(Discount) / 100)) - } - p.WeeklyDiscount[Id] = LimitNum + Num + if costItem == nil || len(costItem) == 0 { + return nil, nil, fmt.Errorf("ShopBuy CostItem is nil or length is 0") } - CostItem[0].Num = NewCostItem - return []*item.Item{item.NewItem(AddItemId, Num)}, CostItem, nil + newCostItem := costItem[0].Num * num + if weeklyDiscount { + limitNum := p.WeeklyDiscount[id] + if limitNum < limit { + newCostItem = int(math.Ceil(float64(newCostItem) * float64(discount) / 100)) + } + p.WeeklyDiscount[id] = limitNum + num + } + costItem[0].Num = newCostItem + return []*item.Item{item.NewItem(addItemId, num)}, costItem, nil } -func (p *PlayroomMod) UnlockDress(Type, Id int) error { - p.NewDress[Id] = &DressInfo{ - Id: Id, - Part: Type, +func (p *PlayroomMod) UnlockDress(dType, id int) error { + p.NewDress[id] = &DressInfo{ + Id: id, + Part: dType, AddTime: GoUtil.Now(), Num: 1, } @@ -967,42 +969,42 @@ func (p *PlayroomMod) RandGameType() int { return GoUtil.RandMap(map[int]int{1: 50, 3: 50}) } -func (p *PlayroomMod) UnlockPetAir(Id int) { - p.NewPetAir[Id] = &PetAirInfo{ - Id: Id, +func (p *PlayroomMod) UnlockPetAir(id int) { + p.NewPetAir[id] = &PetAirInfo{ + Id: id, AddTime: GoUtil.Now(), Num: 1, } } -func (p *PlayroomMod) PlayroomDressSet(DressSet map[int]int) ([]int, map[int]int, error) { +func (p *PlayroomMod) PlayroomDressSet(dressSet map[int]int) ([]int, map[int]int, error) { // 判断服装是否存在 var Part []int - Diff := GoUtil.DiffMap(DressSet, p.DressSet) - for Type, Id := range DressSet { - if Id == 0 { + diff := GoUtil.DiffMap(dressSet, p.DressSet) + for dType, id := range dressSet { + if id == 0 { continue } - dressInfo, ok := p.NewDress[Id] + dressInfo, ok := p.NewDress[id] if !ok { return nil, nil, fmt.Errorf("dress type not found") } if dressInfo.EndTime < GoUtil.Now() && dressInfo.EndTime != 0 { return nil, nil, fmt.Errorf("dress timeout") } - if p.DressSet[Type] != Id && Id != 0 { - Part = append(Part, Type) + if p.DressSet[dType] != id && id != 0 { + Part = append(Part, dType) } } - p.DressSet = DressSet - return Part, Diff, nil + p.DressSet = dressSet + return Part, diff, nil } -func (p *PlayroomMod) GiveUpvote(Uid int) ([]*item.Item, error) { - if GoUtil.InArray(Uid, p.UpvoteList) { +func (p *PlayroomMod) GiveUpvote(uid int) ([]*item.Item, error) { + if GoUtil.InArray(uid, p.UpvoteList) { return nil, fmt.Errorf("upvote already") } - p.UpvoteList = append(p.UpvoteList, Uid) + p.UpvoteList = append(p.UpvoteList, uid) return []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, 5)}, nil } @@ -1010,29 +1012,29 @@ func (p *PlayroomMod) AddUpvote() { p.Upvote++ } -func (p *PlayroomMod) PlayroomPetAirSet(Id int) error { - if _, ok := p.NewPetAir[Id]; !ok { +func (p *PlayroomMod) PlayroomPetAirSet(id int) error { + if _, ok := p.NewPetAir[id]; !ok { return fmt.Errorf("PlayroomPetAirSet Id is not ok") } - p.PetAirSet = Id + p.PetAirSet = id return nil } -func (p *PlayroomMod) Unlock(Id int) error { - Need := playroomCfg.GetUnlockNeed(Id) - if Need == 0 || Need > p.RoomPoint { +func (p *PlayroomMod) Unlock(id int) error { + need := playroomCfg.GetUnlockNeed(id) + if need == 0 || need > p.RoomPoint { return fmt.Errorf("unlock need is 0 or need > RoomPoint") } - p.UnlockList[Id] = GoUtil.Now() + p.UnlockList[id] = GoUtil.Now() return nil } func (p *PlayroomMod) GetUnlockIds() []int32 { - UnlockIds := make([]int32, 0, len(p.UnlockList)) + unlockIds := make([]int32, 0, len(p.UnlockList)) for k := range p.UnlockList { - UnlockIds = append(UnlockIds, int32(k)) + unlockIds = append(unlockIds, int32(k)) } - return UnlockIds + return unlockIds } func (p *PlayroomMod) GetDressSet() map[int]int { @@ -1052,9 +1054,9 @@ func (p *PlayroomMod) GetPetAir() map[int]*PetAirInfo { } func (p *PlayroomMod) BackDataTask() []*msg.DailyTask { - DailyTask := make([]*msg.DailyTask, 0, len(p.DailyTask)) + dailyTask := make([]*msg.DailyTask, 0, len(p.DailyTask)) for k, v := range p.DailyTask { - DailyTask = append(DailyTask, &msg.DailyTask{ + dailyTask = append(dailyTask, &msg.DailyTask{ Status: int32(v.Status), UnLock: v.UnLock, Progress: quest.QuestProgressToMsg(&v.Quest), @@ -1063,10 +1065,10 @@ func (p *PlayroomMod) BackDataTask() []*msg.DailyTask { Id: int32(k), }) } - sort.Slice(DailyTask, func(i, j int) bool { - return DailyTask[i].Index < DailyTask[j].Index + sort.Slice(dailyTask, func(i, j int) bool { + return dailyTask[i].Index < dailyTask[j].Index }) - return DailyTask + return dailyTask } func (p *PlayroomMod) Guide(Type int) error { diff --git a/src/server/game/mod/quest/Quest.go b/src/server/game/mod/quest/Quest.go index 07bbdee0..a3226e80 100644 --- a/src/server/game/mod/quest/Quest.go +++ b/src/server/game/mod/quest/Quest.go @@ -68,8 +68,8 @@ func ParseQuest(s string) (QuestProgress, error) { }, nil } -func TriggerQuestProgress(q *QuestProgress, Tr *Trigger) bool { - if q.Label != Tr.Label { +func TriggerQuestProgress(q *QuestProgress, tr *Trigger) bool { + if q.Label != tr.Label { return false } if q.Status { @@ -81,23 +81,23 @@ func TriggerQuestProgress(q *QuestProgress, Tr *Trigger) bool { TRIGGER_LABEL_STAR, TRIGGER_LABEL_DIAMOND, TRIGGER_LABEL_DECORATE: // 消耗x能量 - AddNum := GoUtil.Int(Tr.A[0]) + AddNum := GoUtil.Int(tr.A[0]) q.Num += AddNum case TRIGGER_LABEL_MERGELVTIME: // 合成x级棋子y次 - Lv := GoUtil.Int(Tr.A[0]) + Lv := GoUtil.Int(tr.A[0]) TargetLv, _ := strconv.Atoi(q.A[0].(string)) if TargetLv == Lv { q.Num++ } case TRIGGER_LABEL_GUIDE_LOGIN: // 引导任务登录 - LoginDay := GoUtil.Int(Tr.A[0]) + LoginDay := GoUtil.Int(tr.A[0]) q.Num = LoginDay case TRIGGER_LABEL_MERGETIME, // 合成x次 TRIGGER_LABEL_FINISHORDER, TRIGGER_LABEL_BUBBLE: // 完成x次订单 q.Num++ case TRIGGER_LABEL_INTERACT: // 互动x类型y次 - InteractId := GoUtil.Int(Tr.A[0]) + InteractId := GoUtil.Int(tr.A[0]) Ids := GoUtil.IntSliceInterface(q.A) if GoUtil.InArray(InteractId, Ids) { q.Num++ @@ -106,11 +106,11 @@ func TriggerQuestProgress(q *QuestProgress, Tr *Trigger) bool { if len(q.A) == 0 { return false } - if len(Tr.A) == 0 { + if len(tr.A) == 0 { return false } Ids := GoUtil.IntSliceInterface(q.A) - arg := GoUtil.IntSlice(Tr.A[0]) + arg := GoUtil.IntSlice(tr.A[0]) for _, t := range arg { if GoUtil.InArray(t, Ids) { q.Num++ @@ -127,15 +127,15 @@ func TriggerQuestProgress(q *QuestProgress, Tr *Trigger) bool { } func QuestProgressToMsg(quest *QuestProgress) *msg.QuestProgress { - Param := 0 + param := 0 if len(quest.A) > 0 { - Param = GoUtil.Int(quest.A[0]) + param = GoUtil.Int(quest.A[0]) } return &msg.QuestProgress{ Label: quest.Label, Num: int32(quest.Num), Target: int32(quest.Target), Status: quest.Status, - Param: int32(Param), + Param: int32(param), } } diff --git a/src/server/game/mod/race/race.go b/src/server/game/mod/race/race.go index 474af1c6..dbed7c57 100644 --- a/src/server/game/mod/race/race.go +++ b/src/server/game/mod/race/race.go @@ -27,28 +27,28 @@ type Opponent struct { Progress int } -func (r *RaceMod) Login(Id int) int { - OldId := r.Id - if Id == 0 { +func (r *RaceMod) Login(id int) int { + oldId := r.Id + if id == 0 { r.Id = 0 - return OldId + return oldId } - if r.Id == Id { + if r.Id == id { return 0 } - r.Id = Id + r.Id = id r.Pass = 1 r.StartTime = 0 r.EndTime = 0 r.Progress = 0 r.Rank = 0 r.Opponent = nil - return OldId + return oldId } // TODO 剩余AI逻辑未开发 -func (r *RaceMod) ZeroUpdate(Id int) { - r.Login(Id) +func (r *RaceMod) ZeroUpdate(id int) { + r.Login(id) } func (r *RaceMod) StartGame() error { @@ -56,66 +56,66 @@ func (r *RaceMod) StartGame() error { return fmt.Errorf("the game has started") } r.StartTime = GoUtil.Now() - OpponentNum := raceCfg.GetRaceNum(r.Pass) + opponentNum := raceCfg.GetRaceNum(r.Pass) r.EndTime = r.StartTime + int64(raceCfg.GetCD(r.Id)) - r.Opponent = randOpponents(OpponentNum) + r.Opponent = randOpponents(opponentNum) r.Rank = 1 return nil } -func (r *RaceMod) AddCoin(Num int) { +func (r *RaceMod) AddCoin(num int) { if r.StartTime == 0 { return } - r.Progress += Num + r.Progress += num } func (r *RaceMod) GetReward() ([]*item.Item, error) { if r.EndTime == 0 { return nil, fmt.Errorf("the game is not over") } - Need := raceCfg.GetRaceNeed(r.Pass) - if r.Progress < Need { + need := raceCfg.GetRaceNeed(r.Pass) + if r.Progress < need { return nil, fmt.Errorf("not enough progress") } if r.Rank != 1 { return nil, fmt.Errorf("you are not the first") } - var Items []*item.Item - Items = append(Items, raceCfg.GetReward(r.Pass)...) - Now := GoUtil.Now() - if Now <= r.EndTime { - Items = append(Items, raceCfg.GetExtraReward(r.Pass)...) + var items []*item.Item + items = append(items, raceCfg.GetReward(r.Pass)...) + now := GoUtil.Now() + if now <= r.EndTime { + items = append(items, raceCfg.GetExtraReward(r.Pass)...) } r.Pass++ - r.Progress -= Need - MaxPass := raceCfg.GetMaxPass(r.Id) - if r.Pass > MaxPass { + r.Progress -= need + maxPass := raceCfg.GetMaxPass(r.Id) + if r.Pass > maxPass { r.Pass = 1 r.StartTime = 0 r.EndTime = 0 r.Opponent = nil r.Progress = 0 } else { - r.StartTime = Now - r.EndTime = Now + int64(raceCfg.GetCD(r.Id)) + r.StartTime = now + r.EndTime = now + int64(raceCfg.GetCD(r.Id)) r.Opponent = randOpponents(raceCfg.GetRaceNum(r.Pass)) } - return Items, nil + return items, nil } -func randOpponents(OpponentNum int) []*Opponent { - opponents := make([]*Opponent, 0, OpponentNum-1) - names := randnameCfg.GetRandNames(OpponentNum) - for i := 1; i < OpponentNum; i++ { +func randOpponents(opponentNum int) []*Opponent { + opponents := make([]*Opponent, 0, opponentNum-1) + names := randnameCfg.GetRandNames(opponentNum) + for i := 1; i < opponentNum; i++ { opponents = append(opponents, randOpponent(i, names[i])) } return opponents } -func randOpponent(Id int, name string) *Opponent { +func randOpponent(id int, name string) *Opponent { return &Opponent{ - Id: Id, + Id: id, Name: name, Face: rand.Intn(10), Avatar: rand.Intn(10), diff --git a/src/server/game/mod/seven_login/seven_login.go b/src/server/game/mod/seven_login/seven_login.go index 234ccbba..e07bfb3d 100644 --- a/src/server/game/mod/seven_login/seven_login.go +++ b/src/server/game/mod/seven_login/seven_login.go @@ -30,15 +30,15 @@ func (s *SevenLoginMod) InitData() { } -func (s *SevenLoginMod) ZeroUpdate(Add, LastLoginTime, factor, level int) { - WeekZeroTimestamp := GoUtil.WeekZeroTimestamp() - Now := GoUtil.Now() - if WeekZeroTimestamp > s.WeekResetTime { - RewardType := GoUtil.IfTrue(Now-int64(LastLoginTime) > GoUtil.SEVENDAYS && LastLoginTime > 0, BACK_REWARD, DEFAULT_REWARD).(int) - s.IsBack = RewardType == BACK_REWARD - s.LoginReward = randWeekReward(Add, RewardType, level) +func (s *SevenLoginMod) ZeroUpdate(add, lastLoginTime, factor, level int) { + weekZeroTimestamp := GoUtil.WeekZeroTimestamp() + now := GoUtil.Now() + if weekZeroTimestamp > s.WeekResetTime { + rewardType := GoUtil.IfTrue(now-int64(lastLoginTime) > GoUtil.SEVENDAYS && lastLoginTime > 0, BACK_REWARD, DEFAULT_REWARD).(int) + s.IsBack = rewardType == BACK_REWARD + s.LoginReward = randWeekReward(add, rewardType, level) s.LoginReward = formatSevenReward(s.LoginReward, factor) - s.WeekResetTime = WeekZeroTimestamp + s.WeekResetTime = weekZeroTimestamp s.DayR = 0 } monthZeroTimestamp := GoUtil.MonthZeroTimestamp() @@ -51,53 +51,53 @@ func (s *SevenLoginMod) ZeroUpdate(Add, LastLoginTime, factor, level int) { s.DayR++ } -func (s *SevenLoginMod) GetReward(Id int) ([]*item.Item, error) { - if Id > s.DayR { +func (s *SevenLoginMod) GetReward(id int) ([]*item.Item, error) { + if id > s.DayR { return nil, fmt.Errorf("id greater than login days") } - Reward := s.LoginReward[Id] - if Reward.Status { + reward := s.LoginReward[id] + if reward.Status { return nil, fmt.Errorf("reward already received") } - Reward.Status = true - s.LoginReward[Id] = Reward + reward.Status = true + s.LoginReward[id] = reward s.Active++ item := make([]*item.Item, 0) - item = append(item, Reward.Item1...) - item = append(item, Reward.Item2...) - item = append(item, Reward.Item3...) + item = append(item, reward.Item1...) + item = append(item, reward.Item2...) + item = append(item, reward.Item3...) return item, nil } -func (s *SevenLoginMod) GetMonthReward(Id int) ([]*item.Item, error) { - NeedActive := sevenLoginCfg.GetMonthActive(Id) - if NeedActive > s.Active { +func (s *SevenLoginMod) GetMonthReward(id int) ([]*item.Item, error) { + needActive := sevenLoginCfg.GetMonthActive(id) + if needActive > s.Active { return nil, fmt.Errorf("id greater than active") } - Reward := s.MonthReward[Id] - if Reward.Status { + reward := s.MonthReward[id] + if reward.Status { return nil, fmt.Errorf("reward already received") } - Reward.Status = true - s.MonthReward[Id] = Reward + reward.Status = true + s.MonthReward[id] = reward item := make([]*item.Item, 0) - item = append(item, Reward.Item1...) - item = append(item, Reward.Item2...) - item = append(item, Reward.Item3...) + item = append(item, reward.Item1...) + item = append(item, reward.Item2...) + item = append(item, reward.Item3...) return item, nil } func (s *SevenLoginMod) BackData() *msg.ResSevenLogin { - WeekReward := make([]*msg.SevenLoginReward, 0) - MonthReward := make([]*msg.SevenLoginReward, 0) + weekReward := make([]*msg.SevenLoginReward, 0) + monthReward := make([]*msg.SevenLoginReward, 0) for k, v := range s.LoginReward { - Status := GoUtil.IfTrue(!v.Status && s.DayR >= k, 1, 0).(int) - Status = GoUtil.IfTrue(v.Status, 2, Status).(int) - WeekReward = append(WeekReward, &msg.SevenLoginReward{ + status := GoUtil.IfTrue(!v.Status && s.DayR >= k, 1, 0).(int) + status = GoUtil.IfTrue(v.Status, 2, status).(int) + weekReward = append(weekReward, &msg.SevenLoginReward{ Item1: item.ItemToMsg(v.Item1), Item2: item.ItemToMsg(v.Item2), Item3: item.ItemToMsg(v.Item3), - Status: int32(Status), + Status: int32(status), Id: int32(k), }) } @@ -106,22 +106,22 @@ func (s *SevenLoginMod) BackData() *msg.ResSevenLogin { if k < 0 { continue } - Active := sevenLoginCfg.GetMonthActive(k) - Status := GoUtil.IfTrue(!v.Status && s.Active >= Active, 1, 0).(int) - Status = GoUtil.IfTrue(v.Status, 2, Status).(int) - MonthReward = append(MonthReward, &msg.SevenLoginReward{ + active := sevenLoginCfg.GetMonthActive(k) + status := GoUtil.IfTrue(!v.Status && s.Active >= active, 1, 0).(int) + status = GoUtil.IfTrue(v.Status, 2, status).(int) + monthReward = append(monthReward, &msg.SevenLoginReward{ Item1: item.ItemToMsg(v.Item1), Item2: item.ItemToMsg(v.Item2), Item3: item.ItemToMsg(v.Item3), - Status: int32(Status), + Status: int32(status), Id: int32(k), - NeedActive: int32(Active), + NeedActive: int32(active), }) } return &msg.ResSevenLogin{ - WeekReward: WeekReward, - MonthReward: MonthReward, + WeekReward: weekReward, + MonthReward: monthReward, Active: int32(s.Active), IsBack: s.IsBack, } diff --git a/src/server/game/player_back.go b/src/server/game/player_back.go index 73666247..ead838fc 100644 --- a/src/server/game/player_back.go +++ b/src/server/game/player_back.go @@ -25,19 +25,19 @@ func (p *Player) PlayroomBackData() { r.Status = int32(PlayroomMod.Status) r.Items = item.ItemToMsg(PlayroomMod.Reward) - Opponent := make([]*proto.RoomOpponent, 0, len(PlayroomMod.Visitor)) + opponent := make([]*proto.RoomOpponent, 0, len(PlayroomMod.Visitor)) FriendList := make([]*proto.FriendRoom, 0, len(FriendMod.GetFriendList())) if PlayroomMod.Target == 0 { PlayroomMod.SetTarget(p.GetVisitorPlayer()) } - TargerRoom := &proto.FriendRoom{} + targetRoom := &proto.FriendRoom{} if PlayroomMod.Target != 0 { - PlayerData := G_GameLogicPtr.GetSimplePlayerByUid(PlayroomMod.Target) - if PlayerData != nil { - TargerRoom.Uid = int64(PlayerData.Uid) - TargerRoom.Name = PlayerData.Name - TargerRoom.Face = int32(PlayerData.Face) - TargerRoom.Avatar = int32(PlayerData.Avatar) + playerData := G_GameLogicPtr.GetSimplePlayerByUid(PlayroomMod.Target) + if playerData != nil { + targetRoom.Uid = int64(playerData.Uid) + targetRoom.Name = playerData.Name + targetRoom.Face = int32(playerData.Face) + targetRoom.Avatar = int32(playerData.Avatar) } else { PlayroomMod.Target = 0 } @@ -48,7 +48,7 @@ func (p *Player) PlayroomBackData() { continue } if !FriendMod.CheckFriend(k) { - Opponent = append(Opponent, &proto.RoomOpponent{ + opponent = append(opponent, &proto.RoomOpponent{ Uid: int64(k), Name: ps.Name, Face: int32(ps.Face), @@ -57,8 +57,8 @@ func (p *Player) PlayroomBackData() { }) } } - Friend := FriendMod.GetFriendList() - for k := range Friend { + friend := FriendMod.GetFriendList() + for k := range friend { ps := G_GameLogicPtr.GetSimplePlayerByUid(k) if ps == nil { continue @@ -72,24 +72,24 @@ func (p *Player) PlayroomBackData() { Times: int32(Times), }) } - r.Opponent = Opponent + r.Opponent = opponent r.Friend = FriendList - r.Target = TargerRoom + r.Target = targetRoom collectList := PlayroomMod.GetCollect() - Collect := make([]*proto.PlayroomCollectInfo, 0, len(collectList)) + collect := make([]*proto.PlayroomCollectInfo, 0, len(collectList)) for _, v := range collectList { - Collect = append(Collect, &proto.PlayroomCollectInfo{ + collect = append(collect, &proto.PlayroomCollectInfo{ Id: int32(v.Id), AddTime: v.AddTime, EndTime: v.EndTime, Label: v.Label, }) } - r.Collect = Collect - Dress := make(map[int32]*proto.PlayroomDress) + r.Collect = collect + dress := make(map[int32]*proto.PlayroomDress) for _, v := range PlayroomMod.GetDress() { - PlayroomDress, ok := Dress[int32(v.Part)] + PlayroomDress, ok := dress[int32(v.Part)] if !ok { PlayroomDress = &proto.PlayroomDress{} } @@ -99,25 +99,25 @@ func (p *Player) PlayroomBackData() { EndTime: int64(v.EndTime), Label: v.Label, }) - Dress[int32(v.Part)] = PlayroomDress + dress[int32(v.Part)] = PlayroomDress } - ChipMessage := make([]*proto.ChipInfo, 0, len(PlayroomMod.ChipList)) + chipMessage := make([]*proto.ChipInfo, 0, len(PlayroomMod.ChipList)) for _, v := range PlayroomMod.ChipList { - ChipMessage = append(ChipMessage, &proto.ChipInfo{ + chipMessage = append(chipMessage, &proto.ChipInfo{ Uid: int64(v.Uid), EmojiId: int32(v.Emoji), }) } - AdWatch := make([]*proto.AdItem, 0, len(PlayroomMod.ADItem)) + adWatch := make([]*proto.AdItem, 0, len(PlayroomMod.ADItem)) for k, v := range PlayroomMod.ADItem { - AdWatch = append(AdWatch, &proto.AdItem{ + adWatch = append(adWatch, &proto.AdItem{ Watch: int32(v.Watch), LastWatch: int32(v.LastTime), ItemId: int32(k), }) } - r.Dress = Dress + r.Dress = dress r.DressSet = GoUtil.MapIntToInt32(PlayroomMod.GetDressSet()) petAirList := PlayroomMod.GetPetAir() PetAir := make([]*proto.PlayroomAirInfo, 0, len(petAirList)) @@ -146,7 +146,7 @@ func (p *Player) PlayroomBackData() { r.WeeklyDiscount = weeklyDiscount r.PetAir = PetAir r.PetAirSet = int32(PlayroomMod.GetPetAirSet()) - r.Chip = ChipMessage + r.Chip = chipMessage r.StartTime = int32(PlayroomMod.Starttime) r.WorkStatus = int32(PlayroomMod.WorkStatus) r.Playroom = GoUtil.MapIntToInt32(PlayroomMod.GetRoom()) @@ -162,34 +162,34 @@ func (p *Player) PlayroomBackData() { r.Kiss = int32(p.GetPlayroomKiss(int(p.M_DwUin))) r.Revenge = PlayroomMod.RevengeUid r.InteractNum = int32(PlayroomMod.InteractNum) - r.AdItem = AdWatch + r.AdItem = adWatch p.PushClientRes(r) } -func (p *Player) PlayroomVisit(Uid int) { - if Uid == 0 { +func (p *Player) PlayroomVisit(uid int) { + if uid == 0 { p.PushClientRes(&proto.ResPlayroomInfo{}) return } PlayroomMod := p.PlayMod.getPlayroomMod() r := &proto.ResPlayroomInfo{} - PlayerData := G_GameLogicPtr.GetSimplePlayerByUid(Uid) + PlayerData := G_GameLogicPtr.GetSimplePlayerByUid(uid) if PlayerData == nil { p.PushClientRes(&proto.ResPlayroomInfo{}) return } - Now := GoUtil.Now() - Work := false - if PlayerData.WorkStart > 0 && PlayerData.WorkStart+86400 > Now { - Work = true + now := GoUtil.Now() + work := false + if PlayerData.WorkStart > 0 && PlayerData.WorkStart+86400 > now { + work = true } - r.Uid = int64(Uid) + r.Uid = int64(uid) r.Name = PlayerData.Name r.Face = int32(PlayerData.Face) r.Avatar = int32(PlayerData.Avatar) r.Playroom = GoUtil.MapIntToInt32(PlayerData.Playroom) r.GameId = int32(PlayroomMod.GameId) - r.Defense = Work + r.Defense = work r.Emoji = GoUtil.MapIntToInt32(PlayerData.Emoji) r.PetName = PlayerData.PetName Items := make(map[int32]*proto.ItemInfo) @@ -199,12 +199,12 @@ func (p *Player) PlayroomVisit(Uid int) { Num: int32(v.Num), } } - r.Upvote = GoUtil.InArray(Uid, PlayroomMod.UpvoteList) + r.Upvote = GoUtil.InArray(uid, PlayroomMod.UpvoteList) r.Items = Items r.Status = int32(PlayroomMod.GameStatus) - r.UpvoteCount = int32(p.GetPlayroomUpvote(Uid)) - r.Chip = int32(p.GetPlayroomChip(Uid)) - r.Kiss = int32(p.GetPlayroomKiss(Uid)) + r.UpvoteCount = int32(p.GetPlayroomUpvote(uid)) + r.Chip = int32(p.GetPlayroomChip(uid)) + r.Kiss = int32(p.GetPlayroomKiss(uid)) r.DressSet = GoUtil.MapIntToInt32(PlayerData.DressSet) r.Fur = int32(PlayerData.PetFur) p.PushClientRes(r) @@ -242,17 +242,17 @@ func (p *Player) BackUserInfo() { func (p *Player) ChargeBackData() { c := p.PlayMod.getChargeMod() LimitedEventMod := p.PlayMod.getLimitedTimeEventMod() - SpecialShop := make(map[int32]*proto.ResSpecialShop) - ChessShop := make(map[int32]*proto.ResChessShop) + specialShop := make(map[int32]*proto.ResSpecialShop) + chessShop := make(map[int32]*proto.ResChessShop) for k, v := range c.SpecialShop { - SpecialShop[int32(k)] = &proto.ResSpecialShop{ + specialShop[int32(k)] = &proto.ResSpecialShop{ Grade: int32(v.Grade), Count: int32(v.Count), } } for k, v := range c.ChessShop { - ChessShop[int32(k)] = &proto.ResChessShop{ + chessShop[int32(k)] = &proto.ResChessShop{ Diamond: int32(v.Diamond), Count: int32(v.Count), ChessId: int32(v.Id), @@ -266,20 +266,20 @@ func (p *Player) ChargeBackData() { Uid: c.WishList.SendList, } } - WeeklyDiscount := make(map[int32]*proto.WeeklyDiscountInfo) - WeeklyDiscountInfo := chargeCfg.GetWeeklyInfoAll() + weeklyDiscount := make(map[int32]*proto.WeeklyDiscountInfo) + weeklyDiscountInfo := chargeCfg.GetWeeklyInfoAll() // 优惠日开启或者猫咪闪促开启 if c.IsWeeklyDiscountDay() || LimitedEventMod.CheckExist(limitedTimeEvent.EVENT_TYPE_CAT_DAY_SALE) { - for k, v := range WeeklyDiscountInfo { + for k, v := range weeklyDiscountInfo { LimitNum := c.WeeklyDiscount[k] - WeeklyDiscount[int32(k)] = &proto.WeeklyDiscountInfo{ + weeklyDiscount[int32(k)] = &proto.WeeklyDiscountInfo{ Discount: int32(v.Discount), Count: int32(v.WeeklyLimit - LimitNum), Id: int32(k), } } } - CatDaySaleEndTime := LimitedEventMod.GetCatDaySaleEndTime() + catDaySaleEndTime := LimitedEventMod.GetCatDaySaleEndTime() var specialChargeWeek int32 if c.LastSpecialCharge != 0 { specialChargeWeek = int32(GoUtil.FullWeeksSince(c.LastSpecialCharge)) @@ -288,9 +288,9 @@ func (p *Player) ChargeBackData() { Charge: float32(c.Charge), Total: int32(c.Total), First: GoUtil.MapIntToSlice(c.EnergyShop), - SpecialShop: SpecialShop, + SpecialShop: specialShop, FreeShop: int32(c.FreeShop), - ChessShop: ChessShop, + ChessShop: chessShop, Gift: GoUtil.MapIntToInt32(c.Gift), Ad: c.Ad, SpecialCharge: float32(c.SpecialCharge), @@ -299,9 +299,9 @@ func (p *Player) ChargeBackData() { MonthCharge: float32(c.MonthCharge), Wish: resWish, AdEndTime: c.AdEndTime, - WeeklyDiscount: WeeklyDiscount, + WeeklyDiscount: weeklyDiscount, PetWorkRemainTime: c.PetWorkTime, - WeeklyEndTime: max(c.WeeklyEndTime, CatDaySaleEndTime), + WeeklyEndTime: max(c.WeeklyEndTime, catDaySaleEndTime), }) } @@ -335,16 +335,16 @@ func (p *Player) FriendListBackData() { } } now := GoUtil.Now() - ReqFriendList := make([]int64, 0, len(FriendMod.SendApply)) + reqFriendList := make([]int64, 0, len(FriendMod.SendApply)) for k, v := range FriendMod.SendApply { if now-v > oneday { continue } - ReqFriendList = append(ReqFriendList, int64(k)) + reqFriendList = append(reqFriendList, int64(k)) } p.PushClientRes(&proto.ResFriendList{ FriendList: fl, - ReqApplyList: ReqFriendList, + ReqApplyList: reqFriendList, Npc: GoUtil.IntToInt32(FriendMod.GetNpc()), Sponsor: int32(FriendMod.GetSponsor()), }) diff --git a/src/server/game/player_base_mod.go b/src/server/game/player_base_mod.go index 6a3eca24..8313b354 100644 --- a/src/server/game/player_base_mod.go +++ b/src/server/game/player_base_mod.go @@ -85,10 +85,10 @@ func (p *PlayerBaseData) Recover(old *PlayerBaseData) *PlayerBaseData { return old } -func (p *PlayerBaseData) LoadDataFromDB(UserName interface{}) bool { +func (p *PlayerBaseData) LoadDataFromDB(userName interface{}) bool { sqlStr := "SELECT * FROM t_player_baseinfo WHERE user_name = ?" sqlStruck := db.ResPlayerBaseInfo{} - if err := db.SqlDb.Get(&sqlStruck, sqlStr, UserName); err != nil { + if err := db.SqlDb.Get(&sqlStruck, sqlStr, userName); err != nil { log.Debug("PlayerBaseData get data failed, err:%v\n", err) return false } @@ -118,10 +118,10 @@ func (p *PlayerBaseData) LoadDataFromDB(UserName interface{}) bool { return true } -func (p *PlayerBaseData) LoadDataFromDBByUid(Uid int) bool { +func (p *PlayerBaseData) LoadDataFromDBByUid(uid int) bool { sqlStr := "SELECT * FROM t_player_baseinfo WHERE DwUin = ?" sqlStruck := db.ResPlayerBaseInfo{} - if err := db.SqlDb.Get(&sqlStruck, sqlStr, Uid); err != nil { + if err := db.SqlDb.Get(&sqlStruck, sqlStr, uid); err != nil { log.Debug("PlayerBaseData get data failed, err:%v\n", err) return false } @@ -151,7 +151,7 @@ func (p *PlayerBaseData) LoadDataFromDBByUid(Uid int) bool { return true } -func (p *PlayerBaseData) SaveDataFromDB(Key interface{}) bool { +func (p *PlayerBaseData) SaveDataFromDB(key interface{}) bool { BaseMod := p.p.PlayMod.getBaseMod() sqlStruck := db.ResPlayerBaseInfo{} sqlStruck.Diamond = int32(BaseMod.Diamond) @@ -178,17 +178,16 @@ func (p *PlayerBaseData) SaveDataFromDB(Key interface{}) bool { sqlStruck.FaceBookId = p.Data.FaceBookId sqlStruck.NickName = BaseMod.NickName db.FormatAllMemUpdateDb(&sqlStruck, "t_player_baseinfo", "dwUin") - return true } func (p *PlayerBaseData) GetMaxEnergyMul(player *Player) int { BaseMod := player.PlayMod.getBaseMod() - MaxEnergyMul := baseCfg.GetMaxEnergyMul(BaseMod.GetLevel(), BaseMod.GetEnergy()) + maxEnergyMul := baseCfg.GetMaxEnergyMul(BaseMod.GetLevel(), BaseMod.GetEnergy()) if player.PlayMod.getLimitedTimeEventMod().CheckExist(limitedTimeEvent.EVENT_TYPE_HIGH_ROLLER) { - MaxEnergyMul = 11 + maxEnergyMul = 11 } - return MaxEnergyMul + return maxEnergyMul } func (p *PlayerBaseData) GetMaxEnergy() int { @@ -276,7 +275,6 @@ func (p *PlayerBaseData) ReqUnBindFacebook(player *Player, buf []byte) { if err != nil { return } - res.ResultCode = 0 res.BindAccountId = req.BindAccountId p.Data.FaceBookId = "" @@ -298,7 +296,6 @@ func (p *PlayerBaseData) ReqOnlyBindFacebook(player *Player, buf []byte) { if err != nil { return } - sqlStr := "SELECT * FROM t_player_baseinfo WHERE FaceBookId = ?" sqlStruck := db.ResPlayerBaseInfo{} isHaveOther := false @@ -313,7 +310,6 @@ func (p *PlayerBaseData) ReqOnlyBindFacebook(player *Player, buf []byte) { res.ResultCode = MergeConst.Protocol_FaceBook_Binded } else { sqlStruck.FaceBookId = "" - // 修改双方的faceBookId ctx := context.Background() txOptions := &sql.TxOptions{} @@ -365,11 +361,9 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { if err != nil { return } - sqlStr := "SELECT * FROM t_player_baseinfo WHERE FaceBookId = ?" sqlStruck := db.ResPlayerBaseInfo{} isHaveOther := false - if err := db.SqlDb.Get(&sqlStruck, sqlStr, req.NewFBId); err != nil { isHaveOther = false } else { @@ -378,16 +372,16 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { if sqlStruck.DwUin == player.M_DwUin { return } - OldPlayer := G_GameLogicPtr.GetPlayer(sqlStruck.DwUin) - if OldPlayer != nil { - agent := OldPlayer.GetAgentByPlayer() + oldPlayer := G_GameLogicPtr.GetPlayer(sqlStruck.DwUin) + if oldPlayer != nil { + agent := oldPlayer.GetAgentByPlayer() // notify := &msg.ForceKickOut{} notify := &msg.ResSynGameData{} data, _ := proto.Marshal(notify) if agent != nil { G_getGameLogic().PackResInfo(agent, "ResSynGameData", data) } - OldPlayer.ClearData() + oldPlayer.ClearData() G_GameLogicPtr.M_Players.Delete(sqlStruck.DwUin) } @@ -395,8 +389,8 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { if sqlStruck.DwUin == p.Data.DwUin { res.ResultCode = MergeConst.Protocol_FaceBook_Binded } else { - ReplaceName := sqlStruck.UserName - UserName := p.Data.UserName + replaceName := sqlStruck.UserName + userName := p.Data.UserName res.ResultCode = 0 // 修改双方的账号 ctx := context.Background() @@ -404,7 +398,7 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { tx, _ := db.SqlDb.BeginTx(ctx, txOptions) sqlStr1 := "SELECT * FROM t_account WHERE user_name = ?" sqlAccStruck1 := db.Db_Account{} - err2 := db.SqlDb.Get(&sqlAccStruck1, sqlStr1, UserName) + err2 := db.SqlDb.Get(&sqlAccStruck1, sqlStr1, userName) if err2 == nil { sqlAccStruck1.UserName = "" _, err := db.SqlDb.Exec("update t_account set user_name = ? where auto_id = ?", sqlAccStruck1.UserName, sqlAccStruck1.AutoId) @@ -421,8 +415,8 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { } sqlStruck.FaceBookId = req.NewFBId - sqlStruck.UserName = UserName - _, err = db.SqlDb.Exec("update t_player_baseinfo set user_name = ?, FaceBookId = ? where dwUin = ?", UserName, req.NewFBId, sqlStruck.DwUin) + sqlStruck.UserName = userName + _, err = db.SqlDb.Exec("update t_player_baseinfo set user_name = ?, FaceBookId = ? where dwUin = ?", userName, req.NewFBId, sqlStruck.DwUin) if err != nil { tx.Rollback() return @@ -430,9 +424,9 @@ func (p *PlayerBaseData) ReqSynGameData(player *Player, buf []byte) { sqlStr := "SELECT * FROM t_account WHERE user_name = ?" sqlAccStruck := db.Db_Account{} - err2 = db.SqlDb.Get(&sqlAccStruck, sqlStr, ReplaceName) + err2 = db.SqlDb.Get(&sqlAccStruck, sqlStr, replaceName) if err2 == nil { - sqlAccStruck.UserName = UserName + sqlAccStruck.UserName = userName _, err := db.SqlDb.Exec("update t_account set user_name = ? where auto_id = ?", sqlAccStruck.UserName, sqlAccStruck.AutoId) if err != nil { tx.Rollback() @@ -468,16 +462,16 @@ func (p *PlayerBaseData) GetRegisterTime() int64 { // 增加减少体力 func (p *PlayerBaseData) AddEnergy(player *Player, cnt int) error { BaseMod := p.p.PlayMod.getBaseMod() - NewEnergy := BaseMod.Energy + cnt - if NewEnergy < 0 { + newEnergy := BaseMod.Energy + cnt + if newEnergy < 0 { return errors.New("能量不足") } if cnt < 0 { player.QuestTrigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_ENERGY, A: []interface{}{-cnt}}) - // BaseMod.FormatEnergyMul(NewEnergy) + // BaseMod.FormatEnergyMul(newEnergy) p.p.PushClientRes(BaseMod.BackData()) } - if BaseMod.Energy >= p.GetMaxEnergy() && NewEnergy < p.GetMaxEnergy() { + if BaseMod.Energy >= p.GetMaxEnergy() && newEnergy < p.GetMaxEnergy() { Recover := userCfg.GetRecover(int(BaseMod.Level)) player.CallEvent(time.Duration(Recover)*time.Second, func() { player.lock.Lock() @@ -486,21 +480,21 @@ func (p *PlayerBaseData) AddEnergy(player *Player, cnt int) error { }, "AddEnergy") BaseMod.RecoverTime = time.Now().Unix() } - BaseMod.Energy = NewEnergy + BaseMod.Energy = newEnergy return nil } // 增加减少星星 func (p *PlayerBaseData) AddStar(player *Player, cnt int) error { BaseMod := p.p.PlayMod.getBaseMod() - NewStar := BaseMod.Star + cnt - if NewStar < 0 { + newStar := BaseMod.Star + cnt + if newStar < 0 { return errors.New("星星不足") } if cnt > 0 { player.QuestTrigger(&quest.Trigger{Label: quest.TRIGGER_LABEL_STAR, A: []interface{}{cnt}}) } - BaseMod.Star = NewStar + BaseMod.Star = newStar player.UpdateUserInfo() return nil } @@ -508,11 +502,11 @@ func (p *PlayerBaseData) AddStar(player *Player, cnt int) error { // 增加减少钻石 func (p *PlayerBaseData) AddDiamond(cnt int) error { BaseMod := p.p.PlayMod.getBaseMod() - NewDiamond := BaseMod.Diamond + cnt - if NewDiamond < 0 { + newDiamond := BaseMod.Diamond + cnt + if newDiamond < 0 { return errors.New("钻石不足") } - BaseMod.Diamond = NewDiamond + BaseMod.Diamond = newDiamond return nil } @@ -523,13 +517,13 @@ func (p *PlayerBaseData) AddExp(player *Player, exp int, pexp int) (int, error) BaseMod.PExp += pexp upLv := 0 upExp, upPExp := userCfg.GetLevUpExp(BaseMod.Level) - Num := 0 - UpLevelItem := make([]*item.Item, 0) + num := 0 + upLevelItem := make([]*item.Item, 0) for BaseMod.Exp >= upExp && BaseMod.PExp >= upPExp { - if Num > 100 { + if num > 100 { break } - Num++ + num++ BaseMod.Level++ BaseMod.Exp -= upExp BaseMod.PExp -= upPExp @@ -541,8 +535,8 @@ func (p *PlayerBaseData) AddExp(player *Player, exp int, pexp int) (int, error) player.PushClientRes(DailyTaskMod.BackData()) } upLv = BaseMod.Level - Items := userCfg.GetLevUpReward(upLv) - UpLevelItem = item.Merge(UpLevelItem, Items) + items := userCfg.GetLevUpReward(upLv) + upLevelItem = item.Merge(upLevelItem, items) // 棋盘背包解锁 player.PushClientRes(p.BackAsset()) ChessMod := player.PlayMod.getChessMod() @@ -577,8 +571,8 @@ func (p *PlayerBaseData) AddExp(player *Player, exp int, pexp int) (int, error) }) player.HandleInUserRank() } - if len(UpLevelItem) > 0 { - err := player.HandleItem(UpLevelItem, msg.ITEM_POP_LABEL_LevUpReward.String()) + if len(upLevelItem) > 0 { + err := player.HandleItem(upLevelItem, msg.ITEM_POP_LABEL_LevUpReward.String()) if err != nil { return 0, err } @@ -658,10 +652,10 @@ func (p *PlayerBaseData) GetLoginTime() int64 { return int64(BaseMod.LoginTime) } -func (p *PlayerBaseData) GetDataByUid(Uid interface{}) bool { +func (p *PlayerBaseData) GetDataByUid(uid interface{}) bool { sqlStr := "SELECT * FROM t_player_baseinfo WHERE dwUin = ?" sqlStruck := db.ResPlayerBaseInfo{} - if err := db.SqlDb.Get(&sqlStruck, sqlStr, Uid); err != nil { + if err := db.SqlDb.Get(&sqlStruck, sqlStr, uid); err != nil { // log.Debug("get data failed, err:%v\n", err) return false } diff --git a/src/server/game/player_chess_mod.go b/src/server/game/player_chess_mod.go index 9e2b8ed5..11726229 100644 --- a/src/server/game/player_chess_mod.go +++ b/src/server/game/player_chess_mod.go @@ -24,26 +24,22 @@ type PlayerChessData struct { } func (p *PlayerChessData) LoadDataFromDB(dwUin interface{}) bool { - return true } -func (p *PlayerChessData) Reconnect(b bool) { - -} - -func (p *PlayerChessData) SaveDataFromDB(Key interface{}) bool { +func (p *PlayerChessData) Reconnect(b bool) {} +func (p *PlayerChessData) SaveDataFromDB(key interface{}) bool { return true } func (p *PlayerChessData) ResPlayerChessData(player *Player) { agent := player.GetAgentByPlayer() - Msg := &p.Data + res := &p.Data ChessMod := player.PlayMod.getChessMod() - Msg.ChessList = ChessMod.BackData().ChessList - Msg.MChessData = ChessMod.ChessMap - data, _ := proto.Marshal(Msg) + res.ChessList = ChessMod.BackData().ChessList + res.MChessData = ChessMod.ChessMap + data, _ := proto.Marshal(res) G_getGameLogic().PackResInfo(agent, "ResPlayerChessData", data) } @@ -57,22 +53,21 @@ func (p *PlayerChessData) ResChessColorData(player *Player) { func (p *PlayerChessData) UpdatePlayerChessData(player *Player, buf []byte) error { update := &msg.UpdatePlayerChessData{} proto.Unmarshal(buf, update) - LastMap := player.PlayMod.getChessMod().ChessMap - AddChessList, AddNewEmit, err := p.HandleChess(player, update.MChessHandle) - + lastMap := player.PlayMod.getChessMod().ChessMap + addChessList, addNewEmit, err := p.HandleChess(player, update.MChessHandle) if err != nil { res := &msg.ResUpdatePlayerChessData{ Code: msg.RES_CODE_FAIL, Msg: err.Error(), } - HandleStr := "" + handleStr := "" sort.Slice(update.MChessHandle, func(i, j int) bool { return update.MChessHandle[i].Id < update.MChessHandle[j].Id }) for _, v := range update.MChessHandle { - HandleStr += fmt.Sprintf("%v-%v-%v,", v.Id, v.ChessId, v.Type) + handleStr += fmt.Sprintf("%v-%v-%v,", v.Id, v.ChessId, v.Type) } - log.Debug("棋子操作队列错误, %v===%v===%v===%v", HandleStr, LastMap, update.MChessData, player.PlayMod.getChessMod().GetChessList()) + log.Debug("棋子操作队列错误, %v===%v===%v===%v", handleStr, lastMap, update.MChessData, player.PlayMod.getChessMod().GetChessList()) player.SendErrClienRes(res) return err } @@ -85,14 +80,14 @@ func (p *PlayerChessData) UpdatePlayerChessData(player *Player, buf []byte) erro Code: msg.RES_CODE_FAIL, Msg: "棋子数据不一致", } - HandleStr := "" + handleStr := "" sort.Slice(update.MChessHandle, func(i, j int) bool { return update.MChessHandle[i].Id < update.MChessHandle[j].Id }) for _, v := range update.MChessHandle { - HandleStr += fmt.Sprintf("%v-%v-%v,", v.Id, v.ChessId, v.Type) + handleStr += fmt.Sprintf("%v-%v-%v,", v.Id, v.ChessId, v.Type) } - log.Debug("棋子数据不一致地图, %v===%v===%v===%v", HandleStr, LastMap, update.MChessData, player.PlayMod.getChessMod().GetChessList()) + log.Debug("棋子数据不一致地图, %v===%v===%v===%v", handleStr, lastMap, update.MChessData, player.PlayMod.getChessMod().GetChessList()) player.SendErrClienRes(res) player.TeLog("outsync_event", map[string]interface{}{ "outsync_event": "UpdatePlayerChessDataFunc", @@ -103,7 +98,7 @@ func (p *PlayerChessData) UpdatePlayerChessData(player *Player, buf []byte) erro BaseMod := player.PlayMod.getBaseMod() OrderMod := player.PlayMod.getOrderMod() ChessMod.ChessMap = update.MChessData - Update := OrderMod.CreateExtraOrder(AddChessList, AddNewEmit, ChessMod.GetUnlockChessList(), BaseMod.GetEnergyMul(), BaseMod.GetLevel()) + Update := OrderMod.CreateExtraOrder(addChessList, addNewEmit, ChessMod.GetUnlockChessList(), BaseMod.GetEnergyMul(), BaseMod.GetLevel()) if Update { player.InitOrderItem() player.PushClientRes(OrderMod.BackData()) @@ -111,8 +106,8 @@ func (p *PlayerChessData) UpdatePlayerChessData(player *Player, buf []byte) erro return nil } -func (p *PlayerChessData) UpdateChessData(player *Player, MChessData map[string]int32) error { - p.Data.MChessData = MChessData +func (p *PlayerChessData) UpdateChessData(player *Player, mChessData map[string]int32) error { + p.Data.MChessData = mChessData if !p.checkChessEqual(player) { res := &msg.ResUpdatePlayerChessData{ Code: msg.RES_CODE_FAIL, @@ -125,7 +120,7 @@ func (p *PlayerChessData) UpdateChessData(player *Player, MChessData map[string] }) return fmt.Errorf("棋子数据不一致") } - player.PlayMod.getChessMod().ChessMap = MChessData + player.PlayMod.getChessMod().ChessMap = mChessData return nil } @@ -134,21 +129,19 @@ func (p *PlayerChessData) checkChessEqual(player *Player) bool { if len(p.Data.MChessData) == 0 && conf.Server.GameName == "Merge_Pet_Local" { return true } - ChessList := player.PlayMod.getChessMod().GetChessList() - if len(ChessList) != len(p.Data.MChessData) { + chessList := player.PlayMod.getChessMod().GetChessList() + if len(chessList) != len(p.Data.MChessData) { return false } - aCopy := make([]int, 0, len(ChessList)) + aCopy := make([]int, 0, len(chessList)) bCopy := make([]int, 0, len(p.Data.MChessData)) - for _, v := range ChessList { + for _, v := range chessList { aCopy = append(aCopy, int(v)) } for _, v := range p.Data.MChessData { bCopy = append(bCopy, int(v)) } - isEqual := SlicesEqual(aCopy, bCopy) - - if isEqual { + if SlicesEqual(aCopy, bCopy) { return true } // 找出aCopy多的元素和少的元素 @@ -199,75 +192,75 @@ func (p *PlayerChessData) HandleChess(player *Player, handle_list []*msg.ChessHa HandbookMod := player.PlayMod.getHandbookMod() var addChessCostEnergy int var buyChess int - LimitPush := false // 限时事件推送 + limitPush := false // 限时事件推送 var TriggerList []*quest.Trigger var itemList []*item.Item - var AddChessList []int - var AddNewEmit []int - EmitList := ChessMod.GetEmitList() + var addChessList []int + var addNewEmit []int + emitList := ChessMod.GetEmitList() for _, v := range handle_list { - ChessId := int(v.ChessId) - EmitId := int(v.Emit) + chessId := int(v.ChessId) + emitId := int(v.Emit) switch v.Type { case msg.HANDLE_TYPE_ADD: //增加棋子 - err := ChessMod.AddChess(ChessId) + err := ChessMod.AddChess(chessId) if err != nil { return nil, nil, err } - Type := mergeDataCfg.GetTypeById(ChessId) - AddChessList = append(AddChessList, ChessId) - if !GoUtil.InArray(EmitId, []int{561, 562, 563, 564, 701, 702, 703, 704, 705, 706, 0}) && Type != "Resource" { // 宝箱生成的棋子不扣体力 + chessType := mergeDataCfg.GetTypeById(chessId) + addChessList = append(addChessList, chessId) + if !GoUtil.InArray(emitId, []int{561, 562, 563, 564, 701, 702, 703, 704, 705, 706, 0}) && chessType != "Resource" { // 宝箱生成的棋子不扣体力 addChessCostEnergy++ } - b := HandbookMod.SetHandbook(ChessId) // 添加图鉴 + b := HandbookMod.SetHandbook(chessId) // 添加图鉴 if b { player.TeLog("collection_add", map[string]interface{}{ - "item_id": ChessId, - "item_name": mergeDataCfg.GetNameById(ChessId), + "item_id": chessId, + "item_name": mergeDataCfg.GetNameById(chessId), }) - AddNewEmit = append(AddNewEmit, ChessId) + addNewEmit = append(addNewEmit, chessId) } player.PushClientRes(HandbookMod.BackData()) case msg.HANDLE_TYPE_COMPOSE: //合成棋子 - NewChessId, err := ChessMod.ComposeChess(ChessId) + newChessId, err := ChessMod.ComposeChess(chessId) if err != nil { return nil, nil, err } - b := HandbookMod.SetHandbook(NewChessId) // 添加图鉴 + b := HandbookMod.SetHandbook(newChessId) // 添加图鉴 if b { - AddNewEmit = append(AddNewEmit, NewChessId) + addNewEmit = append(addNewEmit, newChessId) } - AddChessList = append(AddChessList, NewChessId) - NewChessIdLv := mergeDataCfg.GetLvById(NewChessId) - TriggerList = append(TriggerList, &quest.Trigger{Label: quest.TRIGGER_LABEL_MERGELVTIME, A: []interface{}{NewChessIdLv}}) + addChessList = append(addChessList, newChessId) + newChessIdLv := mergeDataCfg.GetLvById(newChessId) + TriggerList = append(TriggerList, &quest.Trigger{Label: quest.TRIGGER_LABEL_MERGELVTIME, A: []interface{}{newChessIdLv}}) TriggerList = append(TriggerList, &quest.Trigger{Label: quest.TRIGGER_LABEL_MERGETIME}) player.PushClientRes(HandbookMod.BackData()) - triggerComposeChess(player, NewChessId, player.PlayMod.getBaseMod().EnergyMul, player.PlayMod.getChessMod().GetEmitList()) + triggerComposeChess(player, newChessId, player.PlayMod.getBaseMod().EnergyMul, player.PlayMod.getChessMod().GetEmitList()) // 获取活动道具 ActItem := player.GetActivityItem(GoUtil.Int32ToInt(v.ActType)) itemList = item.Merge(itemList, ActItem) case msg.HANDLE_TYPE_BUY: //购买棋子 - loseGold, err := ChessMod.BuyChess(ChessId) + loseGold, err := ChessMod.BuyChess(chessId) if err != nil { return nil, nil, err } - AddChessList = append(AddChessList, ChessId) + addChessList = append(addChessList, chessId) buyChess += loseGold itemList = append(itemList, &item.Item{Id: item.ITEM_STAR_ID, Num: int(-loseGold)}) case msg.HANDLE_TYPE_SELL: //出售棋子 - items, err := ChessMod.SellChess(ChessId) - if checkChess(ChessId, BaseMod.GetEnergyMul(), ChessMod.GetEmitList()) { // 在订单中无法生成的棋子 出售获得原价宠物币 - items = []*item.Item{{Id: item.ITEM_STAR_ID, Num: mergeDataCfg.GetStarById(ChessId)}} + items, err := ChessMod.SellChess(chessId) + if checkChess(chessId, BaseMod.GetEnergyMul(), ChessMod.GetEmitList()) { // 在订单中无法生成的棋子 出售获得原价宠物币 + items = []*item.Item{{Id: item.ITEM_STAR_ID, Num: mergeDataCfg.GetStarById(chessId)}} } LimitedTimeEventMod := player.PlayMod.getLimitedTimeEventMod() - ChessType := mergeDataCfg.GetTypeById(ChessId) - if LimitedTimeEventMod.CheckExist(limitedTimeEvent.EVENT_TYPE_PAYBACK_DAY) && ChessType == "Product" { // 限时活动 返利日 + chessType := mergeDataCfg.GetTypeById(chessId) + if LimitedTimeEventMod.CheckExist(limitedTimeEvent.EVENT_TYPE_PAYBACK_DAY) && chessType == "Product" { // 限时活动 返利日 err = LimitedTimeEventMod.SubPaybackDay() if err == nil { - items = []*item.Item{{Id: item.ITEM_STAR_ID, Num: mergeDataCfg.GetStarById(ChessId)}} + items = []*item.Item{{Id: item.ITEM_STAR_ID, Num: mergeDataCfg.GetStarById(chessId)}} } - LimitPush = true + limitPush = true } if err != nil { return nil, nil, err @@ -277,8 +270,8 @@ func (p *PlayerChessData) HandleChess(player *Player, handle_list []*msg.ChessHa get_star_num = items[0].Num } player.TeLog("sell_item", map[string]interface{}{ - "merge_item_id": ChessId, - "product_name": mergeDataCfg.GetNameById(ChessId), + "merge_item_id": chessId, + "product_name": mergeDataCfg.GetNameById(chessId), "get_star_num": get_star_num, }) itemList = item.Merge(itemList, items) @@ -286,34 +279,34 @@ func (p *PlayerChessData) HandleChess(player *Player, handle_list []*msg.ChessHa ActItem := player.GetActivityItem(GoUtil.Int32ToInt(v.ActType)) itemList = item.Merge(itemList, ActItem) case msg.HANDLE_TYPE_REMOVE: //移除棋子 - ChessMod.RemoveChess(ChessId) + ChessMod.RemoveChess(chessId) } } //扣除体力 - EnergyPow := BaseMod.GetEnergyMul() - ReduceEneny := 0 + energyPow := BaseMod.GetEnergyMul() + reduceEneny := 0 if addChessCostEnergy > 0 { - ReduceEneny = int(math.Pow(2, float64(EnergyPow))) * addChessCostEnergy - itemList = append(itemList, &item.Item{Id: item.ITEM_ENERGY_ID, Num: -ReduceEneny}) + reduceEneny = int(math.Pow(2, float64(energyPow))) * addChessCostEnergy + itemList = append(itemList, &item.Item{Id: item.ITEM_ENERGY_ID, Num: -reduceEneny}) } err := player.HandleItem(itemList, msg.ITEM_POP_LABEL_HandleChess.String()) if err != nil { return nil, nil, err } - NewEmitList := ChessMod.GetEmitList() - var EmitProductList []string - for _, v := range EmitList { + newEmitList := ChessMod.GetEmitList() + var emitProductList []string + for _, v := range emitList { ColorList := mergeDataCfg.GetEmitProduceType(v) - EmitProductList = append(EmitProductList, ColorList...) + emitProductList = append(emitProductList, ColorList...) } - var NewEmitProductList []string - for _, v := range NewEmitList { + var newEmitProductList []string + for _, v := range newEmitList { ColorList := mergeDataCfg.GetEmitProduceType(v) - NewEmitProductList = append(NewEmitProductList, ColorList...) + newEmitProductList = append(newEmitProductList, ColorList...) } OrderMod := player.PlayMod.getOrderMod() - if !GoUtil.SlicesEqualString(EmitProductList, NewEmitProductList) { + if !GoUtil.SlicesEqualString(emitProductList, newEmitProductList) { // 发射器系列变化,重新洗牌 OrderMod.ResetChessPool() } @@ -321,10 +314,10 @@ func (p *PlayerChessData) HandleChess(player *Player, handle_list []*msg.ChessHa // 限时事件 小猫戏法 LimitedTimeEventMod := player.PlayMod.getLimitedTimeEventMod() if LimitedTimeEventMod.CheckExist(limitedTimeEvent.EVENT_TYPE_CAT_TRICK) { - LimitedTimeEventMod.AddCatTrickEnergy(ReduceEneny) - LimitPush = true + LimitedTimeEventMod.AddCatTrickEnergy(reduceEneny) + limitPush = true } - if LimitPush { + if limitPush { player.PushClientRes(LimitedTimeEventMod.BackData()) } player.QuestTriggerList(TriggerList) @@ -332,80 +325,80 @@ func (p *PlayerChessData) HandleChess(player *Player, handle_list []*msg.ChessHa player.InitOrderItem() player.PushClientRes(ChessMod.BackData()) player.PlayMod.save() - return AddChessList, AddNewEmit, nil + return addChessList, addNewEmit, nil } func (p *PlayerChessData) ClearData() bool { return true } -func checkChess(ChessId, EnergyMul int, Emit []int) bool { - if len(Emit) == 0 { +func checkChess(chessId, energyMul int, emit []int) bool { + if len(emit) == 0 { return false } - ChessIdLv := mergeDataCfg.GetLvById(ChessId) - ChessIdType := mergeDataCfg.GetTypeById(ChessId) - if ChessIdType != "Product" { + chessIdLv := mergeDataCfg.GetLvById(chessId) + chessIdType := mergeDataCfg.GetTypeById(chessId) + if chessIdType != "Product" { return false } - ChessIdColor := mergeDataCfg.GetColorById(ChessId) - if ChessIdColor == "Star" || ChessIdColor == "Energy" || ChessIdColor == "Diamond" { + chessIdColor := mergeDataCfg.GetColorById(chessId) + if chessIdColor == "Star" || chessIdColor == "Energy" || chessIdColor == "Diamond" { return false } - EmitId := 0 - for _, v := range Emit { + emitId := 0 + for _, v := range emit { ProduceColor := mergeDataCfg.GetEmitProduceType(v) - if GoUtil.InStringArray(ChessIdColor, ProduceColor) { - EmitId = v + if GoUtil.InStringArray(chessIdColor, ProduceColor) { + emitId = v break } } - _, Max := getChesslvRange(EmitId, EnergyMul, false) - Adjust := mergeDataCfg.GetAdjust(EmitId, ChessIdColor, EnergyMul) - return ChessIdLv > Max-Adjust + _, max := getChesslvRange(emitId, energyMul, false) + adjust := mergeDataCfg.GetAdjust(emitId, chessIdColor, energyMul) + return chessIdLv > max-adjust } -func getChesslvRange(Emit int, EnergyMul int, IsCharge bool) (int, int) { - RandEmitLv := mergeDataCfg.GetLvById(Emit) - EmitId := mergeDataCfg.GetEmitId(Emit) - RandMaxLv := mergeDataCfg.GetMaxLvById(Emit) - RandEmitMinLv := mergeDataCfg.GetEmitMinLvById(EmitId) - Ratio := mergeDataCfg.GetEmitRatio(EmitId) - m := int(float64(1+RandEmitLv-RandEmitMinLv) / float64(1+RandMaxLv-RandEmitMinLv) / Ratio * 100) - if IsCharge { +func getChesslvRange(emit int, energyMul int, isCharge bool) (int, int) { + randEmitLv := mergeDataCfg.GetLvById(emit) + emitId := mergeDataCfg.GetEmitId(emit) + randMaxLv := mergeDataCfg.GetMaxLvById(emit) + randEmitMinLv := mergeDataCfg.GetEmitMinLvById(emitId) + ratio := mergeDataCfg.GetEmitRatio(emitId) + m := int(float64(1+randEmitLv-randEmitMinLv) / float64(1+randMaxLv-randEmitMinLv) / ratio * 100) + if isCharge { m += 10 } m = max(1, m) m = min(100, m) - ChessMinLev := orderCfg.GetLvMin(EnergyMul) - ChessMaxLev := orderCfg.GetLvMax(EnergyMul, m) + ChessMinLev := orderCfg.GetLvMin(energyMul) + ChessMaxLev := orderCfg.GetLvMax(energyMul, m) return ChessMinLev, ChessMaxLev } -func triggerComposeChess(player *Player, ChessId, EnergyMul int, Emit []int) { +func triggerComposeChess(player *Player, chessId, energyMul int, emit []int) { OrderMod := player.PlayMod.getOrderMod() if OrderMod.Step < 12 { return } - if !checkChess(ChessId, EnergyMul, Emit) { + if !checkChess(chessId, energyMul, emit) { return } ChessMod := player.PlayMod.getChessMod() ChessList := ChessMod.GetUnlockChessList() - ChessNum := 0 + chessNum := 0 for _, v := range ChessList { - if v == ChessId { - ChessNum++ + if v == chessId { + chessNum++ } } - OrderNum := 0 + orderNum := 0 for _, v := range OrderMod.GetOrderList() { - if v.Type == order.Clean_Order_type && v.MergeId[0] == ChessId { - OrderNum++ + if v.Type == order.Clean_Order_type && v.MergeId[0] == chessId { + orderNum++ } } - if OrderNum >= ChessNum { + if orderNum >= chessNum { return } - OrderMod.CreateCleanOrder2([]int{ChessId}) + OrderMod.CreateCleanOrder2([]int{chessId}) player.PushClientRes(OrderMod.BackData()) }