예제 #1
0
 public void ExposeData()
 {
     Scribe_Defs.Look(ref def, "def");
     Scribe_Defs.Look(ref stuffDef, "stuffDef");
     Scribe_Values.Look(ref gender, "gender");
     Scribe_Deep.Look(ref thing, "thing");
     Scribe_Deep.Look(ref tradeable, true, "tradeable", null, thing);
     Scribe_Defs.Look(ref pawnDef, "pawnDef");
     Scribe_Values.Look(ref type, "type", ThingType.Other);
     Scribe_Values.Look(ref stackSize, "stackSize");
     Scribe_Values.Look(ref cost, "cost");
     Scribe_Values.Look(ref color, "color");
     Scribe_Values.Look(ref stacks, "stacks");
     Scribe_Values.Look(ref gear, "gear");
     Scribe_Values.Look(ref animal, "animal");
     Scribe_Values.Look(ref label, "label");
     Scribe_Values.Look(ref hideFromPortrait, "hideFromPortrait");
 }
예제 #2
0
 public override void PostExposeData()
 {
     base.PostExposeData();
     Scribe_Values.Look(ref nextPawnSpawnTick, "nextPawnSpawnTick", 0);
     Scribe_Values.Look(ref pawnsLeftToSpawn, "pawnsLeftToSpawn", -1);
     Scribe_Collections.Look(ref spawnedPawns, "spawnedPawns", LookMode.Reference);
     Scribe_Values.Look(ref aggressive, "aggressive", defaultValue: false);
     Scribe_Values.Look(ref canSpawnPawns, "canSpawnPawns", defaultValue: true);
     Scribe_Defs.Look(ref chosenKind, "chosenKind");
     if (Scribe.mode == LoadSaveMode.PostLoadInit)
     {
         spawnedPawns.RemoveAll((Pawn x) => x == null);
         if (pawnsLeftToSpawn == -1 && Props.maxPawnsToSpawn != IntRange.zero)
         {
             pawnsLeftToSpawn = Props.maxPawnsToSpawn.RandomInRange;
         }
     }
 }
        public override void ExposeData()
        {
            base.ExposeData();
            Scribe_Deep.Look <ThingOwner>(ref this.innerContainer, "innerContainer", new object[]
            {
                this
            });
            Scribe_References.Look(ref originalMap, "originalMap");
            Scribe_Values.Look <int>(ref ticksToExit, "ticksToExit", 0, false);
            Scribe_Values.Look <float>(ref angle, "angle", 0f, false);
            Scribe_Values.Look(ref sourceLandingSpot, "sourceLandingSpot");
            Scribe_Collections.Look <IntVec3>(ref bombCells, "bombCells", LookMode.Value);

            Scribe_Values.Look(ref numberOfBombs, "numberOfBombs");
            Scribe_Values.Look(ref speed, "speed");
            Scribe_Values.Look(ref radius, "radius");
            Scribe_Defs.Look(ref sound, "sound");
        }
 public override void ExposeData()
 {
     Scribe_References.Look(ref pawn, "pawn", saveDestroyedThings: true);
     Scribe_Defs.Look(ref kind, "kind");
     Scribe_References.Look(ref faction, "faction");
     Scribe_Values.Look(ref gender, "gender", Gender.None);
     Scribe_Values.Look(ref age, "age", 0);
     Scribe_Values.Look(ref chronologicalAge, "chronologicalAge", 0);
     Scribe_Values.Look(ref relationInfo, "relationInfo");
     Scribe_Values.Look(ref everBeenColonistOrTameAnimal, "everBeenColonistOrTameAnimal", defaultValue: false);
     Scribe_Values.Look(ref everBeenQuestLodger, "everBeenQuestLodger", defaultValue: false);
     Scribe_Values.Look(ref isFactionLeader, "isFactionLeader", defaultValue: false);
     Scribe_Collections.Look(ref royalTitles, "royalTitles", LookMode.Deep);
     Scribe_Deep.Look(ref name, "name");
     Scribe_Values.Look(ref title, "title");
     Scribe_Defs.Look(ref primaryEquipment, "peq");
     Scribe_Defs.Look(ref notableApparel, "app");
 }
예제 #5
0
        public override void PostExposeData()
        {
            Scribe_Values.Look <bool>(ref loaded, "loaded", false, false);
            Scribe_Defs.Look <ThingDef>(ref loadedBedding, "loadedBedding");
            Scribe_Deep.Look <Thing>(ref bedding, "bedding", new object[0]);
            Scribe_Defs.Look <ThingDef>(ref blanketStuff, "blanketStuff");
            if (loaded && blanketDef != null)
            {
                Building_Blanket blanket = bedding as Building_Blanket;
                //Scribe_Values.Look<bool>(ref blanket.hasColor, "hasColor", false, false);
            }

            Scribe_Deep.Look <StorageSettings>(ref settings, "settings", new object[] { this });
            if (settings == null)
            {
                SetUpStorageSettings();
            }
        }
예제 #6
0
            public void ExposeData()
            {
                if (Scribe.mode == LoadSaveMode.Saving)
                {
                    Scribe_Values.Look(ref opt.text, "text");
                    Scribe_Values.Look(ref opt.resolveTree, "resolveTree");
                    ScribeUtil.LookValue(parent.saveNodes.FindIndex(n => n.node == opt.link), "linkIndex", true);
                    Scribe_Values.Look(ref opt.disabled, "disabled");
                    Scribe_Values.Look(ref opt.disabledReason, "disabledReason");
                    Scribe_Defs.Look(ref opt.clickSound, "clickSound");

                    ScribeUtil.LookValue(parent.fieldValues.FindIndex(f => Equals(f.value, opt.action)), "actionIndex", true);
                    ScribeUtil.LookValue(parent.fieldValues.FindIndex(f => Equals(f.value, opt.linkLateBind)), "linkLateBindIndex", true);
                }

                if (Scribe.mode == LoadSaveMode.LoadingVars)
                {
                    Scribe_Values.Look(ref text, "text");
                    Scribe_Values.Look(ref resolveTree, "resolveTree");
                    Scribe_Values.Look(ref linkIndex, "linkIndex", -1);
                    Scribe_Values.Look(ref disabled, "disabled");
                    Scribe_Values.Look(ref disabledReason, "disabledReason");
                    Scribe_Defs.Look(ref clickSound, "clickSound");

                    Scribe_Values.Look(ref actionIndex, "actionIndex");
                    Scribe_Values.Look(ref linkLateBindIndex, "linkLateBindIndex");

                    opt = new DiaOption()
                    {
                        text           = text,
                        resolveTree    = resolveTree,
                        disabled       = disabled,
                        disabledReason = disabledReason,
                        clickSound     = clickSound
                    };
                }

                if (Scribe.mode == LoadSaveMode.PostLoadInit)
                {
                    opt.link         = parent.saveNodes.ElementAtOrDefault(linkIndex)?.node;
                    opt.action       = (Action)parent.fieldValues.ElementAtOrDefault(actionIndex)?.value;
                    opt.linkLateBind = (Func <DiaNode>)parent.fieldValues.ElementAtOrDefault(linkLateBindIndex)?.value;
                }
            }
예제 #7
0
        public override void ExposeData()
        {
            base.ExposeData();
            Scribe_Values.Look <float>(ref this.radius, "radius", 0f, false);
            Scribe_Defs.Look <DamageDef>(ref this.damType, "damType");
            Scribe_Values.Look <int>(ref this.damAmount, "damAmount", 0, false);
            Scribe_Values.Look <float>(ref this.armorPenetration, "armorPenetration", 0f, false);
            Scribe_References.Look <Thing>(ref this.instigator, "instigator", false);
            Scribe_Defs.Look <ThingDef>(ref this.weapon, "weapon");
            Scribe_Defs.Look <ThingDef>(ref this.projectile, "projectile");
            Scribe_References.Look <Thing>(ref this.intendedTarget, "intendedTarget", false);
            Scribe_Values.Look <bool>(ref this.applyDamageToExplosionCellsNeighbors, "applyDamageToExplosionCellsNeighbors", false, false);
            Scribe_Defs.Look <ThingDef>(ref this.preExplosionSpawnThingDef, "preExplosionSpawnThingDef");
            Scribe_Values.Look <float>(ref this.preExplosionSpawnChance, "preExplosionSpawnChance", 0f, false);
            Scribe_Values.Look <int>(ref this.preExplosionSpawnThingCount, "preExplosionSpawnThingCount", 1, false);
            Scribe_Defs.Look <ThingDef>(ref this.postExplosionSpawnThingDef, "postExplosionSpawnThingDef");
            Scribe_Values.Look <float>(ref this.postExplosionSpawnChance, "postExplosionSpawnChance", 0f, false);
            Scribe_Values.Look <int>(ref this.postExplosionSpawnThingCount, "postExplosionSpawnThingCount", 1, false);
            Scribe_Values.Look <float>(ref this.chanceToStartFire, "chanceToStartFire", 0f, false);
            Scribe_Values.Look <bool>(ref this.damageFalloff, "dealMoreDamageAtCenter", false, false);
            Scribe_Values.Look <IntVec3?>(ref this.needLOSToCell1, "needLOSToCell1", null, false);
            Scribe_Values.Look <IntVec3?>(ref this.needLOSToCell2, "needLOSToCell2", null, false);
            Scribe_Values.Look <int>(ref this.startTick, "startTick", 0, false);
            Scribe_Collections.Look <IntVec3>(ref this.cellsToAffect, "cellsToAffect", LookMode.Value, Array.Empty <object>());
            Scribe_Collections.Look <Thing>(ref this.damagedThings, "damagedThings", LookMode.Reference, Array.Empty <object>());
            Scribe_Collections.Look <Thing>(ref this.ignoredThings, "ignoredThings", LookMode.Reference, Array.Empty <object>());
            Scribe_Collections.Look <IntVec3>(ref this.addedCellsAffectedOnlyByDamage, "addedCellsAffectedOnlyByDamage", LookMode.Value);
            bool flag = Scribe.mode == LoadSaveMode.PostLoadInit;

            if (flag)
            {
                List <Thing> list = this.damagedThings;
                if (list != null)
                {
                    list.RemoveAll((Thing x) => x == null);
                }
                List <Thing> list2 = this.ignoredThings;
                if (list2 != null)
                {
                    list2.RemoveAll((Thing x) => x == null);
                }
            }
        }
예제 #8
0
 public void ExposeData()
 {
     Scribe_Defs.Look <StorytellerDef>(ref this.def, "def");
     Scribe_Defs.Look <DifficultyDef>(ref this.difficulty, "difficulty");
     Scribe_Deep.Look <IncidentQueue>(ref this.incidentQueue, "incidentQueue", new object[0]);
     Scribe_Deep.Look <StoryIntender_Population>(ref this.intenderPopulation, "intenderPopulation", new object[]
     {
         this
     });
     if (this.difficulty == null)
     {
         Log.Error("Loaded storyteller without difficulty");
         this.difficulty = DefDatabase <DifficultyDef> .AllDefsListForReading[3];
     }
     if (Scribe.mode == LoadSaveMode.ResolvingCrossRefs)
     {
         this.InitializeStorytellerComps();
     }
 }
예제 #9
0
 public virtual void ExposeData()
 {
     Scribe_Values.Look <int>(ref this.loadID, "loadID", 0, false);
     Scribe_Defs.Look <RecipeDef>(ref this.recipe, "recipe");
     Scribe_Values.Look <bool>(ref this.suspended, "suspended", false, false);
     Scribe_Values.Look <float>(ref this.ingredientSearchRadius, "ingredientSearchRadius", 999f, false);
     Scribe_Values.Look <IntRange>(ref this.allowedSkillRange, "allowedSkillRange", default(IntRange), false);
     if (Scribe.mode == LoadSaveMode.Saving && this.recipe.fixedIngredientFilter != null)
     {
         foreach (ThingDef current in DefDatabase <ThingDef> .AllDefs)
         {
             if (!this.recipe.fixedIngredientFilter.Allows(current))
             {
                 this.ingredientFilter.SetAllow(current, false);
             }
         }
     }
     Scribe_Deep.Look <ThingFilter>(ref this.ingredientFilter, "ingredientFilter", new object[0]);
 }
 public override void ExposeData()
 {
     base.ExposeData();
     Scribe_Values.Look <int>(ref this.repeatCount, "repeatCount", 0, false);
     Scribe_Values.Look <int>(ref this.targetCount, "targetCount", 0, false);
     Scribe_Defs.Look <BillRepeatModeDef>(ref this.repeatMode, "repeatMode");
     Scribe_Defs.Look <BillStoreModeDef>(ref this.storeMode, "storeMode");
     Scribe_Values.Look <bool>(ref this.pauseWhenSatisfied, "pauseWhenSatisfied", false, false);
     Scribe_Values.Look <int>(ref this.unpauseWhenYouHave, "unpauseWhenYouHave", 0, false);
     Scribe_Values.Look <bool>(ref this.paused, "paused", false, false);
     if (this.repeatMode == null)
     {
         this.repeatMode = BillRepeatModeDefOf.RepeatCount;
     }
     if (this.storeMode == null)
     {
         this.storeMode = BillStoreModeDefOf.BestStockpile;
     }
 }
예제 #11
0
 public void ExposeData()
 {
     Scribe_References.Look <IIncidentTarget>(ref this.target, "target", false);
     Scribe_Values.Look <float>(ref this.points, "threatPoints", 0f, false);
     Scribe_References.Look <Faction>(ref this.faction, "faction", false);
     Scribe_Values.Look <bool>(ref this.forced, "forced", false, false);
     Scribe_Values.Look <IntVec3>(ref this.spawnCenter, "spawnCenter", default(IntVec3), false);
     Scribe_Values.Look <Rot4>(ref this.spawnRotation, "spawnRotation", default(Rot4), false);
     Scribe_Values.Look <bool>(ref this.generateFightersOnly, "generateFightersOnly", false, false);
     Scribe_Values.Look <bool>(ref this.dontUseSingleUseRocketLaunchers, "dontUseSingleUseRocketLaunchers", false, false);
     Scribe_Defs.Look <RaidStrategyDef>(ref this.raidStrategy, "raidStrategy");
     Scribe_Defs.Look <PawnsArrivalModeDef>(ref this.raidArrivalMode, "raidArrivalMode");
     Scribe_Values.Look <bool>(ref this.raidForceOneIncap, "raidForceIncap", false, false);
     Scribe_Values.Look <bool>(ref this.raidNeverFleeIndividual, "raidNeverFleeIndividual", false, false);
     Scribe_Values.Look <bool>(ref this.raidArrivalModeForQuickMilitaryAid, "raidArrivalModeForQuickMilitaryAid", false, false);
     Scribe_Collections.Look <Pawn, int>(ref this.pawnGroups, "pawnGroups", LookMode.Reference, LookMode.Value, ref this.tmpPawns, ref this.tmpGroups);
     Scribe_Defs.Look <TraderKindDef>(ref this.traderKind, "traderKind");
     Scribe_Values.Look <int>(ref this.podOpenDelay, "podOpenDelay", 140, false);
 }
예제 #12
0
        public void ExposeData()
        {
            Scribe_Values.Look <int>(ref this.tideLevel, "tideLevel", this.tideLevel, true);
            Scribe_Collections.Look <int>(ref this.floodLevel, "floodLevel", LookMode.Value);
            Scribe_Values.Look <int>(ref this.howWet, "howWet", this.howWet, true);
            Scribe_Values.Look <float>(ref this.frostLevel, "frostLevel", this.frostLevel, true);
            Scribe_Values.Look <bool>(ref this.isWet, "isWet", this.isWet, true);
            Scribe_Values.Look <bool>(ref this.isFlooded, "isFlooded", this.isFlooded, true);
            Scribe_Values.Look <bool>(ref this.isMelt, "isMelt", this.isMelt, true);
            Scribe_Values.Look <string>(ref this.overrideType, "overrideType", this.overrideType, true);

            Scribe_Values.Look <bool>(ref this.isThawed, "isThawed", this.isThawed, true);



            Scribe_Values.Look <IntVec3>(ref this.location, "location", this.location, true);
            Scribe_Values.Look <float>(ref this.temperature, "temperature", -999, true);
            Scribe_Defs.Look <TerrainDef>(ref this.baseTerrain, "baseTerrain");
        }
예제 #13
0
 public void ExposeData()
 {
     Scribe_Defs.Look(ref def, "def");
     Scribe_Deep.Look(ref travelTracker, "travelTracker", new object[]
     {
         def.travelSettings
     });
     Scribe_Deep.Look(ref thingTracker, "thingTracker", new object[]
     {
         def.targetSettings
     });
     Scribe_References.Look(ref parentMission, "parent");
     Scribe_Values.Look(ref startedOnce, "startedOnce");
     Scribe_Values.Look(ref finishedOnce, "finishedOnce");
     Scribe_Values.Look(ref failedOnce, "failedOnce");
     Scribe_Values.Look(ref workDone, "workDone");
     Scribe_Values.Look(ref timer, "timer");
     Scribe_TargetInfo.Look(ref lastTarget, "lastTarget");
 }
        public void ExposeData()
        {
            string text = (this.childhood == null) ? null : this.childhood.identifier;

            Scribe_Values.Look <string>(ref text, "childhood", null, false);
            if (Scribe.mode == LoadSaveMode.LoadingVars && !text.NullOrEmpty())
            {
                if (!BackstoryDatabase.TryGetWithIdentifier(text, out this.childhood, true))
                {
                    Log.Error("Couldn't load child backstory with identifier " + text + ". Giving random.", false);
                    this.childhood = BackstoryDatabase.RandomBackstory(BackstorySlot.Childhood);
                }
            }
            string text2 = (this.adulthood == null) ? null : this.adulthood.identifier;

            Scribe_Values.Look <string>(ref text2, "adulthood", null, false);
            if (Scribe.mode == LoadSaveMode.LoadingVars && !text2.NullOrEmpty())
            {
                if (!BackstoryDatabase.TryGetWithIdentifier(text2, out this.adulthood, true))
                {
                    Log.Error("Couldn't load adult backstory with identifier " + text2 + ". Giving random.", false);
                    this.adulthood = BackstoryDatabase.RandomBackstory(BackstorySlot.Adulthood);
                }
            }
            Scribe_Defs.Look <BodyTypeDef>(ref this.bodyType, "bodyType");
            Scribe_Values.Look <CrownType>(ref this.crownType, "crownType", CrownType.Undefined, false);
            Scribe_Values.Look <string>(ref this.headGraphicPath, "headGraphicPath", null, false);
            Scribe_Defs.Look <HairDef>(ref this.hairDef, "hairDef");
            Scribe_Values.Look <Color>(ref this.hairColor, "hairColor", default(Color), false);
            Scribe_Values.Look <float>(ref this.melanin, "melanin", 0f, false);
            Scribe_Deep.Look <TraitSet>(ref this.traits, "traits", new object[]
            {
                this.pawn
            });
            Scribe_Values.Look <string>(ref this.title, "title", null, false);
            if (Scribe.mode == LoadSaveMode.PostLoadInit)
            {
                if (this.hairDef == null)
                {
                    this.hairDef = DefDatabase <HairDef> .AllDefs.RandomElement <HairDef>();
                }
            }
        }
예제 #15
0
        public void ExposeData()
        {
            var loadReferenceable = (ILoadReferenceable)commTarget;

            Scribe_References.Look(ref loadReferenceable, nameof(commTarget));
            commTarget = (ICommunicable)loadReferenceable;
            Scribe_References.Look(ref verbToUse, nameof(verbToUse));
            Scribe_References.Look(ref bill, nameof(bill));
            Scribe_References.Look(ref lord, nameof(lord));
            Scribe_Defs.Look(ref def, nameof(def));
            Scribe_TargetInfo.Look(ref targetA, nameof(targetA));
            Scribe_TargetInfo.Look(ref targetB, nameof(targetB));
            Scribe_TargetInfo.Look(ref targetC, nameof(targetC));
            Scribe_Collections.Look(ref targetQueueA, nameof(targetQueueA), LookMode.GlobalTargetInfo);
            Scribe_Collections.Look(ref targetQueueB, nameof(targetQueueB), LookMode.GlobalTargetInfo);
            Scribe_Values.Look(ref count, nameof(count), -1);
            Scribe_Collections.Look(ref countQueue, nameof(countQueue), LookMode.Value);
            Scribe_Values.Look(ref startTick, nameof(startTick), -1);
            Scribe_Values.Look(ref expiryInterval, nameof(expiryInterval), -1);
            Scribe_Values.Look(ref checkOverrideOnExpire, nameof(checkOverrideOnExpire));
            Scribe_Values.Look(ref playerForced, nameof(playerForced));
            Scribe_Collections.Look(ref placedThings, nameof(placedThings), LookMode.Deep);
            Scribe_Values.Look(ref maxNumMeleeAttacks, nameof(maxNumMeleeAttacks), int.MaxValue);
            Scribe_Values.Look(ref maxNumStaticAttacks, nameof(maxNumStaticAttacks), int.MaxValue);
            Scribe_Values.Look(ref exitMapOnArrival, nameof(exitMapOnArrival));
            Scribe_Values.Look(ref failIfCantJoinOrCreateCaravan, nameof(failIfCantJoinOrCreateCaravan));
            Scribe_Values.Look(ref killIncappedTarget, nameof(killIncappedTarget));
            Scribe_Values.Look(ref haulOpportunisticDuplicates, nameof(haulOpportunisticDuplicates));
            Scribe_Values.Look(ref haulMode, nameof(haulMode));
            Scribe_Defs.Look(ref plantDefToSow, nameof(plantDefToSow));
            Scribe_Values.Look(ref locomotionUrgency, nameof(locomotionUrgency), LocomotionUrgency.Jog);
            Scribe_Values.Look(ref ignoreDesignations, nameof(ignoreDesignations));
            Scribe_Values.Look(ref canBash, nameof(canBash));
            Scribe_Values.Look(ref haulDroppedApparel, nameof(haulDroppedApparel));
            Scribe_Values.Look(ref restUntilHealed, nameof(restUntilHealed));
            Scribe_Values.Look(ref ignoreJoyTimeAssignment, nameof(ignoreJoyTimeAssignment));
            Scribe_Values.Look(ref overeat, nameof(overeat));
            Scribe_Values.Look(ref attackDoorIfTargetLost, nameof(attackDoorIfTargetLost));
            Scribe_Values.Look(ref takeExtraIngestibles, nameof(takeExtraIngestibles));
            Scribe_Values.Look(ref expireRequiresEnemiesNearby, nameof(expireRequiresEnemiesNearby));
            Scribe_Values.Look(ref collideWithCaravans, nameof(collideWithCaravans));
        }
예제 #16
0
        public void ExposeData()
        {
            ILoadReferenceable loadReferenceable = (ILoadReferenceable)this.commTarget;

            Scribe_References.Look <ILoadReferenceable>(ref loadReferenceable, "commTarget", false);
            this.commTarget = (ICommunicable)loadReferenceable;
            Scribe_References.Look <Verb>(ref this.verbToUse, "verbToUse", false);
            Scribe_References.Look <Bill>(ref this.bill, "bill", false);
            Scribe_References.Look <Lord>(ref this.lord, "lord", false);
            Scribe_Defs.Look <CaravanJobDef>(ref this.def, "def");
            Scribe_TargetInfo.Look(ref this.targetA, "targetA");
            Scribe_TargetInfo.Look(ref this.targetB, "targetB");
            Scribe_TargetInfo.Look(ref this.targetC, "targetC");
            Scribe_Collections.Look <GlobalTargetInfo>(ref this.targetQueueA, "targetQueueA", LookMode.Undefined, new object[0]);
            Scribe_Collections.Look <GlobalTargetInfo>(ref this.targetQueueB, "targetQueueB", LookMode.Undefined, new object[0]);
            Scribe_Values.Look <int>(ref this.count, "count", -1, false);
            Scribe_Collections.Look <int>(ref this.countQueue, "countQueue", LookMode.Undefined, new object[0]);
            Scribe_Values.Look <int>(ref this.startTick, "startTick", -1, false);
            Scribe_Values.Look <int>(ref this.expiryInterval, "expiryInterval", -1, false);
            Scribe_Values.Look <bool>(ref this.checkOverrideOnExpire, "checkOverrideOnExpire", false, false);
            Scribe_Values.Look <bool>(ref this.playerForced, "playerForced", false, false);
            Scribe_Collections.Look <ThingStackPartClass>(ref this.placedThings, "placedThings", LookMode.Undefined, new object[0]);
            Scribe_Values.Look <int>(ref this.maxNumMeleeAttacks, "maxNumMeleeAttacks", 2147483647, false);
            Scribe_Values.Look <int>(ref this.maxNumStaticAttacks, "maxNumStaticAttacks", 2147483647, false);
            Scribe_Values.Look <bool>(ref this.exitMapOnArrival, "exitMapOnArrival", false, false);
            Scribe_Values.Look <bool>(ref this.failIfCantJoinOrCreateCaravan, "failIfCantJoinOrCreateCaravan", false, false);
            Scribe_Values.Look <bool>(ref this.killIncappedTarget, "killIncappedTarget", false, false);
            Scribe_Values.Look <bool>(ref this.haulOpportunisticDuplicates, "haulOpportunisticDuplicates", false, false);
            Scribe_Values.Look <HaulMode>(ref this.haulMode, "haulMode", HaulMode.Undefined, false);
            Scribe_Defs.Look <ThingDef>(ref this.plantDefToSow, "plantDefToSow");
            Scribe_Values.Look <LocomotionUrgency>(ref this.locomotionUrgency, "locomotionUrgency", LocomotionUrgency.Jog, false);
            Scribe_Values.Look <bool>(ref this.ignoreDesignations, "ignoreDesignations", false, false);
            Scribe_Values.Look <bool>(ref this.canBash, "canBash", false, false);
            Scribe_Values.Look <bool>(ref this.haulDroppedApparel, "haulDroppedApparel", false, false);
            Scribe_Values.Look <bool>(ref this.restUntilHealed, "restUntilHealed", false, false);
            Scribe_Values.Look <bool>(ref this.ignoreJoyTimeAssignment, "ignoreJoyTimeAssignment", false, false);
            Scribe_Values.Look <bool>(ref this.overeat, "overeat", false, false);
            Scribe_Values.Look <bool>(ref this.attackDoorIfTargetLost, "attackDoorIfTargetLost", false, false);
            Scribe_Values.Look <int>(ref this.takeExtraIngestibles, "takeExtraIngestibles", 0, false);
            Scribe_Values.Look <bool>(ref this.expireRequiresEnemiesNearby, "expireRequiresEnemiesNearby", false, false);
            Scribe_Values.Look <bool>(ref this.collideWithCaravans, "collideWithCaravans", false, false);
        }
예제 #17
0
        public void ExposeData()
        {
            var loadReferenceable = (ILoadReferenceable)commTarget;

            Scribe_References.Look(ref loadReferenceable, "commTarget", false);
            commTarget = (ICommunicable)loadReferenceable;
            Scribe_References.Look(ref verbToUse, "verbToUse", false);
            Scribe_References.Look(ref bill, "bill", false);
            Scribe_References.Look(ref lord, "lord", false);
            Scribe_Defs.Look(ref def, "def");
            Scribe_TargetInfo.Look(ref targetA, "targetA");
            Scribe_TargetInfo.Look(ref targetB, "targetB");
            Scribe_TargetInfo.Look(ref targetC, "targetC");
            Scribe_Collections.Look(ref targetQueueA, "targetQueueA", LookMode.Undefined);
            Scribe_Collections.Look(ref targetQueueB, "targetQueueB", LookMode.Undefined);
            Scribe_Values.Look(ref count, "count", -1, false);
            Scribe_Collections.Look(ref countQueue, "countQueue", LookMode.Undefined);
            Scribe_Values.Look(ref startTick, "startTick", -1, false);
            Scribe_Values.Look(ref expiryInterval, "expiryInterval", -1, false);
            Scribe_Values.Look(ref checkOverrideOnExpire, "checkOverrideOnExpire", false, false);
            Scribe_Values.Look(ref playerForced, "playerForced", false, false);
            Scribe_Collections.Look(ref placedThings, "placedThings", LookMode.Undefined);
            Scribe_Values.Look(ref maxNumMeleeAttacks, "maxNumMeleeAttacks", 2147483647, false);
            Scribe_Values.Look(ref maxNumStaticAttacks, "maxNumStaticAttacks", 2147483647, false);
            Scribe_Values.Look(ref exitMapOnArrival, "exitMapOnArrival", false, false);
            Scribe_Values.Look(ref failIfCantJoinOrCreateCaravan, "failIfCantJoinOrCreateCaravan", false, false);
            Scribe_Values.Look(ref killIncappedTarget, "killIncappedTarget", false, false);
            Scribe_Values.Look(ref haulOpportunisticDuplicates, "haulOpportunisticDuplicates", false, false);
            Scribe_Values.Look(ref haulMode, "haulMode", HaulMode.Undefined, false);
            Scribe_Defs.Look(ref plantDefToSow, "plantDefToSow");
            Scribe_Values.Look(ref locomotionUrgency, "locomotionUrgency", LocomotionUrgency.Jog, false);
            Scribe_Values.Look(ref ignoreDesignations, "ignoreDesignations", false, false);
            Scribe_Values.Look(ref canBash, "canBash", false, false);
            Scribe_Values.Look(ref haulDroppedApparel, "haulDroppedApparel", false, false);
            Scribe_Values.Look(ref restUntilHealed, "restUntilHealed", false, false);
            Scribe_Values.Look(ref ignoreJoyTimeAssignment, "ignoreJoyTimeAssignment", false, false);
            Scribe_Values.Look(ref overeat, "overeat", false, false);
            Scribe_Values.Look(ref attackDoorIfTargetLost, "attackDoorIfTargetLost", false, false);
            Scribe_Values.Look(ref takeExtraIngestibles, "takeExtraIngestibles", 0, false);
            Scribe_Values.Look(ref expireRequiresEnemiesNearby, "expireRequiresEnemiesNearby", false, false);
            Scribe_Values.Look(ref collideWithCaravans, "collideWithCaravans", false, false);
        }
예제 #18
0
 public virtual void ExposeData()
 {
     Scribe_Values.Look(ref loadID, "loadID", 0);
     Scribe_Defs.Look(ref recipe, "recipe");
     Scribe_Values.Look(ref suspended, "suspended", defaultValue: false);
     Scribe_Values.Look(ref ingredientSearchRadius, "ingredientSearchRadius", 999f);
     Scribe_Values.Look(ref allowedSkillRange, "allowedSkillRange");
     Scribe_References.Look(ref pawnRestriction, "pawnRestriction");
     if (Scribe.mode == LoadSaveMode.Saving && recipe.fixedIngredientFilter != null)
     {
         foreach (ThingDef allDef in DefDatabase <ThingDef> .AllDefs)
         {
             if (!recipe.fixedIngredientFilter.Allows(allDef))
             {
                 ingredientFilter.SetAllow(allDef, allow: false);
             }
         }
     }
     Scribe_Deep.Look(ref ingredientFilter, "ingredientFilter");
 }
예제 #19
0
 // Token: 0x0600535F RID: 21343 RVA: 0x001BE0C8 File Offset: 0x001BC2C8
 public override void PostExposeData()
 {
     base.PostExposeData();
     Scribe_Values.Look <int>(ref this.nextPawnSpawnTick, "nextPawnSpawnTick", 0, false);
     Scribe_Values.Look <int>(ref this.initialSpawnDelay, "initialSpawnDelay", 0, false);
     Scribe_Values.Look <int>(ref this.pawnsLeftToSpawn, "pawnsLeftToSpawn", -1, false);
     Scribe_Collections.Look <Pawn>(ref this.spawnedPawns, "spawnedPawns", LookMode.Reference, Array.Empty <object>());
     Scribe_Values.Look <bool>(ref this.aggressive, "aggressive", false, false);
     Scribe_Values.Look <bool>(ref this.canSpawnPawns, "canSpawnPawns", true, false);
     Scribe_Defs.Look <PawnKindDef>(ref this.chosenKind, "chosenKind");
     Scribe_References.Look <Lord>(ref this.lord, "lord");
     if (Scribe.mode == LoadSaveMode.PostLoadInit)
     {
         this.spawnedPawns.RemoveAll((Pawn x) => x == null);
         if (this.pawnsLeftToSpawn == -1 && this.Props.maxPawnsToSpawn != IntRange.zero)
         {
             this.pawnsLeftToSpawn = this.Props.maxPawnsToSpawn.RandomInRange;
         }
     }
 }
예제 #20
0
        public override void ExposeData()
        {
            base.ExposeData();

            Scribe_Values.Look(ref beamWidth, "beamWidth");
            Scribe_Values.Look(ref beamLength, "beamLength");
            Scribe_Values.Look(ref flareWidth, "flareWidth");
            Scribe_Values.Look(ref flareWidthMod, "flareWidthMod");
            Scribe_Values.Look(ref flareLength, "flareLength");
            Scribe_Values.Look(ref flareLengthMod, "flareLengthMod");
            Scribe_Values.Look(ref ticks, "ticks");
            Scribe_Values.Look(ref colorIndex, "colorIndex");
            Scribe_Values.Look(ref a, "a");
            Scribe_Values.Look(ref b, "b");
            Scribe_Defs.Look(ref projDef, "projectileDef");
            Scribe_Defs.Look(ref effecterDef, "effecterDef");
            Scribe_References.Look(ref launcher, "launcher");
            Scribe_References.Look(ref verb, "weapon");
            Scribe_References.Look(ref hitThing, "hitThing");
        }
예제 #21
0
 public void ExposeData()
 {
     Scribe_References.Look(ref target, "target");
     Scribe_Values.Look(ref points, "threatPoints", 0f);
     Scribe_References.Look(ref faction, "faction");
     Scribe_Values.Look(ref forced, "forced", defaultValue: false);
     Scribe_Values.Look(ref spawnCenter, "spawnCenter");
     Scribe_Values.Look(ref spawnRotation, "spawnRotation");
     Scribe_Values.Look(ref generateFightersOnly, "generateFightersOnly", defaultValue: false);
     Scribe_Values.Look(ref dontUseSingleUseRocketLaunchers, "dontUseSingleUseRocketLaunchers", defaultValue: false);
     Scribe_Defs.Look(ref raidStrategy, "raidStrategy");
     Scribe_Defs.Look(ref raidArrivalMode, "raidArrivalMode");
     Scribe_Values.Look(ref raidForceOneIncap, "raidForceIncap", defaultValue: false);
     Scribe_Values.Look(ref raidNeverFleeIndividual, "raidNeverFleeIndividual", defaultValue: false);
     Scribe_Values.Look(ref raidArrivalModeForQuickMilitaryAid, "raidArrivalModeForQuickMilitaryAid", defaultValue: false);
     Scribe_Collections.Look(ref pawnGroups, "pawnGroups", LookMode.Reference, LookMode.Value, ref tmpPawns, ref tmpGroups);
     Scribe_Values.Look(ref pawnGroupMakerSeed, "pawnGroupMakerSeed");
     Scribe_Defs.Look(ref traderKind, "traderKind");
     Scribe_Values.Look(ref podOpenDelay, "podOpenDelay", 140);
 }
        public override void PostExposeData()
        {
            base.PostExposeData();
            Scribe_Values.Look(ref pawnGeneratedVersion, "pawnGeneratedVersion");

            Scribe_Values.Look(ref drawSizeDeviation, "drawSizeDeviation");

            Scribe_Values.Look(ref skinColor_Main, "skinColor_Main");
            Scribe_Values.Look(ref skinColor_Sub, "skinColor_Sub");
            Scribe_Defs.Look(ref torsoDef, "torsoDef");

            Scribe_Values.Look(ref faceColor_Main, "faceColor_Main");
            Scribe_Values.Look(ref faceColor_Sub, "faceColor_Sub");
            Scribe_Defs.Look(ref upperFaceDef, "upperFaceDef");
            Scribe_Defs.Look(ref lowerFaceDef, "lowerFaceDef");

            Scribe_Values.Look(ref hairColor_Sub, "hairColor_Sub");

            Scribe_Collections.Look(ref addonDatas, "addonDatas", LookMode.Deep);
        }
예제 #23
0
파일: Faction.cs 프로젝트: potsh/RimWorld
 public void ExposeData()
 {
     Scribe_References.Look(ref leader, "leader");
     Scribe_Defs.Look(ref def, "def");
     Scribe_Values.Look(ref name, "name");
     Scribe_Values.Look(ref loadID, "loadID", 0);
     Scribe_Values.Look(ref randomKey, "randomKey", 0);
     Scribe_Values.Look(ref colorFromSpectrum, "colorFromSpectrum", 0f);
     Scribe_Values.Look(ref centralMelanin, "centralMelanin", 0f);
     Scribe_Collections.Look(ref relations, "relations", LookMode.Deep);
     Scribe_Deep.Look(ref kidnapped, "kidnapped", this);
     Scribe_Collections.Look(ref predatorThreats, "predatorThreats", LookMode.Deep);
     Scribe_Values.Look(ref defeated, "defeated", defaultValue: false);
     Scribe_Values.Look(ref lastTraderRequestTick, "lastTraderRequestTick", -9999999);
     Scribe_Values.Look(ref lastMilitaryAidRequestTick, "lastMilitaryAidRequestTick", -9999999);
     Scribe_Values.Look(ref naturalGoodwillTimer, "naturalGoodwillTimer", 0);
     if (Scribe.mode == LoadSaveMode.PostLoadInit)
     {
         predatorThreats.RemoveAll((PredatorThreat x) => x.predator == null);
     }
 }
예제 #24
0
        public override void ExposeData()
        {
            if (deities == null)
            {
                deities = new List <CosmicEntity>();
                List <CosmicEntityDef> available_defs = DefDatabase <CosmicEntityDef> .AllDefs.ToList();

                foreach (CosmicEntityDef d in available_defs)
                {
                    deities.Add(new CosmicEntity()
                    {
                        def = d
                    });
                }
            }
            //Scribe_Values.Look(ref isExposed, "isExposed", false, true);
            Scribe_Values.Look(ref cultName, "cultName", "Unnamed cult", true);
            Scribe_Values.Look(ref performSermons, "performSermons", true, true);
            Scribe_Defs.Look(ref selectedDeity, "selectedDeity");
            Scribe_Collections.Look(ref deities, "deities", LookMode.Deep);
        }
예제 #25
0
파일: War.cs 프로젝트: SwimUp/moreevents
        public void ExposeData()
        {
            Scribe_Values.Look(ref id, "id");

            Scribe_References.Look(ref DeclaredWarFaction, "DeclaredWarFaction");
            Scribe_References.Look(ref DefendingFaction, "DefendingFaction");
            Scribe_Defs.Look(ref WarGoalDef, "WarGoalDef");

            Scribe_Deep.Look(ref Worker, "Worker");
            Scribe_Deep.Look(ref StatWorker, "StatWorker");

            Scribe_Collections.Look(ref AssaultFactions, "AssaultFactions", LookMode.Reference);
            Scribe_Collections.Look(ref DefendingFactions, "DefendingFactions", LookMode.Reference);
            Scribe_Values.Look(ref StartTicks, "StartTicks");
            Scribe_Values.Look(ref started, "started");
            Scribe_Values.Look(ref WarName, "WarName");

            Scribe_Values.Look(ref LastTruceTicks, "LastTruceTicks");
            Scribe_Values.Look(ref nextTicksSituations, "nextTicksSituations");
            Scribe_Collections.Look(ref armys, "armys", LookMode.Deep);
        }
예제 #26
0
        public override void ExposeData()
        {
            base.ExposeData();
            Scribe_Deep.Look(ref innerContainer, "innerContainer", this);
            Scribe_Values.Look(ref contentsKnown, "contentsKnown", defaultValue: false);

            Scribe_Defs.Look(ref activeBrainTemplateToBeProcessed, "activeBrainTemplateToBeProcessed");
            Scribe_Values.Look(ref removeActiveBrainTemplate, "removeActiveBrainTemplate", false);

            Scribe_Values.Look <int>(ref this.totalTicksToGrow, "totalTicksToGrow", 0, true);
            Scribe_Values.Look <int>(ref this.curTicksToGrow, "curTicksToGrow", 0, true);

            Scribe_Values.Look <float>(ref this.totalGrowthCost, "totalGrowthCost", 0f, true);
            Scribe_Values.Look <bool>(ref this.contentsKnown, "contentsKnown", false, true);
            Scribe_Values.Look <bool>(ref this.active, "active", false, true);
            Scribe_Values.Look <bool>(ref this.isRunningOutPower, "isRunningOutPower", false, true);
            Scribe_Values.Look <bool>(ref this.isRunningOutFuel, "isRunningOutFuel", false, true);

            Scribe_Values.Look <int>(ref this.runningOutPowerInTicks, "runningOutPowerInTicks", 0, true);
            Scribe_Values.Look <bool>(ref this.innerPawnIsDead, "innerPawnIsDead", false, true);
        }
예제 #27
0
        /// <summary>
        /// Save and load variables (stored in savegame data).
        /// </summary>
        public override void ExposeData()
        {
            base.ExposeData();

            // Breeding parameters.
            Scribe_Defs.Look <PawnKindDef>(ref breedingSpeciesDef, "breedingSpeciesDef");
            Scribe_Values.Look <int>(ref breedingDuratinInTicks, "breedingDuratinInTicks");
            Scribe_Values.Look <int>(ref breedingProgressInTicks, "breedingProgressInTicks");
            Scribe_Values.Look <bool>(ref breedingIsFinished, "breedingIsFinished");

            // Food.
            Scribe_Values.Look <int>(ref nextFeedingDateInTicks, "nextFeedingDateInTicks");
            Scribe_Values.Look <bool>(ref foodIsAvailable, "foodIsAvailable");

            // Water quality.
            Scribe_Values.Look <float>(ref waterQuality, "waterQuality");
            Scribe_Values.Look <int>(ref microFungusRemainingDurationInTicks, "microFungusRemainingDurationInTicks");

            // Fishes health.
            Scribe_Values.Look <int>(ref fishesHealthInPercent, "fishesHealthInPercent");
        }
예제 #28
0
 public override void PostExposeData()
 {
     base.PostExposeData();
     Scribe_Values.Look <int>(ref this.TotalkillsRecord, "TotalkillsRecord");
     Scribe_Values.Look <int>(ref this.pawnKills, "pawnKills");
     Scribe_Deep.Look <Hediff>(ref this.unmarked, "bloodedUnmarked");
     Scribe_Defs.Look <HediffDef>(ref this.MarkedhediffDef, "MarkedhediffDef");
     Scribe_References.Look <Corpse>(ref this.corpse, "corpseRef");
     Scribe_Deep.Look <Corpse>(ref this.corpse, "corpseRefDeep");
     Scribe_References.Look <Pawn>(ref this.pawn, "pawnRef", true);
     //    Scribe_Deep.Look<Pawn>(ref this.pawn, "pawnRefDeep");
     Scribe_Values.Look <String>(ref this.MarkHedifftype, "thisMarktype");
     Scribe_Values.Look <String>(ref this.MarkHedifflabel, "thislabel");
     Scribe_Values.Look <bool>(ref this.predator, "thisPred");
     Scribe_Values.Look <float>(ref this.combatPower, "thiscombatPower");
     Scribe_Values.Look <float>(ref this.BodySize, "thisBodySize");
     Scribe_Values.Look <bool>(ref this.TurretIsOn, "thisTurretIsOn");
     Scribe_Values.Look <bool>(ref this.blooded, "thisblooded");
     Scribe_Values.Look <bool>(ref this.inducted, "inducted");
     Scribe_Values.Look <bool>(ref this.inductable, "inductable");
 }
예제 #29
0
 public virtual void ExposeData()
 {
     Scribe_Defs.Look(ref def, "def");
     if (Scribe.mode == LoadSaveMode.LoadingVars)
     {
         InitializeComps();
     }
     Scribe_Values.Look(ref ID, "ID", -1);
     Scribe_Values.Look(ref tileInt, "tile", -1);
     Scribe_References.Look(ref factionInt, "faction");
     Scribe_Values.Look(ref creationGameTicks, "creationGameTicks", 0);
     Scribe_Collections.Look(ref questTags, "questTags", LookMode.Value);
     Scribe_Values.Look(ref destroyed, "destroyed", defaultValue: false);
     if (Scribe.mode != LoadSaveMode.Saving)
     {
         Scribe_Deep.Look(ref rewards, "rewards");
     }
     for (int i = 0; i < comps.Count; i++)
     {
         comps[i].PostExposeData();
     }
 }
예제 #30
0
 public void ExposeData()
 {
     Scribe_Values.Look <float>(ref this.settlerChance, "settlerChance", 0, false);
     Scribe_Values.Look <float>(ref this.warbandChance, "warbandChance", 1f, false);
     Scribe_Values.Look <float>(ref this.warbandLaunchChance, "warbandLaunchChance", 0, false);
     Scribe_Values.Look <float>(ref this.scoutChance, "scoutChance", 0, false);
     Scribe_Values.Look <float>(ref this.diplomatChance, "diplomatChance", 0, false);
     Scribe_Values.Look <float>(ref this.caravanChance, "caravanChance", 0, false);
     Scribe_Values.Look <RimWarBehavior>(ref this.behavior, "behavior");
     Scribe_Values.Look <bool>(ref this.createsSettlements, "createsSettlements", false);
     Scribe_Values.Look <bool>(ref this.hatesPlayer, "hatesPlayer", false);
     Scribe_Values.Look <bool>(ref this.movesAtNight, "movesAtNight", false);
     Scribe_Values.Look <int>(ref this.lastEventTick, "lastEventTick", 0, false);
     Scribe_Defs.Look <BiomeDef>(ref this.biomeDef, "biomeDef");
     Scribe_References.Look <Faction>(ref this.rimwarFaction, "rimwarFaction");
     Scribe_Collections.Look <Warband>(ref this.factionWarbands, "factionWarbands", LookMode.Reference, new object[0]);
     Scribe_Collections.Look <RimWar.Planet.Settlement>(ref this.factionSettlements, "factionSettlements", LookMode.Deep, new object[0]);
     Scribe_Collections.Look <Faction>(ref this.warFactions, "warFactions", LookMode.Reference, new object[0]);
     Scribe_Collections.Look <Faction>(ref this.allianceFactions, "allianceFactions", LookMode.Reference, new object[0]);
     //Scribe_Collections.Look<Warband>(ref this.factionWarbands, "factionWarbands", LookMode.Reference, new object[0]);
     //Scribe_Collections.Look<RimWar.Planet.Settlement>(ref this.factionSettlements, "factionSettlements", LookMode.Reference, new object[0]);
 }