// Use this for initialization void Start() { LoadRefs(); InitializeScript(); FatLadystate = FatLadyState.Intro; }
public void TakeDamage(float damage, bool isBody) { if (isBody) { fatLadyAnim.SetTrigger("DamagedOne"); milAudioS.PlayOneShot(damage_sfx[Random.Range(0, damage_sfx.Length - 1)], 1.0f); } if (hp - damage > 0) { hp -= damage; bossHpSlider.fillAmount = (hp / startingHp); } if (hp - damage <= 0) { bossHpSlider.fillAmount = 0; FatLadystate = FatLadyState.Death; } }
// Update is called once per frame void Update() { switch (fatLadystate) { case FatLadyState.Dormant: break; case FatLadyState.Attacking: if (!isAttacking) { isAttacking = true; StartCoroutine(AtkCo()); } if (hp <= 0) { FatLadystate = FatLadyState.Death; } break; case FatLadyState.Outro: // animate OutroCamera until enxt level loads if (OutroCamera.activeSelf && outroCamStartPoint.gameObject.activeSelf) { OutroCamera.transform.LookAt(bossDestroy_pos); OutroCamera.transform.RotateAround(bossDestroy_pos.position, Vector3.up * outroCamSpeed, Time.deltaTime); } break; } }
IEnumerator IntroCutScene() { yield return(null); ObjsToToggleInCutscenes(false); introCamera.SetActive(true); yield return(new WaitForSeconds(7.5f)); fatLadyAnim.SetTrigger(fatAnimTriggers[0]); milAudioS.PlayOneShot(greeting_sfx, 1.0f); yield return(new WaitForSeconds(2.0f)); introCamera.SetActive(false); ObjsToToggleInCutscenes(true); yield return(new WaitForSeconds(3.0f)); FatLadystate = FatLadyState.Attacking; }
IEnumerator IntroCo() { yield return(new WaitForSeconds(1.0f)); fatLadystate = FatLadyState.Intro; }