#ifndef NETWORK_H_
#define NETWORK_H_

typedef struct {
    int id;
    Vec3 position;
    Vec3 velocity;
    Vec3 rendered_position;  // Client-side only
    double snapshot_time;    // Local time of last snapshot
} NetworkPlayer;

typedef struct {
    uint8_t player_id;
    float input_x, input_y;
} InputMessage;

// Get current time in seconds
double get_time();


// networking not yet implemented
// intend to connect to same exec
// server/client mix specify argc
// on startup --server --connect

// Server code
void init_server();
void update_server();

// Client code
void init_client(int local_player_id);
void update_client();

#endif

