Exemplo n.º 1
0
    void CheckForInteraction()
    {
        RaycastHit2D rh2d = Physics2D.Raycast(((Vector2)transform.position + oM.raycastOffset), direction, .5f, mask);

        if (rh2d.transform != null)
        {
            if (rh2d.transform.gameObject.layer == LayerMask.NameToLayer("BattlePC"))
            {
                BattleDef newBattle = GetComponent <EncounterRoller>().RollEncounter(tempArmyDangerZone);
                if (newBattle != null)
                {
                    //returnPosition = transform.position;
                    newBattle.pcsInBattle = PartyManager.curParty.partyMembers;
                    battleStarter.GetComponent <BattleStarter>().TurnOnBattleScene(newBattle);
                }

                EndTurn();
                //Start special battle
            }
            else if (rh2d.transform.gameObject.layer == LayerMask.NameToLayer("Settlement"))
            {
                this.enabled = false;
                BattleArmy enemyBattleArmy = rh2d.transform.gameObject.GetComponent <BattleArmy>();
                BattleArmy thisBattleArmy  = GetComponent <BattleArmy>();

                thisBattleArmy.DoAttackTurn(enemyBattleArmy);

                enemyBattleArmy.DoAttackTurn(thisBattleArmy);
                EndTurn();
                //Resolve 1 round of strategic battle
            }
            else if (rh2d.transform.gameObject.layer == army.value)
            {
                EndTurn();
                //Resolve 1 round of strategic battle
            }
        }
    }