public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (map.Rand.Next(Odds) == 0) { newChar.BaseForm.Skin = 1; } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (newChar.MemberTeam is MonsterTeam) { newChar.MemberTeam.FoeConflict = true; } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { foreach (BattleEvent effect in CheckEvents) { newChar.ActionEvents.Add((BattleEvent)effect.Clone()); } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (newChar.MemberTeam is MonsterTeam) { ((MonsterTeam)newChar.MemberTeam).Unrecruitable = true; } newChar.BaseForm.Skin = 0; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (MapStartOnly && map.Begun) { return; } newChar.EquippedItem = Items.Pick(map.Rand); }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { newChar.MaxHPBonus = Math.Min(MaxHPBonus, MonsterFormData.MAX_STAT_BOOST); newChar.AtkBonus = Math.Min(AtkBonus, MonsterFormData.MAX_STAT_BOOST); newChar.DefBonus = Math.Min(DefBonus, MonsterFormData.MAX_STAT_BOOST); newChar.MAtkBonus = Math.Min(SpAtkBonus, MonsterFormData.MAX_STAT_BOOST); newChar.MDefBonus = Math.Min(SpDefBonus, MonsterFormData.MAX_STAT_BOOST); newChar.SpeedBonus = Math.Min(SpeedBonus, MonsterFormData.MAX_STAT_BOOST); newChar.HP = newChar.MaxHP; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (MapStartOnly && map.Begun) { return; } for (int ii = 0; ii < Items.Count; ii++) { newChar.MemberTeam.AddToInv(Items[ii], true); } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { int clampedLevel = Math.Clamp(newChar.Level, LevelRange.Min, LevelRange.Max); newChar.MaxHPBonus = Math.Min(MaxHPBonus.Min + MaxHPBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.AtkBonus = Math.Min(AtkBonus.Min + AtkBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.DefBonus = Math.Min(DefBonus.Min + DefBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.MAtkBonus = Math.Min(SpAtkBonus.Min + SpAtkBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.MDefBonus = Math.Min(SpDefBonus.Min + SpDefBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.SpeedBonus = Math.Min(SpeedBonus.Min + SpeedBonus.Length * (clampedLevel - LevelRange.Min) / LevelRange.Length, MonsterFormData.MAX_STAT_BOOST); newChar.HP = newChar.MaxHP; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { //set the newChar's uses to 50% (ceiling), hunger to 35% newChar.Fullness = 35; for (int ii = 0; ii < newChar.Skills.Count; ii++) { if (newChar.Skills[ii].Element.SkillNum > -1) { SkillData data = DataManager.Instance.GetSkill(newChar.Skills[ii].Element.SkillNum); newChar.SetSkillCharges(ii, (data.BaseCharges - 1) / 2 + 1); } } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { StatusEffect status = Statuses.Pick(map.Rand).Clone();//Clone Use Case; convert to Instantiate? status.LoadFromData(); StatusData entry = (StatusData)status.GetData(); if (!entry.Targeted)//no targeted statuses allowed { //need to also add the additional status states newChar.StatusEffects.Add(status.ID, status); } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { if (Remove) { for (int ii = StartAt; ii < Character.MAX_SKILL_SLOTS; ii++) { newChar.DeleteSkill(StartAt); } } else { for (int ii = StartAt; ii < Character.MAX_SKILL_SLOTS; ii++) { newChar.Skills[ii].Element.Enabled = false; } } }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { newChar.Discriminator = Discriminator; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { newChar.LuaDataTable = LuaEngine.Instance.RunString("return " + LuaTable).First() as LuaTable; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { newChar.CharLoc = Loc; newChar.CharDir = Dir; }
public override void ApplyFeature(IMobSpawnMap map, Character newChar) { newChar.Level += (map.ID - StartFromID) * AddNumerator / AddDenominator; newChar.HP = newChar.MaxHP; }
public abstract void ApplyFeature(IMobSpawnMap map, Character newChar);