Esempio n. 1
0
    public bool CanAttackCastle(List<ObjectBase> list, ObjectBase obj)   // 성이 공격 가능한 범위인지 판단하고 리스트에 추가
    {
        switch (obj.line)
        {
            case 1:
                if (obj.GetAttackRange() >= Mathf.Abs(obj.transform.position.x
                    - IsOppositeCastle(obj).transform.FindChild("Spawn Line1").position.x))
                {
                    list.Add(IsOppositeCastle(obj).GetComponent<ObjectBase>());
                    return true;
                }
                break;

            case 2:
                if (obj.GetAttackRange() >= Mathf.Abs(obj.transform.position.x -
                    IsOppositeCastle(obj).transform.FindChild("Spawn Line2").position.x))
                {
                    list.Add(IsOppositeCastle(obj).GetComponent<ObjectBase>());
                    return true;
                }
                break;

            case 3:
                if (obj.GetAttackRange() >= Mathf.Abs(obj.transform.position.x -
                    IsOppositeCastle(obj).transform.FindChild("Spawn Line3").position.x))
                {
                    list.Add(IsOppositeCastle(obj).GetComponent<ObjectBase>());
                    return true;
                }
                break;
        }
        return false;
    }