public static void AdjustFavor(this CharacterInstance ch, DeityFieldTypes field, int mod) { if (ch.IsNpc() || ch.PlayerData.CurrentDeity == null) { return; } int oldfavor = ch.PlayerData.Favor; DeityData deity = ch.PlayerData.CurrentDeity; if (((ch.CurrentAlignment - deity.Alignment) > 650) || ((ch.CurrentAlignment - deity.Alignment) < -650) && (deity.Alignment != 0)) { ch.PlayerData.Favor -= 2; ch.PlayerData.Favor = ch.PlayerData.Favor.GetNumberThatIsBetween(-2500, 2500); deity.UpdateCharacterBits(ch); ch.CheckForExtremeFavor(oldfavor); } else { ch.PlayerData.Favor += deity.FuzzifyFavor(field, mod < 1 ? 1 : mod); ch.PlayerData.Favor = ch.PlayerData.Favor.GetNumberThatIsBetween(-2500, 2500); } }
private static ApplyTypes GetApplyTypeForDeity(DeityData deityData) { switch (deityData.ObjStat) { case 0: return(ApplyTypes.Strength); case 1: return(ApplyTypes.Intelligence); case 2: return(ApplyTypes.Wisdom); case 3: return(ApplyTypes.Constitution); case 4: return(ApplyTypes.Dexterity); case 5: return(ApplyTypes.Charisma); case 6: return(ApplyTypes.Luck); } return(ApplyTypes.None); }
public static void CheckForExtremeFavor(this CharacterInstance ch, int oldfavor) { DeityData deity = ch.PlayerData.CurrentDeity; if ((oldfavor > deity.AffectedNum && ch.PlayerData.Favor <= deity.AffectedNum) || (oldfavor > deity.ElementNum && ch.PlayerData.Favor <= deity.Element) || (oldfavor < deity.SusceptNum && ch.PlayerData.Favor >= deity.SusceptNum)) { ch.update_aris(); } }
public static DeityData LuaCreateDeity(string name) { var newDeity = new DeityData(_dbManager.GenerateNewId <DeityData>(), name); _luaManager.Proxy.CreateTable("deity"); AddLastObject(newDeity); _dbManager.AddToRepository(newDeity); _logManager.Boot("Deity '{0}' created", name); return(newDeity); }
private static bool WillDeityDenyPlayerGender(CharacterInstance ch, DeityData deity) { return(deity.Gender != -1 && (Common.EnumerationExtensions.GetEnum <GenderTypes>(deity.Gender) != ch.Gender)); }
private static bool WillDeityDenyPlayerRace(CharacterInstance ch, DeityData deity) { return(deity.Race != -1 && deity.Race2 != -1 && (Common.EnumerationExtensions.GetEnum <RaceTypes>(deity.Race) != ch.CurrentRace) && (Common.EnumerationExtensions.GetEnum <RaceTypes>(deity.Race2) != ch.CurrentRace)); }
private static bool WillDeityDenyPlayerClass(CharacterInstance ch, DeityData deity) { return(deity.Class != -1 && (Common.EnumerationExtensions.GetEnum <ClassTypes>(deity.Class) != ch.CurrentClass)); }