void Awake() { var tmp = new EnterArenaData(); var ttmp = new ArenaStateData (); var tttmp = new PartyMemberData (); var ttttmp = new List<ArenaStateData> (); var tttttmp = new List<bool> (); }
public void SetupArena(int i, byte[] data) { Debug.Log("setup arena"); EnterArenaData arenaData = new EnterArenaData(); BinaryFormatter b = new BinaryFormatter(); MemoryStream m = new MemoryStream(data); arenaData = (EnterArenaData)b.Deserialize(m); //change bool state of arenas across the board Arenas.arenaStates[i] = true; List<PhotonPlayer> pPlayers = new List<PhotonPlayer>(); for (int x = 0; x < arenaData.partyList.Count; x++) { pPlayers.Add(PhotonPlayer.Find(arenaData.partyList[x].playerID)); } Arenas.arenaInstances[i].PreloadArena(pPlayers, arenaData.EnemyID, arenaData.PartyLeaderID, arenaData.NewViewID ); //instantiate the first enemy wave as scene objects TODO change scene object into custom loaded object if(Arenas.arenaInstances[i].admittedPlayers.Contains(PhotonNetwork.player)) { PlayerManager.Instance.GoToZone(Arenas.arenaInstances[i]); //Arenas[i].arenaInstances[s].SpawnEnemyWave(0); //instantiate the enemy } }
public void RequestArenaEntry(string arenaName, int enemyID, bool solo) { int newid = PhotonNetwork.AllocateViewID(); EnterArenaData data = new EnterArenaData(); data.EnemyID = enemyID; data.NewViewID = newid; Debug.Log(data.NewViewID); if(solo) { PartyMemberData pmd = new PartyMemberData(); pmd.viewID = PlayerManager.Instance.avatarPhotonView.viewID; pmd.playerID = PhotonNetwork.player.ID; data.partyList.Add(pmd); data.PartyLeaderID = PhotonNetwork.player.ID; } else { if(PlayerManager.Instance.partyMembers.Count == 0) { PartyMemberData pmdd = new PartyMemberData(); pmdd.viewID = PlayerManager.Instance.avatarPhotonView.viewID; pmdd.playerID = PhotonNetwork.player.ID; data.partyList.Add(pmdd); data.PartyLeaderID = PhotonNetwork.player.ID; } else if(PlayerManager.Instance.partyMembers.Count > 0) { data.partyList = PlayerManager.Instance.partyMembers; data.PartyLeaderID = PhotonNetwork.player.ID; } } BinaryFormatter b = new BinaryFormatter(); MemoryStream m = new MemoryStream(); b.Serialize(m, data); myPhotonView.RPC("GetAvailableArena", PhotonTargets.MasterClient, arenaName, m.GetBuffer()); }