IEnumerator Respawn(float cooldown) { yield return(new WaitForSeconds(cooldown)); GameObject arturSceneManager = GameObject.FindGameObjectWithTag("SceneManager"); ArturMetaInf metaInf = arturSceneManager.GetComponent <ArturMetaInf>(); LevelMetaInf levelMetaInf = transform.GetComponentInParent <LevelMetaInf>(); Vector3 respawnPosition = levelMetaInf.respawnLocation; GameObject playerOne = GameObject.FindGameObjectWithTag("Player1"); GameObject playerTwo = GameObject.FindGameObjectWithTag("Player2"); playerOne.transform.parent = null; playerTwo.transform.parent = null; ArturPlayerOneController p1 = playerOne.GetComponent <ArturPlayerOneController>(); ArturPlayerTwoController p2 = playerTwo.GetComponent <ArturPlayerTwoController>(); p1.Respawn(respawnPosition + new Vector3(0, 3, 0)); p2.Respawn(respawnPosition + new Vector3(2, 3, 0)); metaInf.playerLives--; GameObject[] rooms = GameObject.FindGameObjectsWithTag("Room"); foreach (GameObject g in rooms) { Vector3 instantiateAt = g.GetComponent <LevelMetaInf>().instantiatedAt; GameObject room = Resources.Load <GameObject>("Rooms/" + ArturSceneManager.currentLevel + "/" + g.GetComponent <LevelMetaInf>().roomNumber); room.GetComponent <LevelMetaInf>().instantiatedAt = instantiateAt; room.GetComponent <LevelMetaInf>().lastBlock = g.GetComponent <LevelMetaInf>().lastBlock; room.GetComponent <LevelMetaInf>().respawnLocation = g.GetComponent <LevelMetaInf>().respawnLocation; Instantiate(room, instantiateAt, Quaternion.identity); Destroy(g); } GameObject[] enemies = GameObject.FindGameObjectsWithTag("Enemy"); foreach (GameObject enemy in enemies) { Destroy(enemy); } string enemyPath = "Prefabs/Main/Enemies/Enemy"; List <Vector3> allEnemyPositions = GameObject.FindGameObjectWithTag("ProceduralGenerator").GetComponent <ArturProceduralGeneratorManagerScript>().allEnemyPositions; foreach (Vector3 enemyPos in allEnemyPositions) { GameObject enemy = Resources.Load <GameObject>(enemyPath); Instantiate(enemy, enemyPos, Quaternion.identity); } }
public void Start() { pauseScreen = GameObject.Find("PauseScreen"); saveScoreScreen = GameObject.Find("SaveScoreScreen"); afterSavingNamesScreen = GameObject.Find("AfterSavingNamesScreen"); gameoverScreen = GameObject.Find("GameOverScreen"); endOfLevelScreen = GameObject.Find("EndOfLevelScreen"); endOfLevelScreenFire = GameObject.Find("EndOfLevelScreenFire"); endLevelScore = GameObject.Find("EndOfLevel - Score").GetComponent <Text>(); endLevelScoreF = GameObject.Find("EndOfLevel - ScoreF").GetComponent <Text>(); player1 = GameObject.FindGameObjectWithTag("Player1").GetComponent <ArturPlayerOneController>(); player2 = GameObject.FindGameObjectWithTag("Player2").GetComponent <ArturPlayerTwoController>(); p1GameObject = GameObject.FindGameObjectWithTag("Player1"); p2GameObject = GameObject.FindGameObjectWithTag("Player2"); metaInf = GetComponent <ArturMetaInf>(); pauseScreen.SetActive(false); gameoverScreen.SetActive(false); endOfLevelScreen.SetActive(false); endOfLevelScreenFire.SetActive(false); StandaloneInputModule inputModule = EventSystem.current.gameObject.GetComponent <StandaloneInputModule>(); if (player1.controllerType == "DS4" && player1.playerNumber == 1) { inputModule.cancelButton = "ds4_p1_button_circle"; inputModule.submitButton = "ds4_p1_button_x"; inputModule.verticalAxis = "ds4_p1_left_vertical"; inputModule.horizontalAxis = "ds4_p1_left_horizontal"; } else if (player1.controllerType == "DS4" && player1.playerNumber == 2) { inputModule.cancelButton = "ds4_p2_button_circle"; inputModule.submitButton = "ds4_p2_button_x"; inputModule.verticalAxis = "ds4_p2_left_vertical"; inputModule.horizontalAxis = "ds4_p2_left_horizontal"; } else if (player1.controllerType == "Xbox" && player1.playerNumber == 1) { inputModule.cancelButton = "xbox_p1_button_x"; inputModule.submitButton = "xbox_p1_button_a"; inputModule.verticalAxis = "xbox_p1_left_vertical"; inputModule.horizontalAxis = "xbox_p1_left_horizontal"; } else if (player1.controllerType == "Xbox" && player1.playerNumber == 2) { inputModule.cancelButton = "xbox_p2_button_x"; inputModule.submitButton = "xbox_p2_button_a"; inputModule.verticalAxis = "xbox_p2_left_vertical"; inputModule.horizontalAxis = "xbox_p2_left_horizontal"; } }
public void Respawn(Vector3 position) { transform.position = position; energy = 1; ArturMetaInf inf = GameObject.FindGameObjectWithTag("SceneManager").GetComponent <ArturMetaInf>(); inf.playerHealth = inf.initialPlayerHealth; if (gravityReversed) { ReverseGravity(); } }
IEnumerator SetBuff(ArturBasePlayerController player) { player.speedBonus = true; GetComponent <Renderer>().enabled = false; GetComponent <Collider>().enabled = false; player.maxAccelerationGrounded += speedmod; ArturMetaInf metaInf = GameObject.FindGameObjectWithTag("SceneManager").GetComponent <ArturMetaInf>(); yield return(new WaitForSeconds(metaInf.speedBonusTime)); player.maxAccelerationGrounded -= speedmod; player.speedBonus = false; Destroy(gameObject); }
public override void Effects(ArturBasePlayerController player) { // player.health += healthmod; ArturMetaInf arturMetaInf = GameObject.FindGameObjectWithTag("SceneManager").GetComponent <ArturMetaInf>(); if (arturMetaInf.playerHealth + healthmod > arturMetaInf.initialPlayerHealth) { arturMetaInf.playerHealth = arturMetaInf.initialPlayerHealth; } else { arturMetaInf.playerHealth += healthmod; } Destroy(gameObject); }
void Start() { player1 = GameObject.FindGameObjectWithTag("Player1").GetComponent <ArturPlayerOneController>(); player2 = GameObject.FindGameObjectWithTag("Player2").GetComponent <ArturPlayerTwoController>(); metaInf = GetComponent <ArturMetaInf>(); speedBonusTimePlayer1 = metaInf.speedBonusTime; speedBonusTimePlayer2 = metaInf.speedBonusTime; //splitScreenController = GameObject.Find("SplitScreen").GetComponent<SplitScreenController>(); splitScreenController = GameObject.FindGameObjectWithTag("SplitScreenController").GetComponent <ArturSplitScreenCamera>(); barContainerRight = GameObject.Find("Right Corner").GetComponent <Transform>(); barTemplate = GameObject.Find("BarTemplate").GetComponent <Transform>(); barTemplate.gameObject.SetActive(false); // Template is not visible barContainerLeft = GameObject.Find("Left Corner").GetComponent <Transform>(); barPositionRight = new Vector3(1650, 1000, 0); barPositionLeft = new Vector3(-1650, 1000, 0); scorebarleft = GameObject.Find("ScoreBarLeft"); scorebarright = GameObject.Find("ScoreBarRight"); livesleft = GameObject.Find("LivesLeft"); livesright = GameObject.Find("LivesRight"); middlecorner = GameObject.Find("Middle Corner"); AddNewBar(1, "energy"); AddNewBar(2, "energy"); // Initialize Scoretexts scoretexts = GameObject.FindGameObjectsWithTag("HighScoreText"); foreach (GameObject g in scoretexts) { g.GetComponent <Text>().text = "0"; } // Initialize Livetexts livetexts = GameObject.FindGameObjectsWithTag("LiveText"); foreach (GameObject g in livetexts) { g.GetComponent <Text>().text = metaInf.playerLives.ToString(); } // Initialize Health livesleft.transform.Find("Health").GetComponent <Image>().fillAmount = (float)metaInf.playerHealth / (float)metaInf.initialPlayerHealth; livesright.transform.Find("Health").GetComponent <Image>().fillAmount = (float)metaInf.playerHealth / (float)metaInf.initialPlayerHealth; middlecorner.transform.Find("LivesMiddle").Find("Health").GetComponent <Image>().fillAmount = (float)metaInf.playerHealth / (float)metaInf.initialPlayerHealth; }