You are on page 1of 297

PATCHING EdB.PrepareCarefully.

PanelBackstory Void
DrawPanelContent(EdB.PrepareCarefully.State)
L_0000: Local var #0 EdB.PrepareCarefully.PanelBackstory+<>c__DisplayClass19_0
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 UnityEngine.Rect
L_0000: Local var #3 UnityEngine.Rect
L_0000: newobj Void .ctor()
L_0005: stloc.0
L_0006: ldloc.0
L_0007: ldarg.0
L_0008: stfld EdB.PrepareCarefully.PanelBackstory <>4__this
L_000d: ldarg.0
L_000e: ldarg.1
L_000f: call Void DrawPanelContent(EdB.PrepareCarefully.State)
L_0014: ldloc.0
L_0015: ldarg.1
L_0016: callvirt EdB.PrepareCarefully.CustomPawn get_CurrentPawn()
L_001b: stfld EdB.PrepareCarefully.CustomPawn pawn
L_0020: ldloc.0
L_0021: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_0026: callvirt RimWorld.Backstory get_Adulthood()
L_002b: ldnull
L_002c: cgt.un
L_002e: stloc.1
L_002f: ldc.i4.1
L_0030: call Void set_Font(GameFont)
L_0035: ldsfld UnityEngine.Color ColorText
L_003a: call Void set_color(Color)
L_003f: ldc.i4.4
L_0040: call Void set_Anchor(TextAnchor)
L_0045: ldarg.0
L_0046: ldfld UnityEngine.Rect RectChildhoodLabel
L_004b: ldstr "Childhood"
L_0050: call System.String Translate(System.String)
L_0055: call Void Label(Rect, System.String)
L_005a: ldloc.1
L_005b: brtrue Label #2
L_0060: ldsfld UnityEngine.Color ColorControlDisabled
L_0065: call Void set_color(Color)
L_006a: Label #2
L_006a: ldarg.0
L_006b: ldfld UnityEngine.Rect RectAdulthoodLabel
L_0070: ldstr "Adulthood"
L_0075: call System.String Translate(System.String)
L_007a: call Void Label(Rect, System.String)
L_007f: ldc.i4.0
L_0080: call Void set_Anchor(TextAnchor)
L_0085: call Color get_white()
L_008a: call Void set_color(Color)
L_008f: ldloc.0
L_0090: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_0095: callvirt RimWorld.Backstory get_Childhood()
L_009a: brfalse Label #3
L_009f: ldarg.0
L_00a0: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_00a5: ldloc.0
L_00a6: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_00ab: callvirt RimWorld.Backstory get_Childhood()
L_00b0: callvirt System.String get_Title()
L_00b5: callvirt Void set_Label(System.String)
L_00ba: br Label #4
L_00bf: Label #3
L_00bf: ldarg.0
L_00c0: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_00c5: ldnull
L_00c6: callvirt Void set_Label(System.String)
L_00cb: Label #4
L_00cb: ldarg.0
L_00cc: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_00d1: ldloc.0
L_00d2: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_00d7: callvirt RimWorld.Backstory get_Childhood()
L_00dc: ldloc.0
L_00dd: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_00e2: callvirt Verse.Pawn get_Pawn()
L_00e7: callvirt System.String FullDescriptionFor(Verse.Pawn)
L_00ec: callvirt Void set_Tip(System.String)
L_00f1: ldarg.0
L_00f2: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_00f7: ldloc.0
L_00f8: ldftn Void <DrawPanelContent>b__0()
L_00fe: newobj Void .ctor(Object, IntPtr)
L_0103: callvirt Void set_ClickAction(System.Action)
L_0108: ldarg.0
L_0109: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_010e: ldloc.0
L_010f: ldftn Void <DrawPanelContent>b__1()
L_0115: newobj Void .ctor(Object, IntPtr)
L_011a: callvirt Void set_PreviousAction(System.Action)
L_011f: ldarg.0
L_0120: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_0125: ldloc.0
L_0126: ldftn Void <DrawPanelContent>b__2()
L_012c: newobj Void .ctor(Object, IntPtr)
L_0131: callvirt Void set_NextAction(System.Action)
L_0136: ldarg.0
L_0137: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_013c: ldloc.1
L_013d: callvirt Void set_Enabled(Boolean)
L_0142: ldloc.1
L_0143: brfalse Label #5
L_0148: ldarg.0
L_0149: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_014e: ldloc.0
L_014f: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_0154: callvirt RimWorld.Backstory get_Adulthood()
L_0159: callvirt System.String get_Title()
L_015e: callvirt Void set_Label(System.String)
L_0163: ldarg.0
L_0164: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_0169: ldloc.0
L_016a: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_016f: callvirt RimWorld.Backstory get_Adulthood()
L_0174: ldloc.0
L_0175: ldfld EdB.PrepareCarefully.CustomPawn pawn
L_017a: callvirt Verse.Pawn get_Pawn()
L_017f: callvirt System.String FullDescriptionFor(Verse.Pawn)
L_0184: callvirt Void set_Tip(System.String)
L_0189: ldarg.0
L_018a: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_018f: ldloc.0
L_0190: ldftn Void <DrawPanelContent>b__3()
L_0196: newobj Void .ctor(Object, IntPtr)
L_019b: callvirt Void set_ClickAction(System.Action)
L_01a0: ldarg.0
L_01a1: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01a6: ldloc.0
L_01a7: ldftn Void <DrawPanelContent>b__4()
L_01ad: newobj Void .ctor(Object, IntPtr)
L_01b2: callvirt Void set_PreviousAction(System.Action)
L_01b7: ldarg.0
L_01b8: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01bd: ldloc.0
L_01be: ldftn Void <DrawPanelContent>b__5()
L_01c4: newobj Void .ctor(Object, IntPtr)
L_01c9: callvirt Void set_NextAction(System.Action)
L_01ce: br Label #6
L_01d3: Label #5
L_01d3: ldarg.0
L_01d4: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01d9: ldnull
L_01da: callvirt Void set_Label(System.String)
L_01df: ldarg.0
L_01e0: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01e5: ldnull
L_01e6: callvirt Void set_Tip(System.String)
L_01eb: ldarg.0
L_01ec: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01f1: ldnull
L_01f2: callvirt Void set_ClickAction(System.Action)
L_01f7: ldarg.0
L_01f8: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_01fd: ldsfld System.Action <>9__19_6
L_0202: dup
L_0203: brtrue Label #7
L_0208: pop
L_0209: ldsfld EdB.PrepareCarefully.PanelBackstory+<>c <>9
L_020e: ldftn Void <DrawPanelContent>b__19_6()
L_0214: newobj Void .ctor(Object, IntPtr)
L_0219: dup
L_021a: stsfld System.Action <>9__19_6
L_021f: Label #7
L_021f: callvirt Void set_PreviousAction(System.Action)
L_0224: ldarg.0
L_0225: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_022a: ldsfld System.Action <>9__19_7
L_022f: dup
L_0230: brtrue Label #8
L_0235: pop
L_0236: ldsfld EdB.PrepareCarefully.PanelBackstory+<>c <>9
L_023b: ldftn Void <DrawPanelContent>b__19_7()
L_0241: newobj Void .ctor(Object, IntPtr)
L_0246: dup
L_0247: stsfld System.Action <>9__19_7
L_024c: Label #8
L_024c: callvirt Void set_NextAction(System.Action)
L_0251: Label #6
L_0251: ldarg.0
L_0252: ldfld EdB.PrepareCarefully.Field FieldChildhood
L_0257: callvirt Void Draw()
L_025c: ldarg.0
L_025d: ldfld EdB.PrepareCarefully.Field FieldAdulthood
L_0262: callvirt Void Draw()
L_0267: ldloca.s 2 (UnityEngine.Rect)
L_0269: ldarg.0
L_026a: call Rect get_PanelRect()
L_026f: stloc.3
L_0270: ldloca.s 3 (UnityEngine.Rect)
L_0272: call Single get_width()
L_0277: ldc.r4 32
L_027c: sub
L_027d: ldc.r4 9
L_0282: ldc.r4 22
L_0287: ldc.r4 22
L_028c: call Void .ctor(Single, Single, Single, Single)
L_0291: ldloca.s 2 (UnityEngine.Rect)
L_0293: call UnityEngine.Event get_current()
L_0298: callvirt Vector2 get_mousePosition()
L_029d: call Boolean Contains(Vector2)
L_02a2: brfalse Label #9
L_02a7: ldsfld UnityEngine.Color ColorButtonHighlight
L_02ac: call Void set_color(Color)
L_02b1: br Label #10
L_02b6: Label #9
L_02b6: ldsfld UnityEngine.Color ColorButton
L_02bb: call Void set_color(Color)
L_02c0: Label #10
L_02c0: ldloc.2
L_02c1: ldsfld UnityEngine.Texture2D TextureButtonRandom
L_02c6: call Void DrawTexture(Rect, UnityEngine.Texture)
L_02cb: ldloc.2
L_02cc: ldc.i4.0
L_02cd: call Boolean ButtonInvisible(Rect, Boolean)
L_02d2: brfalse Label #11
L_02d7: ldsfld Verse.SoundDef TickLow
L_02dc: ldnull
L_02dd: call Void PlayOneShotOnCamera(Verse.SoundDef, Verse.Map)
L_02e2: ldarg.0
L_02e3: ldfld EdB.PrepareCarefully.PanelBackstory+RandomizeBackstoriesHandler
BackstoriesRandomized
L_02e8: callvirt Void Invoke()
L_02ed: Label #11
L_02ed: ldc.i4.1
L_02ee: call Void set_Font(GameFont)
L_02f3: call Color get_white()
L_02f8: call Void set_color(Color)
L_02fd: ldc.i4.0
L_02fe: call Void set_Anchor(TextAnchor)
L_0303: br Label #0
L_0308: Label #0
L_0308: ldarg.0
L_0309: ldarg 1
L_030f: call Void AddPsycheEditButton(EdB.PrepareCarefully.PanelBackstory,
EdB.PrepareCarefully.State)
L_0314: ret
DONE
PATCHING EdB.PrepareCarefully.PresetLoaderVersion3 EdB.PrepareCarefully.CustomPawn
LoadPawn(EdB.PrepareCarefully.SaveRecordPawnV3)
L_0000: Local var #0 Verse.PawnKindDef
L_0000: Local var #1 Verse.Pawn
L_0000: Local var #2 EdB.PrepareCarefully.CustomPawn
L_0000: Local var #3 RimWorld.HairDef
L_0000: Local var #4 RimWorld.Backstory
L_0000: Local var #5 System.Nullable`1[[RimWorld.BodyType, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6 EdB.PrepareCarefully.OptionsHealth
L_0000: Local var #7 Verse.ThingDef
L_0000: Local var #8 System.Int32
L_0000: Local var #9 System.String
L_0000: Local var #10 RimWorld.Trait
L_0000: Local var #11 System.Int32
L_0000: Local var #12 System.String
L_0000: Local var #13 RimWorld.SkillDef
L_0000: Local var #14 System.Int32
L_0000: Local var #15 System.String
L_0000: Local var #16 System.Int32
L_0000: Local var #17 System.Int32
L_0000: Local var #18 System.Int32
L_0000: Local var #19 Verse.ThingDef
L_0000: Local var #20 Verse.ThingDef
L_0000: Local var #21 System.Int32
L_0000: Local var #22 EdB.PrepareCarefully.SaveRecordImplantV3
L_0000: Local var #23 EdB.PrepareCarefully.UniqueBodyPart
L_0000: Local var #24 Verse.BodyPartRecord
L_0000: Local var #25 Verse.RecipeDef
L_0000: Local var #26 System.Boolean
L_0000: Local var #27 EdB.PrepareCarefully.Implant
L_0000: Local var #28
System.Collections.Generic.List`1+Enumerator[[Verse.BodyPartDef, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #29
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.SaveRecordInjury
V3, EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #30 EdB.PrepareCarefully.SaveRecordInjuryV3
L_0000: Local var #31 Verse.HediffDef
L_0000: Local var #32 EdB.PrepareCarefully.InjuryOption
L_0000: Local var #33 Verse.BodyPartRecord
L_0000: Local var #34 EdB.PrepareCarefully.Injury
L_0000: Local var #35 EdB.PrepareCarefully.UniqueBodyPart
L_0000: Local var #36 EdB.PrepareCarefully.CustomPawn
L_0000: ldnull
L_0001: stloc 36 (EdB.PrepareCarefully.CustomPawn)
L_0003: ldnull
L_0004: stloc.0
L_0005: ldarg.1
L_0006: ldfld System.String pawnKindDef
L_000b: brfalse Label #2
L_0010: ldarg.1
L_0011: ldfld System.String pawnKindDef
L_0016: call Verse.PawnKindDef GetNamedSilentFail(System.String)
L_001b: stloc.0
L_001c: ldloc.0
L_001d: brtrue Label #3
L_0022: ldstr "Prepare Carefully could not find the pawn kind definition for the
saved character: ""
L_0027: ldarg.1
L_0028: ldfld System.String pawnKindDef
L_002d: ldstr """
L_0032: call System.String Concat(System.String, System.String, System.String)
L_0037: call Void Warning(System.String)
L_003c: ldnull
L_003d: br Label #0
L_0042: Label #2
L_0042: Label #3
L_0042: ldsfld Verse.ThingDef Human
L_0047: pop
L_0048: ldarg.1
L_0049: ldfld System.String thingDef
L_004e: brfalse Label #4
L_0053: ldarg.1
L_0054: ldfld System.String thingDef
L_0059: call Verse.ThingDef GetNamedSilentFail(System.String)
L_005e: stloc.s 7 (Verse.ThingDef)
L_0060: ldloc.s 7 (Verse.ThingDef)
L_0062: pop
L_0063: Label #4
L_0063: ldloc.0
L_0064: brfalse Label #5
L_0069: newobj Void .ctor()
L_006e: ldloc.0
L_006f: call Verse.Pawn GenerateKindOfColonist(Verse.PawnKindDef)
L_0074: stloc.1
L_0075: br Label #6
L_007a: Label #5
L_007a: newobj Void .ctor()
L_007f: call Verse.Pawn GenerateColonist()
L_0084: stloc.1
L_0085: Label #6
L_0085: ldloc.1
L_0086: ldfld Verse.Pawn_HealthTracker health
L_008b: callvirt Void Reset()
L_0090: ldloc.1
L_0091: newobj Void .ctor(Pawn)
L_0096: stloc.2
L_0097: ldloc.2
L_0098: callvirt System.String get_Id()
L_009d: brtrue Label #7
L_00a2: ldloc.2
L_00a3: callvirt Void GenerateId()
L_00a8: br Label #8
L_00ad: Label #7
L_00ad: ldloc.2
L_00ae: ldarg.1
L_00af: ldfld System.String id
L_00b4: callvirt Void set_Id(System.String)
L_00b9: Label #8
L_00b9: ldloc.2
L_00ba: ldarg.1
L_00bb: ldfld Verse.Gender gender
L_00c0: callvirt Void set_Gender(Gender)
L_00c5: ldarg.1
L_00c6: ldfld System.Int32 age
L_00cb: ldc.i4.0
L_00cc: ble Label #9
L_00d1: ldloc.2
L_00d2: ldarg.1
L_00d3: ldfld System.Int32 age
L_00d8: callvirt Void set_ChronologicalAge(Int32)
L_00dd: ldloc.2
L_00de: ldarg.1
L_00df: ldfld System.Int32 age
L_00e4: callvirt Void set_BiologicalAge(Int32)
L_00e9: Label #9
L_00e9: ldarg.1
L_00ea: ldfld System.Int32 chronologicalAge
L_00ef: ldc.i4.0
L_00f0: ble Label #10
L_00f5: ldloc.2
L_00f6: ldarg.1
L_00f7: ldfld System.Int32 chronologicalAge
L_00fc: callvirt Void set_ChronologicalAge(Int32)
L_0101: Label #10
L_0101: ldarg.1
L_0102: ldfld System.Int32 biologicalAge
L_0107: ldc.i4.0
L_0108: ble Label #11
L_010d: ldloc.2
L_010e: ldarg.1
L_010f: ldfld System.Int32 biologicalAge
L_0114: callvirt Void set_BiologicalAge(Int32)
L_0119: Label #11
L_0119: ldloc.2
L_011a: ldarg.1
L_011b: ldfld System.String firstName
L_0120: callvirt Void set_FirstName(System.String)
L_0125: ldloc.2
L_0126: ldarg.1
L_0127: ldfld System.String nickName
L_012c: callvirt Void set_NickName(System.String)
L_0131: ldloc.2
L_0132: ldarg.1
L_0133: ldfld System.String lastName
L_0138: callvirt Void set_LastName(System.String)
L_013d: ldarg.0
L_013e: ldarg.1
L_013f: ldfld System.String hairDef
L_0144: call RimWorld.HairDef FindHairDef(System.String)
L_0149: stloc.3
L_014a: ldloc.3
L_014b: brfalse Label #12
L_0150: ldloc.2
L_0151: ldloc.3
L_0152: callvirt Void set_HairDef(RimWorld.HairDef)
L_0157: br Label #13
L_015c: Label #12
L_015c: ldstr "Could not load hair definition ""
L_0161: ldarg.1
L_0162: ldfld System.String hairDef
L_0167: ldstr """
L_016c: call System.String Concat(System.String, System.String, System.String)
L_0171: call Void Warning(System.String)
L_0176: ldarg.0
L_0177: ldc.i4.1
L_0178: stfld System.Boolean Failed
L_017d: Label #13
L_017d: ldloc.2
L_017e: ldarg.1
L_017f: ldfld System.String headGraphicPath
L_0184: callvirt Void set_HeadGraphicPath(System.String)
L_0189: ldloc.2
L_018a: ldc.i4.6
L_018b: ldarg.1
L_018c: ldfld UnityEngine.Color hairColor
L_0191: callvirt Void SetColor(Int32, Color)
L_0196: ldarg.1
L_0197: ldfld System.Single melanin
L_019c: ldc.r4 0
L_01a1: blt.un Label #14
L_01a6: ldloc.2
L_01a7: ldarg.1
L_01a8: ldfld System.Single melanin
L_01ad: callvirt Void set_MelaninLevel(Single)
L_01b2: br Label #15
L_01b7: Label #14
L_01b7: ldloc.2
L_01b8: ldarg.1
L_01b9: ldfld UnityEngine.Color skinColor
L_01be: call Single FindMelaninValueFromColor(Color)
L_01c3: callvirt Void set_MelaninLevel(Single)
L_01c8: Label #15
L_01c8: ldloc.2
L_01c9: callvirt EdB.PrepareCarefully.AlienRace get_AlienRace()
L_01ce: brfalse Label #16
L_01d3: ldloc.2
L_01d4: ldarg.1
L_01d5: ldfld UnityEngine.Color skinColor
L_01da: callvirt Void set_SkinColor(Color)
L_01df: Label #16
L_01df: ldarg.0
L_01e0: ldarg.1
L_01e1: ldfld System.String childhood
L_01e6: call RimWorld.Backstory FindBackstory(System.String)
L_01eb: stloc.s 4 (RimWorld.Backstory)
L_01ed: ldloc.s 4 (RimWorld.Backstory)
L_01ef: brfalse Label #17
L_01f4: ldloc.2
L_01f5: ldloc.s 4 (RimWorld.Backstory)
L_01f7: callvirt Void set_Childhood(RimWorld.Backstory)
L_01fc: br Label #18
L_0201: Label #17
L_0201: ldstr "Could not load childhood backstory definition ""
L_0206: ldarg.1
L_0207: ldfld System.String childhood
L_020c: ldstr """
L_0211: call System.String Concat(System.String, System.String, System.String)
L_0216: call Void Warning(System.String)
L_021b: ldarg.0
L_021c: ldc.i4.1
L_021d: stfld System.Boolean Failed
L_0222: Label #18
L_0222: ldarg.1
L_0223: ldfld System.String adulthood
L_0228: brfalse Label #19
L_022d: ldarg.0
L_022e: ldarg.1
L_022f: ldfld System.String adulthood
L_0234: call RimWorld.Backstory FindBackstory(System.String)
L_0239: stloc.s 4 (RimWorld.Backstory)
L_023b: ldloc.s 4 (RimWorld.Backstory)
L_023d: brfalse Label #20
L_0242: ldloc.2
L_0243: ldloc.s 4 (RimWorld.Backstory)
L_0245: callvirt Void set_Adulthood(RimWorld.Backstory)
L_024a: br Label #21
L_024f: Label #20
L_024f: ldstr "Could not load adulthood backstory definition ""
L_0254: ldarg.1
L_0255: ldfld System.String adulthood
L_025a: ldstr """
L_025f: call System.String Concat(System.String, System.String, System.String)
L_0264: call Void Warning(System.String)
L_0269: ldarg.0
L_026a: ldc.i4.1
L_026b: stfld System.Boolean Failed
L_0270: Label #19
L_0270: Label #21
L_0270: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_0272: initobj System.Nullable`1[RimWorld.BodyType]
L_0278: ldtoken RimWorld.BodyType
L_027d: call System.Type GetTypeFromHandle(RuntimeTypeHandle)
L_0282: ldarg.1
L_0283: ldfld System.String bodyType
L_0288: call System.Object Parse(System.Type, System.String)
L_028d: unbox.any RimWorld.BodyType
L_0292: newobj Void .ctor(BodyType)
L_0297: stloc.s 5 (System.Nullable`1[RimWorld.BodyType])
L_0299: leave.s Label #22
L_029b: pop
L_029c: leave.s Label #23
L_029e: Label #22
L_029e: Label #23
L_029e: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_02a0: call Boolean get_HasValue()
L_02a5: brtrue Label #24
L_02aa: ldloc.2
L_02ab: callvirt RimWorld.Backstory get_Adulthood()
L_02b0: brfalse Label #25
L_02b5: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_02b7: ldloc.2
L_02b8: callvirt RimWorld.Backstory get_Adulthood()
L_02bd: ldloc.2
L_02be: callvirt Gender get_Gender()
L_02c3: callvirt BodyType BodyTypeFor(Gender)
L_02c8: call Void .ctor(BodyType)
L_02cd: br Label #26
L_02d2: Label #25
L_02d2: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_02d4: ldloc.2
L_02d5: callvirt RimWorld.Backstory get_Childhood()
L_02da: ldloc.2
L_02db: callvirt Gender get_Gender()
L_02e0: callvirt BodyType BodyTypeFor(Gender)
L_02e5: call Void .ctor(BodyType)
L_02ea: Label #24
L_02ea: Label #26
L_02ea: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_02ec: call Boolean get_HasValue()
L_02f1: brfalse Label #27
L_02f6: ldloc.2
L_02f7: ldloca.s 5 (System.Nullable`1[RimWorld.BodyType])
L_02f9: call BodyType get_Value()
L_02fe: callvirt Void set_BodyType(BodyType)
L_0303: Label #27
L_0303: ldloc.2
L_0304: callvirt Void ClearTraits()
L_0309: ldc.i4.0
L_030a: stloc.s 8 (System.Int32)
L_030c: br Label #28
L_0311: Label #31
L_0311: ldarg.1
L_0312: ldfld System.Collections.Generic.List`1[System.String] traitNames
L_0317: ldloc.s 8 (System.Int32)
L_0319: callvirt System.String get_Item(Int32)
L_031e: stloc.s 9 (System.String)
L_0320: ldarg.0
L_0321: ldloc.s 9 (System.String)
L_0323: ldarg.1
L_0324: ldfld System.Collections.Generic.List`1[System.Int32] traitDegrees
L_0329: ldloc.s 8 (System.Int32)
L_032b: callvirt Int32 get_Item(Int32)
L_0330: call RimWorld.Trait FindTrait(System.String, Int32)
L_0335: stloc.s 10 (RimWorld.Trait)
L_0337: ldloc.s 10 (RimWorld.Trait)
L_0339: brfalse Label #29
L_033e: ldloc.2
L_033f: ldloc.s 10 (RimWorld.Trait)
L_0341: callvirt Void AddTrait(RimWorld.Trait)
L_0346: br Label #30
L_034b: Label #29
L_034b: ldstr "Could not load trait definition ""
L_0350: ldloc.s 9 (System.String)
L_0352: ldstr """
L_0357: call System.String Concat(System.String, System.String, System.String)
L_035c: call Void Warning(System.String)
L_0361: ldarg.0
L_0362: ldc.i4.1
L_0363: stfld System.Boolean Failed
L_0368: Label #30
L_0368: ldloc.s 8 (System.Int32)
L_036a: ldc.i4.1
L_036b: add
L_036c: stloc.s 8 (System.Int32)
L_036e: Label #28
L_036e: ldloc.s 8 (System.Int32)
L_0370: ldarg.1
L_0371: ldfld System.Collections.Generic.List`1[System.String] traitNames
L_0376: callvirt Int32 get_Count()
L_037b: blt Label #31
L_0380: ldc.i4.0
L_0381: stloc.s 11 (System.Int32)
L_0383: br Label #32
L_0388: Label #36
L_0388: ldarg.1
L_0389: ldfld System.Collections.Generic.List`1[System.String] skillNames
L_038e: ldloc.s 11 (System.Int32)
L_0390: callvirt System.String get_Item(Int32)
L_0395: stloc.s 12 (System.String)
L_0397: ldloc.s 12 (System.String)
L_0399: ldstr "Research"
L_039e: call Boolean op_Equality(System.String, System.String)
L_03a3: brfalse Label #33
L_03a8: ldstr "Intellectual"
L_03ad: stloc.s 12 (System.String)
L_03af: Label #33
L_03af: ldarg.0
L_03b0: ldloc.2
L_03b1: callvirt Verse.Pawn get_Pawn()
L_03b6: ldloc.s 12 (System.String)
L_03b8: call RimWorld.SkillDef FindSkillDef(Verse.Pawn, System.String)
L_03bd: stloc.s 13 (RimWorld.SkillDef)
L_03bf: ldloc.s 13 (RimWorld.SkillDef)
L_03c1: brtrue Label #34
L_03c6: ldstr "Could not load skill definition ""
L_03cb: ldloc.s 12 (System.String)
L_03cd: ldstr """
L_03d2: call System.String Concat(System.String, System.String, System.String)
L_03d7: call Void Warning(System.String)
L_03dc: ldarg.0
L_03dd: ldc.i4.1
L_03de: stfld System.Boolean Failed
L_03e3: br Label #35
L_03e8: Label #34
L_03e8: ldloc.2
L_03e9: ldfld
System.Collections.Generic.Dictionary`2[RimWorld.SkillDef,RimWorld.Passion]
currentPassions
L_03ee: ldloc.s 13 (RimWorld.SkillDef)
L_03f0: ldarg.1
L_03f1: ldfld System.Collections.Generic.List`1[RimWorld.Passion] passions
L_03f6: ldloc.s 11 (System.Int32)
L_03f8: callvirt Passion get_Item(Int32)
L_03fd: callvirt Void set_Item(RimWorld.SkillDef, Passion)
L_0402: ldloc.2
L_0403: ldfld
System.Collections.Generic.Dictionary`2[RimWorld.SkillDef,RimWorld.Passion]
originalPassions
L_0408: ldloc.s 13 (RimWorld.SkillDef)
L_040a: ldarg.1
L_040b: ldfld System.Collections.Generic.List`1[RimWorld.Passion] passions
L_0410: ldloc.s 11 (System.Int32)
L_0412: callvirt Passion get_Item(Int32)
L_0417: callvirt Void set_Item(RimWorld.SkillDef, Passion)
L_041c: ldloc.2
L_041d: ldloc.s 13 (RimWorld.SkillDef)
L_041f: ldarg.1
L_0420: ldfld System.Collections.Generic.List`1[System.Int32] skillValues
L_0425: ldloc.s 11 (System.Int32)
L_0427: callvirt Int32 get_Item(Int32)
L_042c: callvirt Void SetOriginalSkillLevel(RimWorld.SkillDef, Int32)
L_0431: ldloc.2
L_0432: ldloc.s 13 (RimWorld.SkillDef)
L_0434: ldarg.1
L_0435: ldfld System.Collections.Generic.List`1[System.Int32] skillValues
L_043a: ldloc.s 11 (System.Int32)
L_043c: callvirt Int32 get_Item(Int32)
L_0441: callvirt Void SetUnmodifiedSkillLevel(RimWorld.SkillDef, Int32)
L_0446: Label #35
L_0446: ldloc.s 11 (System.Int32)
L_0448: ldc.i4.1
L_0449: add
L_044a: stloc.s 11 (System.Int32)
L_044c: Label #32
L_044c: ldloc.s 11 (System.Int32)
L_044e: ldarg.1
L_044f: ldfld System.Collections.Generic.List`1[System.String] skillNames
L_0454: callvirt Int32 get_Count()
L_0459: blt Label #36
L_045e: ldarg.1
L_045f: ldfld System.Collections.Generic.List`1[RimWorld.Passion] originalPassions
L_0464: brfalse Label #37
L_0469: ldarg.1
L_046a: ldfld System.Collections.Generic.List`1[RimWorld.Passion] originalPassions
L_046f: callvirt Int32 get_Count()
L_0474: ldarg.1
L_0475: ldfld System.Collections.Generic.List`1[System.String] skillNames
L_047a: callvirt Int32 get_Count()
L_047f: bne.un Label #38
L_0484: ldc.i4.0
L_0485: stloc.s 14 (System.Int32)
L_0487: br Label #39
L_048c: Label #41
L_048c: ldarg.1
L_048d: ldfld System.Collections.Generic.List`1[System.String] skillNames
L_0492: ldloc.s 14 (System.Int32)
L_0494: callvirt System.String get_Item(Int32)
L_0499: stloc.s 15 (System.String)
L_049b: ldarg.0
L_049c: ldloc.2
L_049d: callvirt Verse.Pawn get_Pawn()
L_04a2: ldloc.s 15 (System.String)
L_04a4: call RimWorld.SkillDef FindSkillDef(Verse.Pawn, System.String)
L_04a9: brtrue Label #40
L_04ae: ldstr "Could not load skill definition ""
L_04b3: ldloc.s 15 (System.String)
L_04b5: ldstr """
L_04ba: call System.String Concat(System.String, System.String, System.String)
L_04bf: call Void Warning(System.String)
L_04c4: ldarg.0
L_04c5: ldc.i4.1
L_04c6: stfld System.Boolean Failed
L_04cb: Label #40
L_04cb: ldloc.s 14 (System.Int32)
L_04cd: ldc.i4.1
L_04ce: add
L_04cf: stloc.s 14 (System.Int32)
L_04d1: Label #39
L_04d1: ldloc.s 14 (System.Int32)
L_04d3: ldarg.1
L_04d4: ldfld System.Collections.Generic.List`1[System.String] skillNames
L_04d9: callvirt Int32 get_Count()
L_04de: blt Label #41
L_04e3: Label #37
L_04e3: Label #38
L_04e3: ldc.i4.0
L_04e4: stloc.s 16 (System.Int32)
L_04e6: br Label #42
L_04eb: Label #44
L_04eb: ldloc.s 16 (System.Int32)
L_04ed: call Boolean IsApparelLayer(Int32)
L_04f2: brfalse Label #43
L_04f7: ldloc.2
L_04f8: ldloc.s 16 (System.Int32)
L_04fa: ldnull
L_04fb: callvirt Void SetSelectedApparel(Int32, Verse.ThingDef)
L_0500: ldloc.2
L_0501: ldloc.s 16 (System.Int32)
L_0503: ldnull
L_0504: callvirt Void SetSelectedStuff(Int32, Verse.ThingDef)
L_0509: Label #43
L_0509: ldloc.s 16 (System.Int32)
L_050b: ldc.i4.1
L_050c: add
L_050d: stloc.s 16 (System.Int32)
L_050f: Label #42
L_050f: ldloc.s 16 (System.Int32)
L_0511: ldc.i4.s 9
L_0513: blt Label #44
L_0518: ldc.i4.0
L_0519: stloc.s 17 (System.Int32)
L_051b: br Label #45
L_0520: Label #51
L_0520: ldarg.1
L_0521: ldfld System.Collections.Generic.List`1[System.Int32] apparelLayers
L_0526: ldloc.s 17 (System.Int32)
L_0528: callvirt Int32 get_Item(Int32)
L_052d: stloc.s 18 (System.Int32)
L_052f: ldarg.1
L_0530: ldfld System.Collections.Generic.List`1[System.String] apparel
L_0535: ldloc.s 17 (System.Int32)
L_0537: callvirt System.String get_Item(Int32)
L_053c: call Verse.ThingDef GetNamedSilentFail(System.String)
L_0541: stloc.s 19 (Verse.ThingDef)
L_0543: ldloc.s 19 (Verse.ThingDef)
L_0545: brtrue Label #46
L_054a: ldstr "Could not load thing definition for apparel ""
L_054f: ldarg.1
L_0550: ldfld System.Collections.Generic.List`1[System.String] apparel
L_0555: ldloc.s 17 (System.Int32)
L_0557: callvirt System.String get_Item(Int32)
L_055c: ldstr """
L_0561: call System.String Concat(System.String, System.String, System.String)
L_0566: call Void Warning(System.String)
L_056b: ldarg.0
L_056c: ldc.i4.1
L_056d: stfld System.Boolean Failed
L_0572: br Label #47
L_0577: Label #46
L_0577: ldnull
L_0578: stloc.s 20 (Verse.ThingDef)
L_057a: ldarg.1
L_057b: ldfld System.Collections.Generic.List`1[System.String] apparelStuff
L_0580: ldloc.s 17 (System.Int32)
L_0582: callvirt System.String get_Item(Int32)
L_0587: call Boolean IsNullOrEmpty(System.String)
L_058c: brtrue Label #48
L_0591: ldarg.1
L_0592: ldfld System.Collections.Generic.List`1[System.String] apparelStuff
L_0597: ldloc.s 17 (System.Int32)
L_0599: callvirt System.String get_Item(Int32)
L_059e: call Verse.ThingDef GetNamedSilentFail(System.String)
L_05a3: stloc.s 20 (Verse.ThingDef)
L_05a5: ldloc.s 20 (Verse.ThingDef)
L_05a7: brtrue Label #49
L_05ac: ldc.i4.5
L_05ad: newarr System.String
L_05b2: dup
L_05b3: ldc.i4.0
L_05b4: ldstr "Could not load stuff definition ""
L_05b9: stelem.ref
L_05ba: dup
L_05bb: ldc.i4.1
L_05bc: ldarg.1
L_05bd: ldfld System.Collections.Generic.List`1[System.String] apparelStuff
L_05c2: ldloc.s 17 (System.Int32)
L_05c4: callvirt System.String get_Item(Int32)
L_05c9: stelem.ref
L_05ca: dup
L_05cb: ldc.i4.2
L_05cc: ldstr "" for apparel ""
L_05d1: stelem.ref
L_05d2: dup
L_05d3: ldc.i4.3
L_05d4: ldarg.1
L_05d5: ldfld System.Collections.Generic.List`1[System.String] apparel
L_05da: ldloc.s 17 (System.Int32)
L_05dc: callvirt System.String get_Item(Int32)
L_05e1: stelem.ref
L_05e2: dup
L_05e3: ldc.i4.4
L_05e4: ldstr """
L_05e9: stelem.ref
L_05ea: call System.String Concat(System.String[])
L_05ef: call Void Warning(System.String)
L_05f4: ldarg.0
L_05f5: ldc.i4.1
L_05f6: stfld System.Boolean Failed
L_05fb: br Label #50
L_0600: Label #48
L_0600: Label #49
L_0600: ldloc.2
L_0601: ldloc.s 18 (System.Int32)
L_0603: ldloc.s 19 (Verse.ThingDef)
L_0605: callvirt Void SetSelectedApparel(Int32, Verse.ThingDef)
L_060a: ldloc.2
L_060b: ldloc.s 18 (System.Int32)
L_060d: ldloc.s 20 (Verse.ThingDef)
L_060f: callvirt Void SetSelectedStuff(Int32, Verse.ThingDef)
L_0614: ldloc.2
L_0615: ldloc.s 18 (System.Int32)
L_0617: ldarg.1
L_0618: ldfld System.Collections.Generic.List`1[UnityEngine.Color] apparelColors
L_061d: ldloc.s 17 (System.Int32)
L_061f: callvirt Color get_Item(Int32)
L_0624: callvirt Void SetColor(Int32, Color)
L_0629: Label #47
L_0629: Label #50
L_0629: ldloc.s 17 (System.Int32)
L_062b: ldc.i4.1
L_062c: add
L_062d: stloc.s 17 (System.Int32)
L_062f: Label #45
L_062f: ldloc.s 17 (System.Int32)
L_0631: ldarg.1
L_0632: ldfld System.Collections.Generic.List`1[System.Int32] apparelLayers
L_0637: callvirt Int32 get_Count()
L_063c: blt Label #51
L_0641: call EdB.PrepareCarefully.PrepareCarefully get_Instance()
L_0646: callvirt EdB.PrepareCarefully.Providers get_Providers()
L_064b: callvirt EdB.PrepareCarefully.ProviderHealthOptions get_Health()
L_0650: ldloc.2
L_0651: callvirt EdB.PrepareCarefully.OptionsHealth
GetOptions(EdB.PrepareCarefully.CustomPawn)
L_0656: stloc.s 6 (EdB.PrepareCarefully.OptionsHealth)
L_0658: ldc.i4.0
L_0659: stloc.s 21 (System.Int32)
L_065b: br Label #52
L_0660: Label #69
L_0660: ldarg.1
L_0661: ldfld
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3]
implants
L_0666: ldloc.s 21 (System.Int32)
L_0668: callvirt EdB.PrepareCarefully.SaveRecordImplantV3 get_Item(Int32)
L_066d: stloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_066f: ldloc.s 6 (EdB.PrepareCarefully.OptionsHealth)
L_0671: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_0673: ldfld System.String bodyPart
L_0678: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_067a: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_067f: call Boolean get_HasValue()
L_0684: brtrue Label #53
L_0689: ldc.i4.0
L_068a: br Label #54
L_068f: Label #53
L_068f: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_0691: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_0696: call Int32 get_Value()
L_069b: Label #54
L_069b: callvirt EdB.PrepareCarefully.UniqueBodyPart
FindBodyPartByName(System.String, Int32)
L_06a0: stloc.s 23 (EdB.PrepareCarefully.UniqueBodyPart)
L_06a2: ldloc.s 23 (EdB.PrepareCarefully.UniqueBodyPart)
L_06a4: brtrue Label #55
L_06a9: ldstr "Prepare Carefully could not add the implant because it could not
find the needed body part ""
L_06ae: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_06b0: ldfld System.String bodyPart
L_06b5: ldstr """
L_06ba: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_06bc: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_06c1: call Boolean get_HasValue()
L_06c6: brtrue Label #56
L_06cb: ldstr ""
L_06d0: br Label #57
L_06d5: Label #56
L_06d5: ldstr " with index "
L_06da: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_06dc: ldfld System.Nullable`1[System.Int32] bodyPartIndex
L_06e1: box System.Nullable`1[System.Int32]
L_06e6: call System.String Concat(System.Object, System.Object)
L_06eb: Label #57
L_06eb: call System.String Concat(System.String, System.String, System.String,
System.String)
L_06f0: call Void Warning(System.String)
L_06f5: ldarg.0
L_06f6: ldc.i4.1
L_06f7: stfld System.Boolean Failed
L_06fc: br Label #58
L_0701: Label #55
L_0701: ldloc.s 23 (EdB.PrepareCarefully.UniqueBodyPart)
L_0703: ldfld Verse.BodyPartRecord Record
L_0708: stloc.s 24 (Verse.BodyPartRecord)
L_070a: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_070c: ldfld System.String recipe
L_0711: brfalse Label #59
L_0716: ldarg.0
L_0717: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_0719: ldfld System.String recipe
L_071e: call Verse.RecipeDef FindRecipeDef(System.String)
L_0723: stloc.s 25 (Verse.RecipeDef)
L_0725: ldloc.s 25 (Verse.RecipeDef)
L_0727: brtrue Label #60
L_072c: ldstr "Prepare Carefully could not add the implant because it could not
find the recipe definition ""
L_0731: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_0733: ldfld System.String recipe
L_0738: ldstr """
L_073d: call System.String Concat(System.String, System.String, System.String)
L_0742: call Void Warning(System.String)
L_0747: ldarg.0
L_0748: ldc.i4.1
L_0749: stfld System.Boolean Failed
L_074e: br Label #61
L_0753: Label #60
L_0753: ldc.i4.0
L_0754: stloc.s 26 (System.Boolean)
L_0756: ldloc.s 25 (Verse.RecipeDef)
L_0758: ldfld System.Collections.Generic.List`1[Verse.BodyPartDef]
appliedOnFixedBodyParts
L_075d: callvirt Enumerator GetEnumerator()
L_0762: stloc.s 28
(System.Collections.Generic.List`1+Enumerator[Verse.BodyPartDef])
L_0764: br Label #62
L_0769: Label #65
L_0769: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[Verse.BodyPartDef])
L_076b: call Verse.BodyPartDef get_Current()
L_0770: ldfld System.String defName
L_0775: ldloc.s 24 (Verse.BodyPartRecord)
L_0777: ldfld Verse.BodyPartDef def
L_077c: ldfld System.String defName
L_0781: callvirt Boolean Equals(System.String)
L_0786: brfalse Label #63
L_078b: ldc.i4.1
L_078c: stloc.s 26 (System.Boolean)
L_078e: leave.s Label #64
L_0790: Label #62
L_0790: Label #63
L_0790: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[Verse.BodyPartDef])
L_0792: call Boolean MoveNext()
L_0797: brtrue Label #65
L_079c: leave.s Label #66
L_079e: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[Verse.BodyPartDef])
L_07a0: constrained.
System.Collections.Generic.List`1+Enumerator[Verse.BodyPartDef]
L_07a6: callvirt Void Dispose()
L_07ab: endfinally
L_07ac: Label #64
L_07ac: Label #66
L_07ac: ldloc.s 26 (System.Boolean)
L_07ae: brtrue Label #67
L_07b3: ldc.i4.5
L_07b4: newarr System.String
L_07b9: dup
L_07ba: ldc.i4.0
L_07bb: ldstr "Prepare carefully could not apply the saved implant recipe ""
L_07c0: stelem.ref
L_07c1: dup
L_07c2: ldc.i4.1
L_07c3: ldloc.s 22 (EdB.PrepareCarefully.SaveRecordImplantV3)
L_07c5: ldfld System.String recipe
L_07ca: stelem.ref
L_07cb: dup
L_07cc: ldc.i4.2
L_07cd: ldstr "" to the body part ""
L_07d2: stelem.ref
L_07d3: dup
L_07d4: ldc.i4.3
L_07d5: ldloc.s 24 (Verse.BodyPartRecord)
L_07d7: ldfld Verse.BodyPartDef def
L_07dc: ldfld System.String defName
L_07e1: stelem.ref
L_07e2: dup
L_07e3: ldc.i4.4
L_07e4: ldstr "". Recipe does not support that part."
L_07e9: stelem.ref
L_07ea: call System.String Concat(System.String[])
L_07ef: call Void Warning(System.String)
L_07f4: ldarg.0
L_07f5: ldc.i4.1
L_07f6: stfld System.Boolean Failed
L_07fb: br Label #68
L_0800: Label #67
L_0800: newobj Void .ctor()
L_0805: stloc.s 27 (EdB.PrepareCarefully.Implant)
L_0807: ldloc.s 27 (EdB.PrepareCarefully.Implant)
L_0809: ldloc.s 24 (Verse.BodyPartRecord)
L_080b: callvirt Void set_BodyPartRecord(Verse.BodyPartRecord)
L_0810: ldloc.s 27 (EdB.PrepareCarefully.Implant)
L_0812: ldloc.s 25 (Verse.RecipeDef)
L_0814: stfld Verse.RecipeDef recipe
L_0819: ldloc.s 27 (EdB.PrepareCarefully.Implant)
L_081b: ldloc.s 27 (EdB.PrepareCarefully.Implant)
L_081d: callvirt System.String get_Label()
L_0822: stfld System.String label
L_0827: ldloc.2
L_0828: ldloc.s 27 (EdB.PrepareCarefully.Implant)
L_082a: callvirt Void AddImplant(EdB.PrepareCarefully.Implant)
L_082f: Label #58
L_082f: Label #59
L_082f: Label #61
L_082f: Label #68
L_082f: ldloc.s 21 (System.Int32)
L_0831: ldc.i4.1
L_0832: add
L_0833: stloc.s 21 (System.Int32)
L_0835: Label #52
L_0835: ldloc.s 21 (System.Int32)
L_0837: ldarg.1
L_0838: ldfld
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3]
implants
L_083d: callvirt Int32 get_Count()
L_0842: blt Label #69
L_0847: ldarg.1
L_0848: ldfld
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordInjuryV3] injuries
L_084d: callvirt Enumerator GetEnumerator()
L_0852: stloc.s 29
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.SaveRecordInjury
V3])
L_0854: br Label #70
L_0859: Label #84
L_0859: ldloca.s 29
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.SaveRecordInjury
V3])
L_085b: call EdB.PrepareCarefully.SaveRecordInjuryV3 get_Current()
L_0860: stloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0862: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0864: ldfld System.String hediffDef
L_0869: call Verse.HediffDef GetNamedSilentFail(System.String)
L_086e: stloc.s 31 (Verse.HediffDef)
L_0870: ldloc.s 31 (Verse.HediffDef)
L_0872: brtrue Label #71
L_0877: ldstr "Prepare Carefully could not add the injury because it could not find
the hediff definition ""
L_087c: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_087e: ldfld System.String hediffDef
L_0883: ldstr """
L_0888: call System.String Concat(System.String, System.String, System.String)
L_088d: call Void Warning(System.String)
L_0892: ldarg.0
L_0893: ldc.i4.1
L_0894: stfld System.Boolean Failed
L_0899: br Label #72
L_089e: Label #71
L_089e: ldloc.s 6 (EdB.PrepareCarefully.OptionsHealth)
L_08a0: ldloc.s 31 (Verse.HediffDef)
L_08a2: callvirt EdB.PrepareCarefully.InjuryOption
FindInjuryOptionByHediffDef(Verse.HediffDef)
L_08a7: stloc.s 32 (EdB.PrepareCarefully.InjuryOption)
L_08a9: ldloc.s 32 (EdB.PrepareCarefully.InjuryOption)
L_08ab: brtrue Label #73
L_08b0: ldstr "Prepare Carefully could not add the injury because it could not find
a matching injury option for the saved hediff ""
L_08b5: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_08b7: ldfld System.String hediffDef
L_08bc: ldstr """
L_08c1: call System.String Concat(System.String, System.String, System.String)
L_08c6: call Void Warning(System.String)
L_08cb: ldarg.0
L_08cc: ldc.i4.1
L_08cd: stfld System.Boolean Failed
L_08d2: br Label #74
L_08d7: Label #73
L_08d7: ldnull
L_08d8: stloc.s 33 (Verse.BodyPartRecord)
L_08da: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_08dc: ldfld System.String bodyPart
L_08e1: brfalse Label #75
L_08e6: ldloc.s 6 (EdB.PrepareCarefully.OptionsHealth)
L_08e8: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_08ea: ldfld System.String bodyPart
L_08ef: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_08f1: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_08f6: call Boolean get_HasValue()
L_08fb: brtrue Label #76
L_0900: ldc.i4.0
L_0901: br Label #77
L_0906: Label #76
L_0906: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0908: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_090d: call Int32 get_Value()
L_0912: Label #77
L_0912: callvirt EdB.PrepareCarefully.UniqueBodyPart
FindBodyPartByName(System.String, Int32)
L_0917: stloc.s 35 (EdB.PrepareCarefully.UniqueBodyPart)
L_0919: ldloc.s 35 (EdB.PrepareCarefully.UniqueBodyPart)
L_091b: brtrue Label #78
L_0920: ldstr "Prepare Carefully could not add the injury because it could not find
the needed body part ""
L_0925: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0927: ldfld System.String bodyPart
L_092c: ldstr """
L_0931: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0933: ldflda System.Nullable`1[System.Int32] bodyPartIndex
L_0938: call Boolean get_HasValue()
L_093d: brtrue Label #79
L_0942: ldstr ""
L_0947: br Label #80
L_094c: Label #79
L_094c: ldstr " with index "
L_0951: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_0953: ldfld System.Nullable`1[System.Int32] bodyPartIndex
L_0958: box System.Nullable`1[System.Int32]
L_095d: call System.String Concat(System.Object, System.Object)
L_0962: Label #80
L_0962: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0967: call Void Warning(System.String)
L_096c: ldarg.0
L_096d: ldc.i4.1
L_096e: stfld System.Boolean Failed
L_0973: br Label #81
L_0978: Label #78
L_0978: ldloc.s 35 (EdB.PrepareCarefully.UniqueBodyPart)
L_097a: ldfld Verse.BodyPartRecord Record
L_097f: stloc.s 33 (Verse.BodyPartRecord)
L_0981: Label #75
L_0981: newobj Void .ctor()
L_0986: stloc.s 34 (EdB.PrepareCarefully.Injury)
L_0988: ldloc.s 34 (EdB.PrepareCarefully.Injury)
L_098a: ldloc.s 32 (EdB.PrepareCarefully.InjuryOption)
L_098c: callvirt Void set_Option(EdB.PrepareCarefully.InjuryOption)
L_0991: ldloc.s 34 (EdB.PrepareCarefully.Injury)
L_0993: ldloc.s 33 (Verse.BodyPartRecord)
L_0995: callvirt Void set_BodyPartRecord(Verse.BodyPartRecord)
L_099a: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_099c: ldfld System.String severity
L_09a1: brfalse Label #82
L_09a6: ldloc.s 34 (EdB.PrepareCarefully.Injury)
L_09a8: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_09aa: callvirt Single get_Severity()
L_09af: callvirt Void set_Severity(Single)
L_09b4: Label #82
L_09b4: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_09b6: ldfld System.String painFactor
L_09bb: brfalse Label #83
L_09c0: ldloc.s 34 (EdB.PrepareCarefully.Injury)
L_09c2: ldloc.s 30 (EdB.PrepareCarefully.SaveRecordInjuryV3)
L_09c4: callvirt Single get_PainFactor()
L_09c9: newobj Void .ctor(Single)
L_09ce: callvirt Void set_PainFactor(Nullable`1)
L_09d3: Label #83
L_09d3: ldloc.2
L_09d4: ldloc.s 34 (EdB.PrepareCarefully.Injury)
L_09d6: callvirt Void AddInjury(EdB.PrepareCarefully.Injury)
L_09db: Label #70
L_09db: Label #72
L_09db: Label #74
L_09db: Label #81
L_09db: ldloca.s 29
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.SaveRecordInjury
V3])
L_09dd: call Boolean MoveNext()
L_09e2: brtrue Label #84
L_09e7: leave.s Label #85
L_09e9: ldloca.s 29
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.SaveRecordInjury
V3])
L_09eb: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.SaveRecordInjuryV
3]
L_09f1: callvirt Void Dispose()
L_09f6: endfinally
L_09f7: Label #85
L_09f7: ldloc.2
L_09f8: callvirt Void CopySkillsAndPassionsToPawn()
L_09fd: ldloc.2
L_09fe: callvirt Void ClearPawnCaches()
L_0a03: ldloc.2
L_0a04: br Label #0
L_0a09: Label #0
L_0a09: stloc 36 (EdB.PrepareCarefully.CustomPawn)
L_0a0b: ldloca 36 (EdB.PrepareCarefully.CustomPawn)
L_0a0d: ldarg 1
L_0a13: call Void AddPsyche(EdB.PrepareCarefully.CustomPawn ByRef,
EdB.PrepareCarefully.SaveRecordPawnV3)
L_0a18: ldloc 36 (EdB.PrepareCarefully.CustomPawn)
L_0a1a: ret
DONE

PATCHING EdB.PrepareCarefully.PresetSaver Void


SaveToFile(EdB.PrepareCarefully.PrepareCarefully, System.String)
L_0000: Local var #0 System.Boolean
L_0000: Local var #1 System.String
L_0000: Local var #2 System.Boolean
L_0000: Local var #3 System.Int32
L_0000: Local var #4 System.String
L_0000: Local var #5
System.Collections.Generic.List`1[[EdB.PrepareCarefully.CustomPawn,
EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.CustomPawn,
EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #7 EdB.PrepareCarefully.CustomPawn
L_0000: Local var #8
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.CustomParentChil
dGroup, EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral,
PublicKeyToken=null]]
L_0000: Local var #9 EdB.PrepareCarefully.CustomParentChildGroup
L_0000: Local var #10
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.CustomParentChil
dPawn, EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral,
PublicKeyToken=null]]
L_0000: Local var #11 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #12
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.CustomParentChil
dPawn, EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral,
PublicKeyToken=null]]
L_0000: Local var #13 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #14 EdB.PrepareCarefully.CustomPawn
L_0000: Local var #15 EdB.PrepareCarefully.SaveRecordPawnV3
L_0000: Local var #16 EdB.PrepareCarefully.CustomParentChildGroup
L_0000: Local var #17 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #18 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #19 EdB.PrepareCarefully.CustomPawn
L_0000: Local var #20 EdB.PrepareCarefully.SaveRecordPawnV3
L_0000: Local var #21
System.Collections.Generic.IEnumerator`1[[EdB.PrepareCarefully.CustomRelationship,
EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #22 EdB.PrepareCarefully.CustomRelationship
L_0000: Local var #23 EdB.PrepareCarefully.SaveRecordRelationshipV3
L_0000: Local var #24 EdB.PrepareCarefully.CustomParentChildGroup
L_0000: Local var #25 EdB.PrepareCarefully.SaveRecordParentChildGroupV3
L_0000: Local var #26 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #27 EdB.PrepareCarefully.CustomParentChildPawn
L_0000: Local var #28
System.Collections.Generic.List`1+Enumerator[[EdB.PrepareCarefully.EquipmentSelecti
on, EdBPrepareCarefully, Version=0.17.1.6, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #29 EdB.PrepareCarefully.EquipmentSelection
L_0000: Local var #30 EdB.PrepareCarefully.EquipmentSaveRecord
L_0000: ldc.i4.0
L_0001: stloc.0
L_0002: ldarg.0
L_0003: callvirt System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn]
get_Pawns()
L_0008: callvirt Enumerator GetEnumerator()
L_000d: stloc.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_000f: br Label #2
L_0014: Label #4
L_0014: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0016: call EdB.PrepareCarefully.CustomPawn get_Current()
L_001b: stloc.s 7 (EdB.PrepareCarefully.CustomPawn)
L_001d: ldloc.s 7 (EdB.PrepareCarefully.CustomPawn)
L_001f: callvirt System.String get_Id()
L_0024: brtrue Label #3
L_0029: ldloc.s 7 (EdB.PrepareCarefully.CustomPawn)
L_002b: callvirt Void GenerateId()
L_0030: Label #2
L_0030: Label #3
L_0030: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0032: call Boolean MoveNext()
L_0037: brtrue Label #4
L_003c: leave.s Label #5
L_003e: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0040: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn]
L_0046: callvirt Void Dispose()
L_004b: endfinally
L_004c: Label #5
L_004c: ldarg.0
L_004d: callvirt EdB.PrepareCarefully.RelationshipManager get_RelationshipManager()
L_0052: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildGroup]
get_ParentChildGroups()
L_0057: callvirt Enumerator GetEnumerator()
L_005c: stloc.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_005e: br Label #6
L_0063: Label #17
L_0063: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_0065: call EdB.PrepareCarefully.CustomParentChildGroup get_Current()
L_006a: stloc.s 9 (EdB.PrepareCarefully.CustomParentChildGroup)
L_006c: ldloc.s 9 (EdB.PrepareCarefully.CustomParentChildGroup)
L_006e: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Parents()
L_0073: callvirt Enumerator GetEnumerator()
L_0078: stloc.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_007a: br Label #7
L_007f: Label #15
L_007f: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0081: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_0086: stloc.s 11 (EdB.PrepareCarefully.CustomParentChildPawn)
L_0088: ldloc.s 11 (EdB.PrepareCarefully.CustomParentChildPawn)
L_008a: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_008f: brfalse Label #8
L_0094: ldloc.s 11 (EdB.PrepareCarefully.CustomParentChildPawn)
L_0096: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_009b: callvirt System.String get_Id()
L_00a0: brtrue Label #9
L_00a5: ldloc.s 11 (EdB.PrepareCarefully.CustomParentChildPawn)
L_00a7: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_00ac: callvirt Void GenerateId()
L_00b1: Label #8
L_00b1: Label #9
L_00b1: ldloc.s 9 (EdB.PrepareCarefully.CustomParentChildGroup)
L_00b3: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Children()
L_00b8: callvirt Enumerator GetEnumerator()
L_00bd: stloc.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_00bf: br Label #10
L_00c4: Label #13
L_00c4: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_00c6: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_00cb: stloc.s 13 (EdB.PrepareCarefully.CustomParentChildPawn)
L_00cd: ldloc.s 13 (EdB.PrepareCarefully.CustomParentChildPawn)
L_00cf: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_00d4: brfalse Label #11
L_00d9: ldloc.s 13 (EdB.PrepareCarefully.CustomParentChildPawn)
L_00db: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_00e0: callvirt System.String get_Id()
L_00e5: brtrue Label #12
L_00ea: ldloc.s 13 (EdB.PrepareCarefully.CustomParentChildPawn)
L_00ec: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_00f1: callvirt Void GenerateId()
L_00f6: Label #10
L_00f6: Label #11
L_00f6: Label #12
L_00f6: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_00f8: call Boolean MoveNext()
L_00fd: brtrue Label #13
L_0102: leave.s Label #14
L_0104: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0106: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_010c: callvirt Void Dispose()
L_0111: endfinally
L_0112: Label #7
L_0112: Label #14
L_0112: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0114: call Boolean MoveNext()
L_0119: brtrue Label #15
L_011e: leave.s Label #16
L_0120: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0122: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_0128: callvirt Void Dispose()
L_012d: endfinally
L_012e: Label #6
L_012e: Label #16
L_012e: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_0130: call Boolean MoveNext()
L_0135: brtrue Label #17
L_013a: leave.s Label #18
L_013c: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_013e: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Group]
L_0144: callvirt Void Dispose()
L_0149: endfinally
L_014a: Label #18
L_014a: ldsfld Verse.ScribeSaver saver
L_014f: ldarg.1
L_0150: call System.String FilePathForSavedPreset(System.String)
L_0155: ldstr "preset"
L_015a: callvirt Void InitSaving(System.String, System.String)
L_015f: ldstr "3"
L_0164: stloc.1
L_0165: ldloca.s 1 (System.String)
L_0167: ldstr "version"
L_016c: ldnull
L_016d: ldc.i4.0
L_016e: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0173: ldarg.0
L_0174: callvirt EdB.PrepareCarefully.Configuration get_Config()
L_0179: ldfld System.Boolean pointsEnabled
L_017e: stloc.2
L_017f: call EdB.PrepareCarefully.PrepareCarefully get_Instance()
L_0184: callvirt Int32 get_StartingPoints()
L_0189: stloc.3
L_018a: ldloca.s 2 (System.Boolean)
L_018c: ldstr "usePoints"
L_0191: ldc.i4.0
L_0192: ldc.i4.1
L_0193: call Void Look[Boolean](Boolean ByRef, System.String, Boolean, Boolean)
L_0198: ldloca.s 3 (System.Int32)
L_019a: ldstr "startingPoints"
L_019f: ldc.i4.0
L_01a0: ldc.i4.1
L_01a1: call Void Look[Int32](Int32 ByRef, System.String, Int32, Boolean)
L_01a6: call IEnumerable`1 get_RunningMods()
L_01ab: ldsfld System.Func`2[Verse.ModContentPack,System.String] <>9__0_0
L_01b0: dup
L_01b1: brtrue Label #19
L_01b6: pop
L_01b7: ldsfld EdB.PrepareCarefully.PresetSaver+<>c <>9
L_01bc: ldftn System.String <SaveToFile>b__0_0(Verse.ModContentPack)
L_01c2: newobj Void .ctor(Object, IntPtr)
L_01c7: dup
L_01c8: stsfld System.Func`2[Verse.ModContentPack,System.String] <>9__0_0
L_01cd: Label #19
L_01cd: call IEnumerable`1 Select[ModContentPack,String](IEnumerable`1,
System.Func`2[Verse.ModContentPack,System.String])
L_01d2: ldc.i4.1
L_01d3: call System.String ToCommaList(IEnumerable`1, Boolean)
L_01d8: stloc.s 4 (System.String)
L_01da: ldloca.s 4 (System.String)
L_01dc: ldstr "mods"
L_01e1: ldnull
L_01e2: ldc.i4.0
L_01e3: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_01e8: ldstr "colonists"
L_01ed: call Boolean EnterNode(System.String)
L_01f2: pop
L_01f3: ldarg.0
L_01f4: callvirt System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn]
get_Pawns()
L_01f9: callvirt Enumerator GetEnumerator()
L_01fe: stloc.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0200: br Label #20
L_0205: Label #23
L_0205: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0207: call EdB.PrepareCarefully.CustomPawn get_Current()
L_020c: stloc.s 14 (EdB.PrepareCarefully.CustomPawn)
L_020e: ldloc.s 14 (EdB.PrepareCarefully.CustomPawn)
L_0210: call Void AddPsycheToDictionary(EdB.PrepareCarefully.CustomPawn)
L_0215: ldloc.s 14 (EdB.PrepareCarefully.CustomPawn)
L_0217: newobj Void .ctor(CustomPawn)
L_021c: stloc.s 15 (EdB.PrepareCarefully.SaveRecordPawnV3)
L_021e: ldloca.s 15 (EdB.PrepareCarefully.SaveRecordPawnV3)
L_0220: ldstr "colonist"
L_0225: ldc.i4.0
L_0226: newarr System.Object
L_022b: call Void Look[SaveRecordPawnV3](EdB.PrepareCarefully.SaveRecordPawnV3
ByRef, System.String, System.Object[])
L_0230: leave.s Label #21
L_0232: ldc.i4.1
L_0233: stloc.0
L_0234: ldstr "Prepare Carefully failed to save a pawn into the preset: "
L_0239: ldarg.1
L_023a: call System.String Concat(System.String, System.String)
L_023f: call Void Warning(System.String)
L_0244: dup
L_0245: callvirt System.String get_Message()
L_024a: call Void Warning(System.String)
L_024f: callvirt System.String get_StackTrace()
L_0254: call Void Warning(System.String)
L_0259: leave.s Label #22
L_025b: Label #20
L_025b: Label #21
L_025b: Label #22
L_025b: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_025d: call Boolean MoveNext()
L_0262: brtrue Label #23
L_0267: leave.s Label #24
L_0269: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_026b: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn]
L_0271: callvirt Void Dispose()
L_0276: endfinally
L_0277: Label #24
L_0277: call Void ExitNode()
L_027c: newobj Void .ctor()
L_0281: stloc.s 5
(System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn])
L_0283: ldarg.0
L_0284: callvirt EdB.PrepareCarefully.RelationshipManager get_RelationshipManager()
L_0289: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildGroup]
get_ParentChildGroups()
L_028e: callvirt Enumerator GetEnumerator()
L_0293: stloc.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_0295: br Label #25
L_029a: Label #38
L_029a: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_029c: call EdB.PrepareCarefully.CustomParentChildGroup get_Current()
L_02a1: stloc.s 16 (EdB.PrepareCarefully.CustomParentChildGroup)
L_02a3: ldloc.s 16 (EdB.PrepareCarefully.CustomParentChildGroup)
L_02a5: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Parents()
L_02aa: callvirt Enumerator GetEnumerator()
L_02af: stloc.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_02b1: br Label #26
L_02b6: Label #36
L_02b6: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_02b8: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_02bd: stloc.s 17 (EdB.PrepareCarefully.CustomParentChildPawn)
L_02bf: ldloc.s 17 (EdB.PrepareCarefully.CustomParentChildPawn)
L_02c1: callvirt Boolean get_Hidden()
L_02c6: brfalse Label #27
L_02cb: ldloc.s 17 (EdB.PrepareCarefully.CustomParentChildPawn)
L_02cd: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_02d2: brfalse Label #28
L_02d7: ldloc.s 5
(System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn])
L_02d9: ldloc.s 17 (EdB.PrepareCarefully.CustomParentChildPawn)
L_02db: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_02e0: callvirt Void Add(EdB.PrepareCarefully.CustomPawn)
L_02e5: br Label #29
L_02ea: Label #28
L_02ea: ldstr "Prepare Carefully found an empty pawn in a parent child relationship
while saving the preset. Skipping that pawn."
L_02ef: call Void Warning(System.String)
L_02f4: Label #27
L_02f4: Label #29
L_02f4: ldloc.s 16 (EdB.PrepareCarefully.CustomParentChildGroup)
L_02f6: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Children()
L_02fb: callvirt Enumerator GetEnumerator()
L_0300: stloc.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0302: br Label #30
L_0307: Label #34
L_0307: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0309: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_030e: stloc.s 18 (EdB.PrepareCarefully.CustomParentChildPawn)
L_0310: ldloc.s 18 (EdB.PrepareCarefully.CustomParentChildPawn)
L_0312: callvirt Boolean get_Hidden()
L_0317: brfalse Label #31
L_031c: ldloc.s 18 (EdB.PrepareCarefully.CustomParentChildPawn)
L_031e: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_0323: brfalse Label #32
L_0328: ldloc.s 5
(System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn])
L_032a: ldloc.s 18 (EdB.PrepareCarefully.CustomParentChildPawn)
L_032c: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_0331: callvirt Void Add(EdB.PrepareCarefully.CustomPawn)
L_0336: br Label #33
L_033b: Label #32
L_033b: ldstr "Prepare Carefully found an empty pawn in a parent child relationship
while saving the preset. Skipping that pawn."
L_0340: call Void Warning(System.String)
L_0345: Label #30
L_0345: Label #31
L_0345: Label #33
L_0345: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0347: call Boolean MoveNext()
L_034c: brtrue Label #34
L_0351: leave.s Label #35
L_0353: ldloca.s 12
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0355: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_035b: callvirt Void Dispose()
L_0360: endfinally
L_0361: Label #26
L_0361: Label #35
L_0361: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0363: call Boolean MoveNext()
L_0368: brtrue Label #36
L_036d: leave.s Label #37
L_036f: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0371: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_0377: callvirt Void Dispose()
L_037c: endfinally
L_037d: Label #25
L_037d: Label #37
L_037d: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_037f: call Boolean MoveNext()
L_0384: brtrue Label #38
L_0389: leave.s Label #39
L_038b: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_038d: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Group]
L_0393: callvirt Void Dispose()
L_0398: endfinally
L_0399: Label #39
L_0399: ldstr "hiddenPawns"
L_039e: call Boolean EnterNode(System.String)
L_03a3: pop
L_03a4: ldloc.s 5
(System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomPawn])
L_03a6: callvirt Enumerator GetEnumerator()
L_03ab: stloc.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_03ad: br Label #40
L_03b2: Label #43
L_03b2: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_03b4: call EdB.PrepareCarefully.CustomPawn get_Current()
L_03b9: stloc.s 19 (EdB.PrepareCarefully.CustomPawn)
L_03bb: ldloc.s 19 (EdB.PrepareCarefully.CustomPawn)
L_03bd: call Void AddPsycheToDictionary(EdB.PrepareCarefully.CustomPawn)
L_03c2: ldloc.s 19 (EdB.PrepareCarefully.CustomPawn)
L_03c4: newobj Void .ctor(CustomPawn)
L_03c9: stloc.s 20 (EdB.PrepareCarefully.SaveRecordPawnV3)
L_03cb: ldloca.s 20 (EdB.PrepareCarefully.SaveRecordPawnV3)
L_03cd: ldstr "hiddenPawn"
L_03d2: ldc.i4.0
L_03d3: newarr System.Object
L_03d8: call Void Look[SaveRecordPawnV3](EdB.PrepareCarefully.SaveRecordPawnV3
ByRef, System.String, System.Object[])
L_03dd: leave.s Label #41
L_03df: ldc.i4.1
L_03e0: stloc.0
L_03e1: ldstr "Prepare Carefully failed to save a hidden pawn into the preset: "
L_03e6: ldarg.1
L_03e7: call System.String Concat(System.String, System.String)
L_03ec: call Void Warning(System.String)
L_03f1: dup
L_03f2: callvirt System.String get_Message()
L_03f7: call Void Warning(System.String)
L_03fc: callvirt System.String get_StackTrace()
L_0401: call Void Warning(System.String)
L_0406: leave.s Label #42
L_0408: Label #40
L_0408: Label #41
L_0408: Label #42
L_0408: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_040a: call Boolean MoveNext()
L_040f: brtrue Label #43
L_0414: leave.s Label #44
L_0416: ldloca.s 6
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn])
L_0418: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomPawn]
L_041e: callvirt Void Dispose()
L_0423: endfinally
L_0424: Label #44
L_0424: call Void ExitNode()
L_0429: ldstr "relationships"
L_042e: call Boolean EnterNode(System.String)
L_0433: pop
L_0434: ldarg.0
L_0435: callvirt EdB.PrepareCarefully.RelationshipManager get_RelationshipManager()
L_043a: callvirt IEnumerable`1 get_Relationships()
L_043f: callvirt IEnumerator`1 GetEnumerator()
L_0444: stloc.s 21
(System.Collections.Generic.IEnumerator`1[EdB.PrepareCarefully.CustomRelationship])
L_0446: br Label #45
L_044b: Label #55
L_044b: ldloc.s 21
(System.Collections.Generic.IEnumerator`1[EdB.PrepareCarefully.CustomRelationship])
L_044d: callvirt EdB.PrepareCarefully.CustomRelationship get_Current()
L_0452: stloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0454: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0456: ldfld EdB.PrepareCarefully.CustomPawn source
L_045b: brfalse Label #46
L_0460: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0462: ldfld EdB.PrepareCarefully.CustomPawn target
L_0467: brfalse Label #47
L_046c: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_046e: ldfld RimWorld.PawnRelationDef def
L_0473: brfalse Label #48
L_0478: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_047a: ldfld EdB.PrepareCarefully.CustomPawn source
L_047f: callvirt System.String get_Id()
L_0484: brfalse Label #49
L_0489: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_048b: ldfld EdB.PrepareCarefully.CustomPawn target
L_0490: callvirt System.String get_Id()
L_0495: brfalse Label #50
L_049a: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_049c: newobj Void .ctor(CustomRelationship)
L_04a1: stloc.s 23 (EdB.PrepareCarefully.SaveRecordRelationshipV3)
L_04a3: ldloca.s 23 (EdB.PrepareCarefully.SaveRecordRelationshipV3)
L_04a5: ldstr "relationship"
L_04aa: ldc.i4.0
L_04ab: newarr System.Object
L_04b0: call Void Look[SaveRecordRelationshipV3]
(EdB.PrepareCarefully.SaveRecordRelationshipV3 ByRef, System.String,
System.Object[])
L_04b5: br Label #51
L_04ba: Label #46
L_04ba: Label #47
L_04ba: Label #48
L_04ba: Label #49
L_04ba: Label #50
L_04ba: ldc.i4.1
L_04bb: stloc.0
L_04bc: ldstr "Prepare Carefully found an invalid custom relationship when saving a
preset: "
L_04c1: ldarg.1
L_04c2: call System.String Concat(System.String, System.String)
L_04c7: call Void Warning(System.String)
L_04cc: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_04ce: ldfld EdB.PrepareCarefully.CustomPawn target
L_04d3: brfalse Label #52
L_04d8: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_04da: ldfld EdB.PrepareCarefully.CustomPawn source
L_04df: brfalse Label #53
L_04e4: ldc.i4.7
L_04e5: newarr System.Object
L_04ea: dup
L_04eb: ldc.i4.0
L_04ec: ldstr " Relationship = { source = "
L_04f1: stelem.ref
L_04f2: dup
L_04f3: ldc.i4.1
L_04f4: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_04f6: ldfld EdB.PrepareCarefully.CustomPawn source
L_04fb: callvirt System.String get_Id()
L_0500: stelem.ref
L_0501: dup
L_0502: ldc.i4.2
L_0503: ldstr ", target = "
L_0508: stelem.ref
L_0509: dup
L_050a: ldc.i4.3
L_050b: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_050d: ldfld EdB.PrepareCarefully.CustomPawn target
L_0512: callvirt System.String get_Id()
L_0517: stelem.ref
L_0518: dup
L_0519: ldc.i4.4
L_051a: ldstr ", relationship = "
L_051f: stelem.ref
L_0520: dup
L_0521: ldc.i4.5
L_0522: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0524: ldfld RimWorld.PawnRelationDef def
L_0529: stelem.ref
L_052a: dup
L_052b: ldc.i4.6
L_052c: ldstr "}"
L_0531: stelem.ref
L_0532: call System.String Concat(System.Object[])
L_0537: call Void Warning(System.String)
L_053c: br Label #54
L_0541: Label #52
L_0541: Label #53
L_0541: ldc.i4.7
L_0542: newarr System.Object
L_0547: dup
L_0548: ldc.i4.0
L_0549: ldstr " Relationship = { source = "
L_054e: stelem.ref
L_054f: dup
L_0550: ldc.i4.1
L_0551: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0553: ldfld EdB.PrepareCarefully.CustomPawn source
L_0558: stelem.ref
L_0559: dup
L_055a: ldc.i4.2
L_055b: ldstr ", target = "
L_0560: stelem.ref
L_0561: dup
L_0562: ldc.i4.3
L_0563: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0565: ldfld EdB.PrepareCarefully.CustomPawn target
L_056a: stelem.ref
L_056b: dup
L_056c: ldc.i4.4
L_056d: ldstr ", relationship = "
L_0572: stelem.ref
L_0573: dup
L_0574: ldc.i4.5
L_0575: ldloc.s 22 (EdB.PrepareCarefully.CustomRelationship)
L_0577: ldfld RimWorld.PawnRelationDef def
L_057c: stelem.ref
L_057d: dup
L_057e: ldc.i4.6
L_057f: ldstr "}"
L_0584: stelem.ref
L_0585: call System.String Concat(System.Object[])
L_058a: call Void Warning(System.String)
L_058f: Label #45
L_058f: Label #51
L_058f: Label #54
L_058f: ldloc.s 21
(System.Collections.Generic.IEnumerator`1[EdB.PrepareCarefully.CustomRelationship])
L_0591: callvirt Boolean MoveNext()
L_0596: brtrue Label #55
L_059b: leave.s Label #56
L_059d: ldloc.s 21
(System.Collections.Generic.IEnumerator`1[EdB.PrepareCarefully.CustomRelationship])
L_059f: brfalse Label #57
L_05a4: ldloc.s 21
(System.Collections.Generic.IEnumerator`1[EdB.PrepareCarefully.CustomRelationship])
L_05a6: callvirt Void Dispose()
L_05ab: Label #57
L_05ab: endfinally
L_05ac: Label #56
L_05ac: call Void ExitNode()
L_05b1: ldstr "parentChildGroups"
L_05b6: call Boolean EnterNode(System.String)
L_05bb: pop
L_05bc: ldarg.0
L_05bd: callvirt EdB.PrepareCarefully.RelationshipManager get_RelationshipManager()
L_05c2: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildGroup]
get_ParentChildGroups()
L_05c7: callvirt Enumerator GetEnumerator()
L_05cc: stloc.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_05ce: br Label #58
L_05d3: Label #74
L_05d3: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_05d5: call EdB.PrepareCarefully.CustomParentChildGroup get_Current()
L_05da: stloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_05dc: ldloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_05de: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Children()
L_05e3: callvirt Int32 get_Count()
L_05e8: brfalse Label #59
L_05ed: ldloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_05ef: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Parents()
L_05f4: callvirt Int32 get_Count()
L_05f9: brtrue Label #60
L_05fe: ldloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_0600: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Children()
L_0605: callvirt Int32 get_Count()
L_060a: ldc.i4.1
L_060b: beq Label #61
L_0610: Label #60
L_0610: newobj Void .ctor()
L_0615: stloc.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_0617: ldloc.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_0619: newobj Void .ctor()
L_061e: stfld System.Collections.Generic.List`1[System.String] parents
L_0623: ldloc.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_0625: newobj Void .ctor()
L_062a: stfld System.Collections.Generic.List`1[System.String] children
L_062f: ldloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_0631: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Parents()
L_0636: callvirt Enumerator GetEnumerator()
L_063b: stloc.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_063d: br Label #62
L_0642: Label #65
L_0642: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0644: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_0649: stloc.s 26 (EdB.PrepareCarefully.CustomParentChildPawn)
L_064b: ldloc.s 26 (EdB.PrepareCarefully.CustomParentChildPawn)
L_064d: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_0652: brtrue Label #63
L_0657: ldc.i4.1
L_0658: stloc.0
L_0659: ldstr "Prepare Carefully found an invalid parent/child relationship when
saving the preset: "
L_065e: ldarg.1
L_065f: call System.String Concat(System.String, System.String)
L_0664: call Void Warning(System.String)
L_0669: br Label #64
L_066e: Label #63
L_066e: ldloc.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_0670: ldfld System.Collections.Generic.List`1[System.String] parents
L_0675: ldloc.s 26 (EdB.PrepareCarefully.CustomParentChildPawn)
L_0677: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_067c: callvirt System.String get_Id()
L_0681: callvirt Void Add(System.String)
L_0686: Label #62
L_0686: Label #64
L_0686: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0688: call Boolean MoveNext()
L_068d: brtrue Label #65
L_0692: leave.s Label #66
L_0694: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0696: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_069c: callvirt Void Dispose()
L_06a1: endfinally
L_06a2: Label #66
L_06a2: ldloc.s 24 (EdB.PrepareCarefully.CustomParentChildGroup)
L_06a4: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.CustomParentChildPawn]
get_Children()
L_06a9: callvirt Enumerator GetEnumerator()
L_06ae: stloc.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_06b0: br Label #67
L_06b5: Label #70
L_06b5: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_06b7: call EdB.PrepareCarefully.CustomParentChildPawn get_Current()
L_06bc: stloc.s 27 (EdB.PrepareCarefully.CustomParentChildPawn)
L_06be: ldloc.s 27 (EdB.PrepareCarefully.CustomParentChildPawn)
L_06c0: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_06c5: brtrue Label #68
L_06ca: ldc.i4.1
L_06cb: stloc.0
L_06cc: ldstr "Prepare Carefully found an invalid parent/child relationship when
saving the preset: "
L_06d1: ldarg.1
L_06d2: call System.String Concat(System.String, System.String)
L_06d7: call Void Warning(System.String)
L_06dc: br Label #69
L_06e1: Label #68
L_06e1: ldloc.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_06e3: ldfld System.Collections.Generic.List`1[System.String] children
L_06e8: ldloc.s 27 (EdB.PrepareCarefully.CustomParentChildPawn)
L_06ea: callvirt EdB.PrepareCarefully.CustomPawn get_Pawn()
L_06ef: callvirt System.String get_Id()
L_06f4: callvirt Void Add(System.String)
L_06f9: Label #67
L_06f9: Label #69
L_06f9: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_06fb: call Boolean MoveNext()
L_0700: brtrue Label #70
L_0705: leave.s Label #71
L_0707: ldloca.s 10
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dPawn])
L_0709: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Pawn]
L_070f: callvirt Void Dispose()
L_0714: endfinally
L_0715: Label #71
L_0715: nop
L_0716: ldloca.s 25 (EdB.PrepareCarefully.SaveRecordParentChildGroupV3)
L_0718: ldstr "group"
L_071d: ldc.i4.0
L_071e: newarr System.Object
L_0723: call Void Look[SaveRecordParentChildGroupV3]
(EdB.PrepareCarefully.SaveRecordParentChildGroupV3 ByRef, System.String,
System.Object[])
L_0728: leave.s Label #72
L_072a: pop
L_072b: ldc.i4.1
L_072c: stloc.0
L_072d: ldstr "Prepare Carefully failed to save a parent child group when saving
the preset: "
L_0732: ldarg.1
L_0733: call System.String Concat(System.String, System.String)
L_0738: call Void Warning(System.String)
L_073d: leave.s Label #73
L_073f: Label #58
L_073f: Label #59
L_073f: Label #61
L_073f: Label #72
L_073f: Label #73
L_073f: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_0741: call Boolean MoveNext()
L_0746: brtrue Label #74
L_074b: leave.s Label #75
L_074d: ldloca.s 8
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChil
dGroup])
L_074f: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.CustomParentChild
Group]
L_0755: callvirt Void Dispose()
L_075a: endfinally
L_075b: Label #75
L_075b: call Void ExitNode()
L_0760: ldstr "equipment"
L_0765: call Boolean EnterNode(System.String)
L_076a: pop
L_076b: ldarg.0
L_076c: callvirt
System.Collections.Generic.List`1[EdB.PrepareCarefully.EquipmentSelection]
get_Equipment()
L_0771: callvirt Enumerator GetEnumerator()
L_0776: stloc.s 28
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.EquipmentSelecti
on])
L_0778: br Label #76
L_077d: Label #79
L_077d: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.EquipmentSelecti
on])
L_077f: call EdB.PrepareCarefully.EquipmentSelection get_Current()
L_0784: stloc.s 29 (EdB.PrepareCarefully.EquipmentSelection)
L_0786: ldloc.s 29 (EdB.PrepareCarefully.EquipmentSelection)
L_0788: newobj Void .ctor(EquipmentSelection)
L_078d: stloc.s 30 (EdB.PrepareCarefully.EquipmentSaveRecord)
L_078f: ldloca.s 30 (EdB.PrepareCarefully.EquipmentSaveRecord)
L_0791: ldstr "equipment"
L_0796: ldc.i4.0
L_0797: newarr System.Object
L_079c: call Void Look[EquipmentSaveRecord]
(EdB.PrepareCarefully.EquipmentSaveRecord ByRef, System.String, System.Object[])
L_07a1: leave.s Label #77
L_07a3: pop
L_07a4: ldc.i4.1
L_07a5: stloc.0
L_07a6: ldstr "Failed to save equipment to preset: "
L_07ab: ldloc.s 29 (EdB.PrepareCarefully.EquipmentSelection)
L_07ad: callvirt Verse.ThingDef get_ThingDef()
L_07b2: ldfld System.String defName
L_07b7: call System.String Concat(System.String, System.String)
L_07bc: call Void Warning(System.String)
L_07c1: leave.s Label #78
L_07c3: Label #76
L_07c3: Label #77
L_07c3: Label #78
L_07c3: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.EquipmentSelecti
on])
L_07c5: call Boolean MoveNext()
L_07ca: brtrue Label #79
L_07cf: leave.s Label #80
L_07d1: ldloca.s 28
(System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.EquipmentSelecti
on])
L_07d3: constrained.
System.Collections.Generic.List`1+Enumerator[EdB.PrepareCarefully.EquipmentSelectio
n]
L_07d9: callvirt Void Dispose()
L_07de: endfinally
L_07df: Label #80
L_07df: call Void ExitNode()
L_07e4: leave.s Label #81
L_07e6: call EdB.PrepareCarefully.PrepareCarefully get_Instance()
L_07eb: callvirt EdB.PrepareCarefully.State get_State()
L_07f0: ldstr "EdB.PC.Dialog.Preset.Error.SaveFailed"
L_07f5: call System.String Translate(System.String)
L_07fa: callvirt Void AddError(System.String)
L_07ff: ldstr "Failed to save preset file"
L_0804: call Void Error(System.String)
L_0809: throw
L_080a: ldsfld Verse.ScribeSaver saver
L_080f: callvirt Void FinalizeSaving()
L_0814: ldc.i4.0
L_0815: stsfld Verse.LoadSaveMode mode
L_081a: ldloc.0
L_081b: brfalse Label #82
L_0820: call EdB.PrepareCarefully.PrepareCarefully get_Instance()
L_0825: callvirt EdB.PrepareCarefully.State get_State()
L_082a: ldstr "EdB.PC.Dialog.Preset.Error.PartialSaveFailure"
L_082f: call System.String Translate(System.String)
L_0834: callvirt Void AddError(System.String)
L_0839: Label #82
L_0839: endfinally
L_083a: Label #81
L_083a: br Label #0
L_083f: Label #0
L_083f: ret
DONE
PATCHING EdB.PrepareCarefully.ColonistSaver Void
SaveToFile(EdB.PrepareCarefully.CustomPawn, System.String)
L_0000: Local var #0 System.String
L_0000: Local var #1 System.String
L_0000: Local var #2 EdB.PrepareCarefully.SaveRecordPawnV3
L_0000: ldsfld Verse.ScribeSaver saver
L_0005: ldarg.1
L_0006: call System.String FilePathForSavedColonist(System.String)
L_000b: ldstr "colonist"
L_0010: callvirt Void InitSaving(System.String, System.String)
L_0015: ldstr "3"
L_001a: stloc.0
L_001b: ldloca.s 0 (System.String)
L_001d: ldstr "version"
L_0022: ldnull
L_0023: ldc.i4.0
L_0024: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0029: call IEnumerable`1 get_RunningMods()
L_002e: ldsfld System.Func`2[Verse.ModContentPack,System.String] <>9__0_0
L_0033: dup
L_0034: brtrue Label #2
L_0039: pop
L_003a: ldsfld EdB.PrepareCarefully.ColonistSaver+<>c <>9
L_003f: ldftn System.String <SaveToFile>b__0_0(Verse.ModContentPack)
L_0045: newobj Void .ctor(Object, IntPtr)
L_004a: dup
L_004b: stsfld System.Func`2[Verse.ModContentPack,System.String] <>9__0_0
L_0050: Label #2
L_0050: call IEnumerable`1 Select[ModContentPack,String](IEnumerable`1,
System.Func`2[Verse.ModContentPack,System.String])
L_0055: ldc.i4.1
L_0056: call System.String ToCommaList(IEnumerable`1, Boolean)
L_005b: stloc.1
L_005c: ldloca.s 1 (System.String)
L_005e: ldstr "mods"
L_0063: ldnull
L_0064: ldc.i4.0
L_0065: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_006a: ldarg.0
L_006b: call Void AddPsycheToDictionary(EdB.PrepareCarefully.CustomPawn)
L_0070: ldarg.0
L_0071: newobj Void .ctor(CustomPawn)
L_0076: stloc.2
L_0077: ldloca.s 2 (EdB.PrepareCarefully.SaveRecordPawnV3)
L_0079: ldstr "colonist"
L_007e: ldc.i4.0
L_007f: newarr System.Object
L_0084: call Void Look[SaveRecordPawnV3](EdB.PrepareCarefully.SaveRecordPawnV3
ByRef, System.String, System.Object[])
L_0089: leave.s Label #3
L_008b: ldstr "Failed to save preset file"
L_0090: call Void Error(System.String)
L_0095: throw
L_0096: ldsfld Verse.ScribeSaver saver
L_009b: callvirt Void FinalizeSaving()
L_00a0: ldc.i4.0
L_00a1: stsfld Verse.LoadSaveMode mode
L_00a6: endfinally
L_00a7: Label #3
L_00a7: br Label #0
L_00ac: Label #0
L_00ac: ret
DONE

PATCHING EdB.PrepareCarefully.SaveRecordPawnV3 Void ExposeData()


L_0000: ldarg.0
L_0001: ldflda System.String id
L_0006: ldstr "id"
L_000b: ldnull
L_000c: ldc.i4.0
L_000d: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0012: ldarg.0
L_0013: ldflda System.String pawnKindDef
L_0018: ldstr "pawnKindDef"
L_001d: ldnull
L_001e: ldc.i4.0
L_001f: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0024: ldarg.0
L_0025: ldflda System.String thingDef
L_002a: ldstr "thingDef"
L_002f: ldsfld Verse.ThingDef Human
L_0034: ldfld System.String defName
L_0039: ldc.i4.0
L_003a: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_003f: ldarg.0
L_0040: ldflda Verse.Gender gender
L_0045: ldstr "gender"
L_004a: ldc.i4.1
L_004b: ldc.i4.0
L_004c: call Void Look[Gender](Gender ByRef, System.String, Gender, Boolean)
L_0051: ldarg.0
L_0052: ldflda System.String childhood
L_0057: ldstr "childhood"
L_005c: ldnull
L_005d: ldc.i4.0
L_005e: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0063: ldarg.0
L_0064: ldflda System.String adulthood
L_0069: ldstr "adulthood"
L_006e: ldnull
L_006f: ldc.i4.0
L_0070: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0075: ldarg.0
L_0076: ldflda System.Collections.Generic.List`1[System.String] traitNames
L_007b: ldstr "traitNames"
L_0080: ldc.i4.1
L_0081: ldnull
L_0082: call Void Look[String](System.Collections.Generic.List`1[System.String]
ByRef, System.String, LookMode, System.Object[])
L_0087: ldarg.0
L_0088: ldflda System.Collections.Generic.List`1[System.Int32] traitDegrees
L_008d: ldstr "traitDegrees"
L_0092: ldc.i4.1
L_0093: ldnull
L_0094: call Void Look[Int32](System.Collections.Generic.List`1[System.Int32]
ByRef, System.String, LookMode, System.Object[])
L_0099: ldarg.0
L_009a: ldflda UnityEngine.Color skinColor
L_009f: ldstr "skinColor"
L_00a4: call Color get_white()
L_00a9: ldc.i4.0
L_00aa: call Void Look[Color](Color ByRef, System.String, Color, Boolean)
L_00af: ldarg.0
L_00b0: ldflda System.Single melanin
L_00b5: ldstr "melanin"
L_00ba: ldc.r4 -1
L_00bf: ldc.i4.0
L_00c0: call Void Look[Single](Single ByRef, System.String, Single, Boolean)
L_00c5: ldarg.0
L_00c6: ldflda System.String bodyType
L_00cb: ldstr "bodyType"
L_00d0: ldnull
L_00d1: ldc.i4.0
L_00d2: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_00d7: ldarg.0
L_00d8: ldflda System.String hairDef
L_00dd: ldstr "hairDef"
L_00e2: ldnull
L_00e3: ldc.i4.0
L_00e4: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_00e9: ldarg.0
L_00ea: ldflda UnityEngine.Color hairColor
L_00ef: ldstr "hairColor"
L_00f4: call Color get_white()
L_00f9: ldc.i4.0
L_00fa: call Void Look[Color](Color ByRef, System.String, Color, Boolean)
L_00ff: ldarg.0
L_0100: ldflda System.String headGraphicPath
L_0105: ldstr "headGraphicPath"
L_010a: ldnull
L_010b: ldc.i4.0
L_010c: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0111: ldarg.0
L_0112: ldflda System.String firstName
L_0117: ldstr "firstName"
L_011c: ldnull
L_011d: ldc.i4.0
L_011e: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0123: ldarg.0
L_0124: ldflda System.String nickName
L_0129: ldstr "nickName"
L_012e: ldnull
L_012f: ldc.i4.0
L_0130: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0135: ldarg.0
L_0136: ldflda System.String lastName
L_013b: ldstr "lastName"
L_0140: ldnull
L_0141: ldc.i4.0
L_0142: call Void Look[String](System.String ByRef, System.String, System.String,
Boolean)
L_0147: ldsfld Verse.LoadSaveMode mode
L_014c: ldc.i4.2
L_014d: bne.un Label #2
L_0152: ldarg.0
L_0153: ldflda System.Int32 age
L_0158: ldstr "age"
L_015d: ldc.i4.0
L_015e: ldc.i4.0
L_015f: call Void Look[Int32](Int32 ByRef, System.String, Int32, Boolean)
L_0164: Label #2
L_0164: ldarg.0
L_0165: ldflda System.Int32 biologicalAge
L_016a: ldstr "biologicalAge"
L_016f: ldc.i4.0
L_0170: ldc.i4.0
L_0171: call Void Look[Int32](Int32 ByRef, System.String, Int32, Boolean)
L_0176: ldarg.0
L_0177: ldflda System.Int32 chronologicalAge
L_017c: ldstr "chronologicalAge"
L_0181: ldc.i4.0
L_0182: ldc.i4.0
L_0183: call Void Look[Int32](Int32 ByRef, System.String, Int32, Boolean)
L_0188: ldarg.0
L_0189: ldflda System.Collections.Generic.List`1[System.String] skillNames
L_018e: ldstr "skillNames"
L_0193: ldc.i4.1
L_0194: ldnull
L_0195: call Void Look[String](System.Collections.Generic.List`1[System.String]
ByRef, System.String, LookMode, System.Object[])
L_019a: ldarg.0
L_019b: ldflda System.Collections.Generic.List`1[System.Int32] skillValues
L_01a0: ldstr "skillValues"
L_01a5: ldc.i4.1
L_01a6: ldnull
L_01a7: call Void Look[Int32](System.Collections.Generic.List`1[System.Int32]
ByRef, System.String, LookMode, System.Object[])
L_01ac: ldarg.0
L_01ad: ldflda System.Collections.Generic.List`1[RimWorld.Passion] passions
L_01b2: ldstr "passions"
L_01b7: ldc.i4.1
L_01b8: ldnull
L_01b9: call Void Look[Passion](System.Collections.Generic.List`1[RimWorld.Passion]
ByRef, System.String, LookMode, System.Object[])
L_01be: ldarg.0
L_01bf: ldflda System.Collections.Generic.List`1[System.String] apparel
L_01c4: ldstr "apparel"
L_01c9: ldc.i4.1
L_01ca: ldnull
L_01cb: call Void Look[String](System.Collections.Generic.List`1[System.String]
ByRef, System.String, LookMode, System.Object[])
L_01d0: ldarg.0
L_01d1: ldflda System.Collections.Generic.List`1[System.Int32] apparelLayers
L_01d6: ldstr "apparelLayers"
L_01db: ldc.i4.1
L_01dc: ldnull
L_01dd: call Void Look[Int32](System.Collections.Generic.List`1[System.Int32]
ByRef, System.String, LookMode, System.Object[])
L_01e2: ldarg.0
L_01e3: ldflda System.Collections.Generic.List`1[System.String] apparelStuff
L_01e8: ldstr "apparelStuff"
L_01ed: ldc.i4.1
L_01ee: ldnull
L_01ef: call Void Look[String](System.Collections.Generic.List`1[System.String]
ByRef, System.String, LookMode, System.Object[])
L_01f4: ldarg.0
L_01f5: ldflda System.Collections.Generic.List`1[UnityEngine.Color] apparelColors
L_01fa: ldstr "apparelColors"
L_01ff: ldc.i4.1
L_0200: ldnull
L_0201: call Void Look[Color](System.Collections.Generic.List`1[UnityEngine.Color]
ByRef, System.String, LookMode, System.Object[])
L_0206: ldsfld Verse.LoadSaveMode mode
L_020b: ldc.i4.1
L_020c: bne.un Label #3
L_0211: ldarg.0
L_0212: ldflda
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3]
implants
L_0217: ldstr "implants"
L_021c: ldc.i4.2
L_021d: ldnull
L_021e: call Void Look[SaveRecordImplantV3]
(System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3] ByRef,
System.String, LookMode, System.Object[])
L_0223: br Label #4
L_0228: Label #3
L_0228: ldsfld Verse.ScribeLoader loader
L_022d: ldfld System.Xml.XmlNode curXmlParent
L_0232: ldstr "implants"
L_0237: callvirt System.Xml.XmlElement get_Item(System.String)
L_023c: brfalse Label #5
L_0241: ldarg.0
L_0242: ldflda
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3]
implants
L_0247: ldstr "implants"
L_024c: ldc.i4.2
L_024d: ldnull
L_024e: call Void Look[SaveRecordImplantV3]
(System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordImplantV3] ByRef,
System.String, LookMode, System.Object[])
L_0253: Label #4
L_0253: Label #5
L_0253: ldsfld Verse.LoadSaveMode mode
L_0258: ldc.i4.1
L_0259: bne.un Label #6
L_025e: ldarg.0
L_025f: ldflda
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordInjuryV3] injuries
L_0264: ldstr "injuries"
L_0269: ldc.i4.2
L_026a: ldnull
L_026b: call Void Look[SaveRecordInjuryV3]
(System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordInjuryV3] ByRef,
System.String, LookMode, System.Object[])
L_0270: br Label #0
L_0275: Label #6
L_0275: ldsfld Verse.ScribeLoader loader
L_027a: ldfld System.Xml.XmlNode curXmlParent
L_027f: ldstr "injuries"
L_0284: callvirt System.Xml.XmlElement get_Item(System.String)
L_0289: brfalse Label #7
L_028e: ldarg.0
L_028f: ldflda
System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordInjuryV3] injuries
L_0294: ldstr "injuries"
L_0299: ldc.i4.2
L_029a: ldnull
L_029b: call Void Look[SaveRecordInjuryV3]
(System.Collections.Generic.List`1[EdB.PrepareCarefully.SaveRecordInjuryV3] ByRef,
System.String, LookMode, System.Object[])
L_02a0: Label #7
L_02a0: br Label #0
L_02a5: Label #0
L_02a5: ldarg.0
L_02a6: call Void ExposePsycheData(EdB.PrepareCarefully.SaveRecordPawnV3)
L_02ab: ret
DONE

PATCHING Verse.AI.AttackTargetFinder IAttackTarget


BestAttackTarget(IAttackTargetSearcher, TargetScanFlags,
System.Predicate`1[Verse.Thing], Single, Single, IntVec3, Single, Boolean)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 System.Int32
L_0000: Local var #3 Verse.AI.IAttackTarget
L_0000: Local var #4 Verse.AI.IAttackTarget
L_0000: Local var #5 System.Predicate`1[[Verse.Thing, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6 Verse.AI.IAttackTarget
L_0000: Local var #7 Verse.AI.IAttackTarget
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: Local var #10
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
L_0000: Local var #11
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502
L_0000: Local var #12 Verse.IntVec3
L_0000: Local var #13
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503
L_0000: Local var #14 System.Int32
L_0000: Local var #15 System.Boolean
L_0000: Local var #16 Verse.IntVec3
L_0000: Local var #17 Verse.IntVec3
L_0000: Local var #18 Verse.AI.IAttackTarget
L_0000: ldnull
L_0001: stloc 18 (Verse.AI.IAttackTarget)
L_0003: ldarga 2
L_0009: call Void BestAttackTargetPrefix(System.Predicate`1[Verse.Thing] ByRef)
L_000e: newobj Void .ctor()
L_0013: stloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0015: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0017: ldarg.0
L_0018: stfld Verse.AI.IAttackTargetSearcher searcher
L_001d: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_001f: ldarg.s 6
L_0021: stfld System.Single maxTravelRadiusFromLocus
L_0026: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0028: ldarg.s 5
L_002a: stfld Verse.IntVec3 locus
L_002f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0031: ldarg.2
L_0032: stfld System.Predicate`1[Verse.Thing] validator
L_0037: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0039: ldarg.1
L_003a: stfld Verse.AI.TargetScanFlags flags
L_003f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0041: ldarg.s 7
L_0043: stfld System.Boolean canBash
L_0048: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_004a: ldarg.s 4
L_004c: stfld System.Single maxDist
L_0051: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0053: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0055: ldfld Verse.AI.IAttackTargetSearcher searcher
L_005a: callvirt Verse.Thing get_Thing()
L_005f: stfld Verse.Thing searcherThing
L_0064: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0066: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0068: ldfld Verse.AI.IAttackTargetSearcher searcher
L_006d: isinst Verse.Pawn
L_0072: stfld Verse.Pawn searcherPawn
L_0077: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0079: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_007b: ldfld Verse.AI.IAttackTargetSearcher searcher
L_0080: callvirt Verse.Verb get_CurrentEffectiveVerb()
L_0085: stfld Verse.Verb verb
L_008a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_008c: ldfld Verse.Verb verb
L_0091: brtrue Label #2
L_0096: ldstr "BestAttackTarget with "
L_009b: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_009d: ldfld Verse.AI.IAttackTargetSearcher searcher
L_00a2: ldstr " who has no attack verb."
L_00a7: call System.String Concat(System.Object, System.Object, System.Object)
L_00ac: call Void Error(System.String)
L_00b1: ldnull
L_00b2: br Label #0
L_00b7: Label #2
L_00b7: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00b9: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00bb: ldfld Verse.Verb verb
L_00c0: brfalse Label #3
L_00c5: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00c7: ldfld Verse.Verb verb
L_00cc: ldfld Verse.VerbProperties verbProps
L_00d1: ldfld Verse.ThingDef projectileDef
L_00d6: brfalse Label #4
L_00db: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00dd: ldfld Verse.Verb verb
L_00e2: ldfld Verse.VerbProperties verbProps
L_00e7: ldfld Verse.ThingDef projectileDef
L_00ec: ldfld Verse.ProjectileProperties projectile
L_00f1: ldfld Verse.DamageDef damageDef
L_00f6: ldsfld Verse.DamageDef EMP
L_00fb: ceq
L_00fd: br Label #5
L_0102: Label #3
L_0102: Label #4
L_0102: ldc.i4.0
L_0103: Label #5
L_0103: stfld System.Boolean onlyTargetMachines
L_0108: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_010a: ldarg.3
L_010b: ldarg.3
L_010c: mul
L_010d: stfld System.Single minDistanceSquared
L_0112: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0114: ldfld System.Single maxTravelRadiusFromLocus
L_0119: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_011b: ldfld Verse.Verb verb
L_0120: ldfld Verse.VerbProperties verbProps
L_0125: ldfld System.Single range
L_012a: add
L_012b: stloc.0
L_012c: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_012e: ldloc.0
L_012f: ldloc.0
L_0130: mul
L_0131: stfld System.Single maxLocusDistSquared
L_0136: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0138: ldnull
L_0139: stfld System.Func`2[Verse.IntVec3,System.Boolean] losValidator
L_013e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0140: ldfld Verse.AI.TargetScanFlags flags
L_0145: ldc.i4.s 64
L_0147: and
L_0148: conv.u1
L_0149: brfalse Label #6
L_014e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0150: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0152: ldftn Boolean <>m__7F8(IntVec3)
L_0158: newobj Void .ctor(Object, IntPtr)
L_015d: stfld System.Func`2[Verse.IntVec3,System.Boolean] losValidator
L_0162: Label #6
L_0162: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0164: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0166: ldftn Boolean <>m__7F9(IAttackTarget)
L_016c: newobj Void .ctor(Object, IntPtr)
L_0171: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0176: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0178: ldfld Verse.AI.IAttackTargetSearcher searcher
L_017d: call Boolean HasRangedAttack(IAttackTargetSearcher)
L_0182: brfalse Label #7
L_0187: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_018c: callvirt Void Clear()
L_0191: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0196: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0198: ldfld Verse.Thing searcherThing
L_019d: callvirt Verse.Map get_Map()
L_01a2: ldfld Verse.AI.AttackTargetsCache attackTargetsCache
L_01a7: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01a9: ldfld Verse.AI.IAttackTargetSearcher searcher
L_01ae: callvirt System.Collections.Generic.List`1[Verse.AI.IAttackTarget]
GetPotentialTargetsFor(IAttackTargetSearcher)
L_01b3: callvirt Void AddRange(IEnumerable`1)
L_01b8: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01ba: ldfld Verse.AI.TargetScanFlags flags
L_01bf: ldc.i4.4
L_01c0: and
L_01c1: conv.u1
L_01c2: brfalse Label #8
L_01c7: newobj Void .ctor()
L_01cc: stloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01ce: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01d0: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01d2: stfld Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
<>f__ref$1281
L_01d7: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01d9: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01db: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_01e0: stfld System.Predicate`1[Verse.AI.IAttackTarget] oldValidator
L_01e5: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01e7: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01e9: ldftn Boolean <>m__7FA(IAttackTarget)
L_01ef: newobj Void .ctor(Object, IntPtr)
L_01f4: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_01f9: Label #8
L_01f9: ldc.i4.0
L_01fa: stloc.1
L_01fb: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01fd: ldfld Verse.Thing searcherThing
L_0202: callvirt RimWorld.Faction get_Faction()
L_0207: call RimWorld.Faction get_OfPlayer()
L_020c: beq Label #9
L_0211: ldc.i4.0
L_0212: stloc.2
L_0213: br Label #10
L_0218: Label #15
L_0218: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_021d: ldloc.2
L_021e: callvirt IAttackTarget get_Item(Int32)
L_0223: stloc.3
L_0224: ldloc.3
L_0225: callvirt Verse.Thing get_Thing()
L_022a: callvirt IntVec3 get_Position()
L_022f: stloc.s 12 (Verse.IntVec3)
L_0231: ldloca.s 12 (Verse.IntVec3)
L_0233: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0235: ldfld Verse.Thing searcherThing
L_023a: callvirt IntVec3 get_Position()
L_023f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0241: ldfld System.Single maxDist
L_0246: call Boolean InHorDistOf(IntVec3, Single)
L_024b: brfalse Label #11
L_0250: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0252: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0257: ldloc.3
L_0258: callvirt Boolean Invoke(IAttackTarget)
L_025d: brfalse Label #12
L_0262: ldloc.3
L_0263: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0265: ldfld Verse.AI.IAttackTargetSearcher searcher
L_026a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_026c: ldfld Verse.Verb verb
L_0271: call Boolean CanShootAtFromCurrentPosition(IAttackTarget,
IAttackTargetSearcher, Verse.Verb)
L_0276: brfalse Label #13
L_027b: ldc.i4.1
L_027c: stloc.1
L_027d: br Label #14
L_0282: Label #11
L_0282: Label #12
L_0282: Label #13
L_0282: ldloc.2
L_0283: ldc.i4.1
L_0284: add
L_0285: stloc.2
L_0286: Label #10
L_0286: ldloc.2
L_0287: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_028c: callvirt Int32 get_Count()
L_0291: blt Label #15
L_0296: Label #9
L_0296: Label #14
L_0296: ldloc.1
L_0297: brfalse Label #16
L_029c: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_02a1: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02a3: ldftn Boolean <>m__7FB(IAttackTarget)
L_02a9: newobj Void .ctor(Object, IntPtr)
L_02ae: callvirt Int32 RemoveAll(System.Predicate`1[Verse.AI.IAttackTarget])
L_02b3: pop
L_02b4: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_02b9: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02bb: ldfld Verse.AI.IAttackTargetSearcher searcher
L_02c0: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02c2: ldfld Verse.Verb verb
L_02c7: call IAttackTarget
GetRandomShootingTargetByScore(System.Collections.Generic.List`1[Verse.AI.IAttackTa
rget], IAttackTargetSearcher, Verse.Verb)
L_02cc: stloc.s 4 (Verse.AI.IAttackTarget)
L_02ce: br Label #17
L_02d3: Label #16
L_02d3: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02d5: ldfld Verse.AI.TargetScanFlags flags
L_02da: ldc.i4.8
L_02db: and
L_02dc: conv.u1
L_02dd: brfalse Label #18
L_02e2: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02e4: ldfld Verse.AI.TargetScanFlags flags
L_02e9: ldc.i4.4
L_02ea: and
L_02eb: conv.u1
L_02ec: brtrue Label #19
L_02f1: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02f3: ldftn Boolean <>m__7FC(Verse.Thing)
L_02f9: newobj Void .ctor(Object, IntPtr)
L_02fe: stloc.s 5 (System.Predicate`1[Verse.Thing])
L_0300: br Label #20
L_0305: Label #18
L_0305: Label #19
L_0305: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0307: ldftn Boolean <>m__7FD(Verse.Thing)
L_030d: newobj Void .ctor(Object, IntPtr)
L_0312: stloc.s 5 (System.Predicate`1[Verse.Thing])
L_0314: Label #20
L_0314: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0316: ldfld Verse.Thing searcherThing
L_031b: callvirt IntVec3 get_Position()
L_0320: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0325: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0327: ldfld System.Single maxDist
L_032c: ldloc.s 5 (System.Predicate`1[Verse.Thing])
L_032e: call Verse.Thing ClosestThing_Global(IntVec3, IEnumerable, Single,
System.Predicate`1[Verse.Thing])
L_0333: castclass Verse.AI.IAttackTarget
L_0338: stloc.s 4 (Verse.AI.IAttackTarget)
L_033a: Label #17
L_033a: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_033f: callvirt Void Clear()
L_0344: ldloc.s 4 (Verse.AI.IAttackTarget)
L_0346: br Label #0
L_034b: Label #7
L_034b: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_034d: ldfld Verse.Pawn searcherPawn
L_0352: brfalse Label #21
L_0357: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0359: ldfld Verse.Pawn searcherPawn
L_035e: ldfld Verse.AI.Pawn_MindState mindState
L_0363: ldfld Verse.AI.PawnDuty duty
L_0368: brfalse Label #22
L_036d: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_036f: ldfld Verse.Pawn searcherPawn
L_0374: ldfld Verse.AI.Pawn_MindState mindState
L_0379: ldfld Verse.AI.PawnDuty duty
L_037e: ldfld System.Single radius
L_0383: ldc.r4 0
L_0388: ble.un Label #23
L_038d: newobj Void .ctor()
L_0392: stloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_0394: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_0396: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0398: stfld Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
<>f__ref$1281
L_039d: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_039f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03a1: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_03a6: stfld System.Predicate`1[Verse.AI.IAttackTarget] oldValidator
L_03ab: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03ad: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_03af: ldftn Boolean <>m__7FE(IAttackTarget)
L_03b5: newobj Void .ctor(Object, IntPtr)
L_03ba: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_03bf: Label #21
L_03bf: Label #22
L_03bf: Label #23
L_03bf: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03c1: ldfld System.Single maxDist
L_03c6: ldc.r4 800
L_03cb: ble.un Label #24
L_03d0: ldc.i4.m1
L_03d1: br Label #25
L_03d6: Label #24
L_03d6: ldc.i4.s 40
L_03d8: Label #25
L_03d8: stloc.s 14 (System.Int32)
L_03da: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03dc: ldfld Verse.Thing searcherThing
L_03e1: callvirt IntVec3 get_Position()
L_03e6: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03e8: ldfld Verse.Thing searcherThing
L_03ed: callvirt Verse.Map get_Map()
L_03f2: ldc.i4.s 16
L_03f4: call ThingRequest ForGroup(ThingRequestGroup)
L_03f9: ldc.i4.2
L_03fa: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03fc: ldfld System.Boolean canBash
L_0401: stloc.s 15 (System.Boolean)
L_0403: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0405: ldfld Verse.Pawn searcherPawn
L_040a: ldc.i4.3
L_040b: ldc.i4.0
L_040c: ldloc.s 15 (System.Boolean)
L_040e: call TraverseParms For(Verse.Pawn, Danger, TraverseMode, Boolean)
L_0413: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0415: ldfld System.Single maxDist
L_041a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_041c: ldftn Boolean <>m__7FF(Verse.Thing)
L_0422: newobj Void .ctor(Object, IntPtr)
L_0427: ldnull
L_0428: ldc.i4.0
L_0429: ldloc.s 14 (System.Int32)
L_042b: ldc.i4.0
L_042c: ldc.i4.6
L_042d: ldc.i4.0
L_042e: call Verse.Thing ClosestThingReachable(IntVec3, Verse.Map, ThingRequest,
PathEndMode, TraverseParms, Single, System.Predicate`1[Verse.Thing], IEnumerable`1,
Int32, Int32, Boolean, RegionType, Boolean)
L_0433: castclass Verse.AI.IAttackTarget
L_0438: stloc.s 6 (Verse.AI.IAttackTarget)
L_043a: ldloc.s 6 (Verse.AI.IAttackTarget)
L_043c: brfalse Label #26
L_0441: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0443: ldfld Verse.Pawn searcherPawn
L_0448: call Boolean ShouldCollideWithPawns(Verse.Pawn)
L_044d: brfalse Label #27
L_0452: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0454: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0459: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_045b: ldfld Verse.Pawn searcherPawn
L_0460: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0462: ldfld System.Single maxDist
L_0467: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0469: ldfld System.Boolean canBash
L_046e: call IAttackTarget
FindBestReachableMeleeTarget(System.Predicate`1[Verse.AI.IAttackTarget],
Verse.Pawn, Single, Boolean)
L_0473: stloc.s 7 (Verse.AI.IAttackTarget)
L_0475: ldloc.s 7 (Verse.AI.IAttackTarget)
L_0477: brfalse Label #28
L_047c: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_047e: ldfld Verse.Pawn searcherPawn
L_0483: callvirt IntVec3 get_Position()
L_0488: ldloc.s 6 (Verse.AI.IAttackTarget)
L_048a: callvirt Verse.Thing get_Thing()
L_048f: callvirt IntVec3 get_Position()
L_0494: call IntVec3 op_Subtraction(IntVec3, IntVec3)
L_0499: stloc.s 16 (Verse.IntVec3)
L_049b: ldloca.s 16 (Verse.IntVec3)
L_049d: call Single get_LengthHorizontal()
L_04a2: stloc.s 8 (System.Single)
L_04a4: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_04a6: ldfld Verse.Pawn searcherPawn
L_04ab: callvirt IntVec3 get_Position()
L_04b0: ldloc.s 7 (Verse.AI.IAttackTarget)
L_04b2: callvirt Verse.Thing get_Thing()
L_04b7: callvirt IntVec3 get_Position()
L_04bc: call IntVec3 op_Subtraction(IntVec3, IntVec3)
L_04c1: stloc.s 17 (Verse.IntVec3)
L_04c3: ldloca.s 17 (Verse.IntVec3)
L_04c5: call Single get_LengthHorizontal()
L_04ca: stloc.s 9 (System.Single)
L_04cc: ldloc.s 8 (System.Single)
L_04ce: ldloc.s 9 (System.Single)
L_04d0: sub
L_04d1: call Single Abs(Single)
L_04d6: ldc.r4 50
L_04db: bge.un Label #29
L_04e0: ldloc.s 7 (Verse.AI.IAttackTarget)
L_04e2: stloc.s 6 (Verse.AI.IAttackTarget)
L_04e4: Label #26
L_04e4: Label #27
L_04e4: Label #28
L_04e4: Label #29
L_04e4: ldloc.s 6 (Verse.AI.IAttackTarget)
L_04e6: br Label #0
L_04eb: Label #0
L_04eb: stloc 18 (Verse.AI.IAttackTarget)
L_04ed: ldloc 18 (Verse.AI.IAttackTarget)
L_04ef: ret
DONE

PATCHING RimWorld.PawnWoundDrawer+Wound Void .ctor(Pawn)


L_0000: Local var #0 System.Int32
L_0000: ldarg.0
L_0001: newobj Void .ctor()
L_0006: stfld System.Collections.Generic.List`1[UnityEngine.Vector2] locsPerSide
L_000b: ldarg.0
L_000c: call Void .ctor()
L_0011: ldarg.1
L_0012: callvirt Verse.RaceProperties get_RaceProps()
L_0017: callvirt RimWorld.FleshTypeDef get_FleshType()
L_001c: ldsfld RimWorld.FleshTypeDef Normal
L_0021: beq Label #10
L_0026: ldarg.1
L_0027: ldfld Verse.ThingDef def
L_002c: ldfld System.String defName
L_0031: ldstr "ROM_"
L_0036: callvirt Boolean StartsWith(System.String)
L_003b: brfalse Label #2
L_0040: Label #10
L_0040: ldarg.0
L_0041: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Flesh
L_0046: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_004b: stfld UnityEngine.Material mat
L_0050: br Label #3
L_0055: Label #2
L_0055: ldarg.1
L_0056: callvirt Verse.RaceProperties get_RaceProps()
L_005b: callvirt RimWorld.FleshTypeDef get_FleshType()
L_0060: ldsfld RimWorld.FleshTypeDef Mechanoid
L_0065: bne.un Label #4
L_006a: ldarg.0
L_006b: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Mech
L_0070: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_0075: stfld UnityEngine.Material mat
L_007a: br Label #5
L_007f: Label #4
L_007f: ldarg.1
L_0080: callvirt Verse.RaceProperties get_RaceProps()
L_0085: callvirt RimWorld.FleshTypeDef get_FleshType()
L_008a: ldsfld RimWorld.FleshTypeDef Insectoid
L_008f: bne.un Label #6
L_0094: ldarg.0
L_0095: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Insect
L_009a: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_009f: stfld UnityEngine.Material mat
L_00a4: br Label #7
L_00a9: Label #6
L_00a9: ldstr "No wound graphics data available for flesh type {0}"
L_00ae: ldarg.1
L_00af: callvirt Verse.RaceProperties get_RaceProps()
L_00b4: callvirt RimWorld.FleshTypeDef get_FleshType()
L_00b9: call System.String Format(System.String, System.Object)
L_00be: ldc.i4 76591733
L_00c3: call Void ErrorOnce(System.String, Int32)
L_00c8: ldarg.0
L_00c9: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Flesh
L_00ce: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_00d3: stfld UnityEngine.Material mat
L_00d8: Label #3
L_00d8: Label #5
L_00d8: Label #7
L_00d8: ldarg.0
L_00d9: ldc.i4.0
L_00da: ldc.i4 360
L_00df: call Int32 Range(Int32, Int32)
L_00e4: conv.r4
L_00e5: call Vector3 get_up()
L_00ea: call Quaternion AngleAxis(Single, Vector3)
L_00ef: stfld UnityEngine.Quaternion quat
L_00f4: ldc.i4.0
L_00f5: stloc.0
L_00f6: br Label #8
L_00fb: Label #9
L_00fb: ldarg.0
L_00fc: ldfld System.Collections.Generic.List`1[UnityEngine.Vector2] locsPerSide
L_0101: call Single get_Value()
L_0106: call Single get_Value()
L_010b: newobj Void .ctor(Single, Single)
L_0110: callvirt Void Add(Vector2)
L_0115: ldloc.0
L_0116: ldc.i4.1
L_0117: add
L_0118: stloc.0
L_0119: Label #8
L_0119: ldloc.0
L_011a: ldc.i4.4
L_011b: blt Label #9
L_0120: br Label #0
L_0125: Label #0
L_0125: ret
DONE

PATCHING RimWorld.ThingSelectionUtility Boolean SelectableByMapClick(Verse.Thing)


L_0000: Local var #0 Verse.CellRect+CellRectIterator
L_0000: Local var #1 Verse.CellRect
L_0000: Local var #2 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 2 (System.Boolean)
L_0006: ldarg.0
L_0007: ldfld Verse.ThingDef def
L_000c: ldfld System.Boolean selectable
L_0011: brtrue Label #2
L_0016: ldc.i4.0
L_0017: br Label #0
L_001c: Label #2
L_001c: ldarg.0
L_001d: callvirt Boolean get_Spawned()
L_0022: brtrue Label #3
L_0027: ldc.i4.0
L_0028: br Label #0
L_002d: Label #3
L_002d: ldarg.0
L_002e: ldfld Verse.ThingDef def
L_0033: ldflda Verse.IntVec2 size
L_0038: ldfld System.Int32 x
L_003d: ldc.i4.1
L_003e: bne.un Label #4
L_0043: ldarg.0
L_0044: ldfld Verse.ThingDef def
L_0049: ldflda Verse.IntVec2 size
L_004e: ldfld System.Int32 z
L_0053: ldc.i4.1
L_0054: bne.un Label #5
L_0059: ldarg.0
L_005a: callvirt IntVec3 get_Position()
L_005f: ldarg.0
L_0060: callvirt Verse.Map get_Map()
L_0065: call Boolean Fogged(IntVec3, Verse.Map)
L_006a: ldc.i4.0
L_006b: ceq
L_006d: br Label #0
L_0072: Label #4
L_0072: Label #5
L_0072: ldarg.0
L_0073: call CellRect OccupiedRect(Verse.Thing)
L_0078: stloc.1
L_0079: ldloca.s 1 (Verse.CellRect)
L_007b: call CellRectIterator GetIterator()
L_0080: stloc.0
L_0081: br Label #6
L_0086: Label #8
L_0086: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_0088: call IntVec3 get_Current()
L_008d: ldarg.0
L_008e: callvirt Verse.Map get_Map()
L_0093: call Boolean Fogged(IntVec3, Verse.Map)
L_0098: brtrue Label #7
L_009d: ldc.i4.1
L_009e: br Label #0
L_00a3: Label #7
L_00a3: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_00a5: call Void MoveNext()
L_00aa: Label #6
L_00aa: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_00ac: call Boolean Done()
L_00b1: brfalse Label #8
L_00b6: ldc.i4.0
L_00b7: br Label #0
L_00bc: Label #0
L_00bc: stloc 2 (System.Boolean)
L_00bd: ldarg 0
L_00c3: ldloca 2 (System.Boolean)
L_00c5: call Void SelectableByMapClickPostfix(Verse.Thing, Boolean ByRef)
L_00ca: ldloc 2 (System.Boolean)
L_00cb: ret
DONE

PATCHING Verse.AI.AttackTargetFinder IAttackTarget


BestAttackTarget(IAttackTargetSearcher, TargetScanFlags,
System.Predicate`1[Verse.Thing], Single, Single, IntVec3, Single, Boolean)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 System.Int32
L_0000: Local var #3 Verse.AI.IAttackTarget
L_0000: Local var #4 Verse.AI.IAttackTarget
L_0000: Local var #5 System.Predicate`1[[Verse.Thing, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6 Verse.AI.IAttackTarget
L_0000: Local var #7 Verse.AI.IAttackTarget
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: Local var #10
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
L_0000: Local var #11
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502
L_0000: Local var #12 Verse.IntVec3
L_0000: Local var #13
Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503
L_0000: Local var #14 System.Int32
L_0000: Local var #15 System.Boolean
L_0000: Local var #16 Verse.IntVec3
L_0000: Local var #17 Verse.IntVec3
L_0000: Local var #18 Verse.AI.IAttackTarget
L_0000: ldnull
L_0001: stloc 18 (Verse.AI.IAttackTarget)
L_0003: ldarga 2
L_0009: call Void BestAttackTargetPrefix(System.Predicate`1[Verse.Thing] ByRef)
L_000e: ldarga 2
L_0014: call Void BestAttackTargetPrefix(System.Predicate`1[Verse.Thing] ByRef)
L_0019: newobj Void .ctor()
L_001e: stloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0020: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0022: ldarg.0
L_0023: stfld Verse.AI.IAttackTargetSearcher searcher
L_0028: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_002a: ldarg.s 6
L_002c: stfld System.Single maxTravelRadiusFromLocus
L_0031: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0033: ldarg.s 5
L_0035: stfld Verse.IntVec3 locus
L_003a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_003c: ldarg.2
L_003d: stfld System.Predicate`1[Verse.Thing] validator
L_0042: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0044: ldarg.1
L_0045: stfld Verse.AI.TargetScanFlags flags
L_004a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_004c: ldarg.s 7
L_004e: stfld System.Boolean canBash
L_0053: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0055: ldarg.s 4
L_0057: stfld System.Single maxDist
L_005c: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_005e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0060: ldfld Verse.AI.IAttackTargetSearcher searcher
L_0065: callvirt Verse.Thing get_Thing()
L_006a: stfld Verse.Thing searcherThing
L_006f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0071: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0073: ldfld Verse.AI.IAttackTargetSearcher searcher
L_0078: isinst Verse.Pawn
L_007d: stfld Verse.Pawn searcherPawn
L_0082: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0084: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0086: ldfld Verse.AI.IAttackTargetSearcher searcher
L_008b: callvirt Verse.Verb get_CurrentEffectiveVerb()
L_0090: stfld Verse.Verb verb
L_0095: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0097: ldfld Verse.Verb verb
L_009c: brtrue Label #2
L_00a1: ldstr "BestAttackTarget with "
L_00a6: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00a8: ldfld Verse.AI.IAttackTargetSearcher searcher
L_00ad: ldstr " who has no attack verb."
L_00b2: call System.String Concat(System.Object, System.Object, System.Object)
L_00b7: call Void Error(System.String)
L_00bc: ldnull
L_00bd: br Label #0
L_00c2: Label #2
L_00c2: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00c4: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00c6: ldfld Verse.Verb verb
L_00cb: brfalse Label #3
L_00d0: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00d2: ldfld Verse.Verb verb
L_00d7: ldfld Verse.VerbProperties verbProps
L_00dc: ldfld Verse.ThingDef projectileDef
L_00e1: brfalse Label #4
L_00e6: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_00e8: ldfld Verse.Verb verb
L_00ed: ldfld Verse.VerbProperties verbProps
L_00f2: ldfld Verse.ThingDef projectileDef
L_00f7: ldfld Verse.ProjectileProperties projectile
L_00fc: ldfld Verse.DamageDef damageDef
L_0101: ldsfld Verse.DamageDef EMP
L_0106: ceq
L_0108: br Label #5
L_010d: Label #3
L_010d: Label #4
L_010d: ldc.i4.0
L_010e: Label #5
L_010e: stfld System.Boolean onlyTargetMachines
L_0113: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0115: ldarg.3
L_0116: ldarg.3
L_0117: mul
L_0118: stfld System.Single minDistanceSquared
L_011d: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_011f: ldfld System.Single maxTravelRadiusFromLocus
L_0124: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0126: ldfld Verse.Verb verb
L_012b: ldfld Verse.VerbProperties verbProps
L_0130: ldfld System.Single range
L_0135: add
L_0136: stloc.0
L_0137: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0139: ldloc.0
L_013a: ldloc.0
L_013b: mul
L_013c: stfld System.Single maxLocusDistSquared
L_0141: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0143: ldnull
L_0144: stfld System.Func`2[Verse.IntVec3,System.Boolean] losValidator
L_0149: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_014b: ldfld Verse.AI.TargetScanFlags flags
L_0150: ldc.i4.s 64
L_0152: and
L_0153: conv.u1
L_0154: brfalse Label #6
L_0159: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_015b: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_015d: ldftn Boolean <>m__7F8(IntVec3)
L_0163: newobj Void .ctor(Object, IntPtr)
L_0168: stfld System.Func`2[Verse.IntVec3,System.Boolean] losValidator
L_016d: Label #6
L_016d: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_016f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0171: ldftn Boolean <>m__7F9(IAttackTarget)
L_0177: newobj Void .ctor(Object, IntPtr)
L_017c: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0181: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0183: ldfld Verse.AI.IAttackTargetSearcher searcher
L_0188: call Boolean HasRangedAttack(IAttackTargetSearcher)
L_018d: brfalse Label #7
L_0192: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0197: callvirt Void Clear()
L_019c: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_01a1: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01a3: ldfld Verse.Thing searcherThing
L_01a8: callvirt Verse.Map get_Map()
L_01ad: ldfld Verse.AI.AttackTargetsCache attackTargetsCache
L_01b2: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01b4: ldfld Verse.AI.IAttackTargetSearcher searcher
L_01b9: callvirt System.Collections.Generic.List`1[Verse.AI.IAttackTarget]
GetPotentialTargetsFor(IAttackTargetSearcher)
L_01be: callvirt Void AddRange(IEnumerable`1)
L_01c3: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01c5: ldfld Verse.AI.TargetScanFlags flags
L_01ca: ldc.i4.4
L_01cb: and
L_01cc: conv.u1
L_01cd: brfalse Label #8
L_01d2: newobj Void .ctor()
L_01d7: stloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01d9: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01db: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01dd: stfld Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
<>f__ref$1281
L_01e2: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01e4: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01e6: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_01eb: stfld System.Predicate`1[Verse.AI.IAttackTarget] oldValidator
L_01f0: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_01f2: ldloc.s 11 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey502)
L_01f4: ldftn Boolean <>m__7FA(IAttackTarget)
L_01fa: newobj Void .ctor(Object, IntPtr)
L_01ff: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0204: Label #8
L_0204: ldc.i4.0
L_0205: stloc.1
L_0206: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0208: ldfld Verse.Thing searcherThing
L_020d: callvirt RimWorld.Faction get_Faction()
L_0212: call RimWorld.Faction get_OfPlayer()
L_0217: beq Label #9
L_021c: ldc.i4.0
L_021d: stloc.2
L_021e: br Label #10
L_0223: Label #15
L_0223: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0228: ldloc.2
L_0229: callvirt IAttackTarget get_Item(Int32)
L_022e: stloc.3
L_022f: ldloc.3
L_0230: callvirt Verse.Thing get_Thing()
L_0235: callvirt IntVec3 get_Position()
L_023a: stloc.s 12 (Verse.IntVec3)
L_023c: ldloca.s 12 (Verse.IntVec3)
L_023e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0240: ldfld Verse.Thing searcherThing
L_0245: callvirt IntVec3 get_Position()
L_024a: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_024c: ldfld System.Single maxDist
L_0251: call Boolean InHorDistOf(IntVec3, Single)
L_0256: brfalse Label #11
L_025b: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_025d: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0262: ldloc.3
L_0263: callvirt Boolean Invoke(IAttackTarget)
L_0268: brfalse Label #12
L_026d: ldloc.3
L_026e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0270: ldfld Verse.AI.IAttackTargetSearcher searcher
L_0275: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0277: ldfld Verse.Verb verb
L_027c: call Boolean CanShootAtFromCurrentPosition(IAttackTarget,
IAttackTargetSearcher, Verse.Verb)
L_0281: brfalse Label #13
L_0286: ldc.i4.1
L_0287: stloc.1
L_0288: br Label #14
L_028d: Label #11
L_028d: Label #12
L_028d: Label #13
L_028d: ldloc.2
L_028e: ldc.i4.1
L_028f: add
L_0290: stloc.2
L_0291: Label #10
L_0291: ldloc.2
L_0292: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0297: callvirt Int32 get_Count()
L_029c: blt Label #15
L_02a1: Label #9
L_02a1: Label #14
L_02a1: ldloc.1
L_02a2: brfalse Label #16
L_02a7: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_02ac: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02ae: ldftn Boolean <>m__7FB(IAttackTarget)
L_02b4: newobj Void .ctor(Object, IntPtr)
L_02b9: callvirt Int32 RemoveAll(System.Predicate`1[Verse.AI.IAttackTarget])
L_02be: pop
L_02bf: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_02c4: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02c6: ldfld Verse.AI.IAttackTargetSearcher searcher
L_02cb: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02cd: ldfld Verse.Verb verb
L_02d2: call IAttackTarget
GetRandomShootingTargetByScore(System.Collections.Generic.List`1[Verse.AI.IAttackTa
rget], IAttackTargetSearcher, Verse.Verb)
L_02d7: stloc.s 4 (Verse.AI.IAttackTarget)
L_02d9: br Label #17
L_02de: Label #16
L_02de: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02e0: ldfld Verse.AI.TargetScanFlags flags
L_02e5: ldc.i4.8
L_02e6: and
L_02e7: conv.u1
L_02e8: brfalse Label #18
L_02ed: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02ef: ldfld Verse.AI.TargetScanFlags flags
L_02f4: ldc.i4.4
L_02f5: and
L_02f6: conv.u1
L_02f7: brtrue Label #19
L_02fc: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_02fe: ldftn Boolean <>m__7FC(Verse.Thing)
L_0304: newobj Void .ctor(Object, IntPtr)
L_0309: stloc.s 5 (System.Predicate`1[Verse.Thing])
L_030b: br Label #20
L_0310: Label #18
L_0310: Label #19
L_0310: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0312: ldftn Boolean <>m__7FD(Verse.Thing)
L_0318: newobj Void .ctor(Object, IntPtr)
L_031d: stloc.s 5 (System.Predicate`1[Verse.Thing])
L_031f: Label #20
L_031f: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0321: ldfld Verse.Thing searcherThing
L_0326: callvirt IntVec3 get_Position()
L_032b: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_0330: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0332: ldfld System.Single maxDist
L_0337: ldloc.s 5 (System.Predicate`1[Verse.Thing])
L_0339: call Verse.Thing ClosestThing_Global(IntVec3, IEnumerable, Single,
System.Predicate`1[Verse.Thing])
L_033e: castclass Verse.AI.IAttackTarget
L_0343: stloc.s 4 (Verse.AI.IAttackTarget)
L_0345: Label #17
L_0345: ldsfld System.Collections.Generic.List`1[Verse.AI.IAttackTarget] tmpTargets
L_034a: callvirt Void Clear()
L_034f: ldloc.s 4 (Verse.AI.IAttackTarget)
L_0351: br Label #0
L_0356: Label #7
L_0356: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0358: ldfld Verse.Pawn searcherPawn
L_035d: brfalse Label #21
L_0362: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0364: ldfld Verse.Pawn searcherPawn
L_0369: ldfld Verse.AI.Pawn_MindState mindState
L_036e: ldfld Verse.AI.PawnDuty duty
L_0373: brfalse Label #22
L_0378: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_037a: ldfld Verse.Pawn searcherPawn
L_037f: ldfld Verse.AI.Pawn_MindState mindState
L_0384: ldfld Verse.AI.PawnDuty duty
L_0389: ldfld System.Single radius
L_038e: ldc.r4 0
L_0393: ble.un Label #23
L_0398: newobj Void .ctor()
L_039d: stloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_039f: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_03a1: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03a3: stfld Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501
<>f__ref$1281
L_03a8: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_03aa: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03ac: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_03b1: stfld System.Predicate`1[Verse.AI.IAttackTarget] oldValidator
L_03b6: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03b8: ldloc.s 13 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey503)
L_03ba: ldftn Boolean <>m__7FE(IAttackTarget)
L_03c0: newobj Void .ctor(Object, IntPtr)
L_03c5: stfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_03ca: Label #21
L_03ca: Label #22
L_03ca: Label #23
L_03ca: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03cc: ldfld System.Single maxDist
L_03d1: ldc.r4 800
L_03d6: ble.un Label #24
L_03db: ldc.i4.m1
L_03dc: br Label #25
L_03e1: Label #24
L_03e1: ldc.i4.s 40
L_03e3: Label #25
L_03e3: stloc.s 14 (System.Int32)
L_03e5: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03e7: ldfld Verse.Thing searcherThing
L_03ec: callvirt IntVec3 get_Position()
L_03f1: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_03f3: ldfld Verse.Thing searcherThing
L_03f8: callvirt Verse.Map get_Map()
L_03fd: ldc.i4.s 16
L_03ff: call ThingRequest ForGroup(ThingRequestGroup)
L_0404: ldc.i4.2
L_0405: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0407: ldfld System.Boolean canBash
L_040c: stloc.s 15 (System.Boolean)
L_040e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0410: ldfld Verse.Pawn searcherPawn
L_0415: ldc.i4.3
L_0416: ldc.i4.0
L_0417: ldloc.s 15 (System.Boolean)
L_0419: call TraverseParms For(Verse.Pawn, Danger, TraverseMode, Boolean)
L_041e: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0420: ldfld System.Single maxDist
L_0425: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0427: ldftn Boolean <>m__7FF(Verse.Thing)
L_042d: newobj Void .ctor(Object, IntPtr)
L_0432: ldnull
L_0433: ldc.i4.0
L_0434: ldloc.s 14 (System.Int32)
L_0436: ldc.i4.0
L_0437: ldc.i4.6
L_0438: ldc.i4.0
L_0439: call Verse.Thing ClosestThingReachable(IntVec3, Verse.Map, ThingRequest,
PathEndMode, TraverseParms, Single, System.Predicate`1[Verse.Thing], IEnumerable`1,
Int32, Int32, Boolean, RegionType, Boolean)
L_043e: castclass Verse.AI.IAttackTarget
L_0443: stloc.s 6 (Verse.AI.IAttackTarget)
L_0445: ldloc.s 6 (Verse.AI.IAttackTarget)
L_0447: brfalse Label #26
L_044c: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_044e: ldfld Verse.Pawn searcherPawn
L_0453: call Boolean ShouldCollideWithPawns(Verse.Pawn)
L_0458: brfalse Label #27
L_045d: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_045f: ldfld System.Predicate`1[Verse.AI.IAttackTarget] innerValidator
L_0464: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0466: ldfld Verse.Pawn searcherPawn
L_046b: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_046d: ldfld System.Single maxDist
L_0472: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0474: ldfld System.Boolean canBash
L_0479: call IAttackTarget
FindBestReachableMeleeTarget(System.Predicate`1[Verse.AI.IAttackTarget],
Verse.Pawn, Single, Boolean)
L_047e: stloc.s 7 (Verse.AI.IAttackTarget)
L_0480: ldloc.s 7 (Verse.AI.IAttackTarget)
L_0482: brfalse Label #28
L_0487: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_0489: ldfld Verse.Pawn searcherPawn
L_048e: callvirt IntVec3 get_Position()
L_0493: ldloc.s 6 (Verse.AI.IAttackTarget)
L_0495: callvirt Verse.Thing get_Thing()
L_049a: callvirt IntVec3 get_Position()
L_049f: call IntVec3 op_Subtraction(IntVec3, IntVec3)
L_04a4: stloc.s 16 (Verse.IntVec3)
L_04a6: ldloca.s 16 (Verse.IntVec3)
L_04a8: call Single get_LengthHorizontal()
L_04ad: stloc.s 8 (System.Single)
L_04af: ldloc.s 10 (Verse.AI.AttackTargetFinder+<BestAttackTarget>c__AnonStorey501)
L_04b1: ldfld Verse.Pawn searcherPawn
L_04b6: callvirt IntVec3 get_Position()
L_04bb: ldloc.s 7 (Verse.AI.IAttackTarget)
L_04bd: callvirt Verse.Thing get_Thing()
L_04c2: callvirt IntVec3 get_Position()
L_04c7: call IntVec3 op_Subtraction(IntVec3, IntVec3)
L_04cc: stloc.s 17 (Verse.IntVec3)
L_04ce: ldloca.s 17 (Verse.IntVec3)
L_04d0: call Single get_LengthHorizontal()
L_04d5: stloc.s 9 (System.Single)
L_04d7: ldloc.s 8 (System.Single)
L_04d9: ldloc.s 9 (System.Single)
L_04db: sub
L_04dc: call Single Abs(Single)
L_04e1: ldc.r4 50
L_04e6: bge.un Label #29
L_04eb: ldloc.s 7 (Verse.AI.IAttackTarget)
L_04ed: stloc.s 6 (Verse.AI.IAttackTarget)
L_04ef: Label #26
L_04ef: Label #27
L_04ef: Label #28
L_04ef: Label #29
L_04ef: ldloc.s 6 (Verse.AI.IAttackTarget)
L_04f1: br Label #0
L_04f6: Label #0
L_04f6: stloc 18 (Verse.AI.IAttackTarget)
L_04f8: ldloc 18 (Verse.AI.IAttackTarget)
L_04fa: ret
DONE

PATCHING RimWorld.PawnWoundDrawer+Wound Void .ctor(Pawn)


L_0000: Local var #0 System.Int32
L_0000: ldarg.0
L_0001: newobj Void .ctor()
L_0006: stfld System.Collections.Generic.List`1[UnityEngine.Vector2] locsPerSide
L_000b: ldarg.0
L_000c: call Void .ctor()
L_0011: ldarg.1
L_0012: callvirt Verse.RaceProperties get_RaceProps()
L_0017: callvirt RimWorld.FleshTypeDef get_FleshType()
L_001c: ldsfld RimWorld.FleshTypeDef Normal
L_0021: beq Label #10
L_0026: ldarg.1
L_0027: ldfld Verse.ThingDef def
L_002c: ldfld System.String defName
L_0031: ldstr "ROM_"
L_0036: callvirt Boolean StartsWith(System.String)
L_003b: brfalse Label #2
L_0040: Label #10
L_0040: ldarg.0
L_0041: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Flesh
L_0046: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_004b: stfld UnityEngine.Material mat
L_0050: br Label #3
L_0055: Label #2
L_0055: ldarg.1
L_0056: callvirt Verse.RaceProperties get_RaceProps()
L_005b: callvirt RimWorld.FleshTypeDef get_FleshType()
L_0060: ldsfld RimWorld.FleshTypeDef Mechanoid
L_0065: beq Label #11
L_006a: ldarg.1
L_006b: ldfld Verse.ThingDef def
L_0070: ldfld System.String defName
L_0075: ldstr "ROM_"
L_007a: callvirt Boolean StartsWith(System.String)
L_007f: brfalse Label #4
L_0084: Label #11
L_0084: ldarg.0
L_0085: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Mech
L_008a: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_008f: stfld UnityEngine.Material mat
L_0094: br Label #5
L_0099: Label #4
L_0099: ldarg.1
L_009a: callvirt Verse.RaceProperties get_RaceProps()
L_009f: callvirt RimWorld.FleshTypeDef get_FleshType()
L_00a4: ldsfld RimWorld.FleshTypeDef Insectoid
L_00a9: bne.un Label #6
L_00ae: ldarg.0
L_00af: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Insect
L_00b4: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_00b9: stfld UnityEngine.Material mat
L_00be: br Label #7
L_00c3: Label #6
L_00c3: ldstr "No wound graphics data available for flesh type {0}"
L_00c8: ldarg.1
L_00c9: callvirt Verse.RaceProperties get_RaceProps()
L_00ce: callvirt RimWorld.FleshTypeDef get_FleshType()
L_00d3: call System.String Format(System.String, System.Object)
L_00d8: ldc.i4 76591733
L_00dd: call Void ErrorOnce(System.String, Int32)
L_00e2: ldarg.0
L_00e3: ldsfld System.Collections.Generic.List`1[UnityEngine.Material]
WoundOverlays_Flesh
L_00e8: call UnityEngine.Material RandomElement[Material](IEnumerable`1)
L_00ed: stfld UnityEngine.Material mat
L_00f2: Label #3
L_00f2: Label #5
L_00f2: Label #7
L_00f2: ldarg.0
L_00f3: ldc.i4.0
L_00f4: ldc.i4 360
L_00f9: call Int32 Range(Int32, Int32)
L_00fe: conv.r4
L_00ff: call Vector3 get_up()
L_0104: call Quaternion AngleAxis(Single, Vector3)
L_0109: stfld UnityEngine.Quaternion quat
L_010e: ldc.i4.0
L_010f: stloc.0
L_0110: br Label #8
L_0115: Label #9
L_0115: ldarg.0
L_0116: ldfld System.Collections.Generic.List`1[UnityEngine.Vector2] locsPerSide
L_011b: call Single get_Value()
L_0120: call Single get_Value()
L_0125: newobj Void .ctor(Single, Single)
L_012a: callvirt Void Add(Vector2)
L_012f: ldloc.0
L_0130: ldc.i4.1
L_0131: add
L_0132: stloc.0
L_0133: Label #8
L_0133: ldloc.0
L_0134: ldc.i4.4
L_0135: blt Label #9
L_013a: br Label #0
L_013f: Label #0
L_013f: ret
DONE

PATCHING RimWorld.ThingSelectionUtility Boolean SelectableByMapClick(Verse.Thing)


L_0000: Local var #0 Verse.CellRect+CellRectIterator
L_0000: Local var #1 Verse.CellRect
L_0000: Local var #2 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 2 (System.Boolean)
L_0006: ldarg.0
L_0007: ldfld Verse.ThingDef def
L_000c: ldfld System.Boolean selectable
L_0011: brtrue Label #2
L_0016: ldc.i4.0
L_0017: br Label #0
L_001c: Label #2
L_001c: ldarg.0
L_001d: callvirt Boolean get_Spawned()
L_0022: brtrue Label #3
L_0027: ldc.i4.0
L_0028: br Label #0
L_002d: Label #3
L_002d: ldarg.0
L_002e: ldfld Verse.ThingDef def
L_0033: ldflda Verse.IntVec2 size
L_0038: ldfld System.Int32 x
L_003d: ldc.i4.1
L_003e: bne.un Label #4
L_0043: ldarg.0
L_0044: ldfld Verse.ThingDef def
L_0049: ldflda Verse.IntVec2 size
L_004e: ldfld System.Int32 z
L_0053: ldc.i4.1
L_0054: bne.un Label #5
L_0059: ldarg.0
L_005a: callvirt IntVec3 get_Position()
L_005f: ldarg.0
L_0060: callvirt Verse.Map get_Map()
L_0065: call Boolean Fogged(IntVec3, Verse.Map)
L_006a: ldc.i4.0
L_006b: ceq
L_006d: br Label #0
L_0072: Label #4
L_0072: Label #5
L_0072: ldarg.0
L_0073: call CellRect OccupiedRect(Verse.Thing)
L_0078: stloc.1
L_0079: ldloca.s 1 (Verse.CellRect)
L_007b: call CellRectIterator GetIterator()
L_0080: stloc.0
L_0081: br Label #6
L_0086: Label #8
L_0086: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_0088: call IntVec3 get_Current()
L_008d: ldarg.0
L_008e: callvirt Verse.Map get_Map()
L_0093: call Boolean Fogged(IntVec3, Verse.Map)
L_0098: brtrue Label #7
L_009d: ldc.i4.1
L_009e: br Label #0
L_00a3: Label #7
L_00a3: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_00a5: call Void MoveNext()
L_00aa: Label #6
L_00aa: ldloca.s 0 (Verse.CellRect+CellRectIterator)
L_00ac: call Boolean Done()
L_00b1: brfalse Label #8
L_00b6: ldc.i4.0
L_00b7: br Label #0
L_00bc: Label #0
L_00bc: stloc 2 (System.Boolean)
L_00bd: ldarg 0
L_00c3: ldloca 2 (System.Boolean)
L_00c5: call Void SelectableByMapClickPostfix(Verse.Thing, Boolean ByRef)
L_00ca: ldarg 0
L_00d0: ldloca 2 (System.Boolean)
L_00d2: call Void SelectableByMapClickPostfix(Verse.Thing, Boolean ByRef)
L_00d7: ldloc 2 (System.Boolean)
L_00d8: ret
DONE

PATCHING Verse.HediffSet Single CalculatePain()


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Int32
L_0000: Local var #2 System.Single
L_0000: Local var #3 System.Int32
L_0000: Local var #4 System.Single
L_0000: ldc.r4 0
L_0005: stloc 4 (System.Single)
L_0007: ldarg.0
L_0008: ldloca 4 (System.Single)
L_000a: call Boolean CalculatePain_PreFix(Verse.HediffSet, Single ByRef)
L_000f: brfalse Label #1
L_0014: ldarg.0
L_0015: ldfld Verse.Pawn pawn
L_001a: callvirt Verse.RaceProperties get_RaceProps()
L_001f: callvirt Boolean get_IsFlesh()
L_0024: brfalse Label #2
L_0029: ldarg.0
L_002a: ldfld Verse.Pawn pawn
L_002f: callvirt Boolean get_Dead()
L_0034: brfalse Label #3
L_0039: Label #2
L_0039: ldc.r4 0
L_003e: br Label #0
L_0043: Label #3
L_0043: ldc.r4 0
L_0048: stloc.0
L_0049: ldc.i4.0
L_004a: stloc.1
L_004b: br Label #4
L_0050: Label #5
L_0050: ldloc.0
L_0051: ldarg.0
L_0052: ldfld System.Collections.Generic.List`1[Verse.Hediff] hediffs
L_0057: ldloc.1
L_0058: callvirt Verse.Hediff get_Item(Int32)
L_005d: callvirt Single get_PainOffset()
L_0062: add
L_0063: stloc.0
L_0064: ldloc.1
L_0065: ldc.i4.1
L_0066: add
L_0067: stloc.1
L_0068: Label #4
L_0068: ldloc.1
L_0069: ldarg.0
L_006a: ldfld System.Collections.Generic.List`1[Verse.Hediff] hediffs
L_006f: callvirt Int32 get_Count()
L_0074: blt Label #5
L_0079: ldloc.0
L_007a: ldarg.0
L_007b: ldfld Verse.Pawn pawn
L_0080: callvirt Single get_HealthScale()
L_0085: div
L_0086: stloc.2
L_0087: ldc.i4.0
L_0088: stloc.3
L_0089: br Label #6
L_008e: Label #7
L_008e: ldloc.2
L_008f: ldarg.0
L_0090: ldfld System.Collections.Generic.List`1[Verse.Hediff] hediffs
L_0095: ldloc.3
L_0096: callvirt Verse.Hediff get_Item(Int32)
L_009b: callvirt Single get_PainFactor()
L_00a0: mul
L_00a1: stloc.2
L_00a2: ldloc.3
L_00a3: ldc.i4.1
L_00a4: add
L_00a5: stloc.3
L_00a6: Label #6
L_00a6: ldloc.3
L_00a7: ldarg.0
L_00a8: ldfld System.Collections.Generic.List`1[Verse.Hediff] hediffs
L_00ad: callvirt Int32 get_Count()
L_00b2: blt Label #7
L_00b7: ldloc.2
L_00b8: ldc.r4 0
L_00bd: ldc.r4 1
L_00c2: call Single Clamp(Single, Single, Single)
L_00c7: br Label #0
L_00cc: Label #0
L_00cc: stloc 4 (System.Single)
L_00ce: Label #1
L_00ce: ldloc 4 (System.Single)
L_00d0: ret
DONE

PATCHING RimWorld.TrashUtility Verse.AI.Job TrashJob(Verse.Pawn, Verse.Thing)


L_0000: Local var #0 RimWorld.Plant
L_0000: Local var #1 Verse.AI.Job
L_0000: Local var #2 Verse.Verb
L_0000: Local var #3 System.Collections.Generic.IEnumerator`1[[Verse.Verb,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #4 Verse.AI.Job
L_0000: Local var #5 Verse.AI.Job
L_0000: Local var #6 System.Single
L_0000: Local var #7 Verse.AI.Job
L_0000: ldarg.1
L_0001: isinst RimWorld.Plant
L_0006: stloc.0
L_0007: ldloc.0
L_0008: brfalse Label #2
L_000d: ldsfld Verse.JobDef Ignite
L_0012: ldarg.1
L_0013: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0018: newobj Void .ctor(JobDef, LocalTargetInfo)
L_001d: stloc.1
L_001e: ldloc.1
L_001f: call Void FinalizeTrashJob(Verse.AI.Job)
L_0024: ldloc.1
L_0025: br Label #0
L_002a: Label #2
L_002a: ldarg.0
L_002b: ldfld Verse.Pawn_EquipmentTracker equipment
L_0030: brfalse Label #3
L_0035: call Single get_Value()
L_003a: ldc.r4 0.7
L_003f: bge.un Label #4
L_0044: ldarg.0
L_0045: ldfld Verse.Pawn_EquipmentTracker equipment
L_004a: callvirt IEnumerable`1 get_AllEquipmentVerbs()
L_004f: callvirt IEnumerator`1 GetEnumerator()
L_0054: stloc.3
L_0055: br Label #5
L_005a: Label #8
L_005a: ldloc.3
L_005b: callvirt Verse.Verb get_Current()
L_0060: stloc.2
L_0061: ldloc.2
L_0062: ldfld Verse.VerbProperties verbProps
L_0067: ldfld System.Boolean ai_IsBuildingDestroyer
L_006c: brfalse Label #6
L_0071: ldsfld Verse.JobDef UseVerbOnThing
L_0076: ldarg.1
L_0077: call LocalTargetInfo op_Implicit(Verse.Thing)
L_007c: newobj Void .ctor(JobDef, LocalTargetInfo)
L_0081: stloc.s 4 (Verse.AI.Job)
L_0083: ldloc.s 4 (Verse.AI.Job)
L_0085: ldloc.2
L_0086: stfld Verse.Verb verbToUse
L_008b: ldloc.s 4 (Verse.AI.Job)
L_008d: call Void FinalizeTrashJob(Verse.AI.Job)
L_0092: ldloc.s 4 (Verse.AI.Job)
L_0094: stloc.s 7 (Verse.AI.Job)
L_0096: leave Label #7
L_009b: Label #5
L_009b: Label #6
L_009b: ldloc.3
L_009c: callvirt Boolean MoveNext()
L_00a1: brtrue Label #8
L_00a6: leave Label #9
L_00ab: ldloc.3
L_00ac: brtrue Label #10
L_00b1: endfinally
L_00b2: Label #10
L_00b2: ldloc.3
L_00b3: callvirt Void Dispose()
L_00b8: endfinally
L_00b9: Label #3
L_00b9: Label #4
L_00b9: Label #9
L_00b9: ldnull
L_00ba: stloc.s 5 (Verse.AI.Job)
L_00bc: call Single get_Value()
L_00c1: stloc.s 6 (System.Single)
L_00c3: ldloc.s 6 (System.Single)
L_00c5: ldc.r4 0.35
L_00ca: bge.un Label #11
L_00cf: ldarg.0
L_00d0: ldfld RimWorld.Pawn_NativeVerbs natives
L_00d5: callvirt RimWorld.Verb_Ignite get_IgniteVerb()
L_00da: brfalse Label #12
L_00df: ldarg.1
L_00e0: callvirt Boolean get_FlammableNow()
L_00e5: brfalse Label #13
L_00ea: ldarg.1
L_00eb: call Boolean IsBurning(Verse.Thing)
L_00f0: brtrue Label #14
L_00f5: ldarg.1
L_00f6: isinst RimWorld.Building_Door
L_00fb: brtrue Label #15
L_0100: ldsfld Verse.JobDef Ignite
L_0105: ldarg.1
L_0106: call LocalTargetInfo op_Implicit(Verse.Thing)
L_010b: newobj Void .ctor(JobDef, LocalTargetInfo)
L_0110: stloc.s 5 (Verse.AI.Job)
L_0112: br Label #16
L_0117: Label #11
L_0117: Label #12
L_0117: Label #13
L_0117: Label #14
L_0117: Label #15
L_0117: ldsfld Verse.JobDef AttackMelee
L_011c: ldarg.1
L_011d: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0122: newobj Void .ctor(JobDef, LocalTargetInfo)
L_0127: stloc.s 5 (Verse.AI.Job)
L_0129: Label #16
L_0129: ldloc.s 5 (Verse.AI.Job)
L_012b: call Void FinalizeTrashJob(Verse.AI.Job)
L_0130: ldloc.s 5 (Verse.AI.Job)
L_0132: br Label #0
L_0137: Label #7
L_0137: ldloc.s 7 (Verse.AI.Job)
L_0139: br Label #0
L_013e: Label #0
L_013e: ret
DONE

PATCHING RimWorld.CollectionsMassCalculator Single


CapacityTransferables(System.Collections.Generic.List`1[RimWorld.TransferableOneWay
])
L_0000: Local var #0 System.Int32
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: ldc.r4 0
L_0005: stloc 2 (System.Single)
L_0006: ldarg 0
L_000c: ldloca 2 (System.Single)
L_000e: call Boolean
CapacityTransferables_PreFix(System.Collections.Generic.List`1[RimWorld.Transferabl
eOneWay], Single ByRef)
L_0013: brfalse Label #1
L_0018: ldsfld System.Collections.Generic.List`1[Verse.ThingStackPart]
tmpThingStackParts
L_001d: callvirt Void Clear()
L_0022: ldc.i4.0
L_0023: stloc.0
L_0024: br Label #2
L_0029: Label #8
L_0029: ldarg.0
L_002a: ldloc.0
L_002b: callvirt RimWorld.TransferableOneWay get_Item(Int32)
L_0030: callvirt Boolean get_HasAnyThing()
L_0035: brtrue Label #3
L_003a: br Label #4
L_003f: Label #3
L_003f: ldarg.0
L_0040: ldloc.0
L_0041: callvirt RimWorld.TransferableOneWay get_Item(Int32)
L_0046: callvirt Verse.Thing get_AnyThing()
L_004b: isinst Verse.Pawn
L_0050: brtrue Label #5
L_0055: br Label #6
L_005a: Label #5
L_005a: ldarg.0
L_005b: ldloc.0
L_005c: callvirt RimWorld.TransferableOneWay get_Item(Int32)
L_0061: ldfld System.Collections.Generic.List`1[Verse.Thing] things
L_0066: ldarg.0
L_0067: ldloc.0
L_0068: callvirt RimWorld.TransferableOneWay get_Item(Int32)
L_006d: callvirt Int32 get_CountToTransfer()
L_0072: ldsfld System.Action`2[Verse.Thing,System.Int32] <>f__am$cache2
L_0077: brtrue Label #7
L_007c: ldnull
L_007d: ldftn Void <CapacityTransferables>m__72F(Verse.Thing, Int32)
L_0083: newobj Void .ctor(Object, IntPtr)
L_0088: stsfld System.Action`2[Verse.Thing,System.Int32] <>f__am$cache2
L_008d: Label #7
L_008d: ldsfld System.Action`2[Verse.Thing,System.Int32] <>f__am$cache2
L_0092: ldc.i4.0
L_0093: ldc.i4.0
L_0094: call Void TransferNoSplit(System.Collections.Generic.List`1[Verse.Thing],
Int32, System.Action`2[Verse.Thing,System.Int32], Boolean, Boolean)
L_0099: Label #4
L_0099: Label #6
L_0099: ldloc.0
L_009a: ldc.i4.1
L_009b: add
L_009c: stloc.0
L_009d: Label #2
L_009d: ldloc.0
L_009e: ldarg.0
L_009f: callvirt Int32 get_Count()
L_00a4: blt Label #8
L_00a9: ldsfld System.Collections.Generic.List`1[Verse.ThingStackPart]
tmpThingStackParts
L_00ae: call Single
Capacity(System.Collections.Generic.List`1[Verse.ThingStackPart])
L_00b3: stloc.1
L_00b4: ldsfld System.Collections.Generic.List`1[Verse.ThingStackPart]
tmpThingStackParts
L_00b9: callvirt Void Clear()
L_00be: ldloc.1
L_00bf: br Label #0
L_00c4: Label #0
L_00c4: stloc 2 (System.Single)
L_00c5: Label #1
L_00c5: ldloc 2 (System.Single)
L_00c6: ret
DONE

PATCHING Verse.AI.Pawn_MindState Void


StartManhunterBecauseOfPawnAction(System.String)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.String
L_0000: Local var #3 RimWorld.Planet.GlobalTargetInfo
L_0000: Local var #4 System.Int32
L_0000: Local var #5 Verse.Pawn
L_0000: Local var #6 System.Collections.Generic.IEnumerator`1[[Verse.Pawn,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #7 System.String
L_0000: ldarg.0
L_0001: call Boolean
StartManhunterBecauseOfPawnAction_PreFix(Verse.AI.Pawn_MindState)
L_0006: brfalse Label #1
L_000b: ldarg.0
L_000c: ldfld Verse.AI.MentalStateHandler mentalStateHandler
L_0011: ldsfld Verse.MentalStateDef Manhunter
L_0016: ldnull
L_0017: ldc.i4.0
L_0018: ldc.i4.0
L_0019: ldnull
L_001a: callvirt Boolean TryStartMentalState(Verse.MentalStateDef, System.String,
Boolean, Boolean, Verse.Pawn)
L_001f: brtrue Label #2
L_0024: br Label #0
L_0029: Label #2
L_0029: ldarg.1
L_002a: ldc.i4.1
L_002b: newarr System.Object
L_0030: dup
L_0031: ldc.i4.0
L_0032: ldarg.0
L_0033: ldfld Verse.Pawn pawn
L_0038: callvirt System.String get_Label()
L_003d: stelem.ref
L_003e: call System.String Translate(System.String, System.Object[])
L_0043: stloc.2
L_0044: ldarg.0
L_0045: ldfld Verse.Pawn pawn
L_004a: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_004f: stloc.3
L_0050: call Single get_Value()
L_0055: ldc.r4 0.5
L_005a: bge.un Label #3
L_005f: ldc.i4.1
L_0060: stloc.s 4 (System.Int32)
L_0062: ldarg.0
L_0063: ldarg.0
L_0064: ldfld Verse.Pawn pawn
L_0069: ldc.r4 24
L_006e: call IEnumerable`1 GetPackmates(Verse.Pawn, Single)
L_0073: callvirt IEnumerator`1 GetEnumerator()
L_0078: stloc.s 6 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_007a: br Label #4
L_007f: Label #6
L_007f: ldloc.s 6 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_0081: callvirt Verse.Pawn get_Current()
L_0086: stloc.s 5 (Verse.Pawn)
L_0088: ldloc.s 5 (Verse.Pawn)
L_008a: ldfld Verse.AI.Pawn_MindState mindState
L_008f: ldfld Verse.AI.MentalStateHandler mentalStateHandler
L_0094: ldsfld Verse.MentalStateDef Manhunter
L_0099: ldnull
L_009a: ldc.i4.0
L_009b: ldc.i4.0
L_009c: ldnull
L_009d: callvirt Boolean TryStartMentalState(Verse.MentalStateDef, System.String,
Boolean, Boolean, Verse.Pawn)
L_00a2: brfalse Label #5
L_00a7: ldloc.s 4 (System.Int32)
L_00a9: ldc.i4.1
L_00aa: add
L_00ab: stloc.s 4 (System.Int32)
L_00ad: Label #4
L_00ad: Label #5
L_00ad: ldloc.s 6 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_00af: callvirt Boolean MoveNext()
L_00b4: brtrue Label #6
L_00b9: leave Label #7
L_00be: ldloc.s 6 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_00c0: brtrue Label #8
L_00c5: endfinally
L_00c6: Label #8
L_00c6: ldloc.s 6 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_00c8: callvirt Void Dispose()
L_00cd: endfinally
L_00ce: Label #7
L_00ce: ldloc.s 4 (System.Int32)
L_00d0: ldc.i4.1
L_00d1: ble Label #9
L_00d6: ldarg.0
L_00d7: ldfld Verse.Pawn pawn
L_00dc: callvirt IntVec3 get_Position()
L_00e1: ldarg.0
L_00e2: ldfld Verse.Pawn pawn
L_00e7: callvirt Verse.Map get_Map()
L_00ec: ldc.i4.0
L_00ed: newobj Void .ctor(IntVec3, Map, Boolean)
L_00f2: call GlobalTargetInfo op_Implicit(TargetInfo)
L_00f7: stloc.3
L_00f8: ldloc.2
L_00f9: ldstr "

"
L_00fe: call System.String Concat(System.String, System.String)
L_0103: stloc.2
L_0104: ldloc.2
L_0105: ldstr "AnimalManhunterOthers"
L_010a: call Boolean CanTranslate(System.String)
L_010f: brfalse Label #10
L_0114: ldstr "AnimalManhunterOthers"
L_0119: ldc.i4.1
L_011a: newarr System.Object
L_011f: dup
L_0120: ldc.i4.0
L_0121: ldarg.0
L_0122: ldfld Verse.Pawn pawn
L_0127: ldfld Verse.ThingDef def
L_012c: ldfld System.String label
L_0131: stelem.ref
L_0132: call System.String Translate(System.String, System.Object[])
L_0137: br Label #11
L_013c: Label #10
L_013c: ldstr "AnimalManhunterFromDamageOthers"
L_0141: ldc.i4.1
L_0142: newarr System.Object
L_0147: dup
L_0148: ldc.i4.0
L_0149: ldarg.0
L_014a: ldfld Verse.Pawn pawn
L_014f: ldfld Verse.ThingDef def
L_0154: ldfld System.String label
L_0159: stelem.ref
L_015a: call System.String Translate(System.String, System.Object[])
L_015f: Label #11
L_015f: call System.String Concat(System.String, System.String)
L_0164: stloc.2
L_0165: Label #3
L_0165: Label #9
L_0165: ldstr "LetterLabelAnimalManhunterRevenge"
L_016a: call Boolean CanTranslate(System.String)
L_016f: brfalse Label #12
L_0174: ldstr "LetterLabelAnimalManhunterRevenge"
L_0179: ldc.i4.1
L_017a: newarr System.Object
L_017f: dup
L_0180: ldc.i4.0
L_0181: ldarg.0
L_0182: ldfld Verse.Pawn pawn
L_0187: callvirt System.String get_Label()
L_018c: stelem.ref
L_018d: call System.String Translate(System.String, System.Object[])
L_0192: call System.String CapitalizeFirst(System.String)
L_0197: br Label #13
L_019c: Label #12
L_019c: ldstr "LetterLabelAnimalManhunterFromDamage"
L_01a1: ldc.i4.1
L_01a2: newarr System.Object
L_01a7: dup
L_01a8: ldc.i4.0
L_01a9: ldarg.0
L_01aa: ldfld Verse.Pawn pawn
L_01af: callvirt System.String get_Label()
L_01b4: stelem.ref
L_01b5: call System.String Translate(System.String, System.Object[])
L_01ba: call System.String CapitalizeFirst(System.String)
L_01bf: Label #13
L_01bf: stloc.s 7 (System.String)
L_01c1: call Verse.LetterStack get_LetterStack()
L_01c6: ldloc.s 7 (System.String)
L_01c8: ldloc.2
L_01c9: ldsfld Verse.LetterDef BadNonUrgent
L_01ce: ldloc.3
L_01cf: ldnull
L_01d0: callvirt Void ReceiveLetter(System.String, System.String, Verse.LetterDef,
GlobalTargetInfo, System.String)
L_01d5: br Label #0
L_01da: Label #0
L_01da: Label #1
L_01da: ret
DONE

PATCHING RimWorld.Faction Void Notify_MemberDied(Verse.Pawn, Nullable`1, Boolean)


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 System.Single
L_0000: Local var #3 Verse.DamageInfo
L_0000: Local var #4 Verse.DamageInfo
L_0000: Local var #5 Verse.DamageInfo
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: ldarg 2
L_000d: ldarg 3
L_0013: call Boolean Notify_MemberDied_Prefix(RimWorld.Faction, Verse.Pawn,
Nullable`1, Boolean)
L_0018: brfalse Label #1
L_001d: ldarg.0
L_001e: call Boolean get_IsPlayer()
L_0023: brfalse Label #2
L_0028: br Label #0
L_002d: Label #2
L_002d: ldarg.3
L_002e: brtrue Label #3
L_0033: ldarg.1
L_0034: call Boolean IsBeingGenerated(Verse.Pawn)
L_0039: brtrue Label #4
L_003e: call ProgramState get_ProgramState()
L_0043: ldc.i4.2
L_0044: bne.un Label #5
L_0049: ldarga.s 2
L_004b: call Boolean get_HasValue()
L_0050: brfalse Label #6
L_0055: ldarga.s 2
L_0057: call DamageInfo get_Value()
L_005c: stloc.3
L_005d: ldloca.s 3 (Verse.DamageInfo)
L_005f: call SourceCategory get_Category()
L_0064: ldc.i4.1
L_0065: bne.un Label #7
L_006a: ldarg.1
L_006b: callvirt Verse.RaceProperties get_RaceProps()
L_0070: ldfld Verse.BodyDef body
L_0075: ldfld Verse.BodyPartRecord corePart
L_007a: ldfld Verse.BodyPartDef def
L_007f: ldarg.1
L_0080: callvirt Single GetMaxHealth(Verse.Pawn)
L_0085: ldc.r4 1.3
L_008a: mul
L_008b: ldc.r4 0.5
L_0090: mul
L_0091: ldc.r4 -1
L_0096: mul
L_0097: stloc.0
L_0098: ldarg.0
L_0099: call RimWorld.Faction get_OfPlayer()
L_009e: ldloc.0
L_009f: call Boolean AffectGoodwillWith(RimWorld.Faction, Single)
L_00a4: stloc.1
L_00a5: ldloc.1
L_00a6: brfalse Label #8
L_00ab: ldstr "FactionRelationAdjustmentCrushed-"
L_00b0: ldarg.0
L_00b1: call System.String get_Name()
L_00b6: call System.String Concat(System.String, System.String)
L_00bb: ldc.r4 5
L_00c0: call Boolean MessageShowAllowed(System.String, Single)
L_00c5: brfalse Label #9
L_00ca: ldstr "MessageFactionPawnCrushed"
L_00cf: ldc.i4.2
L_00d0: newarr System.Object
L_00d5: dup
L_00d6: ldc.i4.0
L_00d7: ldarg.0
L_00d8: call System.String get_Name()
L_00dd: stelem.ref
L_00de: dup
L_00df: ldc.i4.1
L_00e0: ldloc.0
L_00e1: call Int32 RoundToInt(Single)
L_00e6: box System.Int32
L_00eb: stelem.ref
L_00ec: call System.String Translate(System.String, System.Object[])
L_00f1: ldarg.1
L_00f2: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_00f7: ldc.i4.5
L_00f8: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_00fd: Label #8
L_00fd: Label #9
L_00fd: br Label #10
L_0102: Label #6
L_0102: Label #7
L_0102: ldarga.s 2
L_0104: call Boolean get_HasValue()
L_0109: brfalse Label #11
L_010e: ldarga.s 2
L_0110: call DamageInfo get_Value()
L_0115: stloc.s 4 (Verse.DamageInfo)
L_0117: ldloca.s 4 (Verse.DamageInfo)
L_0119: call Verse.Thing get_Instigator()
L_011e: brfalse Label #12
L_0123: ldarga.s 2
L_0125: call DamageInfo get_Value()
L_012a: stloc.s 5 (Verse.DamageInfo)
L_012c: ldloca.s 5 (Verse.DamageInfo)
L_012e: call Verse.Thing get_Instigator()
L_0133: callvirt RimWorld.Faction get_Faction()
L_0138: brtrue Label #13
L_013d: Label #12
L_013d: ldarg.1
L_013e: callvirt Verse.RaceProperties get_RaceProps()
L_0143: ldfld Verse.BodyDef body
L_0148: ldfld Verse.BodyPartRecord corePart
L_014d: ldfld Verse.BodyPartDef def
L_0152: ldarg.1
L_0153: callvirt Single GetMaxHealth(Verse.Pawn)
L_0158: ldc.r4 1.3
L_015d: mul
L_015e: ldc.r4 0.1
L_0163: mul
L_0164: ldc.r4 -1
L_0169: mul
L_016a: stloc.2
L_016b: ldarg.0
L_016c: call RimWorld.Faction get_OfPlayer()
L_0171: ldloc.2
L_0172: call Boolean AffectGoodwillWith(RimWorld.Faction, Single)
L_0177: brfalse Label #14
L_017c: ldstr "MessageFactionPawnLost"
L_0181: ldc.i4.3
L_0182: newarr System.Object
L_0187: dup
L_0188: ldc.i4.0
L_0189: ldarg.0
L_018a: call System.String get_Name()
L_018f: stelem.ref
L_0190: dup
L_0191: ldc.i4.1
L_0192: ldarg.1
L_0193: callvirt System.String get_NameStringShort()
L_0198: stelem.ref
L_0199: dup
L_019a: ldc.i4.2
L_019b: ldloc.2
L_019c: call Int32 RoundToInt(Single)
L_01a1: box System.Int32
L_01a6: stelem.ref
L_01a7: call System.String Translate(System.String, System.Object[])
L_01ac: ldarg.1
L_01ad: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_01b2: ldc.i4.5
L_01b3: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_01b8: Label #3
L_01b8: Label #4
L_01b8: Label #5
L_01b8: Label #10
L_01b8: Label #11
L_01b8: Label #13
L_01b8: Label #14
L_01b8: ldarg.1
L_01b9: ldarg.0
L_01ba: ldfld Verse.Pawn leader
L_01bf: bne.un Label #15
L_01c4: ldarg.0
L_01c5: call Void Notify_LeaderDied()
L_01ca: Label #15
L_01ca: br Label #0
L_01cf: Label #0
L_01cf: Label #1
L_01cf: ret
DONE

PATCHING RimWorld.CompEggLayer Verse.Thing ProduceEgg()


L_0000: Local var #0 System.Int32
L_0000: Local var #1 Verse.Thing
L_0000: Local var #2 RimWorld.CompHatcher
L_0000: Local var #3 Verse.Pawn
L_0000: Local var #4 Verse.Thing
L_0000: ldnull
L_0001: stloc 4 (Verse.Thing)
L_0003: ldarg.0
L_0004: call Boolean get_Active()
L_0009: brtrue Label #2
L_000e: ldstr "LayEgg while not Active: "
L_0013: ldarg.0
L_0014: ldfld Verse.ThingWithComps parent
L_0019: call System.String Concat(System.Object, System.Object)
L_001e: call Void Error(System.String)
L_0023: Label #2
L_0023: ldarg.0
L_0024: ldc.r4 0
L_0029: stfld System.Single eggProgress
L_002e: ldarg.0
L_002f: call RimWorld.CompProperties_EggLayer get_Props()
L_0034: ldflda Verse.IntRange eggCountRange
L_0039: call Int32 get_RandomInRange()
L_003e: stloc.0
L_003f: ldloc.0
L_0040: brtrue Label #3
L_0045: ldnull
L_0046: br Label #0
L_004b: Label #3
L_004b: ldarg.0
L_004c: ldfld System.Int32 fertilizationCount
L_0051: ldc.i4.0
L_0052: ble Label #4
L_0057: ldarg.0
L_0058: call RimWorld.CompProperties_EggLayer get_Props()
L_005d: ldfld Verse.ThingDef eggFertilizedDef
L_0062: ldnull
L_0063: call Verse.Thing MakeThing(Verse.ThingDef, Verse.ThingDef)
L_0068: stloc.1
L_0069: ldarg.0
L_006a: ldc.i4.0
L_006b: ldarg.0
L_006c: ldfld System.Int32 fertilizationCount
L_0071: ldloc.0
L_0072: sub
L_0073: call Int32 Max(Int32, Int32)
L_0078: stfld System.Int32 fertilizationCount
L_007d: br Label #5
L_0082: Label #4
L_0082: ldarg.0
L_0083: call RimWorld.CompProperties_EggLayer get_Props()
L_0088: ldfld Verse.ThingDef eggUnfertilizedDef
L_008d: ldnull
L_008e: call Verse.Thing MakeThing(Verse.ThingDef, Verse.ThingDef)
L_0093: stloc.1
L_0094: Label #5
L_0094: ldloc.1
L_0095: ldloc.0
L_0096: stfld System.Int32 stackCount
L_009b: ldloc.1
L_009c: call RimWorld.CompHatcher TryGetComp[CompHatcher](Verse.Thing)
L_00a1: stloc.2
L_00a2: ldloc.2
L_00a3: brfalse Label #6
L_00a8: ldloc.2
L_00a9: ldarg.0
L_00aa: ldfld Verse.ThingWithComps parent
L_00af: callvirt RimWorld.Faction get_Faction()
L_00b4: stfld RimWorld.Faction hatcheeFaction
L_00b9: ldarg.0
L_00ba: ldfld Verse.ThingWithComps parent
L_00bf: isinst Verse.Pawn
L_00c4: stloc.3
L_00c5: ldloc.3
L_00c6: brfalse Label #7
L_00cb: ldloc.2
L_00cc: ldloc.3
L_00cd: stfld Verse.Pawn hatcheeParent
L_00d2: Label #7
L_00d2: ldarg.0
L_00d3: ldfld Verse.Pawn fertilizedBy
L_00d8: brfalse Label #8
L_00dd: ldloc.2
L_00de: ldarg.0
L_00df: ldfld Verse.Pawn fertilizedBy
L_00e4: stfld Verse.Pawn otherParent
L_00e9: Label #6
L_00e9: Label #8
L_00e9: ldloc.1
L_00ea: br Label #0
L_00ef: Label #0
L_00ef: stloc 4 (Verse.Thing)
L_00f1: ldarg.0
L_00f2: ldloca 4 (Verse.Thing)
L_00f4: call Void ProduceEgg_PostFix(RimWorld.CompEggLayer, Verse.Thing ByRef)
L_00f9: ldloc 4 (Verse.Thing)
L_00fb: ret
DONE

PATCHING RimWorld.GenLeaving Void DoLeavingsFor(Verse.Thing, Verse.Map,


DestroyMode, CellRect)
L_0000: Local var #0 System.Int32
L_0000: Local var #1 System.Int32
L_0000: Local var #2 Verse.IntVec3
L_0000: Local var #3 Verse.ThingOwner`1[[Verse.Thing, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #4 System.Int32
L_0000: Local var #5 Verse.Thing
L_0000: Local var #6 RimWorld.Frame
L_0000: Local var #7 System.Int32
L_0000: Local var #8 System.Int32
L_0000: Local var #9 System.Collections.Generic.List`1[[Verse.ThingCountClass,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #10 System.Int32
L_0000: Local var #11 Verse.ThingCountClass
L_0000: Local var #12 System.Int32
L_0000: Local var #13 System.Int32
L_0000: Local var #14 System.Int32
L_0000: Local var #15 System.Int32
L_0000: Local var #16 Verse.Thing
L_0000: Local var #17 System.Collections.Generic.List`1[[Verse.IntVec3, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #18 System.Int32
L_0000: Local var #19 Verse.Thing
L_0000: ldarg 0
L_0006: ldarg 1
L_000c: ldarg 2
L_0012: ldarg 3
L_0018: call Boolean DoLeavingsForPrefix(Verse.Thing, Verse.Map, DestroyMode,
CellRect)
L_001d: brfalse Label #1
L_0022: call ProgramState get_ProgramState()
L_0027: ldc.i4.2
L_0028: bne.un Label #2
L_002d: ldarg.2
L_002e: brtrue Label #3
L_0033: Label #2
L_0033: br Label #0
L_0038: Label #3
L_0038: ldarg.2
L_0039: ldc.i4.1
L_003a: bne.un Label #4
L_003f: ldarg.0
L_0040: ldfld Verse.ThingDef def
L_0045: ldfld Verse.ThingDef filthLeaving
L_004a: brfalse Label #5
L_004f: ldarga.s 3
L_0051: ldfld System.Int32 minZ
L_0056: stloc.0
L_0057: br Label #6
L_005c: Label #9
L_005c: ldarga.s 3
L_005e: ldfld System.Int32 minX
L_0063: stloc.1
L_0064: br Label #7
L_0069: Label #8
L_0069: ldloca.s 2 (Verse.IntVec3)
L_006b: ldloc.1
L_006c: ldc.i4.0
L_006d: ldloc.0
L_006e: call Void .ctor(Int32, Int32, Int32)
L_0073: ldloc.2
L_0074: ldarg.1
L_0075: ldarg.0
L_0076: ldfld Verse.ThingDef def
L_007b: ldfld Verse.ThingDef filthLeaving
L_0080: ldc.i4.1
L_0081: ldc.i4.3
L_0082: call Int32 RangeInclusive(Int32, Int32)
L_0087: call Void MakeFilth(IntVec3, Verse.Map, Verse.ThingDef, Int32)
L_008c: ldloc.1
L_008d: ldc.i4.1
L_008e: add
L_008f: stloc.1
L_0090: Label #7
L_0090: ldloc.1
L_0091: ldarga.s 3
L_0093: ldfld System.Int32 maxX
L_0098: ble Label #8
L_009d: ldloc.0
L_009e: ldc.i4.1
L_009f: add
L_00a0: stloc.0
L_00a1: Label #6
L_00a1: ldloc.0
L_00a2: ldarga.s 3
L_00a4: ldfld System.Int32 maxZ
L_00a9: ble Label #9
L_00ae: Label #4
L_00ae: Label #5
L_00ae: newobj Void .ctor()
L_00b3: stloc.3
L_00b4: ldarg.2
L_00b5: ldc.i4.1
L_00b6: bne.un Label #10
L_00bb: ldarg.0
L_00bc: ldfld Verse.ThingDef def
L_00c1: ldfld System.Collections.Generic.List`1[Verse.ThingCountClass]
killedLeavings
L_00c6: brfalse Label #11
L_00cb: ldc.i4.0
L_00cc: stloc.s 4 (System.Int32)
L_00ce: br Label #12
L_00d3: Label #13
L_00d3: ldarg.0
L_00d4: ldfld Verse.ThingDef def
L_00d9: ldfld System.Collections.Generic.List`1[Verse.ThingCountClass]
killedLeavings
L_00de: ldloc.s 4 (System.Int32)
L_00e0: callvirt Verse.ThingCountClass get_Item(Int32)
L_00e5: ldfld Verse.ThingDef thingDef
L_00ea: ldnull
L_00eb: call Verse.Thing MakeThing(Verse.ThingDef, Verse.ThingDef)
L_00f0: stloc.s 5 (Verse.Thing)
L_00f2: ldloc.s 5 (Verse.Thing)
L_00f4: ldarg.0
L_00f5: ldfld Verse.ThingDef def
L_00fa: ldfld System.Collections.Generic.List`1[Verse.ThingCountClass]
killedLeavings
L_00ff: ldloc.s 4 (System.Int32)
L_0101: callvirt Verse.ThingCountClass get_Item(Int32)
L_0106: ldfld System.Int32 count
L_010b: stfld System.Int32 stackCount
L_0110: ldloc.3
L_0111: ldloc.s 5 (Verse.Thing)
L_0113: ldc.i4.1
L_0114: callvirt Boolean TryAdd(Verse.Thing, Boolean)
L_0119: pop
L_011a: ldloc.s 4 (System.Int32)
L_011c: ldc.i4.1
L_011d: add
L_011e: stloc.s 4 (System.Int32)
L_0120: Label #12
L_0120: ldloc.s 4 (System.Int32)
L_0122: ldarg.0
L_0123: ldfld Verse.ThingDef def
L_0128: ldfld System.Collections.Generic.List`1[Verse.ThingCountClass]
killedLeavings
L_012d: callvirt Int32 get_Count()
L_0132: blt Label #13
L_0137: Label #10
L_0137: Label #11
L_0137: ldarg.0
L_0138: ldarg.2
L_0139: call Boolean CanBuildingLeaveResources(Verse.Thing, DestroyMode)
L_013e: brfalse Label #14
L_0143: ldarg.0
L_0144: isinst RimWorld.Frame
L_0149: stloc.s 6 (RimWorld.Frame)
L_014b: ldloc.s 6 (RimWorld.Frame)
L_014d: brfalse Label #15
L_0152: ldc.i4.0
L_0153: stloc.s 7 (System.Int32)
L_0155: br Label #16
L_015a: Label #18
L_015a: ldarg.0
L_015b: ldarg.2
L_015c: call System.Func`2[System.Int32,System.Int32]
GetBuildingResourcesLeaveCalculator(Verse.Thing, DestroyMode)
L_0161: ldloc.s 6 (RimWorld.Frame)
L_0163: ldfld Verse.ThingOwner resourceContainer
L_0168: ldloc.s 7 (System.Int32)
L_016a: callvirt Verse.Thing get_Item(Int32)
L_016f: ldfld System.Int32 stackCount
L_0174: callvirt Int32 Invoke(Int32)
L_0179: stloc.s 8 (System.Int32)
L_017b: ldloc.s 8 (System.Int32)
L_017d: ldc.i4.0
L_017e: ble Label #17
L_0183: ldloc.3
L_0184: ldloc.s 6 (RimWorld.Frame)
L_0186: ldfld Verse.ThingOwner resourceContainer
L_018b: ldloc.s 7 (System.Int32)
L_018d: callvirt Verse.Thing get_Item(Int32)
L_0192: ldloc.s 8 (System.Int32)
L_0194: ldc.i4.1
L_0195: callvirt Int32 TryAdd(Verse.Thing, Int32, Boolean)
L_019a: pop
L_019b: Label #17
L_019b: ldloc.s 7 (System.Int32)
L_019d: ldc.i4.1
L_019e: add
L_019f: stloc.s 7 (System.Int32)
L_01a1: Label #16
L_01a1: ldloc.s 7 (System.Int32)
L_01a3: ldloc.s 6 (RimWorld.Frame)
L_01a5: ldfld Verse.ThingOwner resourceContainer
L_01aa: callvirt Int32 get_Count()
L_01af: blt Label #18
L_01b4: br Label #19
L_01b9: Label #15
L_01b9: ldarg.0
L_01ba: call System.Collections.Generic.List`1[Verse.ThingCountClass]
CostListAdjusted(Verse.Thing)
L_01bf: stloc.s 9 (System.Collections.Generic.List`1[Verse.ThingCountClass])
L_01c1: ldc.i4.0
L_01c2: stloc.s 10 (System.Int32)
L_01c4: br Label #20
L_01c9: Label #28
L_01c9: ldloc.s 9 (System.Collections.Generic.List`1[Verse.ThingCountClass])
L_01cb: ldloc.s 10 (System.Int32)
L_01cd: callvirt Verse.ThingCountClass get_Item(Int32)
L_01d2: stloc.s 11 (Verse.ThingCountClass)
L_01d4: ldarg.0
L_01d5: ldarg.2
L_01d6: call System.Func`2[System.Int32,System.Int32]
GetBuildingResourcesLeaveCalculator(Verse.Thing, DestroyMode)
L_01db: ldloc.s 11 (Verse.ThingCountClass)
L_01dd: ldfld System.Int32 count
L_01e2: callvirt Int32 Invoke(Int32)
L_01e7: stloc.s 12 (System.Int32)
L_01e9: ldloc.s 12 (System.Int32)
L_01eb: ldc.i4.0
L_01ec: ble Label #21
L_01f1: ldarg.2
L_01f2: ldc.i4.1
L_01f3: bne.un Label #22
L_01f8: ldloc.s 11 (Verse.ThingCountClass)
L_01fa: ldfld Verse.ThingDef thingDef
L_01ff: ldfld Verse.ThingDef slagDef
L_0204: brfalse Label #23
L_0209: ldloc.s 11 (Verse.ThingCountClass)
L_020b: ldfld Verse.ThingDef thingDef
L_0210: ldfld Verse.ThingDef slagDef
L_0215: ldfld System.Collections.Generic.List`1[Verse.ThingCountClass]
smeltProducts
L_021a: ldsfld System.Func`2[Verse.ThingCountClass,System.Boolean] <>f__am$cache1
L_021f: brtrue Label #24
L_0224: ldnull
L_0225: ldftn Boolean <DoLeavingsFor>m__736(Verse.ThingCountClass)
L_022b: newobj Void .ctor(Object, IntPtr)
L_0230: stsfld System.Func`2[Verse.ThingCountClass,System.Boolean] <>f__am$cache1
L_0235: Label #24
L_0235: ldsfld System.Func`2[Verse.ThingCountClass,System.Boolean] <>f__am$cache1
L_023a: call Verse.ThingCountClass First[ThingCountClass](IEnumerable`1,
System.Func`2[Verse.ThingCountClass,System.Boolean])
L_023f: ldfld System.Int32 count
L_0244: stloc.s 13 (System.Int32)
L_0246: ldloc.s 12 (System.Int32)
L_0248: ldc.i4.2
L_0249: div
L_024a: ldc.i4.8
L_024b: div
L_024c: stloc.s 14 (System.Int32)
L_024e: ldc.i4.0
L_024f: stloc.s 15 (System.Int32)
L_0251: br Label #25
L_0256: Label #26
L_0256: ldloc.3
L_0257: ldloc.s 11 (Verse.ThingCountClass)
L_0259: ldfld Verse.ThingDef thingDef
L_025e: ldfld Verse.ThingDef slagDef
L_0263: ldnull
L_0264: call Verse.Thing MakeThing(Verse.ThingDef, Verse.ThingDef)
L_0269: ldc.i4.1
L_026a: callvirt Boolean TryAdd(Verse.Thing, Boolean)
L_026f: pop
L_0270: ldloc.s 15 (System.Int32)
L_0272: ldc.i4.1
L_0273: add
L_0274: stloc.s 15 (System.Int32)
L_0276: Label #25
L_0276: ldloc.s 15 (System.Int32)
L_0278: ldloc.s 14 (System.Int32)
L_027a: blt Label #26
L_027f: ldloc.s 12 (System.Int32)
L_0281: ldloc.s 14 (System.Int32)
L_0283: ldloc.s 13 (System.Int32)
L_0285: mul
L_0286: sub
L_0287: stloc.s 12 (System.Int32)
L_0289: Label #21
L_0289: Label #22
L_0289: Label #23
L_0289: ldloc.s 12 (System.Int32)
L_028b: ldc.i4.0
L_028c: ble Label #27
L_0291: ldloc.s 11 (Verse.ThingCountClass)
L_0293: ldfld Verse.ThingDef thingDef
L_0298: ldnull
L_0299: call Verse.Thing MakeThing(Verse.ThingDef, Verse.ThingDef)
L_029e: stloc.s 16 (Verse.Thing)
L_02a0: ldloc.s 16 (Verse.Thing)
L_02a2: ldloc.s 12 (System.Int32)
L_02a4: stfld System.Int32 stackCount
L_02a9: ldloc.3
L_02aa: ldloc.s 16 (Verse.Thing)
L_02ac: ldc.i4.1
L_02ad: callvirt Boolean TryAdd(Verse.Thing, Boolean)
L_02b2: pop
L_02b3: Label #27
L_02b3: ldloc.s 10 (System.Int32)
L_02b5: ldc.i4.1
L_02b6: add
L_02b7: stloc.s 10 (System.Int32)
L_02b9: Label #20
L_02b9: ldloc.s 10 (System.Int32)
L_02bb: ldloc.s 9 (System.Collections.Generic.List`1[Verse.ThingCountClass])
L_02bd: callvirt Int32 get_Count()
L_02c2: blt Label #28
L_02c7: Label #14
L_02c7: Label #19
L_02c7: ldarga.s 3
L_02c9: call IEnumerable`1 get_Cells()
L_02ce: ldnull
L_02cf: call IEnumerable`1 InRandomOrder[IntVec3](IEnumerable`1, IList`1)
L_02d4: call System.Collections.Generic.List`1[Verse.IntVec3] ToList[IntVec3]
(IEnumerable`1)
L_02d9: stloc.s 17 (System.Collections.Generic.List`1[Verse.IntVec3])
L_02db: ldc.i4.0
L_02dc: stloc.s 18 (System.Int32)
L_02de: br Label #29
L_02e3: Label #34
L_02e3: ldarg.2
L_02e4: ldc.i4.1
L_02e5: bne.un Label #30
L_02ea: ldarg.1
L_02eb: ldfld Verse.AreaManager areaManager
L_02f0: callvirt RimWorld.Area_Home get_Home()
L_02f5: ldloc.s 17 (System.Collections.Generic.List`1[Verse.IntVec3])
L_02f7: ldloc.s 18 (System.Int32)
L_02f9: callvirt IntVec3 get_Item(Int32)
L_02fe: callvirt Boolean get_Item(IntVec3)
L_0303: brtrue Label #31
L_0308: ldloc.3
L_0309: ldc.i4.0
L_030a: callvirt Verse.Thing get_Item(Int32)
L_030f: ldc.i4.1
L_0310: ldc.i4.0
L_0311: call Void SetForbidden(Verse.Thing, Boolean, Boolean)
L_0316: Label #30
L_0316: Label #31
L_0316: ldloc.3
L_0317: ldloc.3
L_0318: ldc.i4.0
L_0319: callvirt Verse.Thing get_Item(Int32)
L_031e: ldloc.s 17 (System.Collections.Generic.List`1[Verse.IntVec3])
L_0320: ldloc.s 18 (System.Int32)
L_0322: callvirt IntVec3 get_Item(Int32)
L_0327: ldarg.1
L_0328: ldc.i4.1
L_0329: ldloca.s 19 (Verse.Thing)
L_032b: ldnull
L_032c: callvirt Boolean TryDrop(Verse.Thing, IntVec3, Verse.Map, ThingPlaceMode,
Verse.Thing ByRef, System.Action`2[Verse.Thing,System.Int32])
L_0331: brtrue Label #32
L_0336: ldc.i4.4
L_0337: newarr System.Object
L_033c: dup
L_033d: ldc.i4.0
L_033e: ldstr "Failed to place all leavings for destroyed thing "
L_0343: stelem.ref
L_0344: dup
L_0345: ldc.i4.1
L_0346: ldarg.0
L_0347: stelem.ref
L_0348: dup
L_0349: ldc.i4.2
L_034a: ldstr " at "
L_034f: stelem.ref
L_0350: dup
L_0351: ldc.i4.3
L_0352: ldarga.s 3
L_0354: call IntVec3 get_CenterCell()
L_0359: box Verse.IntVec3
L_035e: stelem.ref
L_035f: call System.String Concat(System.Object[])
L_0364: call Void Warning(System.String)
L_0369: br Label #0
L_036e: Label #32
L_036e: ldloc.s 18 (System.Int32)
L_0370: ldc.i4.1
L_0371: add
L_0372: stloc.s 18 (System.Int32)
L_0374: ldloc.s 18 (System.Int32)
L_0376: ldloc.s 17 (System.Collections.Generic.List`1[Verse.IntVec3])
L_0378: callvirt Int32 get_Count()
L_037d: blt Label #33
L_0382: ldc.i4.0
L_0383: stloc.s 18 (System.Int32)
L_0385: Label #29
L_0385: Label #33
L_0385: ldloc.3
L_0386: callvirt Int32 get_Count()
L_038b: ldc.i4.0
L_038c: bgt Label #34
L_0391: br Label #0
L_0396: Label #0
L_0396: Label #1
L_0396: ret
DONE

PATCHING Verse.AI.TouchPathEndModeUtility Boolean IsCornerTouchAllowed(Int32,


Int32, Int32, Int32, Int32, Int32, Verse.Map)
L_0000: Local var #0 Verse.Building
L_0000: Local var #1 Verse.IntVec3
L_0000: Local var #2 Verse.IntVec3
L_0000: Local var #3 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 3 (System.Boolean)
L_0006: ldarg 0
L_000c: ldarg 1
L_0012: ldarg 6
L_0018: ldloca 3 (System.Boolean)
L_001a: call Boolean IsCornerTouchAllowedPrefix(Int32, Int32, Verse.Map, Boolean
ByRef)
L_001f: brfalse Label #1
L_0024: ldarg.s 6
L_0026: ldfld Verse.EdificeGrid edificeGrid
L_002b: ldarg.0
L_002c: ldc.i4.0
L_002d: ldarg.1
L_002e: newobj Void .ctor(Int32, Int32, Int32)
L_0033: callvirt Verse.Building get_Item(IntVec3)
L_0038: stloc.0
L_0039: ldloc.0
L_003a: brfalse Label #2
L_003f: ldloc.0
L_0040: ldfld Verse.ThingDef def
L_0045: call Boolean MakesOccupiedCellsAlwaysReachableDiagonally(Verse.ThingDef)
L_004a: brfalse Label #3
L_004f: ldc.i4.1
L_0050: br Label #0
L_0055: Label #2
L_0055: Label #3
L_0055: ldloca.s 1 (Verse.IntVec3)
L_0057: ldarg.2
L_0058: ldc.i4.0
L_0059: ldarg.3
L_005a: call Void .ctor(Int32, Int32, Int32)
L_005f: ldloca.s 2 (Verse.IntVec3)
L_0061: ldarg.s 4
L_0063: ldc.i4.0
L_0064: ldarg.s 5
L_0066: call Void .ctor(Int32, Int32, Int32)
L_006b: ldarg.s 6
L_006d: ldfld Verse.AI.PathGrid pathGrid
L_0072: ldloc.1
L_0073: callvirt Boolean Walkable(IntVec3)
L_0078: brfalse Label #4
L_007d: ldloc.1
L_007e: ldarg.s 6
L_0080: call RimWorld.Building_Door GetDoor(IntVec3, Verse.Map)
L_0085: brfalse Label #5
L_008a: Label #4
L_008a: ldarg.s 6
L_008c: ldfld Verse.AI.PathGrid pathGrid
L_0091: ldloc.2
L_0092: callvirt Boolean Walkable(IntVec3)
L_0097: brfalse Label #6
L_009c: ldloc.2
L_009d: ldarg.s 6
L_009f: call RimWorld.Building_Door GetDoor(IntVec3, Verse.Map)
L_00a4: brtrue Label #7
L_00a9: Label #5
L_00a9: ldc.i4.1
L_00aa: br Label #0
L_00af: Label #6
L_00af: Label #7
L_00af: ldc.i4.0
L_00b0: br Label #0
L_00b5: Label #0
L_00b5: stloc 3 (System.Boolean)
L_00b6: Label #1
L_00b6: ldloc 3 (System.Boolean)
L_00b7: ret
DONE

PATCHING RimWorld.Building_Trap Boolean KnowsOfTrap(Verse.Pawn)


L_0000: Local var #0 Verse.AI.Group.Lord
L_0000: Local var #1 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 1 (System.Boolean)
L_0006: ldarg.1
L_0007: callvirt RimWorld.Faction get_Faction()
L_000c: brfalse Label #2
L_0011: ldarg.1
L_0012: callvirt RimWorld.Faction get_Faction()
L_0017: ldarg.0
L_0018: call RimWorld.Faction get_Faction()
L_001d: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0022: brtrue Label #3
L_0027: ldc.i4.1
L_0028: br Label #0
L_002d: Label #2
L_002d: Label #3
L_002d: ldarg.1
L_002e: callvirt RimWorld.Faction get_Faction()
L_0033: brtrue Label #4
L_0038: ldarg.1
L_0039: callvirt Verse.RaceProperties get_RaceProps()
L_003e: callvirt Boolean get_Animal()
L_0043: brfalse Label #5
L_0048: ldarg.1
L_0049: callvirt Boolean get_InAggroMentalState()
L_004e: brtrue Label #6
L_0053: ldc.i4.1
L_0054: br Label #0
L_0059: Label #4
L_0059: Label #5
L_0059: Label #6
L_0059: ldarg.1
L_005a: ldfld RimWorld.Pawn_GuestTracker guest
L_005f: brfalse Label #7
L_0064: ldarg.1
L_0065: ldfld RimWorld.Pawn_GuestTracker guest
L_006a: ldfld System.Boolean released
L_006f: brfalse Label #8
L_0074: ldc.i4.1
L_0075: br Label #0
L_007a: Label #7
L_007a: Label #8
L_007a: ldarg.1
L_007b: call Verse.AI.Group.Lord GetLord(Verse.Pawn)
L_0080: stloc.0
L_0081: ldarg.1
L_0082: ldfld RimWorld.Pawn_GuestTracker guest
L_0087: brfalse Label #9
L_008c: ldloc.0
L_008d: brfalse Label #10
L_0092: ldloc.0
L_0093: callvirt Verse.AI.Group.LordJob get_LordJob()
L_0098: isinst RimWorld.LordJob_FormAndSendCaravan
L_009d: brfalse Label #11
L_00a2: ldc.i4.1
L_00a3: br Label #0
L_00a8: Label #9
L_00a8: Label #10
L_00a8: Label #11
L_00a8: ldc.i4.0
L_00a9: br Label #0
L_00ae: Label #0
L_00ae: stloc 1 (System.Boolean)
L_00af: ldarg.0
L_00b0: ldloca 1 (System.Boolean)
L_00b2: ldarg 1
L_00b8: call Void KnowsOfTrap_PostFix(RimWorld.Building_Trap, Boolean ByRef,
Verse.Pawn)
L_00bd: ldloc 1 (System.Boolean)
L_00be: ret
DONE

PATCHING RimWorld.Building_Trap Single SpringChance(Verse.Pawn)


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: ldc.r4 0
L_0005: stloc 1 (System.Single)
L_0006: ldarg.0
L_0007: ldarg.1
L_0008: call Boolean KnowsOfTrap(Verse.Pawn)
L_000d: brfalse Label #2
L_0012: ldc.r4 0.004
L_0017: stloc.0
L_0018: br Label #3
L_001d: Label #2
L_001d: ldarg.0
L_001e: ldsfld RimWorld.StatDef TrapSpringChance
L_0023: ldc.i4.1
L_0024: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_0029: stloc.0
L_002a: Label #3
L_002a: ldloc.0
L_002b: ldc.r4 0.4
L_0030: ldc.r4 0.8
L_0035: ldc.r4 0
L_003a: ldc.r4 1
L_003f: ldarg.1
L_0040: callvirt Single get_BodySize()
L_0045: call Single LerpDouble(Single, Single, Single, Single, Single)
L_004a: mul
L_004b: stloc.0
L_004c: ldarg.1
L_004d: callvirt Verse.RaceProperties get_RaceProps()
L_0052: callvirt Boolean get_Animal()
L_0057: brfalse Label #4
L_005c: ldloc.0
L_005d: ldc.r4 0.1
L_0062: mul
L_0063: stloc.0
L_0064: Label #4
L_0064: ldloc.0
L_0065: call Single Clamp01(Single)
L_006a: br Label #0
L_006f: Label #0
L_006f: stloc 1 (System.Single)
L_0070: ldarg.0
L_0071: ldloca 1 (System.Single)
L_0073: ldarg 1
L_0079: call Void SpringChance_PostFix(RimWorld.Building_Trap, Single ByRef,
Verse.Pawn)
L_007e: ldloc 1 (System.Single)
L_007f: ret
DONE

PATCHING RimWorld.Building_TrapRearmable Void DamagePawn(Verse.Pawn)


L_0000: Local var #0 Verse.BodyPartHeight
L_0000: Local var #1 System.Int32
L_0000: Local var #2 System.Int32
L_0000: Local var #3 System.Int32
L_0000: Local var #4 System.Int32
L_0000: Local var #5 Verse.DamageInfo
L_0000: Local var #6 Verse.FloatRange
L_0000: Local var #7 Verse.IntRange
L_0000: Local var #8 RimWorld.Building_TrapRearmable
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: call Void DamagePawn_PreFix(RimWorld.Building_TrapRearmable, Verse.Pawn)
L_000c: call Single get_Value()
L_0011: ldc.r4 0.666
L_0016: bge.un Label #2
L_001b: ldc.i4.3
L_001c: br Label #3
L_0021: Label #2
L_0021: ldc.i4.2
L_0022: Label #3
L_0022: stloc.0
L_0023: ldarg.0
L_0024: ldsfld RimWorld.StatDef TrapMeleeDamage
L_0029: ldc.i4.1
L_002a: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_002f: ldsfld Verse.FloatRange TrapDamageFactor
L_0034: stloc.s 6 (Verse.FloatRange)
L_0036: ldloca.s 6 (Verse.FloatRange)
L_0038: call Single get_RandomInRange()
L_003d: mul
L_003e: call Int32 RoundToInt(Single)
L_0043: stloc.1
L_0044: ldsfld Verse.IntRange DamageCount
L_0049: stloc.s 7 (Verse.IntRange)
L_004b: ldloca.s 7 (Verse.IntRange)
L_004d: call Int32 get_RandomInRange()
L_0052: stloc.2
L_0053: ldc.i4.0
L_0054: stloc.3
L_0055: br Label #4
L_005a: Label #7
L_005a: ldloc.1
L_005b: ldc.i4.0
L_005c: bgt Label #5
L_0061: br Label #6
L_0066: Label #5
L_0066: ldc.i4.1
L_0067: call Single get_Value()
L_006c: ldloc.1
L_006d: conv.r4
L_006e: mul
L_006f: call Int32 RoundToInt(Single)
L_0074: call Int32 Max(Int32, Int32)
L_0079: stloc.s 4 (System.Int32)
L_007b: ldloc.1
L_007c: ldloc.s 4 (System.Int32)
L_007e: sub
L_007f: stloc.1
L_0080: ldloca.s 5 (Verse.DamageInfo)
L_0082: ldarg.0
L_0083: stloc.s 8 (RimWorld.Building_TrapRearmable)
L_0085: ldsfld Verse.DamageDef Stab
L_008a: ldloc.s 4 (System.Int32)
L_008c: ldc.r4 -1
L_0091: ldloc.s 8 (RimWorld.Building_TrapRearmable)
L_0093: ldnull
L_0094: ldnull
L_0095: ldc.i4.0
L_0096: call Void .ctor(DamageDef, Int32, Single, Thing, BodyPartRecord, ThingDef,
SourceCategory)
L_009b: ldloca.s 5 (Verse.DamageInfo)
L_009d: ldloc.0
L_009e: ldc.i4.2
L_009f: call Void SetBodyRegion(BodyPartHeight, BodyPartDepth)
L_00a4: ldarg.1
L_00a5: ldloc.s 5 (Verse.DamageInfo)
L_00a7: callvirt Void TakeDamage(DamageInfo)
L_00ac: ldloc.3
L_00ad: ldc.i4.1
L_00ae: add
L_00af: stloc.3
L_00b0: Label #4
L_00b0: ldloc.3
L_00b1: ldloc.2
L_00b2: blt Label #7
L_00b7: Label #6
L_00b7: br Label #0
L_00bc: Label #0
L_00bc: ret
DONE

PATCHING RimWorld.AddictionUtility Boolean CanBingeOnNow(Verse.Pawn,


RimWorld.ChemicalDef, DrugCategory)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Collections.Generic.List`1[[Verse.Thing, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #2 System.Int32
L_0000: Local var #3 RimWorld.CompDrug
L_0000: Local var #4 Verse.IntVec3
L_0000: Local var #5 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 5 (System.Boolean)
L_0007: ldloca 5 (System.Boolean)
L_0009: ldarg 0
L_000f: call Boolean Prefix(Boolean ByRef, Verse.Pawn)
L_0014: brfalse Label #1
L_0019: ldarg.1
L_001a: ldfld System.Boolean canBinge
L_001f: brtrue Label #2
L_0024: ldc.i4.0
L_0025: br Label #0
L_002a: Label #2
L_002a: ldarg.0
L_002b: callvirt Boolean get_Spawned()
L_0030: brtrue Label #3
L_0035: ldc.i4.0
L_0036: br Label #0
L_003b: Label #3
L_003b: ldarg.0
L_003c: callvirt Verse.Map get_Map()
L_0041: ldfld Verse.ListerThings listerThings
L_0046: ldc.i4.s 20
L_0048: callvirt System.Collections.Generic.List`1[Verse.Thing]
ThingsInGroup(ThingRequestGroup)
L_004d: stloc.1
L_004e: ldc.i4.0
L_004f: stloc.2
L_0050: br Label #4
L_0055: Label #17
L_0055: ldloc.1
L_0056: ldloc.2
L_0057: callvirt Verse.Thing get_Item(Int32)
L_005c: callvirt IntVec3 get_Position()
L_0061: ldloc.1
L_0062: ldloc.2
L_0063: callvirt Verse.Thing get_Item(Int32)
L_0068: callvirt Verse.Map get_Map()
L_006d: call Boolean Fogged(IntVec3, Verse.Map)
L_0072: brfalse Label #5
L_0077: br Label #6
L_007c: Label #5
L_007c: ldarg.2
L_007d: ldc.i4.1
L_007e: beq Label #7
L_0083: ldloc.1
L_0084: ldloc.2
L_0085: callvirt Verse.Thing get_Item(Int32)
L_008a: ldfld Verse.ThingDef def
L_008f: ldfld RimWorld.IngestibleProperties ingestible
L_0094: ldfld RimWorld.DrugCategory drugCategory
L_0099: ldarg.2
L_009a: beq Label #8
L_009f: br Label #9
L_00a4: Label #7
L_00a4: Label #8
L_00a4: ldloc.1
L_00a5: ldloc.2
L_00a6: callvirt Verse.Thing get_Item(Int32)
L_00ab: call RimWorld.CompDrug TryGetComp[CompDrug](Verse.Thing)
L_00b0: stloc.3
L_00b1: ldloc.3
L_00b2: callvirt RimWorld.CompProperties_Drug get_Props()
L_00b7: ldfld RimWorld.ChemicalDef chemical
L_00bc: ldarg.1
L_00bd: beq Label #10
L_00c2: br Label #11
L_00c7: Label #10
L_00c7: ldloc.1
L_00c8: ldloc.2
L_00c9: callvirt Verse.Thing get_Item(Int32)
L_00ce: callvirt IntVec3 get_Position()
L_00d3: ldloc.1
L_00d4: ldloc.2
L_00d5: callvirt Verse.Thing get_Item(Int32)
L_00da: callvirt Verse.Map get_Map()
L_00df: call Boolean Roofed(IntVec3, Verse.Map)
L_00e4: brtrue Label #12
L_00e9: ldloc.1
L_00ea: ldloc.2
L_00eb: callvirt Verse.Thing get_Item(Int32)
L_00f0: callvirt IntVec3 get_Position()
L_00f5: stloc.s 4 (Verse.IntVec3)
L_00f7: ldloca.s 4 (Verse.IntVec3)
L_00f9: ldarg.0
L_00fa: callvirt IntVec3 get_Position()
L_00ff: ldc.r4 45
L_0104: call Boolean InHorDistOf(IntVec3, Single)
L_0109: brtrue Label #13
L_010e: br Label #14
L_0113: Label #12
L_0113: Label #13
L_0113: ldarg.0
L_0114: ldloc.1
L_0115: ldloc.2
L_0116: callvirt Verse.Thing get_Item(Int32)
L_011b: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0120: ldc.i4.3
L_0121: ldc.i4.3
L_0122: ldc.i4.0
L_0123: ldc.i4.0
L_0124: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0129: brtrue Label #15
L_012e: br Label #16
L_0133: Label #15
L_0133: ldc.i4.1
L_0134: br Label #0
L_0139: Label #6
L_0139: Label #9
L_0139: Label #11
L_0139: Label #14
L_0139: Label #16
L_0139: ldloc.2
L_013a: ldc.i4.1
L_013b: add
L_013c: stloc.2
L_013d: Label #4
L_013d: ldloc.2
L_013e: ldloc.1
L_013f: callvirt Int32 get_Count()
L_0144: blt Label #17
L_0149: ldc.i4.0
L_014a: br Label #0
L_014f: Label #0
L_014f: stloc 5 (System.Boolean)
L_0151: Label #1
L_0151: ldarg 0
L_0157: ldarg 1
L_015d: ldloca 5 (System.Boolean)
L_015f: call Void CanBingeNowPostfix(Verse.Pawn, RimWorld.ChemicalDef, Boolean
ByRef)
L_0164: ldloc 5 (System.Boolean)
L_0166: ret
DONE

PATCHING RimWorld.Building_Bed Void set_ForPrisoners(Boolean)


L_0000: ldarg.1
L_0001: ldarg.0
L_0002: ldfld System.Boolean forPrisonersInt
L_0007: beq Label #2
L_000c: ldarg.0
L_000d: ldfld Verse.ThingDef def
L_0012: ldfld RimWorld.BuildingProperties building
L_0017: ldfld System.Boolean bed_humanlike
L_001c: brtrue Label #3
L_0021: Label #2
L_0021: br Label #0
L_0026: Label #3
L_0026: call ProgramState get_ProgramState()
L_002b: ldc.i4.2
L_002c: beq Label #4
L_0031: ldstr "Tried to set ForPrisoners while game mode was "
L_0036: call ProgramState get_ProgramState()
L_003b: box Verse.ProgramState
L_0040: call System.String Concat(System.Object, System.Object)
L_0045: call Void Error(System.String)
L_004a: br Label #0
L_004f: Label #4
L_004f: ldarg.0
L_0050: call Void RemoveAllOwners()
L_0055: ldarg.0
L_0056: ldarg.1
L_0057: stfld System.Boolean forPrisonersInt
L_005c: ldarg.0
L_005d: callvirt Void Notify_ColorChanged()
L_0062: ldarg.0
L_0063: call Boolean get_Spawned()
L_0068: brfalse Label #5
L_006d: ldarg.0
L_006e: call Verse.Map get_Map()
L_0073: ldfld Verse.MapDrawer mapDrawer
L_0078: ldarg.0
L_0079: call IntVec3 get_Position()
L_007e: ldc.i4.1
L_007f: callvirt Void MapMeshDirty(IntVec3, MapMeshFlag)
L_0084: ldarg.0
L_0085: call Void NotifyRoomBedTypeChanged()
L_008a: Label #5
L_008a: br Label #0
L_008f: Label #0
L_008f: ldarg.0
L_0090: call Void Postfix(RimWorld.Building_Bed)
L_0095: ret
DONE

PATCHING RimWorld.Building_Bed IEnumerable`1 GetGizmos()


L_0000: Local var #0 RimWorld.Building_Bed+<GetGizmos>c__Iterator154
L_0000: Local var #1 System.Collections.Generic.IEnumerable`1[[Verse.Gizmo,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldnull
L_0001: stloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0002: newobj Void .ctor()
L_0007: stloc.0
L_0008: ldloc.0
L_0009: ldarg.0
L_000a: stfld RimWorld.Building_Bed <>f__this
L_000f: ldloc.0
L_0010: dup
L_0011: ldc.i4.s -2
L_0013: stfld System.Int32 $PC
L_0018: br Label #0
L_001d: Label #0
L_001d: stloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_001e: ldarg.0
L_001f: ldloca 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0021: call Void Postfix(RimWorld.Building_Bed, IEnumerable`1 ByRef)
L_0026: ldloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0027: ret
DONE

PATCHING RimWorld.JoyGiver_Ingest Boolean CanIngestForJoy(Verse.Pawn, Verse.Thing)


L_0000: Local var #0 System.Int32
L_0000: Local var #1 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 1 (System.Boolean)
L_0006: ldarg.2
L_0007: ldfld Verse.ThingDef def
L_000c: callvirt Boolean get_IsIngestible()
L_0011: brfalse Label #2
L_0016: ldarg.2
L_0017: ldfld Verse.ThingDef def
L_001c: ldfld RimWorld.IngestibleProperties ingestible
L_0021: ldfld RimWorld.JoyKindDef joyKind
L_0026: brfalse Label #3
L_002b: ldarg.2
L_002c: ldfld Verse.ThingDef def
L_0031: ldfld RimWorld.IngestibleProperties ingestible
L_0036: ldfld System.Single joy
L_003b: ldc.r4 0
L_0040: bgt.un Label #4
L_0045: Label #2
L_0045: Label #3
L_0045: ldc.i4.0
L_0046: br Label #0
L_004b: Label #4
L_004b: ldarg.2
L_004c: callvirt Boolean get_Spawned()
L_0051: brfalse Label #5
L_0056: ldarg.1
L_0057: ldarg.2
L_0058: call LocalTargetInfo op_Implicit(Verse.Thing)
L_005d: ldc.i4.1
L_005e: ldc.i4.m1
L_005f: ldnull
L_0060: ldc.i4.0
L_0061: call Boolean CanReserve(Verse.Pawn, LocalTargetInfo, Int32, Int32,
Verse.ReservationLayerDef, Boolean)
L_0066: brtrue Label #6
L_006b: ldc.i4.0
L_006c: br Label #0
L_0071: Label #6
L_0071: ldarg.2
L_0072: ldarg.1
L_0073: call Boolean IsForbidden(Verse.Thing, Verse.Pawn)
L_0078: brfalse Label #7
L_007d: ldc.i4.0
L_007e: br Label #0
L_0083: Label #7
L_0083: ldarg.2
L_0084: ldarg.1
L_0085: call Boolean IsSociallyProper(Verse.Thing, Verse.Pawn)
L_008a: brtrue Label #8
L_008f: ldc.i4.0
L_0090: br Label #0
L_0095: Label #5
L_0095: Label #8
L_0095: ldarg.2
L_0096: ldfld Verse.ThingDef def
L_009b: callvirt Boolean get_IsDrug()
L_00a0: brfalse Label #9
L_00a5: ldarg.1
L_00a6: ldfld RimWorld.Pawn_DrugPolicyTracker drugs
L_00ab: brfalse Label #10
L_00b0: ldarg.1
L_00b1: ldfld RimWorld.Pawn_DrugPolicyTracker drugs
L_00b6: callvirt RimWorld.DrugPolicy get_CurrentPolicy()
L_00bb: ldarg.2
L_00bc: ldfld Verse.ThingDef def
L_00c1: callvirt RimWorld.DrugPolicyEntry get_Item(Verse.ThingDef)
L_00c6: ldfld System.Boolean allowedForJoy
L_00cb: brtrue Label #11
L_00d0: ldarg.1
L_00d1: ldfld RimWorld.Pawn_StoryTracker story
L_00d6: brfalse Label #12
L_00db: ldarg.1
L_00dc: ldfld RimWorld.Pawn_StoryTracker story
L_00e1: ldfld RimWorld.TraitSet traits
L_00e6: ldsfld RimWorld.TraitDef DrugDesire
L_00eb: callvirt Int32 DegreeOfTrait(RimWorld.TraitDef)
L_00f0: stloc.0
L_00f1: ldloc.0
L_00f2: ldc.i4.0
L_00f3: bgt Label #13
L_00f8: ldarg.1
L_00f9: callvirt Boolean get_InMentalState()
L_00fe: brtrue Label #14
L_0103: ldc.i4.0
L_0104: br Label #0
L_0109: Label #9
L_0109: Label #10
L_0109: Label #11
L_0109: Label #12
L_0109: Label #13
L_0109: Label #14
L_0109: ldc.i4.1
L_010a: br Label #0
L_010f: Label #0
L_010f: stloc 1 (System.Boolean)
L_0110: ldloca 1 (System.Boolean)
L_0112: ldarg 1
L_0118: ldarg 2
L_011e: call Void Postfix(Boolean ByRef, Verse.Pawn, Verse.Thing)
L_0123: ldloc 1 (System.Boolean)
L_0124: ret
DONE

PATCHING Verse.ModContentPack System.String ToString()


L_0000: Local var #0 System.String
L_0000: ldnull
L_0001: stloc 0 (System.String)
L_0002: ldarg.0
L_0003: ldloca 0 (System.String)
L_0005: call Boolean Replacement(Verse.ModContentPack, System.String ByRef)
L_000a: brfalse Label #1
L_000f: ldarg.0
L_0010: call System.String get_Identifier()
L_0015: br Label #0
L_001a: Label #0
L_001a: stloc 0 (System.String)
L_001b: Label #1
L_001b: ldloc 0 (System.String)
L_001c: ret
DONE

PATCHING RimWorld.DrugPolicy RimWorld.DrugPolicyEntry get_Item(Verse.ThingDef)


L_0000: Local var #0 System.Int32
L_0000: Local var #1 RimWorld.DrugPolicyEntry
L_0000: ldnull
L_0001: stloc 1 (RimWorld.DrugPolicyEntry)
L_0002: ldc.i4.0
L_0003: stloc.0
L_0004: br Label #2
L_0009: Label #4
L_0009: ldarg.0
L_000a: ldfld System.Collections.Generic.List`1[RimWorld.DrugPolicyEntry]
entriesInt
L_000f: ldloc.0
L_0010: callvirt RimWorld.DrugPolicyEntry get_Item(Int32)
L_0015: ldfld Verse.ThingDef drug
L_001a: ldarg.1
L_001b: bne.un Label #3
L_0020: ldarg.0
L_0021: ldfld System.Collections.Generic.List`1[RimWorld.DrugPolicyEntry]
entriesInt
L_0026: ldloc.0
L_0027: callvirt RimWorld.DrugPolicyEntry get_Item(Int32)
L_002c: br Label #0
L_0031: Label #3
L_0031: ldloc.0
L_0032: ldc.i4.1
L_0033: add
L_0034: stloc.0
L_0035: Label #2
L_0035: ldloc.0
L_0036: ldarg.0
L_0037: ldfld System.Collections.Generic.List`1[RimWorld.DrugPolicyEntry]
entriesInt
L_003c: callvirt Int32 get_Count()
L_0041: blt Label #4
L_0046: newobj Void .ctor()
L_004b: throw
L_004c: Label #0
L_004c: stloc 1 (RimWorld.DrugPolicyEntry)
L_004d: ldarg.0
L_004e: ldloca 1 (RimWorld.DrugPolicyEntry)
L_0050: ldarg 1
L_0056: call Void Postfix(RimWorld.DrugPolicy, RimWorld.DrugPolicyEntry ByRef,
Verse.ThingDef)
L_005b: ldloc 1 (RimWorld.DrugPolicyEntry)
L_005c: ret
DONE

PATCHING RimWorld.FactionDialogMaker Verse.DiaOption OfferGiftOption(Verse.Map)


L_0000: Local var #0 Verse.DiaOption
L_0000: Local var #1 Verse.DiaOption
L_0000: Local var #2 System.String
L_0000: Local var #3 Verse.DiaNode
L_0000: Local var #4 RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F
L_0000: Local var #5 Verse.DiaOption
L_0000: ldnull
L_0001: stloc 5 (Verse.DiaOption)
L_0003: ldloca 5 (Verse.DiaOption)
L_0005: ldarg 0
L_000b: call Boolean Replacement(Verse.DiaOption ByRef, Verse.Map)
L_0010: brfalse Label #1
L_0015: newobj Void .ctor()
L_001a: stloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_001c: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_001e: ldarg.0
L_001f: stfld Verse.Map map
L_0024: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_0026: ldfld Verse.Map map
L_002b: call Int32 AmountSendableSilver(Verse.Map)
L_0030: ldc.i4 300
L_0035: bge Label #2
L_003a: ldstr "OfferGift"
L_003f: call System.String Translate(System.String)
L_0044: newobj Void .ctor(String)
L_0049: stloc.0
L_004a: ldloc.0
L_004b: ldstr "NeedSilverLaunchable"
L_0050: ldc.i4.1
L_0051: newarr System.Object
L_0056: dup
L_0057: ldc.i4.0
L_0058: ldc.i4 300
L_005d: box System.Int32
L_0062: stelem.ref
L_0063: call System.String Translate(System.String, System.Object[])
L_0068: callvirt Void Disable(System.String)
L_006d: ldloc.0
L_006e: br Label #0
L_0073: Label #2
L_0073: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_0075: ldc.r4 12
L_007a: ldsfld Verse.Pawn negotiator
L_007f: ldsfld RimWorld.StatDef GiftImpact
L_0084: ldc.i4.1
L_0085: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_008a: mul
L_008b: stfld System.Single goodwillDelta
L_0090: ldstr "OfferGift"
L_0095: call System.String Translate(System.String)
L_009a: ldstr " ("
L_009f: ldstr "SilverForGoodwill"
L_00a4: ldc.i4.2
L_00a5: newarr System.Object
L_00aa: dup
L_00ab: ldc.i4.0
L_00ac: ldc.i4 300
L_00b1: box System.Int32
L_00b6: stelem.ref
L_00b7: dup
L_00b8: ldc.i4.1
L_00b9: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_00bb: ldflda System.Single goodwillDelta
L_00c0: ldstr "#####0"
L_00c5: call System.String ToString(System.String)
L_00ca: stelem.ref
L_00cb: call System.String Translate(System.String, System.Object[])
L_00d0: ldstr ")"
L_00d5: call System.String Concat(System.String, System.String, System.String,
System.String)
L_00da: newobj Void .ctor(String)
L_00df: stloc.1
L_00e0: ldloc.1
L_00e1: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_00e3: ldftn Void <>m__37B()
L_00e9: newobj Void .ctor(Object, IntPtr)
L_00ee: stfld System.Action action
L_00f3: ldstr "SilverGiftSent"
L_00f8: ldc.i4.2
L_00f9: newarr System.Object
L_00fe: dup
L_00ff: ldc.i4.0
L_0100: ldsfld RimWorld.Faction faction
L_0105: ldfld Verse.Pawn leader
L_010a: call System.String LabelIndefinite(Verse.Pawn)
L_010f: stelem.ref
L_0110: dup
L_0111: ldc.i4.1
L_0112: ldloc.s 4 (RimWorld.FactionDialogMaker+<OfferGiftOption>c__AnonStorey35F)
L_0114: ldfld System.Single goodwillDelta
L_0119: call Int32 RoundToInt(Single)
L_011e: box System.Int32
L_0123: stelem.ref
L_0124: call System.String Translate(System.String, System.Object[])
L_0129: call System.String CapitalizeFirst(System.String)
L_012e: stloc.2
L_012f: ldloc.2
L_0130: newobj Void .ctor(String)
L_0135: stloc.3
L_0136: ldloc.3
L_0137: ldfld System.Collections.Generic.List`1[Verse.DiaOption] options
L_013c: call Verse.DiaOption OKToRoot()
L_0141: callvirt Void Add(Verse.DiaOption)
L_0146: ldloc.1
L_0147: ldloc.3
L_0148: stfld Verse.DiaNode link
L_014d: ldloc.1
L_014e: br Label #0
L_0153: Label #0
L_0153: stloc 5 (Verse.DiaOption)
L_0155: Label #1
L_0155: ldloc 5 (Verse.DiaOption)
L_0157: ret
DONE

PATCHING RimWorld.ForbidUtility Boolean CaresAboutForbidden(Verse.Pawn, Boolean)


L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldloca 0 (System.Boolean)
L_0008: ldarg 0
L_000e: ldarg 1
L_0014: call Boolean Replacement(Boolean ByRef, Verse.Pawn, Boolean)
L_0019: brfalse Label #1
L_001e: ldarg.0
L_001f: callvirt RimWorld.Faction get_HostFaction()
L_0024: brfalse Label #2
L_0029: ldc.i4.0
L_002a: br Label #0
L_002f: Label #2
L_002f: ldarg.0
L_0030: callvirt Boolean get_InMentalState()
L_0035: brfalse Label #3
L_003a: ldc.i4.0
L_003b: br Label #0
L_0040: Label #3
L_0040: ldarg.1
L_0041: brfalse Label #4
L_0046: ldarg.0
L_0047: call Boolean ShouldFollowMaster(Verse.Pawn)
L_004c: brfalse Label #5
L_0051: ldc.i4.0
L_0052: br Label #0
L_0057: Label #4
L_0057: Label #5
L_0057: ldc.i4.1
L_0058: br Label #0
L_005d: Label #0
L_005d: stloc 0 (System.Boolean)
L_005e: Label #1
L_005e: ldloc 0 (System.Boolean)
L_005f: ret
DONE

PATCHING RimWorld.ITab_Pawn_Gear Void InterfaceDrop(Verse.Thing)


L_0000: Local var #0 Verse.ThingWithComps
L_0000: Local var #1 RimWorld.Apparel
L_0000: Local var #2 Verse.Thing
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: call Boolean InterfaceDropPreFix(RimWorld.ITab_Pawn_Gear, Verse.Thing)
L_000c: brfalse Label #1
L_0011: ldarg.0
L_0012: ldarg 1
L_0018: call Boolean Prefix(RimWorld.ITab_Pawn_Gear, Verse.Thing)
L_001d: brfalse Label #1
L_0022: ldarg.1
L_0023: isinst Verse.ThingWithComps
L_0028: stloc.0
L_0029: ldarg.1
L_002a: isinst RimWorld.Apparel
L_002f: stloc.1
L_0030: ldloc.1
L_0031: brfalse Label #2
L_0036: ldarg.0
L_0037: call Verse.Pawn get_SelPawnForGear()
L_003c: ldfld RimWorld.Pawn_ApparelTracker apparel
L_0041: brfalse Label #3
L_0046: ldarg.0
L_0047: call Verse.Pawn get_SelPawnForGear()
L_004c: ldfld RimWorld.Pawn_ApparelTracker apparel
L_0051: callvirt System.Collections.Generic.List`1[RimWorld.Apparel]
get_WornApparel()
L_0056: ldloc.1
L_0057: callvirt Boolean Contains(RimWorld.Apparel)
L_005c: brfalse Label #4
L_0061: ldarg.0
L_0062: call Verse.Pawn get_SelPawnForGear()
L_0067: ldfld Verse.AI.Pawn_JobTracker jobs
L_006c: ldsfld Verse.JobDef RemoveApparel
L_0071: ldloc.1
L_0072: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0077: newobj Void .ctor(JobDef, LocalTargetInfo)
L_007c: ldc.i4.0
L_007d: callvirt Boolean TryTakeOrderedJob(Verse.AI.Job, JobTag)
L_0082: pop
L_0083: br Label #5
L_0088: Label #2
L_0088: Label #3
L_0088: Label #4
L_0088: ldloc.0
L_0089: brfalse Label #6
L_008e: ldarg.0
L_008f: call Verse.Pawn get_SelPawnForGear()
L_0094: ldfld Verse.Pawn_EquipmentTracker equipment
L_0099: brfalse Label #7
L_009e: ldarg.0
L_009f: call Verse.Pawn get_SelPawnForGear()
L_00a4: ldfld Verse.Pawn_EquipmentTracker equipment
L_00a9: callvirt System.Collections.Generic.List`1[Verse.ThingWithComps]
get_AllEquipmentListForReading()
L_00ae: ldloc.0
L_00af: callvirt Boolean Contains(Verse.ThingWithComps)
L_00b4: brfalse Label #8
L_00b9: ldarg.0
L_00ba: call Verse.Pawn get_SelPawnForGear()
L_00bf: ldfld Verse.AI.Pawn_JobTracker jobs
L_00c4: ldsfld Verse.JobDef DropEquipment
L_00c9: ldloc.0
L_00ca: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00cf: newobj Void .ctor(JobDef, LocalTargetInfo)
L_00d4: ldc.i4.0
L_00d5: callvirt Boolean TryTakeOrderedJob(Verse.AI.Job, JobTag)
L_00da: pop
L_00db: br Label #9
L_00e0: Label #6
L_00e0: Label #7
L_00e0: Label #8
L_00e0: ldarg.1
L_00e1: ldfld Verse.ThingDef def
L_00e6: ldfld System.Boolean destroyOnDrop
L_00eb: brtrue Label #10
L_00f0: ldarg.0
L_00f1: call Verse.Pawn get_SelPawnForGear()
L_00f6: ldfld Verse.Pawn_InventoryTracker inventory
L_00fb: ldfld Verse.ThingOwner`1[Verse.Thing] innerContainer
L_0100: ldarg.1
L_0101: ldarg.0
L_0102: call Verse.Pawn get_SelPawnForGear()
L_0107: callvirt IntVec3 get_Position()
L_010c: ldarg.0
L_010d: call Verse.Pawn get_SelPawnForGear()
L_0112: callvirt Verse.Map get_Map()
L_0117: ldc.i4.1
L_0118: ldloca.s 2 (Verse.Thing)
L_011a: ldnull
L_011b: callvirt Boolean TryDrop(Verse.Thing, IntVec3, Verse.Map, ThingPlaceMode,
Verse.Thing ByRef, System.Action`2[Verse.Thing,System.Int32])
L_0120: pop
L_0121: Label #5
L_0121: Label #9
L_0121: Label #10
L_0121: br Label #0
L_0126: Label #0
L_0126: Label #1
L_0126: ret
DONE

PATCHING RimWorld.ITab_Pawn_Guest Boolean get_IsVisible()


L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldarg.0
L_0007: call Verse.Pawn get_SelPawn()
L_000c: callvirt RimWorld.Faction get_HostFaction()
L_0011: call RimWorld.Faction get_OfPlayer()
L_0016: bne.un Label #2
L_001b: ldarg.0
L_001c: call Verse.Pawn get_SelPawn()
L_0021: callvirt Boolean get_IsPrisoner()
L_0026: ldc.i4.0
L_0027: ceq
L_0029: br Label #3
L_002e: Label #2
L_002e: ldc.i4.0
L_002f: Label #3
L_002f: br Label #0
L_0034: Label #0
L_0034: stloc 0 (System.Boolean)
L_0035: ldarg.0
L_0036: ldloca 0 (System.Boolean)
L_0038: call Void Postfix(RimWorld.ITab_Pawn_Guest, Boolean ByRef)
L_003d: ldloc 0 (System.Boolean)
L_003e: ret
DONE
PATCHING RimWorld.JobDriver_Ingest Verse.AI.Toil
ReserveFoodIfWillIngestWholeStack()
L_0000: Local var #0 Verse.AI.Toil
L_0000: Local var #1 Verse.AI.Toil
L_0000: ldnull
L_0001: stloc 1 (Verse.AI.Toil)
L_0002: newobj Void .ctor()
L_0007: stloc.0
L_0008: ldloc.0
L_0009: ldarg.0
L_000a: ldftn Void <ReserveFoodIfWillIngestWholeStack>m__E6()
L_0010: newobj Void .ctor(Object, IntPtr)
L_0015: stfld System.Action initAction
L_001a: ldloc.0
L_001b: ldc.i4.1
L_001c: stfld Verse.AI.ToilCompleteMode defaultCompleteMode
L_0021: ldloc.0
L_0022: br Label #0
L_0027: Label #0
L_0027: stloc 1 (Verse.AI.Toil)
L_0028: ldloca 1 (Verse.AI.Toil)
L_002a: call Void Postfix(Verse.AI.Toil ByRef)
L_002f: ldloc 1 (Verse.AI.Toil)
L_0030: ret
DONE

PATCHING RimWorld.PawnUtility Boolean ShouldSendNotificationAbout(Verse.Pawn)


L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: call ProgramState get_ProgramState()
L_000b: ldc.i4.2
L_000c: beq Label #2
L_0011: ldc.i4.0
L_0012: br Label #0
L_0017: Label #2
L_0017: ldarg.0
L_0018: call Boolean IsBeingGenerated(Verse.Pawn)
L_001d: brfalse Label #3
L_0022: ldc.i4.0
L_0023: br Label #0
L_0028: Label #3
L_0028: ldarg.0
L_0029: call Boolean IsWorldPawn(Verse.Pawn)
L_002e: brfalse Label #4
L_0033: ldarg.0
L_0034: call Boolean IsCaravanMember(Verse.Pawn)
L_0039: brfalse Label #5
L_003e: ldarg.0
L_003f: call RimWorld.Planet.Caravan GetCaravan(Verse.Pawn)
L_0044: callvirt Boolean get_IsPlayerControlled()
L_0049: brtrue Label #6
L_004e: Label #5
L_004e: ldarg.0
L_004f: call Boolean IsTravelingInTransportPodWorldObject(Verse.Pawn)
L_0054: brtrue Label #7
L_0059: ldarg.0
L_005a: callvirt Verse.Corpse get_Corpse()
L_005f: call Boolean DestroyedOrNull(Verse.Thing)
L_0064: brfalse Label #8
L_0069: ldc.i4.0
L_006a: br Label #0
L_006f: Label #4
L_006f: Label #6
L_006f: Label #7
L_006f: Label #8
L_006f: ldarg.0
L_0070: callvirt RimWorld.Faction get_Faction()
L_0075: call RimWorld.Faction get_OfPlayer()
L_007a: beq Label #9
L_007f: ldarg.0
L_0080: callvirt RimWorld.Faction get_HostFaction()
L_0085: call RimWorld.Faction get_OfPlayer()
L_008a: beq Label #10
L_008f: ldc.i4.0
L_0090: br Label #0
L_0095: Label #10
L_0095: ldarg.0
L_0096: callvirt Verse.RaceProperties get_RaceProps()
L_009b: callvirt Boolean get_Humanlike()
L_00a0: brfalse Label #11
L_00a5: ldarg.0
L_00a6: ldfld RimWorld.Pawn_GuestTracker guest
L_00ab: ldfld System.Boolean released
L_00b0: brfalse Label #12
L_00b5: ldarg.0
L_00b6: callvirt Boolean get_Downed()
L_00bb: brtrue Label #13
L_00c0: ldarg.0
L_00c1: call Boolean InBed(Verse.Pawn)
L_00c6: brtrue Label #14
L_00cb: ldc.i4.0
L_00cc: br Label #0
L_00d1: Label #11
L_00d1: Label #12
L_00d1: Label #13
L_00d1: Label #14
L_00d1: ldarg.0
L_00d2: callvirt Verse.AI.Job get_CurJob()
L_00d7: brfalse Label #15
L_00dc: ldarg.0
L_00dd: callvirt Verse.AI.Job get_CurJob()
L_00e2: ldfld System.Boolean exitMapOnArrival
L_00e7: brfalse Label #16
L_00ec: ldarg.0
L_00ed: call Boolean IsPrisonBreaking(Verse.Pawn)
L_00f2: brtrue Label #17
L_00f7: ldc.i4.0
L_00f8: br Label #0
L_00fd: Label #9
L_00fd: Label #15
L_00fd: Label #16
L_00fd: Label #17
L_00fd: ldc.i4.1
L_00fe: br Label #0
L_0103: Label #0
L_0103: stloc 0 (System.Boolean)
L_0104: ldloca 0 (System.Boolean)
L_0106: ldarg 0
L_010c: call Void Postfix(Boolean ByRef, Verse.Pawn)
L_0111: ldloc 0 (System.Boolean)
L_0112: ret
DONE

PATCHING RimWorld.Pawn_GuestTracker Void Notify_PawnUndowned()


L_0000: Local var #0 Verse.Map
L_0000: Local var #1 System.Single
L_0000: Local var #2 Verse.FloatRange
L_0000: call Boolean Replacement()
L_0005: brfalse Label #1
L_000a: ldarg.0
L_000b: ldfld Verse.Pawn pawn
L_0010: callvirt Verse.RaceProperties get_RaceProps()
L_0015: callvirt Boolean get_Humanlike()
L_001a: brfalse Label #2
L_001f: ldarg.0
L_0020: call RimWorld.Faction get_HostFaction()
L_0025: call RimWorld.Faction get_OfPlayer()
L_002a: bne.un Label #3
L_002f: ldarg.0
L_0030: ldfld Verse.Pawn pawn
L_0035: callvirt RimWorld.Faction get_Faction()
L_003a: brfalse Label #4
L_003f: ldarg.0
L_0040: ldfld Verse.Pawn pawn
L_0045: callvirt RimWorld.Faction get_Faction()
L_004a: ldfld RimWorld.FactionDef def
L_004f: ldfld System.Boolean rescueesCanJoin
L_0054: brfalse Label #5
L_0059: Label #4
L_0059: ldarg.0
L_005a: call Boolean get_IsPrisoner()
L_005f: brtrue Label #6
L_0064: ldarg.0
L_0065: ldfld Verse.Pawn pawn
L_006a: callvirt Boolean get_SpawnedOrAnyParentSpawned()
L_006f: brfalse Label #7
L_0074: ldarg.0
L_0075: ldfld Verse.Pawn pawn
L_007a: callvirt Verse.Map get_MapHeld()
L_007f: stloc.0
L_0080: ldarg.0
L_0081: ldfld Verse.Pawn pawn
L_0086: call FloatRange SafeTemperatureRange(Verse.Pawn)
L_008b: stloc.2
L_008c: ldloca.s 2 (Verse.FloatRange)
L_008e: ldloc.0
L_008f: ldfld Verse.MapTemperature mapTemperature
L_0094: callvirt Single get_OutdoorTemp()
L_0099: call Boolean Includes(Single)
L_009e: brfalse Label #8
L_00a3: ldloc.0
L_00a4: ldfld RimWorld.GameConditionManager gameConditionManager
L_00a9: ldsfld Verse.GameConditionDef ToxicFallout
L_00ae: callvirt Boolean ConditionIsActive(Verse.GameConditionDef)
L_00b3: brfalse Label #9
L_00b8: Label #8
L_00b8: ldc.r4 1
L_00bd: stloc.1
L_00be: br Label #10
L_00c3: Label #9
L_00c3: ldc.r4 0.5
L_00c8: stloc.1
L_00c9: Label #10
L_00c9: ldarg.0
L_00ca: ldfld Verse.Pawn pawn
L_00cf: ldfld System.Int32 thingIDNumber
L_00d4: ldc.i4 8976612
L_00d9: xor
L_00da: call Single ValueSeeded(Int32)
L_00df: ldloc.1
L_00e0: bge.un Label #11
L_00e5: ldarg.0
L_00e6: ldfld Verse.Pawn pawn
L_00eb: call RimWorld.Faction get_OfPlayer()
L_00f0: ldnull
L_00f1: callvirt Void SetFaction(RimWorld.Faction, Verse.Pawn)
L_00f6: ldstr "MessageRescueeJoined"
L_00fb: ldc.i4.1
L_00fc: newarr System.Object
L_0101: dup
L_0102: ldc.i4.0
L_0103: ldarg.0
L_0104: ldfld Verse.Pawn pawn
L_0109: callvirt System.String get_LabelShort()
L_010e: stelem.ref
L_010f: call System.String Translate(System.String, System.Object[])
L_0114: ldarg.0
L_0115: ldfld Verse.Pawn pawn
L_011a: call System.String AdjustedFor(System.String, Verse.Pawn)
L_011f: ldarg.0
L_0120: ldfld Verse.Pawn pawn
L_0125: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_012a: ldc.i4.3
L_012b: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0130: Label #2
L_0130: Label #3
L_0130: Label #5
L_0130: Label #6
L_0130: Label #7
L_0130: Label #11
L_0130: br Label #0
L_0135: Label #0
L_0135: Label #1
L_0135: ret
DONE

PATCHING RimWorld.Pawn_GuestTracker Void SetGuestStatus(RimWorld.Faction, Boolean)


L_0000: Local var #0 System.Boolean
L_0000: Local var #1 Verse.AI.Group.Lord
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: ldarga 2
L_000d: call Void Prefix(RimWorld.Pawn_GuestTracker, RimWorld.Faction, Boolean
ByRef)
L_0012: ldarg.1
L_0013: brfalse Label #2
L_0018: ldarg.0
L_0019: ldc.i4.0
L_001a: stfld System.Boolean released
L_001f: Label #2
L_001f: ldarg.1
L_0020: ldarg.0
L_0021: call RimWorld.Faction get_HostFaction()
L_0026: bne.un Label #3
L_002b: ldarg.2
L_002c: ldarg.0
L_002d: call Boolean get_IsPrisoner()
L_0032: bne.un Label #4
L_0037: br Label #0
L_003c: Label #3
L_003c: Label #4
L_003c: ldarg.2
L_003d: brtrue Label #5
L_0042: ldarg.0
L_0043: ldfld Verse.Pawn pawn
L_0048: callvirt RimWorld.Faction get_Faction()
L_004d: ldarg.1
L_004e: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0053: brfalse Label #6
L_0058: ldc.i4.8
L_0059: newarr System.Object
L_005e: dup
L_005f: ldc.i4.0
L_0060: ldstr "Tried to make "
L_0065: stelem.ref
L_0066: dup
L_0067: ldc.i4.1
L_0068: ldarg.0
L_0069: ldfld Verse.Pawn pawn
L_006e: stelem.ref
L_006f: dup
L_0070: ldc.i4.2
L_0071: ldstr " a guest of "
L_0076: stelem.ref
L_0077: dup
L_0078: ldc.i4.3
L_0079: ldarg.1
L_007a: stelem.ref
L_007b: dup
L_007c: ldc.i4.4
L_007d: ldstr " but their faction "
L_0082: stelem.ref
L_0083: dup
L_0084: ldc.i4.5
L_0085: ldarg.0
L_0086: ldfld Verse.Pawn pawn
L_008b: callvirt RimWorld.Faction get_Faction()
L_0090: stelem.ref
L_0091: dup
L_0092: ldc.i4.6
L_0093: ldstr " is hostile to "
L_0098: stelem.ref
L_0099: dup
L_009a: ldc.i4.7
L_009b: ldarg.1
L_009c: stelem.ref
L_009d: call System.String Concat(System.Object[])
L_00a2: call Void Error(System.String)
L_00a7: br Label #0
L_00ac: Label #5
L_00ac: Label #6
L_00ac: ldarg.1
L_00ad: brfalse Label #7
L_00b2: ldarg.1
L_00b3: ldarg.0
L_00b4: ldfld Verse.Pawn pawn
L_00b9: callvirt RimWorld.Faction get_Faction()
L_00be: bne.un Label #8
L_00c3: ldarg.2
L_00c4: brtrue Label #9
L_00c9: ldc.i4.4
L_00ca: newarr System.Object
L_00cf: dup
L_00d0: ldc.i4.0
L_00d1: ldstr "Tried to make "
L_00d6: stelem.ref
L_00d7: dup
L_00d8: ldc.i4.1
L_00d9: ldarg.0
L_00da: ldfld Verse.Pawn pawn
L_00df: stelem.ref
L_00e0: dup
L_00e1: ldc.i4.2
L_00e2: ldstr " a guest of their own faction "
L_00e7: stelem.ref
L_00e8: dup
L_00e9: ldc.i4.3
L_00ea: ldarg.0
L_00eb: ldfld Verse.Pawn pawn
L_00f0: callvirt RimWorld.Faction get_Faction()
L_00f5: stelem.ref
L_00f6: call System.String Concat(System.Object[])
L_00fb: call Void Error(System.String)
L_0100: br Label #0
L_0105: Label #7
L_0105: Label #8
L_0105: Label #9
L_0105: ldarg.2
L_0106: brfalse Label #10
L_010b: ldarg.0
L_010c: call Boolean get_IsPrisoner()
L_0111: brfalse Label #11
L_0116: ldarg.0
L_0117: call RimWorld.Faction get_HostFaction()
L_011c: ldarg.1
L_011d: ceq
L_011f: ldc.i4.0
L_0120: ceq
L_0122: br Label #12
L_0127: Label #11
L_0127: ldc.i4.1
L_0128: Label #12
L_0128: br Label #13
L_012d: Label #10
L_012d: ldc.i4.0
L_012e: Label #13
L_012e: stloc.0
L_012f: ldarg.0
L_0130: ldarg.2
L_0131: stfld System.Boolean isPrisonerInt
L_0136: ldarg.0
L_0137: ldarg.1
L_0138: stfld RimWorld.Faction hostFactionInt
L_013d: ldarg.0
L_013e: ldfld Verse.Pawn pawn
L_0143: ldc.i4.0
L_0144: callvirt Void ClearMind(Boolean)
L_0149: ldarg.0
L_014a: ldfld Verse.Pawn pawn
L_014f: ldc.i4.1
L_0150: callvirt Void ClearReservations(Boolean)
L_0155: ldloc.0
L_0156: brfalse Label #14
L_015b: ldarg.0
L_015c: ldfld Verse.Pawn pawn
L_0161: ldc.i4.0
L_0162: callvirt Void DropAndForbidEverything(Boolean)
L_0167: ldarg.0
L_0168: ldfld Verse.Pawn pawn
L_016d: call Verse.AI.Group.Lord GetLord(Verse.Pawn)
L_0172: stloc.1
L_0173: ldloc.1
L_0174: brfalse Label #15
L_0179: ldloc.1
L_017a: ldarg.0
L_017b: ldfld Verse.Pawn pawn
L_0180: ldc.i4.3
L_0181: callvirt Void Notify_PawnLost(Verse.Pawn, PawnLostCondition)
L_0186: Label #15
L_0186: ldarg.0
L_0187: ldfld Verse.Pawn pawn
L_018c: callvirt Boolean get_Drafted()
L_0191: brfalse Label #16
L_0196: ldarg.0
L_0197: ldfld Verse.Pawn pawn
L_019c: ldfld RimWorld.Pawn_DraftController drafter
L_01a1: ldc.i4.0
L_01a2: callvirt Void set_Drafted(Boolean)
L_01a7: Label #14
L_01a7: Label #16
L_01a7: ldarg.0
L_01a8: ldfld Verse.Pawn pawn
L_01ad: ldc.i4.0
L_01ae: call Void AddAndRemoveDynamicComponents(Verse.Pawn, Boolean)
L_01b3: ldarg.0
L_01b4: ldfld Verse.Pawn pawn
L_01b9: ldfld Verse.Pawn_HealthTracker health
L_01be: ldfld RimWorld.BillStack surgeryBills
L_01c3: callvirt Void Clear()
L_01c8: ldarg.0
L_01c9: ldfld Verse.Pawn pawn
L_01ce: ldfld RimWorld.Pawn_Ownership ownership
L_01d3: brfalse Label #17
L_01d8: ldarg.0
L_01d9: ldfld Verse.Pawn pawn
L_01de: ldfld RimWorld.Pawn_Ownership ownership
L_01e3: callvirt Void Notify_ChangedGuestStatus()
L_01e8: Label #17
L_01e8: call Void ClearCache()
L_01ed: ldarg.0
L_01ee: ldfld Verse.Pawn pawn
L_01f3: callvirt Boolean get_Spawned()
L_01f8: brfalse Label #18
L_01fd: ldarg.0
L_01fe: ldfld Verse.Pawn pawn
L_0203: callvirt Verse.Map get_Map()
L_0208: ldfld Verse.MapPawns mapPawns
L_020d: ldarg.0
L_020e: ldfld Verse.Pawn pawn
L_0213: callvirt Void UpdateRegistryForPawn(Verse.Pawn)
L_0218: ldarg.0
L_0219: ldfld Verse.Pawn pawn
L_021e: callvirt Verse.Map get_Map()
L_0223: ldfld Verse.AI.AttackTargetsCache attackTargetsCache
L_0228: ldarg.0
L_0229: ldfld Verse.Pawn pawn
L_022e: callvirt Void UpdateTarget(IAttackTarget)
L_0233: Label #18
L_0233: ldarg.0
L_0234: ldfld Verse.Pawn pawn
L_0239: call Void CheckDrugAddictionTeachOpportunity(Verse.Pawn)
L_023e: ldarg.2
L_023f: brfalse Label #19
L_0244: ldarg.0
L_0245: ldfld Verse.Pawn pawn
L_024a: ldfld RimWorld.Pawn_PlayerSettings playerSettings
L_024f: brfalse Label #20
L_0254: ldarg.0
L_0255: ldfld Verse.Pawn pawn
L_025a: ldfld RimWorld.Pawn_PlayerSettings playerSettings
L_025f: callvirt Void Notify_MadePrisoner()
L_0264: Label #19
L_0264: Label #20
L_0264: br Label #0
L_0269: Label #0
L_0269: ret
DONE

PATCHING RimWorld.Pawn_InteractionsTracker Boolean TryInteractRandomly()


L_0000: Local var #0 System.Collections.Generic.List`1[[Verse.Pawn, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Collections.Generic.List`1[[RimWorld.InteractionDef,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #2 System.Int32
L_0000: Local var #3 RimWorld.InteractionDef
L_0000: Local var #4
RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354
L_0000: Local var #5 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 5 (System.Boolean)
L_0007: ldarg.0
L_0008: ldloca 5 (System.Boolean)
L_000a: call Boolean Replacement(RimWorld.Pawn_InteractionsTracker, Boolean ByRef)
L_000f: brfalse Label #1
L_0014: ldarg.0
L_0015: call Boolean InteractedTooRecentlyToInteract()
L_001a: brfalse Label #2
L_001f: ldc.i4.0
L_0020: br Label #0
L_0025: Label #2
L_0025: ldarg.0
L_0026: ldfld Verse.Pawn pawn
L_002b: call Boolean CanInitiateRandomInteraction(Verse.Pawn)
L_0030: brtrue Label #3
L_0035: ldc.i4.0
L_0036: br Label #0
L_003b: Label #3
L_003b: ldarg.0
L_003c: ldfld Verse.Pawn pawn
L_0041: callvirt Verse.Map get_Map()
L_0046: ldfld Verse.MapPawns mapPawns
L_004b: ldarg.0
L_004c: ldfld Verse.Pawn pawn
L_0051: callvirt RimWorld.Faction get_Faction()
L_0056: callvirt System.Collections.Generic.List`1[Verse.Pawn]
SpawnedPawnsInFaction(RimWorld.Faction)
L_005b: stloc.0
L_005c: ldsfld System.Collections.Generic.List`1[Verse.Pawn] workingList
L_0061: callvirt Void Clear()
L_0066: ldsfld System.Collections.Generic.List`1[Verse.Pawn] workingList
L_006b: ldloc.0
L_006c: callvirt Void AddRange(IEnumerable`1)
L_0071: ldsfld System.Collections.Generic.List`1[Verse.Pawn] workingList
L_0076: call Void Shuffle[Pawn](IList`1)
L_007b: call System.Collections.Generic.List`1[RimWorld.InteractionDef]
get_AllDefsListForReading()
L_0080: stloc.1
L_0081: ldc.i4.0
L_0082: stloc.2
L_0083: br Label #4
L_0088: Label #14
L_0088: newobj Void .ctor()
L_008d: stloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_008f: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_0091: ldarg.0
L_0092: stfld RimWorld.Pawn_InteractionsTracker <>f__this
L_0097: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_0099: ldsfld System.Collections.Generic.List`1[Verse.Pawn] workingList
L_009e: ldloc.2
L_009f: callvirt Verse.Pawn get_Item(Int32)
L_00a4: stfld Verse.Pawn p
L_00a9: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_00ab: ldfld Verse.Pawn p
L_00b0: ldarg.0
L_00b1: ldfld Verse.Pawn pawn
L_00b6: beq Label #5
L_00bb: ldarg.0
L_00bc: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_00be: ldfld Verse.Pawn p
L_00c3: call Boolean CanInteractNowWith(Verse.Pawn)
L_00c8: brfalse Label #6
L_00cd: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_00cf: ldfld Verse.Pawn p
L_00d4: call Boolean CanReceiveRandomInteraction(Verse.Pawn)
L_00d9: brfalse Label #7
L_00de: ldarg.0
L_00df: ldfld Verse.Pawn pawn
L_00e4: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_00e6: ldfld Verse.Pawn p
L_00eb: call Boolean HostileTo(Verse.Thing, Verse.Thing)
L_00f0: brfalse Label #8
L_00f5: Label #5
L_00f5: Label #6
L_00f5: Label #7
L_00f5: br Label #9
L_00fa: Label #8
L_00fa: ldloc.1
L_00fb: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_00fd: ldftn Single <>m__358(RimWorld.InteractionDef)
L_0103: newobj Void .ctor(Object, IntPtr)
L_0108: ldloca.s 3 (RimWorld.InteractionDef)
L_010a: call Boolean TryRandomElementByWeight[InteractionDef](IEnumerable`1,
System.Func`2[RimWorld.InteractionDef,System.Single], RimWorld.InteractionDef
ByRef)
L_010f: brtrue Label #10
L_0114: br Label #11
L_0119: Label #10
L_0119: ldarg.0
L_011a: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_011c: ldfld Verse.Pawn p
L_0121: ldloc.3
L_0122: call Boolean TryInteractWith(Verse.Pawn, RimWorld.InteractionDef)
L_0127: brtrue Label #12
L_012c: ldarg.0
L_012d: ldfld Verse.Pawn pawn
L_0132: ldstr " failed to interact with "
L_0137: ldloc.s 4
(RimWorld.Pawn_InteractionsTracker+<TryInteractRandomly>c__AnonStorey354)
L_0139: ldfld Verse.Pawn p
L_013e: call System.String Concat(System.Object, System.Object, System.Object)
L_0143: call Void Error(System.String)
L_0148: br Label #13
L_014d: Label #12
L_014d: ldc.i4.1
L_014e: br Label #0
L_0153: Label #9
L_0153: Label #11
L_0153: Label #13
L_0153: ldloc.2
L_0154: ldc.i4.1
L_0155: add
L_0156: stloc.2
L_0157: Label #4
L_0157: ldloc.2
L_0158: ldsfld System.Collections.Generic.List`1[Verse.Pawn] workingList
L_015d: callvirt Int32 get_Count()
L_0162: blt Label #14
L_0167: ldc.i4.0
L_0168: br Label #0
L_016d: Label #0
L_016d: stloc 5 (System.Boolean)
L_016f: Label #1
L_016f: ldloc 5 (System.Boolean)
L_0171: ret
DONE

PATCHING RimWorld.Pawn_NeedsTracker Boolean ShouldHaveNeed(RimWorld.NeedDef)


L_0000: Local var #0 System.Boolean
L_0000: Local var #1 RimWorld.Pawn_NeedsTracker+<ShouldHaveNeed>c__AnonStorey34E
L_0000: Local var #2 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 2 (System.Boolean)
L_0006: ldarg.0
L_0007: ldloca 2 (System.Boolean)
L_0009: ldarg 1
L_000f: call Boolean Prefix(RimWorld.Pawn_NeedsTracker, Boolean ByRef,
RimWorld.NeedDef)
L_0014: brfalse Label #1
L_0019: newobj Void .ctor()
L_001e: stloc.1
L_001f: ldloc.1
L_0020: ldarg.1
L_0021: stfld RimWorld.NeedDef nd
L_0026: ldarg.0
L_0027: ldfld Verse.Pawn pawn
L_002c: callvirt Verse.RaceProperties get_RaceProps()
L_0031: ldfld Verse.Intelligence intelligence
L_0036: ldloc.1
L_0037: ldfld RimWorld.NeedDef nd
L_003c: ldfld Verse.Intelligence minIntelligence
L_0041: bge Label #2
L_0046: ldc.i4.0
L_0047: br Label #0
L_004c: Label #2
L_004c: ldloc.1
L_004d: ldfld RimWorld.NeedDef nd
L_0052: ldfld System.Boolean colonistsOnly
L_0057: brfalse Label #3
L_005c: ldarg.0
L_005d: ldfld Verse.Pawn pawn
L_0062: callvirt RimWorld.Faction get_Faction()
L_0067: brfalse Label #4
L_006c: ldarg.0
L_006d: ldfld Verse.Pawn pawn
L_0072: callvirt RimWorld.Faction get_Faction()
L_0077: callvirt Boolean get_IsPlayer()
L_007c: brtrue Label #5
L_0081: Label #4
L_0081: ldc.i4.0
L_0082: br Label #0
L_0087: Label #3
L_0087: Label #5
L_0087: ldloc.1
L_0088: ldfld RimWorld.NeedDef nd
L_008d: ldfld System.Boolean colonistAndPrisonersOnly
L_0092: brfalse Label #6
L_0097: ldarg.0
L_0098: ldfld Verse.Pawn pawn
L_009d: callvirt RimWorld.Faction get_Faction()
L_00a2: brfalse Label #7
L_00a7: ldarg.0
L_00a8: ldfld Verse.Pawn pawn
L_00ad: callvirt RimWorld.Faction get_Faction()
L_00b2: callvirt Boolean get_IsPlayer()
L_00b7: brtrue Label #8
L_00bc: Label #7
L_00bc: ldarg.0
L_00bd: ldfld Verse.Pawn pawn
L_00c2: callvirt RimWorld.Faction get_HostFaction()
L_00c7: brfalse Label #9
L_00cc: ldarg.0
L_00cd: ldfld Verse.Pawn pawn
L_00d2: callvirt RimWorld.Faction get_HostFaction()
L_00d7: call RimWorld.Faction get_OfPlayer()
L_00dc: ceq
L_00de: br Label #10
L_00e3: Label #9
L_00e3: ldc.i4.0
L_00e4: Label #10
L_00e4: br Label #11
L_00e9: Label #8
L_00e9: ldc.i4.1
L_00ea: Label #11
L_00ea: stloc.0
L_00eb: ldloc.0
L_00ec: brtrue Label #12
L_00f1: ldc.i4.0
L_00f2: br Label #0
L_00f7: Label #6
L_00f7: Label #12
L_00f7: ldloc.1
L_00f8: ldfld RimWorld.NeedDef nd
L_00fd: ldfld System.Boolean onlyIfCausedByHediff
L_0102: brfalse Label #13
L_0107: ldarg.0
L_0108: ldfld Verse.Pawn pawn
L_010d: ldfld Verse.Pawn_HealthTracker health
L_0112: ldfld Verse.HediffSet hediffSet
L_0117: ldfld System.Collections.Generic.List`1[Verse.Hediff] hediffs
L_011c: ldloc.1
L_011d: ldftn Boolean <>m__346(Verse.Hediff)
L_0123: newobj Void .ctor(Object, IntPtr)
L_0128: call Boolean Any[Hediff](System.Collections.Generic.List`1[Verse.Hediff],
System.Predicate`1[Verse.Hediff])
L_012d: brtrue Label #14
L_0132: ldc.i4.0
L_0133: br Label #0
L_0138: Label #13
L_0138: Label #14
L_0138: ldloc.1
L_0139: ldfld RimWorld.NeedDef nd
L_013e: ldfld System.Boolean neverOnPrisoner
L_0143: brfalse Label #15
L_0148: ldarg.0
L_0149: ldfld Verse.Pawn pawn
L_014e: callvirt Boolean get_IsPrisoner()
L_0153: brfalse Label #16
L_0158: ldc.i4.0
L_0159: br Label #0
L_015e: Label #15
L_015e: Label #16
L_015e: ldloc.1
L_015f: ldfld RimWorld.NeedDef nd
L_0164: ldsfld RimWorld.NeedDef Food
L_0169: bne.un Label #17
L_016e: ldarg.0
L_016f: ldfld Verse.Pawn pawn
L_0174: callvirt Verse.RaceProperties get_RaceProps()
L_0179: callvirt Boolean get_EatsFood()
L_017e: br Label #0
L_0183: Label #17
L_0183: ldloc.1
L_0184: ldfld RimWorld.NeedDef nd
L_0189: ldsfld RimWorld.NeedDef Rest
L_018e: bne.un Label #18
L_0193: ldarg.0
L_0194: ldfld Verse.Pawn pawn
L_0199: callvirt Verse.RaceProperties get_RaceProps()
L_019e: ldfld System.Boolean needsRest
L_01a3: br Label #0
L_01a8: Label #18
L_01a8: ldc.i4.1
L_01a9: br Label #0
L_01ae: Label #0
L_01ae: stloc 2 (System.Boolean)
L_01af: Label #1
L_01af: ldloc 2 (System.Boolean)
L_01b0: ret
DONE

PATCHING RimWorld.Pawn_PlayerSettings Boolean get_RespectsAllowedArea()


L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldarg.0
L_0007: ldfld Verse.Pawn pawn
L_000c: call Verse.AI.Group.Lord GetLord(Verse.Pawn)
L_0011: brfalse Label #2
L_0016: ldc.i4.0
L_0017: br Label #0
L_001c: Label #2
L_001c: ldarg.0
L_001d: ldfld Verse.Pawn pawn
L_0022: callvirt RimWorld.Faction get_Faction()
L_0027: call RimWorld.Faction get_OfPlayer()
L_002c: bne.un Label #3
L_0031: ldarg.0
L_0032: ldfld Verse.Pawn pawn
L_0037: callvirt RimWorld.Faction get_HostFaction()
L_003c: ldnull
L_003d: ceq
L_003f: br Label #4
L_0044: Label #3
L_0044: ldc.i4.0
L_0045: Label #4
L_0045: br Label #0
L_004a: Label #0
L_004a: stloc 0 (System.Boolean)
L_004b: ldarg.0
L_004c: ldloca 0 (System.Boolean)
L_004e: call Void Postfix(RimWorld.Pawn_PlayerSettings, Boolean ByRef)
L_0053: ldloc 0 (System.Boolean)
L_0054: ret
DONE

PATCHING RimWorld.Pawn_RelationsTracker Void Notify_RescuedBy(Verse.Pawn)


L_0000: ldarg.1
L_0001: callvirt Verse.RaceProperties get_RaceProps()
L_0006: callvirt Boolean get_Humanlike()
L_000b: brfalse Label #2
L_0010: ldarg.0
L_0011: ldfld System.Boolean canGetRescuedThought
L_0016: brfalse Label #3
L_001b: ldarg.0
L_001c: ldfld Verse.Pawn pawn
L_0021: ldfld RimWorld.Pawn_NeedsTracker needs
L_0026: ldfld RimWorld.Need_Mood mood
L_002b: ldfld RimWorld.ThoughtHandler thoughts
L_0030: ldfld RimWorld.MemoryThoughtHandler memories
L_0035: ldsfld RimWorld.ThoughtDef RescuedMe
L_003a: ldarg.1
L_003b: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0040: ldarg.0
L_0041: ldc.i4.0
L_0042: stfld System.Boolean canGetRescuedThought
L_0047: Label #2
L_0047: Label #3
L_0047: br Label #0
L_004c: Label #0
L_004c: ldarg.0
L_004d: call Void Postfix(RimWorld.Pawn_RelationsTracker)
L_0052: ret
DONE

PATCHING RimWorld.Pawn_WorkSettings Void ExposeData()


L_0000: ldarg.0
L_0001: ldflda Verse.DefMap`2[Verse.WorkTypeDef,System.Int32] priorities
L_0006: ldstr "priorities"
L_000b: ldc.i4.0
L_000c: newarr System.Object
L_0011: call Void Look[DefMap`2](Verse.DefMap`2[Verse.WorkTypeDef,System.Int32]
ByRef, System.String, System.Object[])
L_0016: br Label #0
L_001b: Label #0
L_001b: ldarg.0
L_001c: call Void Postfix(RimWorld.Pawn_WorkSettings)
L_0021: ret
DONE

PATCHING RimWorld.RestUtility Boolean CanUseBedEver(Verse.Pawn, Verse.ThingDef)


L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldarg.0
L_0007: callvirt Single get_BodySize()
L_000c: ldarg.1
L_000d: ldfld RimWorld.BuildingProperties building
L_0012: ldfld System.Single bed_maxBodySize
L_0017: ble.un Label #2
L_001c: ldc.i4.0
L_001d: br Label #0
L_0022: Label #2
L_0022: ldarg.0
L_0023: callvirt Verse.RaceProperties get_RaceProps()
L_0028: callvirt Boolean get_Humanlike()
L_002d: ldarg.1
L_002e: ldfld RimWorld.BuildingProperties building
L_0033: ldfld System.Boolean bed_humanlike
L_0038: beq Label #3
L_003d: ldc.i4.0
L_003e: br Label #0
L_0043: Label #3
L_0043: ldc.i4.1
L_0044: br Label #0
L_0049: Label #0
L_0049: stloc 0 (System.Boolean)
L_004a: ldloca 0 (System.Boolean)
L_004c: ldarg 0
L_0052: ldarg 1
L_0058: call Void CanUseBedEverPostfix(Boolean ByRef, Verse.Pawn, Verse.ThingDef)
L_005d: ldarg 0
L_0063: ldarg 1
L_0069: ldloca 0 (System.Boolean)
L_006b: call Void Postfix(Verse.Pawn, Verse.ThingDef, Boolean ByRef)
L_0070: ldloc 0 (System.Boolean)
L_0071: ret
DONE

PATCHING RimWorld.SocialCardUtility System.String GetPawnSituationLabel(Verse.Pawn,


Verse.Pawn)
L_0000: Local var #0 RimWorld.Faction
L_0000: Local var #1 System.String
L_0000: ldnull
L_0001: stloc 1 (System.String)
L_0002: ldloca 1 (System.String)
L_0004: ldarg 0
L_000a: ldarg 1
L_0010: call Boolean Replacement(System.String ByRef, Verse.Pawn, Verse.Pawn)
L_0015: brfalse Label #1
L_001a: ldarg.0
L_001b: callvirt Boolean get_Dead()
L_0020: brfalse Label #2
L_0025: ldstr "Dead"
L_002a: call System.String Translate(System.String)
L_002f: br Label #0
L_0034: Label #2
L_0034: ldarg.0
L_0035: callvirt Boolean get_Destroyed()
L_003a: brfalse Label #3
L_003f: ldstr "Missing"
L_0044: call System.String Translate(System.String)
L_0049: br Label #0
L_004e: Label #3
L_004e: ldarg.0
L_004f: call Boolean IsKidnappedPawn(Verse.Pawn)
L_0054: brfalse Label #4
L_0059: ldstr "Kidnapped"
L_005e: call System.String Translate(System.String)
L_0063: br Label #0
L_0068: Label #4
L_0068: ldarg.0
L_0069: ldfld Verse.PawnKindDef kindDef
L_006e: ldsfld Verse.PawnKindDef Slave
L_0073: bne.un Label #5
L_0078: ldstr "Slave"
L_007d: call System.String Translate(System.String)
L_0082: br Label #0
L_0087: Label #5
L_0087: ldarg.0
L_0088: call Boolean IsFactionLeader(Verse.Pawn)
L_008d: brfalse Label #6
L_0092: ldstr "FactionLeader"
L_0097: call System.String Translate(System.String)
L_009c: br Label #0
L_00a1: Label #6
L_00a1: ldarg.0
L_00a2: callvirt RimWorld.Faction get_Faction()
L_00a7: stloc.0
L_00a8: ldloc.0
L_00a9: ldarg.1
L_00aa: callvirt RimWorld.Faction get_Faction()
L_00af: beq Label #7
L_00b4: ldloc.0
L_00b5: brfalse Label #8
L_00ba: ldarg.1
L_00bb: callvirt RimWorld.Faction get_Faction()
L_00c0: brtrue Label #9
L_00c5: Label #8
L_00c5: ldstr "Neutral"
L_00ca: call System.String Translate(System.String)
L_00cf: br Label #0
L_00d4: Label #9
L_00d4: ldloc.0
L_00d5: ldarg.1
L_00d6: callvirt RimWorld.Faction get_Faction()
L_00db: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_00e0: brtrue Label #10
L_00e5: ldstr "Neutral"
L_00ea: call System.String Translate(System.String)
L_00ef: ldstr ", "
L_00f4: ldloc.0
L_00f5: callvirt System.String get_Name()
L_00fa: call System.String Concat(System.String, System.String, System.String)
L_00ff: br Label #0
L_0104: Label #10
L_0104: ldstr "Hostile"
L_0109: call System.String Translate(System.String)
L_010e: ldstr ", "
L_0113: ldloc.0
L_0114: callvirt System.String get_Name()
L_0119: call System.String Concat(System.String, System.String, System.String)
L_011e: br Label #0
L_0123: Label #7
L_0123: ldsfld System.String Empty
L_0128: br Label #0
L_012d: Label #0
L_012d: stloc 1 (System.String)
L_012e: Label #1
L_012e: ldloc 1 (System.String)
L_012f: ret
DONE

PATCHING RimWorld.ThoughtWorker_PrisonBarracksImpressiveness ThoughtState


CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: Local var #1 RimWorld.ThoughtState
L_0000: ldloca 1 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldloca 1 (RimWorld.ThoughtState)
L_000a: ldarg 1
L_0010: call Boolean CurrentStateInternal(ThoughtState ByRef, Verse.Pawn)
L_0015: brfalse Label #1
L_001a: ldarg.0
L_001b: ldarg.1
L_001c: call ThoughtState CurrentStateInternal(Verse.Pawn)
L_0021: stloc.0
L_0022: ldloca.s 0 (RimWorld.ThoughtState)
L_0024: call Boolean get_Active()
L_0029: brfalse Label #2
L_002e: ldarg.1
L_002f: callvirt Boolean get_IsPrisoner()
L_0034: brfalse Label #3
L_0039: ldarg.1
L_003a: ldc.i4.6
L_003b: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_0040: callvirt Verse.RoomRoleDef get_Role()
L_0045: ldsfld Verse.RoomRoleDef PrisonBarracks
L_004a: bne.un Label #4
L_004f: ldloc.0
L_0050: br Label #0
L_0055: Label #2
L_0055: Label #3
L_0055: Label #4
L_0055: call ThoughtState get_Inactive()
L_005a: br Label #0
L_005f: Label #0
L_005f: stloc 1 (RimWorld.ThoughtState)
L_0060: Label #1
L_0060: ldloc 1 (RimWorld.ThoughtState)
L_0061: ret
DONE
PATCHING RimWorld.ThoughtWorker_PrisonCellImpressiveness ThoughtState
CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: Local var #1 RimWorld.ThoughtState
L_0000: ldloca 1 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldloca 1 (RimWorld.ThoughtState)
L_000a: ldarg 1
L_0010: call Boolean CurrentStateInternal(ThoughtState ByRef, Verse.Pawn)
L_0015: brfalse Label #1
L_001a: ldarg.0
L_001b: ldarg.1
L_001c: call ThoughtState CurrentStateInternal(Verse.Pawn)
L_0021: stloc.0
L_0022: ldloca.s 0 (RimWorld.ThoughtState)
L_0024: call Boolean get_Active()
L_0029: brfalse Label #2
L_002e: ldarg.1
L_002f: callvirt Boolean get_IsPrisoner()
L_0034: brfalse Label #3
L_0039: ldarg.1
L_003a: ldc.i4.6
L_003b: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_0040: callvirt Verse.RoomRoleDef get_Role()
L_0045: ldsfld Verse.RoomRoleDef PrisonCell
L_004a: bne.un Label #4
L_004f: ldloc.0
L_0050: br Label #0
L_0055: Label #2
L_0055: Label #3
L_0055: Label #4
L_0055: call ThoughtState get_Inactive()
L_005a: br Label #0
L_005f: Label #0
L_005f: stloc 1 (RimWorld.ThoughtState)
L_0060: Label #1
L_0060: ldloc 1 (RimWorld.ThoughtState)
L_0061: ret
DONE

PATCHING RimWorld.Toils_LayDown Void ApplyBedThoughts(Verse.Pawn)


L_0000: Local var #0 RimWorld.Building_Bed
L_0000: Local var #1 RimWorld.ThoughtDef
L_0000: Local var #2 System.Int32
L_0000: ldarg 0
L_0006: call Boolean Replacement(Verse.Pawn)
L_000b: brfalse Label #1
L_0010: ldarg.0
L_0011: ldfld RimWorld.Pawn_NeedsTracker needs
L_0016: ldfld RimWorld.Need_Mood mood
L_001b: brtrue Label #2
L_0020: br Label #0
L_0025: Label #2
L_0025: ldarg.0
L_0026: call RimWorld.Building_Bed CurrentBed(Verse.Pawn)
L_002b: stloc.0
L_002c: ldarg.0
L_002d: ldfld RimWorld.Pawn_NeedsTracker needs
L_0032: ldfld RimWorld.Need_Mood mood
L_0037: ldfld RimWorld.ThoughtHandler thoughts
L_003c: ldfld RimWorld.MemoryThoughtHandler memories
L_0041: ldsfld RimWorld.ThoughtDef SleptInBedroom
L_0046: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_004b: ldarg.0
L_004c: ldfld RimWorld.Pawn_NeedsTracker needs
L_0051: ldfld RimWorld.Need_Mood mood
L_0056: ldfld RimWorld.ThoughtHandler thoughts
L_005b: ldfld RimWorld.MemoryThoughtHandler memories
L_0060: ldsfld RimWorld.ThoughtDef SleptInBarracks
L_0065: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_006a: ldarg.0
L_006b: ldfld RimWorld.Pawn_NeedsTracker needs
L_0070: ldfld RimWorld.Need_Mood mood
L_0075: ldfld RimWorld.ThoughtHandler thoughts
L_007a: ldfld RimWorld.MemoryThoughtHandler memories
L_007f: ldsfld RimWorld.ThoughtDef SleptOutside
L_0084: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_0089: ldarg.0
L_008a: ldfld RimWorld.Pawn_NeedsTracker needs
L_008f: ldfld RimWorld.Need_Mood mood
L_0094: ldfld RimWorld.ThoughtHandler thoughts
L_0099: ldfld RimWorld.MemoryThoughtHandler memories
L_009e: ldsfld RimWorld.ThoughtDef SleptOnGround
L_00a3: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_00a8: ldarg.0
L_00a9: ldfld RimWorld.Pawn_NeedsTracker needs
L_00ae: ldfld RimWorld.Need_Mood mood
L_00b3: ldfld RimWorld.ThoughtHandler thoughts
L_00b8: ldfld RimWorld.MemoryThoughtHandler memories
L_00bd: ldsfld RimWorld.ThoughtDef SleptInCold
L_00c2: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_00c7: ldarg.0
L_00c8: ldfld RimWorld.Pawn_NeedsTracker needs
L_00cd: ldfld RimWorld.Need_Mood mood
L_00d2: ldfld RimWorld.ThoughtHandler thoughts
L_00d7: ldfld RimWorld.MemoryThoughtHandler memories
L_00dc: ldsfld RimWorld.ThoughtDef SleptInHeat
L_00e1: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_00e6: ldarg.0
L_00e7: ldc.i4.6
L_00e8: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_00ed: callvirt Boolean get_PsychologicallyOutdoors()
L_00f2: brfalse Label #3
L_00f7: ldarg.0
L_00f8: ldfld RimWorld.Pawn_NeedsTracker needs
L_00fd: ldfld RimWorld.Need_Mood mood
L_0102: ldfld RimWorld.ThoughtHandler thoughts
L_0107: ldfld RimWorld.MemoryThoughtHandler memories
L_010c: ldsfld RimWorld.ThoughtDef SleptOutside
L_0111: ldnull
L_0112: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0117: Label #3
L_0117: ldloc.0
L_0118: brfalse Label #4
L_011d: ldloc.0
L_011e: call System.Collections.Generic.List`1[Verse.ThingCountClass]
CostListAdjusted(Verse.Thing)
L_0123: callvirt Int32 get_Count()
L_0128: brtrue Label #5
L_012d: Label #4
L_012d: ldarg.0
L_012e: ldfld RimWorld.Pawn_NeedsTracker needs
L_0133: ldfld RimWorld.Need_Mood mood
L_0138: ldfld RimWorld.ThoughtHandler thoughts
L_013d: ldfld RimWorld.MemoryThoughtHandler memories
L_0142: ldsfld RimWorld.ThoughtDef SleptOnGround
L_0147: ldnull
L_0148: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_014d: Label #5
L_014d: ldarg.0
L_014e: callvirt Single get_AmbientTemperature()
L_0153: ldarg.0
L_0154: ldfld Verse.ThingDef def
L_0159: ldsfld RimWorld.StatDef ComfyTemperatureMin
L_015e: ldnull
L_015f: call Single GetStatValueAbstract(Verse.BuildableDef, RimWorld.StatDef,
Verse.ThingDef)
L_0164: bge.un Label #6
L_0169: ldarg.0
L_016a: ldfld RimWorld.Pawn_NeedsTracker needs
L_016f: ldfld RimWorld.Need_Mood mood
L_0174: ldfld RimWorld.ThoughtHandler thoughts
L_0179: ldfld RimWorld.MemoryThoughtHandler memories
L_017e: ldsfld RimWorld.ThoughtDef SleptInCold
L_0183: ldnull
L_0184: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0189: Label #6
L_0189: ldarg.0
L_018a: callvirt Single get_AmbientTemperature()
L_018f: ldarg.0
L_0190: ldfld Verse.ThingDef def
L_0195: ldsfld RimWorld.StatDef ComfyTemperatureMax
L_019a: ldnull
L_019b: call Single GetStatValueAbstract(Verse.BuildableDef, RimWorld.StatDef,
Verse.ThingDef)
L_01a0: ble.un Label #7
L_01a5: ldarg.0
L_01a6: ldfld RimWorld.Pawn_NeedsTracker needs
L_01ab: ldfld RimWorld.Need_Mood mood
L_01b0: ldfld RimWorld.ThoughtHandler thoughts
L_01b5: ldfld RimWorld.MemoryThoughtHandler memories
L_01ba: ldsfld RimWorld.ThoughtDef SleptInHeat
L_01bf: ldnull
L_01c0: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_01c5: Label #7
L_01c5: ldloc.0
L_01c6: brfalse Label #8
L_01cb: ldloc.0
L_01cc: ldarg.0
L_01cd: ldfld RimWorld.Pawn_Ownership ownership
L_01d2: callvirt RimWorld.Building_Bed get_OwnedBed()
L_01d7: bne.un Label #9
L_01dc: ldloc.0
L_01dd: callvirt Boolean get_ForPrisoners()
L_01e2: brtrue Label #10
L_01e7: ldarg.0
L_01e8: ldfld RimWorld.Pawn_StoryTracker story
L_01ed: ldfld RimWorld.TraitSet traits
L_01f2: ldsfld RimWorld.TraitDef Ascetic
L_01f7: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_01fc: brtrue Label #11
L_0201: ldnull
L_0202: stloc.1
L_0203: ldloc.0
L_0204: ldc.i4.6
L_0205: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_020a: callvirt Verse.RoomRoleDef get_Role()
L_020f: ldsfld Verse.RoomRoleDef Bedroom
L_0214: bne.un Label #12
L_0219: ldsfld RimWorld.ThoughtDef SleptInBedroom
L_021e: stloc.1
L_021f: br Label #13
L_0224: Label #12
L_0224: ldloc.0
L_0225: ldc.i4.6
L_0226: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_022b: callvirt Verse.RoomRoleDef get_Role()
L_0230: ldsfld Verse.RoomRoleDef Barracks
L_0235: bne.un Label #14
L_023a: ldsfld RimWorld.ThoughtDef SleptInBarracks
L_023f: stloc.1
L_0240: Label #13
L_0240: Label #14
L_0240: ldloc.1
L_0241: brfalse Label #15
L_0246: ldsfld Verse.RoomStatDef Impressiveness
L_024b: ldloc.0
L_024c: ldc.i4.6
L_024d: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_0252: ldsfld Verse.RoomStatDef Impressiveness
L_0257: callvirt Single GetStat(Verse.RoomStatDef)
L_025c: callvirt Int32 GetScoreStageIndex(Single)
L_0261: stloc.2
L_0262: ldloc.1
L_0263: ldfld System.Collections.Generic.List`1[RimWorld.ThoughtStage] stages
L_0268: ldloc.2
L_0269: callvirt RimWorld.ThoughtStage get_Item(Int32)
L_026e: brfalse Label #16
L_0273: ldarg.0
L_0274: ldfld RimWorld.Pawn_NeedsTracker needs
L_0279: ldfld RimWorld.Need_Mood mood
L_027e: ldfld RimWorld.ThoughtHandler thoughts
L_0283: ldfld RimWorld.MemoryThoughtHandler memories
L_0288: ldloc.1
L_0289: ldloc.2
L_028a: call RimWorld.Thought_Memory MakeThought(RimWorld.ThoughtDef, Int32)
L_028f: ldnull
L_0290: callvirt Void TryGainMemory(RimWorld.Thought_Memory, Verse.Pawn)
L_0295: Label #8
L_0295: Label #9
L_0295: Label #10
L_0295: Label #11
L_0295: Label #15
L_0295: Label #16
L_0295: br Label #0
L_029a: Label #0
L_029a: Label #1
L_029a: ret
DONE

PATCHING RimWorld.IncidentWorker_RefugeeChased Boolean


TryExecute(RimWorld.IncidentParms)
L_0000: Local var #0 RimWorld.Faction
L_0000: Local var #1 Verse.PawnGenerationRequest
L_0000: Local var #2 System.String
L_0000: Local var #3 Verse.DiaNode
L_0000: Local var #4 Verse.DiaOption
L_0000: Local var #5 System.String
L_0000: Local var #6 Verse.DiaNode
L_0000: Local var #7 Verse.DiaOption
L_0000: Local var #8 Verse.DiaOption
L_0000: Local var #9 System.String
L_0000: Local var #10
RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF
L_0000: Local var #11 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #12 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #13 System.Nullable`1[[Verse.Gender, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #14 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #15 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 15 (System.Boolean)
L_0007: ldarg 1
L_000d: ldloca 15 (System.Boolean)
L_000f: call Boolean Replacement(RimWorld.IncidentParms, Boolean ByRef)
L_0014: brfalse Label #1
L_0019: newobj Void .ctor()
L_001e: stloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0020: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0022: ldarg.1
L_0023: ldfld RimWorld.IIncidentTarget target
L_0028: castclass Verse.Map
L_002d: stfld Verse.Map map
L_0032: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0034: ldftn Boolean <>m__1F2(IntVec3)
L_003a: newobj Void .ctor(Object, IntPtr)
L_003f: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0041: ldfld Verse.Map map
L_0046: ldsfld System.Single EdgeRoadChance_Neutral
L_004b: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_004d: ldflda Verse.IntVec3 spawnSpot
L_0052: call Boolean TryFindRandomEdgeCellWith(System.Predicate`1[Verse.IntVec3],
Verse.Map, Single, IntVec3 ByRef)
L_0057: brtrue Label #2
L_005c: ldc.i4.0
L_005d: br Label #0
L_0062: Label #2
L_0062: call RimWorld.FactionManager get_FactionManager()
L_0067: ldsfld RimWorld.FactionDef Spacer
L_006c: callvirt RimWorld.Faction FirstFactionOfDef(RimWorld.FactionDef)
L_0071: stloc.0
L_0072: ldloca.s 1 (Verse.PawnGenerationRequest)
L_0074: ldsfld Verse.PawnKindDef SpaceRefugee
L_0079: ldloc.0
L_007a: ldc.i4.2
L_007b: ldc.i4.m1
L_007c: ldc.i4.0
L_007d: ldc.i4.0
L_007e: ldc.i4.0
L_007f: ldc.i4.0
L_0080: ldc.i4.1
L_0081: ldc.i4.0
L_0082: ldc.r4 20
L_0087: ldc.i4.0
L_0088: ldc.i4.1
L_0089: ldc.i4.1
L_008a: ldc.i4.0
L_008b: ldc.i4.0
L_008c: ldnull
L_008d: ldloca.s 11 (System.Nullable`1[System.Single])
L_008f: initobj System.Nullable`1[System.Single]
L_0095: ldloc.s 11 (System.Nullable`1[System.Single])
L_0097: ldloca.s 12 (System.Nullable`1[System.Single])
L_0099: initobj System.Nullable`1[System.Single]
L_009f: ldloc.s 12 (System.Nullable`1[System.Single])
L_00a1: ldloca.s 13 (System.Nullable`1[Verse.Gender])
L_00a3: initobj System.Nullable`1[Verse.Gender]
L_00a9: ldloc.s 13 (System.Nullable`1[Verse.Gender])
L_00ab: ldloca.s 14 (System.Nullable`1[System.Single])
L_00ad: initobj System.Nullable`1[System.Single]
L_00b3: ldloc.s 14 (System.Nullable`1[System.Single])
L_00b5: ldnull
L_00b6: call Void .ctor(PawnKindDef, Faction, PawnGenerationContext, Int32,
Boolean, Boolean, Boolean, Boolean, Boolean, Boolean, Single, Boolean, Boolean,
Boolean, Boolean, Boolean, Predicate`1, Nullable`1, Nullable`1, Nullable`1,
Nullable`1, String)
L_00bb: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_00bd: ldloc.1
L_00be: call Verse.Pawn GeneratePawn(PawnGenerationRequest)
L_00c3: stfld Verse.Pawn refugee
L_00c8: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_00ca: ldfld Verse.Pawn refugee
L_00cf: ldfld RimWorld.Pawn_RelationsTracker relations
L_00d4: ldc.i4.1
L_00d5: stfld System.Boolean everSeenByPlayer
L_00da: call RimWorld.FactionManager get_FactionManager()
L_00df: callvirt IEnumerable`1 get_AllFactions()
L_00e4: ldsfld System.Func`2[RimWorld.Faction,System.Boolean] <>f__am$cache1
L_00e9: brtrue Label #3
L_00ee: ldnull
L_00ef: ldftn Boolean <TryExecute>m__1F3(RimWorld.Faction)
L_00f5: newobj Void .ctor(Object, IntPtr)
L_00fa: stsfld System.Func`2[RimWorld.Faction,System.Boolean] <>f__am$cache1
L_00ff: Label #3
L_00ff: ldsfld System.Func`2[RimWorld.Faction,System.Boolean] <>f__am$cache1
L_0104: call IEnumerable`1 Where[Faction](IEnumerable`1,
System.Func`2[RimWorld.Faction,System.Boolean])
L_0109: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_010b: ldflda RimWorld.Faction enemyFac
L_0110: call Boolean TryRandomElement[Faction](IEnumerable`1, RimWorld.Faction
ByRef)
L_0115: brtrue Label #4
L_011a: ldc.i4.0
L_011b: br Label #0
L_0120: Label #4
L_0120: ldstr "RefugeeChasedInitial"
L_0125: ldc.i4.5
L_0126: newarr System.Object
L_012b: dup
L_012c: ldc.i4.0
L_012d: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_012f: ldfld Verse.Pawn refugee
L_0134: callvirt Verse.Name get_Name()
L_0139: callvirt System.String get_ToStringFull()
L_013e: stelem.ref
L_013f: dup
L_0140: ldc.i4.1
L_0141: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0143: ldfld Verse.Pawn refugee
L_0148: ldfld RimWorld.Pawn_StoryTracker story
L_014d: callvirt System.String get_Title()
L_0152: callvirt System.String ToLower()
L_0157: stelem.ref
L_0158: dup
L_0159: ldc.i4.2
L_015a: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_015c: ldfld RimWorld.Faction enemyFac
L_0161: ldfld RimWorld.FactionDef def
L_0166: ldfld System.String pawnsPlural
L_016b: stelem.ref
L_016c: dup
L_016d: ldc.i4.3
L_016e: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0170: ldfld RimWorld.Faction enemyFac
L_0175: callvirt System.String get_Name()
L_017a: stelem.ref
L_017b: dup
L_017c: ldc.i4.4
L_017d: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_017f: ldfld Verse.Pawn refugee
L_0184: ldfld Verse.Pawn_AgeTracker ageTracker
L_0189: callvirt Int32 get_AgeBiologicalYears()
L_018e: box System.Int32
L_0193: stelem.ref
L_0194: call System.String Translate(System.String, System.Object[])
L_0199: stloc.2
L_019a: ldloc.2
L_019b: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_019d: ldfld Verse.Pawn refugee
L_01a2: call System.String AdjustedFor(System.String, Verse.Pawn)
L_01a7: stloc.2
L_01a8: ldloca.s 2 (System.String)
L_01aa: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_01ac: ldfld Verse.Pawn refugee
L_01b1: call Boolean TryAppendRelationsWithColonistsInfo(System.String ByRef,
Verse.Pawn)
L_01b6: pop
L_01b7: ldloc.2
L_01b8: newobj Void .ctor(String)
L_01bd: stloc.3
L_01be: ldstr "RefugeeChasedInitial_Accept"
L_01c3: call System.String Translate(System.String)
L_01c8: newobj Void .ctor(String)
L_01cd: stloc.s 4 (Verse.DiaOption)
L_01cf: ldloc.s 4 (Verse.DiaOption)
L_01d1: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_01d3: ldftn Void <>m__1F4()
L_01d9: newobj Void .ctor(Object, IntPtr)
L_01de: stfld System.Action action
L_01e3: ldloc.s 4 (Verse.DiaOption)
L_01e5: ldc.i4.1
L_01e6: stfld System.Boolean resolveTree
L_01eb: ldloc.3
L_01ec: ldfld System.Collections.Generic.List`1[Verse.DiaOption] options
L_01f1: ldloc.s 4 (Verse.DiaOption)
L_01f3: callvirt Void Add(Verse.DiaOption)
L_01f8: ldstr "RefugeeChasedRejected"
L_01fd: ldc.i4.1
L_01fe: newarr System.Object
L_0203: dup
L_0204: ldc.i4.0
L_0205: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0207: ldfld Verse.Pawn refugee
L_020c: callvirt System.String get_NameStringShort()
L_0211: stelem.ref
L_0212: call System.String Translate(System.String, System.Object[])
L_0217: stloc.s 5 (System.String)
L_0219: ldloc.s 5 (System.String)
L_021b: newobj Void .ctor(String)
L_0220: stloc.s 6 (Verse.DiaNode)
L_0222: ldstr "OK"
L_0227: call System.String Translate(System.String)
L_022c: newobj Void .ctor(String)
L_0231: stloc.s 7 (Verse.DiaOption)
L_0233: ldloc.s 7 (Verse.DiaOption)
L_0235: ldc.i4.1
L_0236: stfld System.Boolean resolveTree
L_023b: ldloc.s 6 (Verse.DiaNode)
L_023d: ldfld System.Collections.Generic.List`1[Verse.DiaOption] options
L_0242: ldloc.s 7 (Verse.DiaOption)
L_0244: callvirt Void Add(Verse.DiaOption)
L_0249: ldstr "RefugeeChasedInitial_Reject"
L_024e: call System.String Translate(System.String)
L_0253: newobj Void .ctor(String)
L_0258: stloc.s 8 (Verse.DiaOption)
L_025a: ldloc.s 8 (Verse.DiaOption)
L_025c: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_025e: ldftn Void <>m__1F5()
L_0264: newobj Void .ctor(Object, IntPtr)
L_0269: stfld System.Action action
L_026e: ldloc.s 8 (Verse.DiaOption)
L_0270: ldloc.s 6 (Verse.DiaNode)
L_0272: stfld Verse.DiaNode link
L_0277: ldloc.3
L_0278: ldfld System.Collections.Generic.List`1[Verse.DiaOption] options
L_027d: ldloc.s 8 (Verse.DiaOption)
L_027f: callvirt Void Add(Verse.DiaOption)
L_0284: ldstr "RefugeeChasedTitle"
L_0289: ldc.i4.1
L_028a: newarr System.Object
L_028f: dup
L_0290: ldc.i4.0
L_0291: ldloc.s 10
(RimWorld.IncidentWorker_RefugeeChased+<TryExecute>c__AnonStorey2DF)
L_0293: ldfld Verse.Map map
L_0298: ldfld Verse.MapInfo info
L_029d: ldfld RimWorld.Planet.MapParent parent
L_02a2: callvirt System.String get_Label()
L_02a7: stelem.ref
L_02a8: call System.String Translate(System.String, System.Object[])
L_02ad: stloc.s 9 (System.String)
L_02af: call Verse.WindowStack get_WindowStack()
L_02b4: ldloc.3
L_02b5: ldc.i4.1
L_02b6: ldc.i4.1
L_02b7: ldloc.s 9 (System.String)
L_02b9: newobj Void .ctor(DiaNode, Boolean, Boolean, String)
L_02be: callvirt Void Add(Verse.Window)
L_02c3: ldc.i4.1
L_02c4: br Label #0
L_02c9: Label #0
L_02c9: stloc 15 (System.Boolean)
L_02cb: Label #1
L_02cb: ldloc 15 (System.Boolean)
L_02cd: ret
DONE

PATCHING RimWorld.IncidentWorker_WandererJoin Boolean


TryExecute(RimWorld.IncidentParms)
L_0000: Local var #0 Verse.IntVec3
L_0000: Local var #1 System.Collections.Generic.List`1[[Verse.PawnKindDef,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #2 Verse.PawnKindDef
L_0000: Local var #3 Verse.PawnGenerationRequest
L_0000: Local var #4 Verse.Pawn
L_0000: Local var #5 System.String
L_0000: Local var #6 System.String
L_0000: Local var #7
RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3
L_0000: Local var #8 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #9 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #10 System.Nullable`1[[Verse.Gender, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #11 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #12 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 12 (System.Boolean)
L_0007: ldarg 1
L_000d: ldloca 12 (System.Boolean)
L_000f: call Boolean Replacement(RimWorld.IncidentParms, Boolean ByRef)
L_0014: brfalse Label #1
L_0019: newobj Void .ctor()
L_001e: stloc.s 7
(RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3)
L_0020: ldloc.s 7
(RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3)
L_0022: ldarg.1
L_0023: ldfld RimWorld.IIncidentTarget target
L_0028: castclass Verse.Map
L_002d: stfld Verse.Map map
L_0032: ldloc.s 7
(RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3)
L_0034: ldftn Boolean <>m__1FE(IntVec3)
L_003a: newobj Void .ctor(Object, IntPtr)
L_003f: ldloc.s 7
(RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3)
L_0041: ldfld Verse.Map map
L_0046: ldsfld System.Single EdgeRoadChance_Neutral
L_004b: ldloca.s 0 (Verse.IntVec3)
L_004d: call Boolean TryFindRandomEdgeCellWith(System.Predicate`1[Verse.IntVec3],
Verse.Map, Single, IntVec3 ByRef)
L_0052: brtrue Label #2
L_0057: ldc.i4.0
L_0058: br Label #0
L_005d: Label #2
L_005d: newobj Void .ctor()
L_0062: stloc.1
L_0063: ldloc.1
L_0064: ldsfld Verse.PawnKindDef Villager
L_0069: callvirt Void Add(Verse.PawnKindDef)
L_006e: ldloc.1
L_006f: call Verse.PawnKindDef RandomElement[PawnKindDef](IEnumerable`1)
L_0074: stloc.2
L_0075: ldloca.s 3 (Verse.PawnGenerationRequest)
L_0077: ldloc.2
L_0078: call RimWorld.Faction get_OfPlayer()
L_007d: ldc.i4.2
L_007e: ldc.i4.m1
L_007f: ldc.i4.0
L_0080: ldc.i4.0
L_0081: ldc.i4.0
L_0082: ldc.i4.0
L_0083: ldc.i4.1
L_0084: ldc.i4.0
L_0085: ldc.r4 20
L_008a: ldc.i4.0
L_008b: ldc.i4.1
L_008c: ldc.i4.1
L_008d: ldc.i4.0
L_008e: ldc.i4.0
L_008f: ldnull
L_0090: ldloca.s 8 (System.Nullable`1[System.Single])
L_0092: initobj System.Nullable`1[System.Single]
L_0098: ldloc.s 8 (System.Nullable`1[System.Single])
L_009a: ldloca.s 9 (System.Nullable`1[System.Single])
L_009c: initobj System.Nullable`1[System.Single]
L_00a2: ldloc.s 9 (System.Nullable`1[System.Single])
L_00a4: ldloca.s 10 (System.Nullable`1[Verse.Gender])
L_00a6: initobj System.Nullable`1[Verse.Gender]
L_00ac: ldloc.s 10 (System.Nullable`1[Verse.Gender])
L_00ae: ldloca.s 11 (System.Nullable`1[System.Single])
L_00b0: initobj System.Nullable`1[System.Single]
L_00b6: ldloc.s 11 (System.Nullable`1[System.Single])
L_00b8: ldnull
L_00b9: call Void .ctor(PawnKindDef, Faction, PawnGenerationContext, Int32,
Boolean, Boolean, Boolean, Boolean, Boolean, Boolean, Single, Boolean, Boolean,
Boolean, Boolean, Boolean, Predicate`1, Nullable`1, Nullable`1, Nullable`1,
Nullable`1, String)
L_00be: ldloc.3
L_00bf: call Verse.Pawn GeneratePawn(PawnGenerationRequest)
L_00c4: stloc.s 4 (Verse.Pawn)
L_00c6: ldloc.s 4 (Verse.Pawn)
L_00c8: ldloc.0
L_00c9: ldloc.s 7
(RimWorld.IncidentWorker_WandererJoin+<TryExecute>c__AnonStorey2E3)
L_00cb: ldfld Verse.Map map
L_00d0: call Verse.Thing Spawn(Verse.Thing, IntVec3, Verse.Map)
L_00d5: pop
L_00d6: ldstr "WandererJoin"
L_00db: ldc.i4.2
L_00dc: newarr System.Object
L_00e1: dup
L_00e2: ldc.i4.0
L_00e3: ldloc.2
L_00e4: ldfld System.String label
L_00e9: stelem.ref
L_00ea: dup
L_00eb: ldc.i4.1
L_00ec: ldloc.s 4 (Verse.Pawn)
L_00ee: ldfld RimWorld.Pawn_StoryTracker story
L_00f3: callvirt System.String get_Title()
L_00f8: callvirt System.String ToLower()
L_00fd: stelem.ref
L_00fe: call System.String Translate(System.String, System.Object[])
L_0103: stloc.s 5 (System.String)
L_0105: ldloc.s 5 (System.String)
L_0107: ldloc.s 4 (Verse.Pawn)
L_0109: call System.String AdjustedFor(System.String, Verse.Pawn)
L_010e: stloc.s 5 (System.String)
L_0110: ldstr "LetterLabelWandererJoin"
L_0115: call System.String Translate(System.String)
L_011a: stloc.s 6 (System.String)
L_011c: ldloca.s 5 (System.String)
L_011e: ldloca.s 6 (System.String)
L_0120: ldloc.s 4 (Verse.Pawn)
L_0122: call Boolean TryAppendRelationsWithColonistsInfo(System.String ByRef,
System.String ByRef, Verse.Pawn)
L_0127: pop
L_0128: call Verse.LetterStack get_LetterStack()
L_012d: ldloc.s 6 (System.String)
L_012f: ldloc.s 5 (System.String)
L_0131: ldsfld Verse.LetterDef Good
L_0136: ldloc.s 4 (Verse.Pawn)
L_0138: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_013d: ldnull
L_013e: callvirt Void ReceiveLetter(System.String, System.String, Verse.LetterDef,
GlobalTargetInfo, System.String)
L_0143: ldc.i4.1
L_0144: br Label #0
L_0149: Label #0
L_0149: stloc 12 (System.Boolean)
L_014b: Label #1
L_014b: ldloc 12 (System.Boolean)
L_014d: ret
DONE

PATCHING Verse.PawnGenerator Void GenerateGearFor(Verse.Pawn,


PawnGenerationRequest)
L_0000: ldstr "GenerateGearFor"
L_0005: call Void BeginSample(System.String)
L_000a: ldstr "GenerateStartingApparelFor"
L_000f: call Void BeginSample(System.String)
L_0014: ldarg.0
L_0015: ldarg.1
L_0016: call Void GenerateStartingApparelFor(Verse.Pawn, PawnGenerationRequest)
L_001b: call Void EndSample()
L_0020: ldstr "TryGenerateWeaponFor"
L_0025: call Void BeginSample(System.String)
L_002a: ldarg.0
L_002b: call Void TryGenerateWeaponFor(Verse.Pawn)
L_0030: call Void EndSample()
L_0035: ldstr "GenerateInventoryFor"
L_003a: call Void BeginSample(System.String)
L_003f: ldarg.0
L_0040: ldarg.1
L_0041: call Void GenerateInventoryFor(Verse.Pawn, PawnGenerationRequest)
L_0046: call Void EndSample()
L_004b: call Void EndSample()
L_0050: br Label #0
L_0055: Label #0
L_0055: ldarg 0
L_005b: ldarg 1
L_0061: call Void GenerateGearFor(Verse.Pawn, PawnGenerationRequest)
L_0066: ret
DONE

PATCHING RimWorld.PawnWeaponGenerator Void Reset()


L_0000: Local var #0 System.Collections.Generic.IEnumerator`1[[Verse.ThingDef,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: Local var #3 System.Int32
L_0000: Local var #4 RimWorld.ThingStuffPair
L_0000: Local var #5 RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey339
L_0000: Local var #6 RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A
L_0000: newobj Void .ctor()
L_0005: stloc.s 5 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey339)
L_0007: ldloc.s 5 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey339)
L_0009: ldsfld System.Predicate`1[Verse.ThingDef] <>f__am$cache2
L_000e: brtrue Label #2
L_0013: ldnull
L_0014: ldftn Boolean <Reset>m__301(Verse.ThingDef)
L_001a: newobj Void .ctor(Object, IntPtr)
L_001f: stsfld System.Predicate`1[Verse.ThingDef] <>f__am$cache2
L_0024: Label #2
L_0024: ldsfld System.Predicate`1[Verse.ThingDef] <>f__am$cache2
L_0029: stfld System.Predicate`1[Verse.ThingDef] isWeapon
L_002e: ldloc.s 5 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey339)
L_0030: ldfld System.Predicate`1[Verse.ThingDef] isWeapon
L_0035: call System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
AllWith(System.Predicate`1[Verse.ThingDef])
L_003a: stsfld System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
allWeaponPairs
L_003f: newobj Void .ctor()
L_0044: stloc.s 6 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A)
L_0046: call IEnumerable`1 get_AllDefs()
L_004b: ldloc.s 5 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey339)
L_004d: ldftn Boolean <>m__302(Verse.ThingDef)
L_0053: newobj Void .ctor(Object, IntPtr)
L_0058: call IEnumerable`1 Where[ThingDef](IEnumerable`1,
System.Func`2[Verse.ThingDef,System.Boolean])
L_005d: callvirt IEnumerator`1 GetEnumerator()
L_0062: stloc.0
L_0063: br Label #3
L_0068: Label #10
L_0068: ldloc.s 6 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A)
L_006a: ldloc.0
L_006b: callvirt Verse.ThingDef get_Current()
L_0070: stfld Verse.ThingDef thingDef
L_0075: ldsfld System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
allWeaponPairs
L_007a: ldloc.s 6 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A)
L_007c: ldftn Boolean <>m__303(ThingStuffPair)
L_0082: newobj Void .ctor(Object, IntPtr)
L_0087: call IEnumerable`1 Where[ThingStuffPair](IEnumerable`1,
System.Func`2[RimWorld.ThingStuffPair,System.Boolean])
L_008c: ldsfld System.Func`2[RimWorld.ThingStuffPair,System.Single] <>f__am$cache3
L_0091: brtrue Label #4
L_0096: ldnull
L_0097: ldftn Single <Reset>m__304(ThingStuffPair)
L_009d: newobj Void .ctor(Object, IntPtr)
L_00a2: stsfld System.Func`2[RimWorld.ThingStuffPair,System.Single] <>f__am$cache3
L_00a7: Label #4
L_00a7: ldsfld System.Func`2[RimWorld.ThingStuffPair,System.Single] <>f__am$cache3
L_00ac: call Single Sum[ThingStuffPair](IEnumerable`1,
System.Func`2[RimWorld.ThingStuffPair,System.Single])
L_00b1: stloc.1
L_00b2: ldloc.s 6 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A)
L_00b4: ldfld Verse.ThingDef thingDef
L_00b9: ldfld System.Single generateCommonality
L_00be: ldloc.1
L_00bf: div
L_00c0: stloc.2
L_00c1: ldloc.2
L_00c2: ldc.r4 1
L_00c7: bne.un Label #5
L_00cc: br Label #6
L_00d1: Label #5
L_00d1: ldc.i4.0
L_00d2: stloc.3
L_00d3: br Label #7
L_00d8: Label #9
L_00d8: ldsfld System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
allWeaponPairs
L_00dd: ldloc.3
L_00de: callvirt ThingStuffPair get_Item(Int32)
L_00e3: stloc.s 4 (RimWorld.ThingStuffPair)
L_00e5: ldloca.s 4 (RimWorld.ThingStuffPair)
L_00e7: ldfld Verse.ThingDef thing
L_00ec: ldloc.s 6 (RimWorld.PawnWeaponGenerator+<Reset>c__AnonStorey33A)
L_00ee: ldfld Verse.ThingDef thingDef
L_00f3: bne.un Label #8
L_00f8: ldsfld System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
allWeaponPairs
L_00fd: ldloc.3
L_00fe: ldloca.s 4 (RimWorld.ThingStuffPair)
L_0100: ldfld Verse.ThingDef thing
L_0105: ldloca.s 4 (RimWorld.ThingStuffPair)
L_0107: ldfld Verse.ThingDef stuff
L_010c: ldloca.s 4 (RimWorld.ThingStuffPair)
L_010e: ldfld System.Single commonalityMultiplier
L_0113: ldloc.2
L_0114: mul
L_0115: newobj Void .ctor(ThingDef, ThingDef, Single)
L_011a: callvirt Void set_Item(Int32, ThingStuffPair)
L_011f: Label #8
L_011f: ldloc.3
L_0120: ldc.i4.1
L_0121: add
L_0122: stloc.3
L_0123: Label #7
L_0123: ldloc.3
L_0124: ldsfld System.Collections.Generic.List`1[RimWorld.ThingStuffPair]
allWeaponPairs
L_0129: callvirt Int32 get_Count()
L_012e: blt Label #9
L_0133: Label #3
L_0133: Label #6
L_0133: ldloc.0
L_0134: callvirt Boolean MoveNext()
L_0139: brtrue Label #10
L_013e: leave Label #11
L_0143: ldloc.0
L_0144: brtrue Label #12
L_0149: endfinally
L_014a: Label #12
L_014a: ldloc.0
L_014b: callvirt Void Dispose()
L_0150: endfinally
L_0151: Label #11
L_0151: br Label #0
L_0156: Label #0
L_0156: call Void Reset()
L_015b: ret
DONE

PATCHING RimWorld.AutoUndrafter Void AutoUndraftTick()


L_0000: call Verse.TickManager get_TickManager()
L_0005: callvirt Int32 get_TicksGame()
L_000a: ldc.i4.s 100
L_000c: rem
L_000d: brtrue Label #2
L_0012: ldarg.0
L_0013: ldfld Verse.Pawn pawn
L_0018: ldfld RimWorld.Pawn_DraftController drafter
L_001d: callvirt Boolean get_Drafted()
L_0022: brtrue Label #3
L_0027: ldarg.0
L_0028: call Verse.TickManager get_TickManager()
L_002d: callvirt Int32 get_TicksGame()
L_0032: stfld System.Int32 lastNonWaitingTick
L_0037: br Label #4
L_003c: Label #3
L_003c: ldarg.0
L_003d: ldfld Verse.Pawn pawn
L_0042: ldfld Verse.AI.Pawn_JobTracker jobs
L_0047: ldfld Verse.AI.Job curJob
L_004c: brfalse Label #5
L_0051: ldarg.0
L_0052: ldfld Verse.Pawn pawn
L_0057: ldfld Verse.AI.Pawn_JobTracker jobs
L_005c: ldfld Verse.AI.Job curJob
L_0061: ldfld Verse.JobDef def
L_0066: ldsfld Verse.JobDef WaitCombat
L_006b: beq Label #6
L_0070: ldarg.0
L_0071: call Verse.TickManager get_TickManager()
L_0076: callvirt Int32 get_TicksGame()
L_007b: stfld System.Int32 lastNonWaitingTick
L_0080: Label #5
L_0080: Label #6
L_0080: ldarg.0
L_0081: call Boolean ShouldAutoUndraft()
L_0086: brfalse Label #7
L_008b: ldarg.0
L_008c: ldfld Verse.Pawn pawn
L_0091: ldfld RimWorld.Pawn_DraftController drafter
L_0096: ldc.i4.0
L_0097: callvirt Void set_Drafted(Boolean)
L_009c: ldarg.0
L_009d: call Verse.TickManager get_TickManager()
L_00a2: callvirt Int32 get_TicksGame()
L_00a7: stfld System.Int32 lastNonWaitingTick
L_00ac: Label #2
L_00ac: Label #4
L_00ac: Label #7
L_00ac: br Label #0
L_00b1: Label #0
L_00b1: ldarg.0
L_00b2: call Void AutoUndraftTick(RimWorld.AutoUndrafter)
L_00b7: ret
DONE

PATCHING Verse.Stance_Warmup Void StanceTick()


L_0000: ldarg.0
L_0001: ldfld System.Boolean targetStartedDowned
L_0006: brtrue Label #2
L_000b: ldarg.0
L_000c: ldflda Verse.LocalTargetInfo focusTarg
L_0011: call Boolean get_HasThing()
L_0016: brfalse Label #3
L_001b: ldarg.0
L_001c: ldflda Verse.LocalTargetInfo focusTarg
L_0021: call Verse.Thing get_Thing()
L_0026: isinst Verse.Pawn
L_002b: brfalse Label #4
L_0030: ldarg.0
L_0031: ldflda Verse.LocalTargetInfo focusTarg
L_0036: call Verse.Thing get_Thing()
L_003b: castclass Verse.Pawn
L_0040: callvirt Boolean get_Downed()
L_0045: brfalse Label #5
L_004a: ldarg.0
L_004b: ldfld Verse.Pawn_StanceTracker stanceTracker
L_0050: newobj Void .ctor()
L_0055: callvirt Void SetStance(Verse.Stance)
L_005a: br Label #0
L_005f: Label #2
L_005f: Label #3
L_005f: Label #4
L_005f: Label #5
L_005f: ldarg.0
L_0060: ldflda Verse.LocalTargetInfo focusTarg
L_0065: call Boolean get_HasThing()
L_006a: brfalse Label #6
L_006f: ldarg.0
L_0070: ldflda Verse.LocalTargetInfo focusTarg
L_0075: call Verse.Thing get_Thing()
L_007a: callvirt Boolean get_Spawned()
L_007f: brfalse Label #7
L_0084: ldarg.0
L_0085: ldfld Verse.Verb verb
L_008a: ldarg.0
L_008b: call Verse.Pawn get_Pawn()
L_0090: callvirt IntVec3 get_Position()
L_0095: ldarg.0
L_0096: ldfld Verse.LocalTargetInfo focusTarg
L_009b: callvirt Boolean CanHitTargetFrom(IntVec3, LocalTargetInfo)
L_00a0: brtrue Label #8
L_00a5: Label #7
L_00a5: ldarg.0
L_00a6: ldfld Verse.Pawn_StanceTracker stanceTracker
L_00ab: newobj Void .ctor()
L_00b0: callvirt Void SetStance(Verse.Stance)
L_00b5: br Label #0
L_00ba: Label #6
L_00ba: Label #8
L_00ba: ldarg.0
L_00bb: ldfld Verse.LocalTargetInfo focusTarg
L_00c0: ldarg.0
L_00c1: call Verse.Pawn get_Pawn()
L_00c6: ldfld Verse.AI.Pawn_MindState mindState
L_00cb: ldfld Verse.Thing enemyTarget
L_00d0: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00d5: call Boolean op_Equality(LocalTargetInfo, LocalTargetInfo)
L_00da: brfalse Label #9
L_00df: ldarg.0
L_00e0: call Verse.Pawn get_Pawn()
L_00e5: ldfld Verse.AI.Pawn_MindState mindState
L_00ea: callvirt Void Notify_EngagedTarget()
L_00ef: Label #9
L_00ef: ldarg.0
L_00f0: call Void StanceTick()
L_00f5: br Label #0
L_00fa: Label #0
L_00fa: ldarg.0
L_00fb: call Void StanceTick(Verse.Stance_Warmup)
L_0100: ret
DONE

PATCHING Verse.Pawn_EquipmentTracker Void AddEquipment(Verse.ThingWithComps)


L_0000: ldarg.1
L_0001: ldfld Verse.ThingDef def
L_0006: ldfld Verse.EquipmentType equipmentType
L_000b: ldc.i4.1
L_000c: bne.un Label #2
L_0011: ldarg.0
L_0012: call Verse.ThingWithComps get_Primary()
L_0017: brfalse Label #3
L_001c: ldc.i4.6
L_001d: newarr System.Object
L_0022: dup
L_0023: ldc.i4.0
L_0024: ldstr "Pawn "
L_0029: stelem.ref
L_002a: dup
L_002b: ldc.i4.1
L_002c: ldarg.0
L_002d: ldfld Verse.Pawn pawn
L_0032: callvirt System.String get_LabelCap()
L_0037: stelem.ref
L_0038: dup
L_0039: ldc.i4.2
L_003a: ldstr " got primaryInt equipment "
L_003f: stelem.ref
L_0040: dup
L_0041: ldc.i4.3
L_0042: ldarg.1
L_0043: stelem.ref
L_0044: dup
L_0045: ldc.i4.4
L_0046: ldstr " while already having primaryInt equipment "
L_004b: stelem.ref
L_004c: dup
L_004d: ldc.i4.5
L_004e: ldarg.0
L_004f: call Verse.ThingWithComps get_Primary()
L_0054: stelem.ref
L_0055: call System.String Concat(System.Object[])
L_005a: call Void Error(System.String)
L_005f: br Label #0
L_0064: Label #2
L_0064: Label #3
L_0064: ldarg.0
L_0065: ldfld Verse.ThingOwner`1[Verse.ThingWithComps] equipment
L_006a: ldarg.1
L_006b: ldc.i4.1
L_006c: callvirt Boolean TryAdd(Verse.Thing, Boolean)
L_0071: pop
L_0072: br Label #0
L_0077: Label #0
L_0077: ldarg.0
L_0078: ldarg 1
L_007e: call Void AddEquipment(Verse.Pawn_EquipmentTracker, Verse.ThingWithComps)
L_0083: ret
DONE

PATCHING RimWorld.ITab_Pawn_Gear Void InterfaceDrop(Verse.Thing)


L_0000: Local var #0 Verse.ThingWithComps
L_0000: Local var #1 RimWorld.Apparel
L_0000: Local var #2 Verse.Thing
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: call Boolean InterfaceDropPreFix(RimWorld.ITab_Pawn_Gear, Verse.Thing)
L_000c: brfalse Label #1
L_0011: ldarg.0
L_0012: ldarg 1
L_0018: call Boolean Prefix(RimWorld.ITab_Pawn_Gear, Verse.Thing)
L_001d: brfalse Label #1
L_0022: ldarg.0
L_0023: ldarg 1
L_0029: call Void InterfaceDrop(RimWorld.ITab_Pawn_Gear, Verse.Thing)
L_002e: ldarg.1
L_002f: isinst Verse.ThingWithComps
L_0034: stloc.0
L_0035: ldarg.1
L_0036: isinst RimWorld.Apparel
L_003b: stloc.1
L_003c: ldloc.1
L_003d: brfalse Label #2
L_0042: ldarg.0
L_0043: call Verse.Pawn get_SelPawnForGear()
L_0048: ldfld RimWorld.Pawn_ApparelTracker apparel
L_004d: brfalse Label #3
L_0052: ldarg.0
L_0053: call Verse.Pawn get_SelPawnForGear()
L_0058: ldfld RimWorld.Pawn_ApparelTracker apparel
L_005d: callvirt System.Collections.Generic.List`1[RimWorld.Apparel]
get_WornApparel()
L_0062: ldloc.1
L_0063: callvirt Boolean Contains(RimWorld.Apparel)
L_0068: brfalse Label #4
L_006d: ldarg.0
L_006e: call Verse.Pawn get_SelPawnForGear()
L_0073: ldfld Verse.AI.Pawn_JobTracker jobs
L_0078: ldsfld Verse.JobDef RemoveApparel
L_007d: ldloc.1
L_007e: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0083: newobj Void .ctor(JobDef, LocalTargetInfo)
L_0088: ldc.i4.0
L_0089: callvirt Boolean TryTakeOrderedJob(Verse.AI.Job, JobTag)
L_008e: pop
L_008f: br Label #5
L_0094: Label #2
L_0094: Label #3
L_0094: Label #4
L_0094: ldloc.0
L_0095: brfalse Label #6
L_009a: ldarg.0
L_009b: call Verse.Pawn get_SelPawnForGear()
L_00a0: ldfld Verse.Pawn_EquipmentTracker equipment
L_00a5: brfalse Label #7
L_00aa: ldarg.0
L_00ab: call Verse.Pawn get_SelPawnForGear()
L_00b0: ldfld Verse.Pawn_EquipmentTracker equipment
L_00b5: callvirt System.Collections.Generic.List`1[Verse.ThingWithComps]
get_AllEquipmentListForReading()
L_00ba: ldloc.0
L_00bb: callvirt Boolean Contains(Verse.ThingWithComps)
L_00c0: brfalse Label #8
L_00c5: ldarg.0
L_00c6: call Verse.Pawn get_SelPawnForGear()
L_00cb: ldfld Verse.AI.Pawn_JobTracker jobs
L_00d0: ldsfld Verse.JobDef DropEquipment
L_00d5: ldloc.0
L_00d6: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00db: newobj Void .ctor(JobDef, LocalTargetInfo)
L_00e0: ldc.i4.0
L_00e1: callvirt Boolean TryTakeOrderedJob(Verse.AI.Job, JobTag)
L_00e6: pop
L_00e7: br Label #9
L_00ec: Label #6
L_00ec: Label #7
L_00ec: Label #8
L_00ec: ldarg.1
L_00ed: ldfld Verse.ThingDef def
L_00f2: ldfld System.Boolean destroyOnDrop
L_00f7: brtrue Label #10
L_00fc: ldarg.0
L_00fd: call Verse.Pawn get_SelPawnForGear()
L_0102: ldfld Verse.Pawn_InventoryTracker inventory
L_0107: ldfld Verse.ThingOwner`1[Verse.Thing] innerContainer
L_010c: ldarg.1
L_010d: ldarg.0
L_010e: call Verse.Pawn get_SelPawnForGear()
L_0113: callvirt IntVec3 get_Position()
L_0118: ldarg.0
L_0119: call Verse.Pawn get_SelPawnForGear()
L_011e: callvirt Verse.Map get_Map()
L_0123: ldc.i4.1
L_0124: ldloca.s 2 (Verse.Thing)
L_0126: ldnull
L_0127: callvirt Boolean TryDrop(Verse.Thing, IntVec3, Verse.Map, ThingPlaceMode,
Verse.Thing ByRef, System.Action`2[Verse.Thing,System.Int32])
L_012c: pop
L_012d: Label #5
L_012d: Label #9
L_012d: Label #10
L_012d: br Label #0
L_0132: Label #0
L_0132: Label #1
L_0132: ret
DONE

PATCHING Verse.Pawn IEnumerable`1 GetGizmos()


L_0000: Local var #0 Verse.Pawn+<GetGizmos>c__Iterator21B
L_0000: Local var #1 System.Collections.Generic.IEnumerable`1[[Verse.Gizmo,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldnull
L_0001: stloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0002: newobj Void .ctor()
L_0007: stloc.0
L_0008: ldloc.0
L_0009: ldarg.0
L_000a: stfld Verse.Pawn <>f__this
L_000f: ldloc.0
L_0010: dup
L_0011: ldc.i4.s -2
L_0013: stfld System.Int32 $PC
L_0018: br Label #0
L_001d: Label #0
L_001d: stloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_001e: ldarg.0
L_001f: ldloca 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0021: call Void GetGizmos(Verse.Pawn, IEnumerable`1 ByRef)
L_0026: ldloc 1 (System.Collections.Generic.IEnumerable`1[Verse.Gizmo])
L_0027: ret
DONE

PATCHING RimWorld.FloatMenuMakerMap Void AddHumanlikeOrders(Vector3, Verse.Pawn,


System.Collections.Generic.List`1[Verse.FloatMenuOption])
L_0000: Local var #0 Verse.IntVec3
L_0000: Local var #1 Verse.Thing
L_0000: Local var #2 System.Collections.Generic.List`1+Enumerator[[Verse.Thing,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #3 Verse.FloatMenuOption
L_0000: Local var #4 System.String
L_0000: Local var #5 Verse.MenuOptionPriority
L_0000: Local var #6 Verse.LocalTargetInfo
L_0000: Local var #7
System.Collections.Generic.IEnumerator`1[[Verse.LocalTargetInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #8 Verse.LocalTargetInfo
L_0000: Local var #9
System.Collections.Generic.IEnumerator`1[[Verse.LocalTargetInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #10 Verse.LocalTargetInfo
L_0000: Local var #11 System.String
L_0000: Local var #12 System.Action
L_0000: Local var #13 Verse.LocalTargetInfo
L_0000: Local var #14
System.Collections.Generic.IEnumerator`1[[Verse.LocalTargetInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #15 Verse.FloatMenuOption
L_0000: Local var #16 System.Collections.Generic.List`1[[Verse.Thing, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #17 System.Int32
L_0000: Local var #18 Verse.FloatMenuOption
L_0000: Local var #19 System.String
L_0000: Local var #20 System.String
L_0000: Local var #21 Verse.FloatMenuOption
L_0000: Local var #22 Verse.LocalTargetInfo
L_0000: Local var #23
System.Collections.Generic.IEnumerator`1[[Verse.LocalTargetInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #24 System.Action
L_0000: Local var #25 Verse.LocalTargetInfo
L_0000: Local var #26
System.Collections.Generic.IEnumerator`1[[Verse.LocalTargetInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #27 Verse.LocalTargetInfo
L_0000: Local var #28 System.Action
L_0000: Local var #29 System.String
L_0000: Local var #30 Verse.Thing
L_0000: Local var #31 System.Collections.Generic.IEnumerator`1[[Verse.Thing,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #32 Verse.FloatMenuOption
L_0000: Local var #33
System.Collections.Generic.IEnumerator`1[[Verse.FloatMenuOption, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #34
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
L_0000: Local var #35
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433
L_0000: Local var #36
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435
L_0000: Local var #37 Verse.Pawn
L_0000: Local var #38
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436
L_0000: Local var #39
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437
L_0000: Local var #40
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438
L_0000: Local var #41
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439
L_0000: Local var #42
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A
L_0000: Local var #43
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B
L_0000: Local var #44
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C
L_0000: Local var #45
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D
L_0000: Local var #46
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E
L_0000: Local var #47
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F
L_0000: Local var #48
RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440
L_0000: Local var #49 Verse.Thing
L_0000: newobj Void .ctor()
L_0005: stloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0007: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0009: ldarg.1
L_000a: stfld Verse.Pawn pawn
L_000f: ldarg.0
L_0010: call IntVec3 FromVector3(Vector3)
L_0015: stloc.0
L_0016: ldloc.0
L_0017: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0019: ldfld Verse.Pawn pawn
L_001e: callvirt Verse.Map get_Map()
L_0023: call System.Collections.Generic.List`1[Verse.Thing] GetThingList(IntVec3,
Verse.Map)
L_0028: callvirt Enumerator GetEnumerator()
L_002d: stloc.2
L_002e: br Label #2
L_0033: Label #16
L_0033: ldloca.s 2 (System.Collections.Generic.List`1+Enumerator[Verse.Thing])
L_0035: call Verse.Thing get_Current()
L_003a: stloc.1
L_003b: newobj Void .ctor()
L_0040: stloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0042: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0044: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0046: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_004b: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_004d: ldloc.1
L_004e: stfld Verse.Thing t
L_0053: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0055: ldfld Verse.Thing t
L_005a: ldfld Verse.ThingDef def
L_005f: ldfld RimWorld.IngestibleProperties ingestible
L_0064: brfalse Label #3
L_0069: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_006b: ldfld Verse.Pawn pawn
L_0070: callvirt Verse.RaceProperties get_RaceProps()
L_0075: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0077: ldfld Verse.Thing t
L_007c: callvirt Boolean CanEverEat(Verse.Thing)
L_0081: brfalse Label #4
L_0086: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0088: ldfld Verse.Thing t
L_008d: callvirt Boolean get_IngestibleNow()
L_0092: brfalse Label #5
L_0097: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0099: ldfld Verse.Thing t
L_009e: ldfld Verse.ThingDef def
L_00a3: ldfld RimWorld.IngestibleProperties ingestible
L_00a8: ldfld System.String ingestCommandString
L_00ad: call Boolean NullOrEmpty(System.String)
L_00b2: brfalse Label #6
L_00b7: ldstr "ConsumeThing"
L_00bc: ldc.i4.1
L_00bd: newarr System.Object
L_00c2: dup
L_00c3: ldc.i4.0
L_00c4: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_00c6: ldfld Verse.Thing t
L_00cb: callvirt System.String get_LabelShort()
L_00d0: stelem.ref
L_00d1: call System.String Translate(System.String, System.Object[])
L_00d6: stloc.s 4 (System.String)
L_00d8: br Label #7
L_00dd: Label #6
L_00dd: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_00df: ldfld Verse.Thing t
L_00e4: ldfld Verse.ThingDef def
L_00e9: ldfld RimWorld.IngestibleProperties ingestible
L_00ee: ldfld System.String ingestCommandString
L_00f3: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_00f5: ldfld Verse.Thing t
L_00fa: callvirt System.String get_LabelShort()
L_00ff: call System.String Format(System.String, System.Object)
L_0104: stloc.s 4 (System.String)
L_0106: Label #7
L_0106: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0108: ldfld Verse.Thing t
L_010d: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_010f: ldfld Verse.Pawn pawn
L_0114: call Boolean IsSociallyProper(Verse.Thing, Verse.Pawn)
L_0119: brtrue Label #8
L_011e: ldloc.s 4 (System.String)
L_0120: ldstr " ("
L_0125: ldstr "ReservedForPrisoners"
L_012a: call System.String Translate(System.String)
L_012f: ldstr ")"
L_0134: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0139: stloc.s 4 (System.String)
L_013b: Label #8
L_013b: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_013d: ldfld Verse.Thing t
L_0142: ldfld Verse.ThingDef def
L_0147: callvirt Boolean get_IsPleasureDrug()
L_014c: brfalse Label #9
L_0151: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0153: ldfld Verse.Pawn pawn
L_0158: call Boolean IsTeetotaler(Verse.Pawn)
L_015d: brfalse Label #10
L_0162: ldloc.s 4 (System.String)
L_0164: ldstr " ("
L_0169: ldsfld RimWorld.TraitDef DrugDesire
L_016e: ldc.i4.m1
L_016f: callvirt RimWorld.TraitDegreeData DataAtDegree(Int32)
L_0174: ldfld System.String label
L_0179: ldstr ")"
L_017e: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0183: ldnull
L_0184: ldc.i4.4
L_0185: ldnull
L_0186: ldnull
L_0187: ldc.r4 0
L_018c: ldnull
L_018d: ldnull
L_018e: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0193: stloc.3
L_0194: br Label #11
L_0199: Label #9
L_0199: Label #10
L_0199: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_019b: ldfld Verse.Pawn pawn
L_01a0: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_01a2: ldfld Verse.Thing t
L_01a7: call LocalTargetInfo op_Implicit(Verse.Thing)
L_01ac: ldc.i4.1
L_01ad: ldc.i4.3
L_01ae: ldc.i4.0
L_01af: ldc.i4.0
L_01b0: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_01b5: brtrue Label #12
L_01ba: ldloc.s 4 (System.String)
L_01bc: ldstr " ("
L_01c1: ldstr "NoPath"
L_01c6: call System.String Translate(System.String)
L_01cb: ldstr ")"
L_01d0: call System.String Concat(System.String, System.String, System.String,
System.String)
L_01d5: ldnull
L_01d6: ldc.i4.4
L_01d7: ldnull
L_01d8: ldnull
L_01d9: ldc.r4 0
L_01de: ldnull
L_01df: ldnull
L_01e0: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_01e5: stloc.3
L_01e6: br Label #13
L_01eb: Label #12
L_01eb: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_01ed: ldfld Verse.Thing t
L_01f2: isinst Verse.Corpse
L_01f7: brfalse Label #14
L_01fc: ldc.i4.2
L_01fd: br Label #15
L_0202: Label #14
L_0202: ldc.i4.4
L_0203: Label #15
L_0203: stloc.s 5 (Verse.MenuOptionPriority)
L_0205: ldloc.s 4 (System.String)
L_0207: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_0209: ldftn Void <>m__632()
L_020f: newobj Void .ctor(Object, IntPtr)
L_0214: ldloc.s 5 (Verse.MenuOptionPriority)
L_0216: ldnull
L_0217: ldnull
L_0218: ldc.r4 0
L_021d: ldnull
L_021e: ldnull
L_021f: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0224: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0226: ldfld Verse.Pawn pawn
L_022b: ldloc.s 35
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey433)
L_022d: ldfld Verse.Thing t
L_0232: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0237: ldstr "ReservedBy"
L_023c: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0241: stloc.3
L_0242: Label #11
L_0242: Label #13
L_0242: ldarg.2
L_0243: ldloc.3
L_0244: callvirt Void Add(Verse.FloatMenuOption)
L_0249: Label #2
L_0249: Label #3
L_0249: Label #4
L_0249: Label #5
L_0249: ldloca.s 2 (System.Collections.Generic.List`1+Enumerator[Verse.Thing])
L_024b: call Boolean MoveNext()
L_0250: brtrue Label #16
L_0255: leave Label #17
L_025a: ldloc.2
L_025b: box System.Collections.Generic.List`1+Enumerator[Verse.Thing]
L_0260: callvirt Void Dispose()
L_0265: endfinally
L_0266: Label #17
L_0266: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0268: ldfld Verse.Pawn pawn
L_026d: ldfld Verse.Pawn_HealthTracker health
L_0272: ldfld Verse.PawnCapacitiesHandler capacities
L_0277: ldsfld Verse.PawnCapacityDef Manipulation
L_027c: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_0281: brfalse Label #18
L_0286: ldarg.0
L_0287: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0289: ldfld Verse.Pawn pawn
L_028e: call RimWorld.TargetingParameters ForRescue(Verse.Pawn)
L_0293: ldc.i4.1
L_0294: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_0299: callvirt IEnumerator`1 GetEnumerator()
L_029e: stloc.s 7 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_02a0: br Label #19
L_02a5: Label #34
L_02a5: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_02a7: callvirt LocalTargetInfo get_Current()
L_02ac: stloc.s 6 (Verse.LocalTargetInfo)
L_02ae: newobj Void .ctor()
L_02b3: stloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_02b5: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_02b7: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_02b9: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_02be: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_02c0: ldloca.s 6 (Verse.LocalTargetInfo)
L_02c2: call Verse.Thing get_Thing()
L_02c7: castclass Verse.Pawn
L_02cc: stfld Verse.Pawn victim
L_02d1: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_02d3: ldfld Verse.Pawn victim
L_02d8: call Boolean InBed(Verse.Pawn)
L_02dd: brtrue Label #20
L_02e2: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_02e4: ldfld Verse.Pawn pawn
L_02e9: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_02eb: ldfld Verse.Pawn victim
L_02f0: call LocalTargetInfo op_Implicit(Verse.Thing)
L_02f5: ldc.i4.1
L_02f6: ldc.i4.3
L_02f7: ldc.i4.1
L_02f8: ldc.i4.m1
L_02f9: ldnull
L_02fa: ldc.i4.1
L_02fb: call Boolean CanReserveAndReach(Verse.Pawn, LocalTargetInfo, PathEndMode,
Danger, Int32, Int32, Verse.ReservationLayerDef, Boolean)
L_0300: brtrue Label #21
L_0305: Label #20
L_0305: br Label #22
L_030a: Label #21
L_030a: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_030c: ldfld Verse.Pawn victim
L_0311: callvirt Boolean get_IsPrisonerOfColony()
L_0316: brtrue Label #23
L_031b: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_031d: ldfld Verse.Pawn victim
L_0322: callvirt Boolean get_InMentalState()
L_0327: brtrue Label #24
L_032c: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_032e: ldfld Verse.Pawn victim
L_0333: callvirt RimWorld.Faction get_Faction()
L_0338: call RimWorld.Faction get_OfPlayer()
L_033d: beq Label #25
L_0342: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0344: ldfld Verse.Pawn victim
L_0349: callvirt RimWorld.Faction get_Faction()
L_034e: brfalse Label #26
L_0353: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0355: ldfld Verse.Pawn victim
L_035a: callvirt RimWorld.Faction get_Faction()
L_035f: call RimWorld.Faction get_OfPlayer()
L_0364: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0369: brtrue Label #27
L_036e: Label #25
L_036e: Label #26
L_036e: ldarg.2
L_036f: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0371: ldfld Verse.Pawn victim
L_0376: stloc.s 37 (Verse.Pawn)
L_0378: ldstr "Rescue"
L_037d: ldc.i4.1
L_037e: newarr System.Object
L_0383: dup
L_0384: ldc.i4.0
L_0385: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0387: ldfld Verse.Pawn victim
L_038c: callvirt System.String get_LabelCap()
L_0391: stelem.ref
L_0392: call System.String Translate(System.String, System.Object[])
L_0397: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0399: ldftn Void <>m__633()
L_039f: newobj Void .ctor(Object, IntPtr)
L_03a4: ldc.i4.8
L_03a5: ldnull
L_03a6: ldloc.s 37 (Verse.Pawn)
L_03a8: ldc.r4 0
L_03ad: ldnull
L_03ae: ldnull
L_03af: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_03b4: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_03b6: ldfld Verse.Pawn pawn
L_03bb: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_03bd: ldfld Verse.Pawn victim
L_03c2: call LocalTargetInfo op_Implicit(Verse.Thing)
L_03c7: ldstr "ReservedBy"
L_03cc: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_03d1: callvirt Void Add(Verse.FloatMenuOption)
L_03d6: Label #23
L_03d6: Label #24
L_03d6: Label #27
L_03d6: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_03d8: ldfld Verse.Pawn victim
L_03dd: callvirt Verse.RaceProperties get_RaceProps()
L_03e2: callvirt Boolean get_Humanlike()
L_03e7: brfalse Label #28
L_03ec: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_03ee: ldfld Verse.Pawn victim
L_03f3: callvirt Boolean get_InMentalState()
L_03f8: brtrue Label #29
L_03fd: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_03ff: ldfld Verse.Pawn victim
L_0404: callvirt RimWorld.Faction get_Faction()
L_0409: call RimWorld.Faction get_OfPlayer()
L_040e: bne.un Label #30
L_0413: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0415: ldfld Verse.Pawn victim
L_041a: callvirt Boolean get_Downed()
L_041f: brfalse Label #31
L_0424: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0426: ldfld Verse.Pawn victim
L_042b: ldfld RimWorld.Pawn_GuiltTracker guilt
L_0430: callvirt Boolean get_IsGuilty()
L_0435: brtrue Label #32
L_043a: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_043c: ldfld Verse.Pawn victim
L_0441: callvirt Boolean get_IsPrisonerOfColony()
L_0446: brfalse Label #33
L_044b: Label #29
L_044b: Label #30
L_044b: Label #32
L_044b: ldarg.2
L_044c: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_044e: ldfld Verse.Pawn victim
L_0453: stloc.s 37 (Verse.Pawn)
L_0455: ldstr "Capture"
L_045a: ldc.i4.1
L_045b: newarr System.Object
L_0460: dup
L_0461: ldc.i4.0
L_0462: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0464: ldfld Verse.Pawn victim
L_0469: callvirt System.String get_LabelCap()
L_046e: stelem.ref
L_046f: call System.String Translate(System.String, System.Object[])
L_0474: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_0476: ldftn Void <>m__634()
L_047c: newobj Void .ctor(Object, IntPtr)
L_0481: ldc.i4.8
L_0482: ldnull
L_0483: ldloc.s 37 (Verse.Pawn)
L_0485: ldc.r4 0
L_048a: ldnull
L_048b: ldnull
L_048c: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0491: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0493: ldfld Verse.Pawn pawn
L_0498: ldloc.s 36
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey435)
L_049a: ldfld Verse.Pawn victim
L_049f: call LocalTargetInfo op_Implicit(Verse.Thing)
L_04a4: ldstr "ReservedBy"
L_04a9: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_04ae: callvirt Void Add(Verse.FloatMenuOption)
L_04b3: Label #19
L_04b3: Label #22
L_04b3: Label #28
L_04b3: Label #31
L_04b3: Label #33
L_04b3: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_04b5: callvirt Boolean MoveNext()
L_04ba: brtrue Label #34
L_04bf: leave Label #35
L_04c4: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_04c6: brtrue Label #36
L_04cb: endfinally
L_04cc: Label #36
L_04cc: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_04ce: callvirt Void Dispose()
L_04d3: endfinally
L_04d4: Label #35
L_04d4: ldarg.0
L_04d5: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_04d7: ldfld Verse.Pawn pawn
L_04dc: call RimWorld.TargetingParameters ForRescue(Verse.Pawn)
L_04e1: ldc.i4.1
L_04e2: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_04e7: callvirt IEnumerator`1 GetEnumerator()
L_04ec: stloc.s 9 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_04ee: br Label #37
L_04f3: Label #41
L_04f3: ldloc.s 9 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_04f5: callvirt LocalTargetInfo get_Current()
L_04fa: stloc.s 8 (Verse.LocalTargetInfo)
L_04fc: newobj Void .ctor()
L_0501: stloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_0503: ldloc.s 8 (Verse.LocalTargetInfo)
L_0505: stloc.s 10 (Verse.LocalTargetInfo)
L_0507: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_0509: ldloca.s 10 (Verse.LocalTargetInfo)
L_050b: call Verse.Thing get_Thing()
L_0510: castclass Verse.Pawn
L_0515: stfld Verse.Pawn victim
L_051a: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_051c: ldfld Verse.Pawn victim
L_0521: callvirt Boolean get_Downed()
L_0526: brfalse Label #38
L_052b: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_052d: ldfld Verse.Pawn pawn
L_0532: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_0534: ldfld Verse.Pawn victim
L_0539: call LocalTargetInfo op_Implicit(Verse.Thing)
L_053e: ldc.i4.1
L_053f: ldc.i4.3
L_0540: ldc.i4.1
L_0541: ldc.i4.m1
L_0542: ldnull
L_0543: ldc.i4.1
L_0544: call Boolean CanReserveAndReach(Verse.Pawn, LocalTargetInfo, PathEndMode,
Danger, Int32, Int32, Verse.ReservationLayerDef, Boolean)
L_0549: brfalse Label #39
L_054e: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_0550: ldfld Verse.Pawn victim
L_0555: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0557: ldfld Verse.Pawn pawn
L_055c: ldc.i4.1
L_055d: call RimWorld.Building_CryptosleepCasket
FindCryptosleepCasketFor(Verse.Pawn, Verse.Pawn, Boolean)
L_0562: brfalse Label #40
L_0567: newobj Void .ctor()
L_056c: stloc.s 39
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437)
L_056e: ldloc.s 39
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437)
L_0570: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0572: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0577: ldloc.s 39
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437)
L_0579: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_057b: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436
<>f__ref$1078
L_0580: ldstr "CarryToCryptosleepCasket"
L_0585: ldc.i4.1
L_0586: newarr System.Object
L_058b: dup
L_058c: ldc.i4.0
L_058d: ldloca.s 10 (Verse.LocalTargetInfo)
L_058f: call Verse.Thing get_Thing()
L_0594: callvirt System.String get_LabelCap()
L_0599: stelem.ref
L_059a: call System.String Translate(System.String, System.Object[])
L_059f: stloc.s 11 (System.String)
L_05a1: ldloc.s 39
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437)
L_05a3: ldsfld Verse.JobDef CarryToCryptosleepCasket
L_05a8: stfld Verse.JobDef jDef
L_05ad: ldloc.s 39
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey437)
L_05af: ldftn Void <>m__635()
L_05b5: newobj Void .ctor(Object, IntPtr)
L_05ba: stloc.s 12 (System.Action)
L_05bc: ldarg.2
L_05bd: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_05bf: ldfld Verse.Pawn victim
L_05c4: stloc.s 37 (Verse.Pawn)
L_05c6: ldloc.s 11 (System.String)
L_05c8: ldloc.s 12 (System.Action)
L_05ca: ldc.i4.4
L_05cb: ldnull
L_05cc: ldloc.s 37 (Verse.Pawn)
L_05ce: ldc.r4 0
L_05d3: ldnull
L_05d4: ldnull
L_05d5: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_05da: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_05dc: ldfld Verse.Pawn pawn
L_05e1: ldloc.s 38
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey436)
L_05e3: ldfld Verse.Pawn victim
L_05e8: call LocalTargetInfo op_Implicit(Verse.Thing)
L_05ed: ldstr "ReservedBy"
L_05f2: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_05f7: callvirt Void Add(Verse.FloatMenuOption)
L_05fc: Label #37
L_05fc: Label #38
L_05fc: Label #39
L_05fc: Label #40
L_05fc: ldloc.s 9 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_05fe: callvirt Boolean MoveNext()
L_0603: brtrue Label #41
L_0608: leave Label #42
L_060d: ldloc.s 9 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_060f: brtrue Label #43
L_0614: endfinally
L_0615: Label #43
L_0615: ldloc.s 9 (System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_0617: callvirt Void Dispose()
L_061c: endfinally
L_061d: Label #18
L_061d: Label #42
L_061d: ldarg.0
L_061e: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0620: ldfld Verse.Pawn pawn
L_0625: call RimWorld.TargetingParameters ForStrip(Verse.Pawn)
L_062a: ldc.i4.1
L_062b: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_0630: callvirt IEnumerator`1 GetEnumerator()
L_0635: stloc.s 14
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_0637: br Label #44
L_063c: Label #47
L_063c: ldloc.s 14
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_063e: callvirt LocalTargetInfo get_Current()
L_0643: stloc.s 13 (Verse.LocalTargetInfo)
L_0645: newobj Void .ctor()
L_064a: stloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_064c: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_064e: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0650: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0655: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_0657: ldloc.s 13 (Verse.LocalTargetInfo)
L_0659: stfld Verse.LocalTargetInfo stripTarg
L_065e: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0660: ldfld Verse.Pawn pawn
L_0665: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_0667: ldfld Verse.LocalTargetInfo stripTarg
L_066c: ldc.i4.3
L_066d: ldc.i4.3
L_066e: ldc.i4.0
L_066f: ldc.i4.0
L_0670: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0675: brtrue Label #45
L_067a: ldstr "CannotStrip"
L_067f: ldc.i4.1
L_0680: newarr System.Object
L_0685: dup
L_0686: ldc.i4.0
L_0687: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_0689: ldflda Verse.LocalTargetInfo stripTarg
L_068e: call Verse.Thing get_Thing()
L_0693: callvirt System.String get_LabelCap()
L_0698: stelem.ref
L_0699: call System.String Translate(System.String, System.Object[])
L_069e: ldstr " ("
L_06a3: ldstr "NoPath"
L_06a8: call System.String Translate(System.String)
L_06ad: ldstr ")"
L_06b2: call System.String Concat(System.String, System.String, System.String,
System.String)
L_06b7: ldnull
L_06b8: ldc.i4.4
L_06b9: ldnull
L_06ba: ldnull
L_06bb: ldc.r4 0
L_06c0: ldnull
L_06c1: ldnull
L_06c2: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_06c7: stloc.s 15 (Verse.FloatMenuOption)
L_06c9: br Label #46
L_06ce: Label #45
L_06ce: ldstr "Strip"
L_06d3: ldc.i4.1
L_06d4: newarr System.Object
L_06d9: dup
L_06da: ldc.i4.0
L_06db: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_06dd: ldflda Verse.LocalTargetInfo stripTarg
L_06e2: call Verse.Thing get_Thing()
L_06e7: callvirt System.String get_LabelCap()
L_06ec: stelem.ref
L_06ed: call System.String Translate(System.String, System.Object[])
L_06f2: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_06f4: ldftn Void <>m__636()
L_06fa: newobj Void .ctor(Object, IntPtr)
L_06ff: ldc.i4.4
L_0700: ldnull
L_0701: ldnull
L_0702: ldc.r4 0
L_0707: ldnull
L_0708: ldnull
L_0709: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_070e: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0710: ldfld Verse.Pawn pawn
L_0715: ldloc.s 40
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey438)
L_0717: ldfld Verse.LocalTargetInfo stripTarg
L_071c: ldstr "ReservedBy"
L_0721: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0726: stloc.s 15 (Verse.FloatMenuOption)
L_0728: Label #46
L_0728: ldarg.2
L_0729: ldloc.s 15 (Verse.FloatMenuOption)
L_072b: callvirt Void Add(Verse.FloatMenuOption)
L_0730: Label #44
L_0730: ldloc.s 14
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_0732: callvirt Boolean MoveNext()
L_0737: brtrue Label #47
L_073c: leave Label #48
L_0741: ldloc.s 14
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_0743: brtrue Label #49
L_0748: endfinally
L_0749: Label #49
L_0749: ldloc.s 14
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_074b: callvirt Void Dispose()
L_0750: endfinally
L_0751: Label #48
L_0751: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0753: ldfld Verse.Pawn pawn
L_0758: ldfld Verse.Pawn_EquipmentTracker equipment
L_075d: brfalse Label #50
L_0762: newobj Void .ctor()
L_0767: stloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_0769: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_076b: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_076d: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0772: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_0774: ldnull
L_0775: stfld Verse.ThingWithComps equipment
L_077a: ldloc.0
L_077b: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_077d: ldfld Verse.Pawn pawn
L_0782: callvirt Verse.Map get_Map()
L_0787: call System.Collections.Generic.List`1[Verse.Thing] GetThingList(IntVec3,
Verse.Map)
L_078c: stloc.s 16 (System.Collections.Generic.List`1[Verse.Thing])
L_078e: ldc.i4.0
L_078f: stloc.s 17 (System.Int32)
L_0791: br Label #51
L_0796: Label #54
L_0796: ldloc.s 16 (System.Collections.Generic.List`1[Verse.Thing])
L_0798: ldloc.s 17 (System.Int32)
L_079a: callvirt Verse.Thing get_Item(Int32)
L_079f: call Verse.CompEquippable TryGetComp[CompEquippable](Verse.Thing)
L_07a4: brfalse Label #52
L_07a9: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_07ab: ldloc.s 16 (System.Collections.Generic.List`1[Verse.Thing])
L_07ad: ldloc.s 17 (System.Int32)
L_07af: callvirt Verse.Thing get_Item(Int32)
L_07b4: castclass Verse.ThingWithComps
L_07b9: stfld Verse.ThingWithComps equipment
L_07be: br Label #53
L_07c3: Label #52
L_07c3: ldloc.s 17 (System.Int32)
L_07c5: ldc.i4.1
L_07c6: add
L_07c7: stloc.s 17 (System.Int32)
L_07c9: Label #51
L_07c9: ldloc.s 17 (System.Int32)
L_07cb: ldloc.s 16 (System.Collections.Generic.List`1[Verse.Thing])
L_07cd: callvirt Int32 get_Count()
L_07d2: blt Label #54
L_07d7: Label #53
L_07d7: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_07d9: ldfld Verse.ThingWithComps equipment
L_07de: brfalse Label #55
L_07e3: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_07e5: ldfld Verse.ThingWithComps equipment
L_07ea: callvirt System.String get_LabelShort()
L_07ef: stloc.s 19 (System.String)
L_07f1: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_07f3: ldfld Verse.ThingWithComps equipment
L_07f8: ldfld Verse.ThingDef def
L_07fd: callvirt Boolean get_IsWeapon()
L_0802: brfalse Label #56
L_0807: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0809: ldfld Verse.Pawn pawn
L_080e: ldfld RimWorld.Pawn_StoryTracker story
L_0813: ldc.i4.8
L_0814: callvirt Boolean WorkTagIsDisabled(WorkTags)
L_0819: brfalse Label #57
L_081e: ldstr "CannotEquip"
L_0823: ldc.i4.1
L_0824: newarr System.Object
L_0829: dup
L_082a: ldc.i4.0
L_082b: ldloc.s 19 (System.String)
L_082d: stelem.ref
L_082e: call System.String Translate(System.String, System.Object[])
L_0833: ldstr " ("
L_0838: ldstr "IsIncapableOfViolenceLower"
L_083d: ldc.i4.1
L_083e: newarr System.Object
L_0843: dup
L_0844: ldc.i4.0
L_0845: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0847: ldfld Verse.Pawn pawn
L_084c: callvirt System.String get_LabelShort()
L_0851: stelem.ref
L_0852: call System.String Translate(System.String, System.Object[])
L_0857: ldstr ")"
L_085c: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0861: ldnull
L_0862: ldc.i4.4
L_0863: ldnull
L_0864: ldnull
L_0865: ldc.r4 0
L_086a: ldnull
L_086b: ldnull
L_086c: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0871: stloc.s 18 (Verse.FloatMenuOption)
L_0873: br Label #58
L_0878: Label #56
L_0878: Label #57
L_0878: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_087a: ldfld Verse.Pawn pawn
L_087f: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_0881: ldfld Verse.ThingWithComps equipment
L_0886: call LocalTargetInfo op_Implicit(Verse.Thing)
L_088b: ldc.i4.3
L_088c: ldc.i4.3
L_088d: ldc.i4.0
L_088e: ldc.i4.0
L_088f: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0894: brtrue Label #59
L_0899: ldstr "CannotEquip"
L_089e: ldc.i4.1
L_089f: newarr System.Object
L_08a4: dup
L_08a5: ldc.i4.0
L_08a6: ldloc.s 19 (System.String)
L_08a8: stelem.ref
L_08a9: call System.String Translate(System.String, System.Object[])
L_08ae: ldstr " ("
L_08b3: ldstr "NoPath"
L_08b8: call System.String Translate(System.String)
L_08bd: ldstr ")"
L_08c2: call System.String Concat(System.String, System.String, System.String,
System.String)
L_08c7: ldnull
L_08c8: ldc.i4.4
L_08c9: ldnull
L_08ca: ldnull
L_08cb: ldc.r4 0
L_08d0: ldnull
L_08d1: ldnull
L_08d2: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_08d7: stloc.s 18 (Verse.FloatMenuOption)
L_08d9: br Label #60
L_08de: Label #59
L_08de: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_08e0: ldfld Verse.Pawn pawn
L_08e5: ldfld Verse.Pawn_HealthTracker health
L_08ea: ldfld Verse.PawnCapacitiesHandler capacities
L_08ef: ldsfld Verse.PawnCapacityDef Manipulation
L_08f4: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_08f9: brtrue Label #61
L_08fe: ldstr "CannotEquip"
L_0903: ldc.i4.1
L_0904: newarr System.Object
L_0909: dup
L_090a: ldc.i4.0
L_090b: ldloc.s 19 (System.String)
L_090d: stelem.ref
L_090e: call System.String Translate(System.String, System.Object[])
L_0913: ldstr " ("
L_0918: ldstr "Incapable"
L_091d: call System.String Translate(System.String)
L_0922: ldstr ")"
L_0927: call System.String Concat(System.String, System.String, System.String,
System.String)
L_092c: ldnull
L_092d: ldc.i4.4
L_092e: ldnull
L_092f: ldnull
L_0930: ldc.r4 0
L_0935: ldnull
L_0936: ldnull
L_0937: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_093c: stloc.s 18 (Verse.FloatMenuOption)
L_093e: br Label #62
L_0943: Label #61
L_0943: ldstr "Equip"
L_0948: ldc.i4.1
L_0949: newarr System.Object
L_094e: dup
L_094f: ldc.i4.0
L_0950: ldloc.s 19 (System.String)
L_0952: stelem.ref
L_0953: call System.String Translate(System.String, System.Object[])
L_0958: stloc.s 20 (System.String)
L_095a: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_095c: ldfld Verse.ThingWithComps equipment
L_0961: ldfld Verse.ThingDef def
L_0966: callvirt Boolean get_IsRangedWeapon()
L_096b: brfalse Label #63
L_0970: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0972: ldfld Verse.Pawn pawn
L_0977: ldfld RimWorld.Pawn_StoryTracker story
L_097c: brfalse Label #64
L_0981: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0983: ldfld Verse.Pawn pawn
L_0988: ldfld RimWorld.Pawn_StoryTracker story
L_098d: ldfld RimWorld.TraitSet traits
L_0992: ldsfld RimWorld.TraitDef Brawler
L_0997: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_099c: brfalse Label #65
L_09a1: ldloc.s 20 (System.String)
L_09a3: ldstr " "
L_09a8: ldstr "EquipWarningBrawler"
L_09ad: call System.String Translate(System.String)
L_09b2: call System.String Concat(System.String, System.String, System.String)
L_09b7: stloc.s 20 (System.String)
L_09b9: Label #63
L_09b9: Label #64
L_09b9: Label #65
L_09b9: ldloc.s 20 (System.String)
L_09bb: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_09bd: ldftn Void <>m__637()
L_09c3: newobj Void .ctor(Object, IntPtr)
L_09c8: ldc.i4.5
L_09c9: ldnull
L_09ca: ldnull
L_09cb: ldc.r4 0
L_09d0: ldnull
L_09d1: ldnull
L_09d2: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_09d7: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_09d9: ldfld Verse.Pawn pawn
L_09de: ldloc.s 41
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey439)
L_09e0: ldfld Verse.ThingWithComps equipment
L_09e5: call LocalTargetInfo op_Implicit(Verse.Thing)
L_09ea: ldstr "ReservedBy"
L_09ef: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_09f4: stloc.s 18 (Verse.FloatMenuOption)
L_09f6: Label #58
L_09f6: Label #60
L_09f6: Label #62
L_09f6: ldarg.2
L_09f7: ldloc.s 18 (Verse.FloatMenuOption)
L_09f9: callvirt Void Add(Verse.FloatMenuOption)
L_09fe: Label #50
L_09fe: Label #55
L_09fe: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0a00: ldfld Verse.Pawn pawn
L_0a05: ldfld RimWorld.Pawn_ApparelTracker apparel
L_0a0a: brfalse Label #66
L_0a0f: newobj Void .ctor()
L_0a14: stloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a16: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a18: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0a1a: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0a1f: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a21: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0a23: ldfld Verse.Pawn pawn
L_0a28: callvirt Verse.Map get_Map()
L_0a2d: ldfld Verse.ThingGrid thingGrid
L_0a32: ldloc.0
L_0a33: callvirt RimWorld.Apparel ThingAt[Apparel](IntVec3)
L_0a38: stfld RimWorld.Apparel apparel
L_0a3d: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a3f: ldfld RimWorld.Apparel apparel
L_0a44: brfalse Label #67
L_0a49: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0a4b: ldfld Verse.Pawn pawn
L_0a50: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a52: ldfld RimWorld.Apparel apparel
L_0a57: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0a5c: ldc.i4.3
L_0a5d: ldc.i4.3
L_0a5e: ldc.i4.0
L_0a5f: ldc.i4.0
L_0a60: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0a65: brtrue Label #68
L_0a6a: ldstr "CannotWear"
L_0a6f: ldc.i4.1
L_0a70: newarr System.Object
L_0a75: dup
L_0a76: ldc.i4.0
L_0a77: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0a79: ldfld RimWorld.Apparel apparel
L_0a7e: callvirt System.String get_Label()
L_0a83: stelem.ref
L_0a84: call System.String Translate(System.String, System.Object[])
L_0a89: ldstr " ("
L_0a8e: ldstr "NoPath"
L_0a93: call System.String Translate(System.String)
L_0a98: ldstr ")"
L_0a9d: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0aa2: ldnull
L_0aa3: ldc.i4.4
L_0aa4: ldnull
L_0aa5: ldnull
L_0aa6: ldc.r4 0
L_0aab: ldnull
L_0aac: ldnull
L_0aad: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0ab2: stloc.s 21 (Verse.FloatMenuOption)
L_0ab4: br Label #69
L_0ab9: Label #68
L_0ab9: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0abb: ldfld Verse.Pawn pawn
L_0ac0: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0ac2: ldfld RimWorld.Apparel apparel
L_0ac7: ldfld Verse.ThingDef def
L_0acc: call Boolean HasPartsToWear(Verse.Pawn, Verse.ThingDef)
L_0ad1: brtrue Label #70
L_0ad6: ldstr "CannotWear"
L_0adb: ldc.i4.1
L_0adc: newarr System.Object
L_0ae1: dup
L_0ae2: ldc.i4.0
L_0ae3: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0ae5: ldfld RimWorld.Apparel apparel
L_0aea: callvirt System.String get_Label()
L_0aef: stelem.ref
L_0af0: call System.String Translate(System.String, System.Object[])
L_0af5: ldstr " ("
L_0afa: ldstr "CannotWearBecauseOfMissingBodyParts"
L_0aff: call System.String Translate(System.String)
L_0b04: ldstr ")"
L_0b09: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0b0e: ldnull
L_0b0f: ldc.i4.4
L_0b10: ldnull
L_0b11: ldnull
L_0b12: ldc.r4 0
L_0b17: ldnull
L_0b18: ldnull
L_0b19: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0b1e: stloc.s 21 (Verse.FloatMenuOption)
L_0b20: br Label #71
L_0b25: Label #70
L_0b25: ldstr "ForceWear"
L_0b2a: ldc.i4.1
L_0b2b: newarr System.Object
L_0b30: dup
L_0b31: ldc.i4.0
L_0b32: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0b34: ldfld RimWorld.Apparel apparel
L_0b39: callvirt System.String get_LabelShort()
L_0b3e: stelem.ref
L_0b3f: call System.String Translate(System.String, System.Object[])
L_0b44: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0b46: ldftn Void <>m__638()
L_0b4c: newobj Void .ctor(Object, IntPtr)
L_0b51: ldc.i4.5
L_0b52: ldnull
L_0b53: ldnull
L_0b54: ldc.r4 0
L_0b59: ldnull
L_0b5a: ldnull
L_0b5b: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0b60: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0b62: ldfld Verse.Pawn pawn
L_0b67: ldloc.s 42
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43A)
L_0b69: ldfld RimWorld.Apparel apparel
L_0b6e: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0b73: ldstr "ReservedBy"
L_0b78: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0b7d: stloc.s 21 (Verse.FloatMenuOption)
L_0b7f: Label #69
L_0b7f: Label #71
L_0b7f: ldarg.2
L_0b80: ldloc.s 21 (Verse.FloatMenuOption)
L_0b82: callvirt Void Add(Verse.FloatMenuOption)
L_0b87: Label #66
L_0b87: Label #67
L_0b87: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0b89: ldfld Verse.Pawn pawn
L_0b8e: callvirt Verse.Map get_Map()
L_0b93: callvirt Boolean get_IsPlayerHome()
L_0b98: brtrue Label #72
L_0b9d: newobj Void .ctor()
L_0ba2: stloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0ba4: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0ba6: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0ba8: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0bad: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0baf: ldloc.0
L_0bb0: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0bb2: ldfld Verse.Pawn pawn
L_0bb7: callvirt Verse.Map get_Map()
L_0bbc: call Verse.Thing GetFirstItem(IntVec3, Verse.Map)
L_0bc1: stfld Verse.Thing item
L_0bc6: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0bc8: ldfld Verse.Thing item
L_0bcd: brfalse Label #73
L_0bd2: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0bd4: ldfld Verse.Thing item
L_0bd9: ldfld Verse.ThingDef def
L_0bde: callvirt Boolean get_EverHaulable()
L_0be3: brfalse Label #74
L_0be8: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0bea: ldfld Verse.Pawn pawn
L_0bef: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0bf1: ldfld Verse.Thing item
L_0bf6: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0bfb: ldc.i4.3
L_0bfc: ldc.i4.3
L_0bfd: ldc.i4.0
L_0bfe: ldc.i4.0
L_0bff: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0c04: brtrue Label #75
L_0c09: ldarg.2
L_0c0a: ldstr "CannotPickUp"
L_0c0f: ldc.i4.1
L_0c10: newarr System.Object
L_0c15: dup
L_0c16: ldc.i4.0
L_0c17: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0c19: ldfld Verse.Thing item
L_0c1e: callvirt System.String get_Label()
L_0c23: stelem.ref
L_0c24: call System.String Translate(System.String, System.Object[])
L_0c29: ldstr " ("
L_0c2e: ldstr "NoPath"
L_0c33: call System.String Translate(System.String)
L_0c38: ldstr ")"
L_0c3d: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0c42: ldnull
L_0c43: ldc.i4.4
L_0c44: ldnull
L_0c45: ldnull
L_0c46: ldc.r4 0
L_0c4b: ldnull
L_0c4c: ldnull
L_0c4d: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0c52: callvirt Void Add(Verse.FloatMenuOption)
L_0c57: br Label #76
L_0c5c: Label #75
L_0c5c: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0c5e: ldfld Verse.Pawn pawn
L_0c63: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0c65: ldfld Verse.Thing item
L_0c6a: ldc.i4.1
L_0c6b: call Boolean WillBeOverEncumberedAfterPickingUp(Verse.Pawn, Verse.Thing,
Int32)
L_0c70: brfalse Label #77
L_0c75: ldarg.2
L_0c76: ldstr "CannotPickUp"
L_0c7b: ldc.i4.1
L_0c7c: newarr System.Object
L_0c81: dup
L_0c82: ldc.i4.0
L_0c83: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0c85: ldfld Verse.Thing item
L_0c8a: callvirt System.String get_Label()
L_0c8f: stelem.ref
L_0c90: call System.String Translate(System.String, System.Object[])
L_0c95: ldstr " ("
L_0c9a: ldstr "TooHeavy"
L_0c9f: call System.String Translate(System.String)
L_0ca4: ldstr ")"
L_0ca9: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0cae: ldnull
L_0caf: ldc.i4.4
L_0cb0: ldnull
L_0cb1: ldnull
L_0cb2: ldc.r4 0
L_0cb7: ldnull
L_0cb8: ldnull
L_0cb9: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0cbe: callvirt Void Add(Verse.FloatMenuOption)
L_0cc3: br Label #78
L_0cc8: Label #77
L_0cc8: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0cca: ldfld Verse.Thing item
L_0ccf: ldfld System.Int32 stackCount
L_0cd4: ldc.i4.1
L_0cd5: bne.un Label #79
L_0cda: ldarg.2
L_0cdb: ldstr "PickUp"
L_0ce0: ldc.i4.1
L_0ce1: newarr System.Object
L_0ce6: dup
L_0ce7: ldc.i4.0
L_0ce8: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0cea: ldfld Verse.Thing item
L_0cef: callvirt System.String get_Label()
L_0cf4: stelem.ref
L_0cf5: call System.String Translate(System.String, System.Object[])
L_0cfa: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0cfc: ldftn Void <>m__639()
L_0d02: newobj Void .ctor(Object, IntPtr)
L_0d07: ldc.i4.5
L_0d08: ldnull
L_0d09: ldnull
L_0d0a: ldc.r4 0
L_0d0f: ldnull
L_0d10: ldnull
L_0d11: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0d16: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0d18: ldfld Verse.Pawn pawn
L_0d1d: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0d1f: ldfld Verse.Thing item
L_0d24: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0d29: ldstr "ReservedBy"
L_0d2e: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0d33: callvirt Void Add(Verse.FloatMenuOption)
L_0d38: br Label #80
L_0d3d: Label #79
L_0d3d: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0d3f: ldfld Verse.Pawn pawn
L_0d44: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0d46: ldfld Verse.Thing item
L_0d4b: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0d4d: ldfld Verse.Thing item
L_0d52: ldfld System.Int32 stackCount
L_0d57: call Boolean WillBeOverEncumberedAfterPickingUp(Verse.Pawn, Verse.Thing,
Int32)
L_0d5c: brfalse Label #81
L_0d61: ldarg.2
L_0d62: ldstr "CannotPickUpAll"
L_0d67: ldc.i4.1
L_0d68: newarr System.Object
L_0d6d: dup
L_0d6e: ldc.i4.0
L_0d6f: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0d71: ldfld Verse.Thing item
L_0d76: callvirt System.String get_Label()
L_0d7b: stelem.ref
L_0d7c: call System.String Translate(System.String, System.Object[])
L_0d81: ldstr " ("
L_0d86: ldstr "TooHeavy"
L_0d8b: call System.String Translate(System.String)
L_0d90: ldstr ")"
L_0d95: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0d9a: ldnull
L_0d9b: ldc.i4.4
L_0d9c: ldnull
L_0d9d: ldnull
L_0d9e: ldc.r4 0
L_0da3: ldnull
L_0da4: ldnull
L_0da5: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0daa: callvirt Void Add(Verse.FloatMenuOption)
L_0daf: br Label #82
L_0db4: Label #81
L_0db4: ldarg.2
L_0db5: ldstr "PickUpAll"
L_0dba: ldc.i4.1
L_0dbb: newarr System.Object
L_0dc0: dup
L_0dc1: ldc.i4.0
L_0dc2: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0dc4: ldfld Verse.Thing item
L_0dc9: callvirt System.String get_Label()
L_0dce: stelem.ref
L_0dcf: call System.String Translate(System.String, System.Object[])
L_0dd4: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0dd6: ldftn Void <>m__63A()
L_0ddc: newobj Void .ctor(Object, IntPtr)
L_0de1: ldc.i4.5
L_0de2: ldnull
L_0de3: ldnull
L_0de4: ldc.r4 0
L_0de9: ldnull
L_0dea: ldnull
L_0deb: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0df0: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0df2: ldfld Verse.Pawn pawn
L_0df7: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0df9: ldfld Verse.Thing item
L_0dfe: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0e03: ldstr "ReservedBy"
L_0e08: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0e0d: callvirt Void Add(Verse.FloatMenuOption)
L_0e12: Label #82
L_0e12: ldarg.2
L_0e13: ldstr "PickUpSome"
L_0e18: ldc.i4.1
L_0e19: newarr System.Object
L_0e1e: dup
L_0e1f: ldc.i4.0
L_0e20: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0e22: ldfld Verse.Thing item
L_0e27: callvirt System.String get_Label()
L_0e2c: stelem.ref
L_0e2d: call System.String Translate(System.String, System.Object[])
L_0e32: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0e34: ldftn Void <>m__63B()
L_0e3a: newobj Void .ctor(Object, IntPtr)
L_0e3f: ldc.i4.5
L_0e40: ldnull
L_0e41: ldnull
L_0e42: ldc.r4 0
L_0e47: ldnull
L_0e48: ldnull
L_0e49: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0e4e: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0e50: ldfld Verse.Pawn pawn
L_0e55: ldloc.s 43
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43B)
L_0e57: ldfld Verse.Thing item
L_0e5c: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0e61: ldstr "ReservedBy"
L_0e66: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_0e6b: callvirt Void Add(Verse.FloatMenuOption)
L_0e70: Label #72
L_0e70: Label #73
L_0e70: Label #74
L_0e70: Label #76
L_0e70: Label #78
L_0e70: Label #80
L_0e70: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0e72: ldfld Verse.Pawn pawn
L_0e77: callvirt Verse.Map get_Map()
L_0e7c: callvirt Boolean get_IsPlayerHome()
L_0e81: brtrue Label #83
L_0e86: newobj Void .ctor()
L_0e8b: stloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0e8d: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0e8f: ldloc.0
L_0e90: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0e92: ldfld Verse.Pawn pawn
L_0e97: callvirt Verse.Map get_Map()
L_0e9c: call Verse.Thing GetFirstItem(IntVec3, Verse.Map)
L_0ea1: stfld Verse.Thing item
L_0ea6: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0ea8: ldfld Verse.Thing item
L_0ead: brfalse Label #84
L_0eb2: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0eb4: ldfld Verse.Thing item
L_0eb9: ldfld Verse.ThingDef def
L_0ebe: callvirt Boolean get_EverHaulable()
L_0ec3: brfalse Label #85
L_0ec8: newobj Void .ctor()
L_0ecd: stloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0ecf: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0ed1: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0ed3: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_0ed8: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0eda: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0edc: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C
<>f__ref$1084
L_0ee1: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0ee3: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0ee5: ldfld Verse.Pawn pawn
L_0eea: callvirt Verse.Map get_Map()
L_0eef: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0ef1: ldfld Verse.Pawn pawn
L_0ef6: callvirt RimWorld.Faction get_Faction()
L_0efb: call Verse.Pawn PackAnimalWithTheMostFreeSpace(Verse.Map, RimWorld.Faction)
L_0f00: stfld Verse.Pawn bestPackAnimal
L_0f05: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0f07: ldfld Verse.Pawn bestPackAnimal
L_0f0c: brfalse Label #86
L_0f11: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_0f13: ldfld Verse.Pawn pawn
L_0f18: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0f1a: ldfld Verse.Thing item
L_0f1f: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0f24: ldc.i4.3
L_0f25: ldc.i4.3
L_0f26: ldc.i4.0
L_0f27: ldc.i4.0
L_0f28: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_0f2d: brtrue Label #87
L_0f32: ldarg.2
L_0f33: ldstr "CannotGiveToPackAnimal"
L_0f38: ldc.i4.1
L_0f39: newarr System.Object
L_0f3e: dup
L_0f3f: ldc.i4.0
L_0f40: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0f42: ldfld Verse.Thing item
L_0f47: callvirt System.String get_Label()
L_0f4c: stelem.ref
L_0f4d: call System.String Translate(System.String, System.Object[])
L_0f52: ldstr " ("
L_0f57: ldstr "NoPath"
L_0f5c: call System.String Translate(System.String)
L_0f61: ldstr ")"
L_0f66: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0f6b: ldnull
L_0f6c: ldc.i4.4
L_0f6d: ldnull
L_0f6e: ldnull
L_0f6f: ldc.r4 0
L_0f74: ldnull
L_0f75: ldnull
L_0f76: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0f7b: callvirt Void Add(Verse.FloatMenuOption)
L_0f80: br Label #88
L_0f85: Label #87
L_0f85: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_0f87: ldfld Verse.Pawn bestPackAnimal
L_0f8c: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0f8e: ldfld Verse.Thing item
L_0f93: ldc.i4.1
L_0f94: call Boolean WillBeOverEncumberedAfterPickingUp(Verse.Pawn, Verse.Thing,
Int32)
L_0f99: brfalse Label #89
L_0f9e: ldarg.2
L_0f9f: ldstr "CannotGiveToPackAnimal"
L_0fa4: ldc.i4.1
L_0fa5: newarr System.Object
L_0faa: dup
L_0fab: ldc.i4.0
L_0fac: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0fae: ldfld Verse.Thing item
L_0fb3: callvirt System.String get_Label()
L_0fb8: stelem.ref
L_0fb9: call System.String Translate(System.String, System.Object[])
L_0fbe: ldstr " ("
L_0fc3: ldstr "TooHeavy"
L_0fc8: call System.String Translate(System.String)
L_0fcd: ldstr ")"
L_0fd2: call System.String Concat(System.String, System.String, System.String,
System.String)
L_0fd7: ldnull
L_0fd8: ldc.i4.4
L_0fd9: ldnull
L_0fda: ldnull
L_0fdb: ldc.r4 0
L_0fe0: ldnull
L_0fe1: ldnull
L_0fe2: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_0fe7: callvirt Void Add(Verse.FloatMenuOption)
L_0fec: br Label #90
L_0ff1: Label #89
L_0ff1: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_0ff3: ldfld Verse.Thing item
L_0ff8: ldfld System.Int32 stackCount
L_0ffd: ldc.i4.1
L_0ffe: bne.un Label #91
L_1003: ldarg.2
L_1004: ldstr "GiveToPackAnimal"
L_1009: ldc.i4.1
L_100a: newarr System.Object
L_100f: dup
L_1010: ldc.i4.0
L_1011: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_1013: ldfld Verse.Thing item
L_1018: callvirt System.String get_Label()
L_101d: stelem.ref
L_101e: call System.String Translate(System.String, System.Object[])
L_1023: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_1025: ldftn Void <>m__63C()
L_102b: newobj Void .ctor(Object, IntPtr)
L_1030: ldc.i4.5
L_1031: ldnull
L_1032: ldnull
L_1033: ldc.r4 0
L_1038: ldnull
L_1039: ldnull
L_103a: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_103f: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_1041: ldfld Verse.Pawn pawn
L_1046: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_1048: ldfld Verse.Thing item
L_104d: call LocalTargetInfo op_Implicit(Verse.Thing)
L_1052: ldstr "ReservedBy"
L_1057: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_105c: callvirt Void Add(Verse.FloatMenuOption)
L_1061: br Label #92
L_1066: Label #91
L_1066: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_1068: ldfld Verse.Pawn bestPackAnimal
L_106d: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_106f: ldfld Verse.Thing item
L_1074: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_1076: ldfld Verse.Thing item
L_107b: ldfld System.Int32 stackCount
L_1080: call Boolean WillBeOverEncumberedAfterPickingUp(Verse.Pawn, Verse.Thing,
Int32)
L_1085: brfalse Label #93
L_108a: ldarg.2
L_108b: ldstr "CannotGiveToPackAnimalAll"
L_1090: ldc.i4.1
L_1091: newarr System.Object
L_1096: dup
L_1097: ldc.i4.0
L_1098: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_109a: ldfld Verse.Thing item
L_109f: callvirt System.String get_Label()
L_10a4: stelem.ref
L_10a5: call System.String Translate(System.String, System.Object[])
L_10aa: ldstr " ("
L_10af: ldstr "TooHeavy"
L_10b4: call System.String Translate(System.String)
L_10b9: ldstr ")"
L_10be: call System.String Concat(System.String, System.String, System.String,
System.String)
L_10c3: ldnull
L_10c4: ldc.i4.4
L_10c5: ldnull
L_10c6: ldnull
L_10c7: ldc.r4 0
L_10cc: ldnull
L_10cd: ldnull
L_10ce: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_10d3: callvirt Void Add(Verse.FloatMenuOption)
L_10d8: br Label #94
L_10dd: Label #93
L_10dd: ldarg.2
L_10de: ldstr "GiveToPackAnimalAll"
L_10e3: ldc.i4.1
L_10e4: newarr System.Object
L_10e9: dup
L_10ea: ldc.i4.0
L_10eb: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_10ed: ldfld Verse.Thing item
L_10f2: callvirt System.String get_Label()
L_10f7: stelem.ref
L_10f8: call System.String Translate(System.String, System.Object[])
L_10fd: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_10ff: ldftn Void <>m__63D()
L_1105: newobj Void .ctor(Object, IntPtr)
L_110a: ldc.i4.5
L_110b: ldnull
L_110c: ldnull
L_110d: ldc.r4 0
L_1112: ldnull
L_1113: ldnull
L_1114: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_1119: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_111b: ldfld Verse.Pawn pawn
L_1120: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_1122: ldfld Verse.Thing item
L_1127: call LocalTargetInfo op_Implicit(Verse.Thing)
L_112c: ldstr "ReservedBy"
L_1131: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_1136: callvirt Void Add(Verse.FloatMenuOption)
L_113b: Label #94
L_113b: ldarg.2
L_113c: ldstr "GiveToPackAnimalSome"
L_1141: ldc.i4.1
L_1142: newarr System.Object
L_1147: dup
L_1148: ldc.i4.0
L_1149: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_114b: ldfld Verse.Thing item
L_1150: callvirt System.String get_Label()
L_1155: stelem.ref
L_1156: call System.String Translate(System.String, System.Object[])
L_115b: ldloc.s 45
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43D)
L_115d: ldftn Void <>m__63E()
L_1163: newobj Void .ctor(Object, IntPtr)
L_1168: ldc.i4.5
L_1169: ldnull
L_116a: ldnull
L_116b: ldc.r4 0
L_1170: ldnull
L_1171: ldnull
L_1172: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_1177: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_1179: ldfld Verse.Pawn pawn
L_117e: ldloc.s 44
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43C)
L_1180: ldfld Verse.Thing item
L_1185: call LocalTargetInfo op_Implicit(Verse.Thing)
L_118a: ldstr "ReservedBy"
L_118f: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_1194: callvirt Void Add(Verse.FloatMenuOption)
L_1199: Label #83
L_1199: Label #84
L_1199: Label #85
L_1199: Label #86
L_1199: Label #88
L_1199: Label #90
L_1199: Label #92
L_1199: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_119b: ldfld Verse.Pawn pawn
L_11a0: callvirt Verse.Map get_Map()
L_11a5: callvirt Boolean get_IsPlayerHome()
L_11aa: brtrue Label #95
L_11af: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_11b1: ldfld Verse.Pawn pawn
L_11b6: callvirt Verse.Map get_Map()
L_11bb: ldfld Verse.ExitMapGrid exitMapGrid
L_11c0: callvirt Boolean get_MapUsesExitGrid()
L_11c5: brfalse Label #96
L_11ca: ldarg.0
L_11cb: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_11cd: ldfld Verse.Pawn pawn
L_11d2: call RimWorld.TargetingParameters ForRescue(Verse.Pawn)
L_11d7: ldc.i4.1
L_11d8: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_11dd: callvirt IEnumerator`1 GetEnumerator()
L_11e2: stloc.s 23
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_11e4: br Label #97
L_11e9: Label #105
L_11e9: ldloc.s 23
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_11eb: callvirt LocalTargetInfo get_Current()
L_11f0: stloc.s 22 (Verse.LocalTargetInfo)
L_11f2: newobj Void .ctor()
L_11f7: stloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_11f9: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_11fb: ldloca.s 22 (Verse.LocalTargetInfo)
L_11fd: call Verse.Thing get_Thing()
L_1202: castclass Verse.Pawn
L_1207: stfld Verse.Pawn p
L_120c: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_120e: ldfld Verse.Pawn p
L_1213: callvirt RimWorld.Faction get_Faction()
L_1218: call RimWorld.Faction get_OfPlayer()
L_121d: beq Label #98
L_1222: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_1224: ldfld Verse.Pawn p
L_1229: callvirt RimWorld.Faction get_HostFaction()
L_122e: call RimWorld.Faction get_OfPlayer()
L_1233: beq Label #99
L_1238: br Label #100
L_123d: Label #98
L_123d: Label #99
L_123d: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_123f: ldfld Verse.Pawn pawn
L_1244: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_1246: ldfld Verse.Pawn p
L_124b: call LocalTargetInfo op_Implicit(Verse.Thing)
L_1250: ldc.i4.3
L_1251: ldc.i4.3
L_1252: ldc.i4.0
L_1253: ldc.i4.0
L_1254: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_1259: brtrue Label #101
L_125e: ldarg.2
L_125f: ldstr "CannotCarryToExit"
L_1264: ldc.i4.1
L_1265: newarr System.Object
L_126a: dup
L_126b: ldc.i4.0
L_126c: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_126e: ldfld Verse.Pawn p
L_1273: callvirt System.String get_Label()
L_1278: stelem.ref
L_1279: call System.String Translate(System.String, System.Object[])
L_127e: ldstr " ("
L_1283: ldstr "NoPath"
L_1288: call System.String Translate(System.String)
L_128d: ldstr ")"
L_1292: call System.String Concat(System.String, System.String, System.String,
System.String)
L_1297: ldnull
L_1298: ldc.i4.4
L_1299: ldnull
L_129a: ldnull
L_129b: ldc.r4 0
L_12a0: ldnull
L_12a1: ldnull
L_12a2: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_12a7: callvirt Void Add(Verse.FloatMenuOption)
L_12ac: br Label #102
L_12b1: Label #101
L_12b1: newobj Void .ctor()
L_12b6: stloc.s 47
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F)
L_12b8: ldloc.s 47
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F)
L_12ba: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_12bc: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_12c1: ldloc.s 47
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F)
L_12c3: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_12c5: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E
<>f__ref$1086
L_12ca: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_12cc: ldfld Verse.Pawn pawn
L_12d1: ldloc.s 47
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F)
L_12d3: ldflda Verse.IntVec3 exitSpot
L_12d8: ldc.i4.0
L_12d9: call Boolean TryFindBestExitSpot(Verse.Pawn, IntVec3 ByRef, TraverseMode)
L_12de: brtrue Label #103
L_12e3: ldarg.2
L_12e4: ldstr "CannotCarryToExit"
L_12e9: ldc.i4.1
L_12ea: newarr System.Object
L_12ef: dup
L_12f0: ldc.i4.0
L_12f1: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_12f3: ldfld Verse.Pawn p
L_12f8: callvirt System.String get_Label()
L_12fd: stelem.ref
L_12fe: call System.String Translate(System.String, System.Object[])
L_1303: ldstr " ("
L_1308: ldstr "NoPath"
L_130d: call System.String Translate(System.String)
L_1312: ldstr ")"
L_1317: call System.String Concat(System.String, System.String, System.String,
System.String)
L_131c: ldnull
L_131d: ldc.i4.4
L_131e: ldnull
L_131f: ldnull
L_1320: ldc.r4 0
L_1325: ldnull
L_1326: ldnull
L_1327: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_132c: callvirt Void Add(Verse.FloatMenuOption)
L_1331: br Label #104
L_1336: Label #103
L_1336: ldarg.2
L_1337: ldstr "CarryToExit"
L_133c: ldc.i4.1
L_133d: newarr System.Object
L_1342: dup
L_1343: ldc.i4.0
L_1344: ldloc.s 46
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43E)
L_1346: ldfld Verse.Pawn p
L_134b: callvirt System.String get_Label()
L_1350: stelem.ref
L_1351: call System.String Translate(System.String, System.Object[])
L_1356: ldloc.s 47
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey43F)
L_1358: ldftn Void <>m__63F()
L_135e: newobj Void .ctor(Object, IntPtr)
L_1363: ldc.i4.5
L_1364: ldnull
L_1365: ldnull
L_1366: ldc.r4 0
L_136b: ldnull
L_136c: ldnull
L_136d: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_1372: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_1374: ldfld Verse.Pawn pawn
L_1379: ldloc.s 22 (Verse.LocalTargetInfo)
L_137b: ldstr "ReservedBy"
L_1380: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_1385: callvirt Void Add(Verse.FloatMenuOption)
L_138a: Label #97
L_138a: Label #100
L_138a: Label #102
L_138a: Label #104
L_138a: ldloc.s 23
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_138c: callvirt Boolean MoveNext()
L_1391: brtrue Label #105
L_1396: leave Label #106
L_139b: ldloc.s 23
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_139d: brtrue Label #107
L_13a2: endfinally
L_13a3: Label #107
L_13a3: ldloc.s 23
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_13a5: callvirt Void Dispose()
L_13aa: endfinally
L_13ab: Label #95
L_13ab: Label #96
L_13ab: Label #106
L_13ab: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_13ad: ldfld Verse.Pawn pawn
L_13b2: ldfld Verse.Pawn_EquipmentTracker equipment
L_13b7: brfalse Label #108
L_13bc: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_13be: ldfld Verse.Pawn pawn
L_13c3: ldfld Verse.Pawn_EquipmentTracker equipment
L_13c8: callvirt Verse.ThingWithComps get_Primary()
L_13cd: brfalse Label #109
L_13d2: ldarg.0
L_13d3: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_13d5: ldfld Verse.Pawn pawn
L_13da: call RimWorld.TargetingParameters ForSelf(Verse.Pawn)
L_13df: ldc.i4.1
L_13e0: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_13e5: call Boolean Any[LocalTargetInfo](IEnumerable`1)
L_13ea: brfalse Label #110
L_13ef: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_13f1: ldftn Void <>m__640()
L_13f7: newobj Void .ctor(Object, IntPtr)
L_13fc: stloc.s 24 (System.Action)
L_13fe: ldarg.2
L_13ff: ldstr "Drop"
L_1404: ldc.i4.1
L_1405: newarr System.Object
L_140a: dup
L_140b: ldc.i4.0
L_140c: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_140e: ldfld Verse.Pawn pawn
L_1413: ldfld Verse.Pawn_EquipmentTracker equipment
L_1418: callvirt Verse.ThingWithComps get_Primary()
L_141d: callvirt System.String get_Label()
L_1422: stelem.ref
L_1423: call System.String Translate(System.String, System.Object[])
L_1428: ldloc.s 24 (System.Action)
L_142a: ldc.i4.4
L_142b: ldnull
L_142c: ldnull
L_142d: ldc.r4 0
L_1432: ldnull
L_1433: ldnull
L_1434: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_1439: callvirt Void Add(Verse.FloatMenuOption)
L_143e: Label #108
L_143e: Label #109
L_143e: Label #110
L_143e: ldarg.0
L_143f: call RimWorld.TargetingParameters ForTrade()
L_1444: ldc.i4.1
L_1445: call IEnumerable`1 TargetsAt(Vector3, RimWorld.TargetingParameters,
Boolean)
L_144a: callvirt IEnumerator`1 GetEnumerator()
L_144f: stloc.s 26
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_1451: br Label #111
L_1456: Label #115
L_1456: ldloc.s 26
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_1458: callvirt LocalTargetInfo get_Current()
L_145d: stloc.s 25 (Verse.LocalTargetInfo)
L_145f: ldloc.s 25 (Verse.LocalTargetInfo)
L_1461: stloc.s 27 (Verse.LocalTargetInfo)
L_1463: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_1465: ldfld Verse.Pawn pawn
L_146a: ldloc.s 27 (Verse.LocalTargetInfo)
L_146c: ldc.i4.1
L_146d: ldc.i4.3
L_146e: ldc.i4.0
L_146f: ldc.i4.0
L_1470: call Boolean CanReach(Verse.Pawn, LocalTargetInfo, PathEndMode, Danger,
Boolean, TraverseMode)
L_1475: brtrue Label #112
L_147a: ldarg.2
L_147b: ldstr "CannotTrade"
L_1480: call System.String Translate(System.String)
L_1485: ldstr " ("
L_148a: ldstr "NoPath"
L_148f: call System.String Translate(System.String)
L_1494: ldstr ")"
L_1499: call System.String Concat(System.String, System.String, System.String,
System.String)
L_149e: ldnull
L_149f: ldc.i4.4
L_14a0: ldnull
L_14a1: ldnull
L_14a2: ldc.r4 0
L_14a7: ldnull
L_14a8: ldnull
L_14a9: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_14ae: callvirt Void Add(Verse.FloatMenuOption)
L_14b3: br Label #113
L_14b8: Label #112
L_14b8: newobj Void .ctor()
L_14bd: stloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_14bf: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_14c1: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_14c3: stfld RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434
<>f__ref$1076
L_14c8: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_14ca: ldloca.s 27 (Verse.LocalTargetInfo)
L_14cc: call Verse.Thing get_Thing()
L_14d1: castclass Verse.Pawn
L_14d6: stfld Verse.Pawn pTarg
L_14db: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_14dd: ldftn Void <>m__641()
L_14e3: newobj Void .ctor(Object, IntPtr)
L_14e8: stloc.s 28 (System.Action)
L_14ea: ldsfld System.String Empty
L_14ef: stloc.s 29 (System.String)
L_14f1: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_14f3: ldfld Verse.Pawn pTarg
L_14f8: callvirt RimWorld.Faction get_Faction()
L_14fd: brfalse Label #114
L_1502: ldstr " ("
L_1507: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_1509: ldfld Verse.Pawn pTarg
L_150e: callvirt RimWorld.Faction get_Faction()
L_1513: callvirt System.String get_Name()
L_1518: ldstr ")"
L_151d: call System.String Concat(System.String, System.String, System.String)
L_1522: stloc.s 29 (System.String)
L_1524: Label #114
L_1524: ldarg.2
L_1525: ldloca.s 27 (Verse.LocalTargetInfo)
L_1527: call Verse.Thing get_Thing()
L_152c: stloc.s 49 (Verse.Thing)
L_152e: ldstr "TradeWith"
L_1533: ldc.i4.1
L_1534: newarr System.Object
L_1539: dup
L_153a: ldc.i4.0
L_153b: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_153d: ldfld Verse.Pawn pTarg
L_1542: callvirt System.String get_LabelShort()
L_1547: ldstr ", "
L_154c: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_154e: ldfld Verse.Pawn pTarg
L_1553: callvirt RimWorld.TraderKindDef get_TraderKind()
L_1558: ldfld System.String label
L_155d: call System.String Concat(System.String, System.String, System.String)
L_1562: stelem.ref
L_1563: call System.String Translate(System.String, System.Object[])
L_1568: ldloc.s 29 (System.String)
L_156a: call System.String Concat(System.String, System.String)
L_156f: ldloc.s 28 (System.Action)
L_1571: ldc.i4.7
L_1572: ldnull
L_1573: ldloc.s 49 (Verse.Thing)
L_1575: ldc.r4 0
L_157a: ldnull
L_157b: ldnull
L_157c: newobj Void .ctor(String, Action, MenuOptionPriority, Action, Thing,
Single, Func`2, WorldObject)
L_1581: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_1583: ldfld Verse.Pawn pawn
L_1588: ldloc.s 48
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey440)
L_158a: ldfld Verse.Pawn pTarg
L_158f: call LocalTargetInfo op_Implicit(Verse.Thing)
L_1594: ldstr "ReservedBy"
L_1599: call Verse.FloatMenuOption DecoratePrioritizedTask(Verse.FloatMenuOption,
Verse.Pawn, LocalTargetInfo, System.String)
L_159e: callvirt Void Add(Verse.FloatMenuOption)
L_15a3: Label #111
L_15a3: Label #113
L_15a3: ldloc.s 26
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_15a5: callvirt Boolean MoveNext()
L_15aa: brtrue Label #115
L_15af: leave Label #116
L_15b4: ldloc.s 26
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_15b6: brtrue Label #117
L_15bb: endfinally
L_15bc: Label #117
L_15bc: ldloc.s 26
(System.Collections.Generic.IEnumerator`1[Verse.LocalTargetInfo])
L_15be: callvirt Void Dispose()
L_15c3: endfinally
L_15c4: Label #116
L_15c4: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_15c6: ldfld Verse.Pawn pawn
L_15cb: callvirt Verse.Map get_Map()
L_15d0: ldfld Verse.ThingGrid thingGrid
L_15d5: ldloc.0
L_15d6: callvirt IEnumerable`1 ThingsAt(IntVec3)
L_15db: callvirt IEnumerator`1 GetEnumerator()
L_15e0: stloc.s 31 (System.Collections.Generic.IEnumerator`1[Verse.Thing])
L_15e2: br Label #118
L_15e7: Label #123
L_15e7: ldloc.s 31 (System.Collections.Generic.IEnumerator`1[Verse.Thing])
L_15e9: callvirt Verse.Thing get_Current()
L_15ee: stloc.s 30 (Verse.Thing)
L_15f0: ldloc.s 30 (Verse.Thing)
L_15f2: ldloc.s 34
(RimWorld.FloatMenuMakerMap+<AddHumanlikeOrders>c__AnonStorey434)
L_15f4: ldfld Verse.Pawn pawn
L_15f9: callvirt IEnumerable`1 GetFloatMenuOptions(Verse.Pawn)
L_15fe: callvirt IEnumerator`1 GetEnumerator()
L_1603: stloc.s 33
(System.Collections.Generic.IEnumerator`1[Verse.FloatMenuOption])
L_1605: br Label #119
L_160a: Label #120
L_160a: ldloc.s 33
(System.Collections.Generic.IEnumerator`1[Verse.FloatMenuOption])
L_160c: callvirt Verse.FloatMenuOption get_Current()
L_1611: stloc.s 32 (Verse.FloatMenuOption)
L_1613: ldarg.2
L_1614: ldloc.s 32 (Verse.FloatMenuOption)
L_1616: callvirt Void Add(Verse.FloatMenuOption)
L_161b: Label #119
L_161b: ldloc.s 33
(System.Collections.Generic.IEnumerator`1[Verse.FloatMenuOption])
L_161d: callvirt Boolean MoveNext()
L_1622: brtrue Label #120
L_1627: leave Label #121
L_162c: ldloc.s 33
(System.Collections.Generic.IEnumerator`1[Verse.FloatMenuOption])
L_162e: brtrue Label #122
L_1633: endfinally
L_1634: Label #122
L_1634: ldloc.s 33
(System.Collections.Generic.IEnumerator`1[Verse.FloatMenuOption])
L_1636: callvirt Void Dispose()
L_163b: endfinally
L_163c: Label #118
L_163c: Label #121
L_163c: ldloc.s 31 (System.Collections.Generic.IEnumerator`1[Verse.Thing])
L_163e: callvirt Boolean MoveNext()
L_1643: brtrue Label #123
L_1648: leave Label #124
L_164d: ldloc.s 31 (System.Collections.Generic.IEnumerator`1[Verse.Thing])
L_164f: brtrue Label #125
L_1654: endfinally
L_1655: Label #125
L_1655: ldloc.s 31 (System.Collections.Generic.IEnumerator`1[Verse.Thing])
L_1657: callvirt Void Dispose()
L_165c: endfinally
L_165d: Label #124
L_165d: br Label #0
L_1662: Label #0
L_1662: ldarga 2
L_1668: ldarg 1
L_166e: ldarg 0
L_1674: call Void
AddHumanlikeOrdersPostfix(System.Collections.Generic.List`1[Verse.FloatMenuOption]
ByRef, Verse.Pawn, Vector3)
L_1679: ldarg 0
L_167f: ldarg 1
L_1685: ldarg 2
L_168b: call Void AddHumanlikeOrdersPostFix(Vector3, Verse.Pawn,
System.Collections.Generic.List`1[Verse.FloatMenuOption])
L_1690: ldarg 0
L_1696: ldarg 1
L_169c: ldarg 2
L_16a2: call Void AddHumanlikeOrders(Vector3, Verse.Pawn,
System.Collections.Generic.List`1[Verse.FloatMenuOption])
L_16a7: ret
DONE

PATCHING RimWorld.Verb_ShootOneUse Void SelfConsume()


L_0000: ldarg.0
L_0001: ldfld Verse.ThingWithComps ownerEquipment
L_0006: brfalse Label #2
L_000b: ldarg.0
L_000c: ldfld Verse.ThingWithComps ownerEquipment
L_0011: callvirt Boolean get_Destroyed()
L_0016: brtrue Label #3
L_001b: ldarg.0
L_001c: ldfld Verse.ThingWithComps ownerEquipment
L_0021: ldc.i4.0
L_0022: callvirt Void Destroy(DestroyMode)
L_0027: Label #2
L_0027: Label #3
L_0027: br Label #0
L_002c: Label #0
L_002c: ldarg.0
L_002d: call Void SelfConsume(RimWorld.Verb_ShootOneUse)
L_0032: ret
DONE

PATCHING RimWorld.Verb_MeleeAttack Boolean TryCastShot()


L_0000: Local var #0 System.Boolean
L_0000: Local var #1 Verse.Pawn
L_0000: Local var #2 Verse.Thing
L_0000: Local var #3 Verse.SoundDef
L_0000: Local var #4 Verse.Pawn
L_0000: Local var #5 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 5 (System.Boolean)
L_0007: ldarg.0
L_0008: call Verse.Pawn get_CasterPawn()
L_000d: stloc.1
L_000e: ldloc.1
L_000f: ldfld Verse.Pawn_StanceTracker stances
L_0014: callvirt Boolean get_FullBodyBusy()
L_0019: brfalse Label #2
L_001e: ldc.i4.0
L_001f: br Label #0
L_0024: Label #2
L_0024: ldarg.0
L_0025: ldflda Verse.LocalTargetInfo currentTarget
L_002a: call Verse.Thing get_Thing()
L_002f: stloc.2
L_0030: ldarg.0
L_0031: ldloc.2
L_0032: call LocalTargetInfo op_Implicit(Verse.Thing)
L_0037: call Boolean CanHitTarget(LocalTargetInfo)
L_003c: brtrue Label #3
L_0041: ldc.i4.4
L_0042: newarr System.Object
L_0047: dup
L_0048: ldc.i4.0
L_0049: ldloc.1
L_004a: stelem.ref
L_004b: dup
L_004c: ldc.i4.1
L_004d: ldstr " meleed "
L_0052: stelem.ref
L_0053: dup
L_0054: ldc.i4.2
L_0055: ldloc.2
L_0056: stelem.ref
L_0057: dup
L_0058: ldc.i4.3
L_0059: ldstr " from out of melee position."
L_005e: stelem.ref
L_005f: call System.String Concat(System.Object[])
L_0064: call Void Warning(System.String)
L_0069: Label #3
L_0069: ldloc.1
L_006a: callvirt Verse.Pawn_DrawTracker get_Drawer()
L_006f: ldfld Verse.PawnRotator rotator
L_0074: ldloc.2
L_0075: callvirt Vector3 get_DrawPos()
L_007a: callvirt Void Face(Vector3)
L_007f: ldarg.0
L_0080: ldarg.0
L_0081: ldfld Verse.LocalTargetInfo currentTarget
L_0086: call Boolean IsTargetImmobile(LocalTargetInfo)
L_008b: brtrue Label #4
L_0090: ldloc.1
L_0091: ldfld RimWorld.Pawn_SkillTracker skills
L_0096: brfalse Label #5
L_009b: ldloc.1
L_009c: ldfld RimWorld.Pawn_SkillTracker skills
L_00a1: ldsfld RimWorld.SkillDef Melee
L_00a6: ldc.r4 250
L_00ab: ldc.i4.0
L_00ac: callvirt Void Learn(RimWorld.SkillDef, Single, Boolean)
L_00b1: Label #4
L_00b1: Label #5
L_00b1: call Single get_Value()
L_00b6: ldarg.0
L_00b7: ldloc.2
L_00b8: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00bd: call Single GetNonMissChance(LocalTargetInfo)
L_00c2: bge.un Label #6
L_00c7: call Single get_Value()
L_00cc: ldarg.0
L_00cd: ldloc.2
L_00ce: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00d3: call Single GetDodgeChance(LocalTargetInfo)
L_00d8: ble.un Label #7
L_00dd: ldc.i4.1
L_00de: stloc.0
L_00df: ldarg.0
L_00e0: ldarg.0
L_00e1: ldfld Verse.LocalTargetInfo currentTarget
L_00e6: call Void ApplyMeleeDamageToTarget(LocalTargetInfo)
L_00eb: ldloc.2
L_00ec: ldfld Verse.ThingDef def
L_00f1: ldfld Verse.ThingCategory category
L_00f6: ldc.i4.4
L_00f7: bne.un Label #8
L_00fc: ldarg.0
L_00fd: call Verse.SoundDef SoundHitBuilding()
L_0102: stloc.3
L_0103: br Label #9
L_0108: Label #8
L_0108: ldarg.0
L_0109: call Verse.SoundDef SoundHitPawn()
L_010e: stloc.3
L_010f: Label #9
L_010f: br Label #10
L_0114: Label #7
L_0114: ldc.i4.0
L_0115: stloc.0
L_0116: ldarg.0
L_0117: call Verse.SoundDef SoundMiss()
L_011c: stloc.3
L_011d: ldloc.2
L_011e: callvirt Vector3 get_DrawPos()
L_0123: ldloc.2
L_0124: callvirt Verse.Map get_Map()
L_0129: ldstr "TextMote_Dodge"
L_012e: call System.String Translate(System.String)
L_0133: ldc.r4 1.9
L_0138: call Void ThrowText(Vector3, Verse.Map, System.String, Single)
L_013d: Label #10
L_013d: br Label #11
L_0142: Label #6
L_0142: ldc.i4.0
L_0143: stloc.0
L_0144: ldarg.0
L_0145: call Verse.SoundDef SoundMiss()
L_014a: stloc.3
L_014b: Label #11
L_014b: ldloc.3
L_014c: ldloc.2
L_014d: callvirt IntVec3 get_Position()
L_0152: ldloc.1
L_0153: callvirt Verse.Map get_Map()
L_0158: ldc.i4.0
L_0159: newobj Void .ctor(IntVec3, Map, Boolean)
L_015e: call SoundInfo op_Implicit(TargetInfo)
L_0163: call Void PlayOneShot(Verse.SoundDef, SoundInfo)
L_0168: ldloc.1
L_0169: callvirt Verse.Pawn_DrawTracker get_Drawer()
L_016e: ldloc.2
L_016f: callvirt Void Notify_MeleeAttackOn(Verse.Thing)
L_0174: ldloc.2
L_0175: isinst Verse.Pawn
L_017a: stloc.s 4 (Verse.Pawn)
L_017c: ldloc.s 4 (Verse.Pawn)
L_017e: brfalse Label #12
L_0183: ldloc.s 4 (Verse.Pawn)
L_0185: callvirt Boolean get_Dead()
L_018a: brtrue Label #13
L_018f: ldloc.s 4 (Verse.Pawn)
L_0191: ldfld Verse.Pawn_StanceTracker stances
L_0196: ldc.i4.s 95
L_0198: callvirt Void StaggerFor(Int32)
L_019d: ldloc.1
L_019e: callvirt Verse.MentalStateDef get_MentalStateDef()
L_01a3: ldsfld Verse.MentalStateDef SocialFighting
L_01a8: bne.un Label #14
L_01ad: ldloc.s 4 (Verse.Pawn)
L_01af: callvirt Verse.MentalStateDef get_MentalStateDef()
L_01b4: ldsfld Verse.MentalStateDef SocialFighting
L_01b9: beq Label #15
L_01be: Label #14
L_01be: ldloc.s 4 (Verse.Pawn)
L_01c0: ldfld Verse.AI.Pawn_MindState mindState
L_01c5: ldloc.1
L_01c6: stfld Verse.Pawn meleeThreat
L_01cb: ldloc.s 4 (Verse.Pawn)
L_01cd: ldfld Verse.AI.Pawn_MindState mindState
L_01d2: call Verse.TickManager get_TickManager()
L_01d7: callvirt Int32 get_TicksGame()
L_01dc: stfld System.Int32 lastMeleeThreatHarmTick
L_01e1: Label #12
L_01e1: Label #13
L_01e1: Label #15
L_01e1: ldloc.1
L_01e2: callvirt Verse.Pawn_DrawTracker get_Drawer()
L_01e7: ldfld Verse.PawnRotator rotator
L_01ec: ldloc.2
L_01ed: callvirt IntVec3 get_Position()
L_01f2: callvirt Void FaceCell(IntVec3)
L_01f7: ldloc.1
L_01f8: ldfld Verse.Pawn_CallTracker caller
L_01fd: brfalse Label #16
L_0202: ldloc.1
L_0203: ldfld Verse.Pawn_CallTracker caller
L_0208: callvirt Void Notify_DidMeleeAttack()
L_020d: Label #16
L_020d: ldloc.0
L_020e: br Label #0
L_0213: Label #0
L_0213: stloc 5 (System.Boolean)
L_0215: ldarg.0
L_0216: call Void TryCastShot(RimWorld.Verb_MeleeAttack)
L_021b: ldloc 5 (System.Boolean)
L_021d: ret
DONE

PATCHING RimWorld.InspectPaneUtility Void DoTabs(IInspectPane)


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: Local var #3 System.Boolean
L_0000: Local var #4 Verse.InspectTabBase
L_0000: Local var #5
System.Collections.Generic.IEnumerator`1[[Verse.InspectTabBase, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6 UnityEngine.Rect
L_0000: Local var #7 System.Boolean
L_0000: Local var #8 System.Exception
L_0000: ldarg.0
L_0001: callvirt Single get_PaneTopY()
L_0006: ldc.r4 30
L_000b: sub
L_000c: stloc.0
L_000d: ldc.r4 360
L_0012: stloc.1
L_0013: ldc.r4 0
L_0018: stloc.2
L_0019: ldc.i4.0
L_001a: stloc.3
L_001b: ldarg.0
L_001c: callvirt IEnumerable`1 get_CurTabs()
L_0021: callvirt IEnumerator`1 GetEnumerator()
L_0026: stloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.InspectTabBase])
L_0028: br Label #2
L_002d: Label #9
L_002d: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.InspectTabBase])
L_002f: callvirt Verse.InspectTabBase get_Current()
L_0034: stloc.s 4 (Verse.InspectTabBase)
L_0036: ldloc.s 4 (Verse.InspectTabBase)
L_0038: callvirt Boolean get_IsVisible()
L_003d: brtrue Label #3
L_0042: br Label #4
L_0047: Label #3
L_0047: ldloca.s 6 (UnityEngine.Rect)
L_0049: ldloc.1
L_004a: ldloc.0
L_004b: ldc.r4 72
L_0050: ldc.r4 30
L_0055: call Void .ctor(Single, Single, Single, Single)
L_005a: ldloc.1
L_005b: stloc.2
L_005c: ldc.i4.1
L_005d: call Void set_Font(GameFont)
L_0062: ldloc.s 6 (UnityEngine.Rect)
L_0064: ldloc.s 4 (Verse.InspectTabBase)
L_0066: ldfld System.String labelKey
L_006b: call System.String Translate(System.String)
L_0070: ldc.i4.1
L_0071: ldc.i4.0
L_0072: ldc.i4.1
L_0073: call Boolean ButtonText(Rect, System.String, Boolean, Boolean, Boolean)
L_0078: brfalse Label #5
L_007d: ldloc.s 4 (Verse.InspectTabBase)
L_007f: ldarg.0
L_0080: call Void InterfaceToggleTab(Verse.InspectTabBase, IInspectPane)
L_0085: Label #5
L_0085: ldloc.s 4 (Verse.InspectTabBase)
L_0087: callvirt System.Type GetType()
L_008c: ldarg.0
L_008d: callvirt System.Type get_OpenTabType()
L_0092: ceq
L_0094: stloc.s 7 (System.Boolean)
L_0096: ldloc.s 7 (System.Boolean)
L_0098: brtrue Label #6
L_009d: ldloc.s 4 (Verse.InspectTabBase)
L_009f: callvirt System.String get_TutorHighlightTagClosed()
L_00a4: call Boolean NullOrEmpty(System.String)
L_00a9: brtrue Label #7
L_00ae: ldloc.s 6 (UnityEngine.Rect)
L_00b0: ldloc.s 4 (Verse.InspectTabBase)
L_00b2: callvirt System.String get_TutorHighlightTagClosed()
L_00b7: call Void HighlightOpportunity(Rect, System.String)
L_00bc: Label #6
L_00bc: Label #7
L_00bc: ldloc.s 7 (System.Boolean)
L_00be: brfalse Label #8
L_00c3: ldloc.s 4 (Verse.InspectTabBase)
L_00c5: callvirt Void DoTabGUI()
L_00ca: ldarg.0
L_00cb: ldc.r4 700
L_00d0: callvirt Void set_RecentHeight(Single)
L_00d5: ldc.i4.1
L_00d6: stloc.3
L_00d7: Label #8
L_00d7: ldloc.1
L_00d8: ldc.r4 72
L_00dd: sub
L_00de: stloc.1
L_00df: ldloc.1
L_00e0: ldc.r4 0
L_00e9: bge.un Label #15
L_00ee: ldc.r4 360
L_00f3: stloc.1
L_00f4: ldloc.0
L_00f5: ldc.r4 30
L_00fa: sub
L_00fb: stloc.0
L_00fc: Label #15
L_00fc: nop
L_00fd: Label #2
L_00fd: Label #4
L_00fd: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.InspectTabBase])
L_00ff: callvirt Boolean MoveNext()
L_0104: brtrue Label #9
L_0109: leave Label #10
L_010e: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.InspectTabBase])
L_0110: brtrue Label #11
L_0115: endfinally
L_0116: Label #11
L_0116: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.InspectTabBase])
L_0118: callvirt Void Dispose()
L_011d: endfinally
L_011e: Label #10
L_011e: ldloc.3
L_011f: brfalse Label #12
L_0124: ldc.r4 0
L_0129: ldloc.0
L_012a: ldloc.2
L_012b: ldc.r4 30
L_0130: newobj Void .ctor(Single, Single, Single, Single)
L_0135: ldsfld UnityEngine.Texture2D InspectTabButtonFillTex
L_013a: call Void DrawTexture(Rect, UnityEngine.Texture)
L_013f: Label #12
L_013f: leave Label #13
L_0144: stloc.s 8 (System.Exception)
L_0146: ldloc.s 8 (System.Exception)
L_0148: callvirt System.String ToString()
L_014d: ldc.i4 742783
L_0152: call Void ErrorOnce(System.String, Int32)
L_0157: leave Label #14
L_015c: Label #13
L_015c: Label #14
L_015c: br Label #0
L_0161: Label #0
L_0161: ret
DONE

PATCHING RimWorld.InteractionUtility Boolean


CanReceiveRandomInteraction(Verse.Pawn)
L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldarg.0
L_0007: call Boolean CanReceiveInteraction(Verse.Pawn)
L_000c: brtrue Label #2
L_0011: ldc.i4.0
L_0012: br Label #0
L_0017: Label #2
L_0017: ldarg.0
L_0018: callvirt Verse.RaceProperties get_RaceProps()
L_001d: callvirt Boolean get_Humanlike()
L_0022: brfalse Label #3
L_0027: ldarg.0
L_0028: callvirt Boolean get_Downed()
L_002d: brtrue Label #4
L_0032: ldarg.0
L_0033: callvirt Boolean get_InAggroMentalState()
L_0038: brfalse Label #5
L_003d: Label #3
L_003d: Label #4
L_003d: ldc.i4.0
L_003e: br Label #0
L_0043: Label #5
L_0043: ldc.i4.1
L_0044: br Label #0
L_0049: Label #0
L_0049: stloc 0 (System.Boolean)
L_004a: ldloca 0 (System.Boolean)
L_004c: ldarg 0
L_0052: call Void PsychologyAddonsForCanReceive(Boolean ByRef, Verse.Pawn)
L_0057: ldloc 0 (System.Boolean)
L_0058: ret
DONE

PATCHING RimWorld.InteractionUtility Boolean


CanInitiateRandomInteraction(Verse.Pawn)
L_0000: Local var #0 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 0 (System.Boolean)
L_0006: ldarg.0
L_0007: call Boolean CanInitiateInteraction(Verse.Pawn)
L_000c: brtrue Label #2
L_0011: ldc.i4.0
L_0012: br Label #0
L_0017: Label #2
L_0017: ldarg.0
L_0018: callvirt Verse.RaceProperties get_RaceProps()
L_001d: callvirt Boolean get_Humanlike()
L_0022: brfalse Label #3
L_0027: ldarg.0
L_0028: callvirt Boolean get_Downed()
L_002d: brtrue Label #4
L_0032: ldarg.0
L_0033: callvirt Boolean get_InAggroMentalState()
L_0038: brfalse Label #5
L_003d: Label #3
L_003d: Label #4
L_003d: ldc.i4.0
L_003e: br Label #0
L_0043: Label #5
L_0043: ldc.i4.1
L_0044: br Label #0
L_0049: Label #0
L_0049: stloc 0 (System.Boolean)
L_004a: ldloca 0 (System.Boolean)
L_004c: ldarg 0
L_0052: call Void PsychologyAddonsForCanInitiate(Boolean ByRef, Verse.Pawn)
L_0057: ldloc 0 (System.Boolean)
L_0058: ret
DONE

PATCHING RimWorld.InteractionWorker_DeepTalk Single


RandomSelectionWeight(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: ldc.r4 0
L_0005: stloc 1 (System.Single)
L_0006: ldarg.0
L_0007: ldarg 1
L_000d: ldarg 2
L_0013: call Boolean PsychologyException(RimWorld.InteractionWorker_DeepTalk,
Verse.Pawn, Verse.Pawn)
L_0018: brfalse Label #1
L_001d: ldc.r4 0.075
L_0022: stloc.0
L_0023: ldloc.0
L_0024: ldarg.0
L_0025: ldfld Verse.SimpleCurve CompatibilityFactorCurve
L_002a: ldarg.1
L_002b: ldfld RimWorld.Pawn_RelationsTracker relations
L_0030: ldarg.2
L_0031: callvirt Single CompatibilityWith(Verse.Pawn)
L_0036: callvirt Single Evaluate(Single)
L_003b: mul
L_003c: stloc.0
L_003d: ldloc.0
L_003e: br Label #0
L_0043: Label #0
L_0043: stloc 1 (System.Single)
L_0044: Label #1
L_0044: ldloc 1 (System.Single)
L_0045: ret
DONE

PATCHING RimWorld.NegativeInteractionUtility Single


NegativeInteractionChanceFactor(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: ldc.r4 0
L_0005: stloc 1 (System.Single)
L_0006: ldarg.0
L_0007: ldfld RimWorld.Pawn_StoryTracker story
L_000c: ldfld RimWorld.TraitSet traits
L_0011: ldsfld RimWorld.TraitDef Kind
L_0016: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_001b: brfalse Label #2
L_0020: ldc.r4 0
L_0025: br Label #0
L_002a: Label #2
L_002a: ldc.r4 1
L_002f: stloc.0
L_0030: ldloc.0
L_0031: ldsfld Verse.SimpleCurve OpinionFactorCurve
L_0036: ldarg.0
L_0037: ldfld RimWorld.Pawn_RelationsTracker relations
L_003c: ldarg.1
L_003d: callvirt Int32 OpinionOf(Verse.Pawn)
L_0042: conv.r4
L_0043: callvirt Single Evaluate(Single)
L_0048: mul
L_0049: stloc.0
L_004a: ldloc.0
L_004b: ldsfld Verse.SimpleCurve CompatibilityFactorCurve
L_0050: ldarg.0
L_0051: ldfld RimWorld.Pawn_RelationsTracker relations
L_0056: ldarg.1
L_0057: callvirt Single CompatibilityWith(Verse.Pawn)
L_005c: callvirt Single Evaluate(Single)
L_0061: mul
L_0062: stloc.0
L_0063: ldarg.0
L_0064: ldfld RimWorld.Pawn_StoryTracker story
L_0069: ldfld RimWorld.TraitSet traits
L_006e: ldsfld RimWorld.TraitDef Abrasive
L_0073: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0078: brfalse Label #3
L_007d: ldloc.0
L_007e: ldc.r4 2.3
L_0083: mul
L_0084: stloc.0
L_0085: Label #3
L_0085: ldloc.0
L_0086: br Label #0
L_008b: Label #0
L_008b: stloc 1 (System.Single)
L_008c: ldloca 1 (System.Single)
L_008e: ldarg 0
L_0094: ldarg 1
L_009a: call Void NewFormula(Single ByRef, Verse.Pawn, Verse.Pawn)
L_009f: ldloc 1 (System.Single)
L_00a0: ret
DONE

PATCHING RimWorld.Page_ConfigureStartingPawns Void DoWindowContents(Rect)


L_0000: Local var #0 UnityEngine.Rect
L_0000: Local var #1 UnityEngine.Rect
L_0000: Local var #2 UnityEngine.Rect
L_0000: Local var #3 UnityEngine.Rect
L_0000: Local var #4 UnityEngine.Rect
L_0000: Local var #5 UnityEngine.Rect
L_0000: Local var #6 UnityEngine.Rect
L_0000: Local var #7 UnityEngine.Vector2
L_0000: Local var #8 UnityEngine.Vector2
L_0000: Local var #9 UnityEngine.Vector2
L_0000: Local var #10 UnityEngine.Vector3
L_0000: ldarg.0
L_0001: ldarg.1
L_0002: call Void DrawPageTitle(Rect)
L_0007: ldarg.0
L_0008: ldarg.1
L_0009: ldc.r4 30
L_000e: ldc.i4.0
L_000f: call Rect GetMainRect(Rect, Single, Boolean)
L_0014: stloc.0
L_0015: ldloc.0
L_0016: ldc.i4.1
L_0017: call Void DrawMenuSection(Rect, Boolean)
L_001c: ldloc.0
L_001d: call Verse.GameInitData get_GameInitData()
L_0022: ldfld System.Collections.Generic.List`1[Verse.Pawn] startingPawns
L_0027: ldarg.0
L_0028: ldftn Verse.TabRecord <DoWindowContents>m__612(Verse.Pawn)
L_002e: newobj Void .ctor(Object, IntPtr)
L_0033: call IEnumerable`1 Select[Pawn,TabRecord](IEnumerable`1,
System.Func`2[Verse.Pawn,Verse.TabRecord])
L_0038: call Verse.TabRecord DrawTabs(Rect, IEnumerable`1)
L_003d: pop
L_003e: ldloc.0
L_003f: ldc.r4 17
L_0044: call Rect ContractedBy(Rect, Single)
L_0049: stloc.1
L_004a: ldloc.1
L_004b: stloc.2
L_004c: ldloca.s 2 (UnityEngine.Rect)
L_004e: ldc.r4 100
L_0053: call Void set_width(Single)
L_0058: ldloca.s 2 (UnityEngine.Rect)
L_005a: call Single get_xMin()
L_005f: ldloca.s 2 (UnityEngine.Rect)
L_0061: call Single get_width()
L_0066: ldsfld UnityEngine.Vector2 PawnPortraitSize
L_006b: stloc.s 7 (UnityEngine.Vector2)
L_006d: ldloca.s 7 (UnityEngine.Vector2)
L_006f: ldfld System.Single x
L_0074: sub
L_0075: ldc.r4 2
L_007a: div
L_007b: add
L_007c: ldc.r4 10
L_0081: sub
L_0082: ldloca.s 2 (UnityEngine.Rect)
L_0084: call Single get_yMin()
L_0089: ldc.r4 20
L_008e: add
L_008f: ldsfld UnityEngine.Vector2 PawnPortraitSize
L_0094: stloc.s 8 (UnityEngine.Vector2)
L_0096: ldloca.s 8 (UnityEngine.Vector2)
L_0098: ldfld System.Single x
L_009d: ldsfld UnityEngine.Vector2 PawnPortraitSize
L_00a2: stloc.s 9 (UnityEngine.Vector2)
L_00a4: ldloca.s 9 (UnityEngine.Vector2)
L_00a6: ldfld System.Single y
L_00ab: newobj Void .ctor(Single, Single, Single, Single)
L_00b0: ldarg.0
L_00b1: ldfld Verse.Pawn curPawn
L_00b6: ldsfld UnityEngine.Vector2 PawnPortraitSize
L_00bb: ldloca.s 10 (UnityEngine.Vector3)
L_00bd: initobj UnityEngine.Vector3
L_00c3: ldloc.s 10 (UnityEngine.Vector3)
L_00c5: ldc.r4 1
L_00ca: call UnityEngine.RenderTexture Get(Verse.Pawn, Vector2, Vector3, Single)
L_00cf: call Void DrawTexture(Rect, UnityEngine.Texture)
L_00d4: ldloc.1
L_00d5: stloc.3
L_00d6: ldloca.s 3 (UnityEngine.Rect)
L_00d8: ldloca.s 2 (UnityEngine.Rect)
L_00da: call Single get_xMax()
L_00df: call Void set_xMin(Single)
L_00e4: ldloc.3
L_00e5: stloc.s 4 (UnityEngine.Rect)
L_00e7: ldloca.s 4 (UnityEngine.Rect)
L_00e9: ldc.r4 475
L_00ee: call Void set_width(Single)
L_00f3: ldloc.s 4 (UnityEngine.Rect)
L_00f5: ldarg.0
L_00f6: ldfld Verse.Pawn curPawn
L_00fb: ldarg.0
L_00fc: ldftn Void RandomizeCurPawn()
L_0102: newobj Void .ctor(Object, IntPtr)
L_0107: call Void DrawCharacterCard(Rect, Verse.Pawn, System.Action)
L_010c: ldloca.s 5 (UnityEngine.Rect)
L_010e: ldloca.s 4 (UnityEngine.Rect)
L_0110: call Single get_xMax()
L_0115: ldc.r4 5
L_011a: add
L_011b: ldloca.s 3 (UnityEngine.Rect)
L_011d: call Single get_y()
L_0122: ldc.r4 100
L_0127: add
L_0128: ldloca.s 3 (UnityEngine.Rect)
L_012a: call Single get_width()
L_012f: ldloca.s 4 (UnityEngine.Rect)
L_0131: call Single get_width()
L_0136: sub
L_0137: ldc.r4 5
L_013c: sub
L_013d: ldc.r4 150
L_0142: call Void .ctor(Single, Single, Single, Single)
L_0147: ldc.i4.2
L_0148: call Void set_Font(GameFont)
L_014d: ldloc.s 5 (UnityEngine.Rect)
L_014f: ldstr "Health"
L_0154: call System.String Translate(System.String)
L_0159: call Void Label(Rect, System.String)
L_015e: ldc.i4.1
L_015f: call Void set_Font(GameFont)
L_0164: ldloca.s 5 (UnityEngine.Rect)
L_0166: dup
L_0167: call Single get_yMin()
L_016c: ldc.r4 35
L_0171: add
L_0172: call Void set_yMin(Single)
L_0177: ldloc.s 5 (UnityEngine.Rect)
L_0179: ldarg.0
L_017a: ldfld Verse.Pawn curPawn
L_017f: ldc.i4.1
L_0180: call Void DrawHediffListing(Rect, Verse.Pawn, Boolean)
L_0185: ldloca.s 6 (UnityEngine.Rect)
L_0187: ldloca.s 5 (UnityEngine.Rect)
L_0189: call Single get_x()
L_018e: ldloca.s 5 (UnityEngine.Rect)
L_0190: call Single get_yMax()
L_0195: ldloca.s 5 (UnityEngine.Rect)
L_0197: call Single get_width()
L_019c: ldc.r4 150
L_01a1: call Void .ctor(Single, Single, Single, Single)
L_01a6: ldc.i4.2
L_01a7: call Void set_Font(GameFont)
L_01ac: ldloc.s 6 (UnityEngine.Rect)
L_01ae: ldstr "Relations"
L_01b3: call System.String Translate(System.String)
L_01b8: call Void Label(Rect, System.String)
L_01bd: ldc.i4.1
L_01be: call Void set_Font(GameFont)
L_01c3: ldloca.s 6 (UnityEngine.Rect)
L_01c5: dup
L_01c6: call Single get_yMin()
L_01cb: ldc.r4 35
L_01d0: add
L_01d1: call Void set_yMin(Single)
L_01d6: ldloc.s 6 (UnityEngine.Rect)
L_01d8: ldarg.0
L_01d9: ldfld Verse.Pawn curPawn
L_01de: call Void DrawRelationsAndOpinions(Rect, Verse.Pawn)
L_01e3: ldloca.s 11 (UnityEngine.Rect)
L_01e5: ldloca.s 6
L_01ea: call Single get_x()
L_01ef: ldloca.s 6
L_01f4: call Single get_yMax()
L_01f9: ldloca.s 6
L_01fe: call Single get_width()
L_0203: ldc.r4 180
L_0208: call Void .ctor(Single, Single, Single, Single)
L_020d: ldc.i4.2
L_020e: call Void set_Font(GameFont)
L_0213: ldloc.s 11 (UnityEngine.Rect)
L_0215: ldstr "TabPsyche"
L_021a: call System.String Translate(System.String)
L_021f: call Void Label(Rect, System.String)
L_0224: ldc.i4.1
L_0225: call Void set_Font(GameFont)
L_022a: ldloca.s 11 (UnityEngine.Rect)
L_022c: dup
L_022d: call Single get_yMin()
L_0232: ldc.r4 20
L_0237: add
L_0238: call Void set_yMin(Single)
L_023d: ldloc.s 11 (UnityEngine.Rect)
L_023f: ldarg.0
L_0240: ldfld Verse.Pawn curPawn
L_0245: call Void DrawPsycheMenuCard(Rect, Verse.Pawn)
L_024a: ldarg.0
L_024b: ldarg.1
L_024c: ldstr "Start"
L_0251: call System.String Translate(System.String)
L_0256: ldnull
L_0257: ldnull
L_0258: ldc.i4.1
L_0259: call Void DoBottomButtons(Rect, System.String, System.String,
System.Action, Boolean)
L_025e: br Label #0
L_0263: Label #0
L_0263: ldarg 1
L_0269: ldarg.0
L_026a: call Void DoWindowContentsPostfix(Rect,
RimWorld.Page_ConfigureStartingPawns)
L_026f: ret
DONE

PATCHING RimWorld.TraitSet Void GainTrait(RimWorld.Trait)


L_0000: ldarg 1
L_0006: ldarg.0
L_0007: call Boolean GainTraitPrefix(RimWorld.Trait, RimWorld.TraitSet)
L_000c: brfalse Label #1
L_0011: ldarga 0
L_0017: ldarg 1
L_001d: call Boolean KinseyException(RimWorld.TraitSet ByRef, RimWorld.Trait)
L_0022: brfalse Label #1
L_0027: ldarg.0
L_0028: ldarg.1
L_0029: ldfld RimWorld.TraitDef def
L_002e: call Boolean HasTrait(RimWorld.TraitDef)
L_0033: brfalse Label #2
L_0038: ldarg.0
L_0039: ldfld Verse.Pawn pawn
L_003e: ldstr " already has trait "
L_0043: ldarg.1
L_0044: ldfld RimWorld.TraitDef def
L_0049: call System.String Concat(System.Object, System.Object, System.Object)
L_004e: call Void Warning(System.String)
L_0053: br Label #0
L_0058: Label #2
L_0058: ldarg.0
L_0059: ldfld System.Collections.Generic.List`1[RimWorld.Trait] allTraits
L_005e: ldarg.1
L_005f: callvirt Void Add(RimWorld.Trait)
L_0064: ldarg.0
L_0065: ldfld Verse.Pawn pawn
L_006a: ldfld RimWorld.Pawn_WorkSettings workSettings
L_006f: brfalse Label #3
L_0074: ldarg.0
L_0075: ldfld Verse.Pawn pawn
L_007a: ldfld RimWorld.Pawn_WorkSettings workSettings
L_007f: callvirt Void Notify_GainedTrait()
L_0084: Label #3
L_0084: ldarg.0
L_0085: ldfld Verse.Pawn pawn
L_008a: ldfld RimWorld.Pawn_StoryTracker story
L_008f: callvirt Void Notify_TraitChanged()
L_0094: ldarg.0
L_0095: ldfld Verse.Pawn pawn
L_009a: ldfld RimWorld.Pawn_SkillTracker skills
L_009f: brfalse Label #4
L_00a4: ldarg.0
L_00a5: ldfld Verse.Pawn pawn
L_00aa: ldfld RimWorld.Pawn_SkillTracker skills
L_00af: callvirt Void Notify_SkillDisablesChanged()
L_00b4: Label #4
L_00b4: ldarg.0
L_00b5: ldfld Verse.Pawn pawn
L_00ba: callvirt Boolean get_Dead()
L_00bf: brtrue Label #5
L_00c4: ldarg.0
L_00c5: ldfld Verse.Pawn pawn
L_00ca: callvirt Verse.RaceProperties get_RaceProps()
L_00cf: callvirt Boolean get_Humanlike()
L_00d4: brfalse Label #6
L_00d9: ldarg.0
L_00da: ldfld Verse.Pawn pawn
L_00df: ldfld RimWorld.Pawn_NeedsTracker needs
L_00e4: ldfld RimWorld.Need_Mood mood
L_00e9: ldfld RimWorld.ThoughtHandler thoughts
L_00ee: ldfld RimWorld.SituationalThoughtHandler situational
L_00f3: callvirt Void Notify_SituationalThoughtsDirty()
L_00f8: Label #5
L_00f8: Label #6
L_00f8: br Label #0
L_00fd: Label #0
L_00fd: Label #1
L_00fd: ret
DONE

PATCHING RimWorld.InteractionWorker_MarriageProposal Single


AcceptanceChance(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: ldc.r4 0
L_0005: stloc 1 (System.Single)
L_0006: ldarg.0
L_0007: ldloca 1 (System.Single)
L_0009: ldarg 1
L_000f: ldarg 2
L_0015: call Boolean
PsychologyException(RimWorld.InteractionWorker_MarriageProposal, Single ByRef,
Verse.Pawn, Verse.Pawn)
L_001a: brfalse Label #1
L_001f: ldc.r4 0.9
L_0024: stloc.0
L_0025: ldloc.0
L_0026: ldc.r4 -20
L_002b: ldc.r4 60
L_0030: ldc.r4 0
L_0035: ldc.r4 1
L_003a: ldarg.2
L_003b: ldfld RimWorld.Pawn_RelationsTracker relations
L_0040: ldarg.1
L_0041: callvirt Int32 OpinionOf(Verse.Pawn)
L_0046: conv.r4
L_0047: call Single LerpDouble(Single, Single, Single, Single, Single)
L_004c: call Single Clamp01(Single)
L_0051: mul
L_0052: stloc.0
L_0053: ldloc.0
L_0054: call Single Clamp01(Single)
L_0059: br Label #0
L_005e: Label #0
L_005e: stloc 1 (System.Single)
L_005f: Label #1
L_005f: ldloc 1 (System.Single)
L_0060: ret
DONE

PATCHING RimWorld.InteractionWorker_MarriageProposal Void Interacted(Verse.Pawn,


Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 System.Boolean
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: ldarg 2
L_000d: ldarg 3
L_0013: call Boolean NewInteracted(RimWorld.InteractionWorker_MarriageProposal,
Verse.Pawn, Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0018: brfalse Label #1
L_001d: ldarg.0
L_001e: ldarg.1
L_001f: ldarg.2
L_0020: call Single AcceptanceChance(Verse.Pawn, Verse.Pawn)
L_0025: stloc.0
L_0026: call Single get_Value()
L_002b: ldloc.0
L_002c: clt
L_002e: stloc.1
L_002f: ldc.i4.0
L_0030: stloc.2
L_0031: ldloc.1
L_0032: brfalse Label #2
L_0037: ldarg.1
L_0038: ldfld RimWorld.Pawn_RelationsTracker relations
L_003d: ldsfld RimWorld.PawnRelationDef Lover
L_0042: ldarg.2
L_0043: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0048: ldarg.1
L_0049: ldfld RimWorld.Pawn_RelationsTracker relations
L_004e: ldsfld RimWorld.PawnRelationDef Fiance
L_0053: ldarg.2
L_0054: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0059: ldarg.1
L_005a: ldfld RimWorld.Pawn_NeedsTracker needs
L_005f: ldfld RimWorld.Need_Mood mood
L_0064: ldfld RimWorld.ThoughtHandler thoughts
L_0069: ldfld RimWorld.MemoryThoughtHandler memories
L_006e: ldsfld RimWorld.ThoughtDef RejectedMyProposal
L_0073: ldarg.2
L_0074: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_0079: ldarg.2
L_007a: ldfld RimWorld.Pawn_NeedsTracker needs
L_007f: ldfld RimWorld.Need_Mood mood
L_0084: ldfld RimWorld.ThoughtHandler thoughts
L_0089: ldfld RimWorld.MemoryThoughtHandler memories
L_008e: ldsfld RimWorld.ThoughtDef RejectedMyProposal
L_0093: ldarg.1
L_0094: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_0099: ldarg.1
L_009a: ldfld RimWorld.Pawn_NeedsTracker needs
L_009f: ldfld RimWorld.Need_Mood mood
L_00a4: ldfld RimWorld.ThoughtHandler thoughts
L_00a9: ldfld RimWorld.MemoryThoughtHandler memories
L_00ae: ldsfld RimWorld.ThoughtDef RejectedMyProposalMood
L_00b3: ldarg.2
L_00b4: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00b9: ldarg.2
L_00ba: ldfld RimWorld.Pawn_NeedsTracker needs
L_00bf: ldfld RimWorld.Need_Mood mood
L_00c4: ldfld RimWorld.ThoughtHandler thoughts
L_00c9: ldfld RimWorld.MemoryThoughtHandler memories
L_00ce: ldsfld RimWorld.ThoughtDef RejectedMyProposalMood
L_00d3: ldarg.1
L_00d4: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00d9: ldarg.1
L_00da: ldfld RimWorld.Pawn_NeedsTracker needs
L_00df: ldfld RimWorld.Need_Mood mood
L_00e4: ldfld RimWorld.ThoughtHandler thoughts
L_00e9: ldfld RimWorld.MemoryThoughtHandler memories
L_00ee: ldsfld RimWorld.ThoughtDef IRejectedTheirProposal
L_00f3: ldarg.2
L_00f4: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00f9: ldarg.2
L_00fa: ldfld RimWorld.Pawn_NeedsTracker needs
L_00ff: ldfld RimWorld.Need_Mood mood
L_0104: ldfld RimWorld.ThoughtHandler thoughts
L_0109: ldfld RimWorld.MemoryThoughtHandler memories
L_010e: ldsfld RimWorld.ThoughtDef IRejectedTheirProposal
L_0113: ldarg.1
L_0114: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_0119: ldarg.3
L_011a: ldsfld Verse.RulePackDef Sentence_MarriageProposalAccepted
L_011f: callvirt Void Add(Verse.RulePackDef)
L_0124: br Label #3
L_0129: Label #2
L_0129: ldarg.1
L_012a: ldfld RimWorld.Pawn_NeedsTracker needs
L_012f: ldfld RimWorld.Need_Mood mood
L_0134: ldfld RimWorld.ThoughtHandler thoughts
L_0139: ldfld RimWorld.MemoryThoughtHandler memories
L_013e: ldsfld RimWorld.ThoughtDef RejectedMyProposal
L_0143: ldarg.2
L_0144: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0149: ldarg.2
L_014a: ldfld RimWorld.Pawn_NeedsTracker needs
L_014f: ldfld RimWorld.Need_Mood mood
L_0154: ldfld RimWorld.ThoughtHandler thoughts
L_0159: ldfld RimWorld.MemoryThoughtHandler memories
L_015e: ldsfld RimWorld.ThoughtDef IRejectedTheirProposal
L_0163: ldarg.1
L_0164: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0169: ldarg.3
L_016a: ldsfld Verse.RulePackDef Sentence_MarriageProposalRejected
L_016f: callvirt Void Add(Verse.RulePackDef)
L_0174: call Single get_Value()
L_0179: ldc.r4 0.4
L_017e: bge.un Label #4
L_0183: ldarg.1
L_0184: ldfld RimWorld.Pawn_RelationsTracker relations
L_0189: ldsfld RimWorld.PawnRelationDef Lover
L_018e: ldarg.2
L_018f: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0194: ldarg.1
L_0195: ldfld RimWorld.Pawn_RelationsTracker relations
L_019a: ldsfld RimWorld.PawnRelationDef ExLover
L_019f: ldarg.2
L_01a0: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_01a5: ldc.i4.1
L_01a6: stloc.2
L_01a7: ldarg.3
L_01a8: ldsfld Verse.RulePackDef Sentence_MarriageProposalRejectedBrokeUp
L_01ad: callvirt Void Add(Verse.RulePackDef)
L_01b2: Label #3
L_01b2: Label #4
L_01b2: ldarg.1
L_01b3: callvirt Boolean get_IsColonist()
L_01b8: brtrue Label #5
L_01bd: ldarg.2
L_01be: callvirt Boolean get_IsColonist()
L_01c3: brfalse Label #6
L_01c8: Label #5
L_01c8: ldarg.0
L_01c9: ldarg.1
L_01ca: ldarg.2
L_01cb: ldloc.1
L_01cc: ldloc.2
L_01cd: call Void SendLetter(Verse.Pawn, Verse.Pawn, Boolean, Boolean)
L_01d2: Label #6
L_01d2: br Label #0
L_01d7: Label #0
L_01d7: Label #1
L_01d7: ret
DONE

PATCHING RimWorld.InteractionWorker_MarriageProposal Single


RandomSelectionWeight(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 RimWorld.DirectPawnRelation
L_0000: Local var #1 Verse.Pawn
L_0000: Local var #2 Verse.Pawn
L_0000: Local var #3 System.Single
L_0000: Local var #4 System.Int32
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: ldc.r4 0
L_0005: stloc 6 (System.Single)
L_0007: ldarg.1
L_0008: ldfld RimWorld.Pawn_RelationsTracker relations
L_000d: ldsfld RimWorld.PawnRelationDef Lover
L_0012: ldarg.2
L_0013: callvirt RimWorld.DirectPawnRelation
GetDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0018: stloc.0
L_0019: ldloc.0
L_001a: brtrue Label #2
L_001f: ldc.r4 0
L_0024: br Label #0
L_0029: Label #2
L_0029: ldarg.2
L_002a: call Verse.Pawn GetSpouse(Verse.Pawn)
L_002f: stloc.1
L_0030: ldarg.1
L_0031: call Verse.Pawn GetSpouse(Verse.Pawn)
L_0036: stloc.2
L_0037: ldloc.1
L_0038: brfalse Label #3
L_003d: ldloc.1
L_003e: callvirt Boolean get_Dead()
L_0043: brfalse Label #4
L_0048: Label #3
L_0048: ldloc.2
L_0049: brfalse Label #5
L_004e: ldloc.2
L_004f: callvirt Boolean get_Dead()
L_0054: brtrue Label #6
L_0059: Label #4
L_0059: ldc.r4 0
L_005e: br Label #0
L_0063: Label #5
L_0063: Label #6
L_0063: ldc.r4 0.4
L_0068: stloc.3
L_0069: call Verse.TickManager get_TickManager()
L_006e: callvirt Int32 get_TicksGame()
L_0073: stloc.s 4 (System.Int32)
L_0075: ldloc.s 4 (System.Int32)
L_0077: ldloc.0
L_0078: ldfld System.Int32 startTicks
L_007d: sub
L_007e: conv.r4
L_007f: ldc.r4 60000
L_0084: div
L_0085: stloc.s 5 (System.Single)
L_0087: ldloc.3
L_0088: ldc.r4 0
L_008d: ldc.r4 60
L_0092: ldloc.s 5 (System.Single)
L_0094: call Single InverseLerp(Single, Single, Single)
L_0099: mul
L_009a: stloc.3
L_009b: ldloc.3
L_009c: ldc.r4 0
L_00a1: ldc.r4 60
L_00a6: ldarg.1
L_00a7: ldfld RimWorld.Pawn_RelationsTracker relations
L_00ac: ldarg.2
L_00ad: callvirt Int32 OpinionOf(Verse.Pawn)
L_00b2: conv.r4
L_00b3: call Single InverseLerp(Single, Single, Single)
L_00b8: mul
L_00b9: stloc.3
L_00ba: ldarg.2
L_00bb: ldfld RimWorld.Pawn_RelationsTracker relations
L_00c0: ldarg.1
L_00c1: callvirt Int32 OpinionOf(Verse.Pawn)
L_00c6: ldc.i4.0
L_00c7: bge Label #7
L_00cc: ldloc.3
L_00cd: ldc.r4 0.3
L_00d2: mul
L_00d3: stloc.3
L_00d4: Label #7
L_00d4: ldarg.1
L_00d5: ldfld Verse.Gender gender
L_00da: ldc.i4.2
L_00db: bne.un Label #8
L_00e0: ldloc.3
L_00e1: ldc.r4 0.2
L_00e6: mul
L_00e7: stloc.3
L_00e8: Label #8
L_00e8: ldloc.3
L_00e9: br Label #0
L_00ee: Label #0
L_00ee: stloc 6 (System.Single)
L_00f0: ldarg.0
L_00f1: ldloca 6 (System.Single)
L_00f3: ldarg 1
L_00f9: ldarg 2
L_00ff: call Void
_RandomSelectionWeight(RimWorld.InteractionWorker_MarriageProposal, Single ByRef,
Verse.Pawn, Verse.Pawn)
L_0104: ldloc 6 (System.Single)
L_0106: ret
DONE

PATCHING RimWorld.JobGiver_DoLovin Verse.AI.Job TryGiveJob(Verse.Pawn)


L_0000: Local var #0 Verse.Pawn
L_0000: Local var #1 Verse.AI.Job
L_0000: ldnull
L_0001: stloc 1 (Verse.AI.Job)
L_0002: call Verse.TickManager get_TickManager()
L_0007: callvirt Int32 get_TicksGame()
L_000c: ldarg.1
L_000d: ldfld Verse.AI.Pawn_MindState mindState
L_0012: ldfld System.Int32 canLovinTick
L_0017: bge Label #2
L_001c: ldnull
L_001d: br Label #0
L_0022: Label #2
L_0022: ldarg.1
L_0023: call RimWorld.Building_Bed CurrentBed(Verse.Pawn)
L_0028: brfalse Label #3
L_002d: ldarg.1
L_002e: call RimWorld.Building_Bed CurrentBed(Verse.Pawn)
L_0033: callvirt Boolean get_Medical()
L_0038: brtrue Label #4
L_003d: ldarg.1
L_003e: ldfld Verse.Pawn_HealthTracker health
L_0043: ldfld Verse.PawnCapacitiesHandler capacities
L_0048: callvirt Boolean get_CanBeAwake()
L_004d: brtrue Label #5
L_0052: Label #3
L_0052: Label #4
L_0052: ldnull
L_0053: br Label #0
L_0058: Label #5
L_0058: ldarg.1
L_0059: call Verse.Pawn GetPartnerInMyBed(Verse.Pawn)
L_005e: stloc.0
L_005f: ldloc.0
L_0060: brfalse Label #6
L_0065: ldloc.0
L_0066: ldfld Verse.Pawn_HealthTracker health
L_006b: ldfld Verse.PawnCapacitiesHandler capacities
L_0070: callvirt Boolean get_CanBeAwake()
L_0075: brfalse Label #7
L_007a: call Verse.TickManager get_TickManager()
L_007f: callvirt Int32 get_TicksGame()
L_0084: ldloc.0
L_0085: ldfld Verse.AI.Pawn_MindState mindState
L_008a: ldfld System.Int32 canLovinTick
L_008f: bge Label #8
L_0094: Label #6
L_0094: Label #7
L_0094: ldnull
L_0095: br Label #0
L_009a: Label #8
L_009a: ldarg.1
L_009b: ldloc.0
L_009c: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00a1: ldc.i4.1
L_00a2: ldc.i4.m1
L_00a3: ldnull
L_00a4: ldc.i4.0
L_00a5: call Boolean CanReserve(Verse.Pawn, LocalTargetInfo, Int32, Int32,
Verse.ReservationLayerDef, Boolean)
L_00aa: brfalse Label #9
L_00af: ldloc.0
L_00b0: ldarg.1
L_00b1: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00b6: ldc.i4.1
L_00b7: ldc.i4.m1
L_00b8: ldnull
L_00b9: ldc.i4.0
L_00ba: call Boolean CanReserve(Verse.Pawn, LocalTargetInfo, Int32, Int32,
Verse.ReservationLayerDef, Boolean)
L_00bf: brtrue Label #10
L_00c4: Label #9
L_00c4: ldnull
L_00c5: br Label #0
L_00ca: Label #10
L_00ca: ldarg.1
L_00cb: ldfld Verse.AI.Pawn_MindState mindState
L_00d0: ldc.i4.1
L_00d1: stfld System.Boolean awokeVoluntarily
L_00d6: ldloc.0
L_00d7: ldfld Verse.AI.Pawn_MindState mindState
L_00dc: ldc.i4.1
L_00dd: stfld System.Boolean awokeVoluntarily
L_00e2: ldsfld Verse.JobDef Lovin
L_00e7: ldloc.0
L_00e8: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00ed: ldarg.1
L_00ee: call RimWorld.Building_Bed CurrentBed(Verse.Pawn)
L_00f3: call LocalTargetInfo op_Implicit(Verse.Thing)
L_00f8: newobj Void .ctor(JobDef, LocalTargetInfo, LocalTargetInfo)
L_00fd: br Label #0
L_0102: Label #0
L_0102: stloc 1 (Verse.AI.Job)
L_0103: ldloca 1 (Verse.AI.Job)
L_0105: ldarg 1
L_010b: call Void CancelJob(Verse.AI.Job ByRef, Verse.Pawn)
L_0110: ldloc 1 (Verse.AI.Job)
L_0111: ret
DONE

PATCHING RimWorld.VoluntarilyJoinableLordsStarter Void Tick_TryStartParty()


L_0000: ldarg.0
L_0001: call Boolean
ExtraSocialiteParties(RimWorld.VoluntarilyJoinableLordsStarter)
L_0006: brfalse Label #1
L_000b: ldarg.0
L_000c: ldfld Verse.Map map
L_0011: callvirt Boolean get_IsPlayerHome()
L_0016: brtrue Label #2
L_001b: br Label #0
L_0020: Label #2
L_0020: call Verse.TickManager get_TickManager()
L_0025: callvirt Int32 get_TicksGame()
L_002a: ldc.i4 5000
L_002f: rem
L_0030: brtrue Label #3
L_0035: ldc.r4 40
L_003a: ldc.r4 60000
L_003f: ldc.r4 5000
L_0044: call Boolean MTBEventOccurs(Single, Single, Single)
L_0049: brfalse Label #4
L_004e: ldarg.0
L_004f: ldc.i4.1
L_0050: stfld System.Boolean startPartyASAP
L_0055: Label #4
L_0055: ldarg.0
L_0056: ldfld System.Boolean startPartyASAP
L_005b: brfalse Label #5
L_0060: call Verse.TickManager get_TickManager()
L_0065: callvirt Int32 get_TicksGame()
L_006a: ldarg.0
L_006b: ldfld System.Int32 lastLordStartTick
L_0070: sub
L_0071: ldc.i4 600000
L_0076: blt Label #6
L_007b: ldarg.0
L_007c: ldfld Verse.Map map
L_0081: call Boolean AcceptableGameConditionsToStartParty(Verse.Map)
L_0086: brfalse Label #7
L_008b: ldarg.0
L_008c: call Boolean TryStartParty()
L_0091: pop
L_0092: Label #3
L_0092: Label #5
L_0092: Label #6
L_0092: Label #7
L_0092: br Label #0
L_0097: Label #0
L_0097: Label #1
L_0097: ret
DONE

PATCHING RimWorld.ThoughtWorker_WantToSleepWithSpouseOrLover ThoughtState


CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 RimWorld.DirectPawnRelation
L_0000: ldarg.1
L_0001: ldc.i4.0
L_0002: call RimWorld.DirectPawnRelation
ExistingMostLikedLovePartnerRel(Verse.Pawn, Boolean)
L_0007: stloc.0
L_0008: ldloc.0
L_0009: brtrue Label #2
L_000e: ldc.i4.0
L_000f: call ThoughtState op_Implicit(Boolean)
L_0014: br Label #0
L_0019: Label #2
L_0019: ldloc.0
L_001a: ldfld Verse.Pawn otherPawn
L_001f: callvirt Boolean get_IsColonist()
L_0024: brfalse Label #3
L_0029: ldloc.0
L_002a: ldfld Verse.Pawn otherPawn
L_002f: call Boolean IsWorldPawn(Verse.Pawn)
L_0034: brtrue Label #4
L_0039: ldloc.0
L_003a: ldfld Verse.Pawn otherPawn
L_003f: ldfld RimWorld.Pawn_RelationsTracker relations
L_0044: ldfld System.Boolean everSeenByPlayer
L_0049: brtrue Label #5
L_004e: Label #3
L_004e: Label #4
L_004e: ldc.i4.0
L_004f: call ThoughtState op_Implicit(Boolean)
L_0054: br Label #0
L_0059: Label #5
L_0059: ldarg.1
L_005a: ldfld RimWorld.Pawn_Ownership ownership
L_005f: callvirt RimWorld.Building_Bed get_OwnedBed()
L_0064: brfalse Label #6
L_0069: ldarg.1
L_006a: ldfld RimWorld.Pawn_Ownership ownership
L_006f: callvirt RimWorld.Building_Bed get_OwnedBed()
L_0074: ldloc.0
L_0075: ldfld Verse.Pawn otherPawn
L_007a: ldfld RimWorld.Pawn_Ownership ownership
L_007f: callvirt RimWorld.Building_Bed get_OwnedBed()
L_0084: bne.un Label #7
L_0089: ldc.i4.0
L_008a: call ThoughtState op_Implicit(Boolean)
L_008f: br Label #0
L_0094: Label #6
L_0094: Label #7
L_0094: ldarg.1
L_0095: ldfld RimWorld.Pawn_RelationsTracker relations
L_009a: ldloc.0
L_009b: ldfld Verse.Pawn otherPawn
L_00a0: callvirt Int32 OpinionOf(Verse.Pawn)
L_00a5: ldc.i4.0
L_00a6: bgt Label #8
L_00ab: ldc.i4.0
L_00ac: call ThoughtState op_Implicit(Boolean)
L_00b1: br Label #0
L_00b6: Label #8
L_00b6: ldc.i4.1
L_00b7: call ThoughtState op_Implicit(Boolean)
L_00bc: br Label #0
L_00c1: Label #0
L_00c1: ret
DONE

PATCHING RimWorld.ThoughtWorker_Hediff ThoughtState


CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 Verse.Hediff
L_0000: Local var #1 System.Int32
L_0000: Local var #2 RimWorld.ThoughtState
L_0000: ldloca 2 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.1
L_0009: ldfld Verse.Pawn_HealthTracker health
L_000e: ldfld Verse.HediffSet hediffSet
L_0013: ldarg.0
L_0014: ldfld RimWorld.ThoughtDef def
L_0019: ldfld Verse.HediffDef hediff
L_001e: ldc.i4.0
L_001f: callvirt Verse.Hediff GetFirstHediffOfDef(Verse.HediffDef, Boolean)
L_0024: stloc.0
L_0025: ldloc.0
L_0026: brfalse Label #2
L_002b: ldloc.0
L_002c: ldfld Verse.HediffDef def
L_0031: ldfld System.Collections.Generic.List`1[Verse.HediffStage] stages
L_0036: brtrue Label #3
L_003b: Label #2
L_003b: call ThoughtState get_Inactive()
L_0040: br Label #0
L_0045: Label #3
L_0045: ldc.i4.3
L_0046: newarr System.Int32
L_004b: dup
L_004c: ldc.i4.0
L_004d: ldloc.0
L_004e: callvirt Int32 get_CurStageIndex()
L_0053: stelem.i4
L_0054: dup
L_0055: ldc.i4.1
L_0056: ldloc.0
L_0057: ldfld Verse.HediffDef def
L_005c: ldfld System.Collections.Generic.List`1[Verse.HediffStage] stages
L_0061: callvirt Int32 get_Count()
L_0066: ldc.i4.1
L_0067: sub
L_0068: stelem.i4
L_0069: dup
L_006a: ldc.i4.2
L_006b: ldarg.0
L_006c: ldfld RimWorld.ThoughtDef def
L_0071: ldfld System.Collections.Generic.List`1[RimWorld.ThoughtStage] stages
L_0076: callvirt Int32 get_Count()
L_007b: ldc.i4.1
L_007c: sub
L_007d: stelem.i4
L_007e: call Int32 Min(System.Int32[])
L_0083: stloc.1
L_0084: ldloc.1
L_0085: call ThoughtState ActiveAtStage(Int32)
L_008a: br Label #0
L_008f: Label #0
L_008f: stloc 2 (RimWorld.ThoughtState)
L_0090: ldarg.0
L_0091: ldloca 2 (RimWorld.ThoughtState)
L_0093: ldarg 1
L_0099: call Void MethadoneHigh(RimWorld.ThoughtWorker_Hediff, ThoughtState ByRef,
Verse.Pawn)
L_009e: ldloc 2 (RimWorld.ThoughtState)
L_009f: ret
DONE

PATCHING RimWorld.ThoughtWorker_AlwaysActive ThoughtState


CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: ldloca 0 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldc.i4.1
L_0009: call ThoughtState op_Implicit(Boolean)
L_000e: br Label #0
L_0013: Label #0
L_0013: stloc 0 (RimWorld.ThoughtState)
L_0014: ldloca 0 (RimWorld.ThoughtState)
L_0016: ldarg 1
L_001c: call Void AlwaysActiveDepression(ThoughtState ByRef, Verse.Pawn)
L_0021: ldloc 0 (RimWorld.ThoughtState)
L_0022: ret
DONE

PATCHING Verse.MentalStateWorker_BingingDrug Boolean StateCanOccur(Verse.Pawn)


L_0000: Local var #0 System.Collections.Generic.List`1[[RimWorld.ChemicalDef,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Int32
L_0000: Local var #2 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 2 (System.Boolean)
L_0006: ldarg.0
L_0007: ldarg.1
L_0008: call Boolean StateCanOccur(Verse.Pawn)
L_000d: brtrue Label #2
L_0012: ldc.i4.0
L_0013: br Label #0
L_0018: Label #2
L_0018: ldarg.1
L_0019: callvirt Boolean get_Spawned()
L_001e: brtrue Label #3
L_0023: ldc.i4.0
L_0024: br Label #0
L_0029: Label #3
L_0029: call System.Collections.Generic.List`1[RimWorld.ChemicalDef]
get_AllDefsListForReading()
L_002e: stloc.0
L_002f: ldc.i4.0
L_0030: stloc.1
L_0031: br Label #4
L_0036: Label #8
L_0036: ldarg.1
L_0037: ldloc.0
L_0038: ldloc.1
L_0039: callvirt RimWorld.ChemicalDef get_Item(Int32)
L_003e: ldarg.0
L_003f: ldfld Verse.MentalStateDef def
L_0044: ldfld RimWorld.DrugCategory drugCategory
L_0049: call Boolean CanBingeOnNow(Verse.Pawn, RimWorld.ChemicalDef, DrugCategory)
L_004e: brfalse Label #5
L_0053: ldc.i4.1
L_0054: br Label #0
L_0059: Label #5
L_0059: ldarg.0
L_005a: ldfld Verse.MentalStateDef def
L_005f: ldfld RimWorld.DrugCategory drugCategory
L_0064: ldc.i4.4
L_0065: bne.un Label #6
L_006a: ldarg.1
L_006b: ldloc.0
L_006c: ldloc.1
L_006d: callvirt RimWorld.ChemicalDef get_Item(Int32)
L_0072: ldc.i4.3
L_0073: call Boolean CanBingeOnNow(Verse.Pawn, RimWorld.ChemicalDef, DrugCategory)
L_0078: brfalse Label #7
L_007d: ldc.i4.1
L_007e: br Label #0
L_0083: Label #6
L_0083: Label #7
L_0083: ldloc.1
L_0084: ldc.i4.1
L_0085: add
L_0086: stloc.1
L_0087: Label #4
L_0087: ldloc.1
L_0088: ldloc.0
L_0089: callvirt Int32 get_Count()
L_008e: blt Label #8
L_0093: ldc.i4.0
L_0094: br Label #0
L_0099: Label #0
L_0099: stloc 2 (System.Boolean)
L_009a: ldloca 2 (System.Boolean)
L_009c: ldarg 1
L_00a2: call Void DrugFreeDisable(Boolean ByRef, Verse.Pawn)
L_00a7: ldloc 2 (System.Boolean)
L_00a8: ret
DONE

PATCHING RimWorld.InteractionWorker_RecruitAttempt Void DoRecruit(Verse.Pawn,


Verse.Pawn, Single, Boolean)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.String
L_0000: Local var #2 System.Boolean
L_0000: Local var #3 System.Single
L_0000: ldarg.1
L_0001: call System.String LabelIndefinite(Verse.Pawn)
L_0006: stloc.1
L_0007: ldarg.1
L_0008: ldfld RimWorld.Pawn_GuestTracker guest
L_000d: brfalse Label #2
L_0012: ldarg.1
L_0013: ldfld RimWorld.Pawn_GuestTracker guest
L_0018: ldnull
L_0019: ldc.i4.0
L_001a: callvirt Void SetGuestStatus(RimWorld.Faction, Boolean)
L_001f: Label #2
L_001f: ldarg.1
L_0020: callvirt Verse.Name get_Name()
L_0025: ldnull
L_0026: ceq
L_0028: ldc.i4.0
L_0029: ceq
L_002b: stloc.2
L_002c: ldarg.1
L_002d: callvirt RimWorld.Faction get_Faction()
L_0032: ldarg.0
L_0033: callvirt RimWorld.Faction get_Faction()
L_0038: beq Label #3
L_003d: ldarg.1
L_003e: ldarg.0
L_003f: callvirt RimWorld.Faction get_Faction()
L_0044: ldarg.0
L_0045: callvirt Void SetFaction(RimWorld.Faction, Verse.Pawn)
L_004a: Label #3
L_004a: ldarg.1
L_004b: callvirt Verse.RaceProperties get_RaceProps()
L_0050: callvirt Boolean get_Humanlike()
L_0055: brfalse Label #4
L_005a: ldarg.3
L_005b: brfalse Label #5
L_0060: call Verse.LetterStack get_LetterStack()
L_0065: ldstr "LetterLabelMessageRecruitSuccess"
L_006a: call System.String Translate(System.String)
L_006f: ldstr "MessageRecruitSuccess"
L_0074: ldc.i4.3
L_0075: newarr System.Object
L_007a: dup
L_007b: ldc.i4.0
L_007c: ldarg.0
L_007d: stelem.ref
L_007e: dup
L_007f: ldc.i4.1
L_0080: ldarg.1
L_0081: stelem.ref
L_0082: dup
L_0083: ldc.i4.2
L_0084: ldarg.2
L_0085: call System.String ToStringPercent(Single)
L_008a: stelem.ref
L_008b: call System.String Translate(System.String, System.Object[])
L_0090: ldsfld Verse.LetterDef Good
L_0095: ldarg.1
L_0096: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_009b: ldnull
L_009c: callvirt Void ReceiveLetter(System.String, System.String, Verse.LetterDef,
GlobalTargetInfo, System.String)
L_00a1: Label #5
L_00a1: ldsfld RimWorld.TaleDef Recruited
L_00a6: ldc.i4.2
L_00a7: newarr System.Object
L_00ac: dup
L_00ad: ldc.i4.0
L_00ae: ldarg.0
L_00af: stelem.ref
L_00b0: dup
L_00b1: ldc.i4.1
L_00b2: ldarg.1
L_00b3: stelem.ref
L_00b4: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_00b9: ldarg.0
L_00ba: ldfld RimWorld.Pawn_RecordsTracker records
L_00bf: ldsfld RimWorld.RecordDef PrisonersRecruited
L_00c4: callvirt Void Increment(RimWorld.RecordDef)
L_00c9: ldarg.1
L_00ca: ldfld RimWorld.Pawn_NeedsTracker needs
L_00cf: ldfld RimWorld.Need_Mood mood
L_00d4: ldfld RimWorld.ThoughtHandler thoughts
L_00d9: ldfld RimWorld.MemoryThoughtHandler memories
L_00de: ldsfld RimWorld.ThoughtDef RecruitedMe
L_00e3: ldarg.0
L_00e4: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_00e9: br Label #6
L_00ee: Label #4
L_00ee: ldarg.3
L_00ef: brfalse Label #7
L_00f4: ldloc.2
L_00f5: brtrue Label #8
L_00fa: ldstr "MessageTameAndNameSuccess"
L_00ff: ldc.i4.4
L_0100: newarr System.Object
L_0105: dup
L_0106: ldc.i4.0
L_0107: ldarg.0
L_0108: callvirt System.String get_LabelShort()
L_010d: stelem.ref
L_010e: dup
L_010f: ldc.i4.1
L_0110: ldloc.1
L_0111: stelem.ref
L_0112: dup
L_0113: ldc.i4.2
L_0114: ldarg.2
L_0115: call System.String ToStringPercent(Single)
L_011a: stelem.ref
L_011b: dup
L_011c: ldc.i4.3
L_011d: ldarg.1
L_011e: callvirt Verse.Name get_Name()
L_0123: callvirt System.String get_ToStringFull()
L_0128: stelem.ref
L_0129: call System.String Translate(System.String, System.Object[])
L_012e: ldarg.1
L_012f: call System.String AdjustedFor(System.String, Verse.Pawn)
L_0134: ldarg.1
L_0135: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_013a: ldc.i4.3
L_013b: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0140: br Label #9
L_0145: Label #8
L_0145: ldstr "MessageTameSuccess"
L_014a: ldc.i4.3
L_014b: newarr System.Object
L_0150: dup
L_0151: ldc.i4.0
L_0152: ldarg.0
L_0153: callvirt System.String get_LabelShort()
L_0158: stelem.ref
L_0159: dup
L_015a: ldc.i4.1
L_015b: ldloc.1
L_015c: stelem.ref
L_015d: dup
L_015e: ldc.i4.2
L_015f: ldarg.2
L_0160: call System.String ToStringPercent(Single)
L_0165: stelem.ref
L_0166: call System.String Translate(System.String, System.Object[])
L_016b: ldarg.1
L_016c: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0171: ldc.i4.3
L_0172: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0177: Label #9
L_0177: ldarg.0
L_0178: callvirt Vector3 get_DrawPos()
L_017d: ldarg.1
L_017e: callvirt Vector3 get_DrawPos()
L_0183: call Vector3 op_Addition(Vector3, Vector3)
L_0188: ldc.r4 2
L_018d: call Vector3 op_Division(Vector3, Single)
L_0192: ldarg.0
L_0193: callvirt Verse.Map get_Map()
L_0198: ldstr "TextMote_TameSuccess"
L_019d: ldc.i4.1
L_019e: newarr System.Object
L_01a3: dup
L_01a4: ldc.i4.0
L_01a5: ldarg.2
L_01a6: call System.String ToStringPercent(Single)
L_01ab: stelem.ref
L_01ac: call System.String Translate(System.String, System.Object[])
L_01b1: ldc.r4 8
L_01b6: call Void ThrowText(Vector3, Verse.Map, System.String, Single)
L_01bb: Label #7
L_01bb: ldarg.0
L_01bc: ldfld RimWorld.Pawn_RecordsTracker records
L_01c1: ldsfld RimWorld.RecordDef AnimalsTamed
L_01c6: callvirt Void Increment(RimWorld.RecordDef)
L_01cb: ldarg.0
L_01cc: ldarg.1
L_01cd: ldc.r4 0.01
L_01d2: call Boolean TryDevelopBondRelation(Verse.Pawn, Verse.Pawn, Single)
L_01d7: pop
L_01d8: ldc.r4 0.02
L_01dd: ldc.r4 1
L_01e2: ldarg.1
L_01e3: callvirt Verse.RaceProperties get_RaceProps()
L_01e8: ldfld System.Single wildness
L_01ed: call Single Lerp(Single, Single, Single)
L_01f2: stloc.3
L_01f3: call Single get_Value()
L_01f8: ldloc.3
L_01f9: bge.un Label #10
L_01fe: ldsfld RimWorld.TaleDef TamedAnimal
L_0203: ldc.i4.2
L_0204: newarr System.Object
L_0209: dup
L_020a: ldc.i4.0
L_020b: ldarg.0
L_020c: stelem.ref
L_020d: dup
L_020e: ldc.i4.1
L_020f: ldarg.1
L_0210: stelem.ref
L_0211: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_0216: Label #6
L_0216: Label #10
L_0216: ldarg.1
L_0217: ldfld Verse.Pawn_CallTracker caller
L_021c: brfalse Label #11
L_0221: ldarg.1
L_0222: ldfld Verse.Pawn_CallTracker caller
L_0227: callvirt Void DoCall()
L_022c: Label #11
L_022c: br Label #0
L_0231: Label #0
L_0231: ldarg 0
L_0237: ldarg 1
L_023d: call Void AddCapturedThoughts(Verse.Pawn, Verse.Pawn)
L_0242: ret
DONE

PATCHING RimWorld.Building_Grave Void Notify_CorpseBuried(Verse.Pawn)


L_0000: Local var #0 RimWorld.CompArt
L_0000: ldarg.0
L_0001: call RimWorld.CompArt GetComp[CompArt]()
L_0006: stloc.0
L_0007: ldloc.0
L_0008: brfalse Label #2
L_000d: ldloc.0
L_000e: callvirt Boolean get_Active()
L_0013: brtrue Label #3
L_0018: ldloc.0
L_0019: ldarg.1
L_001a: callvirt Void JustCreatedBy(Verse.Pawn)
L_001f: ldloc.0
L_0020: ldarg.0
L_0021: call Verse.Corpse get_Corpse()
L_0026: callvirt Verse.Pawn get_InnerPawn()
L_002b: callvirt Void InitializeArt(Verse.Thing)
L_0030: Label #2
L_0030: Label #3
L_0030: ldarg.0
L_0031: call Verse.Map get_Map()
L_0036: ldfld Verse.MapDrawer mapDrawer
L_003b: ldarg.0
L_003c: call IntVec3 get_Position()
L_0041: ldc.i4.5
L_0042: callvirt Void MapMeshDirty(IntVec3, MapMeshFlag)
L_0047: br Label #0
L_004c: Label #0
L_004c: ldarg.0
L_004d: ldarg 1
L_0053: call Void FillGraveThought(RimWorld.Building_Grave, Verse.Pawn)
L_0058: ret
DONE

PATCHING Verse.MentalBreaker Boolean TryDoRandomMoodCausedMentalBreak()


L_0000: Local var #0 Verse.MentalBreakDef
L_0000: Local var #1 RimWorld.Thought
L_0000: Local var #2 System.String
L_0000: Local var #3 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 3 (System.Boolean)
L_0006: ldarg.0
L_0007: call Boolean get_CanDoRandomMentalBreaks()
L_000c: brfalse Label #2
L_0011: ldarg.0
L_0012: ldfld Verse.Pawn pawn
L_0017: callvirt Boolean get_Downed()
L_001c: brtrue Label #3
L_0021: ldarg.0
L_0022: ldfld Verse.Pawn pawn
L_0027: call Boolean Awake(Verse.Pawn)
L_002c: brtrue Label #4
L_0031: Label #2
L_0031: Label #3
L_0031: ldc.i4.0
L_0032: br Label #0
L_0037: Label #4
L_0037: ldarg.0
L_0038: ldfld Verse.Pawn pawn
L_003d: callvirt RimWorld.Faction get_Faction()
L_0042: call RimWorld.Faction get_OfPlayer()
L_0047: beq Label #5
L_004c: ldarg.0
L_004d: call MentalBreakIntensity get_CurrentDesiredMoodBreakIntensity()
L_0052: brfalse Label #6
L_0057: ldc.i4.0
L_0058: br Label #0
L_005d: Label #5
L_005d: Label #6
L_005d: ldarg.0
L_005e: call IEnumerable`1 get_CurrentPossibleMoodBreaks()
L_0063: ldarg.0
L_0064: ldftn Single <TryDoRandomMoodCausedMentalBreak>m__7E1(Verse.MentalBreakDef)
L_006a: newobj Void .ctor(Object, IntPtr)
L_006f: ldloca.s 0 (Verse.MentalBreakDef)
L_0071: call Boolean TryRandomElementByWeight[MentalBreakDef](IEnumerable`1,
System.Func`2[Verse.MentalBreakDef,System.Single], Verse.MentalBreakDef ByRef)
L_0076: brtrue Label #7
L_007b: ldc.i4.0
L_007c: br Label #0
L_0081: Label #7
L_0081: ldarg.0
L_0082: call RimWorld.Thought RandomFinalStraw()
L_0087: stloc.1
L_0088: ldloc.1
L_0089: brfalse Label #8
L_008e: ldloc.1
L_008f: callvirt System.String get_LabelCap()
L_0094: br Label #9
L_0099: Label #8
L_0099: ldnull
L_009a: Label #9
L_009a: stloc.2
L_009b: ldarg.0
L_009c: ldfld Verse.Pawn pawn
L_00a1: ldfld Verse.AI.Pawn_MindState mindState
L_00a6: ldfld Verse.AI.MentalStateHandler mentalStateHandler
L_00ab: ldloc.0
L_00ac: ldfld Verse.MentalStateDef mentalState
L_00b1: ldloc.2
L_00b2: ldc.i4.0
L_00b3: ldc.i4.1
L_00b4: ldnull
L_00b5: callvirt Boolean TryStartMentalState(Verse.MentalStateDef, System.String,
Boolean, Boolean, Verse.Pawn)
L_00ba: pop
L_00bb: ldc.i4.1
L_00bc: br Label #0
L_00c1: Label #0
L_00c1: stloc 3 (System.Boolean)
L_00c2: ldarg.0
L_00c3: ldloca 3 (System.Boolean)
L_00c5: call Void AddAnxiety(Verse.MentalBreaker, Boolean ByRef)
L_00ca: ldloc 3 (System.Boolean)
L_00cb: ret
DONE

PATCHING Verse.Pawn Boolean CheckAcceptArrest(Verse.Pawn)


L_0000: Local var #0 System.Single
L_0000: ldarg.0
L_0001: ldfld Verse.Pawn_HealthTracker health
L_0006: callvirt Boolean get_Downed()
L_000b: brfalse Label #2
L_0010: ldc.i4.1
L_0011: br Label #0
L_0016: Label #2
L_0016: ldarg.0
L_0017: ldfld RimWorld.Pawn_StoryTracker story
L_001c: brfalse Label #3
L_0021: ldarg.0
L_0022: ldfld RimWorld.Pawn_StoryTracker story
L_0027: ldc.i4.8
L_0028: callvirt Boolean WorkTagIsDisabled(WorkTags)
L_002d: brfalse Label #4
L_0032: ldc.i4.1
L_0033: br Label #0
L_0038: Label #3
L_0038: Label #4
L_0038: ldarg.0
L_0039: call RimWorld.Faction get_Faction()
L_003e: brfalse Label #5
L_0043: ldarg.0
L_0044: call RimWorld.Faction get_Faction()
L_0049: ldarg.1
L_004a: ldfld RimWorld.Faction factionInt
L_004f: beq Label #6
L_0054: ldarg.0
L_0055: call RimWorld.Faction get_Faction()
L_005a: ldarg.0
L_005b: ldarg.1
L_005c: callvirt RimWorld.Faction get_Faction()
L_0061: callvirt Void Notify_MemberCaptured(Verse.Pawn, RimWorld.Faction)
L_0066: Label #5
L_0066: Label #6
L_0066: ldarg.0
L_0067: ldarg.1
L_0068: callvirt Boolean NewArrestCheck(Verse.Pawn, Verse.Pawn)
L_006d: brfalse Label #7
L_0072: ldc.i4.1
L_0073: br Label #0
L_0078: Label #7
L_0078: ldstr "MessageRefusedArrest"
L_007d: ldc.i4.1
L_007e: newarr System.Object
L_0083: dup
L_0084: ldc.i4.0
L_0085: ldarg.0
L_0086: callvirt System.String get_LabelShort()
L_008b: stelem.ref
L_008c: call System.String Translate(System.String, System.Object[])
L_0091: ldarg.0
L_0092: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0097: ldc.i4.5
L_0098: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_009d: ldarg.0
L_009e: call RimWorld.Faction get_Faction()
L_00a3: brfalse Label #8
L_00a8: ldarg.1
L_00a9: ldarg.0
L_00aa: call Boolean HostileTo(Verse.Thing, Verse.Thing)
L_00af: brtrue Label #9
L_00b4: Label #8
L_00b4: ldarg.0
L_00b5: ldfld Verse.AI.Pawn_MindState mindState
L_00ba: ldfld Verse.AI.MentalStateHandler mentalStateHandler
L_00bf: ldsfld Verse.MentalStateDef Berserk
L_00c4: ldnull
L_00c5: ldc.i4.0
L_00c6: ldc.i4.0
L_00c7: ldnull
L_00c8: callvirt Boolean TryStartMentalState(Verse.MentalStateDef, System.String,
Boolean, Boolean, Verse.Pawn)
L_00cd: pop
L_00ce: Label #9
L_00ce: ldc.i4.0
L_00cf: br Label #0
L_00d4: Label #0
L_00d4: ret
DONE

PATCHING Verse.Pawn Void PreTraded(TradeAction, Verse.Pawn, ITrader)


L_0000: Local var #0 Verse.Pawn
L_0000: Local var #1 System.Collections.Generic.IEnumerator`1[[Verse.Pawn,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg.0
L_0001: ldarg.1
L_0002: ldarg.2
L_0003: ldarg.3
L_0004: call Void PreTraded(TradeAction, Verse.Pawn, ITrader)
L_0009: ldarg.0
L_000a: call Boolean get_SpawnedOrAnyParentSpawned()
L_000f: brfalse Label #2
L_0014: ldarg.0
L_0015: ldc.i4.0
L_0016: call Void DropAndForbidEverything(Boolean)
L_001b: Label #2
L_001b: ldarg.0
L_001c: ldfld RimWorld.Pawn_Ownership ownership
L_0021: brfalse Label #3
L_0026: ldarg.0
L_0027: ldfld RimWorld.Pawn_Ownership ownership
L_002c: callvirt Void UnclaimAll()
L_0031: Label #3
L_0031: ldarg.0
L_0032: ldfld RimWorld.Pawn_GuestTracker guest
L_0037: brfalse Label #4
L_003c: ldarg.0
L_003d: ldfld RimWorld.Pawn_GuestTracker guest
L_0042: ldnull
L_0043: ldc.i4.0
L_0044: callvirt Void SetGuestStatus(RimWorld.Faction, Boolean)
L_0049: Label #4
L_0049: ldarg.1
L_004a: ldc.i4.1
L_004b: bne.un Label #5
L_0050: ldarg.0
L_0051: call RimWorld.Faction get_OfPlayer()
L_0056: ldnull
L_0057: callvirt Void SetFaction(RimWorld.Faction, Verse.Pawn)
L_005c: br Label #6
L_0061: Label #5
L_0061: ldarg.1
L_0062: ldc.i4.2
L_0063: bne.un Label #7
L_0068: ldarg.0
L_0069: call Verse.RaceProperties get_RaceProps()
L_006e: callvirt Boolean get_Humanlike()
L_0073: brfalse Label #8
L_0078: ldsfld RimWorld.TaleDef SoldPrisoner
L_007d: ldc.i4.3
L_007e: newarr System.Object
L_0083: dup
L_0084: ldc.i4.0
L_0085: ldarg.2
L_0086: stelem.ref
L_0087: dup
L_0088: ldc.i4.1
L_0089: ldarg.0
L_008a: stelem.ref
L_008b: dup
L_008c: ldc.i4.2
L_008d: ldarg.3
L_008e: stelem.ref
L_008f: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_0094: Label #8
L_0094: ldarg.0
L_0095: call RimWorld.Faction get_Faction()
L_009a: brfalse Label #9
L_009f: ldarg.0
L_00a0: ldnull
L_00a1: ldnull
L_00a2: callvirt Void SetFaction(RimWorld.Faction, Verse.Pawn)
L_00a7: Label #9
L_00a7: ldarg.0
L_00a8: call Verse.RaceProperties get_RaceProps()
L_00ad: callvirt Boolean get_IsFlesh()
L_00b2: brfalse Label #10
L_00b7: ldarg.0
L_00b8: ldfld RimWorld.Pawn_RelationsTracker relations
L_00bd: ldarg.2
L_00be: callvirt Void Notify_PawnSold(Verse.Pawn)
L_00c3: Label #10
L_00c3: ldarg.0
L_00c4: call Verse.RaceProperties get_RaceProps()
L_00c9: callvirt Boolean get_Humanlike()
L_00ce: brfalse Label #11
L_00d3: call IEnumerable`1 get_AllMapsCaravansAndTravelingTransportPods()
L_00d8: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache2F
L_00dd: brtrue Label #12
L_00e2: ldnull
L_00e3: ldftn Boolean <PreTraded>m__8E0(Verse.Pawn)
L_00e9: newobj Void .ctor(Object, IntPtr)
L_00ee: stsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache2F
L_00f3: Label #12
L_00f3: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache2F
L_00f8: call IEnumerable`1 Where[Pawn](IEnumerable`1,
System.Func`2[Verse.Pawn,System.Boolean])
L_00fd: callvirt IEnumerator`1 GetEnumerator()
L_0102: stloc.1
L_0103: br Label #13
L_0108: Label #14
L_0108: ldloc.1
L_0109: callvirt Verse.Pawn get_Current()
L_010e: stloc.0
L_010f: ldloc.0
L_0110: ldfld RimWorld.Pawn_NeedsTracker needs
L_0115: ldfld RimWorld.Need_Mood mood
L_011a: ldfld RimWorld.ThoughtHandler thoughts
L_011f: ldfld RimWorld.MemoryThoughtHandler memories
L_0124: ldsfld RimWorld.ThoughtDef KnowPrisonerSold
L_0129: ldnull
L_012a: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_012f: Label #13
L_012f: ldloc.1
L_0130: callvirt Boolean MoveNext()
L_0135: brtrue Label #14
L_013a: leave Label #15
L_013f: ldloc.1
L_0140: brtrue Label #16
L_0145: endfinally
L_0146: Label #16
L_0146: ldloc.1
L_0147: callvirt Void Dispose()
L_014c: endfinally
L_014d: Label #6
L_014d: Label #7
L_014d: Label #11
L_014d: Label #15
L_014d: ldarg.0
L_014e: ldc.i4.0
L_014f: call Void ClearMind(Boolean)
L_0154: ldarg.0
L_0155: ldc.i4.1
L_0156: call Void ClearReservations(Boolean)
L_015b: br Label #0
L_0160: Label #0
L_0160: ldarg.0
L_0161: ldarg 1
L_0167: ldarg 2
L_016d: ldarg 3
L_0173: call Void BleedingHeartThought(Verse.Pawn, TradeAction, Verse.Pawn,
ITrader)
L_0178: ret
DONE

PATCHING RimWorld.PawnComponentsUtility Void CreateInitialComponents(Verse.Pawn)


L_0000: ldarg.0
L_0001: ldarg.0
L_0002: newobj Void .ctor(Pawn)
L_0007: stfld Verse.Pawn_AgeTracker ageTracker
L_000c: ldarg.0
L_000d: ldarg.0
L_000e: newobj Void .ctor(Pawn)
L_0013: stfld Verse.Pawn_HealthTracker health
L_0018: ldarg.0
L_0019: ldarg.0
L_001a: newobj Void .ctor(Pawn)
L_001f: stfld RimWorld.Pawn_RecordsTracker records
L_0024: ldarg.0
L_0025: ldarg.0
L_0026: newobj Void .ctor(Pawn)
L_002b: stfld Verse.Pawn_InventoryTracker inventory
L_0030: ldarg.0
L_0031: ldarg.0
L_0032: newobj Void .ctor(Pawn)
L_0037: stfld RimWorld.Pawn_MeleeVerbs meleeVerbs
L_003c: ldarg.0
L_003d: ldarg.0
L_003e: newobj Void .ctor(IVerbOwner)
L_0043: stfld Verse.VerbTracker verbTracker
L_0048: ldarg.0
L_0049: ldarg.0
L_004a: newobj Void .ctor(Pawn)
L_004f: stfld Verse.Pawn_CarryTracker carryTracker
L_0054: ldarg.0
L_0055: ldarg.0
L_0056: newobj Void .ctor(Pawn)
L_005b: stfld RimWorld.Pawn_NeedsTracker needs
L_0060: ldarg.0
L_0061: ldarg.0
L_0062: newobj Void .ctor(Pawn)
L_0067: stfld Verse.AI.Pawn_MindState mindState
L_006c: ldarg.0
L_006d: callvirt Verse.RaceProperties get_RaceProps()
L_0072: callvirt Boolean get_ToolUser()
L_0077: brfalse Label #2
L_007c: ldarg.0
L_007d: ldarg.0
L_007e: newobj Void .ctor(Pawn)
L_0083: stfld Verse.Pawn_EquipmentTracker equipment
L_0088: ldarg.0
L_0089: ldarg.0
L_008a: newobj Void .ctor(Pawn)
L_008f: stfld RimWorld.Pawn_ApparelTracker apparel
L_0094: Label #2
L_0094: ldarg.0
L_0095: callvirt Verse.RaceProperties get_RaceProps()
L_009a: callvirt Boolean get_Humanlike()
L_009f: brfalse Label #3
L_00a4: ldarg.0
L_00a5: ldarg.0
L_00a6: newobj Void .ctor(Pawn)
L_00ab: stfld RimWorld.Pawn_Ownership ownership
L_00b0: ldarg.0
L_00b1: ldarg.0
L_00b2: newobj Void .ctor(Pawn)
L_00b7: stfld RimWorld.Pawn_SkillTracker skills
L_00bc: ldarg.0
L_00bd: ldarg.0
L_00be: newobj Void .ctor(Pawn)
L_00c3: stfld RimWorld.Pawn_StoryTracker story
L_00c8: ldarg.0
L_00c9: ldarg.0
L_00ca: newobj Void .ctor(Pawn)
L_00cf: stfld RimWorld.Pawn_GuestTracker guest
L_00d4: ldarg.0
L_00d5: newobj Void .ctor()
L_00da: stfld RimWorld.Pawn_GuiltTracker guilt
L_00df: ldarg.0
L_00e0: ldarg.0
L_00e1: newobj Void .ctor(Pawn)
L_00e6: stfld RimWorld.Pawn_WorkSettings workSettings
L_00eb: Label #3
L_00eb: ldarg.0
L_00ec: callvirt Verse.RaceProperties get_RaceProps()
L_00f1: callvirt Boolean get_IsFlesh()
L_00f6: brfalse Label #4
L_00fb: ldarg.0
L_00fc: ldarg.0
L_00fd: newobj Void .ctor(Pawn)
L_0102: stfld RimWorld.Pawn_RelationsTracker relations
L_0107: Label #4
L_0107: ldarg.0
L_0108: ldc.i4.0
L_0109: call Void AddAndRemoveDynamicComponents(Verse.Pawn, Boolean)
L_010e: br Label #0
L_0113: Label #0
L_0113: ldarg 0
L_0119: call Void CreatePsychologyComponents(Verse.Pawn)
L_011e: ret
DONE

PATCHING RimWorld.ChildRelationUtility Single ChanceOfBecomingChildOf(Verse.Pawn,


Verse.Pawn, Verse.Pawn, Nullable`1, Nullable`1, Nullable`1)
L_0000: Local var #0 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #1 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #2 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #3 System.Boolean
L_0000: Local var #4 System.Boolean
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: Local var #7 System.Single
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: Local var #10 System.Int32
L_0000: Local var #11 System.Single
L_0000: Local var #12 Verse.Pawn
L_0000: Local var #13 Verse.Pawn
L_0000: Local var #14 System.Single
L_0000: ldc.r4 0
L_0005: stloc 14 (System.Single)
L_0007: ldarg.1
L_0008: brfalse Label #2
L_000d: ldarg.1
L_000e: ldfld Verse.Gender gender
L_0013: ldc.i4.1
L_0014: beq Label #3
L_0019: ldstr "Tried to calculate chance for father with gender ""
L_001e: ldarg.1
L_001f: ldfld Verse.Gender gender
L_0024: box Verse.Gender
L_0029: ldstr ""."
L_002e: call System.String Concat(System.Object, System.Object, System.Object)
L_0033: call Void Warning(System.String)
L_0038: ldc.r4 0
L_003d: br Label #0
L_0042: Label #2
L_0042: Label #3
L_0042: ldarg.2
L_0043: brfalse Label #4
L_0048: ldarg.2
L_0049: ldfld Verse.Gender gender
L_004e: ldc.i4.2
L_004f: beq Label #5
L_0054: ldstr "Tried to calculate chance for mother with gender ""
L_0059: ldarg.2
L_005a: ldfld Verse.Gender gender
L_005f: box Verse.Gender
L_0064: ldstr ""."
L_0069: call System.String Concat(System.Object, System.Object, System.Object)
L_006e: call Void Warning(System.String)
L_0073: ldc.r4 0
L_0078: br Label #0
L_007d: Label #4
L_007d: Label #5
L_007d: ldarg.1
L_007e: brfalse Label #6
L_0083: ldarg.0
L_0084: call Verse.Pawn GetFather(Verse.Pawn)
L_0089: brfalse Label #7
L_008e: ldarg.0
L_008f: call Verse.Pawn GetFather(Verse.Pawn)
L_0094: ldarg.1
L_0095: beq Label #8
L_009a: ldc.r4 0
L_009f: br Label #0
L_00a4: Label #6
L_00a4: Label #7
L_00a4: Label #8
L_00a4: ldarg.2
L_00a5: brfalse Label #9
L_00aa: ldarg.0
L_00ab: call Verse.Pawn GetMother(Verse.Pawn)
L_00b0: brfalse Label #10
L_00b5: ldarg.0
L_00b6: call Verse.Pawn GetMother(Verse.Pawn)
L_00bb: ldarg.2
L_00bc: beq Label #11
L_00c1: ldc.r4 0
L_00c6: br Label #0
L_00cb: Label #9
L_00cb: Label #10
L_00cb: Label #11
L_00cb: ldarg.2
L_00cc: brfalse Label #12
L_00d1: ldarg.1
L_00d2: brfalse Label #13
L_00d7: ldarg.2
L_00d8: ldarg.1
L_00d9: call Boolean LovePartnerRelationExists(Verse.Pawn, Verse.Pawn)
L_00de: brtrue Label #14
L_00e3: ldarg.2
L_00e4: ldarg.1
L_00e5: call Boolean ExLovePartnerRelationExists(Verse.Pawn, Verse.Pawn)
L_00ea: brtrue Label #15
L_00ef: ldc.r4 0
L_00f4: br Label #0
L_00f9: Label #12
L_00f9: Label #13
L_00f9: Label #14
L_00f9: Label #15
L_00f9: ldarg.0
L_00fa: ldarg.3
L_00fb: call Nullable`1 GetMelanin(Verse.Pawn, Nullable`1)
L_0100: stloc.0
L_0101: ldarg.1
L_0102: ldarg.s 4
L_0104: call Nullable`1 GetMelanin(Verse.Pawn, Nullable`1)
L_0109: stloc.1
L_010a: ldarg.2
L_010b: ldarg.s 5
L_010d: call Nullable`1 GetMelanin(Verse.Pawn, Nullable`1)
L_0112: stloc.2
L_0113: ldarg.1
L_0114: brfalse Label #16
L_0119: ldarg.0
L_011a: call Verse.Pawn GetFather(Verse.Pawn)
L_011f: ldarg.1
L_0120: ceq
L_0122: ldc.i4.0
L_0123: ceq
L_0125: br Label #17
L_012a: Label #16
L_012a: ldc.i4.0
L_012b: Label #17
L_012b: stloc.3
L_012c: ldarg.2
L_012d: brfalse Label #18
L_0132: ldarg.0
L_0133: call Verse.Pawn GetMother(Verse.Pawn)
L_0138: ldarg.2
L_0139: ceq
L_013b: ldc.i4.0
L_013c: ceq
L_013e: br Label #19
L_0143: Label #18
L_0143: ldc.i4.0
L_0144: Label #19
L_0144: stloc.s 4 (System.Boolean)
L_0146: ldloc.0
L_0147: ldloc.1
L_0148: ldloc.2
L_0149: ldloc.3
L_014a: ldloc.s 4 (System.Boolean)
L_014c: call Single GetSkinColorFactor(Nullable`1, Nullable`1, Nullable`1, Boolean,
Boolean)
L_0151: stloc.s 5 (System.Single)
L_0153: ldloc.s 5 (System.Single)
L_0155: ldc.r4 0
L_015a: bgt.un Label #20
L_015f: ldc.r4 0
L_0164: br Label #0
L_0169: Label #20
L_0169: ldc.r4 1
L_016e: stloc.s 6 (System.Single)
L_0170: ldc.r4 1
L_0175: stloc.s 7 (System.Single)
L_0177: ldc.r4 1
L_017c: stloc.s 8 (System.Single)
L_017e: ldc.r4 1
L_0183: stloc.s 9 (System.Single)
L_0185: ldarg.1
L_0186: brfalse Label #21
L_018b: ldarg.0
L_018c: call Verse.Pawn GetFather(Verse.Pawn)
L_0191: brtrue Label #22
L_0196: ldarg.1
L_0197: ldarg.0
L_0198: ldc.r4 14
L_019d: ldc.r4 30
L_01a2: ldc.r4 50
L_01a7: call Single GetParentAgeFactor(Verse.Pawn, Verse.Pawn, Single, Single,
Single)
L_01ac: stloc.s 6 (System.Single)
L_01ae: ldloc.s 6 (System.Single)
L_01b0: ldc.r4 0
L_01b5: bne.un Label #23
L_01ba: ldc.r4 0
L_01bf: br Label #0
L_01c4: Label #23
L_01c4: ldarg.1
L_01c5: ldfld RimWorld.Pawn_StoryTracker story
L_01ca: ldfld RimWorld.TraitSet traits
L_01cf: ldsfld RimWorld.TraitDef Gay
L_01d4: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_01d9: brfalse Label #24
L_01de: ldc.r4 0.1
L_01e3: stloc.s 9 (System.Single)
L_01e5: Label #21
L_01e5: Label #22
L_01e5: Label #24
L_01e5: ldarg.2
L_01e6: brfalse Label #25
L_01eb: ldarg.0
L_01ec: call Verse.Pawn GetMother(Verse.Pawn)
L_01f1: brtrue Label #26
L_01f6: ldarg.2
L_01f7: ldarg.0
L_01f8: ldc.r4 16
L_01fd: ldc.r4 27
L_0202: ldc.r4 45
L_0207: call Single GetParentAgeFactor(Verse.Pawn, Verse.Pawn, Single, Single,
Single)
L_020c: stloc.s 7 (System.Single)
L_020e: ldloc.s 7 (System.Single)
L_0210: ldc.r4 0
L_0215: bne.un Label #27
L_021a: ldc.r4 0
L_021f: br Label #0
L_0224: Label #27
L_0224: ldarg.2
L_0225: call Int32 NumberOfChildrenFemaleWantsEver(Verse.Pawn)
L_022a: stloc.s 10 (System.Int32)
L_022c: ldarg.2
L_022d: ldfld RimWorld.Pawn_RelationsTracker relations
L_0232: callvirt Int32 get_ChildrenCount()
L_0237: ldloc.s 10 (System.Int32)
L_0239: blt Label #28
L_023e: ldc.r4 0
L_0243: br Label #0
L_0248: Label #28
L_0248: ldc.r4 1
L_024d: ldarg.2
L_024e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0253: callvirt Int32 get_ChildrenCount()
L_0258: conv.r4
L_0259: ldloc.s 10 (System.Int32)
L_025b: conv.r4
L_025c: div
L_025d: sub
L_025e: stloc.s 8 (System.Single)
L_0260: ldarg.2
L_0261: ldfld RimWorld.Pawn_StoryTracker story
L_0266: ldfld RimWorld.TraitSet traits
L_026b: ldsfld RimWorld.TraitDef Gay
L_0270: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0275: brfalse Label #29
L_027a: ldc.r4 0.1
L_027f: stloc.s 9 (System.Single)
L_0281: Label #25
L_0281: Label #26
L_0281: Label #29
L_0281: ldc.r4 1
L_0286: stloc.s 11 (System.Single)
L_0288: ldarg.2
L_0289: brfalse Label #30
L_028e: ldarg.2
L_028f: ldfld RimWorld.Pawn_RelationsTracker relations
L_0294: ldsfld RimWorld.PawnRelationDef Spouse
L_0299: ldnull
L_029a: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_029f: stloc.s 12 (Verse.Pawn)
L_02a1: ldloc.s 12 (Verse.Pawn)
L_02a3: brfalse Label #31
L_02a8: ldloc.s 12 (Verse.Pawn)
L_02aa: ldarg.1
L_02ab: beq Label #32
L_02b0: ldloc.s 11 (System.Single)
L_02b2: ldc.r4 0.15
L_02b7: mul
L_02b8: stloc.s 11 (System.Single)
L_02ba: Label #30
L_02ba: Label #31
L_02ba: Label #32
L_02ba: ldarg.1
L_02bb: brfalse Label #33
L_02c0: ldarg.1
L_02c1: ldfld RimWorld.Pawn_RelationsTracker relations
L_02c6: ldsfld RimWorld.PawnRelationDef Spouse
L_02cb: ldnull
L_02cc: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_02d1: stloc.s 13 (Verse.Pawn)
L_02d3: ldloc.s 13 (Verse.Pawn)
L_02d5: brfalse Label #34
L_02da: ldloc.s 13 (Verse.Pawn)
L_02dc: ldarg.2
L_02dd: beq Label #35
L_02e2: ldloc.s 11 (System.Single)
L_02e4: ldc.r4 0.15
L_02e9: mul
L_02ea: stloc.s 11 (System.Single)
L_02ec: Label #33
L_02ec: Label #34
L_02ec: Label #35
L_02ec: ldloc.s 5 (System.Single)
L_02ee: ldloc.s 6 (System.Single)
L_02f0: mul
L_02f1: ldloc.s 7 (System.Single)
L_02f3: mul
L_02f4: ldloc.s 8 (System.Single)
L_02f6: mul
L_02f7: ldloc.s 11 (System.Single)
L_02f9: mul
L_02fa: ldloc.s 9 (System.Single)
L_02fc: mul
L_02fd: br Label #0
L_0302: Label #0
L_0302: stloc 14 (System.Single)
L_0304: ldloca 14 (System.Single)
L_0306: ldarg 1
L_030c: ldarg 2
L_0312: ldarg 0
L_0318: call Void KinseyFactor(Single ByRef, Verse.Pawn, Verse.Pawn, Verse.Pawn)
L_031d: ldloc 14 (System.Single)
L_031f: ret
DONE

PATCHING RimWorld.FoodUtility
System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ThoughtsFromIngesting(Verse.Pawn, Verse.Thing)
L_0000: Local var #0 Verse.ThingDef
L_0000: Local var #1 RimWorld.CompIngredients
L_0000: Local var #2 System.Int32
L_0000: Local var #3 Verse.ThingDef
L_0000: Local var #4 System.Collections.Generic.List`1[[RimWorld.ThoughtDef,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldnull
L_0001: stloc 4 (System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_0003: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_0008: callvirt Void Clear()
L_000d: ldarg.0
L_000e: ldfld RimWorld.Pawn_NeedsTracker needs
L_0013: brfalse Label #2
L_0018: ldarg.0
L_0019: ldfld RimWorld.Pawn_NeedsTracker needs
L_001e: ldfld RimWorld.Need_Mood mood
L_0023: brtrue Label #3
L_0028: Label #2
L_0028: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_002d: br Label #0
L_0032: Label #3
L_0032: ldarg.1
L_0033: ldfld Verse.ThingDef def
L_0038: stloc.0
L_0039: ldloc.0
L_003a: ldsfld Verse.ThingDef NutrientPasteDispenser
L_003f: bne.un Label #4
L_0044: ldsfld Verse.ThingDef MealNutrientPaste
L_0049: stloc.0
L_004a: Label #4
L_004a: ldarg.0
L_004b: ldfld RimWorld.Pawn_StoryTracker story
L_0050: ldfld RimWorld.TraitSet traits
L_0055: ldsfld RimWorld.TraitDef Ascetic
L_005a: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_005f: brtrue Label #5
L_0064: ldloc.0
L_0065: ldfld RimWorld.IngestibleProperties ingestible
L_006a: ldfld RimWorld.ThoughtDef tasteThought
L_006f: brfalse Label #6
L_0074: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_0079: ldloc.0
L_007a: ldfld RimWorld.IngestibleProperties ingestible
L_007f: ldfld RimWorld.ThoughtDef tasteThought
L_0084: callvirt Void Add(RimWorld.ThoughtDef)
L_0089: Label #5
L_0089: Label #6
L_0089: ldarg.1
L_008a: call RimWorld.CompIngredients TryGetComp[CompIngredients](Verse.Thing)
L_008f: stloc.1
L_0090: ldloc.0
L_0091: call Boolean IsHumanlikeMeat(Verse.ThingDef)
L_0096: brfalse Label #7
L_009b: ldarg.0
L_009c: callvirt Verse.RaceProperties get_RaceProps()
L_00a1: callvirt Boolean get_Humanlike()
L_00a6: brfalse Label #8
L_00ab: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_00b0: ldarg.0
L_00b1: ldfld RimWorld.Pawn_StoryTracker story
L_00b6: ldfld RimWorld.TraitSet traits
L_00bb: ldsfld RimWorld.TraitDef Cannibal
L_00c0: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_00c5: brfalse Label #9
L_00ca: ldsfld RimWorld.ThoughtDef AteHumanlikeMeatDirectCannibal
L_00cf: br Label #10
L_00d4: Label #9
L_00d4: ldsfld RimWorld.ThoughtDef AteHumanlikeMeatDirect
L_00d9: Label #10
L_00d9: callvirt Void Add(RimWorld.ThoughtDef)
L_00de: br Label #11
L_00e3: Label #7
L_00e3: Label #8
L_00e3: ldloc.1
L_00e4: brfalse Label #12
L_00e9: ldc.i4.0
L_00ea: stloc.2
L_00eb: br Label #13
L_00f0: Label #21
L_00f0: ldloc.1
L_00f1: ldfld System.Collections.Generic.List`1[Verse.ThingDef] ingredients
L_00f6: ldloc.2
L_00f7: callvirt Verse.ThingDef get_Item(Int32)
L_00fc: stloc.3
L_00fd: ldloc.3
L_00fe: ldfld RimWorld.IngestibleProperties ingestible
L_0103: brfalse Label #14
L_0108: ldarg.0
L_0109: callvirt Verse.RaceProperties get_RaceProps()
L_010e: callvirt Boolean get_Humanlike()
L_0113: brfalse Label #15
L_0118: ldloc.3
L_0119: call Boolean IsHumanlikeMeat(Verse.ThingDef)
L_011e: brfalse Label #16
L_0123: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_0128: ldarg.0
L_0129: ldfld RimWorld.Pawn_StoryTracker story
L_012e: ldfld RimWorld.TraitSet traits
L_0133: ldsfld RimWorld.TraitDef Cannibal
L_0138: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_013d: brfalse Label #17
L_0142: ldsfld RimWorld.ThoughtDef AteHumanlikeMeatAsIngredientCannibal
L_0147: br Label #18
L_014c: Label #17
L_014c: ldsfld RimWorld.ThoughtDef AteHumanlikeMeatAsIngredient
L_0151: Label #18
L_0151: callvirt Void Add(RimWorld.ThoughtDef)
L_0156: br Label #19
L_015b: Label #15
L_015b: Label #16
L_015b: ldloc.3
L_015c: ldfld RimWorld.IngestibleProperties ingestible
L_0161: ldfld RimWorld.ThoughtDef specialThoughtAsIngredient
L_0166: brfalse Label #20
L_016b: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_0170: ldloc.3
L_0171: ldfld RimWorld.IngestibleProperties ingestible
L_0176: ldfld RimWorld.ThoughtDef specialThoughtAsIngredient
L_017b: callvirt Void Add(RimWorld.ThoughtDef)
L_0180: Label #14
L_0180: Label #19
L_0180: Label #20
L_0180: ldloc.2
L_0181: ldc.i4.1
L_0182: add
L_0183: stloc.2
L_0184: Label #13
L_0184: ldloc.2
L_0185: ldloc.1
L_0186: ldfld System.Collections.Generic.List`1[Verse.ThingDef] ingredients
L_018b: callvirt Int32 get_Count()
L_0190: blt Label #21
L_0195: br Label #22
L_019a: Label #12
L_019a: ldloc.0
L_019b: ldfld RimWorld.IngestibleProperties ingestible
L_01a0: ldfld RimWorld.ThoughtDef specialThoughtDirect
L_01a5: brfalse Label #23
L_01aa: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_01af: ldloc.0
L_01b0: ldfld RimWorld.IngestibleProperties ingestible
L_01b5: ldfld RimWorld.ThoughtDef specialThoughtDirect
L_01ba: callvirt Void Add(RimWorld.ThoughtDef)
L_01bf: Label #11
L_01bf: Label #22
L_01bf: Label #23
L_01bf: ldarg.1
L_01c0: call Boolean IsNotFresh(Verse.Thing)
L_01c5: brfalse Label #24
L_01ca: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_01cf: ldsfld RimWorld.ThoughtDef AteRottenFood
L_01d4: callvirt Void Add(RimWorld.ThoughtDef)
L_01d9: Label #24
L_01d9: ldsfld System.Collections.Generic.List`1[RimWorld.ThoughtDef]
ingestThoughts
L_01de: br Label #0
L_01e3: Label #0
L_01e3: stloc 4 (System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_01e5: ldarg 0
L_01eb: ldarg 1
L_01f1: ldloca 4 (System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_01f3: call Void ThoughtsFromIngestingPostfix(Verse.Pawn, Verse.Thing,
System.Collections.Generic.List`1[RimWorld.ThoughtDef] ByRef)
L_01f8: ldloca 4 (System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_01fa: call Void
AddPickyThoughtsPatch(System.Collections.Generic.List`1[RimWorld.ThoughtDef] ByRef)
L_01ff: ldloc 4 (System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_0201: ret
DONE

PATCHING RimWorld.InteractionWorker_Breakup Void Interacted(Verse.Pawn, Verse.Pawn,


System.Collections.Generic.List`1[Verse.RulePackDef])
L_0000: Local var #0 RimWorld.Thought
L_0000: Local var #1 Verse.Pawn
L_0000: Local var #2 System.Text.StringBuilder
L_0000: ldarg.0
L_0001: ldarg 1
L_0007: ldarg 2
L_000d: ldarg 3
L_0013: call Boolean NewInteracted(RimWorld.InteractionWorker_Breakup, Verse.Pawn,
Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0018: brfalse Label #1
L_001d: ldarg.0
L_001e: ldarg.1
L_001f: ldarg.2
L_0020: call RimWorld.Thought RandomBreakupReason(Verse.Pawn, Verse.Pawn)
L_0025: stloc.0
L_0026: ldarg.1
L_0027: ldfld RimWorld.Pawn_RelationsTracker relations
L_002c: ldsfld RimWorld.PawnRelationDef Spouse
L_0031: ldarg.2
L_0032: callvirt Boolean DirectRelationExists(RimWorld.PawnRelationDef, Verse.Pawn)
L_0037: brfalse Label #2
L_003c: ldarg.1
L_003d: ldfld RimWorld.Pawn_RelationsTracker relations
L_0042: ldsfld RimWorld.PawnRelationDef Spouse
L_0047: ldarg.2
L_0048: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_004d: ldarg.1
L_004e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0053: ldsfld RimWorld.PawnRelationDef ExSpouse
L_0058: ldarg.2
L_0059: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_005e: ldarg.2
L_005f: ldfld RimWorld.Pawn_NeedsTracker needs
L_0064: ldfld RimWorld.Need_Mood mood
L_0069: ldfld RimWorld.ThoughtHandler thoughts
L_006e: ldfld RimWorld.MemoryThoughtHandler memories
L_0073: ldsfld RimWorld.ThoughtDef DivorcedMe
L_0078: ldarg.1
L_0079: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_007e: ldarg.1
L_007f: ldfld RimWorld.Pawn_NeedsTracker needs
L_0084: ldfld RimWorld.Need_Mood mood
L_0089: ldfld RimWorld.ThoughtHandler thoughts
L_008e: ldfld RimWorld.MemoryThoughtHandler memories
L_0093: ldsfld RimWorld.ThoughtDef GotMarried
L_0098: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_009d: ldarg.2
L_009e: ldfld RimWorld.Pawn_NeedsTracker needs
L_00a3: ldfld RimWorld.Need_Mood mood
L_00a8: ldfld RimWorld.ThoughtHandler thoughts
L_00ad: ldfld RimWorld.MemoryThoughtHandler memories
L_00b2: ldsfld RimWorld.ThoughtDef GotMarried
L_00b7: callvirt Void RemoveMemoriesOfDef(RimWorld.ThoughtDef)
L_00bc: ldarg.1
L_00bd: ldfld RimWorld.Pawn_NeedsTracker needs
L_00c2: ldfld RimWorld.Need_Mood mood
L_00c7: ldfld RimWorld.ThoughtHandler thoughts
L_00cc: ldfld RimWorld.MemoryThoughtHandler memories
L_00d1: ldsfld RimWorld.ThoughtDef HoneymoonPhase
L_00d6: ldarg.2
L_00d7: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00dc: ldarg.2
L_00dd: ldfld RimWorld.Pawn_NeedsTracker needs
L_00e2: ldfld RimWorld.Need_Mood mood
L_00e7: ldfld RimWorld.ThoughtHandler thoughts
L_00ec: ldfld RimWorld.MemoryThoughtHandler memories
L_00f1: ldsfld RimWorld.ThoughtDef HoneymoonPhase
L_00f6: ldarg.1
L_00f7: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00fc: br Label #3
L_0101: Label #2
L_0101: ldarg.1
L_0102: ldfld RimWorld.Pawn_RelationsTracker relations
L_0107: ldsfld RimWorld.PawnRelationDef Lover
L_010c: ldarg.2
L_010d: callvirt Boolean TryRemoveDirectRelation(RimWorld.PawnRelationDef,
Verse.Pawn)
L_0112: pop
L_0113: ldarg.1
L_0114: ldfld RimWorld.Pawn_RelationsTracker relations
L_0119: ldsfld RimWorld.PawnRelationDef Fiance
L_011e: ldarg.2
L_011f: callvirt Boolean TryRemoveDirectRelation(RimWorld.PawnRelationDef,
Verse.Pawn)
L_0124: pop
L_0125: ldarg.1
L_0126: ldfld RimWorld.Pawn_RelationsTracker relations
L_012b: ldsfld RimWorld.PawnRelationDef ExLover
L_0130: ldarg.2
L_0131: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0136: ldarg.2
L_0137: ldfld RimWorld.Pawn_NeedsTracker needs
L_013c: ldfld RimWorld.Need_Mood mood
L_0141: ldfld RimWorld.ThoughtHandler thoughts
L_0146: ldfld RimWorld.MemoryThoughtHandler memories
L_014b: ldsfld RimWorld.ThoughtDef BrokeUpWithMe
L_0150: ldarg.1
L_0151: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0156: Label #3
L_0156: ldarg.1
L_0157: ldfld RimWorld.Pawn_Ownership ownership
L_015c: callvirt RimWorld.Building_Bed get_OwnedBed()
L_0161: brfalse Label #4
L_0166: ldarg.1
L_0167: ldfld RimWorld.Pawn_Ownership ownership
L_016c: callvirt RimWorld.Building_Bed get_OwnedBed()
L_0171: ldarg.2
L_0172: ldfld RimWorld.Pawn_Ownership ownership
L_0177: callvirt RimWorld.Building_Bed get_OwnedBed()
L_017c: bne.un Label #5
L_0181: call Single get_Value()
L_0186: ldc.r4 0.5
L_018b: bge.un Label #6
L_0190: ldarg.1
L_0191: br Label #7
L_0196: Label #6
L_0196: ldarg.2
L_0197: Label #7
L_0197: stloc.1
L_0198: ldloc.1
L_0199: ldfld RimWorld.Pawn_Ownership ownership
L_019e: callvirt Void UnclaimBed()
L_01a3: Label #4
L_01a3: Label #5
L_01a3: ldsfld RimWorld.TaleDef Breakup
L_01a8: ldc.i4.2
L_01a9: newarr System.Object
L_01ae: dup
L_01af: ldc.i4.0
L_01b0: ldarg.1
L_01b1: stelem.ref
L_01b2: dup
L_01b3: ldc.i4.1
L_01b4: ldarg.2
L_01b5: stelem.ref
L_01b6: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_01bb: newobj Void .ctor()
L_01c0: stloc.2
L_01c1: ldloc.2
L_01c2: ldstr "LetterNoLongerLovers"
L_01c7: ldc.i4.2
L_01c8: newarr System.Object
L_01cd: dup
L_01ce: ldc.i4.0
L_01cf: ldarg.1
L_01d0: callvirt System.String get_LabelShort()
L_01d5: stelem.ref
L_01d6: dup
L_01d7: ldc.i4.1
L_01d8: ldarg.2
L_01d9: callvirt System.String get_LabelShort()
L_01de: stelem.ref
L_01df: call System.String Translate(System.String, System.Object[])
L_01e4: callvirt System.Text.StringBuilder AppendLine(System.String)
L_01e9: pop
L_01ea: ldloc.0
L_01eb: brfalse Label #8
L_01f0: ldloc.2
L_01f1: callvirt System.Text.StringBuilder AppendLine()
L_01f6: pop
L_01f7: ldloc.2
L_01f8: ldstr "FinalStraw"
L_01fd: ldc.i4.1
L_01fe: newarr System.Object
L_0203: dup
L_0204: ldc.i4.0
L_0205: ldloc.0
L_0206: callvirt RimWorld.ThoughtStage get_CurStage()
L_020b: ldfld System.String label
L_0210: stelem.ref
L_0211: call System.String Translate(System.String, System.Object[])
L_0216: callvirt System.Text.StringBuilder AppendLine(System.String)
L_021b: pop
L_021c: Label #8
L_021c: ldarg.1
L_021d: call Boolean ShouldSendNotificationAbout(Verse.Pawn)
L_0222: brtrue Label #9
L_0227: ldarg.2
L_0228: call Boolean ShouldSendNotificationAbout(Verse.Pawn)
L_022d: brfalse Label #10
L_0232: Label #9
L_0232: call Verse.LetterStack get_LetterStack()
L_0237: ldstr "LetterLabelBreakup"
L_023c: call System.String Translate(System.String)
L_0241: ldloc.2
L_0242: callvirt System.String ToString()
L_0247: ldsfld Verse.LetterDef BadNonUrgent
L_024c: ldarg.1
L_024d: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0252: ldnull
L_0253: callvirt Void ReceiveLetter(System.String, System.String, Verse.LetterDef,
GlobalTargetInfo, System.String)
L_0258: Label #10
L_0258: br Label #0
L_025d: Label #0
L_025d: Label #1
L_025d: ret
DONE

PATCHING RimWorld.InteractionWorker_Breakup Single


RandomSelectionWeight(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: ldc.r4 0
L_0005: stloc 2 (System.Single)
L_0006: ldarg.0
L_0007: ldloca 2 (System.Single)
L_0009: ldarg 1
L_000f: ldarg 2
L_0015: call Boolean NewSelectionWeight(RimWorld.InteractionWorker_Breakup, Single
ByRef, Verse.Pawn, Verse.Pawn)
L_001a: brfalse Label #1
L_001f: ldarg.1
L_0020: ldarg.2
L_0021: call Boolean LovePartnerRelationExists(Verse.Pawn, Verse.Pawn)
L_0026: brtrue Label #2
L_002b: ldc.r4 0
L_0030: br Label #0
L_0035: Label #2
L_0035: ldc.r4 100
L_003a: ldc.r4 -100
L_003f: ldarg.1
L_0040: ldfld RimWorld.Pawn_RelationsTracker relations
L_0045: ldarg.2
L_0046: callvirt Int32 OpinionOf(Verse.Pawn)
L_004b: conv.r4
L_004c: call Single InverseLerp(Single, Single, Single)
L_0051: stloc.0
L_0052: ldc.r4 1
L_0057: stloc.1
L_0058: ldarg.1
L_0059: ldfld RimWorld.Pawn_RelationsTracker relations
L_005e: ldsfld RimWorld.PawnRelationDef Spouse
L_0063: ldarg.2
L_0064: callvirt Boolean DirectRelationExists(RimWorld.PawnRelationDef, Verse.Pawn)
L_0069: brfalse Label #3
L_006e: ldc.r4 0.4
L_0073: stloc.1
L_0074: Label #3
L_0074: ldc.r4 0.02
L_0079: ldloc.0
L_007a: mul
L_007b: ldloc.1
L_007c: mul
L_007d: br Label #0
L_0082: Label #0
L_0082: stloc 2 (System.Single)
L_0083: Label #1
L_0083: ldloc 2 (System.Single)
L_0084: ret
DONE

PATCHING RimWorld.InteractionWorker_RomanceAttempt Void


BreakLoverAndFianceRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_0000: Local var #0 Verse.Pawn
L_0000: Local var #1 Verse.Pawn
L_0000: ldarg 1
L_0006: ldarg 2
L_000c: call Boolean BreakRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_0011: brfalse Label #1
L_0016: ldarg.2
L_0017: newobj Void .ctor()
L_001c: stind.ref
L_001d: Label #3
L_001d: Label #5
L_001d: Label #7
L_001d: ldarg.1
L_001e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0023: ldsfld RimWorld.PawnRelationDef Lover
L_0028: ldnull
L_0029: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_002e: stloc.0
L_002f: ldloc.0
L_0030: brfalse Label #2
L_0035: ldarg.1
L_0036: ldfld RimWorld.Pawn_RelationsTracker relations
L_003b: ldsfld RimWorld.PawnRelationDef Lover
L_0040: ldloc.0
L_0041: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0046: ldarg.1
L_0047: ldfld RimWorld.Pawn_RelationsTracker relations
L_004c: ldsfld RimWorld.PawnRelationDef ExLover
L_0051: ldloc.0
L_0052: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_0057: ldarg.2
L_0058: ldind.ref
L_0059: ldloc.0
L_005a: callvirt Void Add(Verse.Pawn)
L_005f: br Label #3
L_0064: Label #2
L_0064: ldarg.1
L_0065: ldfld RimWorld.Pawn_RelationsTracker relations
L_006a: ldsfld RimWorld.PawnRelationDef Fiance
L_006f: ldnull
L_0070: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_0075: stloc.1
L_0076: ldloc.1
L_0077: brfalse Label #4
L_007c: ldarg.1
L_007d: ldfld RimWorld.Pawn_RelationsTracker relations
L_0082: ldsfld RimWorld.PawnRelationDef Fiance
L_0087: ldloc.1
L_0088: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_008d: ldarg.1
L_008e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0093: ldsfld RimWorld.PawnRelationDef ExLover
L_0098: ldloc.1
L_0099: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_009e: ldarg.2
L_009f: ldind.ref
L_00a0: ldloc.1
L_00a1: callvirt Void Add(Verse.Pawn)
L_00a6: br Label #5
L_00ab: Label #4
L_00ab: br Label #6
L_00b0: br Label #7
L_00b5: Label #6
L_00b5: br Label #0
L_00ba: Label #0
L_00ba: Label #1
L_00ba: ret
DONE

PATCHING RimWorld.InteractionWorker_RomanceAttempt Single


RandomSelectionWeight(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Int32
L_0000: Local var #2 System.Single
L_0000: Local var #3 Verse.Pawn
L_0000: Local var #4 System.Single
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: Local var #7 System.Single
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: ldc.r4 0
L_0005: stloc 9 (System.Single)
L_0007: ldarg.1
L_0008: ldarg.2
L_0009: call Boolean LovePartnerRelationExists(Verse.Pawn, Verse.Pawn)
L_000e: brfalse Label #2
L_0013: ldc.r4 0
L_0018: br Label #0
L_001d: Label #2
L_001d: ldarg.1
L_001e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0023: ldarg.2
L_0024: callvirt Single SecondaryRomanceChanceFactor(Verse.Pawn)
L_0029: stloc.0
L_002a: ldloc.0
L_002b: ldc.r4 0.25
L_0030: bge.un Label #3
L_0035: ldc.r4 0
L_003a: br Label #0
L_003f: Label #3
L_003f: ldarg.1
L_0040: ldfld RimWorld.Pawn_RelationsTracker relations
L_0045: ldarg.2
L_0046: callvirt Int32 OpinionOf(Verse.Pawn)
L_004b: stloc.1
L_004c: ldloc.1
L_004d: ldc.i4.5
L_004e: bge Label #4
L_0053: ldc.r4 0
L_0058: br Label #0
L_005d: Label #4
L_005d: ldarg.2
L_005e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0063: ldarg.1
L_0064: callvirt Int32 OpinionOf(Verse.Pawn)
L_0069: ldc.i4.5
L_006a: bge Label #5
L_006f: ldc.r4 0
L_0074: br Label #0
L_0079: Label #5
L_0079: ldc.r4 1
L_007e: stloc.2
L_007f: ldarg.1
L_0080: ldc.i4.0
L_0081: call Verse.Pawn ExistingMostLikedLovePartner(Verse.Pawn, Boolean)
L_0086: stloc.3
L_0087: ldloc.3
L_0088: brfalse Label #6
L_008d: ldarg.1
L_008e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0093: ldloc.3
L_0094: callvirt Int32 OpinionOf(Verse.Pawn)
L_0099: conv.r4
L_009a: stloc.s 4 (System.Single)
L_009c: ldc.r4 50
L_00a1: ldc.r4 -50
L_00a6: ldloc.s 4 (System.Single)
L_00a8: call Single InverseLerp(Single, Single, Single)
L_00ad: stloc.2
L_00ae: Label #6
L_00ae: ldarg.1
L_00af: ldfld RimWorld.Pawn_StoryTracker story
L_00b4: ldfld RimWorld.TraitSet traits
L_00b9: ldsfld RimWorld.TraitDef Gay
L_00be: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_00c3: brfalse Label #7
L_00c8: ldc.r4 1
L_00cd: br Label #8
L_00d2: Label #7
L_00d2: ldarg.1
L_00d3: ldfld Verse.Gender gender
L_00d8: ldc.i4.2
L_00d9: bne.un Label #9
L_00de: ldc.r4 0.15
L_00e3: br Label #10
L_00e8: Label #9
L_00e8: ldc.r4 1
L_00ed: Label #8
L_00ed: Label #10
L_00ed: stloc.s 5 (System.Single)
L_00ef: ldc.r4 0.25
L_00f4: ldc.r4 1
L_00f9: ldloc.0
L_00fa: call Single InverseLerp(Single, Single, Single)
L_00ff: stloc.s 6 (System.Single)
L_0101: ldc.r4 5
L_0106: ldc.r4 100
L_010b: ldloc.1
L_010c: conv.r4
L_010d: call Single InverseLerp(Single, Single, Single)
L_0112: stloc.s 7 (System.Single)
L_0114: ldarg.1
L_0115: ldfld Verse.Gender gender
L_011a: ldarg.2
L_011b: ldfld Verse.Gender gender
L_0120: bne.un Label #11
L_0125: ldarg.1
L_0126: ldfld RimWorld.Pawn_StoryTracker story
L_012b: ldfld RimWorld.TraitSet traits
L_0130: ldsfld RimWorld.TraitDef Gay
L_0135: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_013a: brfalse Label #12
L_013f: ldarg.2
L_0140: ldfld RimWorld.Pawn_StoryTracker story
L_0145: ldfld RimWorld.TraitSet traits
L_014a: ldsfld RimWorld.TraitDef Gay
L_014f: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0154: brfalse Label #13
L_0159: ldc.r4 1
L_015e: stloc.s 8 (System.Single)
L_0160: br Label #14
L_0165: Label #12
L_0165: Label #13
L_0165: ldc.r4 0.15
L_016a: stloc.s 8 (System.Single)
L_016c: Label #14
L_016c: br Label #15
L_0171: Label #11
L_0171: ldarg.1
L_0172: ldfld RimWorld.Pawn_StoryTracker story
L_0177: ldfld RimWorld.TraitSet traits
L_017c: ldsfld RimWorld.TraitDef Gay
L_0181: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0186: brtrue Label #16
L_018b: ldarg.2
L_018c: ldfld RimWorld.Pawn_StoryTracker story
L_0191: ldfld RimWorld.TraitSet traits
L_0196: ldsfld RimWorld.TraitDef Gay
L_019b: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_01a0: brtrue Label #17
L_01a5: ldc.r4 1
L_01aa: stloc.s 8 (System.Single)
L_01ac: br Label #18
L_01b1: Label #16
L_01b1: Label #17
L_01b1: ldc.r4 0.15
L_01b6: stloc.s 8 (System.Single)
L_01b8: Label #15
L_01b8: Label #18
L_01b8: ldc.r4 1.15
L_01bd: ldloc.s 5 (System.Single)
L_01bf: mul
L_01c0: ldloc.s 6 (System.Single)
L_01c2: mul
L_01c3: ldloc.s 7 (System.Single)
L_01c5: mul
L_01c6: ldloc.2
L_01c7: mul
L_01c8: ldloc.s 8 (System.Single)
L_01ca: mul
L_01cb: br Label #0
L_01d0: Label #0
L_01d0: stloc 9 (System.Single)
L_01d2: ldloca 9 (System.Single)
L_01d4: ldarg 1
L_01da: ldarg 2
L_01e0: call Void PsychologyException(Single ByRef, Verse.Pawn, Verse.Pawn)
L_01e5: ldloc 9 (System.Single)
L_01e7: ret
DONE

PATCHING RimWorld.InteractionWorker_RomanceAttempt Void Interacted(Verse.Pawn,


Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0000: Local var #0 System.Collections.Generic.List`1[[Verse.Pawn, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Collections.Generic.List`1[[Verse.Pawn, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #2 System.Int32
L_0000: Local var #3 System.Int32
L_0000: ldarg 1
L_0006: ldarg 2
L_000c: call Boolean LearnSexuality(Verse.Pawn, Verse.Pawn)
L_0011: brfalse Label #1
L_0016: call Single get_Value()
L_001b: ldarg.0
L_001c: ldarg.1
L_001d: ldarg.2
L_001e: call Single SuccessChance(Verse.Pawn, Verse.Pawn)
L_0023: bge.un Label #2
L_0028: ldarg.0
L_0029: ldarg.1
L_002a: ldloca.s 0 (System.Collections.Generic.List`1[Verse.Pawn])
L_002c: call Void BreakLoverAndFianceRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_0031: ldarg.0
L_0032: ldarg.2
L_0033: ldloca.s 1 (System.Collections.Generic.List`1[Verse.Pawn])
L_0035: call Void BreakLoverAndFianceRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_003a: ldc.i4.0
L_003b: stloc.2
L_003c: br Label #3
L_0041: Label #4
L_0041: ldarg.0
L_0042: ldloc.0
L_0043: ldloc.2
L_0044: callvirt Verse.Pawn get_Item(Int32)
L_0049: ldarg.1
L_004a: call Void TryAddCheaterThought(Verse.Pawn, Verse.Pawn)
L_004f: ldloc.2
L_0050: ldc.i4.1
L_0051: add
L_0052: stloc.2
L_0053: Label #3
L_0053: ldloc.2
L_0054: ldloc.0
L_0055: callvirt Int32 get_Count()
L_005a: blt Label #4
L_005f: ldc.i4.0
L_0060: stloc.3
L_0061: br Label #5
L_0066: Label #6
L_0066: ldarg.0
L_0067: ldloc.1
L_0068: ldloc.3
L_0069: callvirt Verse.Pawn get_Item(Int32)
L_006e: ldarg.2
L_006f: call Void TryAddCheaterThought(Verse.Pawn, Verse.Pawn)
L_0074: ldloc.3
L_0075: ldc.i4.1
L_0076: add
L_0077: stloc.3
L_0078: Label #5
L_0078: ldloc.3
L_0079: ldloc.1
L_007a: callvirt Int32 get_Count()
L_007f: blt Label #6
L_0084: ldarg.1
L_0085: ldfld RimWorld.Pawn_RelationsTracker relations
L_008a: ldsfld RimWorld.PawnRelationDef ExLover
L_008f: ldarg.2
L_0090: callvirt Boolean TryRemoveDirectRelation(RimWorld.PawnRelationDef,
Verse.Pawn)
L_0095: pop
L_0096: ldarg.1
L_0097: ldfld RimWorld.Pawn_RelationsTracker relations
L_009c: ldsfld RimWorld.PawnRelationDef Lover
L_00a1: ldarg.2
L_00a2: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_00a7: ldsfld RimWorld.TaleDef BecameLover
L_00ac: ldc.i4.2
L_00ad: newarr System.Object
L_00b2: dup
L_00b3: ldc.i4.0
L_00b4: ldarg.1
L_00b5: stelem.ref
L_00b6: dup
L_00b7: ldc.i4.1
L_00b8: ldarg.2
L_00b9: stelem.ref
L_00ba: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_00bf: ldarg.1
L_00c0: ldfld RimWorld.Pawn_NeedsTracker needs
L_00c5: ldfld RimWorld.Need_Mood mood
L_00ca: ldfld RimWorld.ThoughtHandler thoughts
L_00cf: ldfld RimWorld.MemoryThoughtHandler memories
L_00d4: ldsfld RimWorld.ThoughtDef BrokeUpWithMe
L_00d9: ldarg.2
L_00da: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00df: ldarg.2
L_00e0: ldfld RimWorld.Pawn_NeedsTracker needs
L_00e5: ldfld RimWorld.Need_Mood mood
L_00ea: ldfld RimWorld.ThoughtHandler thoughts
L_00ef: ldfld RimWorld.MemoryThoughtHandler memories
L_00f4: ldsfld RimWorld.ThoughtDef BrokeUpWithMe
L_00f9: ldarg.1
L_00fa: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00ff: ldarg.1
L_0100: ldfld RimWorld.Pawn_NeedsTracker needs
L_0105: ldfld RimWorld.Need_Mood mood
L_010a: ldfld RimWorld.ThoughtHandler thoughts
L_010f: ldfld RimWorld.MemoryThoughtHandler memories
L_0114: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_0119: ldarg.2
L_011a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_011f: ldarg.1
L_0120: ldfld RimWorld.Pawn_NeedsTracker needs
L_0125: ldfld RimWorld.Need_Mood mood
L_012a: ldfld RimWorld.ThoughtHandler thoughts
L_012f: ldfld RimWorld.MemoryThoughtHandler memories
L_0134: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0139: ldarg.2
L_013a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_013f: ldarg.2
L_0140: ldfld RimWorld.Pawn_NeedsTracker needs
L_0145: ldfld RimWorld.Need_Mood mood
L_014a: ldfld RimWorld.ThoughtHandler thoughts
L_014f: ldfld RimWorld.MemoryThoughtHandler memories
L_0154: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_0159: ldarg.1
L_015a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_015f: ldarg.2
L_0160: ldfld RimWorld.Pawn_NeedsTracker needs
L_0165: ldfld RimWorld.Need_Mood mood
L_016a: ldfld RimWorld.ThoughtHandler thoughts
L_016f: ldfld RimWorld.MemoryThoughtHandler memories
L_0174: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0179: ldarg.1
L_017a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_017f: ldarg.1
L_0180: callvirt Boolean get_IsColonist()
L_0185: brtrue Label #7
L_018a: ldarg.2
L_018b: callvirt Boolean get_IsColonist()
L_0190: brfalse Label #8
L_0195: Label #7
L_0195: ldarg.0
L_0196: ldarg.1
L_0197: ldarg.2
L_0198: ldloc.0
L_0199: ldloc.1
L_019a: call Void SendNewLoversLetter(Verse.Pawn, Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn],
System.Collections.Generic.List`1[Verse.Pawn])
L_019f: Label #8
L_019f: ldarg.3
L_01a0: ldsfld Verse.RulePackDef Sentence_RomanceAttemptAccepted
L_01a5: callvirt Void Add(Verse.RulePackDef)
L_01aa: ldarg.1
L_01ab: ldarg.2
L_01ac: call Void TryToShareBed(Verse.Pawn, Verse.Pawn)
L_01b1: br Label #9
L_01b6: Label #2
L_01b6: ldarg.1
L_01b7: ldfld RimWorld.Pawn_NeedsTracker needs
L_01bc: ldfld RimWorld.Need_Mood mood
L_01c1: ldfld RimWorld.ThoughtHandler thoughts
L_01c6: ldfld RimWorld.MemoryThoughtHandler memories
L_01cb: ldsfld RimWorld.ThoughtDef RebuffedMyRomanceAttempt
L_01d0: ldarg.2
L_01d1: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_01d6: ldarg.2
L_01d7: ldfld RimWorld.Pawn_NeedsTracker needs
L_01dc: ldfld RimWorld.Need_Mood mood
L_01e1: ldfld RimWorld.ThoughtHandler thoughts
L_01e6: ldfld RimWorld.MemoryThoughtHandler memories
L_01eb: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_01f0: ldarg.1
L_01f1: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_01f6: ldarg.2
L_01f7: ldfld RimWorld.Pawn_RelationsTracker relations
L_01fc: ldarg.1
L_01fd: callvirt Int32 OpinionOf(Verse.Pawn)
L_0202: ldc.i4.0
L_0203: bgt Label #10
L_0208: ldarg.2
L_0209: ldfld RimWorld.Pawn_NeedsTracker needs
L_020e: ldfld RimWorld.Need_Mood mood
L_0213: ldfld RimWorld.ThoughtHandler thoughts
L_0218: ldfld RimWorld.MemoryThoughtHandler memories
L_021d: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0222: ldarg.1
L_0223: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0228: Label #10
L_0228: ldarg.3
L_0229: ldsfld Verse.RulePackDef Sentence_RomanceAttemptRejected
L_022e: callvirt Void Add(Verse.RulePackDef)
L_0233: Label #9
L_0233: br Label #0
L_0238: Label #0
L_0238: Label #1
L_0238: ret
DONE
PATCHING RimWorld.InteractionWorker_RomanceAttempt Void Interacted(Verse.Pawn,
Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0000: Local var #0 System.Collections.Generic.List`1[[Verse.Pawn, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Collections.Generic.List`1[[Verse.Pawn, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #2 System.Int32
L_0000: Local var #3 System.Int32
L_0000: ldarg 1
L_0006: ldarg 2
L_000c: call Boolean LearnSexuality(Verse.Pawn, Verse.Pawn)
L_0011: brfalse Label #1
L_0016: call Single get_Value()
L_001b: ldarg.0
L_001c: ldarg.1
L_001d: ldarg.2
L_001e: call Single SuccessChance(Verse.Pawn, Verse.Pawn)
L_0023: bge.un Label #2
L_0028: ldarg.0
L_0029: ldarg.1
L_002a: ldloca.s 0 (System.Collections.Generic.List`1[Verse.Pawn])
L_002c: call Void BreakLoverAndFianceRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_0031: ldarg.0
L_0032: ldarg.2
L_0033: ldloca.s 1 (System.Collections.Generic.List`1[Verse.Pawn])
L_0035: call Void BreakLoverAndFianceRelations(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn] ByRef)
L_003a: ldc.i4.0
L_003b: stloc.2
L_003c: br Label #3
L_0041: Label #4
L_0041: ldarg.0
L_0042: ldloc.0
L_0043: ldloc.2
L_0044: callvirt Verse.Pawn get_Item(Int32)
L_0049: ldarg.1
L_004a: call Void TryAddCheaterThought(Verse.Pawn, Verse.Pawn)
L_004f: ldloc.2
L_0050: ldc.i4.1
L_0051: add
L_0052: stloc.2
L_0053: Label #3
L_0053: ldloc.2
L_0054: ldloc.0
L_0055: callvirt Int32 get_Count()
L_005a: blt Label #4
L_005f: ldc.i4.0
L_0060: stloc.3
L_0061: br Label #5
L_0066: Label #6
L_0066: ldarg.0
L_0067: ldloc.1
L_0068: ldloc.3
L_0069: callvirt Verse.Pawn get_Item(Int32)
L_006e: ldarg.2
L_006f: call Void TryAddCheaterThought(Verse.Pawn, Verse.Pawn)
L_0074: ldloc.3
L_0075: ldc.i4.1
L_0076: add
L_0077: stloc.3
L_0078: Label #5
L_0078: ldloc.3
L_0079: ldloc.1
L_007a: callvirt Int32 get_Count()
L_007f: blt Label #6
L_0084: ldarg.1
L_0085: ldfld RimWorld.Pawn_RelationsTracker relations
L_008a: ldsfld RimWorld.PawnRelationDef ExLover
L_008f: ldarg.2
L_0090: callvirt Boolean TryRemoveDirectRelation(RimWorld.PawnRelationDef,
Verse.Pawn)
L_0095: pop
L_0096: ldarg.1
L_0097: ldfld RimWorld.Pawn_RelationsTracker relations
L_009c: ldsfld RimWorld.PawnRelationDef Lover
L_00a1: ldarg.2
L_00a2: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_00a7: ldsfld RimWorld.TaleDef BecameLover
L_00ac: ldc.i4.2
L_00ad: newarr System.Object
L_00b2: dup
L_00b3: ldc.i4.0
L_00b4: ldarg.1
L_00b5: stelem.ref
L_00b6: dup
L_00b7: ldc.i4.1
L_00b8: ldarg.2
L_00b9: stelem.ref
L_00ba: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_00bf: ldarg.1
L_00c0: ldfld RimWorld.Pawn_NeedsTracker needs
L_00c5: ldfld RimWorld.Need_Mood mood
L_00ca: ldfld RimWorld.ThoughtHandler thoughts
L_00cf: ldfld RimWorld.MemoryThoughtHandler memories
L_00d4: ldsfld RimWorld.ThoughtDef BrokeUpWithMe
L_00d9: ldarg.2
L_00da: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00df: ldarg.2
L_00e0: ldfld RimWorld.Pawn_NeedsTracker needs
L_00e5: ldfld RimWorld.Need_Mood mood
L_00ea: ldfld RimWorld.ThoughtHandler thoughts
L_00ef: ldfld RimWorld.MemoryThoughtHandler memories
L_00f4: ldsfld RimWorld.ThoughtDef BrokeUpWithMe
L_00f9: ldarg.1
L_00fa: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_00ff: ldarg.1
L_0100: ldfld RimWorld.Pawn_NeedsTracker needs
L_0105: ldfld RimWorld.Need_Mood mood
L_010a: ldfld RimWorld.ThoughtHandler thoughts
L_010f: ldfld RimWorld.MemoryThoughtHandler memories
L_0114: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_0119: ldarg.2
L_011a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_011f: ldarg.1
L_0120: ldfld RimWorld.Pawn_NeedsTracker needs
L_0125: ldfld RimWorld.Need_Mood mood
L_012a: ldfld RimWorld.ThoughtHandler thoughts
L_012f: ldfld RimWorld.MemoryThoughtHandler memories
L_0134: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0139: ldarg.2
L_013a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_013f: ldarg.2
L_0140: ldfld RimWorld.Pawn_NeedsTracker needs
L_0145: ldfld RimWorld.Need_Mood mood
L_014a: ldfld RimWorld.ThoughtHandler thoughts
L_014f: ldfld RimWorld.MemoryThoughtHandler memories
L_0154: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_0159: ldarg.1
L_015a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_015f: ldarg.2
L_0160: ldfld RimWorld.Pawn_NeedsTracker needs
L_0165: ldfld RimWorld.Need_Mood mood
L_016a: ldfld RimWorld.ThoughtHandler thoughts
L_016f: ldfld RimWorld.MemoryThoughtHandler memories
L_0174: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0179: ldarg.1
L_017a: callvirt Void RemoveMemoriesOfDefWhereOtherPawnIs(RimWorld.ThoughtDef,
Verse.Pawn)
L_017f: ldarg.1
L_0180: callvirt Boolean get_IsColonist()
L_0185: brtrue Label #7
L_018a: ldarg.2
L_018b: callvirt Boolean get_IsColonist()
L_0190: brfalse Label #8
L_0195: Label #7
L_0195: ldarg.0
L_0196: ldarg.1
L_0197: ldarg.2
L_0198: ldloc.0
L_0199: ldloc.1
L_019a: call Void SendNewLoversLetter(Verse.Pawn, Verse.Pawn,
System.Collections.Generic.List`1[Verse.Pawn],
System.Collections.Generic.List`1[Verse.Pawn])
L_019f: Label #8
L_019f: ldarg.3
L_01a0: ldsfld Verse.RulePackDef Sentence_RomanceAttemptAccepted
L_01a5: callvirt Void Add(Verse.RulePackDef)
L_01aa: ldarg.1
L_01ab: ldarg.2
L_01ac: call Void TryToShareBed(Verse.Pawn, Verse.Pawn)
L_01b1: br Label #9
L_01b6: Label #2
L_01b6: ldarg.1
L_01b7: ldfld RimWorld.Pawn_NeedsTracker needs
L_01bc: ldfld RimWorld.Need_Mood mood
L_01c1: ldfld RimWorld.ThoughtHandler thoughts
L_01c6: ldfld RimWorld.MemoryThoughtHandler memories
L_01cb: ldsfld RimWorld.ThoughtDef RebuffedMyRomanceAttempt
L_01d0: ldarg.2
L_01d1: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_01d6: ldarg.2
L_01d7: ldfld RimWorld.Pawn_NeedsTracker needs
L_01dc: ldfld RimWorld.Need_Mood mood
L_01e1: ldfld RimWorld.ThoughtHandler thoughts
L_01e6: ldfld RimWorld.MemoryThoughtHandler memories
L_01eb: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMe
L_01f0: ldarg.1
L_01f1: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_01f6: ldarg.2
L_01f7: ldfld RimWorld.Pawn_RelationsTracker relations
L_01fc: ldarg.1
L_01fd: callvirt Int32 OpinionOf(Verse.Pawn)
L_0202: ldc.i4.0
L_0203: bgt Label #10
L_0208: ldarg.2
L_0209: ldfld RimWorld.Pawn_NeedsTracker needs
L_020e: ldfld RimWorld.Need_Mood mood
L_0213: ldfld RimWorld.ThoughtHandler thoughts
L_0218: ldfld RimWorld.MemoryThoughtHandler memories
L_021d: ldsfld RimWorld.ThoughtDef FailedRomanceAttemptOnMeLowOpinionMood
L_0222: ldarg.1
L_0223: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0228: Label #10
L_0228: ldarg.3
L_0229: ldsfld Verse.RulePackDef Sentence_RomanceAttemptRejected
L_022e: callvirt Void Add(Verse.RulePackDef)
L_0233: Label #9
L_0233: br Label #0
L_0238: Label #0
L_0238: Label #1
L_0238: ldarg.0
L_0239: ldarg 1
L_023f: ldarg 2
L_0245: ldarg 3
L_024b: call Void HandleNewThoughts(RimWorld.InteractionWorker_RomanceAttempt,
Verse.Pawn, Verse.Pawn, System.Collections.Generic.List`1[Verse.RulePackDef])
L_0250: ret
DONE

PATCHING RimWorld.InteractionWorker_RomanceAttempt Single SuccessChance(Verse.Pawn,


Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 Verse.Pawn
L_0000: Local var #3 System.Single
L_0000: ldc.r4 0
L_0005: stloc 3 (System.Single)
L_0006: ldc.r4 0.6
L_000b: stloc.0
L_000c: ldloc.0
L_000d: ldarg.2
L_000e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0013: ldarg.1
L_0014: callvirt Single SecondaryRomanceChanceFactor(Verse.Pawn)
L_0019: mul
L_001a: stloc.0
L_001b: ldloc.0
L_001c: ldc.r4 5
L_0021: ldc.r4 100
L_0026: ldarg.2
L_0027: ldfld RimWorld.Pawn_RelationsTracker relations
L_002c: ldarg.1
L_002d: callvirt Int32 OpinionOf(Verse.Pawn)
L_0032: conv.r4
L_0033: call Single InverseLerp(Single, Single, Single)
L_0038: mul
L_0039: stloc.0
L_003a: ldc.r4 1
L_003f: stloc.1
L_0040: ldnull
L_0041: stloc.2
L_0042: ldarg.2
L_0043: ldfld RimWorld.Pawn_RelationsTracker relations
L_0048: ldsfld RimWorld.PawnRelationDef Lover
L_004d: ldsfld System.Predicate`1[Verse.Pawn] <>f__am$cache0
L_0052: brtrue Label #2
L_0057: ldnull
L_0058: ldftn Boolean <SuccessChance>m__32C(Verse.Pawn)
L_005e: newobj Void .ctor(Object, IntPtr)
L_0063: stsfld System.Predicate`1[Verse.Pawn] <>f__am$cache0
L_0068: Label #2
L_0068: ldsfld System.Predicate`1[Verse.Pawn] <>f__am$cache0
L_006d: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_0072: brfalse Label #3
L_0077: ldarg.2
L_0078: ldfld RimWorld.Pawn_RelationsTracker relations
L_007d: ldsfld RimWorld.PawnRelationDef Lover
L_0082: ldnull
L_0083: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_0088: stloc.2
L_0089: ldc.r4 0.6
L_008e: stloc.1
L_008f: br Label #4
L_0094: Label #3
L_0094: ldarg.2
L_0095: ldfld RimWorld.Pawn_RelationsTracker relations
L_009a: ldsfld RimWorld.PawnRelationDef Fiance
L_009f: ldsfld System.Predicate`1[Verse.Pawn] <>f__am$cache1
L_00a4: brtrue Label #5
L_00a9: ldnull
L_00aa: ldftn Boolean <SuccessChance>m__32D(Verse.Pawn)
L_00b0: newobj Void .ctor(Object, IntPtr)
L_00b5: stsfld System.Predicate`1[Verse.Pawn] <>f__am$cache1
L_00ba: Label #5
L_00ba: ldsfld System.Predicate`1[Verse.Pawn] <>f__am$cache1
L_00bf: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_00c4: brfalse Label #6
L_00c9: ldarg.2
L_00ca: ldfld RimWorld.Pawn_RelationsTracker relations
L_00cf: ldsfld RimWorld.PawnRelationDef Fiance
L_00d4: ldnull
L_00d5: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_00da: stloc.2
L_00db: ldc.r4 0.1
L_00e0: stloc.1
L_00e1: br Label #7
L_00e6: Label #6
L_00e6: ldarg.2
L_00e7: call Verse.Pawn GetSpouse(Verse.Pawn)
L_00ec: brfalse Label #8
L_00f1: ldarg.2
L_00f2: call Verse.Pawn GetSpouse(Verse.Pawn)
L_00f7: callvirt Boolean get_Dead()
L_00fc: brtrue Label #9
L_0101: ldarg.2
L_0102: call Verse.Pawn GetSpouse(Verse.Pawn)
L_0107: stloc.2
L_0108: ldc.r4 0.3
L_010d: stloc.1
L_010e: Label #4
L_010e: Label #7
L_010e: Label #8
L_010e: Label #9
L_010e: ldloc.2
L_010f: brfalse Label #10
L_0114: ldloc.1
L_0115: ldc.r4 100
L_011a: ldc.r4 0
L_011f: ldarg.2
L_0120: ldfld RimWorld.Pawn_RelationsTracker relations
L_0125: ldloc.2
L_0126: callvirt Int32 OpinionOf(Verse.Pawn)
L_012b: conv.r4
L_012c: call Single InverseLerp(Single, Single, Single)
L_0131: mul
L_0132: stloc.1
L_0133: ldloc.1
L_0134: ldc.r4 1
L_0139: ldarg.2
L_013a: ldfld RimWorld.Pawn_RelationsTracker relations
L_013f: ldloc.2
L_0140: callvirt Single SecondaryRomanceChanceFactor(Verse.Pawn)
L_0145: sub
L_0146: call Single Clamp01(Single)
L_014b: mul
L_014c: stloc.1
L_014d: Label #10
L_014d: ldloc.0
L_014e: ldloc.1
L_014f: mul
L_0150: stloc.0
L_0151: ldloc.0
L_0152: call Single Clamp01(Single)
L_0157: br Label #0
L_015c: Label #0
L_015c: stloc 3 (System.Single)
L_015d: ldloca 3 (System.Single)
L_015f: ldarg 1
L_0165: ldarg 2
L_016b: call Void NewSuccessChance(Single ByRef, Verse.Pawn, Verse.Pawn)
L_0170: ldloc 3 (System.Single)
L_0171: ret
DONE
PATCHING RimWorld.InteractionWorker_RomanceAttempt Void
TryAddCheaterThought(Verse.Pawn, Verse.Pawn)
L_0000: ldarg.1
L_0001: callvirt Boolean get_Dead()
L_0006: brfalse Label #2
L_000b: br Label #0
L_0010: Label #2
L_0010: ldarg.1
L_0011: ldfld RimWorld.Pawn_NeedsTracker needs
L_0016: ldfld RimWorld.Need_Mood mood
L_001b: ldfld RimWorld.ThoughtHandler thoughts
L_0020: ldfld RimWorld.MemoryThoughtHandler memories
L_0025: ldsfld RimWorld.ThoughtDef CheatedOnMe
L_002a: ldarg.2
L_002b: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0030: br Label #0
L_0035: Label #0
L_0035: ldarg 1
L_003b: ldarg 2
L_0041: call Void AddCodependentThought(Verse.Pawn, Verse.Pawn)
L_0046: ret
DONE

PATCHING RimWorld.LovePartnerRelationUtility Single


LovePartnerRelationGenerationChance(Verse.Pawn, Verse.Pawn, PawnGenerationRequest,
Boolean)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Int32
L_0000: Local var #2
System.Collections.Generic.List`1[[RimWorld.DirectPawnRelation, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #3 System.Int32
L_0000: Local var #4 System.Single
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: Local var #7 System.Single
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: Local var #10 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #11 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #12 System.Single
L_0000: ldc.r4 0
L_0005: stloc 12 (System.Single)
L_0007: ldarg.0
L_0008: ldfld Verse.Pawn_AgeTracker ageTracker
L_000d: callvirt Single get_AgeBiologicalYearsFloat()
L_0012: ldc.r4 14
L_0017: bge.un Label #2
L_001c: ldc.r4 0
L_0021: br Label #0
L_0026: Label #2
L_0026: ldarg.1
L_0027: ldfld Verse.Pawn_AgeTracker ageTracker
L_002c: callvirt Single get_AgeBiologicalYearsFloat()
L_0031: ldc.r4 14
L_0036: bge.un Label #3
L_003b: ldc.r4 0
L_0040: br Label #0
L_0045: Label #3
L_0045: ldarg.0
L_0046: ldfld Verse.Gender gender
L_004b: ldarg.1
L_004c: ldfld Verse.Gender gender
L_0051: bne.un Label #4
L_0056: ldarg.1
L_0057: ldfld RimWorld.Pawn_StoryTracker story
L_005c: ldfld RimWorld.TraitSet traits
L_0061: ldsfld RimWorld.TraitDef Gay
L_0066: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_006b: brfalse Label #5
L_0070: ldarga.s 2
L_0072: call Boolean get_AllowGay()
L_0077: brtrue Label #6
L_007c: Label #5
L_007c: ldc.r4 0
L_0081: br Label #0
L_0086: Label #4
L_0086: Label #6
L_0086: ldarg.0
L_0087: ldfld Verse.Gender gender
L_008c: ldarg.1
L_008d: ldfld Verse.Gender gender
L_0092: beq Label #7
L_0097: ldarg.1
L_0098: ldfld RimWorld.Pawn_StoryTracker story
L_009d: ldfld RimWorld.TraitSet traits
L_00a2: ldsfld RimWorld.TraitDef Gay
L_00a7: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_00ac: brfalse Label #8
L_00b1: ldc.r4 0
L_00b6: br Label #0
L_00bb: Label #7
L_00bb: Label #8
L_00bb: ldc.r4 1
L_00c0: stloc.0
L_00c1: ldarg.3
L_00c2: brfalse Label #9
L_00c7: ldc.i4.0
L_00c8: stloc.1
L_00c9: ldarg.1
L_00ca: ldfld RimWorld.Pawn_RelationsTracker relations
L_00cf: callvirt System.Collections.Generic.List`1[RimWorld.DirectPawnRelation]
get_DirectRelations()
L_00d4: stloc.2
L_00d5: ldc.i4.0
L_00d6: stloc.3
L_00d7: br Label #10
L_00dc: Label #12
L_00dc: ldloc.2
L_00dd: ldloc.3
L_00de: callvirt RimWorld.DirectPawnRelation get_Item(Int32)
L_00e3: ldfld RimWorld.PawnRelationDef def
L_00e8: call Boolean IsExLovePartnerRelation(RimWorld.PawnRelationDef)
L_00ed: brfalse Label #11
L_00f2: ldloc.1
L_00f3: ldc.i4.1
L_00f4: add
L_00f5: stloc.1
L_00f6: Label #11
L_00f6: ldloc.3
L_00f7: ldc.i4.1
L_00f8: add
L_00f9: stloc.3
L_00fa: Label #10
L_00fa: ldloc.3
L_00fb: ldloc.2
L_00fc: callvirt Int32 get_Count()
L_0101: blt Label #12
L_0106: ldc.r4 0.2
L_010b: ldloc.1
L_010c: conv.r4
L_010d: call Single Pow(Single, Single)
L_0112: stloc.0
L_0113: br Label #13
L_0118: Label #9
L_0118: ldarg.1
L_0119: call Boolean HasAnyLovePartner(Verse.Pawn)
L_011e: brfalse Label #14
L_0123: ldc.r4 0
L_0128: br Label #0
L_012d: Label #13
L_012d: Label #14
L_012d: ldarg.0
L_012e: ldfld Verse.Gender gender
L_0133: ldarg.1
L_0134: ldfld Verse.Gender gender
L_0139: bne.un Label #15
L_013e: ldc.r4 0.01
L_0143: br Label #16
L_0148: Label #15
L_0148: ldc.r4 1
L_014d: Label #16
L_014d: stloc.s 4 (System.Single)
L_014f: ldarg.0
L_0150: call Single GetGenerationChanceAgeFactor(Verse.Pawn)
L_0155: stloc.s 5 (System.Single)
L_0157: ldarg.1
L_0158: call Single GetGenerationChanceAgeFactor(Verse.Pawn)
L_015d: stloc.s 6 (System.Single)
L_015f: ldarg.0
L_0160: ldarg.1
L_0161: ldarg.3
L_0162: call Single GetGenerationChanceAgeGapFactor(Verse.Pawn, Verse.Pawn,
Boolean)
L_0167: stloc.s 7 (System.Single)
L_0169: ldc.r4 1
L_016e: stloc.s 8 (System.Single)
L_0170: ldarg.0
L_0171: ldarg.1
L_0172: call IEnumerable`1 GetRelations(Verse.Pawn, Verse.Pawn)
L_0177: ldsfld System.Func`2[RimWorld.PawnRelationDef,System.Boolean]
<>f__am$cache0
L_017c: brtrue Label #17
L_0181: ldnull
L_0182: ldftn Boolean
<LovePartnerRelationGenerationChance>m__332(RimWorld.PawnRelationDef)
L_0188: newobj Void .ctor(Object, IntPtr)
L_018d: stsfld System.Func`2[RimWorld.PawnRelationDef,System.Boolean]
<>f__am$cache0
L_0192: Label #17
L_0192: ldsfld System.Func`2[RimWorld.PawnRelationDef,System.Boolean]
<>f__am$cache0
L_0197: call Boolean Any[PawnRelationDef](IEnumerable`1,
System.Func`2[RimWorld.PawnRelationDef,System.Boolean])
L_019c: brfalse Label #18
L_01a1: ldc.r4 0.01
L_01a6: stloc.s 8 (System.Single)
L_01a8: Label #18
L_01a8: ldc.r4 1
L_01ad: stloc.s 9 (System.Single)
L_01af: ldarga.s 2
L_01b1: call Nullable`1 get_FixedMelanin()
L_01b6: stloc.s 10 (System.Nullable`1[System.Single])
L_01b8: ldloca.s 10 (System.Nullable`1[System.Single])
L_01ba: call Boolean get_HasValue()
L_01bf: brfalse Label #19
L_01c4: ldarga.s 2
L_01c6: call Nullable`1 get_FixedMelanin()
L_01cb: stloc.s 11 (System.Nullable`1[System.Single])
L_01cd: ldloca.s 11 (System.Nullable`1[System.Single])
L_01cf: call Single get_Value()
L_01d4: ldarg.1
L_01d5: ldfld RimWorld.Pawn_StoryTracker story
L_01da: ldfld System.Single melanin
L_01df: call Single GetMelaninSimilarityFactor(Single, Single)
L_01e4: stloc.s 9 (System.Single)
L_01e6: br Label #20
L_01eb: Label #19
L_01eb: ldarg.1
L_01ec: ldfld RimWorld.Pawn_StoryTracker story
L_01f1: ldfld System.Single melanin
L_01f6: call Single GetMelaninCommonalityFactor(Single)
L_01fb: stloc.s 9 (System.Single)
L_01fd: Label #20
L_01fd: ldloc.0
L_01fe: ldloc.s 5 (System.Single)
L_0200: mul
L_0201: ldloc.s 6 (System.Single)
L_0203: mul
L_0204: ldloc.s 7 (System.Single)
L_0206: mul
L_0207: ldloc.s 4 (System.Single)
L_0209: mul
L_020a: ldloc.s 9 (System.Single)
L_020c: mul
L_020d: ldloc.s 8 (System.Single)
L_020f: mul
L_0210: br Label #0
L_0215: Label #0
L_0215: stloc 12 (System.Single)
L_0217: ldloca 12 (System.Single)
L_0219: ldarg 0
L_021f: ldarg 1
L_0225: ldarg 2
L_022b: ldarg 3
L_0231: call Void PsychologyFormula(Single ByRef, Verse.Pawn, Verse.Pawn,
PawnGenerationRequest, Boolean)
L_0236: ldloc 12 (System.Single)
L_0238: ret
DONE

PATCHING RimWorld.LovePartnerRelationUtility Void


ChangeSpouseRelationsToExSpouse(Verse.Pawn)
L_0000: Local var #0 Verse.Pawn
L_0000: ldarg 0
L_0006: call Boolean PolygamousException(Verse.Pawn)
L_000b: brfalse Label #1
L_0010: Label #4
L_0010: ldarg.0
L_0011: ldfld RimWorld.Pawn_RelationsTracker relations
L_0016: ldsfld RimWorld.PawnRelationDef Spouse
L_001b: ldnull
L_001c: callvirt Verse.Pawn GetFirstDirectRelationPawn(RimWorld.PawnRelationDef,
System.Predicate`1[Verse.Pawn])
L_0021: stloc.0
L_0022: ldloc.0
L_0023: brtrue Label #2
L_0028: br Label #3
L_002d: Label #2
L_002d: ldarg.0
L_002e: ldfld RimWorld.Pawn_RelationsTracker relations
L_0033: ldsfld RimWorld.PawnRelationDef Spouse
L_0038: ldloc.0
L_0039: callvirt Void RemoveDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_003e: ldarg.0
L_003f: ldfld RimWorld.Pawn_RelationsTracker relations
L_0044: ldsfld RimWorld.PawnRelationDef ExSpouse
L_0049: ldloc.0
L_004a: callvirt Void AddDirectRelation(RimWorld.PawnRelationDef, Verse.Pawn)
L_004f: br Label #4
L_0054: Label #3
L_0054: br Label #0
L_0059: Label #0
L_0059: Label #1
L_0059: ret
DONE

PATCHING Verse.PawnGenerator Void GenerateTraits(Verse.Pawn, PawnGenerationRequest)


L_0000: Local var #0 System.Collections.Generic.List`1[[RimWorld.TraitEntry,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #1 System.Int32
L_0000: Local var #2 RimWorld.TraitEntry
L_0000: Local var #3 System.Collections.Generic.List`1[[RimWorld.TraitEntry,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #4 System.Int32
L_0000: Local var #5 RimWorld.TraitEntry
L_0000: Local var #6 System.Int32
L_0000: Local var #7 RimWorld.Trait
L_0000: Local var #8 System.Int32
L_0000: Local var #9 RimWorld.Trait
L_0000: Local var #10 System.Single
L_0000: Local var #11 Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548
L_0000: Local var #12 Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549
L_0000: ldarga 0
L_0006: ldarg 1
L_000c: call Boolean KinseyException(Verse.Pawn ByRef, PawnGenerationRequest)
L_0011: brfalse Label #1
L_0016: ldarg 0
L_001c: call Void GenerateTraitsPrefix(Verse.Pawn)
L_0021: newobj Void .ctor()
L_0026: stloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0028: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_002a: ldarg.0
L_002b: stfld Verse.Pawn pawn
L_0030: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0032: ldfld Verse.Pawn pawn
L_0037: ldfld RimWorld.Pawn_StoryTracker story
L_003c: brtrue Label #2
L_0041: br Label #0
L_0046: Label #2
L_0046: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0048: ldfld Verse.Pawn pawn
L_004d: ldfld RimWorld.Pawn_StoryTracker story
L_0052: ldfld RimWorld.Backstory childhood
L_0057: ldfld System.Collections.Generic.List`1[RimWorld.TraitEntry] forcedTraits
L_005c: brfalse Label #3
L_0061: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0063: ldfld Verse.Pawn pawn
L_0068: ldfld RimWorld.Pawn_StoryTracker story
L_006d: ldfld RimWorld.Backstory childhood
L_0072: ldfld System.Collections.Generic.List`1[RimWorld.TraitEntry] forcedTraits
L_0077: stloc.0
L_0078: ldc.i4.0
L_0079: stloc.1
L_007a: br Label #4
L_007f: Label #8
L_007f: ldloc.0
L_0080: ldloc.1
L_0081: callvirt RimWorld.TraitEntry get_Item(Int32)
L_0086: stloc.2
L_0087: ldloc.2
L_0088: ldfld RimWorld.TraitDef def
L_008d: brtrue Label #5
L_0092: ldstr "Null forced trait def on "
L_0097: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0099: ldfld Verse.Pawn pawn
L_009e: ldfld RimWorld.Pawn_StoryTracker story
L_00a3: ldfld RimWorld.Backstory childhood
L_00a8: call System.String Concat(System.Object, System.Object)
L_00ad: call Void Error(System.String)
L_00b2: br Label #6
L_00b7: Label #5
L_00b7: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_00b9: ldfld Verse.Pawn pawn
L_00be: ldfld RimWorld.Pawn_StoryTracker story
L_00c3: ldfld RimWorld.TraitSet traits
L_00c8: ldloc.2
L_00c9: ldfld RimWorld.TraitDef def
L_00ce: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_00d3: brtrue Label #7
L_00d8: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_00da: ldfld Verse.Pawn pawn
L_00df: ldfld RimWorld.Pawn_StoryTracker story
L_00e4: ldfld RimWorld.TraitSet traits
L_00e9: ldloc.2
L_00ea: ldfld RimWorld.TraitDef def
L_00ef: ldloc.2
L_00f0: ldfld System.Int32 degree
L_00f5: ldc.i4.0
L_00f6: newobj Void .ctor(TraitDef, Int32, Boolean)
L_00fb: callvirt Void GainTrait(RimWorld.Trait)
L_0100: Label #6
L_0100: Label #7
L_0100: ldloc.1
L_0101: ldc.i4.1
L_0102: add
L_0103: stloc.1
L_0104: Label #4
L_0104: ldloc.1
L_0105: ldloc.0
L_0106: callvirt Int32 get_Count()
L_010b: blt Label #8
L_0110: Label #3
L_0110: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0112: ldfld Verse.Pawn pawn
L_0117: ldfld RimWorld.Pawn_StoryTracker story
L_011c: ldfld RimWorld.Backstory adulthood
L_0121: brfalse Label #9
L_0126: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0128: ldfld Verse.Pawn pawn
L_012d: ldfld RimWorld.Pawn_StoryTracker story
L_0132: ldfld RimWorld.Backstory adulthood
L_0137: ldfld System.Collections.Generic.List`1[RimWorld.TraitEntry] forcedTraits
L_013c: brfalse Label #10
L_0141: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0143: ldfld Verse.Pawn pawn
L_0148: ldfld RimWorld.Pawn_StoryTracker story
L_014d: ldfld RimWorld.Backstory adulthood
L_0152: ldfld System.Collections.Generic.List`1[RimWorld.TraitEntry] forcedTraits
L_0157: stloc.3
L_0158: ldc.i4.0
L_0159: stloc.s 4 (System.Int32)
L_015b: br Label #11
L_0160: Label #15
L_0160: ldloc.3
L_0161: ldloc.s 4 (System.Int32)
L_0163: callvirt RimWorld.TraitEntry get_Item(Int32)
L_0168: stloc.s 5 (RimWorld.TraitEntry)
L_016a: ldloc.s 5 (RimWorld.TraitEntry)
L_016c: ldfld RimWorld.TraitDef def
L_0171: brtrue Label #12
L_0176: ldstr "Null forced trait def on "
L_017b: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_017d: ldfld Verse.Pawn pawn
L_0182: ldfld RimWorld.Pawn_StoryTracker story
L_0187: ldfld RimWorld.Backstory adulthood
L_018c: call System.String Concat(System.Object, System.Object)
L_0191: call Void Error(System.String)
L_0196: br Label #13
L_019b: Label #12
L_019b: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_019d: ldfld Verse.Pawn pawn
L_01a2: ldfld RimWorld.Pawn_StoryTracker story
L_01a7: ldfld RimWorld.TraitSet traits
L_01ac: ldloc.s 5 (RimWorld.TraitEntry)
L_01ae: ldfld RimWorld.TraitDef def
L_01b3: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_01b8: brtrue Label #14
L_01bd: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_01bf: ldfld Verse.Pawn pawn
L_01c4: ldfld RimWorld.Pawn_StoryTracker story
L_01c9: ldfld RimWorld.TraitSet traits
L_01ce: ldloc.s 5 (RimWorld.TraitEntry)
L_01d0: ldfld RimWorld.TraitDef def
L_01d5: ldloc.s 5 (RimWorld.TraitEntry)
L_01d7: ldfld System.Int32 degree
L_01dc: ldc.i4.0
L_01dd: newobj Void .ctor(TraitDef, Int32, Boolean)
L_01e2: callvirt Void GainTrait(RimWorld.Trait)
L_01e7: Label #13
L_01e7: Label #14
L_01e7: ldloc.s 4 (System.Int32)
L_01e9: ldc.i4.1
L_01ea: add
L_01eb: stloc.s 4 (System.Int32)
L_01ed: Label #11
L_01ed: ldloc.s 4 (System.Int32)
L_01ef: ldloc.3
L_01f0: callvirt Int32 get_Count()
L_01f5: blt Label #15
L_01fa: Label #9
L_01fa: Label #10
L_01fa: ldc.i4.2
L_01fb: ldc.i4.3
L_01fc: call Int32 RangeInclusive(Int32, Int32)
L_0201: stloc.s 6 (System.Int32)
L_0203: ldarga.s 1
L_0205: call Boolean get_AllowGay()
L_020a: brfalse Label #16
L_020f: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0211: ldfld Verse.Pawn pawn
L_0216: call Boolean HasAnyLovePartnerOfTheSameGender(Verse.Pawn)
L_021b: brtrue Label #17
L_0220: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0222: ldfld Verse.Pawn pawn
L_0227: call Boolean HasAnyExLovePartnerOfTheSameGender(Verse.Pawn)
L_022c: brfalse Label #18
L_0231: Label #17
L_0231: ldsfld RimWorld.TraitDef Gay
L_0236: ldsfld RimWorld.TraitDef Gay
L_023b: call Int32 RandomTraitDegree(RimWorld.TraitDef)
L_0240: ldc.i4.0
L_0241: newobj Void .ctor(TraitDef, Int32, Boolean)
L_0246: stloc.s 7 (RimWorld.Trait)
L_0248: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_024a: ldfld Verse.Pawn pawn
L_024f: ldfld RimWorld.Pawn_StoryTracker story
L_0254: ldfld RimWorld.TraitSet traits
L_0259: ldloc.s 7 (RimWorld.Trait)
L_025b: callvirt Void GainTrait(RimWorld.Trait)
L_0260: Label #16
L_0260: Label #18
L_0260: br Label #19
L_0265: Label #50
L_0265: newobj Void .ctor()
L_026a: stloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_026c: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_026e: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0270: stfld Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548 <>f__ref$1352
L_0275: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0277: ldarg.0
L_0278: call RimWorld.TraitDef GenerateTraitsValidator(Verse.Pawn)
L_027d: stfld RimWorld.TraitDef newTraitDef
L_0282: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0284: ldfld Verse.Pawn pawn
L_0289: ldfld RimWorld.Pawn_StoryTracker story
L_028e: ldfld RimWorld.TraitSet traits
L_0293: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0295: ldfld RimWorld.TraitDef newTraitDef
L_029a: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_029f: brfalse Label #20
L_02a4: br Label #21
L_02a9: Label #20
L_02a9: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_02ab: ldfld RimWorld.TraitDef newTraitDef
L_02b0: ldsfld RimWorld.TraitDef Gay
L_02b5: bne.un Label #22
L_02ba: ldarga.s 1
L_02bc: call Boolean get_AllowGay()
L_02c1: brtrue Label #23
L_02c6: br Label #24
L_02cb: Label #23
L_02cb: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_02cd: ldfld Verse.Pawn pawn
L_02d2: call Boolean HasAnyLovePartnerOfTheOppositeGender(Verse.Pawn)
L_02d7: brtrue Label #25
L_02dc: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_02de: ldfld Verse.Pawn pawn
L_02e3: call Boolean HasAnyExLovePartnerOfTheOppositeGender(Verse.Pawn)
L_02e8: brfalse Label #26
L_02ed: Label #25
L_02ed: br Label #27
L_02f2: Label #22
L_02f2: Label #26
L_02f2: ldarga.s 1
L_02f4: call RimWorld.Faction get_Faction()
L_02f9: brfalse Label #28
L_02fe: call RimWorld.Faction get_OfPlayerSilentFail()
L_0303: brfalse Label #29
L_0308: ldarga.s 1
L_030a: call RimWorld.Faction get_Faction()
L_030f: call RimWorld.Faction get_OfPlayer()
L_0314: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0319: brfalse Label #30
L_031e: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0320: ldfld RimWorld.TraitDef newTraitDef
L_0325: ldfld System.Boolean allowOnHostileSpawn
L_032a: brtrue Label #31
L_032f: br Label #32
L_0334: Label #28
L_0334: Label #29
L_0334: Label #30
L_0334: Label #31
L_0334: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0336: ldfld Verse.Pawn pawn
L_033b: ldfld RimWorld.Pawn_StoryTracker story
L_0340: ldfld RimWorld.TraitSet traits
L_0345: ldfld System.Collections.Generic.List`1[RimWorld.Trait] allTraits
L_034a: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_034c: ldftn Boolean <>m__8E9(RimWorld.Trait)
L_0352: newobj Void .ctor(Object, IntPtr)
L_0357: call Boolean Any[Trait](System.Collections.Generic.List`1[RimWorld.Trait],
System.Predicate`1[RimWorld.Trait])
L_035c: brtrue Label #33
L_0361: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0363: ldfld RimWorld.TraitDef newTraitDef
L_0368: ldfld System.Collections.Generic.List`1[RimWorld.TraitDef]
conflictingTraits
L_036d: brfalse Label #34
L_0372: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0374: ldfld RimWorld.TraitDef newTraitDef
L_0379: ldfld System.Collections.Generic.List`1[RimWorld.TraitDef]
conflictingTraits
L_037e: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0380: ldftn Boolean <>m__8EA(RimWorld.TraitDef)
L_0386: newobj Void .ctor(Object, IntPtr)
L_038b: call Boolean Any[TraitDef]
(System.Collections.Generic.List`1[RimWorld.TraitDef],
System.Predicate`1[RimWorld.TraitDef])
L_0390: brfalse Label #35
L_0395: Label #33
L_0395: br Label #36
L_039a: Label #34
L_039a: Label #35
L_039a: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_039c: ldfld RimWorld.TraitDef newTraitDef
L_03a1: ldfld System.Collections.Generic.List`1[Verse.WorkTypeDef]
requiredWorkTypes
L_03a6: brfalse Label #37
L_03ab: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_03ad: ldfld Verse.Pawn pawn
L_03b2: ldfld RimWorld.Pawn_StoryTracker story
L_03b7: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_03b9: ldfld RimWorld.TraitDef newTraitDef
L_03be: ldfld System.Collections.Generic.List`1[Verse.WorkTypeDef]
requiredWorkTypes
L_03c3: callvirt Boolean
OneOfWorkTypesIsDisabled(System.Collections.Generic.List`1[Verse.WorkTypeDef])
L_03c8: brfalse Label #38
L_03cd: br Label #39
L_03d2: Label #37
L_03d2: Label #38
L_03d2: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_03d4: ldfld Verse.Pawn pawn
L_03d9: ldfld RimWorld.Pawn_StoryTracker story
L_03de: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_03e0: ldfld RimWorld.TraitDef newTraitDef
L_03e5: ldfld Verse.WorkTags requiredWorkTags
L_03ea: callvirt Boolean WorkTagIsDisabled(WorkTags)
L_03ef: brfalse Label #40
L_03f4: br Label #41
L_03f9: Label #40
L_03f9: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_03fb: ldfld RimWorld.TraitDef newTraitDef
L_0400: call Int32 RandomTraitDegree(RimWorld.TraitDef)
L_0405: stloc.s 8 (System.Int32)
L_0407: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0409: ldfld Verse.Pawn pawn
L_040e: ldfld RimWorld.Pawn_StoryTracker story
L_0413: ldfld RimWorld.Backstory childhood
L_0418: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_041a: ldfld RimWorld.TraitDef newTraitDef
L_041f: ldloc.s 8 (System.Int32)
L_0421: callvirt Boolean DisallowsTrait(RimWorld.TraitDef, Int32)
L_0426: brtrue Label #42
L_042b: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_042d: ldfld Verse.Pawn pawn
L_0432: ldfld RimWorld.Pawn_StoryTracker story
L_0437: ldfld RimWorld.Backstory adulthood
L_043c: brfalse Label #43
L_0441: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0443: ldfld Verse.Pawn pawn
L_0448: ldfld RimWorld.Pawn_StoryTracker story
L_044d: ldfld RimWorld.Backstory adulthood
L_0452: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_0454: ldfld RimWorld.TraitDef newTraitDef
L_0459: ldloc.s 8 (System.Int32)
L_045b: callvirt Boolean DisallowsTrait(RimWorld.TraitDef, Int32)
L_0460: brfalse Label #44
L_0465: Label #42
L_0465: br Label #45
L_046a: Label #43
L_046a: Label #44
L_046a: ldloc.s 12 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey549)
L_046c: ldfld RimWorld.TraitDef newTraitDef
L_0471: ldloc.s 8 (System.Int32)
L_0473: ldc.i4.0
L_0474: newobj Void .ctor(TraitDef, Int32, Boolean)
L_0479: stloc.s 9 (RimWorld.Trait)
L_047b: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_047d: ldfld Verse.Pawn pawn
L_0482: ldfld Verse.AI.Pawn_MindState mindState
L_0487: brfalse Label #46
L_048c: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_048e: ldfld Verse.Pawn pawn
L_0493: ldfld Verse.AI.Pawn_MindState mindState
L_0498: ldfld Verse.MentalBreaker mentalBreaker
L_049d: brfalse Label #47
L_04a2: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_04a4: ldfld Verse.Pawn pawn
L_04a9: ldfld Verse.AI.Pawn_MindState mindState
L_04ae: ldfld Verse.MentalBreaker mentalBreaker
L_04b3: callvirt Single get_BreakThresholdExtreme()
L_04b8: stloc.s 10 (System.Single)
L_04ba: ldloc.s 10 (System.Single)
L_04bc: ldloc.s 9 (RimWorld.Trait)
L_04be: ldsfld RimWorld.StatDef MentalBreakThreshold
L_04c3: callvirt Single OffsetOfStat(RimWorld.StatDef)
L_04c8: add
L_04c9: stloc.s 10 (System.Single)
L_04cb: ldloc.s 10 (System.Single)
L_04cd: ldloc.s 9 (RimWorld.Trait)
L_04cf: ldsfld RimWorld.StatDef MentalBreakThreshold
L_04d4: callvirt Single MultiplierOfStat(RimWorld.StatDef)
L_04d9: mul
L_04da: stloc.s 10 (System.Single)
L_04dc: ldloc.s 10 (System.Single)
L_04de: ldc.r4 40
L_04e3: ble.un Label #48
L_04e8: br Label #49
L_04ed: Label #46
L_04ed: Label #47
L_04ed: Label #48
L_04ed: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_04ef: ldfld Verse.Pawn pawn
L_04f4: ldfld RimWorld.Pawn_StoryTracker story
L_04f9: ldfld RimWorld.TraitSet traits
L_04fe: ldloc.s 9 (RimWorld.Trait)
L_0500: callvirt Void GainTrait(RimWorld.Trait)
L_0505: Label #19
L_0505: Label #21
L_0505: Label #24
L_0505: Label #27
L_0505: Label #32
L_0505: Label #36
L_0505: Label #39
L_0505: Label #41
L_0505: Label #45
L_0505: Label #49
L_0505: ldloc.s 11 (Verse.PawnGenerator+<GenerateTraits>c__AnonStorey548)
L_0507: ldfld Verse.Pawn pawn
L_050c: ldfld RimWorld.Pawn_StoryTracker story
L_0511: ldfld RimWorld.TraitSet traits
L_0516: ldfld System.Collections.Generic.List`1[RimWorld.Trait] allTraits
L_051b: callvirt Int32 get_Count()
L_0520: ldloc.s 6 (System.Int32)
L_0522: blt Label #50
L_0527: br Label #0
L_052c: Label #0
L_052c: Label #1
L_052c: ret
DONE

PATCHING RimWorld.PawnObserver Void ObserveSurroundingThings()


L_0000: Local var #0 Verse.RoomGroup
L_0000: Local var #1 Verse.Map
L_0000: Local var #2 System.Int32
L_0000: Local var #3 Verse.IntVec3
L_0000: Local var #4 System.Collections.Generic.List`1[[Verse.Thing, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #5 System.Int32
L_0000: Local var #6 RimWorld.IThoughtGiver
L_0000: Local var #7 RimWorld.Thought_Memory
L_0000: ldarg.0
L_0001: ldfld Verse.Pawn pawn
L_0006: ldfld Verse.Pawn_HealthTracker health
L_000b: ldfld Verse.PawnCapacitiesHandler capacities
L_0010: ldsfld Verse.PawnCapacityDef Sight
L_0015: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_001a: brtrue Label #2
L_001f: br Label #0
L_0024: Label #2
L_0024: ldarg.0
L_0025: ldfld Verse.Pawn pawn
L_002a: call Verse.RoomGroup GetRoomGroup(Verse.Thing)
L_002f: stloc.0
L_0030: ldarg.0
L_0031: ldfld Verse.Pawn pawn
L_0036: callvirt Verse.Map get_Map()
L_003b: stloc.1
L_003c: ldc.i4.0
L_003d: stloc.2
L_003e: br Label #3
L_0043: Label #14
L_0043: ldarg.0
L_0044: ldfld Verse.Pawn pawn
L_0049: callvirt IntVec3 get_Position()
L_004e: ldsfld Verse.IntVec3[] RadialPattern
L_0053: ldloc.2
L_0054: ldelema Verse.IntVec3
L_0059: ldobj Verse.IntVec3
L_005e: call IntVec3 op_Addition(IntVec3, IntVec3)
L_0063: stloc.3
L_0064: ldloc.3
L_0065: ldloc.1
L_0066: call Boolean InBounds(IntVec3, Verse.Map)
L_006b: brtrue Label #4
L_0070: br Label #5
L_0075: Label #4
L_0075: ldloc.3
L_0076: ldloc.1
L_0077: call Verse.RoomGroup GetRoomGroup(IntVec3, Verse.Map)
L_007c: ldloc.0
L_007d: beq Label #6
L_0082: br Label #7
L_0087: Label #6
L_0087: ldloc.3
L_0088: ldarg.0
L_0089: ldfld Verse.Pawn pawn
L_008e: callvirt IntVec3 get_Position()
L_0093: ldloc.1
L_0094: ldc.i4.1
L_0095: ldnull
L_0096: ldc.i4.0
L_0097: ldc.i4.0
L_0098: call Boolean LineOfSight(IntVec3, IntVec3, Verse.Map, Boolean,
System.Func`2[Verse.IntVec3,System.Boolean], Int32, Int32)
L_009d: brtrue Label #8
L_00a2: br Label #9
L_00a7: Label #8
L_00a7: ldloc.3
L_00a8: ldloc.1
L_00a9: call System.Collections.Generic.List`1[Verse.Thing] GetThingList(IntVec3,
Verse.Map)
L_00ae: stloc.s 4 (System.Collections.Generic.List`1[Verse.Thing])
L_00b0: ldc.i4.0
L_00b1: stloc.s 5 (System.Int32)
L_00b3: br Label #10
L_00b8: Label #13
L_00b8: ldloc.s 4 (System.Collections.Generic.List`1[Verse.Thing])
L_00ba: ldloc.s 5 (System.Int32)
L_00bc: callvirt Verse.Thing get_Item(Int32)
L_00c1: isinst RimWorld.IThoughtGiver
L_00c6: stloc.s 6 (RimWorld.IThoughtGiver)
L_00c8: ldloc.s 6 (RimWorld.IThoughtGiver)
L_00ca: brfalse Label #11
L_00cf: ldloc.s 6 (RimWorld.IThoughtGiver)
L_00d1: callvirt RimWorld.Thought_Memory GiveObservedThought()
L_00d6: stloc.s 7 (RimWorld.Thought_Memory)
L_00d8: ldloc.s 7 (RimWorld.Thought_Memory)
L_00da: brfalse Label #12
L_00df: ldarg.0
L_00e0: ldfld Verse.Pawn pawn
L_00e5: ldfld RimWorld.Pawn_NeedsTracker needs
L_00ea: ldfld RimWorld.Need_Mood mood
L_00ef: ldfld RimWorld.ThoughtHandler thoughts
L_00f4: ldfld RimWorld.MemoryThoughtHandler memories
L_00f9: ldloc.s 7 (RimWorld.Thought_Memory)
L_00fb: ldnull
L_00fc: callvirt Void TryGainMemory(RimWorld.Thought_Memory, Verse.Pawn)
L_0101: Label #11
L_0101: Label #12
L_0101: ldloc.s 5 (System.Int32)
L_0103: ldc.i4.1
L_0104: add
L_0105: stloc.s 5 (System.Int32)
L_0107: Label #10
L_0107: ldloc.s 5 (System.Int32)
L_0109: ldloc.s 4 (System.Collections.Generic.List`1[Verse.Thing])
L_010b: callvirt Int32 get_Count()
L_0110: blt Label #13
L_0115: Label #5
L_0115: Label #7
L_0115: Label #9
L_0115: ldloc.2
L_0116: ldc.i4.1
L_0117: add
L_0118: stloc.2
L_0119: Label #3
L_0119: ldloc.2
L_011a: conv.r4
L_011b: ldc.r4 100
L_0120: blt Label #14
L_0125: br Label #0
L_012a: Label #0
L_012a: ldarg.0
L_012b: call Void DesensitizeViaCorpse(RimWorld.PawnObserver)
L_0130: ret
DONE

PATCHING RimWorld.PawnRelationWorker_Sibling Verse.Pawn GenerateParent(Verse.Pawn,


Verse.Pawn, Gender, PawnGenerationRequest, Boolean)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: Local var #3 System.Single
L_0000: Local var #4 System.Single
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: Local var #7 System.Single
L_0000: Local var #8 System.Single
L_0000: Local var #9 System.Single
L_0000: Local var #10 System.Single
L_0000: Local var #11 System.String
L_0000: Local var #12 System.Boolean
L_0000: Local var #13 RimWorld.Faction
L_0000: Local var #14 System.Boolean
L_0000: Local var #15 Verse.PawnGenerationRequest
L_0000: Local var #16 Verse.Pawn
L_0000: Local var #17 System.Nullable`1[[Verse.Gender, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #18 System.Nullable`1[[System.Single, mscorlib, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089]]
L_0000: Local var #19 System.String
L_0000: Local var #20 Verse.Pawn
L_0000: ldnull
L_0001: stloc 20 (Verse.Pawn)
L_0003: ldloca 20 (Verse.Pawn)
L_0005: ldarg 0
L_000b: ldarg 1
L_0011: ldarg 2
L_0017: ldarg 3
L_001d: ldarg 4
L_0023: call Boolean KinseyException(Verse.Pawn ByRef, Verse.Pawn, Verse.Pawn,
Gender, PawnGenerationRequest, Boolean)
L_0028: brfalse Label #1
L_002d: ldarg.0
L_002e: ldfld Verse.Pawn_AgeTracker ageTracker
L_0033: callvirt Single get_AgeChronologicalYearsFloat()
L_0038: stloc.0
L_0039: ldarg.1
L_003a: ldfld Verse.Pawn_AgeTracker ageTracker
L_003f: callvirt Single get_AgeChronologicalYearsFloat()
L_0044: stloc.1
L_0045: ldarg.2
L_0046: ldc.i4.1
L_0047: bne.un Label #2
L_004c: ldc.r4 14
L_0051: br Label #3
L_0056: Label #2
L_0056: ldc.r4 16
L_005b: Label #3
L_005b: stloc.2
L_005c: ldarg.2
L_005d: ldc.i4.1
L_005e: bne.un Label #4
L_0063: ldc.r4 50
L_0068: br Label #5
L_006d: Label #4
L_006d: ldc.r4 45
L_0072: Label #5
L_0072: stloc.3
L_0073: ldarg.2
L_0074: ldc.i4.1
L_0075: bne.un Label #6
L_007a: ldc.r4 30
L_007f: br Label #7
L_0084: Label #6
L_0084: ldc.r4 27
L_0089: Label #7
L_0089: stloc.s 4 (System.Single)
L_008b: ldloc.0
L_008c: ldloc.1
L_008d: call Single Max(Single, Single)
L_0092: ldloc.2
L_0093: add
L_0094: stloc.s 5 (System.Single)
L_0096: ldloc.s 5 (System.Single)
L_0098: ldloc.3
L_0099: ldloc.2
L_009a: sub
L_009b: add
L_009c: stloc.s 6 (System.Single)
L_009e: ldloc.s 5 (System.Single)
L_00a0: ldloc.s 4 (System.Single)
L_00a2: ldloc.2
L_00a3: sub
L_00a4: add
L_00a5: stloc.s 7 (System.Single)
L_00a7: ldloc.s 5 (System.Single)
L_00a9: ldloc.s 6 (System.Single)
L_00ab: ldloc.s 7 (System.Single)
L_00ad: ldloc.2
L_00ae: ldarg.0
L_00af: ldarg.1
L_00b0: ldarg.3
L_00b1: ldloca.s 8 (System.Single)
L_00b3: ldloca.s 9 (System.Single)
L_00b5: ldloca.s 10 (System.Single)
L_00b7: ldloca.s 11 (System.String)
L_00b9: call Void GenerateParentParams(Single, Single, Single, Single, Verse.Pawn,
Verse.Pawn, PawnGenerationRequest, Single ByRef, Single ByRef, Single ByRef,
System.String ByRef)
L_00be: ldc.i4.1
L_00bf: stloc.s 12 (System.Boolean)
L_00c1: ldarg.s 4
L_00c3: brfalse Label #8
L_00c8: ldloc.s 11 (System.String)
L_00ca: call Boolean NullOrEmpty(System.String)
L_00cf: brfalse Label #9
L_00d4: call Single get_Value()
L_00d9: ldc.r4 0.8
L_00de: bge.un Label #10
L_00e3: ldarg.2
L_00e4: ldc.i4.1
L_00e5: bne.un Label #11
L_00ea: ldarg.1
L_00eb: call Verse.Pawn GetMother(Verse.Pawn)
L_00f0: brfalse Label #12
L_00f5: ldarg.1
L_00f6: call Verse.Pawn GetMother(Verse.Pawn)
L_00fb: ldfld RimWorld.Pawn_StoryTracker story
L_0100: ldfld RimWorld.TraitSet traits
L_0105: ldsfld RimWorld.TraitDef Gay
L_010a: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_010f: brtrue Label #13
L_0114: ldarg.1
L_0115: call Verse.Pawn GetMother(Verse.Pawn)
L_011a: callvirt Verse.Name get_Name()
L_011f: castclass Verse.NameTriple
L_0124: callvirt System.String get_Last()
L_0129: stloc.s 11 (System.String)
L_012b: ldc.i4.0
L_012c: stloc.s 12 (System.Boolean)
L_012e: br Label #14
L_0133: Label #11
L_0133: Label #12
L_0133: Label #13
L_0133: ldarg.2
L_0134: ldc.i4.2
L_0135: bne.un Label #15
L_013a: ldarg.1
L_013b: call Verse.Pawn GetFather(Verse.Pawn)
L_0140: brfalse Label #16
L_0145: ldarg.1
L_0146: call Verse.Pawn GetFather(Verse.Pawn)
L_014b: ldfld RimWorld.Pawn_StoryTracker story
L_0150: ldfld RimWorld.TraitSet traits
L_0155: ldsfld RimWorld.TraitDef Gay
L_015a: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_015f: brtrue Label #17
L_0164: ldarg.1
L_0165: call Verse.Pawn GetFather(Verse.Pawn)
L_016a: callvirt Verse.Name get_Name()
L_016f: castclass Verse.NameTriple
L_0174: callvirt System.String get_Last()
L_0179: stloc.s 11 (System.String)
L_017b: ldc.i4.0
L_017c: stloc.s 12 (System.Boolean)
L_017e: Label #8
L_017e: Label #9
L_017e: Label #10
L_017e: Label #14
L_017e: Label #15
L_017e: Label #16
L_017e: Label #17
L_017e: ldarg.1
L_017f: callvirt RimWorld.Faction get_Faction()
L_0184: stloc.s 13 (RimWorld.Faction)
L_0186: ldloc.s 13 (RimWorld.Faction)
L_0188: brfalse Label #18
L_018d: ldloc.s 13 (RimWorld.Faction)
L_018f: callvirt Boolean get_IsPlayer()
L_0194: brfalse Label #19
L_0199: Label #18
L_0199: ldloc.s 13 (RimWorld.Faction)
L_019b: brfalse Label #20
L_01a0: ldloc.s 13 (RimWorld.Faction)
L_01a2: ldfld RimWorld.FactionDef def
L_01a7: ldfld RimWorld.TechLevel techLevel
L_01ac: ldc.i4.3
L_01ad: clt
L_01af: ldc.i4.0
L_01b0: ceq
L_01b2: br Label #21
L_01b7: Label #20
L_01b7: ldc.i4.0
L_01b8: Label #21
L_01b8: stloc.s 14 (System.Boolean)
L_01ba: call RimWorld.FactionManager get_FactionManager()
L_01bf: ldloca.s 13 (RimWorld.Faction)
L_01c1: ldloc.s 14 (System.Boolean)
L_01c3: ldc.i4.1
L_01c4: callvirt Boolean TryGetRandomNonColonyHumanlikeFaction(RimWorld.Faction
ByRef, Boolean, Boolean)
L_01c9: pop
L_01ca: Label #19
L_01ca: ldloca.s 15 (Verse.PawnGenerationRequest)
L_01cc: ldarg.2
L_01cd: newobj Void .ctor(Gender)
L_01d2: stloc.s 17 (System.Nullable`1[Verse.Gender])
L_01d4: ldloc.s 10 (System.Single)
L_01d6: newobj Void .ctor(Single)
L_01db: stloc.s 18 (System.Nullable`1[System.Single])
L_01dd: ldloc.s 11 (System.String)
L_01df: stloc.s 19 (System.String)
L_01e1: ldarg.1
L_01e2: ldfld Verse.PawnKindDef kindDef
L_01e7: ldloc.s 13 (RimWorld.Faction)
L_01e9: ldc.i4.2
L_01ea: ldc.i4.m1
L_01eb: ldc.i4.1
L_01ec: ldc.i4.0
L_01ed: ldc.i4.1
L_01ee: ldc.i4.1
L_01ef: ldc.i4.0
L_01f0: ldc.i4.0
L_01f1: ldc.r4 1
L_01f6: ldc.i4.0
L_01f7: ldloc.s 12 (System.Boolean)
L_01f9: ldc.i4.1
L_01fa: ldc.i4.0
L_01fb: ldc.i4.0
L_01fc: ldnull
L_01fd: ldloc.s 8 (System.Single)
L_01ff: newobj Void .ctor(Single)
L_0204: ldloc.s 9 (System.Single)
L_0206: newobj Void .ctor(Single)
L_020b: ldloc.s 17 (System.Nullable`1[Verse.Gender])
L_020d: ldloc.s 18 (System.Nullable`1[System.Single])
L_020f: ldloc.s 19 (System.String)
L_0211: call Void .ctor(PawnKindDef, Faction, PawnGenerationContext, Int32,
Boolean, Boolean, Boolean, Boolean, Boolean, Boolean, Single, Boolean, Boolean,
Boolean, Boolean, Boolean, Predicate`1, Nullable`1, Nullable`1, Nullable`1,
Nullable`1, String)
L_0216: ldloc.s 15 (Verse.PawnGenerationRequest)
L_0218: call Verse.Pawn GeneratePawn(PawnGenerationRequest)
L_021d: stloc.s 16 (Verse.Pawn)
L_021f: call RimWorld.Planet.WorldPawns get_WorldPawns()
L_0224: ldloc.s 16 (Verse.Pawn)
L_0226: callvirt Boolean Contains(Verse.Pawn)
L_022b: brtrue Label #22
L_0230: call RimWorld.Planet.WorldPawns get_WorldPawns()
L_0235: ldloc.s 16 (Verse.Pawn)
L_0237: ldc.i4.1
L_0238: callvirt Void PassToWorld(Verse.Pawn, PawnDiscardDecideMode)
L_023d: Label #22
L_023d: ldloc.s 16 (Verse.Pawn)
L_023f: br Label #0
L_0244: Label #0
L_0244: stloc 20 (Verse.Pawn)
L_0246: Label #1
L_0246: ldloc 20 (Verse.Pawn)
L_0248: ret
DONE

PATCHING Verse.AI.Pawn_JobTracker Void EndCurrentJob(JobCondition, Boolean)


L_0000: Local var #0 Verse.AI.Job
L_0000: Local var #1 System.Int32
L_0000: Local var #2 System.Nullable`1[[Verse.AI.JobTag, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #3 System.Nullable`1[[Verse.AI.JobTag, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg.0
L_0001: call Boolean HeavySleeperTrait(Verse.AI.Pawn_JobTracker)
L_0006: brfalse Label #1
L_000b: ldarg.0
L_000c: ldfld System.Boolean debugLog
L_0011: brfalse Label #2
L_0016: ldarg.0
L_0017: ldc.i4.6
L_0018: newarr System.Object
L_001d: dup
L_001e: ldc.i4.0
L_001f: ldstr "EndCurrentJob "
L_0024: stelem.ref
L_0025: dup
L_0026: ldc.i4.1
L_0027: ldarg.0
L_0028: ldfld Verse.AI.Job curJob
L_002d: brfalse Label #3
L_0032: ldarg.0
L_0033: ldfld Verse.AI.Job curJob
L_0038: callvirt System.String ToString()
L_003d: br Label #4
L_0042: Label #3
L_0042: ldstr "null"
L_0047: Label #4
L_0047: stelem.ref
L_0048: dup
L_0049: ldc.i4.2
L_004a: ldstr " condition="
L_004f: stelem.ref
L_0050: dup
L_0051: ldc.i4.3
L_0052: ldarg.1
L_0053: box Verse.AI.JobCondition
L_0058: stelem.ref
L_0059: dup
L_005a: ldc.i4.4
L_005b: ldstr " curToil="
L_0060: stelem.ref
L_0061: dup
L_0062: ldc.i4.5
L_0063: ldarg.0
L_0064: ldfld Verse.AI.JobDriver curDriver
L_0069: brfalse Label #5
L_006e: ldarg.0
L_006f: ldfld Verse.AI.JobDriver curDriver
L_0074: callvirt Int32 get_CurToilIndex()
L_0079: stloc.1
L_007a: ldloca.s 1 (System.Int32)
L_007c: call System.String ToString()
L_0081: br Label #6
L_0086: Label #5
L_0086: ldstr "null_driver"
L_008b: Label #6
L_008b: stelem.ref
L_008c: call System.String Concat(System.Object[])
L_0091: call Void DebugLogEvent(System.String)
L_0096: Label #2
L_0096: ldarg.0
L_0097: ldfld Verse.AI.Job curJob
L_009c: stloc.0
L_009d: ldarg.0
L_009e: ldarg.1
L_009f: ldc.i4.1
L_00a0: ldc.i4.1
L_00a1: call Void CleanupCurrentJob(JobCondition, Boolean, Boolean)
L_00a6: ldarg.2
L_00a7: brfalse Label #7
L_00ac: ldarg.1
L_00ad: ldc.i4.7
L_00ae: beq Label #8
L_00b3: ldarg.1
L_00b4: ldc.i4.6
L_00b5: bne.un Label #9
L_00ba: Label #8
L_00ba: ldarg.0
L_00bb: ldsfld Verse.JobDef Wait
L_00c0: ldc.i4 250
L_00c5: ldc.i4.0
L_00c6: newobj Void .ctor(JobDef, Int32, Boolean)
L_00cb: ldc.i4.0
L_00cc: ldnull
L_00cd: ldc.i4.0
L_00ce: ldc.i4.1
L_00cf: ldnull
L_00d0: ldloca.s 2 (System.Nullable`1[Verse.AI.JobTag])
L_00d2: initobj System.Nullable`1[Verse.AI.JobTag]
L_00d8: ldloc.2
L_00d9: call Void StartJob(Verse.AI.Job, JobCondition, Verse.AI.ThinkNode, Boolean,
Boolean, Verse.ThinkTreeDef, Nullable`1)
L_00de: br Label #0
L_00e3: Label #9
L_00e3: ldarg.1
L_00e4: ldc.i4.2
L_00e5: bne.un Label #10
L_00ea: ldloc.0
L_00eb: brfalse Label #11
L_00f0: ldloc.0
L_00f1: ldfld Verse.JobDef def
L_00f6: ldsfld Verse.JobDef WaitMaintainPosture
L_00fb: beq Label #12
L_0100: ldarg.0
L_0101: ldfld Verse.Pawn pawn
L_0106: ldfld Verse.AI.Pawn_PathFollower pather
L_010b: callvirt Boolean get_Moving()
L_0110: brtrue Label #13
L_0115: ldarg.0
L_0116: ldsfld Verse.JobDef WaitMaintainPosture
L_011b: ldc.i4.1
L_011c: ldc.i4.0
L_011d: newobj Void .ctor(JobDef, Int32, Boolean)
L_0122: ldc.i4.0
L_0123: ldnull
L_0124: ldc.i4.0
L_0125: ldc.i4.0
L_0126: ldnull
L_0127: ldloca.s 3 (System.Nullable`1[Verse.AI.JobTag])
L_0129: initobj System.Nullable`1[Verse.AI.JobTag]
L_012f: ldloc.3
L_0130: call Void StartJob(Verse.AI.Job, JobCondition, Verse.AI.ThinkNode, Boolean,
Boolean, Verse.ThinkTreeDef, Nullable`1)
L_0135: br Label #14
L_013a: Label #10
L_013a: Label #11
L_013a: Label #12
L_013a: Label #13
L_013a: ldarg.0
L_013b: call Void TryFindAndStartJob()
L_0140: Label #7
L_0140: Label #14
L_0140: br Label #0
L_0145: Label #0
L_0145: Label #1
L_0145: ret
DONE

PATCHING RimWorld.PawnDiedOrDownedThoughtsUtility Void


AppendThoughts_ForHumanlike(Verse.Pawn, Nullable`1, PawnDiedOrDownedThoughtsKind,
System.Collections.Generic.List`1[RimWorld.IndividualThoughtToAdd],
System.Collections.Generic.List`1[RimWorld.ThoughtDef])
L_0000: Local var #0 System.Boolean
L_0000: Local var #1 System.Boolean
L_0000: Local var #2 System.Boolean
L_0000: Local var #3 Verse.Pawn
L_0000: Local var #4 Verse.Pawn
L_0000: Local var #5 System.Collections.Generic.IEnumerator`1[[Verse.Pawn,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #6 System.Boolean
L_0000: Local var #7 Verse.DamageInfo
L_0000: Local var #8 Verse.DamageInfo
L_0000: Local var #9 Verse.DamageInfo
L_0000: Local var #10 Verse.DamageInfo
L_0000: Local var #11 Verse.DamageInfo
L_0000: ldarga.s 1
L_0002: call Boolean get_HasValue()
L_0007: brfalse Label #2
L_000c: ldarga.s 1
L_000e: call DamageInfo get_Value()
L_0013: stloc.s 7 (Verse.DamageInfo)
L_0015: ldloca.s 7 (Verse.DamageInfo)
L_0017: call Verse.DamageDef get_Def()
L_001c: ldfld System.Boolean execution
L_0021: br Label #3
L_0026: Label #2
L_0026: ldc.i4.0
L_0027: Label #3
L_0027: stloc.0
L_0028: ldarg.0
L_0029: callvirt Boolean get_IsPrisonerOfColony()
L_002e: brfalse Label #4
L_0033: ldarg.0
L_0034: ldfld RimWorld.Pawn_GuiltTracker guilt
L_0039: callvirt Boolean get_IsGuilty()
L_003e: brtrue Label #5
L_0043: ldarg.0
L_0044: callvirt Boolean get_InAggroMentalState()
L_0049: ldc.i4.0
L_004a: ceq
L_004c: br Label #6
L_0051: Label #4
L_0051: Label #5
L_0051: ldc.i4.0
L_0052: Label #6
L_0052: stloc.1
L_0053: ldarga.s 1
L_0055: call Boolean get_HasValue()
L_005a: brfalse Label #7
L_005f: ldarga.s 1
L_0061: call DamageInfo get_Value()
L_0066: stloc.s 8 (Verse.DamageInfo)
L_0068: ldloca.s 8 (Verse.DamageInfo)
L_006a: call Verse.DamageDef get_Def()
L_006f: ldfld System.Boolean externalViolence
L_0074: brfalse Label #8
L_0079: ldarga.s 1
L_007b: call DamageInfo get_Value()
L_0080: stloc.s 9 (Verse.DamageInfo)
L_0082: ldloca.s 9 (Verse.DamageInfo)
L_0084: call Verse.Thing get_Instigator()
L_0089: brfalse Label #9
L_008e: ldarga.s 1
L_0090: call DamageInfo get_Value()
L_0095: stloc.s 10 (Verse.DamageInfo)
L_0097: ldloca.s 10 (Verse.DamageInfo)
L_0099: call Verse.Thing get_Instigator()
L_009e: isinst Verse.Pawn
L_00a3: ldnull
L_00a4: cgt.un
L_00a6: br Label #10
L_00ab: Label #7
L_00ab: Label #8
L_00ab: Label #9
L_00ab: ldc.i4.0
L_00ac: Label #10
L_00ac: stloc.2
L_00ad: ldloc.2
L_00ae: brfalse Label #11
L_00b3: ldarga.s 1
L_00b5: call DamageInfo get_Value()
L_00ba: stloc.s 11 (Verse.DamageInfo)
L_00bc: ldloca.s 11 (Verse.DamageInfo)
L_00be: call Verse.Thing get_Instigator()
L_00c3: castclass Verse.Pawn
L_00c8: stloc.3
L_00c9: ldloc.3
L_00ca: callvirt Boolean get_Dead()
L_00cf: brtrue Label #12
L_00d4: ldloc.3
L_00d5: ldfld RimWorld.Pawn_NeedsTracker needs
L_00da: ldfld RimWorld.Need_Mood mood
L_00df: brfalse Label #13
L_00e4: ldloc.3
L_00e5: ldfld RimWorld.Pawn_StoryTracker story
L_00ea: brfalse Label #14
L_00ef: ldloc.3
L_00f0: ldarg.0
L_00f1: beq Label #15
L_00f6: ldarg.2
L_00f7: brtrue Label #16
L_00fc: ldarg.3
L_00fd: ldsfld RimWorld.ThoughtDef KilledHumanlikeBloodlust
L_0102: ldloc.3
L_0103: ldnull
L_0104: ldc.r4 1
L_0109: ldc.r4 1
L_010e: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_0113: callvirt Void Add(IndividualThoughtToAdd)
L_0118: Label #16
L_0118: ldarg.2
L_0119: brtrue Label #17
L_011e: ldarg.0
L_011f: ldloc.3
L_0120: call Boolean HostileTo(Verse.Thing, Verse.Thing)
L_0125: brfalse Label #18
L_012a: ldarg.0
L_012b: callvirt RimWorld.Faction get_Faction()
L_0130: brfalse Label #19
L_0135: ldarg.0
L_0136: call Boolean IsFactionLeader(Verse.Pawn)
L_013b: brfalse Label #20
L_0140: ldarg.0
L_0141: callvirt RimWorld.Faction get_Faction()
L_0146: ldloc.3
L_0147: callvirt RimWorld.Faction get_Faction()
L_014c: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0151: brfalse Label #21
L_0156: ldarg.3
L_0157: ldsfld RimWorld.ThoughtDef DefeatedHostileFactionLeader
L_015c: ldloc.3
L_015d: ldarg.0
L_015e: ldc.r4 1
L_0163: ldc.r4 1
L_0168: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_016d: callvirt Void Add(IndividualThoughtToAdd)
L_0172: Label #19
L_0172: Label #20
L_0172: Label #21
L_0172: ldarg.0
L_0173: ldfld Verse.PawnKindDef kindDef
L_0178: ldfld System.Single combatPower
L_017d: ldc.r4 250
L_0182: ble.un Label #22
L_0187: ldarg.3
L_0188: ldsfld RimWorld.ThoughtDef DefeatedMajorEnemy
L_018d: ldloc.3
L_018e: ldarg.0
L_018f: ldc.r4 1
L_0194: ldc.r4 1
L_0199: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_019e: callvirt Void Add(IndividualThoughtToAdd)
L_01a3: Label #11
L_01a3: Label #12
L_01a3: Label #13
L_01a3: Label #14
L_01a3: Label #15
L_01a3: Label #17
L_01a3: Label #18
L_01a3: Label #22
L_01a3: ldarg.2
L_01a4: brtrue Label #23
L_01a9: ldloc.0
L_01aa: brtrue Label #24
L_01af: call IEnumerable`1 get_AllMapsCaravansAndTravelingTransportPods()
L_01b4: callvirt IEnumerator`1 GetEnumerator()
L_01b9: stloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_01bb: br Label #25
L_01c0: Label #45
L_01c0: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_01c2: callvirt Verse.Pawn get_Current()
L_01c7: stloc.s 4 (Verse.Pawn)
L_01c9: ldloc.s 4 (Verse.Pawn)
L_01cb: ldarg.0
L_01cc: beq Label #26
L_01d1: ldloc.s 4 (Verse.Pawn)
L_01d3: ldfld RimWorld.Pawn_NeedsTracker needs
L_01d8: ldfld RimWorld.Need_Mood mood
L_01dd: brtrue Label #27
L_01e2: Label #26
L_01e2: br Label #28
L_01e7: Label #27
L_01e7: ldloc.s 4 (Verse.Pawn)
L_01e9: callvirt Verse.MentalStateDef get_MentalStateDef()
L_01ee: ldsfld Verse.MentalStateDef SocialFighting
L_01f3: bne.un Label #29
L_01f8: ldloc.s 4 (Verse.Pawn)
L_01fa: callvirt Verse.AI.MentalState get_MentalState()
L_01ff: castclass Verse.AI.MentalState_SocialFighting
L_0204: ldfld Verse.Pawn otherPawn
L_0209: ldarg.0
L_020a: ceq
L_020c: br Label #30
L_0211: Label #29
L_0211: ldc.i4.0
L_0212: Label #30
L_0212: stloc.s 6 (System.Boolean)
L_0214: ldloc.s 6 (System.Boolean)
L_0216: brtrue Label #31
L_021b: ldloc.s 4 (Verse.Pawn)
L_021d: ldarg.0
L_021e: call Boolean Witnessed(Verse.Pawn, Verse.Pawn)
L_0223: brfalse Label #32
L_0228: ldloc.s 4 (Verse.Pawn)
L_022a: callvirt RimWorld.Faction get_Faction()
L_022f: ldarg.0
L_0230: callvirt RimWorld.Faction get_Faction()
L_0235: bne.un Label #33
L_023a: ldarg.3
L_023b: ldsfld RimWorld.ThoughtDef WitnessedDeathAlly
L_0240: ldloc.s 4 (Verse.Pawn)
L_0242: ldnull
L_0243: ldc.r4 1
L_0248: ldc.r4 1
L_024d: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_0252: callvirt Void Add(IndividualThoughtToAdd)
L_0257: br Label #34
L_025c: Label #33
L_025c: ldarg.0
L_025d: callvirt RimWorld.Faction get_Faction()
L_0262: brfalse Label #35
L_0267: ldarg.0
L_0268: callvirt RimWorld.Faction get_Faction()
L_026d: ldloc.s 4 (Verse.Pawn)
L_026f: callvirt RimWorld.Faction get_Faction()
L_0274: call Boolean HostileTo(RimWorld.Faction, RimWorld.Faction)
L_0279: brtrue Label #36
L_027e: Label #35
L_027e: ldarg.3
L_027f: ldsfld RimWorld.ThoughtDef WitnessedDeathNonAlly
L_0284: ldloc.s 4 (Verse.Pawn)
L_0286: ldnull
L_0287: ldc.r4 1
L_028c: ldc.r4 1
L_0291: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_0296: callvirt Void Add(IndividualThoughtToAdd)
L_029b: Label #34
L_029b: Label #36
L_029b: ldloc.s 4 (Verse.Pawn)
L_029d: ldfld RimWorld.Pawn_RelationsTracker relations
L_02a2: callvirt IEnumerable`1 get_FamilyByBlood()
L_02a7: ldarg.0
L_02a8: call Boolean Contains[Pawn](IEnumerable`1, Verse.Pawn)
L_02ad: brfalse Label #37
L_02b2: ldarg.3
L_02b3: ldsfld RimWorld.ThoughtDef WitnessedDeathFamily
L_02b8: ldloc.s 4 (Verse.Pawn)
L_02ba: ldnull
L_02bb: ldc.r4 1
L_02c0: ldc.r4 1
L_02c5: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_02ca: callvirt Void Add(IndividualThoughtToAdd)
L_02cf: Label #37
L_02cf: ldarg.3
L_02d0: ldsfld RimWorld.ThoughtDef WitnessedDeathBloodlust
L_02d5: ldloc.s 4 (Verse.Pawn)
L_02d7: ldnull
L_02d8: ldc.r4 1
L_02dd: ldc.r4 1
L_02e2: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_02e7: callvirt Void Add(IndividualThoughtToAdd)
L_02ec: br Label #38
L_02f1: Label #32
L_02f1: ldarg.0
L_02f2: callvirt RimWorld.Faction get_Faction()
L_02f7: call RimWorld.Faction get_OfPlayer()
L_02fc: bne.un Label #39
L_0301: ldarg.0
L_0302: callvirt RimWorld.Faction get_Faction()
L_0307: ldloc.s 4 (Verse.Pawn)
L_0309: callvirt RimWorld.Faction get_Faction()
L_030e: bne.un Label #40
L_0313: ldarg.0
L_0314: callvirt RimWorld.Faction get_HostFaction()
L_0319: ldloc.s 4 (Verse.Pawn)
L_031b: callvirt RimWorld.Faction get_Faction()
L_0320: beq Label #41
L_0325: ldarg.3
L_0326: ldsfld RimWorld.ThoughtDef KnowColonistDied
L_032b: ldloc.s 4 (Verse.Pawn)
L_032d: ldnull
L_032e: ldc.r4 1
L_0333: ldc.r4 1
L_0338: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_033d: callvirt Void Add(IndividualThoughtToAdd)
L_0342: Label #38
L_0342: Label #39
L_0342: Label #40
L_0342: Label #41
L_0342: ldloc.1
L_0343: brfalse Label #42
L_0348: ldloc.s 4 (Verse.Pawn)
L_034a: callvirt RimWorld.Faction get_Faction()
L_034f: call RimWorld.Faction get_OfPlayer()
L_0354: bne.un Label #43
L_0359: ldloc.s 4 (Verse.Pawn)
L_035b: callvirt Boolean get_IsPrisoner()
L_0360: brtrue Label #44
L_0365: ldarg.3
L_0366: ldsfld RimWorld.ThoughtDef KnowPrisonerDiedInnocent
L_036b: ldloc.s 4 (Verse.Pawn)
L_036d: ldnull
L_036e: ldc.r4 1
L_0373: ldc.r4 1
L_0378: newobj Void .ctor(ThoughtDef, Pawn, Pawn, Single, Single)
L_037d: callvirt Void Add(IndividualThoughtToAdd)
L_0382: Label #25
L_0382: Label #28
L_0382: Label #31
L_0382: Label #42
L_0382: Label #43
L_0382: Label #44
L_0382: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_0384: callvirt Boolean MoveNext()
L_0389: brtrue Label #45
L_038e: leave Label #46
L_0393: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_0395: brtrue Label #47
L_039a: endfinally
L_039b: Label #47
L_039b: ldloc.s 5 (System.Collections.Generic.IEnumerator`1[Verse.Pawn])
L_039d: callvirt Void Dispose()
L_03a2: endfinally
L_03a3: Label #23
L_03a3: Label #24
L_03a3: Label #46
L_03a3: ldarg.2
L_03a4: ldc.i4.1
L_03a5: bne.un Label #48
L_03aa: ldarg.0
L_03ab: callvirt Boolean get_IsColonist()
L_03b0: brfalse Label #49
L_03b5: ldarg.s 4
L_03b7: ldsfld RimWorld.ThoughtDef ColonistAbandoned
L_03bc: callvirt Void Add(RimWorld.ThoughtDef)
L_03c1: Label #48
L_03c1: Label #49
L_03c1: ldarg.2
L_03c2: ldc.i4.2
L_03c3: bne.un Label #50
L_03c8: ldarg.0
L_03c9: callvirt Boolean get_IsColonist()
L_03ce: brfalse Label #51
L_03d3: ldarg.s 4
L_03d5: ldsfld RimWorld.ThoughtDef ColonistAbandonedToDie
L_03da: callvirt Void Add(RimWorld.ThoughtDef)
L_03df: br Label #52
L_03e4: Label #51
L_03e4: ldarg.0
L_03e5: callvirt Boolean get_IsPrisonerOfColony()
L_03ea: brfalse Label #53
L_03ef: ldarg.s 4
L_03f1: ldsfld RimWorld.ThoughtDef PrisonerAbandonedToDie
L_03f6: callvirt Void Add(RimWorld.ThoughtDef)
L_03fb: Label #50
L_03fb: Label #52
L_03fb: Label #53
L_03fb: br Label #0
L_0400: Label #0
L_0400: ldarg 0
L_0406: ldarg 1
L_040c: ldarg 2
L_0412: ldarga 3
L_0418: ldarga 4
L_041e: call Void AppendPsychologyThoughts(Verse.Pawn, Nullable`1,
PawnDiedOrDownedThoughtsKind,
System.Collections.Generic.List`1[RimWorld.IndividualThoughtToAdd] ByRef,
System.Collections.Generic.List`1[RimWorld.ThoughtDef] ByRef)
L_0423: ret
DONE

PATCHING RimWorld.ThoughtWorker_CreepyBreathing ThoughtState


CurrentSocialStateInternal(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: ldloca 0 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.2
L_0009: callvirt Verse.RaceProperties get_RaceProps()
L_000e: callvirt Boolean get_Humanlike()
L_0013: brfalse Label #2
L_0018: ldarg.1
L_0019: ldarg.2
L_001a: call Boolean PawnsKnowEachOther(Verse.Pawn, Verse.Pawn)
L_001f: brtrue Label #3
L_0024: Label #2
L_0024: ldc.i4.0
L_0025: call ThoughtState op_Implicit(Boolean)
L_002a: br Label #0
L_002f: Label #3
L_002f: ldarg.2
L_0030: ldfld RimWorld.Pawn_StoryTracker story
L_0035: ldfld RimWorld.TraitSet traits
L_003a: ldsfld RimWorld.TraitDef CreepyBreathing
L_003f: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0044: brtrue Label #4
L_0049: ldc.i4.0
L_004a: call ThoughtState op_Implicit(Boolean)
L_004f: br Label #0
L_0054: Label #4
L_0054: ldarg.1
L_0055: ldfld Verse.Pawn_HealthTracker health
L_005a: ldfld Verse.PawnCapacitiesHandler capacities
L_005f: ldsfld Verse.PawnCapacityDef Hearing
L_0064: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_0069: brtrue Label #5
L_006e: ldc.i4.0
L_006f: call ThoughtState op_Implicit(Boolean)
L_0074: br Label #0
L_0079: Label #5
L_0079: ldc.i4.1
L_007a: call ThoughtState op_Implicit(Boolean)
L_007f: br Label #0
L_0084: Label #0
L_0084: stloc 0 (RimWorld.ThoughtState)
L_0085: ldloca 0 (RimWorld.ThoughtState)
L_0087: ldarg 1
L_008d: call Void Disable(Boolean ByRef, Verse.Pawn)
L_0092: ldloc 0 (RimWorld.ThoughtState)
L_0093: ret
DONE

PATCHING RimWorld.ThoughtWorker_AnnoyingVoice ThoughtState


CurrentSocialStateInternal(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: ldloca 0 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.2
L_0009: callvirt Verse.RaceProperties get_RaceProps()
L_000e: callvirt Boolean get_Humanlike()
L_0013: brfalse Label #2
L_0018: ldarg.1
L_0019: ldarg.2
L_001a: call Boolean PawnsKnowEachOther(Verse.Pawn, Verse.Pawn)
L_001f: brtrue Label #3
L_0024: Label #2
L_0024: ldc.i4.0
L_0025: call ThoughtState op_Implicit(Boolean)
L_002a: br Label #0
L_002f: Label #3
L_002f: ldarg.2
L_0030: ldfld RimWorld.Pawn_StoryTracker story
L_0035: ldfld RimWorld.TraitSet traits
L_003a: ldsfld RimWorld.TraitDef AnnoyingVoice
L_003f: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0044: brtrue Label #4
L_0049: ldc.i4.0
L_004a: call ThoughtState op_Implicit(Boolean)
L_004f: br Label #0
L_0054: Label #4
L_0054: ldarg.1
L_0055: ldfld Verse.Pawn_HealthTracker health
L_005a: ldfld Verse.PawnCapacitiesHandler capacities
L_005f: ldsfld Verse.PawnCapacityDef Hearing
L_0064: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_0069: brtrue Label #5
L_006e: ldc.i4.0
L_006f: call ThoughtState op_Implicit(Boolean)
L_0074: br Label #0
L_0079: Label #5
L_0079: ldc.i4.1
L_007a: call ThoughtState op_Implicit(Boolean)
L_007f: br Label #0
L_0084: Label #0
L_0084: stloc 0 (RimWorld.ThoughtState)
L_0085: ldloca 0 (RimWorld.ThoughtState)
L_0087: ldarg 1
L_008d: call Void Disable(Boolean ByRef, Verse.Pawn)
L_0092: ldloc 0 (RimWorld.ThoughtState)
L_0093: ret
DONE

PATCHING RimWorld.ThoughtWorker_Ugly ThoughtState


CurrentSocialStateInternal(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Int32
L_0000: Local var #1 RimWorld.ThoughtState
L_0000: ldloca 1 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.2
L_0009: callvirt Verse.RaceProperties get_RaceProps()
L_000e: callvirt Boolean get_Humanlike()
L_0013: brfalse Label #2
L_0018: ldarg.1
L_0019: ldarg.2
L_001a: call Boolean PawnsKnowEachOther(Verse.Pawn, Verse.Pawn)
L_001f: brtrue Label #3
L_0024: Label #2
L_0024: ldc.i4.0
L_0025: call ThoughtState op_Implicit(Boolean)
L_002a: br Label #0
L_002f: Label #3
L_002f: ldarg.1
L_0030: ldfld Verse.Pawn_HealthTracker health
L_0035: ldfld Verse.PawnCapacitiesHandler capacities
L_003a: ldsfld Verse.PawnCapacityDef Sight
L_003f: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_0044: brtrue Label #4
L_0049: ldc.i4.0
L_004a: call ThoughtState op_Implicit(Boolean)
L_004f: br Label #0
L_0054: Label #4
L_0054: ldarg.2
L_0055: ldfld RimWorld.Pawn_StoryTracker story
L_005a: ldfld RimWorld.TraitSet traits
L_005f: ldsfld RimWorld.TraitDef Beauty
L_0064: callvirt Int32 DegreeOfTrait(RimWorld.TraitDef)
L_0069: stloc.0
L_006a: ldloc.0
L_006b: ldc.i4.m1
L_006c: bne.un Label #5
L_0071: ldc.i4.0
L_0072: call ThoughtState ActiveAtStage(Int32)
L_0077: br Label #0
L_007c: Label #5
L_007c: ldloc.0
L_007d: ldc.i4.s -2
L_007f: bne.un Label #6
L_0084: ldc.i4.1
L_0085: call ThoughtState ActiveAtStage(Int32)
L_008a: br Label #0
L_008f: Label #6
L_008f: ldc.i4.0
L_0090: call ThoughtState op_Implicit(Boolean)
L_0095: br Label #0
L_009a: Label #0
L_009a: stloc 1 (RimWorld.ThoughtState)
L_009b: ldloca 1 (RimWorld.ThoughtState)
L_009d: ldarg 1
L_00a3: ldarg 2
L_00a9: call Void Disable(ThoughtState ByRef, Verse.Pawn, Verse.Pawn)
L_00ae: ldloc 1 (RimWorld.ThoughtState)
L_00af: ret
DONE

PATCHING RimWorld.ThoughtWorker_Pretty ThoughtState


CurrentSocialStateInternal(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 System.Int32
L_0000: Local var #1 RimWorld.ThoughtState
L_0000: ldloca 1 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.2
L_0009: callvirt Verse.RaceProperties get_RaceProps()
L_000e: callvirt Boolean get_Humanlike()
L_0013: brfalse Label #2
L_0018: ldarg.1
L_0019: ldarg.2
L_001a: call Boolean PawnsKnowEachOther(Verse.Pawn, Verse.Pawn)
L_001f: brtrue Label #3
L_0024: Label #2
L_0024: ldc.i4.0
L_0025: call ThoughtState op_Implicit(Boolean)
L_002a: br Label #0
L_002f: Label #3
L_002f: ldarg.2
L_0030: call Boolean IsDisfigured(Verse.Pawn)
L_0035: brfalse Label #4
L_003a: ldc.i4.0
L_003b: call ThoughtState op_Implicit(Boolean)
L_0040: br Label #0
L_0045: Label #4
L_0045: ldarg.1
L_0046: ldfld Verse.Pawn_HealthTracker health
L_004b: ldfld Verse.PawnCapacitiesHandler capacities
L_0050: ldsfld Verse.PawnCapacityDef Sight
L_0055: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_005a: brtrue Label #5
L_005f: ldc.i4.0
L_0060: call ThoughtState op_Implicit(Boolean)
L_0065: br Label #0
L_006a: Label #5
L_006a: ldarg.2
L_006b: ldfld RimWorld.Pawn_StoryTracker story
L_0070: ldfld RimWorld.TraitSet traits
L_0075: ldsfld RimWorld.TraitDef Beauty
L_007a: callvirt Int32 DegreeOfTrait(RimWorld.TraitDef)
L_007f: stloc.0
L_0080: ldloc.0
L_0081: ldc.i4.1
L_0082: bne.un Label #6
L_0087: ldc.i4.0
L_0088: call ThoughtState ActiveAtStage(Int32)
L_008d: br Label #0
L_0092: Label #6
L_0092: ldloc.0
L_0093: ldc.i4.2
L_0094: bne.un Label #7
L_0099: ldc.i4.1
L_009a: call ThoughtState ActiveAtStage(Int32)
L_009f: br Label #0
L_00a4: Label #7
L_00a4: ldc.i4.0
L_00a5: call ThoughtState op_Implicit(Boolean)
L_00aa: br Label #0
L_00af: Label #0
L_00af: stloc 1 (RimWorld.ThoughtState)
L_00b0: ldloca 1 (RimWorld.ThoughtState)
L_00b2: ldarg 1
L_00b8: ldarg 2
L_00be: call Void Disable(ThoughtState ByRef, Verse.Pawn, Verse.Pawn)
L_00c3: ldloc 1 (RimWorld.ThoughtState)
L_00c4: ret
DONE

PATCHING RimWorld.ThoughtWorker_Disfigured ThoughtState


CurrentSocialStateInternal(Verse.Pawn, Verse.Pawn)
L_0000: Local var #0 RimWorld.ThoughtState
L_0000: ldloca 0 (RimWorld.ThoughtState)
L_0002: initobj RimWorld.ThoughtState
L_0008: ldarg.2
L_0009: callvirt Verse.RaceProperties get_RaceProps()
L_000e: callvirt Boolean get_Humanlike()
L_0013: brfalse Label #2
L_0018: ldarg.2
L_0019: callvirt Boolean get_Dead()
L_001e: brfalse Label #3
L_0023: Label #2
L_0023: ldc.i4.0
L_0024: call ThoughtState op_Implicit(Boolean)
L_0029: br Label #0
L_002e: Label #3
L_002e: ldarg.1
L_002f: ldarg.2
L_0030: call Boolean PawnsKnowEachOther(Verse.Pawn, Verse.Pawn)
L_0035: brtrue Label #4
L_003a: ldc.i4.0
L_003b: call ThoughtState op_Implicit(Boolean)
L_0040: br Label #0
L_0045: Label #4
L_0045: ldarg.2
L_0046: call Boolean IsDisfigured(Verse.Pawn)
L_004b: brtrue Label #5
L_0050: ldc.i4.0
L_0051: call ThoughtState op_Implicit(Boolean)
L_0056: br Label #0
L_005b: Label #5
L_005b: ldarg.1
L_005c: ldfld Verse.Pawn_HealthTracker health
L_0061: ldfld Verse.PawnCapacitiesHandler capacities
L_0066: ldsfld Verse.PawnCapacityDef Sight
L_006b: callvirt Boolean CapableOf(Verse.PawnCapacityDef)
L_0070: brtrue Label #6
L_0075: ldc.i4.0
L_0076: call ThoughtState op_Implicit(Boolean)
L_007b: br Label #0
L_0080: Label #6
L_0080: ldc.i4.1
L_0081: call ThoughtState op_Implicit(Boolean)
L_0086: br Label #0
L_008b: Label #0
L_008b: stloc 0 (RimWorld.ThoughtState)
L_008c: ldloca 0 (RimWorld.ThoughtState)
L_008e: ldarg 1
L_0094: call Void Disable(Boolean ByRef, Verse.Pawn)
L_0099: ldloc 0 (RimWorld.ThoughtState)
L_009a: ret
DONE

PATCHING RimWorld.ThoughtWorker_CabinFever ThoughtState


CurrentStateInternal(Verse.Pawn)
L_0000: Local var #0 System.Single
L_0000: ldarg.1
L_0001: callvirt Boolean get_Downed()
L_0006: brfalse Label #2
L_000b: call ThoughtState get_Inactive()
L_0010: br Label #0
L_0015: Label #2
L_0015: ldarg.1
L_0016: callvirt RimWorld.Faction get_HostFaction()
L_001b: brfalse Label #3
L_0020: call ThoughtState get_Inactive()
L_0025: br Label #0
L_002a: Label #3
L_002a: ldarg.1
L_002b: ldfld RimWorld.Pawn_NeedsTracker needs
L_0030: ldfld RimWorld.Need_Mood mood
L_0035: ldfld RimWorld.PawnRecentMemory recentMemory
L_003a: callvirt Int32 get_TicksSinceOutdoors()
L_003f: conv.r4
L_0040: ldc.r4 60000
L_0045: div
L_0046: stloc.0
L_0047: ldloc.0
L_0048: ldc.r4 2.5
L_004d: ldarg.1
L_004e: ldc.r4 1
L_0053: ldc.r4 0
L_0058: callvirt Single HasOutdoorsyTraitVal(Verse.Pawn, Single, Single)
L_005d: sub
L_005e: bge.un Label #4
L_0063: call ThoughtState get_Inactive()
L_0068: br Label #0
L_006d: Label #4
L_006d: ldloc.0
L_006e: ldc.r4 7.5
L_0073: ldarg.1
L_0074: ldc.r4 2.5
L_0079: ldc.r4 0
L_007e: callvirt Single HasOutdoorsyTraitVal(Verse.Pawn, Single, Single)
L_0083: sub
L_0084: bge.un Label #5
L_0089: ldc.i4.0
L_008a: call ThoughtState ActiveAtStage(Int32)
L_008f: br Label #0
L_0094: Label #5
L_0094: ldc.i4.1
L_0095: call ThoughtState ActiveAtStage(Int32)
L_009a: br Label #0
L_009f: Label #0
L_009f: ret
DONE

PATCHING RimWorld.RecordsUtility Void Notify_BillDone(Verse.Pawn,


System.Collections.Generic.List`1[Verse.Thing])
L_0000: Local var #0 System.Int32
L_0000: ldc.i4.0
L_0001: stloc.0
L_0002: br Label #2
L_0007: Label #7
L_0007: ldarg.1
L_0008: ldloc.0
L_0009: callvirt Verse.Thing get_Item(Int32)
L_000e: ldfld Verse.ThingDef def
L_0013: callvirt Boolean get_IsNutritionGivingIngestible()
L_0018: brfalse Label #3
L_001d: ldarg.1
L_001e: ldloc.0
L_001f: callvirt Verse.Thing get_Item(Int32)
L_0024: ldfld Verse.ThingDef def
L_0029: ldfld RimWorld.IngestibleProperties ingestible
L_002e: ldfld RimWorld.FoodPreferability preferability
L_0033: ldc.i4.5
L_0034: blt Label #4
L_0039: ldarg.0
L_003a: ldfld RimWorld.Pawn_RecordsTracker records
L_003f: ldsfld RimWorld.RecordDef MealsCooked
L_0044: callvirt Void Increment(RimWorld.RecordDef)
L_0049: br Label #5
L_004e: Label #3
L_004e: Label #4
L_004e: ldarg.1
L_004f: ldloc.0
L_0050: callvirt Verse.Thing get_Item(Int32)
L_0055: call Boolean ShouldIncrementThingsCrafted(Verse.Thing)
L_005a: brfalse Label #6
L_005f: ldarg.0
L_0060: ldfld RimWorld.Pawn_RecordsTracker records
L_0065: ldsfld RimWorld.RecordDef ThingsCrafted
L_006a: callvirt Void Increment(RimWorld.RecordDef)
L_006f: Label #5
L_006f: Label #6
L_006f: ldloc.0
L_0070: ldc.i4.1
L_0071: add
L_0072: stloc.0
L_0073: Label #2
L_0073: ldloc.0
L_0074: ldarg.1
L_0075: callvirt Int32 get_Count()
L_007a: blt Label #7
L_007f: br Label #0
L_0084: Label #0
L_0084: ldarg 0
L_008a: ldarg 1
L_0090: call Void BleedingHeartThought(Verse.Pawn,
System.Collections.Generic.List`1[Verse.Thing])
L_0095: ret
DONE

PATCHING RimWorld.Need_Rest Void NeedInterval()


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Nullable`1[[Verse.AI.JobTag, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg.0
L_0001: call Boolean get_IsFrozen()
L_0006: brtrue Label #2
L_000b: ldarg.0
L_000c: call Boolean get_Resting()
L_0011: brfalse Label #3
L_0016: ldarg.0
L_0017: dup
L_0018: callvirt Single get_CurLevel()
L_001d: ldc.r4 0.005714286
L_0022: ldarg.0
L_0023: ldfld System.Single lastRestEffectiveness
L_0028: mul
L_0029: add
L_002a: callvirt Void set_CurLevel(Single)
L_002f: br Label #4
L_0034: Label #3
L_0034: ldarg.0
L_0035: dup
L_0036: callvirt Single get_CurLevel()
L_003b: ldarg.0
L_003c: call Single get_RestFallPerTick()
L_0041: ldc.r4 150
L_0046: mul
L_0047: sub
L_0048: callvirt Void set_CurLevel(Single)
L_004d: Label #2
L_004d: Label #4
L_004d: ldarg.0
L_004e: callvirt Single get_CurLevel()
L_0053: ldc.r4 0.0001
L_0058: bge.un Label #5
L_005d: ldarg.0
L_005e: dup
L_005f: ldfld System.Int32 ticksAtZero
L_0064: ldc.i4 150
L_0069: add
L_006a: stfld System.Int32 ticksAtZero
L_006f: br Label #6
L_0074: Label #5
L_0074: ldarg.0
L_0075: ldc.i4.0
L_0076: stfld System.Int32 ticksAtZero
L_007b: Label #6
L_007b: ldarg.0
L_007c: ldfld System.Int32 ticksAtZero
L_0081: ldc.i4 1000
L_0086: ble Label #7
L_008b: ldarg.0
L_008c: ldfld Verse.Pawn pawn
L_0091: callvirt Boolean get_Spawned()
L_0096: brfalse Label #8
L_009b: ldarg.0
L_009c: ldfld System.Int32 ticksAtZero
L_00a1: ldc.i4 15000
L_00a6: bge Label #9
L_00ab: ldc.r4 0.25
L_00b0: stloc.0
L_00b1: br Label #10
L_00b6: Label #9
L_00b6: ldarg.0
L_00b7: ldfld System.Int32 ticksAtZero
L_00bc: ldc.i4 30000
L_00c1: bge Label #11
L_00c6: ldc.r4 0.125
L_00cb: stloc.0
L_00cc: br Label #12
L_00d1: Label #11
L_00d1: ldarg.0
L_00d2: ldfld System.Int32 ticksAtZero
L_00d7: ldc.i4 45000
L_00dc: bge Label #13
L_00e1: ldc.r4 0.08333334
L_00e6: stloc.0
L_00e7: br Label #14
L_00ec: Label #13
L_00ec: ldc.r4 0.0625
L_00f1: stloc.0
L_00f2: Label #10
L_00f2: Label #12
L_00f2: Label #14
L_00f2: ldloc.0
L_00f3: ldc.r4 60000
L_00f8: ldc.r4 150
L_00fd: call Boolean MTBEventOccurs(Single, Single, Single)
L_0102: brfalse Label #15
L_0107: ldarg.0
L_0108: ldfld Verse.Pawn pawn
L_010d: ldfld Verse.AI.Pawn_JobTracker jobs
L_0112: ldsfld Verse.JobDef LayDown
L_0117: ldarg.0
L_0118: ldfld Verse.Pawn pawn
L_011d: callvirt IntVec3 get_Position()
L_0122: call LocalTargetInfo op_Implicit(IntVec3)
L_0127: newobj Void .ctor(JobDef, LocalTargetInfo)
L_012c: ldc.i4.5
L_012d: ldnull
L_012e: ldc.i4.0
L_012f: ldc.i4.1
L_0130: ldnull
L_0131: ldloca.s 1 (System.Nullable`1[Verse.AI.JobTag])
L_0133: initobj System.Nullable`1[Verse.AI.JobTag]
L_0139: ldloc.1
L_013a: callvirt Void StartJob(Verse.AI.Job, JobCondition, Verse.AI.ThinkNode,
Boolean, Boolean, Verse.ThinkTreeDef, Nullable`1)
L_013f: ldarg.0
L_0140: ldfld Verse.Pawn pawn
L_0145: call Boolean ShouldSendNotificationAbout(Verse.Pawn)
L_014a: brfalse Label #16
L_014f: ldstr "MessageInvoluntarySleep"
L_0154: ldc.i4.1
L_0155: newarr System.Object
L_015a: dup
L_015b: ldc.i4.0
L_015c: ldarg.0
L_015d: ldfld Verse.Pawn pawn
L_0162: callvirt System.String get_LabelShort()
L_0167: stelem.ref
L_0168: call System.String Translate(System.String, System.Object[])
L_016d: ldarg.0
L_016e: ldfld Verse.Pawn pawn
L_0173: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0178: ldc.i4.4
L_0179: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_017e: Label #7
L_017e: Label #8
L_017e: Label #15
L_017e: Label #16
L_017e: br Label #0
L_0183: Label #0
L_0183: ldarg.0
L_0184: call Void CauseDream(RimWorld.Need_Rest)
L_0189: ret
DONE

PATCHING RimWorld.Need_Rest Void NeedInterval()


L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Nullable`1[[Verse.AI.JobTag, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg.0
L_0001: call Boolean get_IsFrozen()
L_0006: brtrue Label #2
L_000b: ldarg.0
L_000c: call Boolean get_Resting()
L_0011: brfalse Label #3
L_0016: ldarg.0
L_0017: dup
L_0018: callvirt Single get_CurLevel()
L_001d: ldc.r4 0.005714286
L_0022: ldarg.0
L_0023: ldfld System.Single lastRestEffectiveness
L_0028: mul
L_0029: add
L_002a: callvirt Void set_CurLevel(Single)
L_002f: br Label #4
L_0034: Label #3
L_0034: ldarg.0
L_0035: dup
L_0036: callvirt Single get_CurLevel()
L_003b: ldarg.0
L_003c: call Single get_RestFallPerTick()
L_0041: ldc.r4 150
L_0046: mul
L_0047: sub
L_0048: callvirt Void set_CurLevel(Single)
L_004d: Label #2
L_004d: Label #4
L_004d: ldarg.0
L_004e: callvirt Single get_CurLevel()
L_0053: ldc.r4 0.0001
L_0058: bge.un Label #5
L_005d: ldarg.0
L_005e: dup
L_005f: ldfld System.Int32 ticksAtZero
L_0064: ldc.i4 150
L_0069: add
L_006a: stfld System.Int32 ticksAtZero
L_006f: br Label #6
L_0074: Label #5
L_0074: ldarg.0
L_0075: ldc.i4.0
L_0076: stfld System.Int32 ticksAtZero
L_007b: Label #6
L_007b: ldarg.0
L_007c: ldfld System.Int32 ticksAtZero
L_0081: ldc.i4 1000
L_0086: ble Label #7
L_008b: ldarg.0
L_008c: ldfld Verse.Pawn pawn
L_0091: callvirt Boolean get_Spawned()
L_0096: brfalse Label #8
L_009b: ldarg.0
L_009c: ldfld System.Int32 ticksAtZero
L_00a1: ldc.i4 15000
L_00a6: bge Label #9
L_00ab: ldc.r4 0.25
L_00b0: stloc.0
L_00b1: br Label #10
L_00b6: Label #9
L_00b6: ldarg.0
L_00b7: ldfld System.Int32 ticksAtZero
L_00bc: ldc.i4 30000
L_00c1: bge Label #11
L_00c6: ldc.r4 0.125
L_00cb: stloc.0
L_00cc: br Label #12
L_00d1: Label #11
L_00d1: ldarg.0
L_00d2: ldfld System.Int32 ticksAtZero
L_00d7: ldc.i4 45000
L_00dc: bge Label #13
L_00e1: ldc.r4 0.08333334
L_00e6: stloc.0
L_00e7: br Label #14
L_00ec: Label #13
L_00ec: ldc.r4 0.0625
L_00f1: stloc.0
L_00f2: Label #10
L_00f2: Label #12
L_00f2: Label #14
L_00f2: ldloc.0
L_00f3: ldc.r4 60000
L_00f8: ldc.r4 150
L_00fd: call Boolean MTBEventOccurs(Single, Single, Single)
L_0102: brfalse Label #15
L_0107: ldarg.0
L_0108: ldfld Verse.Pawn pawn
L_010d: ldfld Verse.AI.Pawn_JobTracker jobs
L_0112: ldsfld Verse.JobDef LayDown
L_0117: ldarg.0
L_0118: ldfld Verse.Pawn pawn
L_011d: callvirt IntVec3 get_Position()
L_0122: call LocalTargetInfo op_Implicit(IntVec3)
L_0127: newobj Void .ctor(JobDef, LocalTargetInfo)
L_012c: ldc.i4.5
L_012d: ldnull
L_012e: ldc.i4.0
L_012f: ldc.i4.1
L_0130: ldnull
L_0131: ldloca.s 1 (System.Nullable`1[Verse.AI.JobTag])
L_0133: initobj System.Nullable`1[Verse.AI.JobTag]
L_0139: ldloc.1
L_013a: callvirt Void StartJob(Verse.AI.Job, JobCondition, Verse.AI.ThinkNode,
Boolean, Boolean, Verse.ThinkTreeDef, Nullable`1)
L_013f: ldarg.0
L_0140: ldfld Verse.Pawn pawn
L_0145: call Boolean ShouldSendNotificationAbout(Verse.Pawn)
L_014a: brfalse Label #16
L_014f: ldstr "MessageInvoluntarySleep"
L_0154: ldc.i4.1
L_0155: newarr System.Object
L_015a: dup
L_015b: ldc.i4.0
L_015c: ldarg.0
L_015d: ldfld Verse.Pawn pawn
L_0162: callvirt System.String get_LabelShort()
L_0167: stelem.ref
L_0168: call System.String Translate(System.String, System.Object[])
L_016d: ldarg.0
L_016e: ldfld Verse.Pawn pawn
L_0173: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0178: ldc.i4.4
L_0179: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_017e: Label #7
L_017e: Label #8
L_017e: Label #15
L_017e: Label #16
L_017e: br Label #0
L_0183: Label #0
L_0183: ldarg.0
L_0184: call Void CauseDream(RimWorld.Need_Rest)
L_0189: ldarg.0
L_018a: call Void MakeInsomniacLessRestful(RimWorld.Need_Rest)
L_018f: ret
DONE

PATCHING RimWorld.Pawn_RelationsTracker Void Notify_RescuedBy(Verse.Pawn)


L_0000: ldarg.1
L_0001: callvirt Verse.RaceProperties get_RaceProps()
L_0006: callvirt Boolean get_Humanlike()
L_000b: brfalse Label #2
L_0010: ldarg.0
L_0011: ldfld System.Boolean canGetRescuedThought
L_0016: brfalse Label #3
L_001b: ldarg.0
L_001c: ldfld Verse.Pawn pawn
L_0021: ldfld RimWorld.Pawn_NeedsTracker needs
L_0026: ldfld RimWorld.Need_Mood mood
L_002b: ldfld RimWorld.ThoughtHandler thoughts
L_0030: ldfld RimWorld.MemoryThoughtHandler memories
L_0035: ldsfld RimWorld.ThoughtDef RescuedMe
L_003a: ldarg.1
L_003b: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_0040: ldarg.0
L_0041: ldc.i4.0
L_0042: stfld System.Boolean canGetRescuedThought
L_0047: Label #2
L_0047: Label #3
L_0047: br Label #0
L_004c: Label #0
L_004c: ldarg.0
L_004d: call Void Postfix(RimWorld.Pawn_RelationsTracker)
L_0052: ldarg.0
L_0053: ldarg 1
L_0059: call Void AddBleedingHeartThought(RimWorld.Pawn_RelationsTracker,
Verse.Pawn)
L_005e: ret
DONE

PATCHING RimWorld.Pawn_RelationsTracker Single


SecondaryRomanceChanceFactor(Verse.Pawn)
L_0000: Local var #0 System.Boolean
L_0000: Local var #1 System.Single
L_0000: Local var #2 System.Single
L_0000: Local var #3 System.Single
L_0000: Local var #4 System.Single
L_0000: Local var #5 System.Single
L_0000: Local var #6 System.Single
L_0000: Local var #7 System.Single
L_0000: Local var #8 RimWorld.PawnRelationDef
L_0000: Local var #9
System.Collections.Generic.IEnumerator`1[[RimWorld.PawnRelationDef, Assembly-
CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #10 System.Int32
L_0000: Local var #11 System.Single
L_0000: Local var #12 System.Single
L_0000: Local var #13 System.Single
L_0000: Local var #14 System.Single
L_0000: Local var #15 System.Single
L_0000: ldc.r4 0
L_0005: stloc 15 (System.Single)
L_0007: ldarg.0
L_0008: ldfld Verse.Pawn pawn
L_000d: callvirt Verse.RaceProperties get_RaceProps()
L_0012: callvirt Boolean get_Humanlike()
L_0017: ldarg.1
L_0018: callvirt Verse.RaceProperties get_RaceProps()
L_001d: callvirt Boolean get_Humanlike()
L_0022: bne.un Label #2
L_0027: ldarg.0
L_0028: ldfld Verse.Pawn pawn
L_002d: ldarg.1
L_002e: bne.un Label #3
L_0033: Label #2
L_0033: ldc.r4 0
L_0038: br Label #0
L_003d: Label #3
L_003d: ldarg.0
L_003e: ldfld Verse.Pawn pawn
L_0043: ldfld System.Int32 thingIDNumber
L_0048: ldc.i4 3273711
L_004d: xor
L_004e: call Single ValueSeeded(Int32)
L_0053: ldc.r4 0.015
L_0058: clt
L_005a: stloc.0
L_005b: ldloc.0
L_005c: brtrue Label #4
L_0061: ldarg.0
L_0062: ldfld Verse.Pawn pawn
L_0067: callvirt Verse.RaceProperties get_RaceProps()
L_006c: callvirt Boolean get_Humanlike()
L_0071: brfalse Label #5
L_0076: ldarg.0
L_0077: ldfld Verse.Pawn pawn
L_007c: ldfld RimWorld.Pawn_StoryTracker story
L_0081: ldfld RimWorld.TraitSet traits
L_0086: ldsfld RimWorld.TraitDef Gay
L_008b: callvirt Boolean HasTrait(RimWorld.TraitDef)
L_0090: brfalse Label #6
L_0095: ldarg.1
L_0096: ldfld Verse.Gender gender
L_009b: ldarg.0
L_009c: ldfld Verse.Pawn pawn
L_00a1: ldfld Verse.Gender gender
L_00a6: beq Label #7
L_00ab: ldc.r4 0
L_00b0: br Label #0
L_00b5: Label #7
L_00b5: br Label #8
L_00ba: Label #5
L_00ba: Label #6
L_00ba: ldarg.1
L_00bb: ldfld Verse.Gender gender
L_00c0: ldarg.0
L_00c1: ldfld Verse.Pawn pawn
L_00c6: ldfld Verse.Gender gender
L_00cb: bne.un Label #9
L_00d0: ldc.r4 0
L_00d5: br Label #0
L_00da: Label #4
L_00da: Label #8
L_00da: Label #9
L_00da: ldarg.0
L_00db: ldfld Verse.Pawn pawn
L_00e0: ldfld Verse.Pawn_AgeTracker ageTracker
L_00e5: callvirt Single get_AgeBiologicalYearsFloat()
L_00ea: stloc.1
L_00eb: ldarg.1
L_00ec: ldfld Verse.Pawn_AgeTracker ageTracker
L_00f1: callvirt Single get_AgeBiologicalYearsFloat()
L_00f6: stloc.2
L_00f7: ldc.r4 1
L_00fc: stloc.3
L_00fd: ldarg.0
L_00fe: ldfld Verse.Pawn pawn
L_0103: ldfld Verse.Gender gender
L_0108: ldc.i4.1
L_0109: bne.un Label #10
L_010e: ldloc.2
L_010f: ldc.r4 16
L_0114: bge.un Label #11
L_0119: ldc.r4 0
L_011e: br Label #0
L_0123: Label #11
L_0123: ldc.r4 16
L_0128: ldloc.1
L_0129: ldc.r4 30
L_012e: sub
L_012f: call Single Max(Single, Single)
L_0134: stloc.s 4 (System.Single)
L_0136: ldc.r4 20
L_013b: ldloc.1
L_013c: ldc.r4 10
L_0141: sub
L_0142: call Single Max(Single, Single)
L_0147: stloc.s 5 (System.Single)
L_0149: ldc.r4 0.15
L_014e: ldloc.s 4 (System.Single)
L_0150: ldloc.s 5 (System.Single)
L_0152: ldloc.1
L_0153: ldloc.1
L_0154: ldc.r4 10
L_0159: add
L_015a: ldc.r4 0.15
L_015f: ldloc.2
L_0160: call Single FlatHill(Single, Single, Single, Single, Single, Single,
Single)
L_0165: stloc.3
L_0166: br Label #12
L_016b: Label #10
L_016b: ldarg.0
L_016c: ldfld Verse.Pawn pawn
L_0171: ldfld Verse.Gender gender
L_0176: ldc.i4.2
L_0177: bne.un Label #13
L_017c: ldloc.2
L_017d: ldc.r4 16
L_0182: bge.un Label #14
L_0187: ldc.r4 0
L_018c: br Label #0
L_0191: Label #14
L_0191: ldloc.2
L_0192: ldloc.1
L_0193: ldc.r4 10
L_0198: sub
L_0199: bge.un Label #15
L_019e: ldc.r4 0.15
L_01a3: br Label #0
L_01a8: Label #15
L_01a8: ldloc.2
L_01a9: ldloc.1
L_01aa: ldc.r4 3
L_01af: sub
L_01b0: bge.un Label #16
L_01b5: ldloc.1
L_01b6: ldc.r4 10
L_01bb: sub
L_01bc: ldloc.1
L_01bd: ldc.r4 3
L_01c2: sub
L_01c3: ldloc.2
L_01c4: call Single InverseLerp(Single, Single, Single)
L_01c9: ldc.r4 0.3
L_01ce: mul
L_01cf: stloc.3
L_01d0: br Label #17
L_01d5: Label #16
L_01d5: ldc.r4 0.3
L_01da: ldloc.1
L_01db: ldc.r4 3
L_01e0: sub
L_01e1: ldloc.1
L_01e2: ldloc.1
L_01e3: ldc.r4 10
L_01e8: add
L_01e9: ldloc.1
L_01ea: ldc.r4 30
L_01ef: add
L_01f0: ldc.r4 0.15
L_01f5: ldloc.2
L_01f6: call Single FlatHill(Single, Single, Single, Single, Single, Single,
Single)
L_01fb: stloc.3
L_01fc: Label #12
L_01fc: Label #13
L_01fc: Label #17
L_01fc: ldc.r4 1
L_0201: stloc.s 6 (System.Single)
L_0203: ldloc.s 6 (System.Single)
L_0205: ldc.r4 0.2
L_020a: ldc.r4 1
L_020f: ldarg.1
L_0210: ldfld Verse.Pawn_HealthTracker health
L_0215: ldfld Verse.PawnCapacitiesHandler capacities
L_021a: ldsfld Verse.PawnCapacityDef Talking
L_021f: callvirt Single GetLevel(Verse.PawnCapacityDef)
L_0224: call Single Lerp(Single, Single, Single)
L_0229: mul
L_022a: stloc.s 6 (System.Single)
L_022c: ldloc.s 6 (System.Single)
L_022e: ldc.r4 0.2
L_0233: ldc.r4 1
L_0238: ldarg.1
L_0239: ldfld Verse.Pawn_HealthTracker health
L_023e: ldfld Verse.PawnCapacitiesHandler capacities
L_0243: ldsfld Verse.PawnCapacityDef Manipulation
L_0248: callvirt Single GetLevel(Verse.PawnCapacityDef)
L_024d: call Single Lerp(Single, Single, Single)
L_0252: mul
L_0253: stloc.s 6 (System.Single)
L_0255: ldloc.s 6 (System.Single)
L_0257: ldc.r4 0.2
L_025c: ldc.r4 1
L_0261: ldarg.1
L_0262: ldfld Verse.Pawn_HealthTracker health
L_0267: ldfld Verse.PawnCapacitiesHandler capacities
L_026c: ldsfld Verse.PawnCapacityDef Moving
L_0271: callvirt Single GetLevel(Verse.PawnCapacityDef)
L_0276: call Single Lerp(Single, Single, Single)
L_027b: mul
L_027c: stloc.s 6 (System.Single)
L_027e: ldc.r4 1
L_0283: stloc.s 7 (System.Single)
L_0285: ldarg.0
L_0286: ldfld Verse.Pawn pawn
L_028b: ldarg.1
L_028c: call IEnumerable`1 GetRelations(Verse.Pawn, Verse.Pawn)
L_0291: callvirt IEnumerator`1 GetEnumerator()
L_0296: stloc.s 9
(System.Collections.Generic.IEnumerator`1[RimWorld.PawnRelationDef])
L_0298: br Label #18
L_029d: Label #19
L_029d: ldloc.s 9
(System.Collections.Generic.IEnumerator`1[RimWorld.PawnRelationDef])
L_029f: callvirt RimWorld.PawnRelationDef get_Current()
L_02a4: stloc.s 8 (RimWorld.PawnRelationDef)
L_02a6: ldloc.s 7 (System.Single)
L_02a8: ldloc.s 8 (RimWorld.PawnRelationDef)
L_02aa: ldfld System.Single attractionFactor
L_02af: mul
L_02b0: stloc.s 7 (System.Single)
L_02b2: Label #18
L_02b2: ldloc.s 9
(System.Collections.Generic.IEnumerator`1[RimWorld.PawnRelationDef])
L_02b4: callvirt Boolean MoveNext()
L_02b9: brtrue Label #19
L_02be: leave Label #20
L_02c3: ldloc.s 9
(System.Collections.Generic.IEnumerator`1[RimWorld.PawnRelationDef])
L_02c5: brtrue Label #21
L_02ca: endfinally
L_02cb: Label #21
L_02cb: ldloc.s 9
(System.Collections.Generic.IEnumerator`1[RimWorld.PawnRelationDef])
L_02cd: callvirt Void Dispose()
L_02d2: endfinally
L_02d3: Label #20
L_02d3: ldc.i4.0
L_02d4: stloc.s 10 (System.Int32)
L_02d6: ldarg.1
L_02d7: callvirt Verse.RaceProperties get_RaceProps()
L_02dc: callvirt Boolean get_Humanlike()
L_02e1: brfalse Label #22
L_02e6: ldarg.1
L_02e7: ldfld RimWorld.Pawn_StoryTracker story
L_02ec: ldfld RimWorld.TraitSet traits
L_02f1: ldsfld RimWorld.TraitDef Beauty
L_02f6: callvirt Int32 DegreeOfTrait(RimWorld.TraitDef)
L_02fb: stloc.s 10 (System.Int32)
L_02fd: Label #22
L_02fd: ldc.r4 1
L_0302: stloc.s 11 (System.Single)
L_0304: ldloc.s 10 (System.Int32)
L_0306: ldc.i4.0
L_0307: bge Label #23
L_030c: ldc.r4 0.3
L_0311: stloc.s 11 (System.Single)
L_0313: br Label #24
L_0318: Label #23
L_0318: ldloc.s 10 (System.Int32)
L_031a: ldc.i4.0
L_031b: ble Label #25
L_0320: ldc.r4 2.3
L_0325: stloc.s 11 (System.Single)
L_0327: Label #24
L_0327: Label #25
L_0327: ldc.r4 15
L_032c: ldc.r4 18
L_0331: ldloc.1
L_0332: call Single InverseLerp(Single, Single, Single)
L_0337: stloc.s 12 (System.Single)
L_0339: ldc.r4 15
L_033e: ldc.r4 18
L_0343: ldloc.2
L_0344: call Single InverseLerp(Single, Single, Single)
L_0349: stloc.s 13 (System.Single)
L_034b: ldloc.3
L_034c: ldloc.s 6 (System.Single)
L_034e: mul
L_034f: ldloc.s 7 (System.Single)
L_0351: mul
L_0352: ldloc.s 12 (System.Single)
L_0354: mul
L_0355: ldloc.s 13 (System.Single)
L_0357: mul
L_0358: ldloc.s 11 (System.Single)
L_035a: mul
L_035b: stloc.s 14 (System.Single)
L_035d: ldloc.s 14 (System.Single)
L_035f: br Label #0
L_0364: Label #0
L_0364: stloc 15 (System.Single)
L_0366: ldarg.0
L_0367: ldloca 15 (System.Single)
L_0369: ldarg 1
L_036f: call Void PsychologyFormula(RimWorld.Pawn_RelationsTracker, Single ByRef,
Verse.Pawn)
L_0374: ldloc 15 (System.Single)
L_0376: ret
DONE

PATCHING RimWorld.JobGiver_GetRest Single GetPriority(Verse.Pawn)


L_0000: Local var #0 RimWorld.Need_Rest
L_0000: Local var #1 Verse.AI.Group.Lord
L_0000: Local var #2 RimWorld.TimeAssignmentDef
L_0000: Local var #3 System.Int32
L_0000: Local var #4 System.Single
L_0000: Local var #5 System.Single
L_0000: ldc.r4 0
L_0005: stloc 5 (System.Single)
L_0007: ldarg.1
L_0008: ldfld RimWorld.Pawn_NeedsTracker needs
L_000d: ldfld RimWorld.Need_Rest rest
L_0012: stloc.0
L_0013: ldloc.0
L_0014: brtrue Label #2
L_0019: ldc.r4 0
L_001e: br Label #0
L_0023: Label #2
L_0023: ldloc.0
L_0024: callvirt RestCategory get_CurCategory()
L_0029: ldarg.0
L_002a: ldfld RimWorld.RestCategory minCategory
L_002f: bge Label #3
L_0034: ldc.r4 0
L_0039: br Label #0
L_003e: Label #3
L_003e: call Verse.TickManager get_TickManager()
L_0043: callvirt Int32 get_TicksGame()
L_0048: ldarg.1
L_0049: ldfld Verse.AI.Pawn_MindState mindState
L_004e: ldfld System.Int32 canSleepTick
L_0053: bge Label #4
L_0058: ldc.r4 0
L_005d: br Label #0
L_0062: Label #4
L_0062: ldarg.1
L_0063: call Verse.AI.Group.Lord GetLord(Verse.Pawn)
L_0068: stloc.1
L_0069: ldloc.1
L_006a: brfalse Label #5
L_006f: ldloc.1
L_0070: callvirt Verse.AI.Group.LordToil get_CurLordToil()
L_0075: callvirt Boolean get_AllowSatisfyLongNeeds()
L_007a: brtrue Label #6
L_007f: ldc.r4 0
L_0084: br Label #0
L_0089: Label #5
L_0089: Label #6
L_0089: ldarg.1
L_008a: callvirt Verse.RaceProperties get_RaceProps()
L_008f: callvirt Boolean get_Humanlike()
L_0094: brfalse Label #7
L_0099: ldarg.1
L_009a: ldfld RimWorld.Pawn_TimetableTracker timetable
L_009f: brtrue Label #8
L_00a4: ldsfld RimWorld.TimeAssignmentDef Anything
L_00a9: br Label #9
L_00ae: Label #8
L_00ae: ldarg.1
L_00af: ldfld RimWorld.Pawn_TimetableTracker timetable
L_00b4: callvirt RimWorld.TimeAssignmentDef get_CurrentAssignment()
L_00b9: Label #9
L_00b9: stloc.2
L_00ba: br Label #10
L_00bf: Label #7
L_00bf: ldarg.1
L_00c0: call Int32 HourOfDay(Verse.Thing)
L_00c5: stloc.3
L_00c6: ldloc.3
L_00c7: ldc.i4.7
L_00c8: blt Label #11
L_00cd: ldloc.3
L_00ce: ldc.i4.s 21
L_00d0: ble Label #12
L_00d5: Label #11
L_00d5: ldsfld RimWorld.TimeAssignmentDef Sleep
L_00da: stloc.2
L_00db: br Label #13
L_00e0: Label #12
L_00e0: ldsfld RimWorld.TimeAssignmentDef Anything
L_00e5: stloc.2
L_00e6: Label #10
L_00e6: Label #13
L_00e6: ldloc.0
L_00e7: callvirt Single get_CurLevel()
L_00ec: stloc.s 4 (System.Single)
L_00ee: ldloc.2
L_00ef: ldsfld RimWorld.TimeAssignmentDef Anything
L_00f4: bne.un Label #14
L_00f9: ldloc.s 4 (System.Single)
L_00fb: ldc.r4 0.3
L_0100: bge.un Label #15
L_0105: ldc.r4 8
L_010a: br Label #0
L_010f: Label #15
L_010f: ldc.r4 0
L_0114: br Label #0
L_0119: Label #14
L_0119: ldloc.2
L_011a: ldsfld RimWorld.TimeAssignmentDef Work
L_011f: bne.un Label #16
L_0124: ldc.r4 0
L_0129: br Label #0
L_012e: Label #16
L_012e: ldloc.2
L_012f: ldsfld RimWorld.TimeAssignmentDef Joy
L_0134: bne.un Label #17
L_0139: ldloc.s 4 (System.Single)
L_013b: ldc.r4 0.3
L_0140: bge.un Label #18
L_0145: ldc.r4 8
L_014a: br Label #0
L_014f: Label #18
L_014f: ldc.r4 0
L_0154: br Label #0
L_0159: Label #17
L_0159: ldloc.2
L_015a: ldsfld RimWorld.TimeAssignmentDef Sleep
L_015f: bne.un Label #19
L_0164: ldloc.s 4 (System.Single)
L_0166: ldarg.1
L_0167: call Single FallAsleepMaxLevel(Verse.Pawn)
L_016c: bge.un Label #20
L_0171: ldc.r4 8
L_0176: br Label #0
L_017b: Label #20
L_017b: ldc.r4 0
L_0180: br Label #0
L_0185: Label #19
L_0185: newobj Void .ctor()
L_018a: throw
L_018b: Label #0
L_018b: stloc 5 (System.Single)
L_018d: ldloca 5 (System.Single)
L_018f: ldarg 1
L_0195: call Void InsomniacPriority(Single ByRef, Verse.Pawn)
L_019a: ldloc 5 (System.Single)
L_019c: ret
DONE

PATCHING RimWorld.Recipe_InstallArtificialBodyPart Void ApplyOnPawn(Verse.Pawn,


Verse.BodyPartRecord, Verse.Pawn, System.Collections.Generic.List`1[Verse.Thing])
L_0000: Local var #0 System.Nullable`1[[Verse.DamageInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg 1
L_0006: ldarg 3
L_000c: call Void BleedingHeartThought(Verse.Pawn, Verse.Pawn)
L_0011: ldarg.3
L_0012: brfalse Label #2
L_0017: ldarg.0
L_0018: ldarg.3
L_0019: ldarg.1
L_001a: ldarg.s 4
L_001c: ldarg.2
L_001d: call Boolean CheckSurgeryFail(Verse.Pawn, Verse.Pawn,
System.Collections.Generic.List`1[Verse.Thing], Verse.BodyPartRecord)
L_0022: brfalse Label #3
L_0027: br Label #0
L_002c: Label #3
L_002c: ldsfld RimWorld.TaleDef DidSurgery
L_0031: ldc.i4.2
L_0032: newarr System.Object
L_0037: dup
L_0038: ldc.i4.0
L_0039: ldarg.3
L_003a: stelem.ref
L_003b: dup
L_003c: ldc.i4.1
L_003d: ldarg.1
L_003e: stelem.ref
L_003f: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_0044: ldarg.1
L_0045: ldarg.2
L_0046: ldarg.3
L_0047: callvirt IntVec3 get_Position()
L_004c: ldarg.3
L_004d: callvirt Verse.Map get_Map()
L_0052: call Void RestorePartAndSpawnAllPreviousParts(Verse.Pawn,
Verse.BodyPartRecord, IntVec3, Verse.Map)
L_0057: br Label #4
L_005c: Label #2
L_005c: ldarg.1
L_005d: callvirt Verse.Map get_Map()
L_0062: brfalse Label #5
L_0067: ldarg.1
L_0068: ldarg.2
L_0069: ldarg.1
L_006a: callvirt IntVec3 get_Position()
L_006f: ldarg.1
L_0070: callvirt Verse.Map get_Map()
L_0075: call Void RestorePartAndSpawnAllPreviousParts(Verse.Pawn,
Verse.BodyPartRecord, IntVec3, Verse.Map)
L_007a: br Label #6
L_007f: Label #5
L_007f: ldarg.1
L_0080: ldfld Verse.Pawn_HealthTracker health
L_0085: ldarg.2
L_0086: ldnull
L_0087: ldc.i4.1
L_0088: callvirt Void RestorePart(Verse.BodyPartRecord, Verse.Hediff, Boolean)
L_008d: Label #4
L_008d: Label #6
L_008d: ldarg.1
L_008e: ldfld Verse.Pawn_HealthTracker health
L_0093: ldarg.0
L_0094: ldfld Verse.RecipeDef recipe
L_0099: ldfld Verse.HediffDef addsHediff
L_009e: ldarg.2
L_009f: ldloca.s 0 (System.Nullable`1[Verse.DamageInfo])
L_00a1: initobj System.Nullable`1[Verse.DamageInfo]
L_00a7: ldloc.0
L_00a8: callvirt Void AddHediff(Verse.HediffDef, Verse.BodyPartRecord, Nullable`1)
L_00ad: br Label #0
L_00b2: Label #0
L_00b2: ret
DONE

PATCHING RimWorld.Recipe_InstallImplant Void ApplyOnPawn(Verse.Pawn,


Verse.BodyPartRecord, Verse.Pawn, System.Collections.Generic.List`1[Verse.Thing])
L_0000: Local var #0 System.Nullable`1[[Verse.DamageInfo, Assembly-CSharp,
Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg 1
L_0006: ldarg 3
L_000c: call Void BleedingHeartThought(Verse.Pawn, Verse.Pawn)
L_0011: ldarg.3
L_0012: brfalse Label #2
L_0017: ldarg.0
L_0018: ldarg.3
L_0019: ldarg.1
L_001a: ldarg.s 4
L_001c: ldarg.2
L_001d: call Boolean CheckSurgeryFail(Verse.Pawn, Verse.Pawn,
System.Collections.Generic.List`1[Verse.Thing], Verse.BodyPartRecord)
L_0022: brfalse Label #3
L_0027: br Label #0
L_002c: Label #3
L_002c: ldsfld RimWorld.TaleDef DidSurgery
L_0031: ldc.i4.2
L_0032: newarr System.Object
L_0037: dup
L_0038: ldc.i4.0
L_0039: ldarg.3
L_003a: stelem.ref
L_003b: dup
L_003c: ldc.i4.1
L_003d: ldarg.1
L_003e: stelem.ref
L_003f: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_0044: Label #2
L_0044: ldarg.1
L_0045: ldfld Verse.Pawn_HealthTracker health
L_004a: ldarg.0
L_004b: ldfld Verse.RecipeDef recipe
L_0050: ldfld Verse.HediffDef addsHediff
L_0055: ldarg.2
L_0056: ldloca.s 0 (System.Nullable`1[Verse.DamageInfo])
L_0058: initobj System.Nullable`1[Verse.DamageInfo]
L_005e: ldloc.0
L_005f: callvirt Void AddHediff(Verse.HediffDef, Verse.BodyPartRecord, Nullable`1)
L_0064: br Label #0
L_0069: Label #0
L_0069: ret
DONE
PATCHING RimWorld.Recipe_InstallNaturalBodyPart Void ApplyOnPawn(Verse.Pawn,
Verse.BodyPartRecord, Verse.Pawn, System.Collections.Generic.List`1[Verse.Thing])
L_0000: ldarg 1
L_0006: ldarg 3
L_000c: call Void BleedingHeartThought(Verse.Pawn, Verse.Pawn)
L_0011: ldarg.3
L_0012: brfalse Label #2
L_0017: ldarg.0
L_0018: ldarg.3
L_0019: ldarg.1
L_001a: ldarg.s 4
L_001c: ldarg.2
L_001d: call Boolean CheckSurgeryFail(Verse.Pawn, Verse.Pawn,
System.Collections.Generic.List`1[Verse.Thing], Verse.BodyPartRecord)
L_0022: brfalse Label #3
L_0027: br Label #0
L_002c: Label #3
L_002c: ldsfld RimWorld.TaleDef DidSurgery
L_0031: ldc.i4.2
L_0032: newarr System.Object
L_0037: dup
L_0038: ldc.i4.0
L_0039: ldarg.3
L_003a: stelem.ref
L_003b: dup
L_003c: ldc.i4.1
L_003d: ldarg.1
L_003e: stelem.ref
L_003f: call Void RecordTale(RimWorld.TaleDef, System.Object[])
L_0044: ldarg.1
L_0045: ldarg.2
L_0046: ldarg.3
L_0047: callvirt IntVec3 get_Position()
L_004c: ldarg.3
L_004d: callvirt Verse.Map get_Map()
L_0052: call Void RestorePartAndSpawnAllPreviousParts(Verse.Pawn,
Verse.BodyPartRecord, IntVec3, Verse.Map)
L_0057: Label #2
L_0057: br Label #0
L_005c: Label #0
L_005c: ret
DONE

PATCHING RimWorld.Recipe_Surgery Boolean CheckSurgeryFail(Verse.Pawn, Verse.Pawn,


System.Collections.Generic.List`1[Verse.Thing], Verse.BodyPartRecord)
L_0000: Local var #0 System.Single
L_0000: Local var #1 Verse.Room
L_0000: Local var #2 System.Int32
L_0000: Local var #3 System.Boolean
L_0000: ldc.i4 0
L_0005: stloc 3 (System.Boolean)
L_0006: ldc.r4 1
L_000b: stloc.0
L_000c: ldloc.0
L_000d: ldarg.1
L_000e: ldarg.2
L_000f: callvirt Verse.RaceProperties get_RaceProps()
L_0014: callvirt Boolean get_IsMechanoid()
L_0019: brfalse Label #2
L_001e: ldsfld RimWorld.StatDef MechanoidOperationSuccessChance
L_0023: br Label #3
L_0028: Label #2
L_0028: ldsfld RimWorld.StatDef MedicalSurgerySuccessChance
L_002d: Label #3
L_002d: ldc.i4.1
L_002e: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_0033: mul
L_0034: stloc.0
L_0035: ldarg.1
L_0036: ldc.i4.6
L_0037: call Verse.Room GetRoom(Verse.Thing, RegionType)
L_003c: stloc.1
L_003d: ldloc.1
L_003e: brfalse Label #4
L_0043: ldarg.2
L_0044: callvirt Verse.RaceProperties get_RaceProps()
L_0049: callvirt Boolean get_IsMechanoid()
L_004e: brtrue Label #5
L_0053: ldloc.0
L_0054: ldloc.1
L_0055: ldsfld Verse.RoomStatDef SurgerySuccessChanceFactor
L_005a: callvirt Single GetStat(Verse.RoomStatDef)
L_005f: mul
L_0060: stloc.0
L_0061: Label #4
L_0061: Label #5
L_0061: ldloc.0
L_0062: ldarg.0
L_0063: ldarg.3
L_0064: call Single
GetAverageMedicalPotency(System.Collections.Generic.List`1[Verse.Thing])
L_0069: mul
L_006a: stloc.0
L_006b: ldloc.0
L_006c: ldarg.0
L_006d: ldfld Verse.RecipeDef recipe
L_0072: ldfld System.Single surgerySuccessChanceFactor
L_0077: mul
L_0078: stloc.0
L_0079: call Single get_Value()
L_007e: ldloc.0
L_007f: ble.un Label #6
L_0084: call Single get_Value()
L_0089: ldarg.0
L_008a: ldfld Verse.RecipeDef recipe
L_008f: ldfld System.Single deathOnFailedSurgeryChance
L_0094: bge.un Label #7
L_0099: ldc.i4.0
L_009a: stloc.2
L_009b: br Label #8
L_00a0: Label #11
L_00a0: ldarg.2
L_00a1: call Void GiveInjuriesOperationFailureRidiculous(Verse.Pawn)
L_00a6: ldloc.2
L_00a7: ldc.i4.1
L_00a8: add
L_00a9: stloc.2
L_00aa: ldloc.2
L_00ab: ldc.i4 300
L_00b0: ble Label #9
L_00b5: ldstr "Could not kill patient."
L_00ba: call Void Error(System.String)
L_00bf: br Label #10
L_00c4: Label #8
L_00c4: Label #9
L_00c4: ldarg.2
L_00c5: callvirt Boolean get_Dead()
L_00ca: brfalse Label #11
L_00cf: Label #10
L_00cf: br Label #12
L_00d4: Label #7
L_00d4: call Single get_Value()
L_00d9: ldc.r4 0.5
L_00de: bge.un Label #13
L_00e3: call Single get_Value()
L_00e8: ldc.r4 0.1
L_00ed: bge.un Label #14
L_00f2: ldstr "MessageMedicalOperationFailureRidiculous"
L_00f7: ldc.i4.2
L_00f8: newarr System.Object
L_00fd: dup
L_00fe: ldc.i4.0
L_00ff: ldarg.1
L_0100: callvirt System.String get_LabelShort()
L_0105: stelem.ref
L_0106: dup
L_0107: ldc.i4.1
L_0108: ldarg.2
L_0109: callvirt System.String get_LabelShort()
L_010e: stelem.ref
L_010f: call System.String Translate(System.String, System.Object[])
L_0114: ldarg.2
L_0115: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_011a: ldc.i4.5
L_011b: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0120: ldarg.2
L_0121: call Void GiveInjuriesOperationFailureRidiculous(Verse.Pawn)
L_0126: br Label #15
L_012b: Label #14
L_012b: ldstr "MessageMedicalOperationFailureCatastrophic"
L_0130: ldc.i4.2
L_0131: newarr System.Object
L_0136: dup
L_0137: ldc.i4.0
L_0138: ldarg.1
L_0139: callvirt System.String get_LabelShort()
L_013e: stelem.ref
L_013f: dup
L_0140: ldc.i4.1
L_0141: ldarg.2
L_0142: callvirt System.String get_LabelShort()
L_0147: stelem.ref
L_0148: call System.String Translate(System.String, System.Object[])
L_014d: ldarg.2
L_014e: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_0153: ldc.i4.5
L_0154: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0159: ldarg.2
L_015a: ldarg.s 4
L_015c: call Void GiveInjuriesOperationFailureCatastrophic(Verse.Pawn,
Verse.BodyPartRecord)
L_0161: Label #15
L_0161: br Label #16
L_0166: Label #13
L_0166: ldstr "MessageMedicalOperationFailureMinor"
L_016b: ldc.i4.2
L_016c: newarr System.Object
L_0171: dup
L_0172: ldc.i4.0
L_0173: ldarg.1
L_0174: callvirt System.String get_LabelShort()
L_0179: stelem.ref
L_017a: dup
L_017b: ldc.i4.1
L_017c: ldarg.2
L_017d: callvirt System.String get_LabelShort()
L_0182: stelem.ref
L_0183: call System.String Translate(System.String, System.Object[])
L_0188: ldarg.2
L_0189: call GlobalTargetInfo op_Implicit(Verse.Thing)
L_018e: ldc.i4.4
L_018f: call Void Message(System.String, GlobalTargetInfo, MessageSound)
L_0194: ldarg.2
L_0195: ldarg.s 4
L_0197: call Void GiveInjuriesOperationFailureMinor(Verse.Pawn,
Verse.BodyPartRecord)
L_019c: Label #12
L_019c: Label #16
L_019c: ldarg.2
L_019d: callvirt Boolean get_Dead()
L_01a2: brtrue Label #17
L_01a7: ldarg.0
L_01a8: ldarg.2
L_01a9: ldarg.1
L_01aa: call Void TryGainBotchedSurgeryThought(Verse.Pawn, Verse.Pawn)
L_01af: Label #17
L_01af: ldc.i4.1
L_01b0: br Label #0
L_01b5: Label #6
L_01b5: ldc.i4.0
L_01b6: br Label #0
L_01bb: Label #0
L_01bb: stloc 3 (System.Boolean)
L_01bc: ldloc 3 (System.Boolean)
L_01bd: ldarg 1
L_01c3: ldarg 2
L_01c9: call Void BleedingHeartThought(Boolean, Verse.Pawn, Verse.Pawn)
L_01ce: ldloc 3 (System.Boolean)
L_01cf: ret
DONE

PATCHING RimWorld.TendUtility Void DoTend(Verse.Pawn, Verse.Pawn,


RimWorld.Medicine)
L_0000: Local var #0 System.Single
L_0000: Local var #1 System.Single
L_0000: Local var #2 RimWorld.Building_Bed
L_0000: Local var #3 System.Int32
L_0000: ldarg.1
L_0001: ldfld Verse.Pawn_HealthTracker health
L_0006: ldc.i4.0
L_0007: callvirt Boolean HasHediffsNeedingTend(Boolean)
L_000c: brtrue Label #2
L_0011: br Label #0
L_0016: Label #2
L_0016: ldarg.2
L_0017: brfalse Label #3
L_001c: ldarg.2
L_001d: callvirt Boolean get_Destroyed()
L_0022: brfalse Label #4
L_0027: ldstr "Tried to use destroyed medicine."
L_002c: call Void Warning(System.String)
L_0031: ldnull
L_0032: starg.s 2
L_0034: Label #3
L_0034: Label #4
L_0034: ldarg.2
L_0035: brfalse Label #5
L_003a: ldarg.2
L_003b: ldfld Verse.ThingDef def
L_0040: ldsfld RimWorld.StatDef MedicalPotency
L_0045: ldnull
L_0046: call Single GetStatValueAbstract(Verse.BuildableDef, RimWorld.StatDef,
Verse.ThingDef)
L_004b: br Label #6
L_0050: Label #5
L_0050: ldc.r4 0.3
L_0055: Label #6
L_0055: stloc.0
L_0056: ldarg.0
L_0057: brfalse Label #7
L_005c: ldarg.0
L_005d: ldsfld RimWorld.StatDef MedicalTendQuality
L_0062: ldc.i4.1
L_0063: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_0068: stloc.1
L_0069: br Label #8
L_006e: Label #7
L_006e: ldc.r4 0.75
L_0073: stloc.1
L_0074: Label #8
L_0074: ldloc.1
L_0075: ldloc.0
L_0076: mul
L_0077: stloc.1
L_0078: ldarg.1
L_0079: call RimWorld.Building_Bed CurrentBed(Verse.Pawn)
L_007e: stloc.2
L_007f: ldloc.2
L_0080: brfalse Label #9
L_0085: ldloc.1
L_0086: ldloc.2
L_0087: ldsfld RimWorld.StatDef MedicalTendQualityOffset
L_008c: ldc.i4.1
L_008d: call Single GetStatValue(Verse.Thing, RimWorld.StatDef, Boolean)
L_0092: add
L_0093: stloc.1
L_0094: Label #9
L_0094: ldarg.0
L_0095: ldarg.1
L_0096: bne.un Label #10
L_009b: ldloc.1
L_009c: ldc.r4 0.7
L_00a1: mul
L_00a2: stloc.1
L_00a3: Label #10
L_00a3: ldloc.1
L_00a4: call Single Clamp01(Single)
L_00a9: stloc.1
L_00aa: ldarg.1
L_00ab: ldarg.2
L_00ac: ldnull
L_00ad: ceq
L_00af: ldc.i4.0
L_00b0: ceq
L_00b2: ldsfld System.Collections.Generic.List`1[Verse.Hediff] tmpHediffsToTend
L_00b7: ldnull
L_00b8: call Void GetOptimalHediffsToTendWithSingleTreatment(Verse.Pawn, Boolean,
System.Collections.Generic.List`1[Verse.Hediff],
System.Collections.Generic.List`1[Verse.Hediff])
L_00bd: ldc.i4.0
L_00be: stloc.3
L_00bf: br Label #11
L_00c4: Label #12
L_00c4: ldsfld System.Collections.Generic.List`1[Verse.Hediff] tmpHediffsToTend
L_00c9: ldloc.3
L_00ca: callvirt Verse.Hediff get_Item(Int32)
L_00cf: ldloc.1
L_00d0: ldloc.3
L_00d1: callvirt Void Tended(Single, Int32)
L_00d6: ldloc.3
L_00d7: ldc.i4.1
L_00d8: add
L_00d9: stloc.3
L_00da: Label #11
L_00da: ldloc.3
L_00db: ldsfld System.Collections.Generic.List`1[Verse.Hediff] tmpHediffsToTend
L_00e0: callvirt Int32 get_Count()
L_00e5: blt Label #12
L_00ea: ldarg.0
L_00eb: brfalse Label #13
L_00f0: ldarg.0
L_00f1: callvirt RimWorld.Faction get_Faction()
L_00f6: brfalse Label #14
L_00fb: ldarg.1
L_00fc: callvirt RimWorld.Faction get_HostFaction()
L_0101: brtrue Label #15
L_0106: ldarg.1
L_0107: callvirt RimWorld.Faction get_Faction()
L_010c: brfalse Label #16
L_0111: ldarg.1
L_0112: callvirt RimWorld.Faction get_Faction()
L_0117: ldarg.0
L_0118: callvirt RimWorld.Faction get_Faction()
L_011d: beq Label #17
L_0122: ldarg.1
L_0123: callvirt RimWorld.Faction get_Faction()
L_0128: ldarg.0
L_0129: callvirt RimWorld.Faction get_Faction()
L_012e: ldc.r4 0.3
L_0133: callvirt Boolean AffectGoodwillWith(RimWorld.Faction, Single)
L_0138: pop
L_0139: Label #13
L_0139: Label #14
L_0139: Label #15
L_0139: Label #16
L_0139: Label #17
L_0139: ldarg.0
L_013a: brfalse Label #18
L_013f: ldarg.0
L_0140: callvirt Verse.RaceProperties get_RaceProps()
L_0145: callvirt Boolean get_Humanlike()
L_014a: brfalse Label #19
L_014f: ldarg.1
L_0150: callvirt Verse.RaceProperties get_RaceProps()
L_0155: callvirt Boolean get_Animal()
L_015a: brfalse Label #20
L_015f: ldarg.0
L_0160: ldarg.1
L_0161: ldc.r4 0.004
L_0166: call Boolean TryDevelopBondRelation(Verse.Pawn, Verse.Pawn, Single)
L_016b: brfalse Label #21
L_0170: ldarg.0
L_0171: callvirt RimWorld.Faction get_Faction()
L_0176: brfalse Label #22
L_017b: ldarg.0
L_017c: callvirt RimWorld.Faction get_Faction()
L_0181: ldarg.1
L_0182: callvirt RimWorld.Faction get_Faction()
L_0187: beq Label #23
L_018c: ldarg.0
L_018d: ldarg.1
L_018e: ldc.r4 1
L_0193: ldc.i4.0
L_0194: call Void DoRecruit(Verse.Pawn, Verse.Pawn, Single, Boolean)
L_0199: Label #18
L_0199: Label #19
L_0199: Label #20
L_0199: Label #21
L_0199: Label #22
L_0199: Label #23
L_0199: ldarg.1
L_019a: ldfld RimWorld.Pawn_RecordsTracker records
L_019f: ldsfld RimWorld.RecordDef TimesTendedTo
L_01a4: callvirt Void Increment(RimWorld.RecordDef)
L_01a9: ldarg.0
L_01aa: brfalse Label #24
L_01af: ldarg.0
L_01b0: ldfld RimWorld.Pawn_RecordsTracker records
L_01b5: ldsfld RimWorld.RecordDef TimesTendedOther
L_01ba: callvirt Void Increment(RimWorld.RecordDef)
L_01bf: Label #24
L_01bf: ldarg.2
L_01c0: brfalse Label #25
L_01c5: ldarg.1
L_01c6: callvirt Boolean get_Spawned()
L_01cb: brtrue Label #26
L_01d0: ldarg.0
L_01d1: brfalse Label #27
L_01d6: ldarg.0
L_01d7: callvirt Boolean get_Spawned()
L_01dc: brfalse Label #28
L_01e1: Label #26
L_01e1: ldloc.0
L_01e2: ldsfld Verse.ThingDef Medicine
L_01e7: ldsfld RimWorld.StatDef MedicalPotency
L_01ec: ldnull
L_01ed: call Single GetStatValueAbstract(Verse.BuildableDef, RimWorld.StatDef,
Verse.ThingDef)
L_01f2: ble.un Label #29
L_01f7: ldsfld Verse.SoundDef TechMedicineUsed
L_01fc: ldarg.1
L_01fd: callvirt IntVec3 get_Position()
L_0202: ldarg.1
L_0203: callvirt Verse.Map get_Map()
L_0208: ldc.i4.0
L_0209: newobj Void .ctor(IntVec3, Map, Boolean)
L_020e: call SoundInfo op_Implicit(TargetInfo)
L_0213: call Void PlayOneShot(Verse.SoundDef, SoundInfo)
L_0218: Label #27
L_0218: Label #28
L_0218: Label #29
L_0218: ldarg.2
L_0219: ldfld System.Int32 stackCount
L_021e: ldc.i4.1
L_021f: ble Label #30
L_0224: ldarg.2
L_0225: dup
L_0226: ldfld System.Int32 stackCount
L_022b: ldc.i4.1
L_022c: sub
L_022d: stfld System.Int32 stackCount
L_0232: br Label #31
L_0237: Label #30
L_0237: ldarg.2
L_0238: callvirt Boolean get_Destroyed()
L_023d: brtrue Label #32
L_0242: ldarg.2
L_0243: ldc.i4.0
L_0244: callvirt Void Destroy(DestroyMode)
L_0249: Label #25
L_0249: Label #31
L_0249: Label #32
L_0249: br Label #0
L_024e: Label #0
L_024e: ldarg 0
L_0254: ldarg 1
L_025a: call Void BleedingHeartThought(Verse.Pawn, Verse.Pawn)
L_025f: ret
DONE

PATCHING RimWorld.ThoughtUtility Void GiveThoughtsForPawnExecuted(Verse.Pawn,


PawnExecutionKind)
L_0000: Local var #0 System.Int32
L_0000: Local var #1 RimWorld.ThoughtDef
L_0000: Local var #2 Verse.Pawn
L_0000: Local var #3 System.Collections.Generic.IEnumerator`1[[Verse.Pawn,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: Local var #4 RimWorld.PawnExecutionKind
L_0000: ldarg.0
L_0001: callvirt Verse.RaceProperties get_RaceProps()
L_0006: callvirt Boolean get_Humanlike()
L_000b: brtrue Label #2
L_0010: br Label #0
L_0015: Label #2
L_0015: ldc.i4.1
L_0016: stloc.0
L_0017: ldarg.0
L_0018: ldfld RimWorld.Pawn_GuiltTracker guilt
L_001d: callvirt Boolean get_IsGuilty()
L_0022: brfalse Label #3
L_0027: ldc.i4.0
L_0028: stloc.0
L_0029: br Label #4
L_002e: Label #3
L_002e: ldarg.1
L_002f: stloc.s 4 (RimWorld.PawnExecutionKind)
L_0031: ldloc.s 4 (RimWorld.PawnExecutionKind)
L_0033: switch Labels #5 #6 #7
L_0044: br Label #8
L_0049: Label #6
L_0049: ldc.i4.1
L_004a: stloc.0
L_004b: br Label #9
L_0050: Label #5
L_0050: ldc.i4.2
L_0051: stloc.0
L_0052: br Label #10
L_0057: Label #7
L_0057: ldc.i4.3
L_0058: stloc.0
L_0059: br Label #11
L_005e: Label #4
L_005e: Label #8
L_005e: Label #9
L_005e: Label #10
L_005e: Label #11
L_005e: ldarg.0
L_005f: callvirt Boolean get_IsColonist()
L_0064: brfalse Label #12
L_0069: ldsfld RimWorld.ThoughtDef KnowColonistExecuted
L_006e: stloc.1
L_006f: br Label #13
L_0074: Label #12
L_0074: ldsfld RimWorld.ThoughtDef KnowGuestExecuted
L_0079: stloc.1
L_007a: Label #13
L_007a: call IEnumerable`1 get_AllMapsCaravansAndTravelingTransportPods()
L_007f: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache4
L_0084: brtrue Label #14
L_0089: ldnull
L_008a: ldftn Boolean <GiveThoughtsForPawnExecuted>m__75A(Verse.Pawn)
L_0090: newobj Void .ctor(Object, IntPtr)
L_0095: stsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache4
L_009a: Label #14
L_009a: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache4
L_009f: call IEnumerable`1 Where[Pawn](IEnumerable`1,
System.Func`2[Verse.Pawn,System.Boolean])
L_00a4: callvirt IEnumerator`1 GetEnumerator()
L_00a9: stloc.3
L_00aa: br Label #15
L_00af: Label #16
L_00af: ldloc.3
L_00b0: callvirt Verse.Pawn get_Current()
L_00b5: stloc.2
L_00b6: ldloc.2
L_00b7: ldfld RimWorld.Pawn_NeedsTracker needs
L_00bc: ldfld RimWorld.Need_Mood mood
L_00c1: ldfld RimWorld.ThoughtHandler thoughts
L_00c6: ldfld RimWorld.MemoryThoughtHandler memories
L_00cb: ldloc.1
L_00cc: ldloc.0
L_00cd: call RimWorld.Thought_Memory MakeThought(RimWorld.ThoughtDef, Int32)
L_00d2: ldnull
L_00d3: callvirt Void TryGainMemory(RimWorld.Thought_Memory, Verse.Pawn)
L_00d8: Label #15
L_00d8: ldloc.3
L_00d9: callvirt Boolean MoveNext()
L_00de: brtrue Label #16
L_00e3: leave Label #17
L_00e8: ldloc.3
L_00e9: brtrue Label #18
L_00ee: endfinally
L_00ef: Label #18
L_00ef: ldloc.3
L_00f0: callvirt Void Dispose()
L_00f5: endfinally
L_00f6: Label #17
L_00f6: br Label #0
L_00fb: Label #0
L_00fb: ldarg 0
L_0101: ldarg 1
L_0107: call Void BleedingHeartThoughts(Verse.Pawn, PawnExecutionKind)
L_010c: ret
DONE

PATCHING RimWorld.ThoughtUtility Void GiveThoughtsForPawnOrganHarvested(Verse.Pawn)


L_0000: Local var #0 RimWorld.ThoughtDef
L_0000: Local var #1 Verse.Pawn
L_0000: Local var #2 System.Collections.Generic.IEnumerator`1[[Verse.Pawn,
Assembly-CSharp, Version=0.17.6362.34649, Culture=neutral, PublicKeyToken=null]]
L_0000: ldarg.0
L_0001: callvirt Verse.RaceProperties get_RaceProps()
L_0006: callvirt Boolean get_Humanlike()
L_000b: brtrue Label #2
L_0010: br Label #0
L_0015: Label #2
L_0015: ldnull
L_0016: stloc.0
L_0017: ldarg.0
L_0018: callvirt Boolean get_IsColonist()
L_001d: brfalse Label #3
L_0022: ldsfld RimWorld.ThoughtDef KnowColonistOrganHarvested
L_0027: stloc.0
L_0028: br Label #4
L_002d: Label #3
L_002d: ldarg.0
L_002e: callvirt RimWorld.Faction get_HostFaction()
L_0033: call RimWorld.Faction get_OfPlayer()
L_0038: bne.un Label #5
L_003d: ldsfld RimWorld.ThoughtDef KnowGuestOrganHarvested
L_0042: stloc.0
L_0043: Label #4
L_0043: Label #5
L_0043: call IEnumerable`1 get_AllMapsCaravansAndTravelingTransportPods()
L_0048: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache5
L_004d: brtrue Label #6
L_0052: ldnull
L_0053: ldftn Boolean <GiveThoughtsForPawnOrganHarvested>m__75B(Verse.Pawn)
L_0059: newobj Void .ctor(Object, IntPtr)
L_005e: stsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache5
L_0063: Label #6
L_0063: ldsfld System.Func`2[Verse.Pawn,System.Boolean] <>f__am$cache5
L_0068: call IEnumerable`1 Where[Pawn](IEnumerable`1,
System.Func`2[Verse.Pawn,System.Boolean])
L_006d: callvirt IEnumerator`1 GetEnumerator()
L_0072: stloc.2
L_0073: br Label #7
L_0078: Label #11
L_0078: ldloc.2
L_0079: callvirt Verse.Pawn get_Current()
L_007e: stloc.1
L_007f: ldloc.1
L_0080: ldarg.0
L_0081: bne.un Label #8
L_0086: ldloc.1
L_0087: ldfld RimWorld.Pawn_NeedsTracker needs
L_008c: ldfld RimWorld.Need_Mood mood
L_0091: ldfld RimWorld.ThoughtHandler thoughts
L_0096: ldfld RimWorld.MemoryThoughtHandler memories
L_009b: ldsfld RimWorld.ThoughtDef MyOrganHarvested
L_00a0: ldnull
L_00a1: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_00a6: br Label #9
L_00ab: Label #8
L_00ab: ldloc.0
L_00ac: brfalse Label #10
L_00b1: ldloc.1
L_00b2: ldfld RimWorld.Pawn_NeedsTracker needs
L_00b7: ldfld RimWorld.Need_Mood mood
L_00bc: ldfld RimWorld.ThoughtHandler thoughts
L_00c1: ldfld RimWorld.MemoryThoughtHandler memories
L_00c6: ldloc.0
L_00c7: ldnull
L_00c8: callvirt Void TryGainMemory(RimWorld.ThoughtDef, Verse.Pawn)
L_00cd: Label #7
L_00cd: Label #9
L_00cd: Label #10
L_00cd: ldloc.2
L_00ce: callvirt Boolean MoveNext()
L_00d3: brtrue Label #11
L_00d8: leave Label #12
L_00dd: ldloc.2
L_00de: brtrue Label #13
L_00e3: endfinally
L_00e4: Label #13
L_00e4: ldloc.2
L_00e5: callvirt Void Dispose()
L_00ea: endfinally
L_00eb: Label #12
L_00eb: br Label #0
L_00f0: Label #0
L_00f0: ldarg 0
L_00f6: call Void BleedingHeartThoughts(Verse.Pawn)
L_00fb: ret
DONE

You might also like