public bool CanAttackTarget(Character target) { if (!target.IsDead && RegularAttack != null) { return(RegularAttack.CanAttack(target)); } return(false); }
public bool CanReachTarget(Character target) { if (RegularAttack != null) { return(RegularAttack.CanReach(target)); } return(false); }
public override void _Ready() { base._Ready(); PartyMemberOrder = GUIManager.RegisterPlayerCharacter(this); weapon = (RegularAttack)GetNodeOrNull("EquippedWeapon"); SetSelectionCircle(false); if (AnimationSet != null) { Animator.Frames = AnimationSet; } }
public void Attack(Character target) { if (target.IsDead) { AttackTarget = null; return; } var roll = Stats.Roll(StatType.ACCURACY); var damage = Stats.Damage + RegularAttack.Attack(); CombatLog.Attack(this.CharacterName, target.CharacterName, roll); target.ReceiveAttack(roll, damage); }