Merge branch 'dev' of http://git.legu.cc/liwei_3d/go_dreamfactory into dev
This commit is contained in:
commit
189433915a
@ -1419,27 +1419,5 @@
|
||||
"filter": [
|
||||
"eq"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 245,
|
||||
"insert": 2,
|
||||
"filter": [
|
||||
"eq",
|
||||
"eq"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 246,
|
||||
"insert": 1,
|
||||
"filter": [
|
||||
"eq"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 247,
|
||||
"insert": 2,
|
||||
"filter": [
|
||||
"eq"
|
||||
]
|
||||
}
|
||||
]
|
@ -9536,6 +9536,83 @@
|
||||
"star_value": [],
|
||||
"challengeward": 0
|
||||
},
|
||||
{
|
||||
"id": 1101096,
|
||||
"chapterid": 11001,
|
||||
"group_id": 100133,
|
||||
"previous_group_id": [],
|
||||
"previoustage": 0,
|
||||
"buried_type": 0,
|
||||
"buried": 0,
|
||||
"grouptype": [],
|
||||
"Episodetype": 9,
|
||||
"stage_param": 0,
|
||||
"inherit": 0,
|
||||
"battle_fail": 0,
|
||||
"venturemodelspeed": 0,
|
||||
"venturemodelscale": 0,
|
||||
"move_type": 0,
|
||||
"venturemodel": "",
|
||||
"bubbletalk": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"venturetype": 0,
|
||||
"ventureavatar": [],
|
||||
"scene_effect": [],
|
||||
"scene_effectfilter": "",
|
||||
"is_near": 0,
|
||||
"openlevel": 1,
|
||||
"EditorStage": 0,
|
||||
"herocolor": 2,
|
||||
"heroimg": "zxgq_qp_icon_zd",
|
||||
"bubbletext": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"animation": [],
|
||||
"prewarbubbletext": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"hide": 0,
|
||||
"destroy": 0,
|
||||
"progress": 0,
|
||||
"stroyshow": 0,
|
||||
"frontstoryid": 0,
|
||||
"afterstoryid": 0,
|
||||
"maingroupName": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"mainlineName": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"title": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"desc": {
|
||||
"key": "",
|
||||
"text": ""
|
||||
},
|
||||
"exp": 0,
|
||||
"hero_exp": 0,
|
||||
"ps_consume": [],
|
||||
"ps_mg": [],
|
||||
"firstaward": [],
|
||||
"lotteryward": 0,
|
||||
"commonaward": [],
|
||||
"BattleReadyID": 0,
|
||||
"FormatList": [],
|
||||
"helphero": [],
|
||||
"banhero": [],
|
||||
"star": [],
|
||||
"star_type": [],
|
||||
"star_value": [],
|
||||
"challengeward": 0
|
||||
},
|
||||
{
|
||||
"id": 1102000,
|
||||
"chapterid": 11002,
|
||||
|
@ -9,7 +9,11 @@
|
||||
"text": "这好像不是熊猫?"
|
||||
},
|
||||
"time": 90,
|
||||
<<<<<<< HEAD
|
||||
"speed": 7443
|
||||
=======
|
||||
"speed": 12722
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "2",
|
||||
@ -20,8 +24,13 @@
|
||||
"key": "playerinfor_barrage_2",
|
||||
"text": "看起来像个画家。"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 227,
|
||||
"speed": 8235
|
||||
=======
|
||||
"time": 190,
|
||||
"speed": 12237
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "3",
|
||||
@ -32,8 +41,13 @@
|
||||
"key": "playerinfor_barrage_3",
|
||||
"text": "为什么会觉得是熊猫啊?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 329,
|
||||
"speed": 12333
|
||||
=======
|
||||
"time": 292,
|
||||
"speed": 10498
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "4",
|
||||
@ -44,8 +58,13 @@
|
||||
"key": "playerinfor_barrage_4",
|
||||
"text": "从石头里蹦出来的人?怎么感觉有点熟悉……"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 512,
|
||||
"speed": 10906
|
||||
=======
|
||||
"time": 529,
|
||||
"speed": 12429
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "5",
|
||||
@ -56,8 +75,13 @@
|
||||
"key": "playerinfor_barrage_5",
|
||||
"text": "你可能是听说过从石头里蹦出来的猴子。"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 649,
|
||||
"speed": 8359
|
||||
=======
|
||||
"time": 688,
|
||||
"speed": 10088
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "6",
|
||||
@ -68,8 +92,13 @@
|
||||
"key": "playerinfor_barrage_6",
|
||||
"text": "你是从石头里蹦出来的?!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 833,
|
||||
"speed": 12133
|
||||
=======
|
||||
"time": 909,
|
||||
"speed": 12947
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "7",
|
||||
@ -80,8 +109,13 @@
|
||||
"key": "playerinfor_barrage_7",
|
||||
"text": "不!那不是我!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 996,
|
||||
"speed": 10803
|
||||
=======
|
||||
"time": 1059,
|
||||
"speed": 12696
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "8",
|
||||
@ -92,8 +126,13 @@
|
||||
"key": "playerinfor_barrage_8",
|
||||
"text": "哦,传承之人……"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1217,
|
||||
"speed": 10424
|
||||
=======
|
||||
"time": 1225,
|
||||
"speed": 9592
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "9",
|
||||
@ -104,8 +143,13 @@
|
||||
"key": "playerinfor_barrage_9",
|
||||
"text": "月光能量都汇集在他身上了!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1445,
|
||||
"speed": 7151
|
||||
=======
|
||||
"time": 1385,
|
||||
"speed": 11311
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "10",
|
||||
@ -116,8 +160,13 @@
|
||||
"key": "playerinfor_barrage_10",
|
||||
"text": "那应该不会爆炸吧?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1575,
|
||||
"speed": 12447
|
||||
=======
|
||||
"time": 1606,
|
||||
"speed": 10931
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "11",
|
||||
@ -128,8 +177,13 @@
|
||||
"key": "playerinfor_barrage_11",
|
||||
"text": "阿宝,你为什么站那么远?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1714,
|
||||
"speed": 7131
|
||||
=======
|
||||
"time": 1802,
|
||||
"speed": 12145
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "312",
|
||||
@ -141,7 +195,11 @@
|
||||
"text": "哦!那是什么?"
|
||||
},
|
||||
"time": 90,
|
||||
<<<<<<< HEAD
|
||||
"speed": 11318
|
||||
=======
|
||||
"speed": 7982
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "313",
|
||||
@ -152,8 +210,13 @@
|
||||
"key": "playerinfor_barrage_313",
|
||||
"text": "我有种被她注视的感觉……"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 209,
|
||||
"speed": 11012
|
||||
=======
|
||||
"time": 266,
|
||||
"speed": 7864
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "314",
|
||||
@ -164,8 +227,13 @@
|
||||
"key": "playerinfor_barrage_314",
|
||||
"text": "好像是一种叫做“照相”的魔法……"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 309,
|
||||
"speed": 8982
|
||||
=======
|
||||
"time": 468,
|
||||
"speed": 9856
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "315",
|
||||
@ -176,8 +244,13 @@
|
||||
"key": "playerinfor_barrage_315",
|
||||
"text": "我看这魔法不是很疼。"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 432,
|
||||
"speed": 7914
|
||||
=======
|
||||
"time": 652,
|
||||
"speed": 11970
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "316",
|
||||
@ -188,8 +261,13 @@
|
||||
"key": "playerinfor_barrage_316",
|
||||
"text": "据说它的作用是封印灵魂?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 626,
|
||||
"speed": 11866
|
||||
=======
|
||||
"time": 816,
|
||||
"speed": 8057
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "317",
|
||||
@ -200,8 +278,13 @@
|
||||
"key": "playerinfor_barrage_317",
|
||||
"text": "月中人的传承居然这么可怕?!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 813,
|
||||
"speed": 12580
|
||||
=======
|
||||
"time": 928,
|
||||
"speed": 9966
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "318",
|
||||
@ -212,8 +295,13 @@
|
||||
"key": "playerinfor_barrage_318",
|
||||
"text": "哦!你们真是够了!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 973,
|
||||
"speed": 9024
|
||||
=======
|
||||
"time": 1028,
|
||||
"speed": 8227
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "319",
|
||||
@ -224,8 +312,13 @@
|
||||
"key": "playerinfor_barrage_319",
|
||||
"text": "照相不是魔法!也不能封印灵魂!"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1203,
|
||||
"speed": 11977
|
||||
=======
|
||||
"time": 1260,
|
||||
"speed": 11801
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "320",
|
||||
@ -236,8 +329,13 @@
|
||||
"key": "playerinfor_barrage_320",
|
||||
"text": "那她是在干什么?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1371,
|
||||
"speed": 9562
|
||||
=======
|
||||
"time": 1485,
|
||||
"speed": 11645
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "321",
|
||||
@ -248,8 +346,13 @@
|
||||
"key": "playerinfor_barrage_321",
|
||||
"text": "……别问。"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1554,
|
||||
"speed": 11969
|
||||
=======
|
||||
"time": 1587,
|
||||
"speed": 11333
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "322",
|
||||
@ -260,8 +363,13 @@
|
||||
"key": "playerinfor_barrage_322",
|
||||
"text": "那可以教我吗?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1666,
|
||||
"speed": 11148
|
||||
=======
|
||||
"time": 1746,
|
||||
"speed": 8330
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "323",
|
||||
@ -272,8 +380,13 @@
|
||||
"key": "playerinfor_barrage_323",
|
||||
"text": "我也想学。"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1792,
|
||||
"speed": 10475
|
||||
=======
|
||||
"time": 1970,
|
||||
"speed": 12972
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
},
|
||||
{
|
||||
"id": "324",
|
||||
@ -284,7 +397,12 @@
|
||||
"key": "playerinfor_barrage_324",
|
||||
"text": "要不你们问问这个传承者?"
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
"time": 1922,
|
||||
"speed": 11895
|
||||
=======
|
||||
"time": 2136,
|
||||
"speed": 12942
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
}
|
||||
]
|
@ -78,7 +78,11 @@
|
||||
107
|
||||
],
|
||||
"url": "",
|
||||
<<<<<<< HEAD
|
||||
"tips": 10001,
|
||||
=======
|
||||
"tips": 10000,
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
"resources": "Person/10000/10000M.prefab",
|
||||
"pvpAnimator": "Person/10000/10000_MPvp.controller",
|
||||
"mainq": "Person/10000/10000M_q.prefab",
|
||||
@ -101,7 +105,11 @@
|
||||
107
|
||||
],
|
||||
"url": "",
|
||||
<<<<<<< HEAD
|
||||
"tips": 10001,
|
||||
=======
|
||||
"tips": 10000,
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
"resources": "Person/10000/10000W.prefab",
|
||||
"pvpAnimator": "Person/10000/10000_WPvp.controller",
|
||||
"mainq": "Person/10000/10000W_q.prefab",
|
||||
@ -124,7 +132,11 @@
|
||||
107
|
||||
],
|
||||
"url": "",
|
||||
<<<<<<< HEAD
|
||||
"tips": 10002,
|
||||
=======
|
||||
"tips": 10000,
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
"resources": "Person/10000/10000M.prefab",
|
||||
"pvpAnimator": "Person/10000/10000_MPvp.controller",
|
||||
"mainq": "Person/10000/10000M_q.prefab",
|
||||
@ -147,7 +159,11 @@
|
||||
107
|
||||
],
|
||||
"url": "",
|
||||
<<<<<<< HEAD
|
||||
"tips": 10002,
|
||||
=======
|
||||
"tips": 10000,
|
||||
>>>>>>> 7e1c0cdb51b0b179779164cc6afa596bd529fc46
|
||||
"resources": "Person/10000/10000W.prefab",
|
||||
"pvpAnimator": "Person/10000/10000_WPvp.controller",
|
||||
"mainq": "Person/10000/10000W_q.prefab",
|
||||
|
@ -518,8 +518,8 @@ const ( //Rpc
|
||||
|
||||
Rpc_Activity core.Rpc_Key = "Rpc_Activity"
|
||||
|
||||
Rpc_ActivityOver core.Rpc_Key = "Rpc_ActivityOver" //活动结束
|
||||
Rpc_ActivityStar core.Rpc_Key = "Rpc_ActivityStar" //活动开启
|
||||
Rpc_ActivityOver core.Rpc_Key = "Rpc_ActivityOver" //活动结束
|
||||
Rpc_ActivityStart core.Rpc_Key = "Rpc_ActivityStart" //活动开启
|
||||
|
||||
RPC_XXLOffLine core.Rpc_Key = "RPC_XXLOffLine" //三消离线
|
||||
|
||||
@ -979,7 +979,9 @@ const (
|
||||
Rtype242 TaskType = 242 //辉月等级达到x级
|
||||
|
||||
Rtype243 TaskType = 243 //指定英雄满级且共鸣和觉醒升至最高状态
|
||||
|
||||
Rtype245 TaskType = 245 //招募到X品质X阵营的守护者X个
|
||||
Rtype246 TaskType = 246 //在一次十连内获得X个以上的Y品质的守护者 (紫色以上)
|
||||
Rtype247 TaskType = 247 //完成X品质的武馆派遣Y个
|
||||
)
|
||||
const (
|
||||
MailLineEasy int32 = 1 // 简单
|
||||
|
@ -586,10 +586,8 @@ type (
|
||||
}
|
||||
|
||||
IActivity interface {
|
||||
GetHdInfoByHdId(oid string) (result *pb.DBHuodong, err error) // 通过活动id 获取活动信息
|
||||
GetAllHdInfo() (hdList map[pb.HdType]*pb.DBHuodong) // 获取所有活动信息
|
||||
GetHdInfoByItype(itype pb.HdType) (result *pb.DBHuodong, err error) //
|
||||
|
||||
// 庆典活动
|
||||
HDCelebration(session IUserSession, systemtype int32, bosstype int32) bool
|
||||
}
|
||||
@ -636,6 +634,7 @@ type (
|
||||
}
|
||||
IUiGame interface {
|
||||
HDPSTodayConsum(uid string, ps int32) // 今日消耗的体力
|
||||
IActivityNotice
|
||||
}
|
||||
|
||||
IStonehenge interface {
|
||||
|
@ -14,7 +14,7 @@ func (this *apiComp) GetHdDataCheck(session comm.IUserSession, req *pb.ActivityG
|
||||
// 活动活动
|
||||
func (this *apiComp) GetHdData(session comm.IUserSession, req *pb.ActivityGetHdDataReq) (errdata *pb.ErrorData) {
|
||||
|
||||
result := this.module.GetHdData(session, req.Oid)
|
||||
result := this.module.GetHdData(session, req.Oid) // 不用
|
||||
session.SendMsg(string(this.module.GetType()), "gethddata", &pb.ActivityGetHdDataResp{
|
||||
Data: result,
|
||||
})
|
||||
|
@ -38,6 +38,7 @@ func (this *apiComp) GetReward(session comm.IUserSession, req *pb.ActivityGetRew
|
||||
}
|
||||
return
|
||||
}
|
||||
// 接口需要修改
|
||||
if activity, err = this.module.modelhdList.getHdListByHdId(req.Oid); err == nil {
|
||||
curTime := configure.Now().Unix()
|
||||
if activity.Stime > curTime || curTime > activity.Etime { //不在活动时间范围内
|
||||
|
@ -31,6 +31,7 @@ type Activity struct {
|
||||
shopcenter comm.IShopcenter // 活动中心
|
||||
addrecharge comm.IAddrecharge // 活动中心
|
||||
kftask comm.IActivityNotice // 开服任务
|
||||
uigame comm.IUiGame // ui小游戏
|
||||
}
|
||||
|
||||
func NewModule() core.IModule {
|
||||
@ -91,7 +92,10 @@ func (this *Activity) Start() (err error) {
|
||||
return
|
||||
}
|
||||
this.kftask = module.(comm.IActivityNotice)
|
||||
|
||||
if module, err = this.service.GetModule(comm.ModulePuzzle); err != nil {
|
||||
return
|
||||
}
|
||||
this.uigame = module.(comm.IUiGame)
|
||||
if !db.IsCross() {
|
||||
this.modelhdList.LoadActivityData()
|
||||
for k, v := range this.modelhdList.activity {
|
||||
@ -111,11 +115,14 @@ func (this *Activity) Start() (err error) {
|
||||
case pb.HdType_KFSevenTask:
|
||||
this.kftask.ActivityOpenNotice(v)
|
||||
break
|
||||
case pb.HdType_HdPuzzle, pb.HdType_HdLattice, pb.HdType_HdMiner:
|
||||
this.uigame.ActivityOpenNotice(v)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
this.service.RegisterFunctionName(string(comm.Rpc_ActivityOver), this.Rpc_ActivityOver)
|
||||
this.service.RegisterFunctionName(string(comm.Rpc_ActivityStar), this.Rpc_ActivityStar)
|
||||
this.service.RegisterFunctionName(string(comm.Rpc_ActivityStart), this.Rpc_ActivityStart)
|
||||
|
||||
return
|
||||
}
|
||||
@ -190,12 +197,6 @@ func (this *Activity) GetHdInfoByItype(itype pb.HdType) (result *pb.DBHuodong, e
|
||||
return
|
||||
}
|
||||
|
||||
// 通过活动ID查找
|
||||
func (this *Activity) GetHdInfoByHdId(oid string) (result *pb.DBHuodong, err error) {
|
||||
result, err = this.modelhdList.getHdListByHdId(oid)
|
||||
return
|
||||
}
|
||||
|
||||
// 统计庆典活动完成情况
|
||||
func (this *Activity) HDCelebration(session comm.IUserSession, systemtype int32, bosstype int32) bool {
|
||||
bDouble := false // 是否开启双倍奖励
|
||||
@ -289,6 +290,7 @@ func (this *Activity) HDCelebration(session comm.IUserSession, systemtype int32,
|
||||
return bDouble
|
||||
}
|
||||
|
||||
// 接口废弃
|
||||
func (this *Activity) GetHdData(session comm.IUserSession, oids []string) (result []*pb.DBActivityData) {
|
||||
var (
|
||||
activity *pb.DBHuodong
|
||||
@ -348,9 +350,9 @@ func (this *Activity) GetHdData(session comm.IUserSession, oids []string) (resul
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Activity) Rpc_Activity(ctx context.Context, args string, reply *pb.EmptyResp) (err error) {
|
||||
this.Debug("Rpc_ActivityOver",
|
||||
log.Field{Key: "args", Value: args},
|
||||
func (this *Activity) Rpc_Activity(ctx context.Context, req *pb.RPCGeneralReqA1, reply *pb.RPCGeneralReqA1) (err error) {
|
||||
this.Debug("Rpc_Activity",
|
||||
log.Field{Key: "args", Value: req.Param1},
|
||||
)
|
||||
this.modelhdList.LoadActivityData()
|
||||
return
|
||||
@ -361,12 +363,8 @@ func (this *Activity) Rpc_ActivityOver(ctx context.Context, args *pb.RPCGeneralR
|
||||
this.Debug("Rpc_ActivityOver",
|
||||
log.Field{Key: "args", Value: args.String()},
|
||||
)
|
||||
var (
|
||||
szOverActivity []string
|
||||
)
|
||||
szOverActivity = args.Param2
|
||||
|
||||
for _, v := range szOverActivity {
|
||||
for _, v := range args.Param2 {
|
||||
hd := &pb.DBHuodong{}
|
||||
if err := this.modelhdList.DB.FindOne(core.SqlTable(this.modelhdList.TableName), bson.M{"_id": v}).Decode(hd); err != nil {
|
||||
switch hd.Itype {
|
||||
@ -385,28 +383,27 @@ func (this *Activity) Rpc_ActivityOver(ctx context.Context, args *pb.RPCGeneralR
|
||||
case pb.HdType_KFSevenTask:
|
||||
this.kftask.ActivityCloseNotice(hd)
|
||||
break
|
||||
case pb.HdType_HdPuzzle, pb.HdType_HdLattice, pb.HdType_HdMiner:
|
||||
this.uigame.ActivityCloseNotice(hd)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.Debug("szOverActivity", log.Field{Key: "args", Value: szOverActivity})
|
||||
this.Debug("szOverActivity", log.Field{Key: "args", Value: args.Param2})
|
||||
return
|
||||
}
|
||||
|
||||
// 活动开启通知
|
||||
|
||||
func (this *Activity) Rpc_ActivityStar(ctx context.Context, args *pb.RPCGeneralReqB1, reply *pb.EmptyResp) (err error) {
|
||||
this.Debug("Rpc_ActivityStar",
|
||||
func (this *Activity) Rpc_ActivityStart(ctx context.Context, args *pb.RPCGeneralReqB1, reply *pb.EmptyResp) (err error) {
|
||||
this.Debug("Rpc_ActivityStart",
|
||||
log.Field{Key: "args", Value: args.String()},
|
||||
)
|
||||
var (
|
||||
szOverActivity []string
|
||||
)
|
||||
szOverActivity = args.Param2
|
||||
|
||||
for _, v := range szOverActivity {
|
||||
for _, v := range args.Param2 {
|
||||
hd := &pb.DBHuodong{}
|
||||
if err := this.modelhdList.DB.FindOne(core.SqlTable(this.modelhdList.TableName), bson.M{"_id": v}).Decode(hd); err != nil {
|
||||
if err := this.modelhdList.DB.FindOne(core.SqlTable(this.modelhdList.TableName), bson.M{"_id": v}).Decode(hd); err == nil {
|
||||
switch hd.Itype {
|
||||
case pb.HdType_HdTypeWarorder, pb.HdType_SupplyWarOrder, pb.HdType_MoondreamWarOrder:
|
||||
this.warorder.ActivityOpenNotice(hd)
|
||||
@ -423,10 +420,73 @@ func (this *Activity) Rpc_ActivityStar(ctx context.Context, args *pb.RPCGeneralR
|
||||
case pb.HdType_KFSevenTask:
|
||||
this.kftask.ActivityOpenNotice(hd)
|
||||
break
|
||||
case pb.HdType_HdPuzzle, pb.HdType_HdLattice, pb.HdType_HdMiner:
|
||||
this.uigame.ActivityOpenNotice(hd)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.Debug("szOverActivity", log.Field{Key: "args", Value: szOverActivity})
|
||||
this.Debug("szOverActivity", log.Field{Key: "args", Value: args.Param2})
|
||||
return
|
||||
}
|
||||
|
||||
// 通过活动类型获取活动信息
|
||||
func (this *Activity) GetHdDataByHdType(session comm.IUserSession, itype pb.HdType) (result []*pb.DBActivityData) {
|
||||
var (
|
||||
activity *pb.DBHuodong
|
||||
err error
|
||||
list *pb.DBActivityData
|
||||
)
|
||||
curTime := configure.Now().Unix()
|
||||
|
||||
if activity, err = this.GetHdInfoByItype(itype); err != nil {
|
||||
this.Errorln(err)
|
||||
return
|
||||
}
|
||||
if activity.Stime > curTime || curTime > activity.Etime { // 不在活动范围内数据不给活动记录数据
|
||||
return
|
||||
}
|
||||
id := activity.Id
|
||||
list, _ = this.modelhdData.getHddataByOid(session.GetUserId(), id)
|
||||
// 获取开服庆典活动
|
||||
if activity.Itype == pb.HdType_HdCelebration {
|
||||
if list, err = this.modelhdData.getHddataByOid(session.GetUserId(), id); err == nil {
|
||||
if list.Lasttime < configure.Now().Unix() || list.Val == 0 { // 不是今天重置
|
||||
list.Gotarr = make(map[int32]int32)
|
||||
update := make(map[string]interface{})
|
||||
|
||||
update["gotarr"] = list.Gotarr
|
||||
var maxday int32
|
||||
_days := this.configure.GetHDCelebrationData()
|
||||
for _, v := range _days { // 开启循环
|
||||
maxday += v
|
||||
}
|
||||
var pos int32
|
||||
_sub := int32((configure.Now().Unix() - activity.Stime) / (24 * 3600))
|
||||
|
||||
for index, v := range _days {
|
||||
find := false
|
||||
for i := 0; i < int(v); i++ {
|
||||
pos++
|
||||
if _sub%maxday+1 == pos {
|
||||
list.Val = int32(index) + 1 // 计算val 值
|
||||
update["val"] = list.Val
|
||||
find = true
|
||||
break
|
||||
}
|
||||
}
|
||||
if find { // 找到剩余的天数
|
||||
list.Lasttime = activity.Stime + int64(_sub+pos%v+1)*24*3600
|
||||
update["lasttime"] = list.Lasttime
|
||||
break
|
||||
}
|
||||
}
|
||||
this.modelhdData.ModifyActivityList(session.GetUserId(), list.Id, update)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
result = append(result, list)
|
||||
return
|
||||
}
|
||||
|
@ -731,6 +731,7 @@ func (this *Buried) updateAndCheckBuried(bconf *cfg.GameBuriedTypeData, bdata *p
|
||||
|
||||
if cond.Ctype == ctype_daily { //日常
|
||||
if !utils.IsToday(bitem.Timestamp) { //不是同一天 可以重置数据
|
||||
|
||||
bitem.State = pb.BuriedItemState_Activated
|
||||
bitem.Value = 0
|
||||
bitem.Finish = pb.BuriedItemFinishState_buried_unfinish
|
||||
|
@ -32,6 +32,9 @@ func (a *apiComp) DoCheck(session comm.IUserSession, req *pb.DispatchDoReq) (err
|
||||
}
|
||||
|
||||
func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errdata *pb.ErrorData) {
|
||||
var (
|
||||
tasks []*pb.BuriedParam
|
||||
)
|
||||
if errdata = this.DoCheck(session, req); errdata != nil {
|
||||
return
|
||||
}
|
||||
@ -112,7 +115,13 @@ func (this *apiComp) Do(session comm.IUserSession, req *pb.DispatchDoReq) (errda
|
||||
})
|
||||
|
||||
go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
|
||||
this.module.ModuleBuried.TriggerBuried(session, comm.GetBuriedParam(comm.Rtype186, 1))
|
||||
for _, v := range req.HeroIds {
|
||||
if c, e := this.module.configure.GetHeroConfig(v); e == nil {
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype247, c.Color, 1))
|
||||
}
|
||||
}
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype186, 1))
|
||||
this.module.ModuleBuried.TriggerBuried(session, tasks...)
|
||||
this.module.WriteUserLog(session.GetUserId(), comm.GMResDelType, "DispatchDoReq", ticketAtn) // 消耗资源
|
||||
})
|
||||
return
|
||||
|
@ -328,7 +328,7 @@ func (this *apiComp) DrawCard(session comm.IUserSession, req *pb.HeroDrawCardReq
|
||||
|
||||
if req.DrawType != 1 {
|
||||
// 任务统计
|
||||
this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType)
|
||||
this.module.SendTaskMsg(session, szStar, req.DrawCount, req.DrawType, szCards)
|
||||
go this.module.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
|
||||
this.module.WriteUserLog(session.GetUserId(), comm.GMResAddType, "HeroDrawCardReq", atno)
|
||||
this.module.WriteUserLog(session.GetUserId(), comm.GMResDelType, "HeroDrawCardReq", costRes)
|
||||
|
@ -506,10 +506,11 @@ func (this *Hero) GetAllMaxHero(session comm.IUserSession, bTalent bool) (errdat
|
||||
return
|
||||
}
|
||||
|
||||
func (this *Hero) SendTaskMsg(session comm.IUserSession, szStar []int32, drawCount int32, drawtype int32) {
|
||||
func (this *Hero) SendTaskMsg(session comm.IUserSession, szStar []int32, drawCount int32, drawtype int32, szCards []string) {
|
||||
// 任务统计
|
||||
var (
|
||||
tasks []*pb.BuriedParam
|
||||
tasks []*pb.BuriedParam
|
||||
colorCount int32
|
||||
)
|
||||
|
||||
if drawtype == comm.DrawCardType0 { //普通招募
|
||||
@ -521,6 +522,7 @@ func (this *Hero) SendTaskMsg(session comm.IUserSession, szStar []int32, drawCou
|
||||
for k := range sz {
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype17, 1, k))
|
||||
}
|
||||
|
||||
}
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype14, drawCount))
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype18, drawCount))
|
||||
@ -543,7 +545,17 @@ func (this *Hero) SendTaskMsg(session comm.IUserSession, szStar []int32, drawCou
|
||||
if drawCount == 10 {
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype90, 1))
|
||||
}
|
||||
|
||||
for _, v := range szCards {
|
||||
if conf, e := this.configure.GetHeroConfig(v); e != nil {
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype245, conf.Color, conf.Race, 1))
|
||||
if conf.Color >= 3 { // 紫色以上
|
||||
colorCount++
|
||||
}
|
||||
}
|
||||
}
|
||||
if colorCount > 0 {
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype246, colorCount))
|
||||
}
|
||||
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype89, drawCount))
|
||||
go this.AsynHandleSession(session.Clone(), func(session comm.IUserSession) {
|
||||
this.ModuleBuried.TriggerBuried(session, tasks...)
|
||||
|
@ -58,7 +58,7 @@ func (this *Integral) OnInstallComp() {
|
||||
// 任务条件达成通知
|
||||
func (this *Integral) BuriedsNotify(session comm.IUserSession, conds []*pb.ConIProgress) {
|
||||
var bChange bool
|
||||
this.Debug("积分bossm条件达成通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "conds", Value: conds})
|
||||
this.Debug("积分boss条件达成通知", log.Field{Key: "uid", Value: session.GetUserId()}, log.Field{Key: "conds", Value: conds})
|
||||
dt, err := this.modelIntegral.getIntegralList(session.GetUserId())
|
||||
|
||||
if dt.Itype != 2 { // 只有事件模式才有debuff
|
||||
@ -95,7 +95,6 @@ func (this *Integral) BuriedsNotify(session comm.IUserSession, conds []*pb.ConIP
|
||||
if dt.Buff[k] != 1 && v.State == pb.BuriedItemFinishState_buried_finish {
|
||||
dt.Buff[k] = 1
|
||||
bChange = true
|
||||
|
||||
}
|
||||
}
|
||||
if bChange {
|
||||
|
@ -21,12 +21,14 @@ import (
|
||||
type Activity struct {
|
||||
cbase.ModuleBase
|
||||
modules.MCompModel
|
||||
service base.IRPCXService
|
||||
module *Timer
|
||||
cTimerObj *timewheel.Task
|
||||
closeSignal chan struct{}
|
||||
hlock sync.RWMutex
|
||||
activity map[pb.HdType]*pb.DBHuodong
|
||||
service base.IRPCXService
|
||||
module *Timer
|
||||
cTimerObj *timewheel.Task
|
||||
closeSignal chan struct{}
|
||||
hlock sync.RWMutex
|
||||
curActivity map[pb.HdType]*pb.DBHuodong // 正在进行的活动
|
||||
delActivity map[pb.HdType]*pb.DBHuodong // 已经过期的活动
|
||||
futureActivity map[pb.HdType]*pb.DBHuodong // 即将要开启的活动过期的活动
|
||||
}
|
||||
|
||||
//组件初始化接口
|
||||
@ -71,105 +73,125 @@ func (this *Activity) Start() (err error) {
|
||||
|
||||
func (this *Activity) LoadActivityData(id string) {
|
||||
if id == "" { // 查所有的
|
||||
if c, err := this.DB.Find(core.SqlTable(this.TableName), bson.M{}); err != nil {
|
||||
return
|
||||
} else {
|
||||
if c, err := this.DB.Find(core.SqlTable(this.TableName), bson.M{}); err == nil {
|
||||
var (
|
||||
szEnd []string // 活动结束
|
||||
szStart []string // 有活动开启
|
||||
)
|
||||
this.hlock.Lock()
|
||||
this.curActivity = make(map[pb.HdType]*pb.DBHuodong)
|
||||
this.delActivity = make(map[pb.HdType]*pb.DBHuodong)
|
||||
this.futureActivity = make(map[pb.HdType]*pb.DBHuodong)
|
||||
defer this.hlock.Unlock()
|
||||
this.activity = make(map[pb.HdType]*pb.DBHuodong)
|
||||
for c.Next(context.Background()) {
|
||||
hd := &pb.DBHuodong{}
|
||||
if err = c.Decode(hd); err != nil {
|
||||
this.module.Errorf("err:%v", err)
|
||||
continue
|
||||
}
|
||||
this.activity[hd.Itype] = hd
|
||||
if hd.Etime <= configure.Now().Unix() {
|
||||
this.delActivity[hd.Itype] = hd
|
||||
szEnd = append(szEnd, hd.Id)
|
||||
} else if hd.Etime > configure.Now().Unix() && hd.Stime < configure.Now().Unix() {
|
||||
this.curActivity[hd.Itype] = hd
|
||||
szStart = append(szStart, hd.Id)
|
||||
} else {
|
||||
this.futureActivity[hd.Itype] = hd
|
||||
}
|
||||
}
|
||||
if len(szEnd) > 0 {
|
||||
this.NotifyActivityOver(szEnd)
|
||||
}
|
||||
if len(szStart) > 0 {
|
||||
this.NotifyActivityStart(szStart)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
var hd *pb.DBHuodong
|
||||
this.DB.FindOne(core.SqlTable(this.TableName), bson.M{"_id": id}).Decode(&hd)
|
||||
|
||||
if err := this.DB.FindOne(core.SqlTable(this.TableName), bson.M{"_id": id}).Decode(&hd); err != nil {
|
||||
return
|
||||
}
|
||||
if hd.Etime <= configure.Now().Unix() { // 活动结束
|
||||
this.NotifyActivityOver([]string{hd.Id})
|
||||
} else if hd.Etime > configure.Now().Unix() && hd.Stime < configure.Now().Unix() {
|
||||
this.NotifyActivityStart([]string{hd.Id})
|
||||
}
|
||||
this.hlock.Lock()
|
||||
if this.activity == nil {
|
||||
this.activity = make(map[pb.HdType]*pb.DBHuodong)
|
||||
// 删除内存中
|
||||
if _, ok := this.curActivity[hd.Itype]; ok {
|
||||
delete(this.curActivity, hd.Itype)
|
||||
}
|
||||
this.activity[hd.Itype] = hd
|
||||
this.hlock.Unlock()
|
||||
// rpc 通知
|
||||
if configure.Now().Unix() <= hd.Etime && configure.Now().Unix() >= hd.Stime {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityStar),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "starActivity",
|
||||
Param2: []string{hd.Id},
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
if _, ok := this.delActivity[hd.Itype]; ok {
|
||||
delete(this.delActivity, hd.Itype)
|
||||
}
|
||||
if configure.Now().Unix() > hd.Etime {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityOver),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "endActivity",
|
||||
Param2: []string{hd.Id},
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
if _, ok := this.futureActivity[hd.Itype]; ok {
|
||||
delete(this.futureActivity, hd.Itype)
|
||||
}
|
||||
if hd.Etime <= configure.Now().Unix() { // 活动结束
|
||||
this.delActivity[hd.Itype] = hd
|
||||
} else if hd.Etime > configure.Now().Unix() && hd.Stime < configure.Now().Unix() {
|
||||
this.curActivity[hd.Itype] = hd
|
||||
} else {
|
||||
this.futureActivity[hd.Itype] = hd
|
||||
}
|
||||
defer this.hlock.Unlock()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func (this *Activity) NotifyActivityOver(szEnd []string) {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityOver),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "endActivity",
|
||||
Param2: szEnd,
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
}
|
||||
|
||||
func (this *Activity) NotifyActivityStart(szStart []string) {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityStart),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "startActivity",
|
||||
Param2: szStart,
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
}
|
||||
func (this *Activity) CheckActivityData() {
|
||||
var (
|
||||
szEnd []string // 活动结束
|
||||
szStar []string // 有活动开启
|
||||
szEnd []string // 活动结束
|
||||
szStart []string // 有活动开启
|
||||
)
|
||||
this.hlock.RLock()
|
||||
for _, v := range this.activity {
|
||||
this.hlock.Lock()
|
||||
defer this.hlock.Unlock()
|
||||
for _, v := range this.curActivity {
|
||||
if v.Etime == configure.Now().Unix() { // 有活动结束
|
||||
szEnd = append(szEnd, v.Id)
|
||||
}
|
||||
if v.Stime == configure.Now().Unix() { // 有活动结束
|
||||
szStar = append(szStar, v.Id)
|
||||
delete(this.curActivity, v.Itype)
|
||||
this.delActivity[v.Itype] = v
|
||||
}
|
||||
}
|
||||
for _, v := range this.futureActivity {
|
||||
if v.Stime >= configure.Now().Unix() { // 有活动结束
|
||||
szStart = append(szStart, v.Id)
|
||||
delete(this.futureActivity, v.Itype)
|
||||
this.curActivity[v.Itype] = v
|
||||
}
|
||||
}
|
||||
this.hlock.RUnlock()
|
||||
if len(szEnd) > 0 {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityOver),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "endActivity",
|
||||
Param2: szEnd,
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
this.NotifyActivityOver(szEnd)
|
||||
}
|
||||
if len(szStar) > 0 {
|
||||
if err := this.service.RpcCall(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_ActivityStar),
|
||||
pb.RPCGeneralReqB1{
|
||||
Param1: "starActivity",
|
||||
Param2: szStar,
|
||||
},
|
||||
nil,
|
||||
); err != nil {
|
||||
this.module.Errorln(err)
|
||||
}
|
||||
if len(szStart) > 0 {
|
||||
this.NotifyActivityStart(szStart)
|
||||
}
|
||||
}
|
||||
|
@ -25,10 +25,11 @@ func (this *apiComp) GetLattice(session comm.IUserSession, req *pb.UiGameGetLatt
|
||||
)
|
||||
update = make(map[string]interface{})
|
||||
curTime := configure.Now().Unix()
|
||||
if activity, err = this.module.ModuleActivity.GetHdInfoByHdId(req.Hdid); err != nil { // 活动不存在
|
||||
if activity, err = this.module.GetActivityData(pb.HdType_HdLattice); err != nil { // 活动不存在
|
||||
errdata = &pb.ErrorData{
|
||||
Code: pb.ErrorCode_ActivityInvalid,
|
||||
Title: pb.ErrorCode_ActivityInvalid.ToString(),
|
||||
Code: pb.ErrorCode_ActivityInvalid,
|
||||
Title: pb.ErrorCode_ActivityInvalid.ToString(),
|
||||
Message: err.Error(),
|
||||
}
|
||||
return
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ func (this *apiComp) GetMiner(session comm.IUserSession, req *pb.UiGameGetMinerR
|
||||
)
|
||||
update = make(map[string]interface{})
|
||||
curTime := configure.Now().Unix()
|
||||
if activity, err = this.module.ModuleActivity.GetHdInfoByHdId(req.Hdid); err != nil { // 活动不存在
|
||||
if activity, err = this.module.GetActivityData(pb.HdType_HdMiner); err != nil { // 活动不存在
|
||||
errdata = &pb.ErrorData{
|
||||
Code: pb.ErrorCode_ActivityInvalid,
|
||||
Title: pb.ErrorCode_ActivityInvalid.ToString(),
|
||||
|
@ -25,7 +25,7 @@ func (this *apiComp) GetPuzzle(session comm.IUserSession, req *pb.UiGameGetPuzzl
|
||||
)
|
||||
update = make(map[string]interface{})
|
||||
curTime := configure.Now().Unix()
|
||||
if activity, err = this.module.ModuleActivity.GetHdInfoByHdId(req.Hdid); err != nil { // 活动不存在
|
||||
if activity, err = this.module.GetActivityData(pb.HdType_HdPuzzle); err != nil { // 活动不存在
|
||||
errdata = &pb.ErrorData{
|
||||
Code: pb.ErrorCode_ActivityInvalid,
|
||||
Title: pb.ErrorCode_ActivityInvalid.ToString(),
|
||||
|
@ -15,6 +15,7 @@ import (
|
||||
type modelLattice struct {
|
||||
modules.MCompModel
|
||||
module *UiGame
|
||||
open bool // 游戏是否开启
|
||||
}
|
||||
|
||||
func (this *modelLattice) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
||||
|
@ -1,6 +1,7 @@
|
||||
package uigame
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"go_dreamfactory/comm"
|
||||
"go_dreamfactory/lego/base"
|
||||
"go_dreamfactory/lego/core"
|
||||
@ -8,6 +9,7 @@ import (
|
||||
"go_dreamfactory/sys/configure"
|
||||
cfg "go_dreamfactory/sys/configure/structs"
|
||||
"go_dreamfactory/utils"
|
||||
"sync"
|
||||
|
||||
"go_dreamfactory/modules"
|
||||
)
|
||||
@ -20,6 +22,8 @@ type UiGame struct {
|
||||
service base.IRPCXService
|
||||
modelLattice *modelLattice
|
||||
modelMiner *modelMiner
|
||||
lock sync.RWMutex
|
||||
hdlist map[pb.HdType]*pb.DBHuodong
|
||||
}
|
||||
|
||||
func NewModule() core.IModule {
|
||||
@ -35,6 +39,7 @@ func (this *UiGame) Init(service core.IService, module core.IModule, options cor
|
||||
return
|
||||
}
|
||||
this.service = service.(base.IRPCXService)
|
||||
this.hdlist = make(map[pb.HdType]*pb.DBHuodong)
|
||||
return
|
||||
}
|
||||
|
||||
@ -212,3 +217,32 @@ func (this *UiGame) HDPSTodayConsum(uid string, ps int32) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (this *UiGame) ActivityOpenNotice(hd *pb.DBHuodong) {
|
||||
this.lock.Lock()
|
||||
defer this.lock.Unlock()
|
||||
this.hdlist[hd.Itype] = hd
|
||||
}
|
||||
|
||||
// 活动关闭通知
|
||||
func (this *UiGame) ActivityCloseNotice(hd *pb.DBHuodong) {
|
||||
this.lock.Lock()
|
||||
defer this.lock.Unlock()
|
||||
if _, ok := this.hdlist[hd.Itype]; ok {
|
||||
delete(this.hdlist, hd.Itype)
|
||||
}
|
||||
}
|
||||
|
||||
func (this *UiGame) GetActivityData(itype pb.HdType) (hd *pb.DBHuodong, err error) {
|
||||
var (
|
||||
ok bool
|
||||
)
|
||||
this.lock.RLock()
|
||||
hd, ok = this.hdlist[itype]
|
||||
this.lock.RUnlock()
|
||||
if !ok {
|
||||
err = fmt.Errorf("not found hditype:%d", itype)
|
||||
return
|
||||
}
|
||||
return
|
||||
}
|
||||
|
@ -27,18 +27,19 @@ func (this *Api_Comp) ActivityNotify(c *engine.Context) {
|
||||
c.JSON(http.StatusOK, &Respond{Code: errdata.Code, Message: errdata.Message, Data: data})
|
||||
}()
|
||||
|
||||
if _, err = this.module.service.RpcGo(
|
||||
_, err = this.module.service.RpcGo(
|
||||
context.Background(),
|
||||
comm.Service_Worker,
|
||||
string(comm.Rpc_Activity),
|
||||
req.Id, nil); err != nil {
|
||||
pb.RPCGeneralReqA1{
|
||||
Param1: req.Id,
|
||||
},
|
||||
nil)
|
||||
if err != nil {
|
||||
this.module.Errorln(err)
|
||||
errdata = &pb.ErrorData{
|
||||
Code: pb.ErrorCode_RpcFuncExecutionError,
|
||||
Title: pb.ErrorCode_RpcFuncExecutionError.ToString(),
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
errdata = &pb.ErrorData{
|
||||
Code: pb.ErrorCode_Success,
|
||||
Title: pb.ErrorCode_Success.ToString(),
|
||||
|
@ -14,4 +14,5 @@ const (
|
||||
GameOpencondType_Maxmapid = 2
|
||||
GameOpencondType_Worldtaskid = 3
|
||||
GameOpencondType_Friend = 4
|
||||
GameOpencondType_MoonLevel = 5
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user