private Constants.DamageTypes DamageTypeFromDragonType(Constants.DragonTypes _dragonType) { switch (_dragonType) { case Constants.DragonTypes.Blue: case Constants.DragonTypes.Bronze: return(Constants.DamageTypes.Lightning); case Constants.DragonTypes.Copper: case Constants.DragonTypes.Black: return(Constants.DamageTypes.Acid); case Constants.DragonTypes.Green: return(Constants.DamageTypes.Poison); case Constants.DragonTypes.Gold: case Constants.DragonTypes.Brass: case Constants.DragonTypes.Red: return(Constants.DamageTypes.Fire); case Constants.DragonTypes.Silver: case Constants.DragonTypes.White: return(Constants.DamageTypes.Cold); default: throw new System.InvalidCastException(); } }
public Race_Dragonborn(ICharacter character, Constants.LoadTypes lt) : base(lt) { SetComponent(character); AddSpecialFeature(Constants.SpecialFeatures.DragonbornDamageResistance); Constants.DragonTypes randomDragonType = (Constants.DragonTypes)(RNG.D(Enum.GetNames(typeof(Constants.DragonTypes)).Length - 1)); DragonTypeFeatures(randomDragonType); }
private void DragonTypeFeatures(Constants.DragonTypes dragonType) { AddRemoveResistance(DamageTypeFromDragonType(dragonType), true); Attacks() .Add( new Attack_Breath( DamageTypeFromDragonType(dragonType), ShapeFromDragonType(dragonType), SaveFromDragonType(dragonType), RangeFromDragonType(dragonType) ) ); }
private int RangeFromDragonType(Constants.DragonTypes _dragonType) { switch (_dragonType) { case Constants.DragonTypes.Blue: case Constants.DragonTypes.Bronze: case Constants.DragonTypes.Copper: case Constants.DragonTypes.Black: case Constants.DragonTypes.Brass: return(30); case Constants.DragonTypes.Gold: case Constants.DragonTypes.Red: case Constants.DragonTypes.Green: case Constants.DragonTypes.Silver: case Constants.DragonTypes.White: return(15); default: throw new System.InvalidCastException(); } }
private Constants.Abilities SaveFromDragonType(Constants.DragonTypes _dragonType) { switch (_dragonType) { case Constants.DragonTypes.Blue: case Constants.DragonTypes.Bronze: case Constants.DragonTypes.Copper: case Constants.DragonTypes.Black: case Constants.DragonTypes.Brass: case Constants.DragonTypes.Gold: case Constants.DragonTypes.Red: return(Constants.Abilities.Dexterity); case Constants.DragonTypes.Green: case Constants.DragonTypes.Silver: case Constants.DragonTypes.White: return(Constants.Abilities.Constitution); default: throw new System.InvalidCastException(); } }