diff --git a/code/defines/obj/clothing/gimmick.dm b/code/defines/obj/clothing/gimmick.dm
index 702fb30e48e..1b4d5524e0c 100644
--- a/code/defines/obj/clothing/gimmick.dm
+++ b/code/defines/obj/clothing/gimmick.dm
@@ -24,19 +24,6 @@
mob.Blend(earbit, ICON_OVERLAY)
mob2.Blend(earbit2, ICON_OVERLAY)
-/obj/item/clothing/head/helmet/space/santahat
- name = "Santa's hat"
- desc = "Ho ho ho. Merrry X-mas!"
- icon_state = "santahat"
-
-/obj/item/clothing/suit/space/santa
- name = "Santa's suit"
- desc = "Festive!"
- icon_state = "santa"
- item_state = "santa"
- slowdown = 1
- flags = FPRINT | TABLEPASS | ONESIZEFITSALL | SUITSPACE
-
/obj/item/clothing/shoes/red
name = "red shoes"
desc = "Stylish red shoes."
diff --git a/code/defines/obj/clothing/head.dm b/code/defines/obj/clothing/head.dm
index 153ea575a5c..d675dee55b4 100644
--- a/code/defines/obj/clothing/head.dm
+++ b/code/defines/obj/clothing/head.dm
@@ -13,7 +13,7 @@
desc = "A hood with radiation protective properties. Label: Made with lead, do not eat insulation"
radiation_protection = 0.35
flags = FPRINT|TABLEPASS|HEADSPACE|HEADCOVERSEYES|HEADCOVERSMOUTH
- armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 100)
+ armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 60, rad = 100)
/obj/item/clothing/head/bomb_hood
name = "bomb hood"
@@ -162,141 +162,6 @@
flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES
item_state = "helmet"
-/obj/item/clothing/head/helmet/space
- name = "Space helmet"
- icon_state = "space"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment."
- flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | HEADCOVERSMOUTH
- see_face = 0.0
- item_state = "space"
- permeability_coefficient = 0.01
- armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 25, rad = 25)
-
-/obj/item/clothing/head/helmet/space/engineering
- name = "Engineering space helmet"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment. Painted in Engineering Orange to designate its department of origin."
- icon_state = "helm_engineering0"
- item_state = "helm-orange"
- var/brightness_on = 4
- var/on = 0
- radiation_protection = 0.25
- armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
-
-/obj/item/clothing/head/helmet/space/command
- name = "Command space helmet"
- desc = "A special helmet designed to work in a hazardous, low-pressure environment. Painted in Command Blue to designate its department of origin."
- icon_state = "helm-command"
- item_state = "helm-command"
- radiation_protection = 0.25
- armor = list(melee = 40, bullet = 20, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
-
-/obj/item/clothing/head/helmet/space/command/chief_engineer
- name = "Chief engineer space helmet"
- desc = "A special helmet designed to work in a hazardous, low-pressure environment. Bears the insignia of the chief engineer."
- icon_state = "helm_ce0"
- item_state = "helm-ce"
- var/brightness_on = 4
- var/on = 0
-
-/obj/item/clothing/head/helmet/space/command/chief_medical_officer
- name = "Chief medical offier space helmet"
- desc = "A special helmet designed to work in a hazardous, low-pressure environment. Bears the insignia of the chief medical officer."
- icon_state = "helm-cmo"
- item_state = "helm-cmo"
-
-/obj/item/clothing/head/helmet/space/capspace
- name = "space helmet"
- icon_state = "capspace"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
- flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES
- see_face = 0.0
- item_state = "capspace"
- permeability_coefficient = 0.01
- armor = list(melee = 60, bullet = 50, laser = 50, taser = 25, bomb = 50, bio = 20, rad = 20)
-
-/obj/item/clothing/head/helmet/space/rig
- desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
- name = "rig helmet"
- icon_state = "rig"
- item_state = "rig_helm"
- radiation_protection = 0.25
- armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
-
-/obj/item/clothing/head/helmet/space/syndicate
- name = "red space helmet"
- desc = "Top secret Spess Helmet."
- icon_state = "syndicate"
- item_state = "syndicate"
- desc = "Has a tag: Totally not property of an enemy corporation, honest."
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
-/obj/item/clothing/head/helmet/space/syndicate/elite
- name = "black space helmet"
- desc = "Professionals Have Standards, Be Polite, Be Efficient, Have a plan to kill everyone you meet."
- icon_state = "syndicate-helm-black"
- item_state = "syndicate-helm-black"
- armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
-
-/obj/item/clothing/head/helmet/space/syndicate/elite/leader
- name = "black space helmet"
- icon_state = "syndicate-helm-black-red"
- item_state = "syndicate-helm-black-red"
-
-/obj/item/clothing/head/helmet/space/syndicate/green
- name = "Green Space Helmet"
- icon_state = "syndicate-helm-green"
- item_state = "syndicate-helm-green"
-
-/obj/item/clothing/head/helmet/space/syndicate/green/dark
- name = "Dark Green Space Helmet"
- icon_state = "syndicate-helm-green-dark"
- item_state = "syndicate-helm-green-dark"
-
-/*/obj/item/clothing/head/helmet/space/syndicate/orange
- name = "Orange Space Helmet"
- icon_state = "syndicate-helm-orange"
- item_state = "syndicate-helm-orange"*/ //As I said: Best used for engineering suits
-
-/*/obj/item/clothing/head/helmet/space/syndicate/blue
- name = "Blue Space Helmet"
- icon_state = "syndicate-helm-blue"
- item_state = "syndicate-helm-blue"*/
-
-/obj/item/clothing/head/helmet/space/syndicate/black
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black"
- item_state = "syndicate-helm-black"
-
-/obj/item/clothing/head/helmet/space/syndicate/black/green
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-green"
- item_state = "syndicate-helm-black-green"
-
-/obj/item/clothing/head/helmet/space/syndicate/black/blue
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-blue"
- item_state = "syndicate-helm-black-blue"
-
-/*/obj/item/clothing/head/helmet/space/syndicate/black/med
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-med"
- item_state = "syndicate-helm-black"*/
-
-/obj/item/clothing/head/helmet/space/syndicate/black/orange
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-orange"
- item_state = "syndicate-helm-black"
-
-/obj/item/clothing/head/helmet/space/syndicate/black/red
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-red"
- item_state = "syndicate-helm-black-red"
-
-/*/obj/item/clothing/head/helmet/space/syndicate/black/engie
- name = "Black Space Helmet"
- icon_state = "syndicate-helm-black-engie"
- item_state = "syndicate-helm-black"*/
-
/obj/item/clothing/head/syndicatefake
name = "red space helmet replica"
icon_state = "syndicate"
@@ -304,36 +169,6 @@
desc = "A plastic replica of a syndicate agent's space helmet, you'll look just like a real murderous syndicate agent in this! This is a toy, it is not made for use in space!"
see_face = 0.0
-/obj/item/clothing/head/helmet/space/nasavoid
- name = "NASA Void Helmet"
- desc = "A high tech, NASA Centcom branch designed, dark red space suit helmet. Used for AI satellite maintenance."
- icon_state = "void"
- item_state = "void"
- see_face = 1
-
-/obj/item/clothing/head/helmet/space/space_ninja
- desc = "What may appear to be a simple black garment is in fact a highly sophisticated nano-weave helmet. Standard issue ninja gear."
- name = "ninja hood"
- icon_state = "s-ninja"
- item_state = "s-ninja_mask"
- radiation_protection = 0.25
- see_face = 1
- allowed = list(/obj/item/weapon/cell)
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
-/obj/item/clothing/head/helmet/space/deathsquad
- name = "deathsquad helmet"
- desc = "That's not red paint. That's real blood."
- icon_state = "deathsquad"
- item_state = "deathsquad"
- armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
-
-/obj/item/clothing/head/helmet/space/deathsquad/beret
- name = "officer's beret"
- desc = "An armored beret commonly used by special operations officers."
- icon_state = "beret_badge"
- armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
-
/obj/item/clothing/head/helmet/swat
name = "swat helmet"
desc = "Used by highly trained Swat Members."
@@ -434,22 +269,6 @@
flags = FPRINT|TABLEPASS|SUITSPACE|HEADCOVERSEYES
armor = list(melee = 82, bullet = 15, laser = 5, taser = 5, bomb = 5, bio = 2, rad = 0)
-
-
-
-
-
-
-//Themed space suits for different nuke rounds (WIP)
-
-/obj/item/clothing/head/helmet/space/pirate
- name = "pirate hat"
- desc = "Yarr."
- icon_state = "pirate"
- item_state = "pirate"
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
-
/obj/item/clothing/head/helmet/cap
name = "Captain's cap"
desc = "For irresponsible Captains."
diff --git a/code/defines/obj/clothing/suit.dm b/code/defines/obj/clothing/suit.dm
index 8c9c9974047..58463409125 100644
--- a/code/defines/obj/clothing/suit.dm
+++ b/code/defines/obj/clothing/suit.dm
@@ -421,7 +421,7 @@
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
slowdown = 1.3
- armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 0, rad = 100)
+ armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 60, rad = 100)
/obj/item/clothing/suit/fire/heavy
name = "firesuit"
@@ -432,132 +432,6 @@
protective_temperature = 10000
slowdown = 1.7
-// SPACE SUITS
-
-/obj/item/clothing/suit/space
- name = "Space suit"
- desc = "A suit that protects against low pressure environments. Has a big 13 on the back."
- icon_state = "space"
- item_state = "s_suit"
- w_class = 4//bulky item
- gas_transfer_coefficient = 0.01
- permeability_coefficient = 0.02
- heat_transfer_coefficient = 0.02
- radiation_protection = 0.25
- protective_temperature = 1000
- flags = FPRINT | TABLEPASS | SUITSPACE
- body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
- allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 3
- armor = list(melee = 20, bullet = 5, laser = 10, taser = 3, bomb = 15, bio = 30, rad = 40)
-
-
-/obj/item/clothing/head/helmet/space/rig
- name = "Rig helmet"
- desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
- icon_state = "rig-engineering"
- item_state = "rig_helm"
- armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
- allowed = list(/obj/item/device/flashlight)
-
-/obj/item/clothing/head/helmet/space/rig/mining
- icon_state = "rig-mining"
- item_state = "rig_helm"
-
-/obj/item/clothing/suit/space/rig
- name = "Rig suit"
- desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding."
- icon_state = "rig-engineering"
- item_state = "rig_suit"
- radiation_protection = 0.50
- slowdown = 2
- armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
- allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/satchel,/obj/item/device/t_scanner)
-
-/obj/item/clothing/suit/space/rig/mining
- icon_state = "rig-mining"
- item_state = "rig_suit"
-
-
-/obj/item/clothing/suit/space/syndicate
- name = "red space suit"
- icon_state = "syndicate"
- item_state = "space_suit_syndicate"
- desc = "Has a tag on it: Totally not property of of a hostile corporation, honest!"
- w_class = 3
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 1
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
-/obj/item/clothing/suit/space/syndicate/elite
- name = "black space suit"
- desc = "A space ready suit with special armor inside designed to allow the wearer to take quite a beating."
- icon_state = "syndicate-black"
- item_state = "syndicate-black"
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 1
- armor = list(melee = 80, bullet = 60, laser = 50, taser = 25, bomb = 50, bio = 10, rad = 0)
-
-/obj/item/clothing/suit/space/syndicate/elite/leader
- name = "black space suit"
- icon_state = "syndicate-black-red"
- item_state = "syndicate-black-red"
-
-/obj/item/clothing/suit/space/syndicate/green
- name = "Green Space Suit"
- icon_state = "syndicate-green"
- item_state = "syndicate-green"
-
-/obj/item/clothing/suit/space/syndicate/green/dark
- name = "Dark Green Space Suit"
- icon_state = "syndicate-green-dark"
- item_state = "syndicate-green-dark"
-
-/obj/item/clothing/suit/space/syndicate/orange
- name = "Orange Space Suit"
- icon_state = "syndicate-orange"
- item_state = "syndicate-orange"
-
-/obj/item/clothing/suit/space/syndicate/blue
- name = "Blue Space Suit"
- icon_state = "syndicate-blue"
- item_state = "syndicate-blue"
-
-/obj/item/clothing/suit/space/syndicate/black
- name = "Black Space Suit"
- icon_state = "syndicate-black"
- item_state = "syndicate-black"
-
-/obj/item/clothing/suit/space/syndicate/black/green
- name = "Black and Green Space Suit"
- icon_state = "syndicate-black-green"
- item_state = "syndicate-black-green"
-
-/obj/item/clothing/suit/space/syndicate/black/blue
- name = "Black and Blue Space Suit"
- icon_state = "syndicate-black-blue"
- item_state = "syndicate-black-blue"
-
-/obj/item/clothing/suit/space/syndicate/black/med
- name = "Green Space Suit"
- icon_state = "syndicate-black-med"
- item_state = "syndicate-black"
-
-/obj/item/clothing/suit/space/syndicate/black/orange
- name = "Black and Orange Space Suit"
- icon_state = "syndicate-black-orange"
- item_state = "syndicate-black"
-
-/obj/item/clothing/suit/space/syndicate/black/red
- name = "Black and Red Space Suit"
- icon_state = "syndicate-black-red"
- item_state = "syndicate-black-red"
-
-/obj/item/clothing/suit/space/syndicate/black/engie
- name = "Black Engineering Space Suit"
- icon_state = "syndicate-black-engie"
- item_state = "syndicate-black"
-
/obj/item/clothing/suit/syndicatefake
name = "red space suit replica"
icon_state = "syndicate"
@@ -567,77 +441,6 @@
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/toy)
-/obj/item/clothing/suit/space/nasavoid
- name = "NASA Voidsuit"
- icon_state = "void"
- item_state = "void"
- desc = "A high tech, NASA Centcom branch designed, dark red Space suit. Used for AI satellite maintenance."
- allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 1.5
-
-/obj/item/clothing/suit/space/space_ninja
- name = "ninja suit"
- desc = "A unique, vaccum-proof suit of nano-enhanced armor designed specifically for Spider Clan assassins."
- icon_state = "s-ninja"
- item_state = "s-ninja_suit"
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/cell)
- radiation_protection = 0.75
- slowdown = 1
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
- var
- //Important parts of the suit.
- mob/living/carbon/affecting = null//The wearer.
- obj/item/weapon/cell/cell//Starts out with a high-capacity cell using New().
- datum/effects/system/spark_spread/spark_system//To create sparks.
- reagent_list[] = list("tricordrazine","dexalinp","spaceacillin","anti_toxin","nutriment","radium","hyronalin")//The reagents ids which are added to the suit at New().
- stored_research[]//For stealing station research.
- obj/item/weapon/disk/tech_disk/t_disk//To copy design onto disk.
-
- //Other articles of ninja gear worn together, used to easily reference them after initializing.
- obj/item/clothing/head/helmet/space/space_ninja/n_hood
- obj/item/clothing/shoes/space_ninja/n_shoes
- obj/item/clothing/gloves/space_ninja/n_gloves
-
- //Main function variables.
- s_initialized = 0//Suit starts off.
- s_coold = 0//If the suit is on cooldown. Can be used to attach different cooldowns to abilities. Ticks down every second based on suit ntick().
- s_cost = 5.0//Base energy cost each ntick.
- s_acost = 25.0//Additional cost for additional powers active.
- k_cost = 200.0//Kamikaze energy cost each ntick.
- k_damage = 1.0//Brute damage potentially done by Kamikaze each ntick.
- s_delay = 40.0//How fast the suit does certain things, lower is faster. Can be overridden in specific procs. Also determines adverse probability.
- a_transfer = 20.0//How much reagent is transferred when injecting.
- r_maxamount = 80.0//How much reagent in total there is.
-
- //Support function variables.
- spideros = 0//Mode of SpiderOS. This can change so I won't bother listing the modes here (0 is hub). Check ninja_equipment.dm for how it all works.
- s_active = 0//Stealth off.
- s_busy = 0//Is the suit busy with a process? Like AI hacking. Used for safety functions.
- kamikaze = 0//Kamikaze on or off.
- k_unlock = 0//To unlock Kamikaze.
-
- //Ability function variables.
- s_bombs = 10.0//Number of starting ninja smoke bombs.
- a_boost = 3.0//Number of adrenaline boosters.
-
- //Onboard AI related variables.
- mob/living/silicon/ai/AI//If there is an AI inside the suit.
- obj/item/device/paicard/pai//A slot for a pAI device
- obj/overlay/hologram//Is the AI hologram on or off? Visible only to the wearer of the suit. This works by attaching an image to a blank overlay.
- flush = 0//If an AI purge is in progress.
- s_control = 1//If user in control of the suit.
-
-/obj/item/clothing/suit/space/pirate
- name = "pirate coat"
- desc = "Yarr."
- icon_state = "pirate"
- item_state = "pirate"
- w_class = 3
- allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
- slowdown = 0
- armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
-
/obj/item/clothing/suit/captunic
name = "captain's parade tunic"
desc = "Used by irresponsible captains."
diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm
index 5d115a53304..5fae6ebc2b7 100644
--- a/code/defines/obj/weapon.dm
+++ b/code/defines/obj/weapon.dm
@@ -349,7 +349,7 @@
icon = 'items.dmi'
icon_state = "sheet"
layer = 4.0
- item_state = "w_suit"
+ item_state = "bedsheet"
throwforce = 1
w_class = 1.0
throw_speed = 2
diff --git a/code/game/objects/devices/flash.dm b/code/game/objects/devices/flash.dm
index ba536cdaeed..d9ed6138c3c 100644
--- a/code/game/objects/devices/flash.dm
+++ b/code/game/objects/devices/flash.dm
@@ -137,6 +137,7 @@
if (prob(2))
broken = 1
user << "\red The bulb has burnt out!"
+ return
spawn(60)
recharge()
diff --git a/code/game/objects/items/weapons/implants/implant.dm b/code/game/objects/items/weapons/implants/implant.dm
index 6b21bf726c7..8104344bb8c 100644
--- a/code/game/objects/items/weapons/implants/implant.dm
+++ b/code/game/objects/items/weapons/implants/implant.dm
@@ -78,12 +78,7 @@ a malfunction occurs thereby securing safety of subject. The implant will melt a
disintegrate into bio-safe elements.
Integrity: Gradient creates slight risk of being overcharged and frying the
circuitry. As a result neurotoxins can cause massive damage.
-Implant Specifics:
-ID (1-100):
--
-- [id]
-+
-+
"}
+Implant Specifics:
"}
return dat
diff --git a/code/game/objects/items/weapons/implants/implantpad.dm b/code/game/objects/items/weapons/implants/implantpad.dm
index dfa54a6bf32..b42fe178ddc 100644
--- a/code/game/objects/items/weapons/implants/implantpad.dm
+++ b/code/game/objects/items/weapons/implants/implantpad.dm
@@ -66,6 +66,12 @@
if(src.case.imp)
if(istype(src.case.imp, /obj/item/weapon/implant))
dat += src.case.imp.get_data()
+ if(istype(src.case.imp, /obj/item/weapon/implant/tracking))
+ dat += {"ID (1-100):
+ -
+ - [case.imp:id]
+ +
+ +
"}
else
dat += "The implant casing is empty."
else
@@ -82,20 +88,19 @@
if ((usr.contents.Find(src)) || ((in_range(src, usr) && istype(src.loc, /turf))))
usr.machine = src
if (href_list["tracking_id"])
- if ((istype(src.case, /obj/item/weapon/implantcase) && istype(src.case.imp, /obj/item/weapon/implant/tracking)))
- var/obj/item/weapon/implant/tracking/T = src.case.imp
- T.id += text2num(href_list["tracking_id"])
- T.id = min(100, T.id)
- T.id = max(1, T.id)
+ var/obj/item/weapon/implant/tracking/T = src.case.imp
+ T.id += text2num(href_list["tracking_id"])
+ T.id = min(100, T.id)
+ T.id = max(1, T.id)
+
if (istype(src.loc, /mob))
attack_self(src.loc)
else
for(var/mob/M in viewers(1, src))
if (M.client)
src.attack_self(M)
- //Foreach goto(290)
src.add_fingerprint(usr)
else
usr << browse(null, "window=implantpad")
return
- return
\ No newline at end of file
+ return
diff --git a/code/modules/clothing/glasses.dm b/code/modules/clothing/glasses.dm
new file mode 100644
index 00000000000..4c1002a97b8
--- /dev/null
+++ b/code/modules/clothing/glasses.dm
@@ -0,0 +1,19 @@
+/obj/item/clothing/glasses
+ name = "glasses"
+ icon = 'glasses.dmi'
+ w_class = 2.0
+ flags = GLASSESCOVERSEYES
+ var
+ vision_flags = 0
+ darkness_view = 0//Base human is 2
+ invisa_view = 0
+
+/*
+SEE_SELF // can see self, no matter what
+SEE_MOBS // can see all mobs, no matter what
+SEE_OBJS // can see all objs, no matter what
+SEE_TURFS // can see all turfs (and areas), no matter what
+SEE_PIXELS// if an object is located on an unlit area, but some of its pixels are
+ // in a lit area (via pixel_x,y or smooth movement), can see those pixels
+BLIND // can't see anything
+*/
diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm
index 341b1050cae..53450ae3a64 100644
--- a/code/modules/clothing/glasses/glasses.dm
+++ b/code/modules/clothing/glasses/glasses.dm
@@ -1,22 +1,3 @@
-/obj/item/clothing/glasses
- name = "glasses"
- icon = 'glasses.dmi'
- w_class = 2.0
- flags = GLASSESCOVERSEYES
- var
- vision_flags = 0
- darkness_view = 0//Base human is 2
- invisa_view = 0
-
-/*
-SEE_SELF // can see self, no matter what
-SEE_MOBS // can see all mobs, no matter what
-SEE_OBJS // can see all objs, no matter what
-SEE_TURFS // can see all turfs (and areas), no matter what
-SEE_PIXELS// if an object is located on an unlit area, but some of its pixels are
- // in a lit area (via pixel_x,y or smooth movement), can see those pixels
-BLIND // can't see anything
-*/
/obj/item/clothing/glasses/blindfold
diff --git a/code/modules/clothing/spacesuits.dm b/code/modules/clothing/spacesuits.dm
new file mode 100644
index 00000000000..6b06423a1f8
--- /dev/null
+++ b/code/modules/clothing/spacesuits.dm
@@ -0,0 +1,35 @@
+/*Contains
+Space suit parts
+/helmet/space*
+/suit/space*
+*/
+
+/obj/item/clothing/head/helmet/space
+ name = "Space helmet"
+ icon_state = "space"
+ desc = "A special helmet designed for work in a hazardous, low-pressure environment."
+ flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | HEADCOVERSMOUTH
+ see_face = 0.0
+ item_state = "space"
+ permeability_coefficient = 0.01
+ armor = list(melee = 0, bullet = 0, laser = 2, taser = 2, bomb = 0, bio = 25, rad = 25)
+
+
+
+/obj/item/clothing/suit/space
+ name = "Space suit"
+ desc = "A suit that protects against low pressure environments. Has a big 13 on the back."
+ icon_state = "space"
+ item_state = "s_suit"
+ w_class = 4//bulky item
+ gas_transfer_coefficient = 0.01
+ permeability_coefficient = 0.02
+ heat_transfer_coefficient = 0.02
+ radiation_protection = 0.25
+ protective_temperature = 1000
+ flags = FPRINT | TABLEPASS | SUITSPACE
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 3
+ armor = list(melee = 20, bullet = 5, laser = 10, taser = 3, bomb = 15, bio = 30, rad = 40)
+
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
new file mode 100644
index 00000000000..3a7d663243e
--- /dev/null
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -0,0 +1,62 @@
+/obj/item/clothing/head/helmet/space/capspace
+ name = "space helmet"
+ icon_state = "capspace"
+ desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
+ flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES
+ see_face = 0.0
+ item_state = "capspace"
+ permeability_coefficient = 0.01
+ armor = list(melee = 60, bullet = 50, laser = 50, taser = 25, bomb = 50, bio = 20, rad = 20)
+
+
+
+/obj/item/clothing/head/helmet/space/deathsquad
+ name = "deathsquad helmet"
+ desc = "That's not red paint. That's real blood."
+ icon_state = "deathsquad"
+ item_state = "deathsquad"
+ armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
+
+
+
+/obj/item/clothing/head/helmet/space/deathsquad/beret
+ name = "officer's beret"
+ desc = "An armored beret commonly used by special operations officers."
+ icon_state = "beret_badge"
+ armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
+
+
+
+/obj/item/clothing/head/helmet/space/santahat
+ name = "Santa's hat"
+ desc = "Ho ho ho. Merrry X-mas!"
+ icon_state = "santahat"
+
+
+/obj/item/clothing/suit/space/santa
+ name = "Santa's suit"
+ desc = "Festive!"
+ icon_state = "santa"
+ item_state = "santa"
+ slowdown = 1
+ flags = FPRINT | TABLEPASS | ONESIZEFITSALL | SUITSPACE
+
+
+
+/obj/item/clothing/head/helmet/space/pirate
+ name = "pirate hat"
+ desc = "Yarr."
+ icon_state = "pirate"
+ item_state = "pirate"
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
+
+
+/obj/item/clothing/suit/space/pirate
+ name = "pirate coat"
+ desc = "Yarr."
+ icon_state = "pirate"
+ item_state = "pirate"
+ w_class = 3
+ allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 0
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
diff --git a/code/modules/clothing/spacesuits/ninja.dm b/code/modules/clothing/spacesuits/ninja.dm
new file mode 100644
index 00000000000..863d80576dc
--- /dev/null
+++ b/code/modules/clothing/spacesuits/ninja.dm
@@ -0,0 +1,63 @@
+/obj/item/clothing/head/helmet/space/space_ninja
+ desc = "What may appear to be a simple black garment is in fact a highly sophisticated nano-weave helmet. Standard issue ninja gear."
+ name = "ninja hood"
+ icon_state = "s-ninja"
+ item_state = "s-ninja_mask"
+ radiation_protection = 0.25
+ see_face = 1
+ allowed = list(/obj/item/weapon/cell)
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
+
+
+/obj/item/clothing/suit/space/space_ninja
+ name = "ninja suit"
+ desc = "A unique, vaccum-proof suit of nano-enhanced armor designed specifically for Spider Clan assassins."
+ icon_state = "s-ninja"
+ item_state = "s-ninja_suit"
+ allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/cell)
+ radiation_protection = 0.75
+ slowdown = 1
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
+
+ var
+ //Important parts of the suit.
+ mob/living/carbon/affecting = null//The wearer.
+ obj/item/weapon/cell/cell//Starts out with a high-capacity cell using New().
+ datum/effects/system/spark_spread/spark_system//To create sparks.
+ reagent_list[] = list("tricordrazine","dexalinp","spaceacillin","anti_toxin","nutriment","radium","hyronalin")//The reagents ids which are added to the suit at New().
+ stored_research[]//For stealing station research.
+ obj/item/weapon/disk/tech_disk/t_disk//To copy design onto disk.
+
+ //Other articles of ninja gear worn together, used to easily reference them after initializing.
+ obj/item/clothing/head/helmet/space/space_ninja/n_hood
+ obj/item/clothing/shoes/space_ninja/n_shoes
+ obj/item/clothing/gloves/space_ninja/n_gloves
+
+ //Main function variables.
+ s_initialized = 0//Suit starts off.
+ s_coold = 0//If the suit is on cooldown. Can be used to attach different cooldowns to abilities. Ticks down every second based on suit ntick().
+ s_cost = 5.0//Base energy cost each ntick.
+ s_acost = 25.0//Additional cost for additional powers active.
+ k_cost = 200.0//Kamikaze energy cost each ntick.
+ k_damage = 1.0//Brute damage potentially done by Kamikaze each ntick.
+ s_delay = 40.0//How fast the suit does certain things, lower is faster. Can be overridden in specific procs. Also determines adverse probability.
+ a_transfer = 20.0//How much reagent is transferred when injecting.
+ r_maxamount = 80.0//How much reagent in total there is.
+
+ //Support function variables.
+ spideros = 0//Mode of SpiderOS. This can change so I won't bother listing the modes here (0 is hub). Check ninja_equipment.dm for how it all works.
+ s_active = 0//Stealth off.
+ s_busy = 0//Is the suit busy with a process? Like AI hacking. Used for safety functions.
+ kamikaze = 0//Kamikaze on or off.
+ k_unlock = 0//To unlock Kamikaze.
+
+ //Ability function variables.
+ s_bombs = 10.0//Number of starting ninja smoke bombs.
+ a_boost = 3.0//Number of adrenaline boosters.
+
+ //Onboard AI related variables.
+ mob/living/silicon/ai/AI//If there is an AI inside the suit.
+ obj/item/device/paicard/pai//A slot for a pAI device
+ obj/overlay/hologram//Is the AI hologram on or off? Visible only to the wearer of the suit. This works by attaching an image to a blank overlay.
+ flush = 0//If an AI purge is in progress.
+ s_control = 1//If user in control of the suit.
diff --git a/code/modules/clothing/spacesuits/rig.dm b/code/modules/clothing/spacesuits/rig.dm
new file mode 100644
index 00000000000..0692707914b
--- /dev/null
+++ b/code/modules/clothing/spacesuits/rig.dm
@@ -0,0 +1,25 @@
+/obj/item/clothing/head/helmet/space/rig
+ name = "Rig helmet"
+ desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
+ icon_state = "rig-engineering"
+ item_state = "rig_helm"
+ armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
+ allowed = list(/obj/item/device/flashlight)
+
+/obj/item/clothing/head/helmet/space/rig/mining
+ icon_state = "rig-mining"
+ item_state = "rig_helm"
+
+/obj/item/clothing/suit/space/rig
+ name = "Rig suit"
+ desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding."
+ icon_state = "rig-engineering"
+ item_state = "rig_suit"
+ radiation_protection = 0.50
+ slowdown = 2
+ armor = list(melee = 40, bullet = 5, laser = 20, taser = 5, bomb = 35, bio = 50, rad = 50)
+ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/emergency_oxygen,/obj/item/weapon/satchel,/obj/item/device/t_scanner)
+
+/obj/item/clothing/suit/space/rig/mining
+ icon_state = "rig-mining"
+ item_state = "rig_suit"
\ No newline at end of file
diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm
new file mode 100644
index 00000000000..d318160fbf4
--- /dev/null
+++ b/code/modules/clothing/spacesuits/syndi.dm
@@ -0,0 +1,201 @@
+/obj/item/clothing/head/helmet/space/syndicate
+ name = "red space helmet"
+ desc = "Top secret Spess Helmet."
+ icon_state = "syndicate"
+ item_state = "syndicate"
+ desc = "Has a tag: Totally not property of an enemy corporation, honest."
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
+
+
+/obj/item/clothing/suit/space/syndicate
+ name = "red space suit"
+ icon_state = "syndicate"
+ item_state = "space_suit_syndicate"
+ desc = "Has a tag on it: Totally not property of of a hostile corporation, honest!"
+ w_class = 3
+ allowed = list(/obj/item/weapon/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/handcuffs,/obj/item/weapon/tank/emergency_oxygen)
+ slowdown = 1
+ armor = list(melee = 60, bullet = 50, laser = 30, taser = 15, bomb = 30, bio = 30, rad = 30)
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/green
+ name = "Green Space Helmet"
+ icon_state = "syndicate-helm-green"
+ item_state = "syndicate-helm-green"
+
+
+/obj/item/clothing/suit/space/syndicate/green
+ name = "Green Space Suit"
+ icon_state = "syndicate-green"
+ item_state = "syndicate-green"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/green/dark
+ name = "Dark Green Space Helmet"
+ icon_state = "syndicate-helm-green-dark"
+ item_state = "syndicate-helm-green-dark"
+
+
+/obj/item/clothing/suit/space/syndicate/green/dark
+ name = "Dark Green Space Suit"
+ icon_state = "syndicate-green-dark"
+ item_state = "syndicate-green-dark"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/orange
+ name = "Orange Space Helmet"
+ icon_state = "syndicate-helm-orange"
+ item_state = "syndicate-helm-orange"
+
+
+/obj/item/clothing/suit/space/syndicate/orange
+ name = "Orange Space Suit"
+ icon_state = "syndicate-orange"
+ item_state = "syndicate-orange"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/blue
+ name = "Blue Space Helmet"
+ icon_state = "syndicate-helm-blue"
+ item_state = "syndicate-helm-blue"
+
+
+/obj/item/clothing/suit/space/syndicate/blue
+ name = "Blue Space Suit"
+ icon_state = "syndicate-blue"
+ item_state = "syndicate-blue"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black"
+ item_state = "syndicate-helm-black"
+
+
+/obj/item/clothing/suit/space/syndicate/black
+ name = "Black Space Suit"
+ icon_state = "syndicate-black"
+ item_state = "syndicate-black"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black/green
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-green"
+ item_state = "syndicate-helm-black-green"
+
+
+/obj/item/clothing/suit/space/syndicate/black/green
+ name = "Black and Green Space Suit"
+ icon_state = "syndicate-black-green"
+ item_state = "syndicate-black-green"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black/blue
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-blue"
+ item_state = "syndicate-helm-black-blue"
+
+
+/obj/item/clothing/suit/space/syndicate/black/blue
+ name = "Black and Blue Space Suit"
+ icon_state = "syndicate-black-blue"
+ item_state = "syndicate-black-blue"
+
+/obj/item/clothing/head/helmet/space/syndicate/black/med
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-med"
+ item_state = "syndicate-helm-black"
+
+
+/obj/item/clothing/suit/space/syndicate/black/med
+ name = "Green Space Suit"
+ icon_state = "syndicate-black-med"
+ item_state = "syndicate-black"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black/orange
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-orange"
+ item_state = "syndicate-helm-black"
+
+
+/obj/item/clothing/suit/space/syndicate/black/orange
+ name = "Black and Orange Space Suit"
+ icon_state = "syndicate-black-orange"
+ item_state = "syndicate-black"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black/red
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-red"
+ item_state = "syndicate-helm-black-red"
+
+
+/obj/item/clothing/suit/space/syndicate/black/red
+ name = "Black and Red Space Suit"
+ icon_state = "syndicate-black-red"
+ item_state = "syndicate-black-red"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/black/engie
+ name = "Black Space Helmet"
+ icon_state = "syndicate-helm-black-engie"
+ item_state = "syndicate-helm-black"
+
+
+/obj/item/clothing/suit/space/syndicate/black/engie
+ name = "Black Engineering Space Suit"
+ icon_state = "syndicate-black-engie"
+ item_state = "syndicate-black"
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/elite
+ name = "black space helmet"
+ desc = "Professionals Have Standards, Be Polite, Be Efficient, Have a plan to kill everyone you meet."
+ icon_state = "syndicate-helm-black"
+ item_state = "syndicate-helm-black"
+ armor = list(melee = 65, bullet = 55, laser = 35, taser = 20, bomb = 30, bio = 30, rad = 30)
+
+
+/obj/item/clothing/suit/space/syndicate/elite
+ name = "black space suit"
+ desc = "A space ready suit with special armor inside designed to allow the wearer to take quite a beating."
+ icon_state = "syndicate-black"
+ item_state = "syndicate-black"
+ slowdown = 1
+ armor = list(melee = 80, bullet = 60, laser = 50, taser = 25, bomb = 50, bio = 10, rad = 0)
+
+
+
+/obj/item/clothing/head/helmet/space/syndicate/elite/leader
+ name = "black space helmet"
+ icon_state = "syndicate-helm-black-red"
+ item_state = "syndicate-helm-black-red"
+
+
+/obj/item/clothing/suit/space/syndicate/elite/leader
+ name = "black space suit"
+ icon_state = "syndicate-black-red"
+ item_state = "syndicate-black-red"
+
+
+
+
+
+
+
+
+
+
+
diff --git a/code/modules/clothing/spacesuits/void.dm b/code/modules/clothing/spacesuits/void.dm
new file mode 100644
index 00000000000..e3309c2a642
--- /dev/null
+++ b/code/modules/clothing/spacesuits/void.dm
@@ -0,0 +1,14 @@
+/obj/item/clothing/head/helmet/space/nasavoid
+ name = "NASA Void Helmet"
+ desc = "A high tech, NASA Centcom branch designed, dark red space suit helmet. Used for AI satellite maintenance."
+ icon_state = "void"
+ item_state = "void"
+ see_face = 1
+
+
+/obj/item/clothing/suit/space/nasavoid
+ name = "NASA Voidsuit"
+ icon_state = "void"
+ item_state = "void"
+ desc = "A high tech, NASA Centcom branch designed, dark red Space suit. Used for AI satellite maintenance."
+ slowdown = 1.5
diff --git a/code/modules/critters/adefine.dm b/code/modules/critters/critter.dm
similarity index 92%
rename from code/modules/critters/adefine.dm
rename to code/modules/critters/critter.dm
index 4173717e786..bcbcc130216 100644
--- a/code/modules/critters/adefine.dm
+++ b/code/modules/critters/critter.dm
@@ -70,6 +70,7 @@
RunAttack()
TakeDamage(var/damage = 0)
Target_Attacker(var/target)
+ Harvest(var/obj/item/weapon/W, var/mob/living/user)//Controls havesting things from dead critters
diff --git a/code/modules/critters/critterAI.dm b/code/modules/critters/critter_AI.dm
similarity index 100%
rename from code/modules/critters/critterAI.dm
rename to code/modules/critters/critter_AI.dm
diff --git a/code/modules/critters/defenses.dm b/code/modules/critters/critter_defenses.dm
similarity index 86%
rename from code/modules/critters/defenses.dm
rename to code/modules/critters/critter_defenses.dm
index c57d652a351..ea59cc5f53b 100644
--- a/code/modules/critters/defenses.dm
+++ b/code/modules/critters/critter_defenses.dm
@@ -5,7 +5,9 @@ Contains the procs that control attacking critters
attackby(obj/item/weapon/W as obj, mob/living/user as mob)
..()
- if (!src.alive) return
+ if(!src.alive)
+ Harvest(W,user)
+ return
var/damage = 0
switch(W.damtype)
if("fire") damage = W.force * firevuln
@@ -48,7 +50,7 @@ Contains the procs that control attacking critters
src.Die()
- Die()//Might be more effective to del them and create a dummy item of some sorts
+ Die()
if (!src.alive) return
src.icon_state += "-dead"
src.alive = 0
@@ -58,6 +60,12 @@ Contains the procs that control attacking critters
src.visible_message("[src] dies!")
+ Harvest(var/obj/item/weapon/W, var/mob/living/user)
+ if((!W) || (!user)) return 0
+ if(src.alive) return 0
+ return 1
+
+
bullet_act(var/obj/item/projectile/Proj)
TakeDamage(Proj.damage)
diff --git a/code/modules/critters/critters.dm b/code/modules/critters/critters.dm
index 02f5f046d58..b522c946a88 100644
--- a/code/modules/critters/critters.dm
+++ b/code/modules/critters/critters.dm
@@ -39,6 +39,7 @@
..()
del(src)
+
/obj/critter/killertomato
name = "killer tomato"
desc = "Oh shit, you're really fucked now."
@@ -53,12 +54,24 @@
firevuln = 2
brutevuln = 2
- Die()
- ..()
- new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
- if(prob(50))
- new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
- new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
+
+ Harvest(var/obj/item/weapon/W, var/mob/living/user)
+ if(..())
+ var/success = 0
+ if(istype(W, /obj/item/weapon/butch))
+ new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
+ success = 1
+ if(istype(W, /obj/item/weapon/kitchenknife))
+ new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
+ new /obj/item/weapon/reagent_containers/food/snacks/tomatomeat(src)
+ success = 1
+ if(success)
+ for(var/mob/O in viewers(src, null))
+ O.show_message("\red [user.name] cuts apart the [src.name]!", 1)
+ del(src)
+ return 1
+ return 0
+
/obj/critter/spore
@@ -76,6 +89,7 @@
firevuln = 2
brutevuln = 2
+
Die()
src.visible_message("[src] ruptures and explodes!")
src.alive = 0
@@ -85,10 +99,12 @@
explosion(T, -1, -1, 2, 3)
del src
+
ex_act(severity)
src.Die()
+
/obj/critter/spesscarp
name = "Spess Carp"
desc = "Oh shit, you're really fucked now."
@@ -109,12 +125,24 @@
angertext = "swims at"
attacktext = "bites"
- Die()
- ..()
- new/obj/item/weapon/reagent_containers/food/snacks/carpmeat(src.loc)
- if(prob(50))
- new /obj/item/weapon/reagent_containers/food/snacks/carpmeat(src)
- new /obj/item/weapon/reagent_containers/food/snacks/carpmeat(src)
+
+ Harvest(var/obj/item/weapon/W, var/mob/living/user)
+ if(..())
+ var/success = 0
+ if(istype(W, /obj/item/weapon/butch))
+ new/obj/item/weapon/reagent_containers/food/snacks/carpmeat(src.loc)
+ new/obj/item/weapon/reagent_containers/food/snacks/carpmeat(src.loc)
+ success = 1
+ if(istype(W, /obj/item/weapon/kitchenknife))
+ new/obj/item/weapon/reagent_containers/food/snacks/carpmeat(src.loc)
+ success = 1
+ if(success)
+ for(var/mob/O in viewers(src, null))
+ O.show_message("\red [user.name] cuts apart the [src.name]!", 1)
+ del(src)
+ return 1
+ return 0
+
/obj/critter/spesscarp/elite
@@ -125,6 +153,8 @@
melee_damage_upper = 20
// opensdoors = 1 would give all access dono if want
+
+
/obj/critter/walkingmushroom
name = "Walking Mushroom"
desc = "A...huge...mushroom...with legs!?"
@@ -139,12 +169,24 @@
firevuln = 2
brutevuln = 1
- Die()
- ..()
- new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
- if(prob(50))
- new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
- new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
+
+ Harvest(var/obj/item/weapon/W, var/mob/living/user)
+ if(..())
+ var/success = 0
+ if(istype(W, /obj/item/weapon/butch))
+ new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
+ new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
+ success = 1
+ if(istype(W, /obj/item/weapon/kitchenknife))
+ new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
+ success = 1
+ if(success)
+ for(var/mob/O in viewers(src, null))
+ O.show_message("\red [user.name] cuts apart the [src.name]!", 1)
+ del(src)
+ return 1
+ return 0
+
/obj/critter/lizard
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index 33aedc2fe3e..d95d7291efa 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi
index 457895bb5d9..8fe609fbb67 100644
Binary files a/icons/mob/hud.dmi and b/icons/mob/hud.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index 15316c98abc..41fd4095c72 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index 89b933e9860..131270bd284 100644
Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 3c99cbada2b..07edb4bef67 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -82,6 +82,7 @@
#define FILE_DIR "code/modules/chemical"
#define FILE_DIR "code/modules/clothing"
#define FILE_DIR "code/modules/clothing/glasses"
+#define FILE_DIR "code/modules/clothing/spacesuits"
#define FILE_DIR "code/modules/critters"
#define FILE_DIR "code/modules/critters/hivebots"
#define FILE_DIR "code/modules/food"
@@ -676,12 +677,19 @@
#include "code\modules\chemical\Chemistry-Reagents.dm"
#include "code\modules\chemical\Chemistry-Recipes.dm"
#include "code\modules\chemical\Chemistry-Tools.dm"
+#include "code\modules\clothing\glasses.dm"
+#include "code\modules\clothing\spacesuits.dm"
#include "code\modules\clothing\glasses\glasses.dm"
#include "code\modules\clothing\glasses\hud.dm"
-#include "code\modules\critters\adefine.dm"
-#include "code\modules\critters\critterAI.dm"
+#include "code\modules\clothing\spacesuits\miscellaneous.dm"
+#include "code\modules\clothing\spacesuits\ninja.dm"
+#include "code\modules\clothing\spacesuits\rig.dm"
+#include "code\modules\clothing\spacesuits\syndi.dm"
+#include "code\modules\clothing\spacesuits\void.dm"
+#include "code\modules\critters\critter.dm"
+#include "code\modules\critters\critter_AI.dm"
+#include "code\modules\critters\critter_defenses.dm"
#include "code\modules\critters\critters.dm"
-#include "code\modules\critters\defenses.dm"
#include "code\modules\critters\hivebots\hivebot.dm"
#include "code\modules\food\food.dm"
#include "code\modules\food\recipes_microwave.dm"