public void BattleStartHandler(NetConnection connection, object data) { PlayerInitDatas inits = GCli.Deserialize <PlayerInitDatas>((byte[])data); GCli.ClearPacketHandler(); room.SetActive(false); menu.SetActive(false); GCli.SetPacketHandler(MessageType.Snapshot, DataType.Bytes, SnapshotHandler); GCli.SetPacketHandler(MessageType.ReplyWon, DataType.Int32, ReplyWonHandler); GCli.SetPacketHandler(MessageType.BattleEnd, DataType.Null, BattleEndHandler); GCli.SetPacketHandler(MessageType.ReplySetBlock, DataType.Bytes, ReplySetBlockHandler); GCli.SetPacketHandler(MessageType.ReplyFire, DataType.Int32, ReplyFire); foreach (PlayerInitData init in inits.datas) { if (init.sync.userid == Players.userid) { World.SetCoreFaction(init.faction); Players.AddPlayer(init); } } foreach (PlayerInitData init in inits.datas) { if (init.sync.userid != Players.userid) { Players.AddOtherPlayer(init); } } }
public void SnapshotHandler(NetConnection connection, object data) { SnapShotData snap = GCli.Deserialize <SnapShotData>((byte[])data); Players.UpdatePlayerSyncData(snap.syncs); ui.AddBlocks(snap.pixels); }
public void ConnectSuccessHandler(NetConnection connection, object data) { GCli.ClearPacketHandler(); InitData init = GCli.Deserialize <InitData>((byte[])data); GameObject.Find("Canvas").GetComponent <UIScript>().SetInitData(init.bmps); Players.SetPlayer(init.sync); GCli.SetPacketHandler(MessageType.Snapshot, DataType.Bytes, SnapshotHandler); }
public void ReplySetBlockHandler(NetConnection connection, object data) { BlockData block = GCli.Deserialize <BlockData>((byte[])data); World.SetBlock(block.x, block.y, block.z, block.blocktype); }
public void ReplyRoomStateHandler(NetConnection connection, object data) { RoomState state = GCli.Deserialize <RoomState>((byte[])data); RefreshRoomUI(state); }
public void ReplyLobbyStateHandler(NetConnection connection, object data) { LobbyState state = GCli.Deserialize <LobbyState>((byte[])data); RefreshLobbyUI(state); }
public void SnapshotHandler(NetConnection connection, object data) { PlayerSyncDatas datas = GCli.Deserialize <PlayerSyncDatas>((byte[])data); Players.UpdatePlayerSyncData(datas.datas); }