// Update is called once per frame void Update() { if (!m_SpawnRun) { return; } if (m_ManagementTarget != null) { if (m_ManagementTarget.m_Live == Object.E_LIVE.DEAD) { ++m_DeadCount; TimerNet.SetTimer_s(m_TimerKey, false); m_ManagementTarget = null; } return; } if (m_CurrentSpawnCount < m_SpawnCount && TimerNet.GetTimer(m_TimerKey) <= 0.0f) { if (PhotonNetwork.IsMasterClient) { GameObject g = PhotonNetwork.InstantiateSceneObject(m_FilePath + "/" + m_MonsterPrefab.name, transform.position, Quaternion.Euler(0.0f, 180.0f, 0.0f)); if (g) { m_ManagementTarget = g.GetComponent <Character>(); PhotonView view = g.GetComponent <PhotonView>(); m_PhotonView.RPC("SetManagementTarget_RPC", RpcTarget.AllViaServer, view.ViewID); TimerNet.SetTimer_s(m_TimerKey, m_SpawnDelay, true); } } } }
void SetNextGameSequence(float _WaitTime = 0.0f) { m_SequenceProgress[(int)m_GameSequence] = true; if (PhotonNetwork.IsMasterClient && _WaitTime != 0.0f) { TimerNet.SetTimer_s(m_SequenceTimerKey, _WaitTime); } SetGameSequence(m_GameSequence); }
public void Initialize(int _Number, SpawnManager _SpawnManager) { m_SpawnManager = _SpawnManager; m_SpawnerNumber = _Number; Resources.Load <GameObject>(m_FilePath + "/" + m_MonsterPrefab.name); m_TimerKey = "Spawner" + m_SpawnerNumber.ToString(); TimerNet.InsertTimer(m_TimerKey, 2.0f, true); }
void SetManagementTargetEvent(int _ViewID) { ++m_CurrentSpawnCount; PlayParticle(); PhotonView view = PhotonView.Find(_ViewID); if (view) { Character c = view.gameObject.GetComponent <Character>(); if (c) { m_ManagementTarget = c; m_ManagementTarget.SetFreeze(0.5f); TimerNet.SetTimer_s(m_TimerKey, m_SpawnDelay, false); } } }
private void Awake() { _gameObject = gameObject; single = _gameObject.GetComponent <TimerNet>(); m_PhotonView = GetComponent <PhotonView>(); }
void GameSequenceEvent() { if (m_UpdateSequence) { return; } m_UpdateSequence = true; if (m_SequenceProgress[(int)m_GameSequence]) { return; } float timer = TimerNet.GetTimer(m_SequenceTimerKey); if (timer > 0.0f) { return; } switch (m_GameSequence) { case E_GAMESEQUENCE.BEGINGAME: { SetNextGameSequence(); } break; case E_GAMESEQUENCE.READY: { m_GameReadyCanvas.Run(); SetNextGameSequence(); } break; case E_GAMESEQUENCE.START: { if (m_GameReadyCanvas.IsComplete) { SetNextGameSequence(); } } break; case E_GAMESEQUENCE.NORMALSTAGESTART: { m_SpawnManager.NormalMonsterSpawnStart(); m_ControlCanvas.SetActive(true); m_SkillUICanvas.SetActive(true); m_GameUICanvas.TimeCheck(true); SetNextGameSequence(); } break; case E_GAMESEQUENCE.NORMALSTAGE: { if (m_SpawnManager.IsAllNormalMonsterSpawnOperationsCompleted()) { SetNextGameSequence(1.5f); } } break; case E_GAMESEQUENCE.NORMALSTAGE_END: { m_PianoEffect.CurtainClose(); SetNextGameSequence(2.0f); } break; case E_GAMESEQUENCE.BOSSSTAGESTART: { m_PianoEffect.CurtainOpen(); m_BossUICanvas.gameObject.SetActive(true); m_MyCharacter.transform.position = m_BossRoomStartPoint.position; m_MyCharacter.transform.rotation = Quaternion.identity; VerticalFollowCamera.SetDistanceSmooth(5.0f, 1.5f); SetNextGameSequence(); } break; case E_GAMESEQUENCE.BOSSSTAGE: { m_SpawnManager.BossMonsterSpawnStart(); SetNextGameSequence(); } break; case E_GAMESEQUENCE.BOSSSTAGE_END: { if (m_SpawnManager.IsAllBossMonsterSpawnOperationsCompleted()) { DeleteTeamAllUnits(E_TEAMTYPE.BLUE); DeleteTeamAllUnits(E_TEAMTYPE.GREEN); DeleteTeamAllUnits(E_TEAMTYPE.YELLOW); GameClearUIOpen(); m_GameUICanvas.TimeCheck(false); SetNextGameSequence(); } } break; case E_GAMESEQUENCE.AFTERGAME: { m_SequenceProgress[(int)m_GameSequence] = true; } break; default: break; } }
IEnumerator C_Initialize() { WaitForSeconds wait = new WaitForSeconds(0.5f); if (GameManager.Instance.m_TestMode) { TestModeDefaultItemSetting list = Resources.Load <TestModeDefaultItemSetting>("TestModeDefaultItemList"); list.SetTestDefaultItemInventory(); TestModeServerConnect(); while (!PhotonNetwork.InRoom) { yield return(null); } } NetworkManager.Instance.RoomController.SetLocalPlayerProperties(PlayerCharacter.m_CharacterReadyKey, false); NetworkManager.Instance.RoomController.SetLocalPlayerProperties("InitComp", false); yield return(wait); if (PhotonNetwork.IsMasterClient) { // timer set TimerNet.CreateDefaultTimer(); TimerNet.InsertTimer(m_SequenceTimerKey, 0.0f, true); } yield return(wait); GameObject pianoUI = Instantiate(Resources.Load <GameObject>("PianoEffectCanvas")); m_PianoEffect = pianoUI.GetComponent <PianoEffectCanvas>(); m_PianoEffect.Initialize(); GameObject readyUI = Instantiate(Resources.Load <GameObject>("GameReadyCanvas")); m_GameReadyCanvas = readyUI.GetComponent <GameReadyCanvas>(); m_ControlCanvas = Instantiate(Resources.Load <GameObject>("ControlCanvas")); m_ControlCanvas.SetActive(false); GameObject gameUI = Instantiate(Resources.Load <GameObject>("GameUICanvas")); m_GameUICanvas = gameUI.GetComponent <GameUICanvas>(); List <Item> droplist = new List <Item>(); for (int i = 0; i < m_DropItemList.Length; ++i) { droplist.Add(m_DropItemList[i].m_Item); } m_GameUICanvas.Initialize(this, droplist); m_GameUICanvas.TimeCheck(false); gameUI.SetActive(false); m_SkillUICanvas = Instantiate(Resources.Load <GameObject>("SkillUICanvas"), Vector3.zero, Quaternion.identity); m_SkillUICanvas.SetActive(false); GameObject bossUI = Instantiate(Resources.Load <GameObject>("BossUICanvas")); m_BossUICanvas = bossUI.GetComponent <BossCharacterUI>(); bossUI.SetActive(false); m_SpawnManager.Initialize(); GameObject g = PhotonNetwork.Instantiate("PlayerCharacter", Vector3.zero, Quaternion.identity, 0, new object[] { -1, -1, -1, -1, -1, InventoryManager.Instance.GetPlayerModelName() }); m_MyCharacter = g.GetComponent <PlayerCharacter>(); m_MyCharacter.AddDeadEvent(MyCharacterDeadEvent); m_VerticalCamera = Instantiate(m_VerticalCamera, Vector3.zero, Quaternion.identity); VerticalFollowCamera verticalcamera = m_VerticalCamera.GetComponent <VerticalFollowCamera>(); verticalcamera.Initialize(this, m_MyCharacter); m_VerticalCamera.SetActive(false); NetworkManager.Instance.RoomController.SetLocalPlayerProperties("InitComp", true); yield return(wait); while (!IsBeginLoadingComplete) { Player[] players = PhotonNetwork.PlayerList; int compcount = 0; int playercount = players.Length; foreach (Player p in players) { if (NetworkManager.Instance.RoomController.GetOtherPlayerPropertie <bool>(p, "InitComp")) { ++compcount; } } if (compcount >= playercount) { IsBeginLoadingComplete = true; } yield return(null); } m_IsMultiplayGame = NetworkManager.Instance.RoomController.GetRoomPropertie <bool>(MultiPlayKey); while (!IsAfterLoadingComplete) { Player[] players = PhotonNetwork.PlayerList; bool complete = true; for (int i = 0; i < players.Length; ++i) { if (!NetworkManager.Instance.RoomController.GetOtherPlayerPropertie <bool>(players[i], PlayerCharacter.m_CharacterReadyKey)) { complete = false; } } if (complete) { InitializeComplete(); } yield return(null); } }
public override void SpawnRun() { m_SpawnRun = true; TimerNet.SetTimer_s(m_TimerKey, 2.0f, false); }