public override void PostDestroy(DestroyMode mode, Map previousMap)
        {
            Pawn   pawn        = this.parent as Pawn;
            string graphicPath = pawn.Drawer.renderer.graphics.nakedGraphic.path;

            AnimalCollectionClass.RemoveGraphicPathFromList(pawn, graphicPath);
        }
コード例 #2
0
 public override void PostDestroy(DestroyMode mode, Map previousMap)
 {
     AnimalCollectionClass.RemoveDraftableAnimalFromList(this.parent);
     if (Props.makeNonFleeingToo)
     {
         AnimalCollectionClass.RemoveNotFleeingAnimalFromList(this.parent);
     }
 }
コード例 #3
0
 public override void PostDeSpawn(Map map)
 {
     AnimalCollectionClass.RemoveDraftableAnimalFromList(this.parent);
     if (Props.makeNonFleeingToo)
     {
         AnimalCollectionClass.RemoveNotFleeingAnimalFromList(this.parent);
     }
 }
コード例 #4
0
 public override void PostSpawnSetup(bool respawningAfterLoad)
 {
     AnimalCollectionClass.AddDraftableAnimalToList(this.parent);
     if (Props.makeNonFleeingToo)
     {
         AnimalCollectionClass.AddNotFleeingAnimalToList(this.parent);
     }
 }
コード例 #5
0
 public override void Notify_PawnKilled()
 {
     AnimalCollectionClass.RemoveDraftableAnimalFromList(this.parent.pawn);
     if (Props.makeNonFleeingToo)
     {
         AnimalCollectionClass.RemoveNotFleeingAnimalFromList(this.parent.pawn);
     }
 }
        public static bool RemoveTamenessDecayCheck(ThingDef def)

        {
            if (AnimalCollectionClass.IsNoTamingDecayAnimal(def))
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
コード例 #7
0
        public static void LastStand(Tool tool, Pawn attacker, Thing equipment, ref float __result)

        {
            if (attacker != null)
            {
                if (AnimalCollectionClass.IsLastStandAnimal(attacker))
                {
                    float health = attacker.health.summaryHealth.SummaryHealthPercent;
                    float factor = ((AnimalCollectionClass.LastStandAnimalRate(attacker) - 1) * (1 - health)) + 1;

                    __result = __result / factor;
                }
            }
        }
コード例 #8
0
 public override void CompPostPostAdd(DamageInfo?dinfo)
 {
     if (this.parent.pawn.drafter == null)
     {
         this.parent.pawn.drafter = new Pawn_DraftController(this.parent.pawn);
     }
     if (this.parent.pawn.equipment == null)
     {
         this.parent.pawn.equipment = new Pawn_EquipmentTracker(this.parent.pawn);
     }
     AnimalCollectionClass.AddDraftableAnimalToList(this.parent.pawn);
     if (Props.makeNonFleeingToo)
     {
         AnimalCollectionClass.AddNotFleeingAnimalToList(this.parent.pawn);
     }
 }
コード例 #9
0
 public override void CompPostTick(ref float severityAdjustment)
 {
     tickCounter++;
     if (tickCounter > Props.checkingInterval)
     {
         if (this.parent.pawn.drafter == null)
         {
             this.parent.pawn.drafter = new Pawn_DraftController(this.parent.pawn);
         }
         if (this.parent.pawn.equipment == null)
         {
             this.parent.pawn.equipment = new Pawn_EquipmentTracker(this.parent.pawn);
         }
         AnimalCollectionClass.AddDraftableAnimalToList(this.parent.pawn);
         tickCounter = 0;
     }
 }
 public override void CompTick()
 {
     base.CompTick();
     if (this.parent.IsHashIntervalTick(1000))
     {
         Faction faction = this.parent.Faction;
         if (faction != oldFaction)
         {
             Pawn   pawn        = this.parent as Pawn;
             string graphicPath = pawn.Drawer.renderer.graphics.nakedGraphic.path;
             if (faction == Faction.OfPlayer)
             {
                 AnimalCollectionClass.AddGraphicPathToList(pawn, graphicPath);
             }
             else
             {
                 AnimalCollectionClass.RemoveGraphicPathFromList(pawn, graphicPath);
             }
             oldFaction = faction;
         }
     }
 }
コード例 #11
0
 public override void PostSpawnSetup(bool respawningAfterLoad)
 {
     AnimalCollectionClass.AddAbilityUsingAnimalToList(this.parent);
 }
コード例 #12
0
 public override void PostDeSpawn(Map map)
 {
     AnimalCollectionClass.RemoveNoFilthAnimalFromList(this.parent);
 }
コード例 #13
0
 public override void PostSpawnSetup(bool respawningAfterLoad)
 {
     AnimalCollectionClass.AddLastStandAnimalToList(this.parent, Props.finalCoolDownMultiplier);
 }
コード例 #14
0
 public override void PostDestroy(DestroyMode mode, Map previousMap)
 {
     AnimalCollectionClass.RemoveLastStandAnimalFromList(this.parent);
 }
コード例 #15
0
 public override void PostDeSpawn(Map map)
 {
     AnimalCollectionClass.RemoveAbilityUsingFromList(this.parent);
 }
コード例 #16
0
 public override void PostDestroy(DestroyMode mode, Map previousMap)
 {
     AnimalCollectionClass.RemoveAbilityUsingFromList(this.parent);
 }
コード例 #17
0
 public override void PostSpawnSetup(bool respawningAfterLoad)
 {
     AnimalCollectionClass.AddNoTamingDecayAnimalToList(this.parent.def);
 }