/* this is set IF they exist in a world that we have loaded */
world_instance *active_world;
int world_match[ k_world_max ];
+ u32 location_pstr; /* TODO: valid if active_world set. */
/* TODO: Compression with server code */
char username[ NETWORK_USERNAME_MAX ];
char items[k_netmsg_playeritem_max][ADDON_UID_MAX];
+ char chat[ NETWORK_MAX_CHAT ];
+ f64 chat_time;
+
+ /* ui */
+ u32 medals[3];
+ f32 opacity;
u32 down_bytes;
f32 down_kbs;
u16 boundary_hash;
union interp_animdata {
- struct player_skate_animator _skate;
- struct player_walk_animator _walk;
- struct player_dead_animator _dead;
+ /* these aren't accessed directly, just used to take the
+ * max(sizeof) all systems */
+ struct player_skate_animator __skate;
+ struct player_walk_animator __walk;
+ struct player_dead_animator __dead;
+ struct player_basic_info_animator __basic;
}
data;
}
u32 up_bytes;
f32 up_kbs, down_kbs;
f64 last_data_measurement;
+
+ int chatting;
+ char chat_buffer[ NETWORK_MAX_CHAT ], chat_message[ NETWORK_MAX_CHAT ];
+ f64 chat_time;
}
static netplayers;