// Mogelijk voor zorgen dat Ability's alleen de UnitManager hoeven te kennen, en dat de Unitmanager alle Landtile-related dingen doet.
    // Aka: OnAbilityCast moet een Unit[] of een Landtile door krijgen (hoe bepalen we welke?)
    //	 Mogelijk dat we apparte scripts moeten maken voor LandTile en Unit !>affecting<! spells; Beide targetten tiles, maar affecten verschillend.
    // Aanroepen van RequestRange, OnTargetRangeFound, etc moeten allemaal naar UnitManager.

    // OnAbilitySelection is called when the ability is selected from the UI (UIManager) by the player
    // This will need some way of being called from other places as well later on? Special triggers etc.
    public override void OnAbilitySelection()
    {
        base.OnAbilitySelection();

        //@todo find better way of making this reference.
        UnitManager unitManager = GameManager.instance.unitManager;

        if (range == 0)             // target own position automatically, no cursor required
        {
            unitManager.BeginCastingAbility(unitManager.currentTurnUnit, unitManager.currentTurnUnit.currentTile, this);

            return;
        }
        unitManager.ShowAbilityRange(this, true);
    }
示例#2
0
 public override void Act(UnitManager manager, Unit actingUnit)
 {
     manager.BeginCastingAbility(actingUnit, targetUnit.unit.currentTile, abilityToUse);
 }