package utils import "skyrama_clone_backend/backend/objects" type Msg = isPacket_Msg func NewChat(msg string) Msg { return &Packet_Chat{ Chat: &ChatMessage{ Msg: msg, }, } } func NewId(id uint64) Msg { return &Packet_Id{ Id: &IdMessage{ Id: id, }, } } func NewOkResponse() Msg { return &Packet_OkResponse{ OkResponse: &OkResponseMessage{}, } } func NewDenyResponse(reason string) Msg { return &Packet_DenyResponse{ DenyResponse: &DenyResponseMessage{ Reason: reason, }, } } func NewPlayer(id uint64, player *objects.Player) Msg { return &Packet_Player{ Player: &PlayerMessage{ Id: id, Name: player.Name, X: player.X, Y: player.Y, Radius: player.Radius, Direction: player.Direction, Speed: player.Speed, }, } } func newSporeMessage(id uint64, spore *objects.Spore) *SporeMessage { return &SporeMessage{ Id: id, X: spore.X, Y: spore.Y, Radius: spore.Radius, } } func NewSpore(id uint64, spore *objects.Spore) Msg { return &Packet_Spore{ newSporeMessage(id, spore), } } func NewSporeBatches(spores map[uint64]*objects.Spore) Msg { SporeMessages := make([]*SporeMessage, len(spores)) for id, spore := range spores { SporeMessages = append(SporeMessages, newSporeMessage(id, spore)) } return &Packet_SporeBatch{ SporeBatch: &SporesBatchMessage{ Spores: SporeMessages, }, } }