public void ReceiveGridUpdateFromServer(NWMGridData grid_data)
    {
        GridNode node_update = new GridNode();

        node_update.player_id       = grid_data.player_ID;
        node_update.tile_type       = grid_data.tile_type;
        node_update.tile_y_rotation = grid_data.tile_rotation;
        node_update.x = grid_data.grid_x;
        node_update.y = grid_data.grid_y;
        client_grid.UpdateClientGrid(node_update);
    }
    public void SendGridUpdateToServer(GridNode node)
    {
        NWMGridData grid_data = new NWMGridData();

        grid_data.grid_x        = node.x;
        grid_data.grid_y        = node.y;
        grid_data.player_ID     = node.player_id;
        grid_data.tile_rotation = node.tile_y_rotation;
        grid_data.tile_type     = node.tile_type;
        client_network.SendGridData(grid_data);
    }
Example #3
0
 //set new info of the grid from a client
 public void SetGridTile(NWMGridData grid_message)
 {
     for (int y = 0; y < grid_y; y++)
     {
         for (int x = 0; x < grid_y; x++)
         {
             if (grid_message.grid_x == x && grid_message.grid_y == y)
             {
                 grid_list[y][x].tile_type       = grid_message.tile_type;
                 grid_list[y][x].player_id       = grid_message.player_ID;
                 grid_list[y][x].tile_y_rotation = grid_message.tile_rotation;
                 UpdateVisualGrid(grid_message.grid_x, grid_message.grid_y, grid_message.tile_type, grid_message.player_ID, grid_message.tile_rotation);
                 server.UpdateClientGrids(grid_message);
             }
         }
     }
 }
Example #4
0
    private void OnDataRecieved(int client_id, int channel_id, int host_id, NetworkMessage message)
    {
        switch (message.operation)
        {
        case NetworkOperation.none:

            break;

        case NetworkOperation.set_ready:
            NWMPlayerReady ready_message = (NWMPlayerReady)message;
            if (lobby)
            {
                lobby.SetPlayerReadyState(client_id, ready_message.ready_state);
                lobby.SetPlayerName(client_id, ready_message.player_name);
            }
            else if (game)
            {
                game.ClientReady(client_id, ready_message.ready_state);
            }

            break;

        case NetworkOperation.cart_data:
            NWMCartData cart_message = (NWMCartData)message;
            game.SetPlayerCartData(cart_message);
            break;

        case NetworkOperation.grid_single:
            NWMGridData grid_message = (NWMGridData)message;
            game.SetGridTile(grid_message);
            break;

        case NetworkOperation.cart_off_tracks:
            ReceiveOffTrackInfo(client_id);
            break;
        }
    }
Example #5
0
 public void UpdateClientGrids(NWMGridData grid_data)
 {
     SendAllClientsMessage(host_id, reliable, grid_data);
 }
Example #6
0
 public void SendGridData(NWMGridData grid_single)
 {
     SendServerMessage(grid_single, reliable);
 }
Example #7
0
 //receive update of one grid tile
 public void ReceiveSingleGridData(NWMGridData grid_single)
 {
     network_GM.ReceiveGridUpdateFromServer(grid_single);
 }
Example #8
0
    private void OnDataReceived(int channel_id, int host_id, NetworkMessage message)
    {
        switch (message.operation)
        {
        case NetworkOperation.none:

            break;

        case NetworkOperation.set_ready:
            break;

        case NetworkOperation.cart_data:
            NWMCartData cart_data = (NWMCartData)message;
            ReceiveCartData(cart_data);
            break;

        case NetworkOperation.grid_single:
            NWMGridData grid_data = (NWMGridData)message;
            ReceiveSingleGridData(grid_data);
            break;

        case NetworkOperation.user_counter:
            NWMUserCount user_counter = (NWMUserCount)message;
            ReceiveUserCount(user_counter);
            break;

        case NetworkOperation.scene_load:
            NWMSceneLoad scene_load = (NWMSceneLoad)message;
            ReceiveSceneToLoad(scene_load);
            break;

        case NetworkOperation.assign_num:
            NWMAssignPlayerNum assigner = (NWMAssignPlayerNum)message;
            player_id = assigner.num;
            Debug.Log(client_id);
            break;

        case NetworkOperation.gold_pos:
            NWMGoldUpdate goldUpdate = (NWMGoldUpdate)message;
            ReceiveGoldPositionUpdate(goldUpdate);
            break;

        case NetworkOperation.player_score:
            NWMScoreUpdate scoreUpdate = (NWMScoreUpdate)message;
            ReceiveScoreUpdate(scoreUpdate);
            break;

        case NetworkOperation.player_info:
            NWMPlayerIDUpdate idUpdate = (NWMPlayerIDUpdate)message;
            ReceivePlayerDataUpdate(idUpdate);
            break;

        case NetworkOperation.game_start:
            NWMGameStart start_msg = (NWMGameStart)message;
            SetClientGameStarted(start_msg);

            break;

        case NetworkOperation.player_respawn:
            NWMPlayerRespawn respawn_data = (NWMPlayerRespawn)message;
            ReceivePlayerRepsawnData(respawn_data);
            break;

        case NetworkOperation.timer_seconds:
            NWMTimerUpdate timer_data = (NWMTimerUpdate)message;
            ReceiveUpdateTimer(timer_data);
            break;

        case NetworkOperation.game_finished:
            NWMGameFinishedSendInfo game_finished_info = (NWMGameFinishedSendInfo)message;
            ReceiveGameFinishedInfo(game_finished_info);
            break;
        }
    }