void OnSpellTilesAffect(Spellcaster caster) { var endHover = false; foreach (var tile in caster.AvailableTiles) { foreach (var entity in tile.Entities) { if (!(entity is TileableBase tileable)) { return; } var component = (Component)entity; if (!component.TryGet <InfoAnchor>(out var anchor)) { continue; } if (hasHoverInfo && !endHover && tileable.Navigator.Current == hoverInfo.Tile) { endHover = true; } spellInfos.Add(SetupInfoFor(anchor, tileable)); } } if (endHover) { OnHoverEnd(); } }
// Use this for initialization void Start () { stamina = 100; setElementType(); seekBehaviour = this.GetComponentInParent<SeekBehaviour>(); spellcaster = this.GetComponentInParent<Spellcaster>(); }
// Use this for initialization void Start() { buffer = new List<DancePose>(); beatTime = 60 / bpm; InvokeRepeating("PermanentClock", beatTime / 2, beatTime+0.02f); arms = GetComponent<DancingArms>(); spellcaster = GetComponent<Spellcaster>(); }
// Use this for initialization void Start() { buffer = new List <DancePose>(); beatTime = 60 / bpm; InvokeRepeating("PermanentClock", beatTime / 2, beatTime + 0.02f); arms = GetComponent <DancingArms>(); spellcaster = GetComponent <Spellcaster>(); }
// determines if a spellcaster also have known spells public bool IsKnownlerOfSpells(Spellcaster spellcaster) { if (spellcaster is KnowlerOfSpells) { return(true); } else { return(false); } }
private bool Hit() { Actor target_actor = Target.GetComponent <Actor>(); int roll = Me.Actions.RollDie(20, 1, Advantage, Disadvantage); if (target_actor != null) { return(roll + Spellcaster.AttackModifier() > target_actor.Actions.Stats.GetArmorClass()); } return(false); }
private void SetAdditionalStats() { Me.Actions.Combat.EquipArmor(Armors.Instance.GetArmorNamed(Armors.ArmorName.None)); Me.Actions.Combat.EquipMeleeWeapon(Weapons.Instance.GetWeaponNamed(Weapons.WeaponName.Club)); Spellcaster = Me.gameObject.AddComponent <Spellcaster>(); Spellcaster.CastingAttribute = Proficiencies.Attribute.Wisdom; Spellcaster.MaximumSpellSlots[Magic.Level.First] = 3; Spellcaster.SpellsLeft[Magic.Level.First] = 3; CureWounds = Me.Actions.Magic.gameObject.AddComponent <CureWounds>(); SacredFlame = Me.Actions.Magic.gameObject.AddComponent <SacredFlame>(); Sanctuary = Me.Actions.Magic.gameObject.AddComponent <Sanctuary>(); }
private void comboBoxClasses_SelectedIndexChanged(object sender, EventArgs e) { if (!string.Equals(comboBoxClasses.Text, "Choose a Class")) { _currentSpellcaster = _spellcastersList.Find(x => x.ClassName == comboBoxClasses.Text.ToString()); labelBaseScore.Text = _currentSpellcaster.KeyAttribute; ShowSpellsDC(); ShowExtraSpells(); ShowSpellsPerDay(); bool signal = _selector.IsKnownlerOfSpells(_currentSpellcaster); ShowKnownSpells(signal); ResetKnownSpells(signal); buttonRegainSpells.Enabled = true; EnableOnlyNnecessaryButtons(); } }
// determines if a spellcastar is based on charisma, intelligence or wisdom public void Select(Spellcaster spellcaster, string keyAttributeName, int attributeScore) { switch (keyAttributeName) { case "Charisma": spellcaster.Charisma = attributeScore; spellcaster.KeyAttributeModifier = spellcaster.GetModifier(spellcaster.Charisma); break; case "Intelligence": spellcaster.Intelligence = attributeScore; spellcaster.KeyAttributeModifier = spellcaster.GetModifier(spellcaster.Intelligence); break; case "Wisdom": spellcaster.Wisdom = attributeScore; spellcaster.KeyAttributeModifier = spellcaster.GetModifier(spellcaster.Wisdom); break; } }
private static void MeleeAttacks(Melee fighter, Spellcaster caster) { caster.TakeDamage(fighter.Attack(), fighter.Name, fighter.GetType().ToString()); }
private static void CasterAttacks(Spellcaster caster, Melee fighter) { fighter.TakeDamage(caster.Attack(), caster.Name, caster.GetType().ToString()); }
private static void GetFighters(Random rng, List <Melee> meleeTeam, List <Spellcaster> spellTeam, out Melee melee, out Spellcaster caster) { melee = GetMelee(meleeTeam, rng); caster = GetCaster(spellTeam, rng); }
private void AddSpellcasterClass(Spellcaster spellcasterCharacter) { _spellcastersList.Add(spellcasterCharacter); comboBoxClasses.Items.Add(spellcasterCharacter.ClassName.ToString()); }
private void InitializeClasses() { _currentSpellcaster = new Spellcaster(); _selector = new CasterSelector(); comboBoxClasses.Items.Add("Choose a Class"); Bard bard = new Bard() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Charisma = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(bard); AddKnowlerOfSpellsClass(bard); Cleric cleric = new Cleric() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Wisdom = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(cleric); Druid druid = new Druid() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Wisdom = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(druid); Paladin paladin = new Paladin() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Charisma = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(paladin); Ranger ranger = new Ranger() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Wisdom = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(ranger); Sorcerer sorcerer = new Sorcerer() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Charisma = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(sorcerer); AddKnowlerOfSpellsClass(sorcerer); Wizard wizard = new Wizard() { CharacterLevel = Convert.ToInt32(comboBoxLevel.Text), Intelligence = Convert.ToInt32(textBoxKeyAttribute.Text) }; AddSpellcasterClass(wizard); comboBoxClasses.SelectedIndex = 0; }