// Use this for initialization void Start() { m_AttackCooldownTimer = Services.TimerManager.CreateTimer("AttackCooldownTimer", 1.5f, false); m_Animator = GetComponentInChildren <Animator>(); initalRotaton = transform.rotation; // Player Watcher Setup m_PlayerWatcher = GameObject.Find("PlayerWatcher"); m_PlayerCamera = GameObject.Find("PlayerCamera"); m_ToadBoss = gameObject.GetComponent <ToadBoss>(); // Jump Position initialization //m_JumpPosition[1] = GameObject.Find("GroundJumpPosition1"); m_JumpID = -1; m_NumberOfJumps = m_JumpPosition.Length; m_AiActive = true; m_AIActions.Add(((int)Action.None), new ToadNone(this)); m_AIActions.Add(((int)Action.Jump), new CutSceneJump(this)); m_AIBehaviours.Add((int)Behaviour.Cinematic, new ToadCutsceneBehaviour(this)); SetBehaviour((int)AIToadController.Behaviour.Cinematic); SetAction((int)AIToadController.Action.Jump); }
public void Respawn() { Services.UIManager.PopAllScreens(); //SetCursorVisibility(true); UnFreezeGame(); Player.Respawn(); Services.GameManager.SetCursorVisibility(false); CurrentGameState = GameState.Playing; ToadBoss.Reset(); //SceneManager.LoadScene("MainMenu"); }
// Use this for initialization void Start() { m_AttackCooldownTimer = Services.TimerManager.CreateTimer("AttackCooldownTimer", 1.5f, false); m_Animator = GetComponentInChildren <Animator>(); initalRotaton = transform.rotation; m_HealthBarSize.Set(0.65765f, 0.188084f, 0.188084f); m_BossName = "Odell the Abomination"; m_BossText.text = m_BossName; //m_BossDecidedActionText = GameObject.Find("Text_BossDecidedAction").GetComponent<Text>(); //m_BossActionText = GameObject.Find("Text_BossAction").GetComponent<Text>(); m_ToadTongueWhipCube = GameObject.Find("ToadParryCube").GetComponent <ToadTongueWhipCube>(); m_ToadTongueWhipCube.gameObject.SetActive(false); m_MaxHealth = m_ToadBoss.m_MaxHealth; m_CurrentHealth = m_ToadBoss.GetCurrentHealth(); m_NextHealthThreshhold = (m_MaxHealth / 4) * 3; m_GoToPillar = false; // Get a random starting pillar m_PillarToGoTo = Random.Range(1, 4); Services.GameManager.RegisterToad(this); // Player Watcher Setup m_PlayerWatcher = GameObject.Find("PlayerWatcher"); m_PlayerCamera = GameObject.Find("PlayerCamera"); //m_CutsceneCamera = GameObject.Find("CutsceneCamera"); // Face and Lips Setup m_ToadLips = GameObject.Find("Lips"); //Tongue Setup m_Tongue = GameObject.Find("Tongue"); m_TongueGrabGameOject = GameObject.Find("TongueGrabCollisionBox"); m_MineSplitPosition = GameObject.Find("MineSplitPosition"); m_ToadBoss = gameObject.GetComponent <ToadBoss>(); // Jump Position initialization m_JumpPosition[0] = GameObject.Find("PillarJumpPosition1"); m_JumpPosition[1] = GameObject.Find("PillarJumpPosition2"); m_JumpPosition[2] = GameObject.Find("PillarJumpPosition3"); m_JumpPosition[3] = GameObject.Find("GroundJumpPosition1"); m_JumpPosition[4] = GameObject.Find("GroundJumpPosition2"); m_JumpPosition[5] = GameObject.Find("GroundJumpPosition3"); m_JumpPosition[6] = GameObject.Find("GroundJumpPosition4"); m_JumpPosition[7] = GameObject.Find("GroundJumpPosition5"); m_JumpPosition[8] = GameObject.Find("GroundJumpPosition6"); // Mine Position initialization m_MinePositions[0] = GameObject.Find("MineSplitPosition"); m_MinePositions[1] = GameObject.Find("MinePosition1"); m_MinePositions[2] = GameObject.Find("MinePosition2"); m_MinePositions[3] = GameObject.Find("MinePosition3"); m_MinePositions[4] = GameObject.Find("MinePosition4"); m_MinePositions[5] = GameObject.Find("MinePosition5"); m_MinePositions[6] = GameObject.Find("MinePosition6"); m_MinePositions[7] = GameObject.Find("MinePosition7"); m_MinePositions[8] = GameObject.Find("MinePosition8"); m_MinePositions[9] = GameObject.Find("MinePosition9"); m_MinePositions[10] = GameObject.Find("MinePosition10"); m_MinePositions[11] = GameObject.Find("MinePosition11"); for (int i = 0; i < m_WhipColliders.Count; i++) { m_WhipColliders[i].gameObject.SetActive(false); } m_Prefab_Projectile_Reference_VERT.GetComponent <BasicProjectile>().m_FirstDamageDirection = AttackDirection.North; m_Prefab_Projectile_Reference_VERT.GetComponent <BasicProjectile>().m_SecondDamageDirection = AttackDirection.South; m_Prefab_Projectile_Reference_HOR.GetComponent <BasicProjectile>().m_FirstDamageDirection = AttackDirection.East; m_Prefab_Projectile_Reference_HOR.GetComponent <BasicProjectile>().m_SecondDamageDirection = AttackDirection.West; m_Prefab_Projectile_Reference_TL.GetComponent <BasicProjectile>().m_FirstDamageDirection = AttackDirection.NorthWest; m_Prefab_Projectile_Reference_TL.GetComponent <BasicProjectile>().m_SecondDamageDirection = AttackDirection.SouthEast; m_Prefab_Projectile_Reference_TR.GetComponent <BasicProjectile>().m_FirstDamageDirection = AttackDirection.NorthEast; m_Prefab_Projectile_Reference_TR.GetComponent <BasicProjectile>().m_SecondDamageDirection = AttackDirection.SouthWest; for (int i = 0; i < 4; i++) { if (i == 0) { m_ProjectilesAttackList.Add(Instantiate <BasicProjectile>(m_Prefab_Projectile_Reference_HOR.GetComponent <BasicProjectile>(), m_ProjectileSpawnPoint_Reference.transform)); } if (i == 1) { m_ProjectilesAttackList.Add(Instantiate <BasicProjectile>(m_Prefab_Projectile_Reference_TL.GetComponent <BasicProjectile>(), m_ProjectileSpawnPoint_Reference.transform)); } if (i == 2) { m_ProjectilesAttackList.Add(Instantiate <BasicProjectile>(m_Prefab_Projectile_Reference_VERT.GetComponent <BasicProjectile>(), m_ProjectileSpawnPoint_Reference.transform)); } if (i == 3) { m_ProjectilesAttackList.Add(Instantiate <BasicProjectile>(m_Prefab_Projectile_Reference_TR.GetComponent <BasicProjectile>(), m_ProjectileSpawnPoint_Reference.transform)); } Debug.Log(i); // Making a pool of projectiles to spawn // m_ProjectilesAttackList.Add(Instantiate<BasicProjectile>(m_Prefab_Projectile_Reference.GetComponent<BasicProjectile>(), m_ProjectileSpawnPoint_Reference.transform)); Debug.Log(m_ProjectilesAttackList[i].GetComponent <BasicProjectile>().m_FirstDamageDirection); //Turning the Objects off m_ProjectilesAttackList[i].gameObject.SetActive(false); m_ProjectilesAttackList[i].transform.parent = null; m_ProjectilesAttackList[i].m_HasDied = true; } for (int i = 0; i < 7; i++) { //Making a pool of projectiles to spawn m_ProjectilesMineList.Add(Instantiate <MineProjectiles>(m_Prefab_ProjectileRain_Reference.GetComponent <MineProjectiles>())); //Turning the Objects off m_ProjectilesMineList[i].gameObject.SetActive(false); m_ProjectilesMineList[i].transform.parent = null; } m_AIBehaviours.Add((int)Behaviour.Aggressive, new ToadAgressiveBehaviour(this)); m_AIBehaviours.Add((int)Behaviour.Defensive, new ToadDefensiveBehaviour(this)); m_AIBehaviours.Add((int)Behaviour.Passive, new ToadPassiveBehaviour(this)); m_AIBehaviours.Add((int)Behaviour.Cinematic, new ToadCutsceneBehaviour(this)); m_AIActions.Add(((int)Action.ProjectileMines), new ToadProjectileMines(this)); m_AIActions.Add(((int)Action.ProjectileAttack), new ToadProjectileAttack(this)); m_AIActions.Add(((int)Action.SpinHead), new ToadSpinHead(this)); m_AIActions.Add(((int)Action.Stomp), new ToadStomp(this)); m_AIActions.Add(((int)Action.Charge), new ToadCharge(this)); m_AIActions.Add(((int)Action.Turn), new ToadTurn(this)); m_AIActions.Add(((int)Action.Jump), new ToadJump(this)); m_AIActions.Add(((int)Action.TongueWhip), new ToadTongueWhip(this)); m_AIActions.Add(((int)Action.Buck), new ToadBuck(this)); m_AIActions.Add(((int)Action.None), new ToadNone(this)); SetDecidedAction((int)AIToadController.Action.None); SetAction((int)AIToadController.Action.None); SetNextAction((int)AIToadController.Action.None); SetBehaviour((int)AIToadController.Behaviour.Passive); }