private void RecievePacket(RecievedPacket packet) { if (packet.type == PacketType.charSelect) { // Send out complete list of selectors if (packet.value == PacketValue.completeList) { selectorList.GetListFromBytes(packet, UpdateSelector); // Add selector } else if (packet.value == PacketValue.addUpdate) { UpdateSelector(selectorList.UnpackObj(packet.data), packet.GetTimeDifference()); MultiplayerManager.peerManager.SendDataToAllPeers(selectorList.GetBytesFromList(), PacketType.charSelect, PacketValue.completeList, true); // Selector moves or changes } else if (packet.value == PacketValue.changeUpdate) { UpdateSelector(selectorList.UnpackObj(packet.data), packet.GetTimeDifference()); } // Load the game } else if (packet.type == PacketType.startGame) { MultiplayerManager.manager.LoadGame(selectorList, packet.GetTimeDifference()); } }
private void PacketHandler(RecievedPacket packet) { if (packet.type == PacketType.projectile) { if (packet.value == PacketValue.addUpdate) { RecieveNewProjectile(packet.data, packet.GetTimeDifference()); } else if (packet.value == PacketValue.removeUpdate) { RecieveRemoveProjectile(packet); } } }
private void RecieveConnection(RecievedPacket packet) { if (packet.type == PacketType.playerMove) { players.UnpackAndSyncObj(packet); } else if (packet.type == PacketType.playerAttack && packet.value != PacketValue.confirmation) { BasePlayer player = players.GetObjWithId(packet.peerId); switch ((BasePlayer.PlayerAttack)packet.data[0]) { case BasePlayer.PlayerAttack.Primary: player.RecieveAttack(packet.data, packet.GetTimeDifference()); break; } } }