mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
New:
Aliens now bleed green when you hit them. The green blood can be mopped and cleaned. Hurt people and bodies leave behind blood when you drag them. Monkeys now also bleed when struck with items. Added variable "update_icon" for mobs. Basically you can now change the icon on aliens and monkeys as an admin and it will not change back when you move around. You can spawn monkey and alien "RolePlay" bodies which have update_icon = 0 at start. Fixed: Monkeys not slipping on wet floor and causing runtime errors. Monkeys and Aliens not being able to speak on station bounced radios or intercoms and causing runtime errors. Anything else than humans not being able to attack humans with items (did no damage). Food sometimes dealing damage when you eat it (such as chips). Changed: Alien weeds and the blob now spread at a reasonable pace. Removed some redundant code, such as what was left of poo and urine. Removed nutrient.dm again, someone brought it back at some point, it's redundant. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@118 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -452,14 +452,16 @@ to clean it up, or just beat the shit out of it (which takes ages).
|
||||
src.zone_sel.overlays += image("icon" = 'zone_sel.dmi', "icon_state" = text("[]", src.zone_sel.selecting))
|
||||
|
||||
if (src.lying)
|
||||
src.icon = src.lying_icon
|
||||
if(src.update_icon)
|
||||
src.icon = src.lying_icon
|
||||
|
||||
src.overlays += src.body_lying
|
||||
|
||||
if (src.face_lying)
|
||||
src.overlays += src.face_lying
|
||||
else
|
||||
src.icon = src.stand_icon
|
||||
if(src.update_icon)
|
||||
src.icon = src.stand_icon
|
||||
|
||||
src.overlays += src.body_standing
|
||||
|
||||
|
||||
@@ -297,6 +297,12 @@
|
||||
if(B.virus.type in src.resistances)
|
||||
continue
|
||||
src.contract_disease(new B.virus.type)
|
||||
for(var/obj/decal/cleanable/xenoblood/X in range(4, src))
|
||||
if(X.virus && X.virus.spread == "Airborne")
|
||||
if(X.virus.affected_species.Find("Alien"))
|
||||
if(X.virus.type in src.resistances)
|
||||
continue
|
||||
src.contract_disease(new X.virus.type)
|
||||
else
|
||||
src.virus.stage_act()
|
||||
/*
|
||||
|
||||
@@ -547,6 +547,7 @@
|
||||
var/datum/disease/D = new M.virus.type //Making sure strain_data is preserved
|
||||
D.strain_data = M.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/blood/B in view(4, src))
|
||||
if(B.virus && B.virus.spread == "Airborne")
|
||||
if(B.virus.affected_species.Find("Alien"))
|
||||
@@ -555,6 +556,15 @@
|
||||
var/datum/disease/D = new B.virus.type
|
||||
D.strain_data = B.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/xenoblood/X in view(4, src))
|
||||
if(X.virus && X.virus.spread == "Airborne")
|
||||
if(X.virus.affected_species.Find("Alien"))
|
||||
if(src.resistances.Find(X.virus.type))
|
||||
continue
|
||||
var/datum/disease/D = new X.virus.type
|
||||
D.strain_data = X.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
else
|
||||
src.virus.stage_act()
|
||||
|
||||
|
||||
@@ -24,8 +24,9 @@
|
||||
if(src.client && src.stat == 2)
|
||||
src.verbs += /mob/proc/ghostize
|
||||
|
||||
var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch
|
||||
mind.store_memory("Time of death: [tod]", 0)
|
||||
if(mind) // Skie - Added check that there's someone controlling the alien
|
||||
var/tod = time2text(world.realtime,"hh:mm:ss") //weasellos time of death patch
|
||||
mind.store_memory("Time of death: [tod]", 0)
|
||||
|
||||
var/cancel
|
||||
for (var/mob/M in world)
|
||||
|
||||
@@ -475,6 +475,14 @@
|
||||
var/datum/disease/D = new B.virus.type
|
||||
D.strain_data = B.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
for(var/obj/decal/cleanable/xenoblood/X in view(4, src))
|
||||
if(X.virus && X.virus.spread == "Airborne")
|
||||
if(X.virus.affected_species.Find("Alien"))
|
||||
if(src.resistances.Find(X.virus.type))
|
||||
continue
|
||||
var/datum/disease/D = new X.virus.type
|
||||
D.strain_data = X.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
else
|
||||
src.virus.stage_act()
|
||||
|
||||
|
||||
@@ -792,11 +792,11 @@
|
||||
var/t = M.pulling
|
||||
M.pulling = null
|
||||
|
||||
//this is the gay blood on floor shit
|
||||
// if (M.lying && (prob(M.bruteloss / 6)))
|
||||
// var/turf/location = M.loc
|
||||
// if (istype(location, /turf/simulated))
|
||||
// location.add_blood(M)
|
||||
//this is the gay blood on floor shit -- Added back -- Skie
|
||||
if (M.lying && (prob(M.bruteloss / 6)))
|
||||
var/turf/location = M.loc
|
||||
if (istype(location, /turf/simulated))
|
||||
location.add_blood(M)
|
||||
|
||||
|
||||
step(src.pulling, get_dir(src.pulling.loc, T))
|
||||
@@ -2316,11 +2316,6 @@
|
||||
onclose(user, "mob[src.name]")
|
||||
return
|
||||
|
||||
/mob/living/carbon/human/verb/fuck()
|
||||
set hidden = 1
|
||||
alert("Go play HellMOO if you wanna do that.")
|
||||
|
||||
|
||||
// called when something steps onto a human
|
||||
// this could be made more general, but for now just handle mulebot
|
||||
/mob/living/carbon/human/HasEntered(var/atom/movable/AM)
|
||||
|
||||
@@ -809,6 +809,7 @@
|
||||
var/datum/disease/D = new M.virus.type //Making sure strain_data is preserved
|
||||
D.strain_data = M.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/blood/B in view(4, src))
|
||||
if(B.virus && B.virus.spread == "Airborne")
|
||||
if(B.virus.affected_species.Find("Human"))
|
||||
@@ -817,6 +818,15 @@
|
||||
var/datum/disease/D = new B.virus.type
|
||||
D.strain_data = B.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/xenoblood/X in view(4, src))
|
||||
if(X.virus && X.virus.spread == "Airborne")
|
||||
if(X.virus.affected_species.Find("Human"))
|
||||
if(src.resistances.Find(X.virus.type))
|
||||
continue
|
||||
var/datum/disease/D = new X.virus.type
|
||||
D.strain_data = X.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
else
|
||||
src.virus.stage_act()
|
||||
|
||||
|
||||
@@ -564,6 +564,7 @@
|
||||
var/datum/disease/D = new M.virus.type //Making sure strain_data is preserved
|
||||
D.strain_data = M.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/blood/B in view(4, src))
|
||||
if(B.virus && B.virus.spread == "Airborne")
|
||||
if(B.virus.affected_species.Find("Monkey"))
|
||||
@@ -572,6 +573,15 @@
|
||||
var/datum/disease/D = new B.virus.type
|
||||
D.strain_data = B.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
|
||||
for(var/obj/decal/cleanable/xenoblood/X in view(4, src))
|
||||
if(X.virus && X.virus.spread == "Airborne")
|
||||
if(X.virus.affected_species.Find("Monkey"))
|
||||
if(src.resistances.Find(X.virus.type))
|
||||
continue
|
||||
var/datum/disease/D = new X.virus.type
|
||||
D.strain_data = X.virus.strain_data
|
||||
src.contract_disease(D)
|
||||
else
|
||||
src.virus.stage_act()
|
||||
|
||||
|
||||
@@ -251,47 +251,55 @@
|
||||
return
|
||||
|
||||
/mob/living/carbon/monkey/update_clothing()
|
||||
..()
|
||||
for(var/i in src.overlays)
|
||||
src.overlays -= i
|
||||
|
||||
if(src.buckled)
|
||||
if(istype(src.buckled, /obj/stool/bed))
|
||||
src.lying = 1
|
||||
else
|
||||
src.lying = 0
|
||||
|
||||
if (!( src.lying ))
|
||||
src.icon_state = "monkey1"
|
||||
else
|
||||
src.icon_state = "monkey0"
|
||||
if(src.update_icon) // Skie
|
||||
..()
|
||||
for(var/i in src.overlays)
|
||||
src.overlays -= i
|
||||
|
||||
if (!( src.lying ))
|
||||
src.icon_state = "monkey1"
|
||||
else
|
||||
src.icon_state = "monkey0"
|
||||
|
||||
if (src.wear_mask)
|
||||
if (istype(src.wear_mask, /obj/item/clothing/mask))
|
||||
if (istype(src.wear_mask, /obj/item/clothing/mask) && src.update_icon)
|
||||
var/t1 = src.wear_mask.item_state
|
||||
if (!( t1 ))
|
||||
t1 = src.wear_mask.icon_state
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = text("[][]", t1, (!( src.lying ) ? null : "2")), "layer" = src.layer)
|
||||
src.wear_mask.screen_loc = ui_mask
|
||||
|
||||
if (src.r_hand)
|
||||
src.overlays += image("icon" = 'items_righthand.dmi', "icon_state" = src.r_hand.item_state ? src.r_hand.item_state : src.r_hand.icon_state, "layer" = src.layer)
|
||||
if(src.update_icon)
|
||||
src.overlays += image("icon" = 'items_righthand.dmi', "icon_state" = src.r_hand.item_state ? src.r_hand.item_state : src.r_hand.icon_state, "layer" = src.layer)
|
||||
src.r_hand.screen_loc = ui_rhand
|
||||
|
||||
if (src.l_hand)
|
||||
src.overlays += image("icon" = 'items_lefthand.dmi', "icon_state" = src.l_hand.item_state ? src.l_hand.item_state : src.l_hand.icon_state, "layer" = src.layer)
|
||||
if(src.update_icon)
|
||||
src.overlays += image("icon" = 'items_lefthand.dmi', "icon_state" = src.l_hand.item_state ? src.l_hand.item_state : src.l_hand.icon_state, "layer" = src.layer)
|
||||
src.l_hand.screen_loc = ui_lhand
|
||||
|
||||
if (src.back)
|
||||
if (!( src.lying ))
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "back", "layer" = src.layer)
|
||||
else
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "back2", "layer" = src.layer)
|
||||
if(src.update_icon)
|
||||
if (!( src.lying ))
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "back", "layer" = src.layer)
|
||||
else
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "back2", "layer" = src.layer)
|
||||
src.back.screen_loc = ui_back
|
||||
if (src.handcuffed)
|
||||
|
||||
if (src.handcuffed && src.update_icon)
|
||||
src.pulling = null
|
||||
if (!( src.lying ))
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "handcuff1", "layer" = src.layer)
|
||||
else
|
||||
src.overlays += image("icon" = 'monkey.dmi', "icon_state" = "handcuff2", "layer" = src.layer)
|
||||
|
||||
if (src.client)
|
||||
src.client.screen -= src.contents
|
||||
src.client.screen += src.contents
|
||||
|
||||
Reference in New Issue
Block a user