Example #1
0
 public FaceMaterial([NotNull] CompFace compFace, [NotNull] PawnFaceGraphic pawnFaceGraphic)
 {
     this._compFace        = compFace;
     this._pawnFaceGraphic = pawnFaceGraphic;
     this._pawn            = this._compFace.Pawn;
     this.Flasher          = this._pawn.Drawer.renderer.graphics.flasher;
 }
Example #2
0
 static void Prefix(DamageFlasher __instance, DamageInfo dinfo)
 {
     if (__instance is ZombieDamageFlasher zombieDamageFlasher)
     {
         zombieDamageFlasher.dinfoDef = dinfo.Def;
     }
 }
Example #3
0
        public override void Initialize()
        {
            this.Flasher = this.Pawn.Drawer.renderer.graphics.flasher;

            // this.feetTweener = new PawnFeetTweener();
            base.Initialize();
        }
        static void Prefix(DamageFlasher __instance, DamageInfo dinfo)
        {
            var zombieDamageFlasher = __instance as ZombieDamageFlasher;

            if (zombieDamageFlasher != null)
            {
                zombieDamageFlasher.dinfoDef = dinfo.Def;
            }
        }
Example #5
0
 static void Postfix(DamageFlasher __instance, Material baseMat, Material __result)
 {
     if (__instance is ZombieDamageFlasher zombieDamageFlasher &&
         zombieDamageFlasher.dinfoDef == Tools.ZombieBiteDamageDef &&
         __result != null)
     {
         var damPct = DamageFlashTicksLeft(__instance) / 16f;
         __result.color = Color.Lerp(baseMat.color, greenDamagedMatStartingColor, damPct);
     }
 }
 void Start()
 {
     playerController = FindObjectOfType <PlayerController>();
     currentHealth    = startingHealth;
     rend             = GetComponent <Renderer>();
     storedColor      = rend.material.GetColor("_Color");
     flasher          = GetComponentInChildren <DamageFlasher>();
     pointScript      = FindObjectOfType <PointScript>();
     soundManager     = FindObjectOfType <SoundManagerScript>();
 }
        static void Postfix(DamageFlasher __instance, Material baseMat, Material __result)
        {
            var zombieDamageFlasher = __instance as ZombieDamageFlasher;

            if (zombieDamageFlasher != null && zombieDamageFlasher.isColonist &&
                zombieDamageFlasher.dinfoDef == ZombieDamageFlasher.zombieBiteDamageDef &&
                __result != null)
            {
                var damPct = zombieDamageFlasher.damageFlashTicksLeft.GetValue <int>() / 16f;
                __result.color = Color.Lerp(baseMat.color, greenDamagedMatStartingColor, damPct);
            }
        }
Example #8
0
 private static int DamageFlashTicksLeft(DamageFlasher damageFlasher)
 {
     // copied from DamageFlasher.DamageFlashTicksLeft
     return(GetterSetters.lastDamageTickByRef(damageFlasher) + 16 - Find.TickManager.TicksGame);
 }