public void Hit(bool hit, Enum_Block sendedAttackDir) { if (hit) { Debug.Log("Hit empfangen"); if (sendedAttackDir == blockDir) { Debug.Log("Blocked"); } else { Health -= 1; Debug.Log("Hit"); } } }
IEnumerator DefenceCD() { yield return(new WaitForSeconds(defenceCD)); blockDir = Enum_Block.nothing; if (OverrrideBlockAllowed) { StatusIcon.GetComponent <statusScr>().SetSprite(2); DefenceAllowed = true; } else { StatusIcon.GetComponent <statusScr>().SetSprite(5); DefenceAllowed = false; } }
IEnumerator AttackCD() { yield return(new WaitForSeconds(attackCD)); attackDir = Enum_Block.nothing; if (OverrrideAttackAllowed) { StatusIcon.GetComponent <statusScr>().SetSprite(5); gizFarbeÄndern = false; AttackAllowed = true; } else { StatusIcon.GetComponent <statusScr>().SetSprite(2); gizFarbeÄndern = false; AttackAllowed = false; } }
// Update void Update() { //Health if (Health <= 0) { Destroy(gameObject); } if (Input.GetKeyDown(KeyCode.LeftShift)) { StatusIcon.GetComponent <statusScr>().SetSprite(5); AttackAllowed = true; OverrrideAttackAllowed = true; DefenceAllowed = false; attackDir = Enum_Block.nothing; blockDir = Enum_Block.nothing; } if (Input.GetKeyUp(KeyCode.LeftShift)) { StatusIcon.GetComponent <statusScr>().SetSprite(2); AttackAllowed = false; OverrrideAttackAllowed = false; DefenceAllowed = true; attackDir = Enum_Block.nothing; blockDir = Enum_Block.nothing; } //Angriff if (Input.GetKeyDown("w") && AttackAllowed) { AttackAllowed = false; attackDir = Enum_Block.w; anim.SetTrigger("UpTrig"); StatusIcon.GetComponent <statusScr>().SetSprite(4); couroutine = AttackStepDelay(Wdelay, 0); StartCoroutine(couroutine); StartCoroutine("OverlapDelay", wAttackDelay); StartCoroutine("AttackCD"); } else if (Input.GetKeyDown("s") && AttackAllowed) { AttackAllowed = false; attackDir = Enum_Block.s; anim.SetTrigger("DownTrig"); StatusIcon.GetComponent <statusScr>().SetSprite(4); couroutine = AttackStepDelay(Sdelay, 0); StartCoroutine(couroutine); StartCoroutine("OverlapDelay", sAttackDelay); StartCoroutine("AttackCD"); } else if (Input.GetKeyDown("d") && AttackAllowed) { AttackAllowed = false; attackDir = Enum_Block.d; anim.SetTrigger("forwardTrig"); StatusIcon.GetComponent <statusScr>().SetSprite(4); couroutine = AttackStepDelay(Ddelay, 20); StartCoroutine(couroutine); StartCoroutine("OverlapDelay", dAttackDelay); StartCoroutine("AttackCD"); } else if (Input.GetKeyDown("a") && AttackAllowed) { AttackAllowed = false; attackDir = Enum_Block.a; anim.SetTrigger("backTrig"); StatusIcon.GetComponent <statusScr>().SetSprite(4); couroutine = AttackStepDelay(Adelay, 0); StartCoroutine(couroutine); StartCoroutine("OverlapDelay", aAttackDelay); StartCoroutine("AttackCD"); } //Defence if (Input.GetKeyDown("w") && DefenceAllowed) { DefenceAllowed = false; StatusIcon.GetComponent <statusScr>().SetSprite(1); blockDir = Enum_Block.w; couroutine = AttackStepDelay(0, -200); StartCoroutine("DefenceCD"); } else if (Input.GetKeyDown("s") && DefenceAllowed) { DefenceAllowed = false; StatusIcon.GetComponent <statusScr>().SetSprite(1); blockDir = Enum_Block.s; couroutine = AttackStepDelay(0, -200); StartCoroutine("DefenceCD"); } else if (Input.GetKeyDown("d") && DefenceAllowed) { DefenceAllowed = false; StatusIcon.GetComponent <statusScr>().SetSprite(1); blockDir = Enum_Block.d; couroutine = AttackStepDelay(0, -200); StartCoroutine("DefenceCD"); } else if (Input.GetKeyDown("a") && DefenceAllowed) { DefenceAllowed = false; StatusIcon.GetComponent <statusScr>().SetSprite(1); blockDir = Enum_Block.a; couroutine = AttackStepDelay(0, -200); StartCoroutine("DefenceCD"); } }