修改广播逻辑

This commit is contained in:
1
2025-11-18 20:52:04 +00:00
parent 4ab6b726a7
commit 6c32a5d7ac
19 changed files with 100 additions and 218 deletions

View File

@@ -4,9 +4,7 @@ import (
"blazing/common/socket/errorcode"
"blazing/cool"
"blazing/logic/service/common"
"blazing/logic/service/player"
"blazing/logic/service/space"
"blazing/logic/service/user"
blservice "blazing/modules/blazing/service"
"strings"
@@ -29,11 +27,7 @@ func (h *Controller) ChangePlayerName(data *user.ChangePlayerNameInboundInfo, c
Nickname: newnice,
UserID: c.Info.UserID,
}
space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, player common.PlayerI) bool {
player.SendPack(data.Head.Pack(&result))
return false
})
c.GetSpace().Broadcast(c, data.Head.CMD, result)
return result, 0
}

View File

@@ -6,10 +6,8 @@ import (
"math/rand"
"time"
"blazing/logic/service/common"
"blazing/logic/service/item"
"blazing/logic/service/player"
"blazing/logic/service/space"
"blazing/modules/blazing/model"
)
@@ -76,14 +74,10 @@ func (h Controller) ChangePlayerCloth(data *item.ChangePlayerClothInboundInfo, c
result.ClothList = append(result.ClothList, model.PeopleItemInfo{ID: v, Level: 1})
}
c.Info.Clothes = result.ClothList
space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, player common.PlayerI) bool {
// fmt.Println("ChangePlayerCloth", playerID, data.Head.Pack(result))
data.Head.Result = 0
player.SendPack(data.Head.Pack(result))
return false
})
return nil, -1
c.GetSpace().Broadcast(c, data.Head.CMD, result)
return
}
func (h Controller) Talk(data *item.TalkCountInboundInfo, c *player.Player) (result *item.TalkCountOutboundInfo, err errorcode.ErrorCode) {
result = &item.TalkCountOutboundInfo{}

View File

@@ -96,7 +96,7 @@ func (h *Controller) Login(data *user.MAIN_LOGIN_IN, c gnet.Conn) (result *user.
result = user.NewOutInfo() //设置登录消息
result.PlayerInfo = *t.Info
go space.GetSpace(t.Info.MapID).EnterMap(t)
space.GetSpace(t.Info.MapID).EnterMap(t)
return result, 0

View File

@@ -121,11 +121,12 @@ func (h *Controller) PlayerShowPet(
copier.Copy(&results, pi)
results.Flag = data.Flag
results.UserID = data.Head.UserID
data.Broadcast(c.Info.MapID, results) //同步广播
c.GetSpace().Broadcast(c, data.Head.CMD, results)
}
}
return result, -1
return
}
func (h *Controller) PetOneCure(

View File

@@ -3,9 +3,7 @@ package controller
import (
"blazing/common/socket/errorcode"
"blazing/cool"
"blazing/logic/service/common"
"blazing/logic/service/player"
"blazing/logic/service/space"
"blazing/logic/service/user"
"github.com/jinzhu/copier"
@@ -36,38 +34,28 @@ func (h Controller) UserMoreInfo(data *user.MoreUserInfoInboundInfo, c *player.P
}
func (h Controller) Aimat(data *user.AimatInboundInfo, c *player.Player) (result *user.AimatOutboundInfo, err errorcode.ErrorCode) {
result = &user.AimatOutboundInfo{
defer space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, player common.PlayerI) bool {
ret := &user.AimatOutboundInfo{
ItemId: data.ItemId,
Point: data.Point,
ShootType: data.ShootType,
UserId: c.Info.UserID,
}
c.GetSpace().Broadcast(c, data.Head.CMD, result)
ItemId: data.ItemId,
Point: data.Point,
ShootType: data.ShootType,
UserId: c.Info.UserID,
}
data.Head.Result = 0
player.SendPack(data.Head.Pack(ret))
return false
})
return nil, -1
return
}
func (h Controller) Chat(data *user.ChatInboundInfo, c *player.Player) (result *user.ChatOutboundInfo, err errorcode.ErrorCode) {
defer space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, v common.PlayerI) bool {
result = &user.ChatOutboundInfo{
result = &user.ChatOutboundInfo{
Message: string([]byte(data.Message)[:data.MessageLen-1]),
SenderNickname: c.Info.Nick,
SenderId: c.Info.UserID,
}
result.Message = cool.Filter.Replace(result.Message, '*')
data.Head.Result = 0
v.SendPack(data.Head.Pack(result))
return false
})
return nil, -1
Message: string([]byte(data.Message)[:data.MessageLen-1]),
SenderNickname: c.Info.Nick,
SenderId: c.Info.UserID,
}
result.Message = cool.Filter.Replace(result.Message, '*')
c.GetSpace().Broadcast(c, data.Head.CMD, result)
return
}
func (h Controller) ChangePlayerColor(data *user.ChangeColorInboundInfo, c *player.Player) (result *user.ChangeColorOutboundInfo, err errorcode.ErrorCode) {
@@ -76,20 +64,15 @@ func (h Controller) ChangePlayerColor(data *user.ChangeColorInboundInfo, c *play
}
c.Info.Color = data.Color
c.Info.Texture = 0
result = &user.ChangeColorOutboundInfo{
UserId: c.Info.UserID,
Color: data.Color,
Coins: c.Info.Coins,
Texture: c.Info.Texture,
}
c.GetSpace().Broadcast(c, data.Head.CMD, result)
defer space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, v common.PlayerI) bool {
data.Head.Result = 0
result = &user.ChangeColorOutboundInfo{
UserId: c.Info.UserID,
Color: data.Color,
Coins: c.Info.Coins,
Texture: c.Info.Texture,
}
v.SendPack(data.Head.Pack(result))
return false
})
return nil, -1
return
}
func (h Controller) ChangePlayerDoodle(data *user.ChangeDoodleInboundInfo, c *player.Player) (result *user.ChangeDoodleOutboundInfo, err errorcode.ErrorCode) {
if !c.UseCoins(200) { //如果花不了200,直接返回
@@ -97,19 +80,15 @@ func (h Controller) ChangePlayerDoodle(data *user.ChangeDoodleInboundInfo, c *pl
}
c.Info.Texture = data.Id
c.Info.Color = data.Color
defer space.GetSpace(c.Info.MapID).User.Range(func(playerID uint32, v common.PlayerI) bool {
data.Head.Result = 0
result = &user.ChangeDoodleOutboundInfo{
UserId: c.Info.UserID,
Color: c.Info.Color,
Coins: c.Info.Coins,
Texture: c.Info.Texture,
}
v.SendPack(data.Head.Pack(result))
return false
})
result = &user.ChangeDoodleOutboundInfo{
UserId: c.Info.UserID,
Color: c.Info.Color,
Coins: c.Info.Coins,
Texture: c.Info.Texture,
}
c.GetSpace().Broadcast(c, data.Head.CMD, result)
return nil, -1
return
}
func (h Controller) ChangeNONOColor(data *user.ChangeNONOColorInboundInfo, c *player.Player) (result *user.ChangeNONOColorOutboundInfo, err errorcode.ErrorCode) {
//c.Info.Coins -= 200

View File

@@ -9,7 +9,7 @@ import (
func (h Controller) Walk(data *maps.WalkInInfo, c *player.Player) (result *info.WalkOutInfo, err errorcode.ErrorCode) {
go c.GetSpace().Walk(info.WalkOutInfo{
c.GetSpace().Walk(c, info.WalkOutInfo{
Flag: data.Flag,
Point: data.Point,
Path: data.Path,
@@ -17,5 +17,5 @@ func (h Controller) Walk(data *maps.WalkInInfo, c *player.Player) (result *info.
})
c.Info.Pos = data.Point
return nil, -1
return
}