mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
@@ -1264,7 +1264,6 @@
|
||||
#include "code\modules\mob\living\simple_animal\bees.dm"
|
||||
#include "code\modules\mob\living\simple_animal\borer.dm"
|
||||
#include "code\modules\mob\living\simple_animal\constructs.dm"
|
||||
#include "code\modules\mob\living\simple_animal\corpse.dm"
|
||||
#include "code\modules\mob\living\simple_animal\parrot.dm"
|
||||
#include "code\modules\mob\living\simple_animal\shade.dm"
|
||||
#include "code\modules\mob\living\simple_animal\simple_animal.dm"
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
//These are meant for spawning on maps, namely Away Missions.
|
||||
|
||||
//If someone can do this in a neater way, be my guest-Kor
|
||||
|
||||
//To do: Allow corpses to appear mangled, bloody, etc. Allow customizing the bodies appearance (they're all bald and white right now).
|
||||
|
||||
/obj/effect/landmark/corpse
|
||||
name = "Unknown"
|
||||
@@ -29,10 +24,10 @@
|
||||
createCorpse()
|
||||
|
||||
/obj/effect/landmark/corpse/proc/createCorpse() //Creates a mob and checks for gear in each slot before attempting to equip it.
|
||||
var/mob/living/carbon/human/M = new /mob/living/carbon/human (src.loc)
|
||||
var/mob/living/carbon/human/M = new /mob/living/carbon/human (loc)
|
||||
M.dna.mutantrace = mutantrace
|
||||
M.real_name = src.name
|
||||
M.death(1) //Kills the new mob
|
||||
M.adjustOxyLoss(200) //Kills the new mob
|
||||
if(src.corpseuniform)
|
||||
M.equip_to_slot_or_del(new src.corpseuniform(M), slot_w_uniform)
|
||||
if(src.corpsesuit)
|
||||
@@ -77,7 +72,7 @@
|
||||
W.assignment = corpseidjob
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
del(src)
|
||||
qdel(src)
|
||||
|
||||
|
||||
|
||||
@@ -243,3 +238,33 @@
|
||||
corpseid = 1
|
||||
corpseidjob = "Commander"
|
||||
corpseidaccess = "Captain"
|
||||
|
||||
/////////////////Simple-Mob Corpses/////////////////////
|
||||
|
||||
/obj/effect/landmark/corpse/pirate
|
||||
name = "Pirate"
|
||||
corpseuniform = /obj/item/clothing/under/pirate
|
||||
corpseshoes = /obj/item/clothing/shoes/jackboots
|
||||
corpseglasses = /obj/item/clothing/glasses/eyepatch
|
||||
corpsehelmet = /obj/item/clothing/head/bandana
|
||||
|
||||
/obj/effect/landmark/corpse/pirate
|
||||
name = "Pirate"
|
||||
corpseuniform = /obj/item/clothing/under/pirate
|
||||
corpseshoes = /obj/item/clothing/shoes/jackboots
|
||||
corpseglasses = /obj/item/clothing/glasses/eyepatch
|
||||
corpsehelmet = /obj/item/clothing/head/bandana
|
||||
|
||||
/obj/effect/landmark/corpse/pirate/ranged
|
||||
name = "Pirate Gunner"
|
||||
corpsesuit = /obj/item/clothing/suit/pirate
|
||||
corpsehelmet = /obj/item/clothing/head/pirate
|
||||
|
||||
/obj/effect/landmark/corpse/russian
|
||||
name = "Russian"
|
||||
corpseuniform = /obj/item/clothing/under/soviet
|
||||
corpseshoes = /obj/item/clothing/shoes/jackboots
|
||||
corpsehelmet = /obj/item/clothing/head/bearpelt
|
||||
|
||||
/obj/effect/landmark/corpse/russian/ranged
|
||||
corpsehelmet = /obj/item/clothing/head/ushanka
|
||||
@@ -1,157 +0,0 @@
|
||||
//Meant for simple animals to drop lootable human bodies.
|
||||
|
||||
//If someone can do this in a neater way, be my guest-Kor
|
||||
|
||||
//This has to be seperate from the Away Mission corpses, because New() doesn't work for those, and initialize() doesn't work for these.
|
||||
|
||||
//To do: Allow corpses to appear mangled, bloody, etc. Allow customizing the bodies appearance (they're all bald and white right now).
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse
|
||||
name = "Unknown"
|
||||
var/mobname = "Unknown" //Unused now but it'd fuck up maps to remove it now
|
||||
var/corpseuniform = null //Set this to an object path to have the slot filled with said object on the corpse.
|
||||
var/corpsesuit = null
|
||||
var/corpseshoes = null
|
||||
var/corpsegloves = null
|
||||
var/corpseradio = null
|
||||
var/corpseglasses = null
|
||||
var/corpsemask = null
|
||||
var/corpsehelmet = null
|
||||
var/corpsebelt = null
|
||||
var/corpsepocket1 = null
|
||||
var/corpsepocket2 = null
|
||||
var/corpseback = null
|
||||
var/corpseid = 0 //Just set to 1 if you want them to have an ID
|
||||
var/corpseidjob = null // Needs to be in quotes, such as "Clown" or "Chef." This just determines what the ID reads as, not their access
|
||||
var/corpseidaccess = null //This is for access. See access.dm for which jobs give what access. Again, put in quotes. Use "Captain" if you want it to be all access.
|
||||
var/corpseidicon = null //For setting it to be a gold, silver, centcomm etc ID
|
||||
|
||||
/obj/effect/landmark/mobcorpse/New()
|
||||
createCorpse()
|
||||
|
||||
/obj/effect/landmark/mobcorpse/proc/createCorpse() //Creates a mob and checks for gear in each slot before attempting to equip it.
|
||||
var/mob/living/carbon/human/M = new /mob/living/carbon/human (src.loc)
|
||||
M.real_name = src.name
|
||||
M.stat = 2 //Kills the new mob
|
||||
if(src.corpseuniform)
|
||||
M.equip_to_slot_or_del(new src.corpseuniform(M), slot_w_uniform)
|
||||
if(src.corpsesuit)
|
||||
M.equip_to_slot_or_del(new src.corpsesuit(M), slot_wear_suit)
|
||||
if(src.corpseshoes)
|
||||
M.equip_to_slot_or_del(new src.corpseshoes(M), slot_shoes)
|
||||
if(src.corpsegloves)
|
||||
M.equip_to_slot_or_del(new src.corpsegloves(M), slot_gloves)
|
||||
if(src.corpseradio)
|
||||
M.equip_to_slot_or_del(new src.corpseradio(M), slot_ears)
|
||||
if(src.corpseglasses)
|
||||
M.equip_to_slot_or_del(new src.corpseglasses(M), slot_glasses)
|
||||
if(src.corpsemask)
|
||||
M.equip_to_slot_or_del(new src.corpsemask(M), slot_wear_mask)
|
||||
if(src.corpsehelmet)
|
||||
M.equip_to_slot_or_del(new src.corpsehelmet(M), slot_head)
|
||||
if(src.corpsebelt)
|
||||
M.equip_to_slot_or_del(new src.corpsebelt(M), slot_belt)
|
||||
if(src.corpsepocket1)
|
||||
M.equip_to_slot_or_del(new src.corpsepocket1(M), slot_r_store)
|
||||
if(src.corpsepocket2)
|
||||
M.equip_to_slot_or_del(new src.corpsepocket2(M), slot_l_store)
|
||||
if(src.corpseback)
|
||||
M.equip_to_slot_or_del(new src.corpseback(M), slot_back)
|
||||
if(src.corpseid == 1)
|
||||
var/obj/item/weapon/card/id/W = new(M)
|
||||
W.name = "[M.real_name]'s ID Card"
|
||||
var/datum/job/jobdatum
|
||||
for(var/jobtype in typesof(/datum/job))
|
||||
var/datum/job/J = new jobtype
|
||||
if(J.title == corpseidaccess)
|
||||
jobdatum = J
|
||||
break
|
||||
if(src.corpseidicon)
|
||||
W.icon_state = corpseidicon
|
||||
if(src.corpseidaccess)
|
||||
if(jobdatum)
|
||||
W.access = jobdatum.get_access()
|
||||
else
|
||||
W.access = list()
|
||||
if(corpseidjob)
|
||||
W.assignment = corpseidjob
|
||||
W.registered_name = M.real_name
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
del(src)
|
||||
|
||||
|
||||
|
||||
//List of different corpse types
|
||||
|
||||
/obj/effect/landmark/mobcorpse/syndicatesoldier
|
||||
name = "Syndicate Operative"
|
||||
corpseuniform = /obj/item/clothing/under/syndicate
|
||||
corpsesuit = /obj/item/clothing/suit/armor/vest
|
||||
corpseshoes = /obj/item/clothing/shoes/swat
|
||||
corpsegloves = /obj/item/clothing/gloves/swat
|
||||
corpseradio = /obj/item/device/radio/headset
|
||||
corpsemask = /obj/item/clothing/mask/gas
|
||||
corpsehelmet = /obj/item/clothing/head/helmet/swat
|
||||
corpseback = /obj/item/weapon/storage/backpack
|
||||
corpseid = 1
|
||||
corpseidjob = "Operative"
|
||||
corpseidaccess = "Syndicate"
|
||||
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse/syndicatecommando
|
||||
name = "Syndicate Commando"
|
||||
corpseuniform = /obj/item/clothing/under/syndicate
|
||||
corpsesuit = /obj/item/clothing/suit/space/rig/syndi
|
||||
corpseshoes = /obj/item/clothing/shoes/swat
|
||||
corpsegloves = /obj/item/clothing/gloves/swat
|
||||
corpseradio = /obj/item/device/radio/headset
|
||||
corpsemask = /obj/item/clothing/mask/gas/syndicate
|
||||
corpsehelmet = /obj/item/clothing/head/helmet/space/rig/syndi
|
||||
corpseback = /obj/item/weapon/tank/jetpack/oxygen
|
||||
corpsepocket1 = /obj/item/weapon/tank/emergency_oxygen
|
||||
corpseid = 1
|
||||
corpseidjob = "Operative"
|
||||
corpseidaccess = "Syndicate"
|
||||
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse/clown
|
||||
name = "Clown"
|
||||
corpseuniform = /obj/item/clothing/under/rank/clown
|
||||
corpseshoes = /obj/item/clothing/shoes/clown_shoes
|
||||
corpseradio = /obj/item/device/radio/headset
|
||||
corpsemask = /obj/item/clothing/mask/gas/clown_hat
|
||||
corpsepocket1 = /obj/item/weapon/bikehorn
|
||||
corpseback = /obj/item/weapon/storage/backpack/clown
|
||||
corpseid = 1
|
||||
corpseidjob = "Clown"
|
||||
corpseidaccess = "Clown"
|
||||
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse/pirate
|
||||
name = "Pirate"
|
||||
corpseuniform = /obj/item/clothing/under/pirate
|
||||
corpseshoes = /obj/item/clothing/shoes/jackboots
|
||||
corpseglasses = /obj/item/clothing/glasses/eyepatch
|
||||
corpsehelmet = /obj/item/clothing/head/bandana
|
||||
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse/pirate/ranged
|
||||
name = "Pirate Gunner"
|
||||
corpsesuit = /obj/item/clothing/suit/pirate
|
||||
corpsehelmet = /obj/item/clothing/head/pirate
|
||||
|
||||
|
||||
|
||||
/obj/effect/landmark/mobcorpse/russian
|
||||
name = "Russian"
|
||||
corpseuniform = /obj/item/clothing/under/soviet
|
||||
corpseshoes = /obj/item/clothing/shoes/jackboots
|
||||
corpsehelmet = /obj/item/clothing/head/bearpelt
|
||||
|
||||
/obj/effect/landmark/mobcorpse/russian/ranged
|
||||
corpsehelmet = /obj/item/clothing/head/ushanka
|
||||
@@ -29,7 +29,7 @@
|
||||
min_n2 = 0
|
||||
max_n2 = 0
|
||||
unsuitable_atoms_damage = 15
|
||||
var/corpse = /obj/effect/landmark/mobcorpse/pirate
|
||||
var/obj/effect/landmark/corpse/corpse = /obj/effect/landmark/corpse/pirate
|
||||
var/weapon1 = /obj/item/weapon/melee/energy/sword/pirate
|
||||
|
||||
faction = "pirate"
|
||||
@@ -45,15 +45,16 @@
|
||||
retreat_distance = 5
|
||||
minimum_distance = 5
|
||||
projectiletype = /obj/item/projectile/beam
|
||||
corpse = /obj/effect/landmark/mobcorpse/pirate/ranged
|
||||
corpse = /obj/effect/landmark/corpse/pirate/ranged
|
||||
weapon1 = /obj/item/weapon/gun/energy/laser
|
||||
|
||||
|
||||
/mob/living/simple_animal/hostile/pirate/Die()
|
||||
..()
|
||||
if(corpse)
|
||||
new corpse (src.loc)
|
||||
new corpse(loc)
|
||||
corpse.createCorpse()
|
||||
if(weapon1)
|
||||
new weapon1 (src.loc)
|
||||
del src
|
||||
new weapon1 (get_turf(src))
|
||||
qdel(src)
|
||||
return
|
||||
@@ -19,7 +19,7 @@
|
||||
melee_damage_upper = 15
|
||||
attacktext = "punches"
|
||||
a_intent = I_HURT
|
||||
var/corpse = /obj/effect/landmark/mobcorpse/russian
|
||||
var/obj/effect/landmark/corpse/corpse = /obj/effect/landmark/corpse/russian
|
||||
var/weapon1 = /obj/item/weapon/kitchen/utensil/knife/large
|
||||
min_oxy = 5
|
||||
max_oxy = 0
|
||||
@@ -37,7 +37,7 @@
|
||||
/mob/living/simple_animal/hostile/russian/ranged
|
||||
icon_state = "russianranged"
|
||||
icon_living = "russianranged"
|
||||
corpse = /obj/effect/landmark/mobcorpse/russian/ranged
|
||||
corpse = /obj/effect/landmark/corpse/russian/ranged
|
||||
weapon1 = /obj/item/weapon/gun/projectile/mateba
|
||||
ranged = 1
|
||||
retreat_distance = 5
|
||||
@@ -50,8 +50,9 @@
|
||||
/mob/living/simple_animal/hostile/russian/Die()
|
||||
..()
|
||||
if(corpse)
|
||||
new corpse (src.loc)
|
||||
new corpse(loc)
|
||||
corpse.createCorpse()
|
||||
if(weapon1)
|
||||
new weapon1 (src.loc)
|
||||
del src
|
||||
new weapon1 (get_turf(src))
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
melee_damage_upper = 10
|
||||
attacktext = "punches"
|
||||
a_intent = I_HURT
|
||||
var/corpse = /obj/effect/landmark/mobcorpse/syndicatesoldier
|
||||
var/obj/effect/landmark/corpse/corpse = /obj/effect/landmark/corpse/syndicatesoldier
|
||||
var/weapon1
|
||||
var/weapon2
|
||||
min_oxy = 5
|
||||
@@ -37,12 +37,13 @@
|
||||
/mob/living/simple_animal/hostile/syndicate/Die()
|
||||
..()
|
||||
if(corpse)
|
||||
new corpse (src.loc)
|
||||
new corpse(loc)
|
||||
corpse.createCorpse()
|
||||
if(weapon1)
|
||||
new weapon1 (src.loc)
|
||||
new weapon1 (get_turf(src))
|
||||
if(weapon2)
|
||||
new weapon2 (src.loc)
|
||||
del src
|
||||
new weapon2 (get_turf(src))
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
///////////////Sword and shield////////////
|
||||
@@ -95,7 +96,7 @@
|
||||
icon_state = "syndicatemeleespace"
|
||||
icon_living = "syndicatemeleespace"
|
||||
name = "Syndicate Commando"
|
||||
corpse = /obj/effect/landmark/mobcorpse/syndicatecommando
|
||||
corpse = /obj/effect/landmark/corpse/syndicatecommando
|
||||
speed = 0
|
||||
|
||||
/mob/living/simple_animal/hostile/syndicate/melee/space/Process_Spacemove(var/check_drift = 0)
|
||||
@@ -127,7 +128,7 @@
|
||||
min_n2 = 0
|
||||
max_n2 = 0
|
||||
minbodytemp = 0
|
||||
corpse = /obj/effect/landmark/mobcorpse/syndicatecommando
|
||||
corpse = /obj/effect/landmark/corpse/syndicatecommando
|
||||
speed = 0
|
||||
|
||||
/mob/living/simple_animal/hostile/syndicate/ranged/space/Process_Spacemove(var/check_drift = 0)
|
||||
|
||||
@@ -7831,7 +7831,7 @@
|
||||
"cUE" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/obj/item/device/flash,/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/centcom/evac)
|
||||
"cUF" = (/obj/machinery/door/window{dir = 1; base_state = "right"; dir = 4; name = "Security Desk"; req_access_txt = "103"},/turf/simulated/shuttle/floor{icon_state = "floor4"},/area/centcom/evac)
|
||||
"cUG" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "gravsnow_corner"},/area/syndicate_mothership)
|
||||
"cUH" = (/obj/effect/landmark/mobcorpse/russian,/obj/effect/decal/cleanable/blood/splatter,/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/area/syndicate_mothership)
|
||||
"cUH" = (/obj/effect/landmark/corpse/russian,/obj/effect/decal/cleanable/blood/splatter,/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/area/syndicate_mothership)
|
||||
"cUI" = (/obj/machinery/vending/cola,/turf/simulated/shuttle/floor,/area/centcom/evac)
|
||||
"cUJ" = (/turf/unsimulated/floor{icon = 'icons/turf/snow.dmi'; icon_state = "snow"},/turf/simulated/shuttle/wall{dir = 8; icon_state = "diagonalWall3"},/area/syndicate_station/start)
|
||||
"cUK" = (/turf/simulated/shuttle/wall{icon_state = "wall3"},/area/syndicate_station/start)
|
||||
|
||||
Reference in New Issue
Block a user