Based db and accounts and log in where you logged out

This commit is contained in:
2025-01-19 21:52:56 +01:00
parent bb01dccf2b
commit e45066b2a8
5 changed files with 37 additions and 8 deletions

View File

@ -53,6 +53,7 @@ func (c *Chat) HandleServerMessages(messages []*pb.ChatMessage) {
for _, msg := range messages {
localMsg := types.ChatMessage{
PlayerID: msg.PlayerId,
Username: msg.Username,
Content: msg.Content,
Time: time.Unix(0, msg.Timestamp),
}
@ -117,7 +118,7 @@ func (c *Chat) Draw(screenWidth, screenHeight int32) {
for i := startIdx; i < endIdx; i++ {
msg := c.messages[i]
text := fmt.Sprintf("[%d]: %s", msg.PlayerID, msg.Content)
text := fmt.Sprintf("%s: %s", msg.Username, msg.Content)
rl.DrawText(text, int32(chatX)+5, int32(messageY), 20, rl.White)
messageY += messageHeight
}

View File

@ -68,16 +68,16 @@ func (g *Game) Update(deltaTime float32) {
return
}
// Assign model based on player ID
modelIndex := int(playerID) % len(g.Models)
g.Player = &types.Player{
PosActual: rl.NewVector3(5*types.TileSize, 0, 5*types.TileSize),
PosTile: GetTile(5, 5),
Speed: 50.0,
TargetPath: []types.Tile{},
UserData: g,
QuitDone: make(chan struct{}),
ID: playerID,
Model: g.Models[0].Model,
Texture: g.Models[0].Texture,
Model: g.Models[modelIndex].Model,
Texture: g.Models[modelIndex].Texture,
}
go network.HandleServerCommunication(conn, playerID, g.Player, g.OtherPlayers, g.QuitChan)
@ -208,7 +208,13 @@ func (g *Game) Render() {
g.DrawMap()
g.DrawPlayer(g.Player, g.Player.Model)
for id, other := range g.OtherPlayers {
g.DrawPlayer(other, g.Models[int(id)%len(g.Models)].Model)
if other.Model.Meshes == nil {
// Assign model based on player ID for consistency
modelIndex := int(id) % len(g.Models)
other.Model = g.Models[modelIndex].Model
other.Texture = g.Models[modelIndex].Texture
}
g.DrawPlayer(other, other.Model)
}
rl.EndMode3D()