From f53028d1fc3450e845be530dd9354eb04579d6ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=94=E5=BF=B5?= <1@72wo.cn> Date: Mon, 20 Oct 2025 01:39:07 +0800 Subject: [PATCH] =?UTF-8?q?```=20feat(chat):=20=E5=88=A0=E9=99=A4=E6=97=A0?= =?UTF-8?q?=E7=94=A8=E7=9A=84=E5=8C=85=E5=A3=B0=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除了 chat.go 文件中多余的 package controller 声明,该文件目前不包含任何逻辑实现。 feat(user): 新增瞄准功能接口及数据结构 在用户控制器中增加了 Aimat 方法,用于处理玩家的瞄准操作,并广播给同地图其他玩家。 同时在 user 包中添加了与瞄准相关的入参和出参结构体定义,包括 ItemId、ShootType 和 Point 等字段。 ``` --- logic/controller/chat.go | 1 - logic/controller/user.go | 19 +++++++++++++++++++ logic/service/user/GET_SIM_USERINFO.go | 18 ++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) delete mode 100644 logic/controller/chat.go diff --git a/logic/controller/chat.go b/logic/controller/chat.go deleted file mode 100644 index 484b5256..00000000 --- a/logic/controller/chat.go +++ /dev/null @@ -1 +0,0 @@ -package controller \ No newline at end of file diff --git a/logic/controller/user.go b/logic/controller/user.go index 2a3d988a..643d65d3 100644 --- a/logic/controller/user.go +++ b/logic/controller/user.go @@ -2,7 +2,9 @@ package controller import ( "blazing/common/socket/errorcode" + "blazing/logic/service/common" "blazing/logic/service/player" + "blazing/logic/service/space" "blazing/logic/service/user" "github.com/jinzhu/copier" @@ -31,3 +33,20 @@ func (h Controller) UserMoreInfo(data *user.MoreUserInfoInboundInfo, c *player.P //todo 待实现 return ret, 0 } + +func (h Controller) Aimat(data *user.AimatInboundInfo, c *player.Player) (result *user.AimatOutboundInfo, err errorcode.ErrorCode) { + ret := &user.AimatOutboundInfo{ + + ItemId: data.ItemId, + Point: data.Point, + ShootType: data.ShootType, + UserId: c.Info.UserID, + } + defer space.GetSpace(c.Info.MapID).User.IterCb(func(playerID uint32, player common.PlayerI) { + data.Head.Result = 0 + player.SendPack(data.Head.Pack(ret)) + + }) + + return ret, -1 +} diff --git a/logic/service/user/GET_SIM_USERINFO.go b/logic/service/user/GET_SIM_USERINFO.go index a7cecb90..5ed34409 100644 --- a/logic/service/user/GET_SIM_USERINFO.go +++ b/logic/service/user/GET_SIM_USERINFO.go @@ -118,3 +118,21 @@ type MoreUserInfoOutboundInfo struct { // 对应 Java 注解: @FieldDescription("当前称号ID") @UInt CurrentTitleID uint32 `codec:"true"` } + +// AimatInboundInfo 对应Java的AimatInboundInfo类 +type AimatInboundInfo struct { + Head player.TomeeHeader `cmd:"2104" struc:"[0]pad"` + ItemId uint32 `description:"物品id 射击激光 物品id为0" codec:"auto" uint:"true"` + ShootType uint32 `description:"射击类型 未知 给0" codec:"auto" uint:"true"` + Point model.Pos `description:"射击的坐标 x y" codec:"auto"` // 默认值对应@Builder.Default +} + +// AimatOutboundInfo 对应Java的AimatOutboundInfo类 +type AimatOutboundInfo struct { + UserId uint32 `description:"射出子弹的人 米米号" codec:"auto" uint:"true"` + ItemId uint32 `description:"物品id 射击激光 物品id为0" codec:"auto" uint:"true"` + ShootType uint32 `description:"射击类型 未知 给0" codec:"auto" uint:"true"` + Point model.Pos `description:"射击的坐标 x y" codec:"auto"` // 对应@Builder.Default默认值 +} + +// M