void Ability() { // AbilitySO aSO = FindObjectOfType<AbilitySO>(); if (aSO == null) { Debug.Log("Error, no abilities scriptable object found"); return; } AbilityClass a = aSO.abilities[index]; string info = ""; info += "Ability name: " + a._name; info += "\r\n" + "Description: " + a.description; info += "\r\n" + "Attribute used: " + a.baseAttribute; info += "\r\n" + "Range: " + a.range; info += "\r\n" + "Area: " + a.area; for (int i = 0; i < a.effects.Length; i++) { info += "\r\n" + "Effect name " + a.effects[i].effectName; info += "\r\n" + "Effect type: " + a.effects[i].effectType; info += "\r\n" + "Target: " + a.effects[i].target; info += "\r\n" + "Power: " + a.effects[i].powerMin + " to " + a.effects[i].powerMax; } Debug.Log(info); }
public Ability(Ability ability) { Name = ability.Name; Key = ability.Key; Description = ability.Description; ExpCost = ability.ExpCost; SkillUsed = ability.SkillUsed; SkillRequired = ability.SkillRequired; SpriteKey = ability.SpriteKey; StatusSpriteKey = ability.StatusSpriteKey; Class = ability.Class; Type = ability.Type; Components = new List <AbilityComponent>(); for (int i = 0; i < ability.Components.Count; i++) { Components.Add(ability.Components[i]); } Effects = new List <AbilityEffect>(); for (int i = 0; i < ability.Effects.Count; i++) { Effects.Add(ability.Effects[i]); } BoostRune = ability.BoostRune; PreRune = ability.PreRune; PostRune = ability.PostRune; cooldown = ability.cooldown; }
public int getAbilityLevel(AbilityClass abilityClass) { if (!this.abilityLevel.ContainsKey(abilityClass)) { return(0); } return(this.abilityLevel[abilityClass]); }
// Use this for initialization void Start() { for (int i = 0; i < aSO.abilities.Length; i++) { AbilityClass a = aSO.abilities[i]; GameObject g = Instantiate(buttonPrefab, this.transform); g.name = a._name; AbilityButton ab = g.GetComponent <AbilityButton>(); ab.label.text = a._name; ab.icon.sprite = a.icon; ab.index = i; ab.aSO = aSO; } }
//Abilities casted to int, ranging from 1-n public void SwitchAbility() { for (int i = (int)selectedAbility; i < 7; i++) { if (i != 6 && this.getAbilityLevel((AbilityClass)(i + 1)) > 0) { selectedAbility = (AbilityClass)(i + 1); break; } else if (i == 6 && this.getAbilityLevel((AbilityClass)1) > 0) { selectedAbility = (AbilityClass)1; break; } } GameObject.Find("CurrentAbility").GetComponent <Text>().text = (this.selectedAbility).ToString(); }
public Ability(string name, string key, string sprite_key, AbilityClass ability_class, AbilityType ability_type, float cooldown = 0f, int exp = 0, Skill skill = Skill.None, int required = 0) { Name = name; Key = key; Description = "empty"; ExpCost = exp; SkillUsed = skill; SkillRequired = required; SpriteKey = sprite_key; StatusSpriteKey = ""; Class = ability_class; Type = ability_type; Components = new List <AbilityComponent>(); Effects = new List <AbilityEffect>(); this.cooldown = cooldown; }
public Ability() { Class = AbilityClass.None; Type = AbilityType.None; Name = ""; Key = ""; Description = "empty"; ExpCost = 0; SkillUsed = Skill.None; SkillRequired = 0; SpriteKey = ""; StatusSpriteKey = ""; Components = new List <AbilityComponent>(); Effects = new List <AbilityEffect>(); BoostRune = "Blank"; PreRune = "Blank"; PostRune = "Blank"; cooldown = 0; }
public void SetAbilityLevel(AbilityClass abilityClass, int level) { this.abilityLevel[abilityClass] = level; }
public bool IsOnCooldown(AbilityClass abilityClass) { bool value; return(this.onCooldown.TryGetValue(abilityClass, out value) ? value : false); }
public void SetOnCooldown(AbilityClass abilityClass, bool value) { this.onCooldown[abilityClass] = value; }