From a8939e79c8c92be841f3bd9bc4abebf6a795675f Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 13 Mar 2024 17:54:41 +0800 Subject: [PATCH] 1 --- server/matchserver/team/team.go | 65 +++++++++++++++++++-------------- 1 file changed, 37 insertions(+), 28 deletions(-) diff --git a/server/matchserver/team/team.go b/server/matchserver/team/team.go index d15efbd5..336cfade 100644 --- a/server/matchserver/team/team.go +++ b/server/matchserver/team/team.go @@ -110,42 +110,51 @@ func (this *team) StartGame() { if !this.Started() { this.state = constant.TEAM_STATE_STARTED this.startTime = f5.GetApp().GetNowSeconds() - startInfo := struct { - ZoneId int32 `json:"zone_id"` - NodeId int32 `json:"node_id"` - MapId int32 `json:"map"` - RoomUuid string `json:"room_uuid"` - StartTime int32 `json:"start_time"` - TeamList []struct { - TeamUuid string `json:"team_uuid"` - Members []struct { - AccountId string `json:"account_id"` - } `json:"members"` - } `json:"team_list"` - ObList []struct { + this.genStartGameInfo() + f5.GetTimer().SetInterval(1000, func(e int32, args *q5.Args) { + if e == q5.TIMER_EXEC_EVENT { + this.SendStateNotify() + } + }) + } +} + +func (this *team) genStartGameInfo() { + startInfo := struct { + ZoneId int32 `json:"zone_id"` + NodeId int32 `json:"node_id"` + MapId int32 `json:"map"` + RoomUuid string `json:"room_uuid"` + StartTime int32 `json:"start_time"` + TeamList []struct { + TeamUuid string `json:"team_uuid"` + Members []struct { AccountId string `json:"account_id"` - } `json:"ob_list"` - } { - ZoneId: this.GetZoneId(), + } `json:"members"` + } `json:"team_list"` + ObList []struct { + AccountId string `json:"account_id"` + } `json:"ob_list"` + } { + ZoneId: this.GetZoneId(), NodeId: this.GetNodeId(), MapId: this.mapId, RoomUuid: q5.ToString(this.GetTeamUuid()), StartTime: int32(this.startTime), } - { - q5.NewSlice(&startInfo.TeamList, 0, 10) - ele := q5.NewSliceElement(&startInfo.TeamList) - ele.TeamUuid = this.GetTeamUuid() - for _, m := range this.accountIdHash { - ele2 := q5.NewSliceElement(&ele.Members) - ele2.AccountId = m.GetAccountId() - } + { + q5.NewSlice(&startInfo.TeamList, 0, 10) + ele := q5.NewSliceElement(&startInfo.TeamList) + ele.TeamUuid = this.GetTeamUuid() + for _, m := range this.accountIdHash { + ele2 := q5.NewSliceElement(&ele.Members) + ele2.AccountId = m.GetAccountId() } - sign := q5.Md5Str(q5.EncodeJson(&startInfo) + "520d8eAbB(8cf1^#$^&!@d833a42c820432PDAFE^^)") - payload := "normal_room:" + sign + "|" + q5.EncodeJson(&startInfo) - this.stateNotifyMsg.JoinMsg.TeamUuid = proto.String(this.GetTeamUuid()) - this.stateNotifyMsg.JoinMsg.Payload = proto.String(payload) } + sign := q5.Md5Str(q5.EncodeJson(&startInfo) + "520d8eAbB(8cf1^#$^&!@d833a42c820432PDAFE^^)") + payload := "normal_room:" + sign + "|" + q5.EncodeJson(&startInfo) + this.stateNotifyMsg.JoinMsg.TeamUuid = proto.String(this.GetTeamUuid()) + this.stateNotifyMsg.JoinMsg.Payload = proto.String(payload) } func (this *team) broadcastMsg(msg proto.Message) {