Skip to content

Network #14

@zzorn

Description

@zzorn

Structural logic

To be later defined more accurately
class Ship
{
int id;
int health;
Vector3 position;
Quaternion rotation;
Vector3 velocity;
Vector3 forceVector;
}

Network logic

enum GamePacketType {Connect, Disconnect, Ship, Asteroid}

struct GamePacket
{
GamePacketType type;
Stream dataStream;
}

enum EntityEventType {Spawn, State, Remove}

GamePacketType Ship
{
int id;
EntityEventType type;

switch(type)
{
    case EntityEventType.State:
        ships[id].health;
        ships[id].position;
        ships[id].rotation;
        ships[id].velocity;
        ships[id].forceVector;
    break;
    case EntityEventType.Spawn:
        ships[id] = new Ship();
        ships[id].position;
        ships[id].rotation;
    break;
    case EntityEventType.Remove:
        destroy ships[id];
    break;
}

}

GamePacketType Asteroid
{

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions