Esempio n. 1
0
 private void CheckForNonBasicTypes()
 {
     foreach (GameObject icon in IconsToDelete)
     {
         Destroy(icon);
     }
     CheckForSpecial();
     CheckForConstruct();
     CheckForSummonned();
     CheckForColossus();
     CheckForUndead();
     CheckForPoisonous();
     CheckForFlying();
     CheckForShortRange();
     CheckForCannotAttack();
     CheckForStopRetaliation();
     CheckForNoMeleePen();
     CheckForAssassin();
     if (ManagementScene)
     {
         foreach (PassiveAbility ability in myUnit.GetComponents <PassiveAbility>())
         {
             if (ability is BasicStatModifier || ability.HasIcon == false)
             {
                 continue;
             }
             GameObject icon = shower.AddAbilityIcon((GameObject)Resources.Load(ability.AbilityIconName), false);
             IconsToDelete.Add(icon);
         }
     }
 }
Esempio n. 2
0
 public static void UpdateAbilitiesPanel(GameObject Panel, GameObject Prefab, UnitScript Unit)
 {
     RemoveChildrenOf(Panel.transform);
     foreach (Ability_Basic ability in Unit.GetComponents <Ability_Basic>())
     {
         ability.MyObject = Instantiate(Prefab, Panel.transform);
         ability.MyObject.GetComponentInChildren <AbilityIconScript>().myAbility      = ability;
         ability.MyObject.GetComponentInChildren <AbilityIconScript>().myImage.sprite = ability.mySprite;
         ability.MyObject.GetComponentInChildren <Button>().onClick.AddListener(delegate { ability.BaseUse(); });
     }
 }
Esempio n. 3
0
 bool CheckIfNoHowlYetOn(UnitScript unit)
 {
     foreach (PassiveAbility_Buff buff in unit.GetComponents <PassiveAbility_Buff>())
     {
         if (buff.AbilityIconName == "WolfBuff")
         {
             return(false);
         }
     }
     return(true);
 }
Esempio n. 4
0
 bool CheckIfGoodToUseAbility(UnitScript currentUnit)
 {
     foreach (Ability_Basic ability in currentUnit.GetComponents <Ability_Basic>())
     {
         if (ability.IsUsableNowBase() && ability.AI_IsGoodToUseNow())
         {
             ability.AI_Activate(ability.AI_ChooseTarget());
             return(true);
         }
     }
     return(false);
 }
Esempio n. 5
0
 void UpdateActives()
 {
     foreach (Transform child in transform)
     {
         Destroy(child.gameObject);
     }
     foreach (Ability_Basic ability in myUnit.GetComponents <Ability_Basic>())
     {
         //UIManager.UpdateAbilitiesPanel(gameObject, ActiveAbilityPrefab, myUnit);
         GameObject NewIcon = Instantiate(ActiveAbilityPrefab, this.transform);
         NewIcon.GetComponent <Image>().sprite = ability.mySprite;
         NewIcon.GetComponent <MouseHoverInfoCursor>().TooltipName = ability.Name;
         NewIcon.GetComponent <MouseHoverInfoCursor>().TooltipText = ability.TooltipInfo;
     }
 }
Esempio n. 6
0
    public int GetBaseDmg(UnitScript Attacker, UnitScript Defender)
    {
        int Attack = Attacker.CurrentAttack;

        foreach (PassiveAbility passive in Attacker.GetComponents <PassiveAbility>())
        {
            Attack += passive.GetAttack(Defender);
        }
        int Defence = Defender.CurrentDefence;

        foreach (PassiveAbility passive in Defender.GetComponents <PassiveAbility>())
        {
            Defence += passive.GetDefence(Attacker);
        }
        return(Attacker.CurrentDamage + Attack - Defence);
    }
Esempio n. 7
0
    public int CalculateTreshold(UnitScript attacker, UnitScript defender)
    {
        int Treshold = diceFaceNumber / 2 + 1;

        Treshold -= attacker.CurrentAttack;
        Treshold += defender.CurrentDefence;

        foreach (PassiveAbility passive in attacker.GetComponents <PassiveAbility>())
        {
            Treshold -= passive.GetAttack(defender);
        }
        foreach (PassiveAbility passive in defender.GetComponents <PassiveAbility>())
        {
            Treshold += passive.GetDefence(attacker);
        }
        return(Treshold);
    }