public override void TakeDamage(int damage, ATTACK_TYPE type = ATTACK_TYPE.BLOCKED) { if (type == ATTACK_TYPE.BLOCKED) { AudioManager.instance.playsound("block"); //return; } if (type == ATTACK_TYPE.HIGH) { isHitHigh = true; if (!anim.GetCurrentAnimatorStateInfo(0).IsTag("GuardHigh")) { anim.SetBool("damagedHigh", isHitHigh); AudioManager.instance.playsound("damage_high", true); blockValue = 0; } else { AudioManager.instance.playsound("block"); //return; } } else if (type == ATTACK_TYPE.LOW) { isHitLow = true; if (!anim.GetCurrentAnimatorStateInfo(0).IsTag("GuardLow")) { anim.SetBool("damagedLow", isHitLow); AudioManager.instance.playsound("damage_low", true); blockValue = 0; } else { AudioManager.instance.playsound("block"); //return; } } int calculatedDamage = damage - blockValue; if (calculatedDamage < 0) { calculatedDamage = 0; } health -= calculatedDamage; healthBar.fillAmount = ((float)health / 100.0f); Debug.Log(healthBar.fillAmount); Debug.Log(calculatedDamage); if (health < 50 && particleEmitter.activeSelf == false) { particleEmitter.SetActive(true); attack_left.damage = (int)((float)attack_left.damage * 1.5f); attack_right.damage = (int)((float)attack_right.damage * 1.5f); } }
public double PercentPhysicalDamage(ATTACK_TYPE atk_type) { double physical_damage = DefaultOneValue(_user.User_Item.Option_DTYPE, Enum.GetName(typeof(DTYPE), DTYPE.PHYSICAL_DAMAGE)); if (atk_type == ATTACK_TYPE.MELEE_TYPE) { physical_damage += (1.0 - DefaultOneValue(_user.User_Item.Option_DTYPE, Enum.GetName(typeof(DTYPE), DTYPE.MELEE_PHYSICAL_DAMAGE))); } else if (atk_type == ATTACK_TYPE.RANGE_TYPE) { physical_damage += (1.0 - DefaultOneValue(_user.User_Item.Option_DTYPE, Enum.GetName(typeof(DTYPE), DTYPE.RANGE_PHYSICAL_DAMAGE))); } return(physical_damage); }
public Transform colliderChecked(ATTACK_TYPE attackType) { Collider2D hittedCollider = Physics2D.OverlapBox(attackRangeCenter.position, colliderSize, obstacleLayer); if (hittedCollider.CompareTag("Monster")) { MonsterController monster = hittedCollider.GetComponent <MonsterController>(); GameManager.Instance.currentScore += monster.score; Debug.Log(GameManager.Instance.currentScore); monster.DestroyItself(); if (attackType == ATTACK_TYPE.NORMAL) { manaGained += 1; } } return(null); }
public static int GetStatusBonusATK(ATTACK_TYPE atk_type, GetValue getvalue) { int BASE = getvalue.User_Data.Base_Level.Point; int STR = getvalue.User_Data.Status.List[(int)STATUS_ENUM.STR].Point + getvalue.User_Data.Status.List[(int)STATUS_ENUM.STR].AddPoint; int DEX = getvalue.User_Data.Status.List[(int)STATUS_ENUM.DEX].Point + getvalue.User_Data.Status.List[(int)STATUS_ENUM.DEX].AddPoint; int statusBonusATK = 0; if (atk_type == ATTACK_TYPE.MELEE_TYPE) { statusBonusATK = (int)(getvalue.WeaponATK() * STR * STAT_WEIGHT); } else if (atk_type == ATTACK_TYPE.RANGE_TYPE) { statusBonusATK = (int)(getvalue.WeaponATK() * DEX * STAT_WEIGHT); } return(statusBonusATK); }
public static int GetStatusATK(ATTACK_TYPE atk_type, UserData user) { int BASE = user.Base_Level.Point; int STR = user.Status.List[(int)STATUS_ENUM.STR].Point + user.Status.List[(int)STATUS_ENUM.STR].AddPoint; int DEX = user.Status.List[(int)STATUS_ENUM.DEX].Point + user.Status.List[(int)STATUS_ENUM.DEX].AddPoint; int LUK = user.Status.List[(int)STATUS_ENUM.LUK].Point + user.Status.List[(int)STATUS_ENUM.LUK].AddPoint; int statusATK = 0; if (atk_type == ATTACK_TYPE.MELEE_TYPE) { statusATK = (int)(STR + (DEX + LUK) * 0.2 + BASE * 0.25); } else if (atk_type == ATTACK_TYPE.RANGE_TYPE) { statusATK = (int)(DEX + (STR + LUK) * 0.2 + BASE * 0.25); } return(statusATK); }
public void Hit(ATTACK_TYPE attackType) { attackTypeThisEvt = attackType; if (!hitboxEnabled) { hitboxEnabled = true; if (attackType == ATTACK_TYPE.BASE) { basicAttackCollider.enabled = true; } else { chargedAttackCollider.enabled = true; } hitboxCountdown = hitboxDuration; } }
public CAttackType(int iAttackType) { this.AttackType = (ATTACK_TYPE)iAttackType; }
public virtual void TakeDamage(int damage, ATTACK_TYPE type = ATTACK_TYPE.BLOCKED) { }
public Equations(ATTACK_TYPE atk_type = ATTACK_TYPE.MELEE_TYPE) { attack_type = atk_type; }
private bool TypeIsOn(ATTACK_TYPE type) { return((attackType & type) == type); }
private void TypeOff(ATTACK_TYPE type) { attackType &= ~type; }
private void TypeOn(ATTACK_TYPE type) { attackType |= type; }