Ejemplo n.º 1
0
    public DeathListTracker(string faction)
    {
        LogDebug("DeathListTracker ctor: " + faction);

        this.faction = faction;
        factionDef   = sim.GetFactionDef(faction);

        // TODO comment this
        foreach (var factionNames in IncludedFactions)
        {
            var def = sim.GetFactionDef(factionNames);
            if (!IncludedFactions.Contains(def.FactionValue.Name))
            {
                continue;
            }
            if (factionDef != def && factionDef.Enemies.Contains(def.FactionValue.Name))
            {
                deathList.Add(def.FactionValue.Name, Settings.KLValuesEnemies);
            }
            else if (factionDef != def && factionDef.Allies.Contains(def.FactionValue.Name))
            {
                deathList.Add(def.FactionValue.Name, Settings.KLValueAllies);
            }
            else if (factionDef != def)
            {
                deathList.Add(def.FactionValue.Name, Settings.KLValuesNeutral);
            }
        }
    }
Ejemplo n.º 2
0
        static void Postfix(SimGameState __instance, ref Contract contract)
        {
            var   MRBRep    = __instance.GetRawReputation(__instance.GetFactionDef("MercenaryReviewBoard").FactionValue);
            float initialCV = (float)contract.InitialContractValue;
            int   newInitialContractValue = (int)(initialCV + initialCV * (MRBRep / __instance.Constants.Story.MRBRepMaxCap));

            Traverse.Create(contract).Property("InitialContractValue").SetValue(newInitialContractValue);
        }