/// <summary> /// Set the ability details for every form (human vs werebeast) and type (active vs passive) /// </summary> /// <param name="abilityType">Ability type</param> /// <param name="playerForm">Player form</param> /// <param name="abilityImage">Ability image for UI</param> /// <param name="abilityName">Ability name for UI</param> /// <param name="abilityDescription">Ability description for UI</param> /// <param name="abilityCooldown">Ability cooldown for UI</param> public AbilityDetails SetAbilityDetails(AbilityDetails.AbilityType abilityType, AbilityDetails.PlayerForm playerForm, Sprite abilityImage, string abilityName, string abilityDescription, float abilityCooldown) { // Use switch to generate AbilityDetails object for each case switch (playerForm) { case AbilityDetails.PlayerForm.Human: switch (abilityType) { case AbilityDetails.AbilityType.Active: this.humanActiveAbility = new AbilityDetails(abilityType, playerForm, abilityImage, abilityName, abilityDescription, abilityCooldown); return(this.humanActiveAbility); case AbilityDetails.AbilityType.Passive: this.humanPassiveAbility = new AbilityDetails(abilityType, playerForm, abilityImage, abilityName, abilityDescription, abilityCooldown); return(this.humanPassiveAbility); } break; case AbilityDetails.PlayerForm.Werebeast: switch (abilityType) { case AbilityDetails.AbilityType.Active: this.werebeastActiveAbility = new AbilityDetails(abilityType, playerForm, abilityImage, abilityName, abilityDescription, abilityCooldown); return(this.werebeastActiveAbility); case AbilityDetails.AbilityType.Passive: this.werebeastPassiveAbility = new AbilityDetails(abilityType, playerForm, abilityImage, abilityName, abilityDescription, abilityCooldown); return(this.werebeastPassiveAbility); } break; } return(null); }
public AbilityDetails(AbilityDetails.AbilityType abilityType, AbilityDetails.PlayerForm playerForm, Sprite abilityImage, string abilityName, string abilityDescription, float abilityCooldown) { this.abilityType = abilityType; this.playerForm = playerForm; this.abilityImage = abilityImage; this.abilityName = abilityName; this.abilityDescription = abilityDescription; this.abilityCooldown = abilityCooldown; }