// Function from file: blob_reagents.dm
 public override dynamic damage_reaction(Obj_Effect_Blob B = null, double original_health = 0, dynamic damage = null, dynamic damage_type = null, dynamic cause = null)
 {
     if (damage_type == "stamina")
     {
         B.visible_message("<span class='warning'><b>The blob abruptly regenerates!</b></span>");
         B.health = B.maxhealth;
     }
     return(base.damage_reaction(B, original_health, (object)(damage), (object)(damage_type), (object)(cause)));
 }
        // Function from file: blob_reagents.dm
        public override dynamic damage_reaction(Obj_Effect_Blob B = null, double original_health = 0, dynamic damage = null, dynamic damage_type = null, dynamic cause = null)
        {
            Mob_Living_SimpleAnimal_Hostile_Blob_Blobspore_Weak BS = null;


            if (!(cause == null) && Convert.ToDouble(damage) <= 20 && original_health - Convert.ToDouble(damage) <= 0 && Rand13.PercentChance(50))
            {
                B.visible_message("<span class='warning'><b>A spore floats free of the blob!</b></span>");
                BS          = new Mob_Living_SimpleAnimal_Hostile_Blob_Blobspore_Weak(B.loc);
                BS.overmind = B.overmind;
                BS.update_icons();
                B.overmind.blob_mobs.Add(BS);
            }
            return(base.damage_reaction(B, original_health, (object)(damage), (object)(damage_type), (object)(cause)));
        }
Exemple #3
0
        // Function from file: blob_reagents.dm
        public override dynamic damage_reaction(Obj_Effect_Blob B = null, double original_health = 0, dynamic damage = null, dynamic damage_type = null, dynamic cause = null)
        {
            Ent_Static A = null;


            if (Lang13.Bool(damage) && damage_type == "brute" && original_health - Convert.ToDouble(damage) > 0)
            {
                if (cause is Mob_Living)
                {
                    B.visible_message("<span class='warning'><b>The blob retaliates, lashing out!</b></span>");
                }

                foreach (dynamic _a in Lang13.Enumerate(Map13.FetchInRange(B, 1), typeof(Ent_Static)))
                {
                    A = _a;

                    A.blob_act();
                }
            }
            return(base.damage_reaction(B, original_health, (object)(damage), (object)(damage_type), (object)(cause)));
        }
Exemple #4
0
        // Function from file: blob_reagents.dm
        public override void death_reaction(Obj_Effect_Blob B = null, dynamic cause = null)
        {
            Tile_Simulated T = null;


            if (!(cause == null))
            {
                B.visible_message("<span class='warning'><b>The blob ruptures, spraying the area with liquid!</b></span>");
            }

            foreach (dynamic _a in Lang13.Enumerate(Map13.FetchInRange(B, 1), typeof(Tile_Simulated)))
            {
                T = _a;


                if (Rand13.PercentChance(50))
                {
                    T.MakeSlippery(1);
                }
            }
            return;
        }