package common import ( "fmt" "strings" ) // todo // 游戏模式ID // 多个id会属于同一个游戏,需要判断游戏类型时添加一个方法 // 例如:判断是否是象棋游戏 // func IsChess(id int) bool { // switch id { // case GameId_Chesstitians, // GameId_ChesstitiansMakruk, // GameId_ChesstitiansCambodian, // GameId_ChesstitiansCambodianRobot: // return true // } // return false //} const ( GameId_Unknow int = iota __GameId_Hundred_Min__ = 100 //################百人类################ GameId_HundredDZNZ = 101 //德州牛仔 GameId_HundredYXX = 102 //鱼虾蟹 GameId_Baccarat = 103 //百家乐 GameId_RollPoint = 104 //骰宝 GameId_Roulette = 105 //轮盘 GameId_DragonVsTiger = 106 //龙虎斗 GameId_RedVsBlack = 107 //红黑大战 GameId_RollCoin = 108 //奔驰宝马 GameId_RollAnimals = 109 //飞禽走兽 GameId_RollColor = 110 //森林舞会 GameId_RedPack = 111 //红包扫雷 GameId_Crash = 112 //碰撞游戏 __GameId_VS_Min__ = 200 //################对战类################ GameId_DezhouPoker = 201 //德州扑克 GameId_DezhouPoker_5To2 = 202 //德州扑克5选2 GameId_OmahaPoker = 203 //奥马哈 GameId_TenHalf = 204 //十点半 GameId_FiveCardStud = 205 //梭哈 GameId_BlackJack = 206 //21点 GameId_TienLen = 207 // tienlen自由桌经典版 GameId_TienLen_yl = 208 // tienlen自由桌娱乐版 GameId_TienLen_toend = 209 // tienlen自由桌经典版(打到底) GameId_TienLen_yl_toend = 210 // tienlen自由桌娱乐版(打到底) GameId_TienLen_m = 807 // tienlen经典比赛场 GameId_TienLen_m_toend = 808 // tienlen经典比赛场(打到底) GameId_TaLa = 220 //tala GameId_SamLoc = 230 //samloc GameId_TienLenSelect = 240 // tienlen经典版 GameId_TienLenSelect_yl = 241 // tienlen娱乐版 GameId_TienLenRank = 242 // tienlen排位赛经典 GameId_TienLenRank_yl = 243 // tienlen排位赛娱乐 GameId_TienLenSelect_toend = 244 // tienlen经典版(打到底) GameId_TienLenSelect_yl_toend = 245 // tienlen娱乐版(打到底) GameId_TienLenRank_toend = 246 // tienlen排位赛经典(打到底) GameId_TienLenRank_yl_toend = 247 // tienlen排位赛娱乐(打到底) GameId_Chesstitians = 501 //国际象棋 GameId_ChesstitiansMakruk = 511 //国际象棋变体 (Makruk 泰国象棋) GameId_ChesstitiansCambodian = 521 // 柬埔寨象棋 (Cambodian 柬埔寨象棋) GameId_ChesstitiansCambodianRobot = 522 // 柬埔寨象棋人机对战 GameID_Thirteen4 = 211 // 十三张(四人场) GameID_Thirteen8 = 212 // 十三张(八人场) GameID_ThirteenFree = 213 // 十三张(自由场经典场) GameID_ThirteenFreeLaiZi = 214 // 十三张(自由场癞子场) GameId_TienLenCustom = 215 // tienlen房卡经典版 GameId_TienLenCustom_yl = 216 // tienlen房卡娱乐版 GameId_TienLenCustom_toend = 217 // tienlen房卡典版(打到底) GameId_TienLenCustom_yl_toend = 218 // tienlen房卡娱乐版(打到底) __GameId_Slot_Min__ = 300 //################拉霸类################ GameId_CaiShen = 301 // 财神 GameId_Avengers = 302 // 复仇者联盟 GameId_EasterIsland = 303 // 复活岛 GameId_IceAge = 304 // 冰河世纪 GameId_TamQuoc = 305 // 百战成神 GameId_Fruits = 306 // 水果拉霸 GameId_Richblessed = 307 // 多福 GameId_FortuneTiger = 308 // FortuneTiger GameId_FortuneDragon = 309 // FortuneDragon GameId_FortuneRabbit = 310 // FortuneRabbit GameId_FortuneOx = 311 // FortuneOx GameId_FortuneMouse = 312 // FortuneMouse __GameId_Fishing_Min__ = 400 //################捕鱼类################ GameId_HFishing = 401 //欢乐捕鱼 GameId_TFishing = 402 //天天捕鱼 __GameId_Casual_Min__ = 500 //################休闲类################ __GameId_MiniGame_Min__ = 600 //################小游类################ GameId_Candy = 601 //糖果小游戏 GameId_MiniPoker = 602 //MiniPoker GameId_BOOM = 603 //卡丁车 GameId_LuckyDice = 604 //幸运筛子 GameId_CaoThap = 605 //CaoThap GameId_AngerUncle = 606 // 愤怒大叔 GameId_SmallRoket = 607 // 小火箭 GameId_Clawdoll = 608 // 娃娃机 __GameId_ThrGame_Min__ = 700 //################三方类################ GameId_Thr_Dg = 701 //DG Game GameId_Thr_XHJ = 901 ///DG Game ) const ( GameDifTienlen = "207" // tienlen GameDifThirteen = "211" // 十三张 GameDifChess = "521" // 象棋 GameDifFish = "401" // 捕鱼 GameDifRocket = "607" // 小火箭 GameDifCaiShen = "301" // 财神 GameDifAvengers = "302" // 复仇者联盟 GameDifEaster = "303" // 复活节岛 GameDifIceAge = "304" // 冰河世纪 GameDifTamQuoc = "305" // 百战成神 GameDifFruits = "306" // 水果机 GameDifRichblessed = "307" // 多彩多福 GameDifClawdoll = "608" // 娃娃机 ) // IsTienLenYuLe TienLen娱乐 func IsTienLenYuLe(gameId int) bool { switch gameId { case GameId_TienLen_yl, GameId_TienLen_yl_toend, GameId_TienLenSelect_yl, GameId_TienLenRank_yl, GameId_TienLenSelect_yl_toend, GameId_TienLenRank_yl_toend, GameId_TienLenCustom_yl, GameId_TienLenCustom_yl_toend: return true } return false } // IsTienLenToEnd TienLen打到底 func IsTienLenToEnd(gameId int) bool { switch gameId { case GameId_TienLen_toend, GameId_TienLen_yl_toend, GameId_TienLen_m_toend, GameId_TienLenSelect_toend, GameId_TienLenSelect_yl_toend, GameId_TienLenRank_toend, GameId_TienLenRank_yl_toend, GameId_TienLenCustom_toend, GameId_TienLenCustom_yl_toend: return true } return false } // IsLocalGame 自动分场模式的游戏 // 根据 DB_Createroom.xlsx 给玩家分场或创建房间 func IsLocalGame(gameId int) bool { switch gameId { case GameId_TienLen, GameId_TienLen_yl, GameId_TienLen_toend, GameId_TienLen_yl_toend, GameId_TaLa, GameId_SamLoc, GameID_ThirteenFree, GameID_ThirteenFreeLaiZi: return true } return false } func IsDaZhong(gameId int) bool { switch gameId { case GameId_TienLenSelect, GameId_TienLenSelect_yl, GameId_TienLenSelect_toend, GameId_TienLenSelect_yl_toend: return true } return false } // 房间编号区间 const ( PrivateSceneStartId = 100000 PrivateSceneMaxId = 999999 MatchSceneStartId = 100000000 MatchSceneMaxId = 199999999 HundredSceneStartId = 200000000 HundredSceneMaxId = 299999999 CoinSceneStartId = 1000000000 CoinSceneMaxId = 1999999999 DgSceneId = 99 ) // 房间模式 const ( SceneModePublic = 0 // 公共房间 SceneModePrivate = 2 // 私人房间 SceneModeMatch = 3 // 赛事房间 SceneModeThr = 4 // 三方房间 SceneModePrivateMatch = 5 // 竞技馆房间 ) const ( Platform_Rob = "__$G_P$__" Platform_Sys = "0" Channel_Rob = "$${ROBOT}$$" PMCmd_SplitToken = "-" PMCmd_AddCoin = "addcoin" PMCmd_Privilege = "setprivilege" DeviceOS_Android = "android" DeviceOS_IOS = "ios" ) const ( GainWay_NewPlayer int32 = 0 //新建角色 GainWay_Pay = 1 //后台增加(主要是充值) GainWay_ByPMCmd = 2 //pm命令 GainWay_MatchBreakBack = 3 //退赛退还 GainWay_MatchSystemSupply = 4 //比赛奖励 GainWay_Exchange = 5 //兑换 GainWay_ServiceFee = 6 //桌费 GainWay_CoinSceneWin = 7 //金豆场赢取 GainWay_CoinSceneLost = 8 //金豆场输 GainWay_CoinSceneEnter = 9 //进入金币场预扣 GainWay_ShopBuy = 10 //商城购买或者兑换 GainWay_CoinSceneLeave = 11 //金豆场回兑 GainWay_HundredSceneWin = 12 //万人场赢取 GainWay_HundredSceneLost = 13 //万人场输 GainWay_MessageAttach = 14 //邮件 GainWay_SafeBoxSave = 15 //保险箱存入 GainWay_SafeBoxTakeOut = 16 //保险箱取出 GainWay_Fishing = 17 //捕鱼 GainWay_CoinSceneExchange = 18 //金豆场兑换 GainWay_UpgradeAccount = 19 //升级账号 GainWay_API_AddCoin = 20 //API操作钱包 GainWay_GoldCome = 21 //财神降临 GainWay_Transfer_System2Thrid = 22 //系统平台转入到第三方平台的金币 GainWay_Transfer_Thrid2System = 23 //第三方平台转入到系统平台的金币 GainWay_RebateTask = 24 //返利获取 GainWay_IOSINSTALLSTABLE = 25 //ios安装奖励 GainWay_VirtualChange = 26 //德州虚拟账变 GainWay_CreatePrivateScene = 27 //创建私有房间 GainWay_PrivateSceneReturn = 28 //解散私有房间返还 GainWay_OnlineRandCoin = 29 //红包雨 GainWay_Expire = 30 //到期清理 GainWay_PromoterBind = 31 //手动绑定推广员 GainWay_GradeShopReturn = 32 //积分商城撤单退还积分 GainWay_Api_In = 33 //转移金币 GainWay_Api_Out = 34 //转移金币 GainWay_Shop_Buy = 35 //购买记录 GainWay_MAIL_MTEM = 36 //邮件领取道具 GainWay_Item_Sale = 37 //道具出售 GainWay_ReliefFund = 38 //领取救济金 GainWay_Shop_Revoke = 39 //撤单 GainWay_ActSign = 40 // GainWay_MatchSignup = 41 //比赛报名费用 GainWay_MatchSeason = 42 //比赛赛季奖励 GainWay_ActSignNew = 43 //新签到 GainWay_ActTurnplate = 44 //轮盘 GainWay_ActBlindBox = 45 //盲盒 GainWay_ActFirstPay = 46 //首充 GainWay_VIPGift = 47 //vip礼包 GainWay_ActContinuousPay = 48 //连续充值 GainWay_ActJybAward = 49 //礼包码兑换 GainWay_LeaveDeduct = 50 //离开扣分 GainWay_LeaveCombat = 51 //离开补偿 GainWay_RankMatch = 52 //排位赛段位奖励 GainWay_AddBag = 53 //增加背包接口调用 GainWay_SmallRocket = 54 //小火箭收入 GainWay_BindTel = 55 //绑定手机号 GainWay_ReliefFund2 = 56 //救济金看视频双倍领取 GainWay_ActTurnplate2 = 57 //轮盘看视频双倍领取 GainWay_ActSignNew2 = 58 //签到看视频双倍领取 GainWay_ItemUse = 59 //道具使用 GainWay_PhoneScore = 60 //手机积分活动 GainWay_RankReward = 61 //排位奖励 GainWay_TaskReward = 62 //任务奖励 GainWay_Interact = 63 //房间内互动效果 GainWayItemCollectExchange = 64 //集卡活动兑换 GainWay_WeekCardAward = 65 //周卡奖励 GainWay_PigrankTakeCoin = 66 //存钱罐领取耗费钻石 GainWay_PigrankGainCoin = 67 //存钱罐打开获取金币 GainWay_ItemMove = 68 //道具赠送 GainWay_RoleUpgrade = 69 //角色升级 GainWay_PetUpgrade = 70 //宠物升级 GainWay_Game = 71 //游戏掉落 GainWayItemCollectLogin = 73 //集卡活动登录 GainWay_Collect = 74 //集卡活动 GainWayItemPhoneScoreExchange = 75 //抽手机活动兑换 GainWayItemTaskInvite = 78 //邀请任务 GainWayItemTaskNewPlayer = 79 //新手任务 GainWayItemTaskAchievement = 80 //成就任务 GainWayItemTaskEveryDay = 81 //每日任务 GainWayItemWeekActive = 82 //周活跃奖励 GainWayContinueSign = 83 //累计签到 GainWayBackend = 84 // 后台操作 GainWayBuyCoin = 85 // 商城购买金币 GainWayBuyItem = 86 // 商城购买道具 GainWayBuyWeekCard = 87 // 商城购买周卡 GainWayVipBuyCoin = 88 // vip商城购买金币 GainWaySign7Con = 89 // 累计签到进阶奖励消耗 GainWay_PigrankGainDiamond = 90 //存钱罐打开获取钻石 GainWaySign7Add = 91 // 累计签到进阶奖励获得 GainWayItemChange = 92 //背包内使用道具兑换话费 GainWayPetSkillLevelUp = 93 //宠物技能升级 GainWayPermitAward = 94 // 赛季通行证等级奖励 GainWayItemPermitRank = 95 // 赛季通行证排行奖励 GainWayPermitExchangeCost = 96 // 赛季通行证兑换消耗 GainWayPermitExchangeGain = 97 // 赛季通行证兑换获得 GainWayItemTaskPermit = 98 // 赛季通行证任务 GainWayDiamondLottery = 99 //钻石抽奖 GainWaySkinUnLock = 100 // 皮肤解锁消耗 GainWaySkinUpGrade = 101 // 皮肤升级消耗 GainWayItemFen = 102 // 道具分解消耗 GainWayItemFenGain = 103 // 道具分解获得 GainWayGuide = 104 //新手引导奖励 GainWayVipGift9 = 105 //vip等级礼包 GainWayRoomCost = 106 //房费消耗 GainWayRoomGain = 107 //房卡场获得 GainWayItemShop = 108 // 交易市场道具交易 GainWayClawdollCostItem = 109 // 娃娃机上分扣道具 GainWayItemShopChangeDoll = 110 // 商城兑换娃娃 GainWayItemBagChangeDoll = 111 // 背包内兑换娃娃 GainWayClawdollCatch = 112 // 娃娃机抓取到娃娃获取卡 GainWayItemBagChangeDollRevocation = 113 //娃娃兑换后台撤销 GainWayPermitReset = 114 //赛季通行证积分重置 ) // 后台选择 金币变化类型 的充值 类型id号起始 //const GainWaySort_Api = 1000 // 自定义局数起始索引 //const CUSTOM_PER_GAME_INDEX_BEG int32 = 10 const ( ClientRole_Agentor int = iota ClientRole_Player ClientRole_GM ClientRole_Max ) const ( CoinSceneOp_Enter int32 = iota //进入 CoinSceneOp_Leave //离开 CoinSceneOp_Change //换桌 CoinSceneOp_AudienceEnter //观众进入 CoinSceneOp_AudienceLeave //观众离开 CoinSceneOp_AudienceChange //观众换桌 CoinSceneOP_Server ) // 玩家离开原因 const ( PlayerLeaveReason_Normal int = iota //主动离开 PlayerLeaveReason_Bekickout //钱不够被踢出 PlayerLeaveReason_OnDestroy //房间销毁强制退出 PlayerLeaveReason_CoinScene //玩家暂离金豆自由场 PlayerLeaveReason_ChangeCoinScene //玩家换桌 PlayerLeaveReason_OnBilled //结算完毕 PlayerLeaveReason_DropLine //掉线离开 PlayerLeaveReason_LongTimeNoOp //长时间未操作 PlayerLeaveReason_GameTimes //超过游戏次数强制离开 PlayerLeaveReason_RoomFull //房间人数已达上限 PlayerLeaveReason_RoomClose //房间已解散 PlayerLeaveReason_RoomMaxCoin //超出房间限制金币范围 PlayerLeaveReason_AutoState //托管状态踢出房间 ) const ( RobotServerType int = 9 RobotServerId = 901 DataServerType int = 10 DataServerId = 1001 AIServerType = 11 AIServerId = 1101 ActThrServerType int = 12 ActThrServerID = 1201 ) // 踢号原因 const ( KickReason_Unknow int32 = iota KickReason_OtherLogin //顶号 KickReason_Freeze //冻结 KickReason_ResLow = 5 //资源 KickReason_AppLow = 6 //App版本 KickReason_CheckCodeErr = 7 //校验错误 KickReason_TaskErr = 8 //任务错误 KickReason_CantFindAcc = 9 //查找sid acc错误 KickReason_DBLoadAcc = 10 //数据库登录错误 KickReason_Logining //登陆中 KickReason_Disconnection = 99 //网络断开 ) // 游戏类型 const ( GameType_Unknow int32 = iota GameType_Hundred // 百人类 GameType_PVP // 对战类 GameType_Slot // 拉霸类 GameType_Fishing // 捕鱼类 GameType_Casual // 休闲类 GameType_Mini // 小游戏类 GameType_Thr // 三方类 ) func IsHundredType(gt int32) bool { return gt == GameType_Hundred || gt == GameType_Slot || gt == GameType_Casual } func IsCoinSceneType(gt int32) bool { return gt == GameType_PVP || gt == GameType_Fishing } const PreCreateSceneAudienceNum = 20 const ( HorseRaceLampPriority_Coin int = iota //根据玩家输赢金额大小设置优先级(在最大最小限额的基础上) HorseRaceLampPriority_Rand //随机(在最大最小限额的基础上) ) // 设备 const ( Web = 0 Android = 1 IOS = 2 WebStr = "h5" AndroidStr = "android" IOSStr = "ios" ) var DeviceName = map[int]string{ Web: WebStr, Android: AndroidStr, IOS: IOSStr, } var DeviceNum = map[string]int{ WebStr: Web, AndroidStr: Android, IOSStr: IOS, } const ( MatchTrueMan_Forbid int32 = -1 //禁止匹配真人 MatchTrueMan_Unlimited = 0 //不限制 MatchTrueMan_Priority = 1 //优先匹配真人 ) // 自动化标签(程序里产生的全部<0) const ( AutomaticTag_QZNN_Smart int32 = -1 ) const ( SceneParamEx_DbGameFreeId = 0 SceneParamEx_CanStartNum = 1 //游戏开始的要求人数 ) // 比赛参数 const ( PlayerIParam_MatchRank int = iota PlayerIParam_IsQuit PlayerIParam_MatchWeaken PlayerIParam_TotalOfGames ) const ( PARAMEX_GAMEFREEID int = iota //游戏id PARAMEX_MATCH_COPYID //比赛副本id PARAMEX_MATCH_ID //比赛id PARAMEX_MATCH_PHASEIDX //赛程阶段idx PARAMEX_MATCH_MMTYPE //赛制 PARAMEX_MATCH_BASESCORE //底分 PARAMEX_MATCH_NUMOFGAME //局数 PARAMEX_MATCH_OUTSCORE //出局分数 PARAMEX_MATCH_RESTPLAYERNUM //剩余人数 PARAMEX_MATCH_STARTNUM //本轮开始人数 //PARAMEX_MATCH_RANK //我的排名,构建房间消息时,额外补充,每个玩家不同 ) const ( MaxLoopNum = 1000 DefaultResult = 0 ) const ( CodeTypeSMS = 0 // 短信验证码 CodeTypeStr = 1 // 字符串验证码 CodeTypeHuaKuai = 2 // 滑块验证码 CodeTypeNo = 3 // 不使用验证码 ) // 匹配模式 const ( MatchMode_Normal int32 = iota //普通匹配 MatchMode_Quene //队列匹配 ) const ( SCENE_BIGWINHISTORY_MAXNUMBER = 40 // 爆奖记录最大数量 SCENE_BIGWINHISTORY_LIMITNUMBER = 10 // 假数据生成临界值 SCENE_BIGWINHISTORY_TIMEINTERVAL = 2 // 假数据生成定点时间间隔,单位:小时(实际时间 = 定点时间 + 随机时间) ) const ( OrderColumnInvalid = 0 // 默认 OrderColumnCoinPayTotal = 1 // 充值 OrderColumnCoinExchangeTotal = 2 // 提现 OrderColumnTaxTotal = 3 // 税收 OrderColumnRegisterTime = 4 // 注册时间 OrderColumnRoomNumber = 5 // 游戏房间号 OrderColumnLose = 6 // 输次数 OrderColumnWin = 7 // 赢次数 OrderColumnDraw = 8 // 平次数 OrderColumnWinCoin = 9 // 赢分 OrderColumnLoseCoin = 10 // 输分 ) const ( LoginTypeGuest = 0 // 游客登录 LoginTypeAccount = 1 // 账号登录 LoginTypeTelCode = 2 // 手机号验证码登录 LoginTypeTelegram = 5 // telegram登录 LoginTypeGoogle = 6 // google,facebook 登录 RegisterTypeTel = 3 // 手机号注册 RegisterTypeName = 4 // 账号注册 ) const ( // 账号判断状态码 LoginTypeNoExist = -1 LoginError = 0 LoginOk = 1 LoginNew = 2 LoginPasswordError = 3 LoginFreeze = 4 LoginTelExist = 8 LoginTelCodeExpire = 9 // 手机号验证码登录过期 RegisterNotExist = 6 RegisterExist = 7 // 创建账号状态码 InsertAccountOk = 9 ) const TelLoginValidDays = 7 // 手机号登录有效期,天 const ( LoginLogTypeLogin int32 = iota // 登录 LoginLogTypeLogout // 登出 LoginLogTypeRehold // 重连 LoginLogTypeDrop // 掉线 ) // 道具ID const ( ItemIDCoin = 100001 // 金币对应的itemId ItemIDDiamond = 100002 // 钻石对应的itemId ItemIDMoneyPond = 100003 // 玩家金币池对应物品Id ItemIDVipExp = 100005 // VIP经验对应的物品Id ItemIDPhoneScore = 100006 // 手机抽奖积分 ItemIDWeekScore = 100004 // 周活跃积分 ItemIDGiftBox = 50001 // 碎片礼盒 ItemIDCollectBox = 50002 // 集卡礼盒 ItemIDLike = 100007 // 点赞 ItemIDCoffee = 100008 // 咖啡 ItemIDBucket = 100009 // 水桶 ItemIDSlippers = 100010 // 拖鞋 ItemIDPermit = 100011 // 赛季通行证积分 ItemIDLong = 50013 // 龙币 ItemIDPetSkill = 11001 //宠物技能升级道具 ItemIDVCard = 30001 // v卡 ItemIDJCard = 30002 // 金券 ItemDiamondScore = 100012 //钻石积分 ItemIDClawdoll = 40003 // 娃娃卡 ItemDollCard = 40004 // 娃娃卡积分 ) func ToItemId(id int32) int32 { switch id { case 1: return ItemIDCoin case 2: return ItemIDDiamond } return id } // 道具类型 const ( ItemTypePetFragments = 1 //宠物碎片 ItemTypeCharacterFragments = 2 //角色碎片 ItemTypeChangeCard = 3 //兑换卡 ItemTypeOther = 4 //其他 ItemTypeCoin = 5 //金币 ItemTypeDiamond = 6 //钻石 ItemTypeFishPower = 7 //捕鱼炮台 ItemTypeMoneyPond = 8 //玩家金币池 ItemTypePhoneCode = 9 //话费兑换卡 ItemTypeVipExp = 10 //VIP经验 ItemTypeShopScore = 11 //积分 ItemTypeInteract = 12 // 互动表情 ItemTypeExpireTime = 15 // 时效类道具 ItemTypeObjective = 16 // 目标类道具 ItemTypeChange = 17 // 兑换话费 ItemTypeSkinChip = 22 // 皮肤碎片 ItemTypeDoll = 26 //娃娃兑换 ) func GetKeyNoviceGameId(gameId int) string { return fmt.Sprintf("novice-%v", gameId) } func GetKeyGameType(gameType int) string { return fmt.Sprintf("gametype-%v", gameType) } // 账变类型 const ( BillTypeCoin = 0 // 金币 BillTypeDiamond = 1 // 钻石 ) // 验证码类型 const ( SMSCodeTelBind = 1 // 绑定手机号验证码 SMSCodeTelLogin = 2 // 手机号登录验证码 ) // 账号类型 const ( AccountTypeGoogle = 1 // 谷歌 AccountTypeFacebook = 2 // facebook AccountTypeTel = 3 // 手机号 ) func GetTelLoginCodeKey(platform, tel string) string { return fmt.Sprintf("%v.%v.%v", SMSCodeTelLogin, platform, tel) } func GetBindTelCodeKey(platform, tel string) string { return fmt.Sprintf("%v.%v.%v", SMSCodeTelBind, platform, tel) } func GetImageCodeKey(key string) string { return fmt.Sprintf("%v.%v", "Image", key) } const ( SMSCodeValidTime = 60 // 访问频率限制 SMSCodeValidTimeTelBind = 60 // 绑定手机号验证码有效期,单位秒 SMSCodeValidTimeTelLogin = 600 // 手机号登录验证码有效期,单位秒 ) // 活动,任务类型 const ( TaskTypeAdv = 1 // 看广告次数 TaskTypeBuyCoin = 2 // 买金币次数 TaskTypeLogin = 3 // 登录次数 TaskTypeWinTimes = 4 // 赢游戏次数 TaskTypePlayTimes = 5 // 玩游戏次数 TaskTypeRankMatchTimes = 6 // 排位赛次数 TaskTypePay = 7 // 充值金额 TaskTypeWinOrLose = 8 // 游戏输赢金币数量 TaskTypeTienlenCount = 9 // tienlen游戏场次 TaskTypeBindInviter = 10 // 绑定邀请人数量* TaskTypeWinCoin = 11 // 赢取金币数量 TaskTypeTienlenWinTimes = 12 // tienlen游戏赢取次数 TaskTypeInviteScore = 13 // 邀请积分* TaskTypeActivityScore = 14 // 周活跃积分数量 TaskTypeFirstLogin = 15 // 每日首次登录 TaskTypeInviteNum = 16 // 邀请绑定数量* TaskTypeTurnplate = 17 // 转盘抽奖次数 TaskTypeInviteRecharge = 18 // 被邀请人充值金额* TaskTypeLoseCoin = 19 // 输的金币数量 TaskType20 = 20 // 未使用 TaskTypeOnlineTs = 21 // 在线时长,秒 TaskTypeBuyPig = 22 // 购买任意存钱罐 TaskTypeDaZhong = 23 // 大众场胜利 TaskTypeInvitePlay = 24 // 邀请好友私人桌对局 TaskTypeJoinMatch = 25 // 参与比赛场 TaskTypeMatchRank10 = 26 // 比赛场前10名 TaskTypeCostDiamond = 27 // 消耗钻石数量 TaskTypeTienlenLoseCoin = 28 // Tienlen输的金币数量 TaskTypeTienlenWinCoin = 29 // Tienlen赢取金币数量 TaskTypeRankMatchWinTimes = 30 // 排位胜利次数 TaskTypeBuyPermit = 31 // 购买典藏通行证 ) const ( TaskGameTypeTienlen = 1 // tienlen TaskGameTypeThirteen = 2 // 十三张 TaskGameTypeChess = 3 // 象棋 TaskGameTypeSmallRocket = 4 // 小火箭 ) const ( TaskActivityTypeEveryDay = 1 // 每日任务 TaskActivityTypeWeek = 2 // 每周任务 TaskActivityTypeNovice = 3 // 新手任务 TaskActivityTypeInvite = 4 // 邀请任务 TaskActivityTypeAchieve = 5 // 成就任务 TaskActivityTypePermitEveryDay = 6 // 赛季通行证每日任务 TaskActivityTypePermit = 7 // 赛季通行证任务 ) const HeadRange = 3 // 机器人头像id范围 const ( InviteScoreCheckWeek = -1 // 跨周 InviteScoreTypeBind = 1 // 绑定邀请码 InviteScoreTypePay = 2 // 充值 InviteScoreTypeRecharge = 3 // 充值完成 InviteScoreTypePayMe = 4 // 充值(给自己) InviteScoreTypeBindTel = 5 // 绑定手机号 ) func InMatchChannel(ls []string, n string) bool { if n == "" || len(ls) == 0 { return false } if n == Channel_Rob { return true } if InSliceString(ls, n) { return true } if InSliceString(ls, "Official") && strings.ToLower(n) == "main" { // 兼容 return true } return false } // 渠道名称 const ( ChannelDefault = ChannelOfficial ChannelGooglePlay = "GooglePlay" ChannelWeb = "Web" ChannelOfficial = "Official" ) // 角色id const ( DefaultRoleId = RoleIDGirl // 默认角色 RoleIDGirl = 2000001 RoleIDBoy = 2000002 RoleIDMagic = 2000003 ) var RolesIDs = []int32{RoleIDGirl, RoleIDBoy, RoleIDMagic} // 角色加成类型 const ( RoleAddADV = 1 // 看视频加成 RoleAddCoin = 2 // 商城购买金币加成 RoleAddRankScore = 3 // 排位积分加成 ) // 宠物id const ( DefaultPetId = PetIDChicken // 默认宠物 PetIDChicken = 3000001 ) var PetIDs = []int32{PetIDChicken} const ( ChannelSwitchExchange = 1 // 兑换商城开关 ChannelSwitchDropItem = 2 // v卡掉落开关 ChannelSwitchInvite = 3 // 邀请开关 ChannelSwitchPermit = 4 // 典藏通行证开关 ChannelSwitchDiamondLottery = 5 // 钻石抽奖开关 ) // 特殊商品id const ( ShopIdWeekCard = 970001 // 周卡 ShopIdPermit = 990001 // 典藏通行证 ) const PermitStartTsKey = "permit_start_ts" const PermitAdd = 0.2 // 典藏通行证赛季积分多加,百分比 const ( SkinGetAuto = 1 SkinGetItem = 2 SkinGetVip = 3 ) const ( SkillIdRankScore = 30002 // 排位积分加成百分比 SkillIdVipTimes = 30003 // VIP赛每日免费报名次数 SkillIdVipGift = 30004 // VIP每日礼包金币奖励提升百分比 SkillIdTask = 30005 // 每日任务金币奖励提升百分比 SkillIdDiamondLottery = 30007 // 每次钻石抽奖幸运值提升百分比 ) var ( SkinRandom = []int32{300001, 300002, 300007, 300006, 300005, 300004, 300003} SkinWeightMap = map[int32]int{ 300001: 20, 300002: 40, 300007: 40, 300006: 50, 300005: 40, 300004: 60, 300003: 70, } ) const ( AttributeGuideStep = 1 // 引导步骤 AttributeGuideSkip = 2 // 跳过引导 AttributeGuideTest = 3 // 测试引导 AttributeGuideCustom = 4 // 竞技馆引导页 ) const ( On = 1 // 开启 Off = 2 // 关闭 ) const ( DataConfigAll = 0 // 全部配置 DataConfigSprite = 1 // 精灵配置 DataConfigMatchAudience = 2 // 赛事观战开关 ) // 房间状态 const ( SceneStateWaite = 0 // 等待 SceneStateStart = 1 // 开始 SceneStateEnd = 2 // 结束 ) const ( // PlayerHistoryModel . PlayerHistoryModel = iota + 1 // BIGWIN_HISTORY_MODEL . BIGWIN_HISTORY_MODEL // GameHistoryModel . GameHistoryModel ) type ListOpType int // 列表操作类型 const ( ListModify ListOpType = 1 // 修改 ListAdd ListOpType = 2 // 增加 ListDel ListOpType = 3 // 减少 ListFind ListOpType = 4 // 查询 ) type NotifyType int // 通知类型 const ( NotifyPrivateRoomList NotifyType = 1 // 私人房间列表 ) // SCPlayerCoinChange 中数值类型 const ( PlayerChangeTypeCoin = 0 // 金币 PlayerChangeTypeNum = 1 // 积分 ) // 玩家状态标记 const ( PlayerFlagsGuideCustom = 1 << iota // 竞技馆引导页关闭状态 )