From b139f378682bc088fb91553009927d4cd6a0e2b0 Mon Sep 17 00:00:00 2001 From: 1 <1@72wo.cn> Date: Sat, 16 Aug 2025 03:34:04 +0000 Subject: [PATCH] =?UTF-8?q?refactor(maphot):=20=E9=87=8D=E6=9E=84=E5=9C=B0?= =?UTF-8?q?=E5=9B=BE=E7=83=AD=E5=BA=A6=E8=8E=B7=E5=8F=96=E9=80=BB=E8=BE=91?= =?UTF-8?q?=EF=BC=8C=E5=B0=86=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86=E7=A7=BB?= =?UTF-8?q?=E8=87=B3space=E6=9C=8D=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logic/controller/maphot.go | 8 +------- logic/service/maphot/maphot.go | 22 ++++++---------------- logic/service/space/walk.go | 18 ++++++++++++++++-- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/logic/controller/maphot.go b/logic/controller/maphot.go index 29e7c4648..73ddcb5d5 100644 --- a/logic/controller/maphot.go +++ b/logic/controller/maphot.go @@ -11,16 +11,10 @@ func (h Controller) MapHot(data *maphot.InInfo, c *entity.Player) (result *mapho result = &maphot.OutInfo{ - HotInfos: make([]maphot.MapHotInfo, 0), + HotInfos: space.GetMapHot(), } - for k, v := range space.GetMapHot() { - result.HotInfos = append(result.HotInfos, maphot.MapHotInfo{ - MapID: uint32(k), - Count: uint32(space.GetPlanet(uint32(v)).Len()), - }) - } return } diff --git a/logic/service/maphot/maphot.go b/logic/service/maphot/maphot.go index ab58f8258..a2eb326c7 100644 --- a/logic/service/maphot/maphot.go +++ b/logic/service/maphot/maphot.go @@ -1,26 +1,16 @@ package maphot -import "blazing/common/socket/handler" +import ( + "blazing/common/socket/handler" + "blazing/logic/service/space" +) -// MapHotInfo 表示地图热度信息 -type MapHotInfo struct { - MapID uint32 `json:"mapId"` // 地图ID - Count uint32 `json:"count"` // 地图里的人数 -} type InInfo struct { Head handler.TomeeHeader `cmd:"1004" struc:"[0]pad"` //玩家登录 } -func (m *InInfo) Def() []byte { - - return m.Head.Pack(OutInfo{ - - HotInfos: make([]MapHotInfo, 0), - }) //返回传参 -} - // OutInfo 表示地图热度的出站消息 type OutInfo struct { - HotInfosLen uint32 `json:"hotInfosLen" struc:"sizeof=HotInfos"` // 热度信息列表长度 - HotInfos []MapHotInfo `json:"hotInfos"` // 热度信息列表 + HotInfosLen uint32 `json:"hotInfosLen" struc:"sizeof=HotInfos"` // 热度信息列表长度 + HotInfos []space.MapHotInfo `json:"hotInfos"` // 热度信息列表 } diff --git a/logic/service/space/walk.go b/logic/service/space/walk.go index 0d6efab08..d315b738f 100644 --- a/logic/service/space/walk.go +++ b/logic/service/space/walk.go @@ -8,7 +8,13 @@ import ( "blazing/modules/blazing/model" ) -func GetMapHot() map[uint32]uint32 { +// MapHotInfo 表示地图热度信息 +type MapHotInfo struct { + MapID uint32 `json:"mapId"` // 地图ID + Count uint32 `json:"count"` // 地图里的人数 +} + +func GetMapHot() []MapHotInfo { tt := make(map[uint32]uint32) @@ -23,7 +29,15 @@ func GetMapHot() map[uint32]uint32 { } } -return tt + var result=make([]MapHotInfo,0) + for k, v := range tt { + result = append(result, MapHotInfo{ + MapID: uint32(k), + Count: uint32(GetPlanet(uint32(v)).Len()), + }) + + } + return result } // 获取星球