Merge pull request #116 from ZomgPonies/master

Syncing
This commit is contained in:
melandor0
2014-10-18 15:21:00 +02:00
62 changed files with 12512 additions and 12309 deletions
+81 -4
View File
@@ -5,6 +5,83 @@
// END_INTERNALS
// BEGIN_FILE_DIR
#define FILE_DIR .
#define FILE_DIR "code"
#define FILE_DIR "code/TriDimension"
#define FILE_DIR "code/unused"
#define FILE_DIR "code/unused/goonheist"
#define FILE_DIR "code/WorkInProgress"
#define FILE_DIR "code/WorkInProgress/Cael_Aislinn"
#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Jungle"
#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Rust"
#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/ShieldGen"
#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Supermatter"
#define FILE_DIR "code/WorkInProgress/IndexLP"
#define FILE_DIR "code/WorkInProgress/Susan"
#define FILE_DIR "html"
#define FILE_DIR "icons"
#define FILE_DIR "icons/48x48"
#define FILE_DIR "icons/ass"
#define FILE_DIR "icons/effects"
#define FILE_DIR "icons/mecha"
#define FILE_DIR "icons/misc"
#define FILE_DIR "icons/mob"
#define FILE_DIR "icons/mob/human_races"
#define FILE_DIR "icons/mob/in-hand"
#define FILE_DIR "icons/mob/in-hand/left"
#define FILE_DIR "icons/mob/in-hand/right"
#define FILE_DIR "icons/mob/otherHuman"
#define FILE_DIR "icons/mob/species"
#define FILE_DIR "icons/mob/species/armalis"
#define FILE_DIR "icons/mob/species/skrell"
#define FILE_DIR "icons/mob/species/tajaran"
#define FILE_DIR "icons/mob/species/unathi"
#define FILE_DIR "icons/mob/species/vox"
#define FILE_DIR "icons/mob/spirits"
#define FILE_DIR "icons/NTOS"
#define FILE_DIR "icons/NTOS/battery_icons"
#define FILE_DIR "icons/obj"
#define FILE_DIR "icons/obj/assemblies"
#define FILE_DIR "icons/obj/atmospherics"
#define FILE_DIR "icons/obj/clothing"
#define FILE_DIR "icons/obj/doors"
#define FILE_DIR "icons/obj/flora"
#define FILE_DIR "icons/obj/machines"
#define FILE_DIR "icons/obj/pipes"
#define FILE_DIR "icons/obj/power_cond"
#define FILE_DIR "icons/pda_icons"
#define FILE_DIR "icons/pods"
#define FILE_DIR "icons/spideros_icons"
#define FILE_DIR "icons/stamp_icons"
#define FILE_DIR "icons/Testing"
#define FILE_DIR "icons/turf"
#define FILE_DIR "icons/vehicles"
#define FILE_DIR "icons/vending_icons"
#define FILE_DIR "maps"
#define FILE_DIR "maps/overmap"
#define FILE_DIR "maps/overmap/bearcat"
#define FILE_DIR "nano"
#define FILE_DIR "nano/images"
#define FILE_DIR "sound"
#define FILE_DIR "sound/AI"
#define FILE_DIR "sound/ambience"
#define FILE_DIR "sound/effects"
#define FILE_DIR "sound/effects/turret"
#define FILE_DIR "sound/effects/wind"
#define FILE_DIR "sound/hallucinations"
#define FILE_DIR "sound/items"
#define FILE_DIR "sound/machines"
#define FILE_DIR "sound/mecha"
#define FILE_DIR "sound/misc"
#define FILE_DIR "sound/music"
#define FILE_DIR "sound/piano"
#define FILE_DIR "sound/turntable"
#define FILE_DIR "sound/violin"
#define FILE_DIR "sound/voice"
#define FILE_DIR "sound/voice/complionator"
#define FILE_DIR "sound/voice/Serithi"
#define FILE_DIR "sound/vox"
#define FILE_DIR "sound/vox_fem"
#define FILE_DIR "sound/weapons"
// END_FILE_DIR
// BEGIN_PREFERENCES
#define DEBUG
@@ -849,10 +926,10 @@
#include "code\modules\customitems\item_defines.dm"
#include "code\modules\customitems\item_spawning.dm"
#include "code\modules\customitems\definitions\base.dm"
#include "code\modules\detectivework\detective_work.dm"
#include "code\modules\detectivework\evidence.dm"
#include "code\modules\detectivework\footprints_and_rag.dm"
#include "code\modules\detectivework\scanner.dm"
#include "code\modules\DetectiveWork\detective_work.dm"
#include "code\modules\DetectiveWork\evidence.dm"
#include "code\modules\DetectiveWork\footprints_and_rag.dm"
#include "code\modules\DetectiveWork\scanner.dm"
#include "code\modules\economy\Accounts.dm"
#include "code\modules\economy\Accounts_DB.dm"
#include "code\modules\economy\ATM.dm"
@@ -81,7 +81,7 @@
/datum/medical_effect/headache
name = "Headache"
triggers = list("cryoxadone" = 10, "bicaridine" = 15, "tricordrazine" = 15)
cures = list("alkysine", "tramadol")
cures = list("alkysine", "tramadol", "paracetamol", "oxycodone")
cure_message = "Your head stops throbbing..."
/datum/medical_effect/headache/on_life(mob/living/carbon/human/H, strength)
+9 -3
View File
@@ -154,12 +154,13 @@ var/list/uplink_items = list()
cost = 3
job = list("Civilian")
/*
/datum/uplink_item/jobspecific/greytide
name = "Greytide Implant"
desc = "A box containing an implanter filled with a greytide implant when injected into another person makes them loyal to the greytide and your cause, unless of course they're already implanted by someone else. Loyalty ends if the implant is no longer in their system."
item = /obj/item/weapon/storage/box/syndie_kit/greytide
cost = 7
job = list("Civilian")
job = list("Civilian") */
//Bartender
/datum/uplink_item/jobspecific/drunkbullets
@@ -257,9 +258,9 @@ var/list/uplink_items = list()
/datum/uplink_item/stealthy_weapons/para_pen
name = "Paralysis Pen"
desc = "A syringe disguised as a functional pen, filled with a neuromuscular-blocking drug that renders a target immobile on injection and makes them seem dead to observers. Side effects of the drug include noticeable drooling. The pen holds one dose of paralyzing agent, and cannot be refilled."
desc = "A syringe disguised as a functional pen, filled with a neuromuscular-blocking drug that renders a target mute on injection that will eventually cause them to pass out. The pen holds one dose of paralyzing agent,though it can be refilled."
item = /obj/item/weapon/pen/paralysis
cost = 3
cost = 4
/datum/uplink_item/stealthy_weapons/soap
name = "Syndicate Soap"
@@ -317,6 +318,11 @@ var/list/uplink_items = list()
item = /obj/item/device/chameleon
cost = 4
/datum/uplink_item/stealthy_tools/mindslave
name = "Mindslave Implant"
desc = "A box containing an implanter filled with a mindslave implant that when injected into another person makes them loyal to you and your cause, unless of course they're already implanted by someone else. Loyalty ends if the implant is no longer in their system."
item = /obj/item/weapon/storage/box/syndie_kit/mindslave
cost = 5
// DEVICE AND TOOLS
+11 -4
View File
@@ -400,12 +400,19 @@
return
if((istype(M,/mob/living/carbon/human/)) && (M.m_intent == "run")).
M.AdjustStunned(5)
M.AdjustWeakened(5)
//M.AdjustStunned(5)
//M.AdjustWeakened(5)
if(M.stunned <= 5) M.stunned = 5
if(M.weakened <= 5) M.weakened = 5
else if (istype(M,/mob/living/carbon/human/))
M.AdjustStunned(2)
M.AdjustWeakened(2)
//M.AdjustStunned(2)
//M.AdjustWeakened(2)
if(M.stunned <= 2) M.stunned = 2
if(M.weakened <= 2) M.weakened = 2
M << "Gravity!"
+11
View File
@@ -67,6 +67,10 @@ var/global/list/bad_blocks[0]
var/struc_enzymes="" // Encoded SE
var/unique_enzymes="" // MD5 of player name
// Original Encoded SE, for use with Ryetalin
var/struc_enzymes_original="" // Encoded SE
var/list/SE_original[DNA_SE_LENGTH]
// Internal dirtiness checks
var/dirtyUI=0
var/dirtySE=0
@@ -89,6 +93,7 @@ var/global/list/bad_blocks[0]
/datum/dna/proc/Clone()
var/datum/dna/new_dna = new()
new_dna.unique_enzymes=unique_enzymes
new_dna.struc_enzymes_original=struc_enzymes_original // will make clone's SE the same as the original, do we want this?
new_dna.b_type=b_type
new_dna.mutantrace=mutantrace
new_dna.real_name=real_name
@@ -362,10 +367,16 @@ var/global/list/bad_blocks[0]
// BACK-COMPAT!
// Initial DNA setup. I'm kind of wondering why the hell this doesn't just call the above.
// ready_dna is (hopefully) only used on mob creation, and sets the struc_enzymes_original and SE_original only once - Bone White
/datum/dna/proc/ready_dna(mob/living/carbon/human/character)
ResetUIFrom(character)
ResetSE()
struc_enzymes_original = struc_enzymes // sets the original struc_enzymes when ready_dna is called
SE_original = SE
unique_enzymes = md5(character.real_name)
reg_dna[unique_enzymes] = character.real_name
+7 -1
View File
@@ -533,7 +533,13 @@ var/list/sacrificed = list()
return 0
// record this
cult_log("[key_name(usr,0)] says : [input]")
//cult_log("[key_name(usr,0)] says : [input]")
var/F = investigate_subject2file("cult")
if(!F)
return 0
F << "<small>[time2text(world.timeofday,"hh:mm")] \ref[usr] ([usr.x],[usr.y],[usr.z])</small> || [usr] communicates: [input]<br>"
var/obj/cult_viewpoint/vp = getCultViewpoint(usr)
if (!vp)
+167 -29
View File
@@ -86,35 +86,173 @@
if (usr.stat || usr.restrained() || !in_range(src, usr)) return
if (href_list["rune"])
switch(href_list["rune"])
if("newtome")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "newtome"
if("teleport")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "[pick("ire", "ego", "nahlizet", "certum", "veri", "jatkaa", "balaq", "mgar", "karazet", "geeri", "orkan", "allaq")]"
T.info = "[T.imbue]"
if("emp")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "emp"
if("conceal")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "conceal"
if("communicate")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "communicate"
if("runestun")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "runestun"
if("armor")
var/obj/item/weapon/paper/talisman/T = new /obj/item/weapon/paper/talisman(get_turf(usr))
T.imbue = "armor"
if("soulstone")
new /obj/item/device/soulstone(get_turf(usr))
if("construct")
new /obj/structure/constructshell(get_turf(usr))
src.uses--
supply()
if (istype(usr, /mob/living/carbon/human))
var/mob/living/carbon/human/M = usr
switch(href_list["rune"])
if("newtome")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "newtome"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("teleport")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "[pick("ire", "ego", "nahlizet", "certum", "veri", "jatkaa", "balaq", "mgar", "karazet", "geeri", "orkan", "allaq")]"
T.info = "[T.imbue]"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("emp")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "emp"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("conceal")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "conceal"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("communicate")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "communicate"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("runestun")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "runestun"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("armor")
var/obj/item/weapon/paper/talisman/T = new(M)
T.imbue = "armor"
var/list/slots = list (
"backpack" = slot_in_backpack,
"left pocket" = slot_l_store,
"right pocket" = slot_r_store,
"left hand" = slot_l_hand,
"right hand" = slot_r_hand,
)
var/where = M.equip_in_one_of_slots(T, slots)
if (!where)
M << "You need a space in your backpack, pocket or hand for the new paper."
else
M << "The [href_list["rune"]] talisman in your [where]"
M.update_icons()
src.uses--
supply()
if("soulstone")
new /obj/item/device/soulstone(get_turf(usr))
src.uses--
supply()
if("construct")
new /obj/structure/constructshell(get_turf(usr))
src.uses--
supply()
else
return
return
+2 -2
View File
@@ -160,8 +160,8 @@
anchored = 1
var/orient = "LEFT" // "RIGHT" changes the dir suffix to "-r"
var/mob/living/carbon/human/occupant = null
var/available_chemicals = list("inaprovaline" = "Inaprovaline", "stoxin" = "Soporific", "anti_toxin" = "Dylovene", "dexalin" = "Dexalin")
var/amounts = list(10, 20)
var/available_chemicals = list("inaprovaline" = "Inaprovaline", "stoxin" = "Soporific", "paracetamol" = "Paracetamol", "anti_toxin" = "Dylovene", "dexalin" = "Dexalin")
var/amounts = list(5, 10)
var/obj/item/weapon/reagent_containers/glass/beaker = null
var/filtering = 0
+1
View File
@@ -201,6 +201,7 @@
if(H.mind in ticker.mode.syndicates)
ticker.mode.update_all_synd_icons()
if (H.mind in ticker.mode.cult)
ticker.mode.add_cult_viewpoint(H)
ticker.mode.add_cultist(src.occupant.mind)
ticker.mode.update_all_cult_icons() //So the icon actually appears
if(("\ref[H.mind]" in ticker.mode.implanter) || (H.mind in ticker.mode.implanted))
+75 -35
View File
@@ -374,6 +374,10 @@
return
seed.harvest(user,yield_mod)
//Increases harvest count for round-end score
//Currently per-plant (not per-item) harvested
// --FalseIncarnate
score_stuffharvested++
// Reset values.
harvest = 0
@@ -538,9 +542,79 @@
/obj/machinery/portable_atmospherics/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
//--FalseIncarnate
//Check if held item is an open container
if (O.is_open_container())
return 0
//Check if container is of the "glass" subtype (includes buckets, beakers, vials)
if(istype(O, /obj/item/weapon/reagent_containers/glass))
var/obj/item/weapon/reagent_containers/glass/C = O
//Check if container is empty
if(!C.reagents.total_volume)
user << "\red [C] is empty."
return
//Container not empty, transfer contents to tray
var/trans = C.reagents.trans_to(src, C.amount_per_transfer_from_this)
user << "\blue You transfer [trans] units of the solution to [src]."
check_level_sanity()
process_reagents()
update_icon()
//Check if container is one of the botany sprays (defined in hydro_tools.dm)
else if(istype(O, /obj/item/weapon/plantspray))
//Check if spray is pest-spray
if(istype(O, /obj/item/weapon/plantspray/pests))
var/obj/item/weapon/plantspray/P = O
user.drop_item(O)
toxins += P.toxicity
pestlevel -= P.pest_kill_str
weedlevel -= P.weed_kill_str
user << "You spray [src] with [O]."
playsound(loc, 'sound/effects/spray3.ogg', 50, 1, -6)
del(O)
check_level_sanity()
update_icon()
//Check if spray is weed-spray (un-obtainable, fixed for possible repurposing?)
else if(istype(O, /obj/item/weapon/plantspray/weeds))
var/obj/item/weapon/plantspray/W = O
user.drop_item(O)
toxins += W.toxicity
pestlevel -= W.pest_kill_str
weedlevel -= W.weed_kill_str
user << "You spray [src] with [O]."
playsound(loc, 'sound/effects/spray3.ogg', 50, 1, -6)
del(O)
check_level_sanity()
update_icon()
//Check if container is Plant-B-Gone spray (doesn't work with other sprays, may add in future)
else if (istype(O, /obj/item/weapon/reagent_containers/spray/plantbgone))
//Check if there is a plant in the tray
if(seed)
health -= rand(5,20)
if(pestlevel > 0)
pestlevel -= 2
if(weedlevel > 0)
weedlevel -= 3
toxins += 4
check_level_sanity()
visible_message("\red <B>\The [src] has been sprayed with \the [O][(user ? " by [user]." : ".")]")
playsound(loc, 'sound/effects/spray3.ogg', 50, 1, -6)
update_icon()
else
user << "There's nothing in [src] to spray!"
//--FalseIncarnate
//Held item is not an open container, check to see if it can be used (this code was already here) --FalseIncarnate
if(istype(O, /obj/item/weapon/wirecutters) || istype(O, /obj/item/weapon/scalpel))
if(!seed)
@@ -615,26 +689,6 @@
else
user << "\red \The [src] already has seeds in it!"
else if (istype(O, /obj/item/weapon/reagent_containers/spray/plantbgone))
if(seed)
health -= rand(5,20)
if(pestlevel > 0)
pestlevel -= 2
if(weedlevel > 0)
weedlevel -= 3
toxins += 4
check_level_sanity()
visible_message("\red <B>\The [src] has been sprayed with \the [O][(user ? " by [user]." : ".")]")
playsound(loc, 'sound/effects/spray3.ogg', 50, 1, -6)
update_icon()
else
user << "There's nothing in [src] to spray!"
else if (istype(O, /obj/item/weapon/minihoe)) // The minihoe
//var/deweeding
if(weedlevel > 0)
@@ -654,20 +708,6 @@
return
S.handle_item_insertion(G, 1)
else if ( istype(O, /obj/item/weapon/plantspray) )
var/obj/item/weapon/plantspray/spray = O
user.drop_item(O)
toxins += spray.toxicity
pestlevel -= spray.pest_kill_str
weedlevel -= spray.weed_kill_str
user << "You spray [src] with [O]."
playsound(loc, 'sound/effects/spray3.ogg', 50, 1, -6)
del(O)
check_level_sanity()
update_icon()
else if(istype(O, /obj/item/weapon/wrench))
//If there's a connector here, the portable_atmospherics setup can handle it.
+2 -2
View File
@@ -52,10 +52,10 @@
fire_sound = 'sound/weapons/Laser.ogg'
/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy
equip_cooldown = 15
equip_cooldown = 10
name = "CH-LC \"Solaris\" Laser Cannon"
icon_state = "mecha_laser"
energy_drain = 50
energy_drain = 40
projectile = /obj/item/projectile/beam/heavylaser
fire_sound = 'sound/weapons/lasercannonfire.ogg'
-42
View File
@@ -151,51 +151,9 @@
//canremove==0 means that object may not be removed. You can still wear it. This only applies to clothing. /N
if(!src.canremove)
return 0
if(istype(user,/mob/living/carbon/human))
if(istype(src, /obj/item/clothing/suit/space/rig)) // If the item to be unequipped is a rigid suit
if(user.delay_clothing_u_equip(src) == 0)
return 0
else
user.u_equip(src)
else
user.u_equip(src)
/*
if(istype(user,/mob/living/carbon/human))
var/mob/living/carbon/human/H = user
if(istype(src, /obj/item/clothing/suit/space/rig)) // If the item to unequip item is a rigid suit
if(! istype(H.head, /obj/item/clothing/head/helmet/space/rig)) // If the person is NOT wearing a rigid suit helmet
var/tempX = H.x
var/tempY = H.y
H << "\blue You unfastening the seals and clambering out of the [src]. (This will take a while)."
var/obj/item/clothing/head/helmet/space/rig/this_rig = src
var/equip_time = round(this_rig.equip_time/10)
var/i
for(i=1; i<=equip_time; i++)
sleep (10) // Check if they've moved every 10 time units
if ((tempX != usr.x) || (tempY != usr.y))
H << "\red \The [src] is too fiddly to remove whilst moving."
return 0
H << "\blue You finish removing the [src]."
else
H << "\red You must remove \the [H.head] first."
return 0
if(istype(src, /obj/item/clothing/head/helmet/space/rig)) // If the item to unequip is a rigid suit helmet
var/tempX = H.x
var/tempY = H.y
H << "\blue You start unfastening the [src]. (This will take a while)."
var/obj/item/clothing/suit/space/rig/this_helmet = src
var/equip_time = round(this_helmet.equip_time/10)
var/i
for(i=1; i<=equip_time; i++)
sleep (10) // Check if they've moved every 10 time units
if ((tempX != usr.x) || (tempY != usr.y))
H << "\red \The [src] is too fiddly to remove whilst moving."
return 0
H << "\blue You finish removing the [src]."
*/
else
if(isliving(src.loc))
return 0
+1 -1
View File
@@ -424,7 +424,7 @@
desc = "Your palm is oozing this stuff!"
icon = 'icons/mob/slimes.dmi'
icon_state = "red slime extract"
throwforce = 30.0
throwforce = 5.0
throw_speed = 10
throw_range = 30
w_class = 1
@@ -297,7 +297,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM
item_state = "pipeoff"
icon_on = "pipeon" //Note - these are in masks.dmi
icon_off = "pipeoff"
smoketime = 100
smoketime = 1000
chem_volume = 50
/obj/item/clothing/mask/cigarette/pipe/light(var/flavor_text = "[usr] lights the [name].")
if(!src.lit)
@@ -353,7 +354,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM
item_state = "cobpipeoff"
icon_on = "cobpipeon" //Note - these are in masks.dmi
icon_off = "cobpipeoff"
smoketime = 400
smoketime = 800
chem_volume = 40
@@ -343,20 +343,20 @@ the implant may become unstable and either pre-maturely inject the subject or si
return 1
/obj/item/weapon/implant/traitor
name = "Greytide Implant"
desc = "Greytide Station wide"
name = "Mindslave Implant"
desc = "Divide and Conquer"
icon_state = "implant_evil"
get_data()
var/dat = {"
<b>Implant Specifications:</b><BR>
<b>Name:</b> Greytide Mind-Slave Implant<BR>
<b>Name:</b> Mind-Slave Implant<BR>
<b>Life:</b> ??? <BR>
<b>Important Notes:</b> Any humanoid injected with this implant will become loyal to the injector and the greytide, unless of course the host is already loyal to someone else.<BR>
<b>Important Notes:</b> Any humanoid injected with this implant will become loyal to the injector, unless of course the host is already loyal to someone else.<BR>
<HR>
<b>Implant Details:</b><BR>
<b>Function:</b> Contains a small pod of nanobots that manipulate the host's mental functions.<BR>
<b>Special Features:</b> Glory to the Greytide!<BR>
<b>Special Features:</b> Diplomacy was never so easy.<BR>
<b>Integrity:</b> Implant will last so long as the nanobots are inside the bloodstream."}
return dat
@@ -367,9 +367,9 @@ the implant may become unstable and either pre-maturely inject the subject or si
if(!M.mind) return 0
var/mob/living/carbon/human/H = M
if(M == user)
user << "<span class='notice'>You feel quite stupid for doing that.</span>"
user << "<span class='notice'>Making yourself loyal to yourself was a great idea! Perhaps the best idea, ever! Actually, you just feel like an idiot.</span>"
if(isliving(user))
user:brainloss += 10
user:brainloss += 20
return
if(locate(/obj/item/weapon/implant/traitor) in H.contents || locate(/obj/item/weapon/implant/traitor) in H.contents)
H.visible_message("[H] seems to resist the implant!", "You feel a strange sensation in your head that quickly dissipates.")
@@ -389,7 +389,7 @@ the implant may become unstable and either pre-maturely inject the subject or si
ticker.mode:implanter[ref] = implanters
ticker.mode.traitors += H.mind
H.mind.special_role = "traitor"
H << "<B>\red You've been shown the Greytide by [user.name]!</B> You now must lay down your life to protect them and assist in their goals at any cost."
H << "<B>\red You're now completely loyal to [user.name]!</B> You now must lay down your life to protect them and assist in their goals at any cost."
var/datum/objective/protect/p = new
p.owner = H.mind
p.target = user:mind
@@ -54,8 +54,8 @@
/obj/item/weapon/implanter/traitor
name = "implanter-greytide"
desc = "Greytide Stationwide."
name = "implanter-mindslave"
desc = "Divide and Conquer."
New()
src.imp = new /obj/item/weapon/implant/traitor(src)
@@ -12,8 +12,10 @@
autoignition_temperature = 522 // Kelvin
suicide_act(mob/user)
viewers(user) << "\red <b>[user] is farting lightly on the [src.name]! It looks like \he's trying to commit suicide!</b>"
return (user.death(1))
user.emote("fart")
viewers(user) << "\red <b>[user] farts on the [src.name]!</b>"
viewers(user) << "\blue <b>A mysterious force smites [user]!</b>"
return (user.gib(1))
/obj/item/weapon/storage/bible/booze
@@ -135,8 +135,8 @@
new /obj/item/ammo_box/a357(src)
return
/obj/item/weapon/storage/box/syndie_kit/greytide
name = "box (GT)"
/obj/item/weapon/storage/box/syndie_kit/mindslave
name = "box (MS)"
New()
..()
@@ -68,6 +68,68 @@
return 1
/obj/structure/closet/crate/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W, /obj/item/weapon/rcs) && !src.opened)
var/obj/item/weapon/rcs/E = W
if(E.rcharges != 0)
if(E.mode == 0)
if(!E.teleporting)
var/list/L = list()
var/list/areaindex = list()
for(var/obj/machinery/telepad_cargo/R in world)
if(R.stage == 0)
var/turf/T = get_turf(R)
var/tmpname = T.loc.name
if(areaindex[tmpname])
tmpname = "[tmpname] ([++areaindex[tmpname]])"
else
areaindex[tmpname] = 1
L[tmpname] = R
var/desc = input("Please select a telepad.", "RCS") in L
E.pad = L[desc]
playsound(E.loc, 'sound/machines/click.ogg', 50, 1)
user << "\blue Teleporting [src.name]..."
E.teleporting = 1
sleep(50)
E.teleporting = 0
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
s.start()
do_teleport(src, E.pad, 0)
E.rcharges--
if(E.rcharges != 1)
user << "\blue Teleport successful. [E.rcharges] charges left."
E.desc = "Use this to send crates and closets to cargo telepads. There are [E.rcharges] charges left."
return
else
user << "\blue Teleport successful. [E.rcharges] charge left."
E.desc = "Use this to send crates and closets to cargo telepads. There is [E.rcharges] charge left."
return
else
E.rand_x = rand(50,200)
E.rand_y = rand(50,200)
var/L = locate(E.rand_x, E.rand_y, 6)
playsound(E.loc, 'sound/machines/click.ogg', 50, 1)
user << "\blue Teleporting [src.name]..."
E.teleporting = 1
sleep(50)
E.teleporting = 0
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
s.set_up(5, 1, src)
s.start()
do_teleport(src, L)
E.rcharges--
if(E.rcharges != 1)
user << "\blue Teleport successful. [E.rcharges] charges left."
E.desc = "Use this to send crates and closets to cargo telepads. There are [E.rcharges] charges left."
return
else
user << "\blue Teleport successful. [E.rcharges] charge left."
E.desc = "Use this to send crates and closets to cargo telepads. There is [E.rcharges] charge left."
return
else
user << "\red Out of charges."
return
if(opened)
if(isrobot(user))
return
-3
View File
@@ -1,9 +1,6 @@
/obj/item/clothing
name = "clothing"
var/list/species_restricted = null //Only these species can wear this kit.
var/equip_time = 0
var/equipping = 0
var/rig_restrict_helmet = 0 // Stops the user from equipping a rig helmet without attaching it to the suit first.
//BS12: Species-restricted clothing check.
/obj/item/clothing/mob_can_equip(M as mob, slot)
+4
View File
@@ -98,3 +98,7 @@
/obj/item/clothing/head/surgery/green
desc = "A cap surgeons wear during operations. Keeps their hair from tickling your internal organs. This one is dark green."
icon_state = "surgcap_green"
/obj/item/clothing/head/surgery/black
desc = "A cap morticians wear during autopsies. Keeps their hair from falling into the cadavers. It is as dark than the mortician's humor."
icon_state = "surgcap_black"
+16 -7
View File
@@ -35,7 +35,13 @@
if(istype(I,/obj/item/weapon/modkit/tajaran))
user.drop_item()
playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1)
user << "\red You painstakingly modify [src] to make it more suitable for a Tajaran user."
if(helmet)
helmet.loc = get_turf(src)
src.helmet = null
user << "\red You painstakingly modify [src] to make it more suitable for a Tajaran user. You pop the helmet on the floor"
else
user << "\red You painstakingly modify [src] to make it more suitable for a Tajaran user."
new /obj/item/clothing/suit/space/rig/tajara(user.loc)
del(I)
del(src)
@@ -43,7 +49,13 @@
if(istype(I,/obj/item/weapon/modkit/unathi))
user.drop_item()
playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1)
user << "\red You painstakingly modify [src] to make it more suitable for a Tajaran user."
if(helmet)
helmet.loc = get_turf(src)
src.helmet = null
user << "\red You painstakingly modify [src] to make it more suitable for a Unathi user. You pop the helmet on the floor"
else
user << "\red You painstakingly modify [src] to make it more suitable for a Unathi user."
new /obj/item/clothing/suit/space/rig/unathi(user.loc)
del(I)
del(src)
@@ -57,7 +69,6 @@
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
icon_state = "rig0-engineering"
item_state = "eng_helm"
rig_restrict_helmet = 1
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 80)
allowed = list(/obj/item/device/flashlight)
var/brightness_on = 4 //luminosity when on
@@ -103,8 +114,7 @@
desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding."
icon_state = "rig-engineering"
item_state = "eng_hardsuit"
equip_time = 100 // Bone White - time to equip/unequip. see /obj/item/attack_hand (items.dm) and /obj/item/clothing/mob_can_equip (clothing.dm)
slowdown = 4
slowdown = 1
armor = list(melee = 30, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 80)
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/suit_cooling_unit,/obj/item/weapon/storage/bag/ore,/obj/item/device/t_scanner,/obj/item/weapon/pickaxe, /obj/item/weapon/rcd)
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
@@ -362,7 +372,6 @@
flags = FPRINT | TABLEPASS | STOPSPRESSUREDMAGE | ONESIZEFITSALL
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 25, bio = 100, rad = 80)
sprite_sheets = null
slowdown = 2
//Singuloth armor
/obj/item/clothing/head/helmet/space/rig/singuloth
@@ -429,7 +438,7 @@
name = "blood-red hardsuit"
desc = "An advanced suit that protects against injuries during special operations. Property of Gorlex Marauders."
item_state = "syndie_hardsuit"
slowdown = 2
slowdown = 1
w_class = 3
armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 60)
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/handcuffs,/obj/item/device/suit_cooling_unit)
@@ -176,6 +176,17 @@
"Vox" = 'icons/mob/species/vox/uniform.dmi'
)
/obj/item/clothing/under/rank/medical/mortician
name = "mortician's scrubs"
desc = "It's made of a special fiber that provides minor protection against biohazards. This one is as dark as an emo's poetry."
icon_state = "scrubsblack"
_color = "scrubsblack"
flags = FPRINT | TABLEPASS | ONESIZEFITSALL
species_fit = list("Vox")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/uniform.dmi'
)
//paramedic
/obj/item/clothing/under/rank/medical/paramedic
desc = "It's made of a special fiber that provides minor protection against biohazards and radiation. It has a cross on the chest denoting that the wearer is trained medical personnel."
+3 -4
View File
@@ -519,10 +519,9 @@
_color = "soldieruniform"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
/obj/item/clothing/under/sexyclown
name = "sexy-clown suit"
desc = "It makes you look HONKable!"
/obj/item/clothing/under/pennywise
name = "Pennywise Costume"
desc = "It's everything you ever were afraid of."
icon_state = "pennywise"
item_state = "pennywise"
_color = "pennywise"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
@@ -1,7 +1,7 @@
/datum/event/anomaly/anomaly_bluespace
startWhen = 3
announceWhen = 10
endWhen = 55
endWhen = 160
/datum/event/anomaly/anomaly_bluespace/announce()
+1 -1
View File
@@ -3,7 +3,7 @@
/datum/event/anomaly/anomaly_flux
startWhen = 3
announceWhen = 20
endWhen = 60
endWhen = 180
/datum/event/anomaly/anomaly_flux/announce()
+1 -1
View File
@@ -3,7 +3,7 @@
/datum/event/anomaly/anomaly_grav
startWhen = 3
announceWhen = 20
endWhen = 50
endWhen = 70
/datum/event/anomaly/anomaly_grav/announce()
@@ -1,7 +1,7 @@
/datum/event/anomaly/anomaly_vortex
startWhen = 10
startWhen = 20
announceWhen = 3
endWhen = 80
+4
View File
@@ -49,3 +49,7 @@
smelts_to = /obj/item/stack/sheet/mineral/tritium
compresses_to = /obj/item/stack/sheet/mineral/mhydrogen
oretag = "hydrogen"
/datum/ore/clown
smelts_to = /obj/item/stack/sheet/mineral/clown
oretag = "clown"
-22
View File
@@ -146,28 +146,6 @@
update_icons()
return
/mob/proc/delay_clothing_u_equip(obj/item/clothing/X as obj) // Bone White - delays unequipping by parameter. Requires W to be /obj/item/clothing/
if(!istype(X)) return 0
if(X.equipping == 1) return 0 // Item is already being (un)equipped
var/tempX = usr.x
var/tempY = usr.y
usr << "\blue You start unequipping the [X]."
X.equipping = 1
var/equip_time = round(X.equip_time/10)
var/i
for(i=1; i<=equip_time; i++)
sleep (10) // Check if they've moved every 10 time units
if ((tempX != usr.x) || (tempY != usr.y))
src << "\red \The [X] is too fiddly to unequip whilst moving."
X.equipping = 0
return 0
u_equip(X)
usr << "\blue You have finished unequipping the [X]."
X.equipping = 0
/mob/proc/u_equip(W as obj)
if (W == r_hand)
r_hand = null
+18 -10
View File
@@ -86,24 +86,32 @@
src.apply_damage(shock_damage, BURN, def_zone, used_weapon="Electrocution")
playsound(loc, "sparks", 50, 1, -1)
if (shock_damage > 10)
src.visible_message(
"\red [src] was shocked by the [source]!", \
"\red <B>You feel a powerful shock course through your body!</B>", \
"\red You hear a heavy electrical crack." \
)
Stun(10)//This should work for now, more is really silly and makes you lay there forever
Weaken(10)
else
if (shock_damage < 10)
src.visible_message(
"\red [src] was mildly shocked by the [source].", \
"\red You feel a mild shock course through your body.", \
"\red You hear a light zapping." \
)
if (shock_damage > 10)
if (shock_damage < 200)
src.visible_message(
"\red [src] was shocked by the [source]!", \
"\red <B>You feel a powerful shock course through your body!</B>", \
"\red You hear a heavy electrical crack." \
)
Stun(10)//This should work for now, more is really silly and makes you lay there forever
Weaken(10)
if (shock_damage > 200)
src.visible_message(
"\red [src] was arc flashed by the [source]!", \
"\red <B>The [source] arc flashes and electrocutes you!</B>", \
"\red You hear a lightning-like crack!" \
)
playsound(loc, "sound/effects/eleczap.ogg", 50, 1, -1)
explosion(src.loc,-1,0,2,2)
return shock_damage
/mob/living/carbon/proc/swap_hand()
var/obj/item/item_in_hand = src.get_active_hand()
if(item_in_hand) //this segment checks if the item in your hand is twohanded.
+28 -5
View File
@@ -527,18 +527,41 @@
else
message = "<B>[src]</B> sadly can't find anybody to give daps to, and daps \himself. Shameful."
if("slap")
m_type = 1
if (!src.restrained())
var/M = null
if (param)
for (var/mob/A in view(1, null))
if (param == A.name)
M = A
break
if (M)
message = "\red <B>[src]</B> slaps [M] across the face. Ouch!"
playsound(src.loc, 'sound/effects/snap.ogg', 50, 1)
else
message = "\red <B>[src]</B> slaps \himself!"
playsound(src.loc, 'sound/effects/snap.ogg', 50, 1)
src.adjustFireLoss(4)
if ("scream")
if (miming)
message = "<B>[src]</B> acts out a scream!"
m_type = 1
else
if (!muzzled)
message = "<B>[src]</B> screams!"
m_type = 2
if (prob(5))
playsound(src.loc, 'sound/voice/WilhelmScream.ogg', 100, 1, 10)
if (!(species.name == "Vox" || species.name == "Vox Armalis"))
message = "<B>[src]</B> screams!"
m_type = 2
if (prob(5))
playsound(src.loc, 'sound/voice/WilhelmScream.ogg', 100, 1, 10)
else
playsound(src.loc, 'sound/voice/scream2.ogg', 100, 1, 10)
else
playsound(src.loc, 'sound/voice/scream2.ogg', 100, 1, 10)
message = "<B>[src]</B> shrieks!"
m_type = 2
playsound(src.loc, 'sound/voice/shriek1.ogg', 100, 1, 10)
else
message = "<B>[src]</B> makes a very loud noise."
m_type = 2
@@ -1111,26 +1111,6 @@
src.custom_pain("You feel a stabbing pain in your chest!", 1)
L.damage = L.min_bruised_damage
//Gave the rupture_lung() call it's own proc to have much more control over it.
/mob/living/carbon/human/proc/try_lung_rupture(argBreath)
var/datum/gas_mixture/environment = loc.return_air()
var/datum/gas_mixture/breath = argBreath
var/pressure = environment.return_pressure()
var/adjusted_pressure = calculate_affecting_pressure(pressure)
//High kPa
if(!is_lung_ruptured() && breath.total_moles > BREATH_MOLES * 5)
if(prob(5))
rupture_lung()
return
//Low kPa
else if(!is_lung_ruptured() && internal && adjusted_pressure <= species.hazard_low_pressure)
if(internal.distribute_pressure >= species.warning_low_pressure)
if(prob(33))
rupture_lung()
return
else
return
/*
/mob/living/carbon/human/verb/simulate()
set name = "sim"
@@ -1,45 +1,20 @@
/mob/living/carbon/human/movement_delay()
var/tally = 0
if(wear_suit)
if(wear_suit.slowdown > 0)
var/datum/gas_mixture/environment = loc.return_air()
var/local_pressure = environment.return_pressure()
switch (local_pressure)
if(20 to 40)
tally = min(1,wear_suit.slowdown)
if(40 to 60)
tally = min(2,wear_suit.slowdown)
if(60 to 80)
tally = min(3,wear_suit.slowdown)
if(80 to INFINITY)
tally = min(4,wear_suit.slowdown)
tally = min(wear_suit.slowdown, tally) // Initial slow will never get more powerful than the slowdown on the suit.
if(species && species.flags & IS_SLOW) //Bone White - added additional slow for wearing a rig suit. Species who have IS_SLOW (Diona) do not gain a speed buff now
if(species && species.flags & IS_SLOW)
tally = 5
//if(wear_suit) // These two lines are now redundant due to comment above
// tally += wear_suit.slowdown
if (istype(loc, /turf/space)) return -1 // It's hard to be slowed down in space by... anything
if(embedded_flag)
handle_embedded_objects() //Moving with objects stuck in you can cause bad times.
var/hyperizine = reagents.has_reagent("hyperizine")
if(hyperizine && dna.mutantrace == "slime")
tally *= 2
else if(hyperizine || M_RUN in mutations || istype(loc, /turf/space))
return -1
if(reagents.has_reagent("hyperzine")) return -1
if(reagents.has_reagent("nuka_cola")) return -1
if((M_RUN in mutations)) return -1
if (istype(loc, /turf/space)) return -1 // It's hard to be slowed down in space by... anything
var/health_deficiency = (100 - health)
if(health_deficiency >= 40) tally += (health_deficiency / 25)
@@ -49,6 +24,8 @@
var/hungry = (500 - nutrition)/5 // So overeat would be 100 and default level would be 80
if (hungry >= 70) tally += hungry/50
if(wear_suit)
tally += wear_suit.slowdown
if(!buckled || (buckled && !istype(buckled, /obj/structure/stool/bed/chair/wheelchair)))
if(shoes)
@@ -10,17 +10,6 @@
H << "<span class='notice'>You are not holding anything to equip.</span>"
return
if(istype(I, /obj/item/clothing/head/helmet/space/rig)) // If the item to be equipped is a rigid suit helmet
src << "\red You must fasten the helmet to a hardsuit first. (Target the head)" // Stop eva helms equipping.
return 0
if(istype(I, /obj/item/clothing/suit/space/rig)) // If the item to be equipped is a rigid suit
var/obj/item/clothing/suit/space/rig/J = I
if(J.equip_time > 0)
delay_clothing_equip_to_slot_if_possible(J, 13) // 13 = suit slot
return 0
if(H.equip_to_appropriate_slot(I))
if(hand)
update_inv_l_hand(0)
+13 -46
View File
@@ -36,7 +36,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
var/do_deferred_species_setup=0
var/exposedtimenow = 0
var/firstexposed = 0
var/last_message = 0
// Doing this during species init breaks shit.
/mob/living/carbon/human/proc/DeferredSpeciesSetup()
@@ -243,11 +242,13 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(3)
emote("drool")
/*
if(species.name == "Tajaran")
if(prob(1))
if(prob(1))
vomit(1) // Hairball
*/
if(stat != 2)
var/rn = rand(0, 200)
@@ -277,35 +278,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
// as cloneloss
adjustCloneLoss(0.1)
//Makes Space a little more evil, simulates that space is full of errent high energy particles waiting to tear you up.
proc/cosmic_radiation()
var/ax = x
var/ay = y
if(istype(loc, /turf/space))
if(!(getarmor("chest", "rad") > 0))
if(prob(33))
apply_effect((rand(3,7)),IRRADIATE,0)
//Thank you to whoever wrote the vampire's sun code.
if(!(wear_suit && (wear_suit.flags & STOPSPRESSUREDMAGE)) && !(species.flags & RAD_ABSORB))
for(var/i = 1 to 20)
ax += sun.dx
ay += sun.dy
var/turf/T = locate( round(ax,0.5),round(ay,0.5),z)
if(T.x == 1 || T.x==world.maxx || T.y==1 || T.y==world.maxy)
break
if(T.density)
return
var/datum/organ/external/O = pick(organs)
apply_damage(3, BURN, O)
if(world.time - last_message > 5)
src << "\red You feel the intense heat of the sun giving you a harsh sunburn."
last_message = world.time
proc/handle_mutations_and_radiation()
if(species.flags & IS_SYNTHETIC) //Robots don't suffer from mutations or radloss.
@@ -315,14 +287,13 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if((M_RESIST_HEAT in mutations) || (prob(1)))
heal_organ_damage(0,1)
cosmic_radiation()
for(var/datum/dna/gene/gene in dna_genes)
if(!gene.block)
continue
if(gene.is_active(src))
if (prob(10) && prob(gene.instability))
adjustCloneLoss(1)
/* if (prob(10) && prob(gene.instability))
adjustCloneLoss(1) */
gene.OnMobLife(src)
if (radiation)
@@ -395,7 +366,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
if(damage && organs.len)
var/datum/organ/external/O = pick(organs)
if(istype(O)) O.add_autopsy_data("Radiation Poisoning", damage)
proc/breathe()
if(reagents.has_reagent("lexorin")) return
if(M_NO_BREATH in mutations) return // No breath mutation means no breathing.
@@ -419,8 +390,6 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
else
//First, check for air from internal atmosphere (using an air tank and mask generally)
breath = get_breath_from_internal(BREATH_VOLUME) // Super hacky -- TLE
if(breath)
try_lung_rupture(breath)
//breath = get_breath_from_internal(0.5) // Manually setting to old BREATH_VOLUME amount -- TLE
//No breath from internal atmosphere so get breath from location
@@ -438,9 +407,12 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
breath_moles = environment.total_moles()*BREATH_PERCENTAGE
breath = loc.remove_air(breath_moles)
try_lung_rupture(breath)
if(!is_lung_ruptured())
if(!breath || breath.total_moles < BREATH_MOLES / 5 || breath.total_moles > BREATH_MOLES * 5)
if(prob(5))
rupture_lung()
// Handle chem smoke effect -- Doohl
var/block = 0
if(wear_mask)
@@ -630,8 +602,7 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
pressure_alert = -1
else
if( !(M_RESIST_COLD in mutations))
//Low pressure really cant deal much pysical damage but would be pretty painful. -IndexLP
apply_damage(LOW_PRESSURE_DAMAGE+1, HALLOSS)
take_overall_damage(brute=LOW_PRESSURE_DAMAGE, used_weapon = "Low Pressure")
pressure_alert = -2
else
pressure_alert = -1
@@ -1074,16 +1045,12 @@ var/global/list/brutefireloss_overlays = list("1" = image("icon" = 'icons/mob/sc
for(var/atom/a in hallucinations)
del a
if(halloss > 100 && pressure_alert != -2)
if(halloss > 100)
src << "<span class='notice'>You're in too much pain to keep going...</span>"
for(var/mob/O in oviewers(src, null))
O.show_message("<B>[src]</B> slumps to the ground, too weak to continue fighting.", 1)
Paralyse(10)
setHalLoss(99)
if(halloss > 100 && pressure_alert == -2)
src << "<span class='notice'>You're in too much pain to keep going...</span>"
Paralyse(10)
setHalLoss(95)
if(paralysis)
AdjustParalysis(-1)
+11 -7
View File
@@ -5,20 +5,24 @@
/mob/living/carbon/proc/updateshock()
src.traumatic_shock = \
1 * src.getOxyLoss() + \
0.7 * src.getToxLoss() + \
1.5 * src.getFireLoss() + \
1.2 * src.getBruteLoss() + \
1.7 * src.getCloneLoss() + \
2 * src.halloss
0.7 * src.getToxLoss() + \
1.5 * src.getFireLoss() + \
1.2 * src.getBruteLoss() + \
1.7 * src.getCloneLoss() + \
2 * src.halloss
if(reagents.has_reagent("alkysine"))
src.traumatic_shock -= 10
if(reagents.has_reagent("inaprovaline"))
src.traumatic_shock -= 25
if(reagents.has_reagent("synaptizine"))
src.traumatic_shock -= 40
if(reagents.has_reagent("paracetamol"))
src.traumatic_shock -= 50
if(reagents.has_reagent("tramadol"))
src.traumatic_shock -= 20 // make synaptizine function as good painkiller
src.traumatic_shock -= 80
if(reagents.has_reagent("oxycodone"))
src.traumatic_shock -= 50 // make synaptizine function as good painkiller
src.traumatic_shock -= 200
if(src.slurring)
src.traumatic_shock -= 20
if(src.analgesic)
+4 -3
View File
@@ -363,7 +363,7 @@
breath_type = "nitrogen"
poison_type = "oxygen"
flags = NO_SCAN | IS_WHITELISTED | NO_BLOOD
flags = NO_SCAN | IS_WHITELISTED
flesh_color = "#808D11"
@@ -522,7 +522,7 @@
heat_level_2 = 350
heat_level_3 = 700
flags = NO_BREATHE | REQUIRE_LIGHT | NO_SCAN | IS_PLANT | RAD_ABSORB | NO_BLOOD | IS_SLOW | NO_PAIN
flags = NO_BREATHE | REQUIRE_LIGHT | IS_PLANT | RAD_ABSORB | NO_BLOOD | IS_SLOW | NO_PAIN
body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not
@@ -536,6 +536,7 @@
return ..()
/* //overpowered and dumb as hell; they get cloning back, though.
/datum/species/diona/handle_death(var/mob/living/carbon/human/H)
var/mob/living/carbon/monkey/diona/S = new(get_turf(H))
@@ -551,7 +552,7 @@
else
del(D)
H.visible_message("\red[H] splits apart with a wet slithering noise!")
H.visible_message("\red[H] splits apart with a wet slithering noise!") */
/datum/species/machine
name = "Machine"
@@ -27,6 +27,7 @@
max_co2 = 0
min_n2 = 0
max_n2 = 0
var/dead = 0
unsuitable_atoms_damage = 15
faction = list("alien")
status_flags = CANPUSH
@@ -92,5 +93,7 @@
/mob/living/simple_animal/hostile/alien/Die()
..()
visible_message("[src] lets out a waning guttural screech, green blood bubbling from its maw...")
playsound(src, 'sound/voice/hiss6.ogg', 100, 1)
if(dead == 0)
dead = 1
visible_message("[src] lets out a waning guttural screech, green blood bubbling from its maw...")
playsound(src, 'sound/voice/hiss6.ogg', 100, 1)
+2 -36
View File
@@ -105,21 +105,8 @@
/mob/proc/attack_ui(slot)
var/obj/item/W = get_active_hand()
//if(istype(W))
// equip_to_slot_if_possible(W, slot)
if(istype(W))
if (istype(W, /obj/item/clothing))
var/obj/item/clothing/C = W
if(C.rig_restrict_helmet)
src << "\red You must fasten the helmet to a hardsuit first. (Target the head)" // Stop eva helms equipping.
else
if(C.equip_time > 0)
delay_clothing_equip_to_slot_if_possible(C, slot)
else
equip_to_slot_if_possible(C, slot)
else
equip_to_slot_if_possible(W, slot)
equip_to_slot_if_possible(W, slot)
if(ishuman(src) && W == src:head)
src:update_hair()
@@ -131,30 +118,9 @@
return 1
return 0
//This is a SAFE proc. Use this instead of equip_to_splot()!
/mob/proc/delay_clothing_equip_to_slot_if_possible(obj/item/clothing/X as obj, slot, del_on_fail = 0, disable_warning = 0, redraw_mob = 1, delay_time = 0)
if(!istype(X)) return 0
if(X.equipping == 1) return 0 // Item is already being equipped
var/tempX = usr.x
var/tempY = usr.y
usr << "\blue You start equipping the [X]."
X.equipping = 1
var/equip_time = round(X.equip_time/10)
var/i
for(i=1; i<=equip_time; i++)
sleep (10) // Check if they've moved every 10 time units
if ((tempX != usr.x) || (tempY != usr.y))
src << "\red \The [X] is too fiddly to fasten whilst moving."
X.equipping = 0
return 0
equip_to_slot_if_possible(X, slot)
usr << "\blue You have finished equipping the [X]."
X.equipping = 0
//This is a SAFE proc. Use this instead of equip_to_splot()!
//This is a SAFE proc. Use this instead of equip_to_slot()!
//set del_on_fail to have it delete W if it fails to equip
//set disable_warning to disable the 'you are unable to equip that' warning.
//unset redraw_mob to prevent the mob from being redrawn at the end.
+2 -2
View File
@@ -457,10 +457,10 @@
return 1
//Antag Creatures!
if(ispath(MP, /mob/living/simple_animal/hostile/carp))
/* if(ispath(MP, /mob/living/simple_animal/hostile/carp))
return 1
if(ispath(MP, /mob/living/simple_animal/hostile/giant_spider))
return 1
return 1 */
if(ispath(MP, /mob/living/simple_animal/borer))
return 1
if(ispath(MP, /mob/living/carbon/alien))
+16 -2
View File
@@ -106,7 +106,21 @@
var/datum/reagents/R = new/datum/reagents(50)
reagents = R
R.my_atom = src
R.add_reagent("zombiepowder", 10)
R.add_reagent("cryptobiolin", 15)
R.add_reagent("stoxin", 30)
R.add_reagent("mutetoxin", 15)
..()
return
/obj/item/weapon/pen/paralysis/attackby(var/obj/item/O as obj, var/mob/user as mob) //courtesy of FalseIncarnate!
if (O.is_open_container())
//Check if container is of the "glass" subtype (includes buckets, beakers, vials)
if(istype(O, /obj/item/weapon/reagent_containers/glass))
var/obj/item/weapon/reagent_containers/glass/C = O
//Check if container is empty
if(!C.reagents.total_volume)
user << "\red [C] is empty."
return
//Container not empty, transfer contents to tray
var/trans = C.reagents.trans_to(src, C.amount_per_transfer_from_this)
user << "\blue You transfer [trans] units of the solution to [src]."
+5 -1
View File
@@ -174,7 +174,11 @@
return min(rand(20,80),rand(20,80))
if (100 to 250-1)
return min(rand(20,65),rand(20,65))*/
if (1000000 to INFINITY)
if (5000000 to INFINITY)
return min(rand(200,300),rand(200,300))
if (4000000 to 5000000-1)
return min(rand(80,180),rand(80,180))
if (1000000 to 4000000-1)
return min(rand(50,160),rand(50,160))
if (200000 to 1000000-1)
return min(rand(25,80),rand(25,80))
+5 -3
View File
@@ -373,7 +373,9 @@
return min(rand(20,65),rand(20,65))
if (1000 to 10000-1)
return min(rand(10,20),rand(10,20))*/
if (4000000 to INFINITY)
if (5000000 to INFINITY)
return min(rand(200,300),rand(200,300))
if (4000000 to 5000000)
return min(rand(80,180),rand(80,180))
if (1000000 to 4000000)
return min(rand(50,160),rand(50,160))
@@ -455,8 +457,8 @@
//No animations will be performed by this proc.
/proc/electrocute_mob(mob/living/carbon/M as mob, var/power_source, var/obj/source, var/siemens_coeff = 1.0)
if(istype(M.loc,/obj/mecha)) return 0 //feckin mechs are dumb
//This is for performance optimization only.
//This is for performance optimization only.
//DO NOT modify siemens_coeff here. That is checked in human/electrocute_act()
if(istype(M,/mob/living/carbon/human))
var/mob/living/carbon/human/H = M
@@ -70,11 +70,11 @@ obj/item/weapon/gun/energy/laser/retro
name = "laser cannon"
desc = "With the L.A.S.E.R. cannon, the lasing medium is enclosed in a tube lined with uranium-235 and subjected to high neutron flux in a nuclear reactor core. This incredible technology may help YOU achieve high excitation rates with small laser volumes!"
icon_state = "lasercannon"
// fire_sound = 'sound/weapons/lasercannonfire.ogg'
fire_sound = 'sound/weapons/lasercannonfire.ogg'
origin_tech = "combat=4;materials=3;powerstorage=3"
projectile_type = "/obj/item/projectile/beam/heavylaser"
charge_cost = 500 // Half the cost of the regular laser, weaker projectile.
fire_delay = 3
charge_cost = 1250
fire_delay = 10
isHandgun()
return 0
+2 -2
View File
@@ -304,11 +304,11 @@ var/list/beam_master = list()
flag = "laser"
eyeblur = 2
//changing heavy lasers to shoot twice as fast as regular lasers, and do a bit more DPS.
//Heavy lasers now deal slightly more damage, but have a slower firing rate; overall DPS still identical to lasers.
/obj/item/projectile/beam/heavylaser
name = "heavy laser"
icon_state = "heavylaser"
damage = 25
damage = 50
/obj/item/projectile/beam/xray
name = "xray beam"
+3 -3
View File
@@ -246,7 +246,7 @@
ui_title = "Soda Dispens-o-matic"
energy = 100
max_energy = 100
dispensable_reagents = list("water","ice","coffee","tea","icetea","cola","spacemountainwind","dr_gibb","space_up","tonic","sodawater","lemon_lime","sugar","orangejuice","limejuice","tomatojuice" ,"watermelonjuice","berryjuice")
dispensable_reagents = list("water","ice", "milk", "soymilk", "coffee","tea","hot_coco", "cola","spacemountainwind","dr_gibb","space_up","tonic","sodawater","lemon_lime","sugar","orangejuice", "lemonjuice", "limejuice","tomatojuice", "banana", "watermelonjuice", "carrotjuice", "potato", "berryjuice")
hack_message = "You change the mode from 'McNano' to 'Pizza King'."
unhack_message = "You change the mode from 'Pizza King' to 'McNano'."
hacked_reagents = list("thirteenloko")
@@ -258,10 +258,10 @@
energy = 100
max_energy = 100
desc = "A technological marvel, supposedly able to mix just the mixture you'd like to drink the moment you ask for one."
dispensable_reagents = list("ice","cream","beer","kahlua","whiskey","wine","vodka","gin","rum","tequila","vermouth","cognac","ale","mead")
dispensable_reagents = list("ice","cream","beer","kahlua","whiskey","wine","vodka","gin","rum","tequilla","vermouth","cognac","ale","mead")
hack_message = "You disable the 'nanotrasen-are-cheap-bastards' lock, enabling hidden and very expensive boozes."
unhack_message = "You re-enable the 'nanotrasen-are-cheap-bastards' lock, disabling hidden and very expensive boozes."
hacked_reagents = list("goldschlager","patron", "nothing")
hacked_reagents = list("goldschlager","patron", "absinthe", "ethanol", "nothing")
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+48 -19
View File
@@ -510,8 +510,8 @@ datum
description = "An effective hypnotic used to treat insomnia."
reagent_state = LIQUID
color = "#E895CC" // rgb: 232, 149, 204
toxod = 40
oxyod = 40
oxyod = 100
toxod = 100
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -522,7 +522,7 @@ datum
if(15 to 25)
M.drowsyness = max(M.drowsyness, 20)
if(25 to INFINITY)
M.Weaken(20)
M.Paralyse(20)
M.drowsyness = max(M.drowsyness, 30)
data++
..()
@@ -1111,15 +1111,31 @@ datum
reagent_state = SOLID
color = "#C8A5DC" // rgb: 200, 165, 220
toxod = OVERDOSE/3
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
var/needs_update = M.mutations.len > 0
var/needs_update = 1 //M.mutations.len > 0
//Ryetalyn now cures by a random chance per on_mob_life call - Bone White
// 1 volume = ~2% chance
// 10 volume = ~17% chance
// 30 volume = ~38% chance
//if (rand(0, 50+volume) > 50 && ishuman(M))
if (volume >= 1 && ishuman(M))
for(var/block=1;block<=DNA_SE_LENGTH;block++)
M.dna.SetSEState(block,0)
genemutcheck(M,block,null,MUTCHK_FORCED)
M.update_mutations()
M.dna.struc_enzymes = M.dna.struc_enzymes_original
/* Old Code (non-functional)
M.mutations = list()
M.disabilities = 0
M.sdisabilities = 0
*/
// Might need to update appearance for hulk etc.
if(needs_update && ishuman(M))
@@ -1226,6 +1242,7 @@ datum
toxod = OVERDOSE/4.5
oxyod = OVERDOSE/4.5
custom_metabolism = 0.25 // Lasts 10 minutes for 15 units
scannable = 1
on_mob_life(var/mob/living/M as mob)
if (volume > overdose)
@@ -1434,14 +1451,17 @@ datum
return
plantbgone
scannable = 1
name = "Plant-B-Gone"
id = "plantbgone"
description = "A harmful toxic mixture to kill plantlife. Do not ingest!"
reagent_state = LIQUID
color = "#49002E" // rgb: 73, 0, 46
toxod = OVERDOSE/3
burnod = OVERDOSE/3
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
M.adjustToxLoss(2)
..()
return
// Clear off wallrot fungi
reaction_turf(var/turf/T, var/volume)
@@ -1486,7 +1506,6 @@ datum
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
toxod = OVERDOSE
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -1532,6 +1551,7 @@ datum
color = "#E9D66B" // rgb: 233, 214, 107
toxod = OVERDOSE/1.5
burnod = OVERDOSE/1.5
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -1585,6 +1605,7 @@ datum
color = "#ECD540" // rgb: 236, 213, 64
toxod = OVERDOSE
bruteod = OVERDOSE
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(M.stat == 2.0)
@@ -1683,7 +1704,7 @@ datum
return
if(!M) M = holder.my_atom
if(!alien || alien != IS_DIONA)
if(M.getOxyLoss()) M.adjustOxyLoss(-1*REM)
if(M.getOxyLoss() && prob(80)) M.adjustOxyLoss(-1*REM)
if(M.getBruteLoss() && prob(80)) M.heal_organ_damage(1*REM,0)
if(M.getFireLoss() && prob(80)) M.heal_organ_damage(0,1*REM)
if(M.getToxLoss() && prob(80)) M.adjustToxLoss(-1*REM)
@@ -1778,11 +1799,11 @@ datum
synaptizine
name = "Synaptizine"
id = "synaptizine"
description = "Synaptizine is used to treat various diseases."
description = "Synaptizine is a synaptic stimulant that can also be used to treat certain diseases."
reagent_state = LIQUID
color = "#C8A5DC" // rgb: 200, 165, 220
custom_metabolism = 0.01
toxod = OVERDOSE
custom_metabolism = 0.1
toxod = OVERDOSE/4.5
scannable = 1
on_mob_life(var/mob/living/M as mob)
@@ -1794,7 +1815,6 @@ datum
if(holder.has_reagent("mindbreaker"))
holder.remove_reagent("mindbreaker", 5)
M.hallucination = max(0, M.hallucination - 10)
if(prob(60)) M.adjustToxLoss(1)
..()
return
@@ -1840,6 +1860,7 @@ datum
color = "#BFFF00" // rgb: 191, 255, 0
toxod = OVERDOSE/1.5
burnod = OVERDOSE/1.5
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(M.stat == 2.0)
@@ -2068,6 +2089,18 @@ datum
M.status_flags &= ~FAKEDEATH
..()8*/
mutetoxin
name = "Mute Toxin"
id = "mutetoxin"
description = "A toxin that temporarily paralyzes the vocal cords."
reagent_state = LIQUID
color = "#F0F8FF" // rgb: 240, 248, 255
on_mob_life(var/mob/living/M)
if(!M) M = holder.my_atom
M.silent += REM + 1
..()
mindbreaker
name = "Mindbreaker Toxin"
id = "mindbreaker"
@@ -2232,6 +2265,7 @@ datum
description = "A powerful oxidizer that reacts with ethanol."
reagent_state = SOLID
color = "#605048" // rgb: 96, 80, 72
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -2370,6 +2404,7 @@ datum
nutriment_factor = 10 * REAGENTS_METABOLISM
color = "#BBEDA4" // rgb: 187, 237, 164
toxod = OVERDOSE/2
scannable = 1
on_mob_life(var/mob/living/M as mob)
if(!M) M = holder.my_atom
@@ -3402,12 +3437,6 @@ datum
rum
name = "Rum"
id = "rum"
description = "Yohoho and all that."
color = "#664300" // rgb: 102, 67, 0
deadrum
name = "Deadrum"
id = "rum"
description = "Popular with the sailors. Not very popular with everyone else."
color = "#664300" // rgb: 102, 67, 0
@@ -105,6 +105,13 @@ datum
required_reagents = list("inaprovaline" = 1, "ethanol" = 1, "oxygen" = 1)
result_amount = 3
paracetamol
name = "Paracetamol"
id = "paracetamol"
result = "paracetamol"
required_reagents = list("tramadol" = 1, "sugar" = 1, "water" = 1)
result_amount = 3
oxycodone
name = "Oxycodone"
id = "oxycodone"
@@ -494,6 +501,13 @@ datum
required_reagents = list("carpotoxin" = 1, "stoxin" = 1, "copper" = 1)
result_amount = 3
mutetoxin
name = "Mute toxin"
id = "mutetoxin"
result = "mutetoxin"
required_reagents = list("uranium" = 2, "water" = 1, "carbon" = 1)
result_amount = 2
rezadone
name = "Rezadone"
id = "rezadone"
@@ -201,7 +201,8 @@
icon_state = "thirteen_loko"
New()
..()
reagents.add_reagent("thirteenloko", 30)
reagents.add_reagent("thirteenloko", 25)
reagents.add_reagent("psilocybin", 5)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
@@ -221,8 +222,7 @@
icon_state = "starkist"
New()
..()
reagents.add_reagent("cola", 15)
reagents.add_reagent("orangejuice", 15)
reagents.add_reagent("brownstar", 30)
src.pixel_x = rand(-10.0, 10)
src.pixel_y = rand(-10.0, 10)
@@ -116,6 +116,10 @@
icon_state = "chocolateglass"
name = "Glass of chocolate"
desc = "Tasty"
if("hot_coco")
icon_state = "hot_coco"
name = "Glass of hot coco"
desc = "Delicious and cozy"
if("lemonjuice")
icon_state = "lemonglass"
name = "Glass of lemonjuice"
@@ -192,6 +196,10 @@
icon_state = "rumglass"
name = "Glass of Rum"
desc = "Now you want to Pray for a pirate suit, don't you?"
if("absinthe")
icon_state = "absinthebottle"
name = "Glass of Absinthe"
desc = "The green fairy is going to get you now!"
if("gintonic")
icon_state = "gintonicglass"
name = "Gin and Tonic"
@@ -356,6 +364,10 @@
icon_state = "carrotjuice"
name = "Glass of carrot juice"
desc = "It is just like a carrot but without crunching."
if("potato")
icon_state = "glass_brown"
name = "Glass of potato juice"
desc = "Who in the hell requests this? Gross!"
if("banana")
icon_state = "banana"
name = "Glass of banana juice"
@@ -1243,7 +1243,8 @@
icon_state = "chinese2"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("nutriment", 5)
reagents.add_reagent("carpotoxin", 1)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/chinese/newdles
@@ -1261,7 +1262,8 @@
icon_state = "chinese4"
New()
..()
reagents.add_reagent("nutriment", 6)
reagents.add_reagent("nutriment", 3)
reagents.add_reagent("rice", 3)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/syndicake
@@ -60,6 +60,7 @@
icon_state = "autoinjector"
item_state = "autoinjector"
amount_per_transfer_from_this = 5
possible_transfer_amounts = list(5)
volume = 5
/obj/item/weapon/reagent_containers/hypospray/autoinjector/New()
+9 -108
View File
@@ -82,116 +82,20 @@
// Bone White - Empty sypmtoms. There is a better way of handling this but this is much faster.
/datum/disease2/effect/invisible_stage_onea
name = "Non-existant Syndrome"
stage = 1
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_oneb
name = "Non-existant Syndrome"
stage = 1
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_twoa
name = "Non-existant Syndrome"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_twob
name = "Non-existant Syndrome"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_twoc
name = "Non-existant Syndrome"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_twod
name = "Non-existant Syndrome"
/datum/disease2/effect/invisible_stage_two
name = "Patience Syndrome"
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threea
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threeb
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threec
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threed
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threee
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threef
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threeg
name = "Non-existant Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_threeh
name = "Non-existant Syndrome"
/datum/disease2/effect/invisible_stage_three
name = "Delayed Syndrome"
stage = 3
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_foura
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourb
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourc
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourd
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_foure
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourf
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourg
name = "Non-existant Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
/datum/disease2/effect/invisible_stage_fourh
name = "Non-existant Syndrome"
/datum/disease2/effect/invisible_stage_four
name = "Anticipation Syndrome"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
return
@@ -227,10 +131,6 @@
activate(var/mob/living/carbon/mob,var/multiplier)
mob.gib()
/datum/disease2/effect/blank_stage_4
name = "Nonexistant Syndrome"
stage = 4
/datum/disease2/effect/radian
name = "Radian's Syndrome"
stage = 4
@@ -469,7 +369,8 @@
*/
/datum/disease2/effect/orbweapon
/*
/datum/disease2/effect/orbweapon //peopel are just griefing the shit out of each other with this..and with a constantly regenerating weapon that has a throwforce of 30? I can see why.
name = "Biolobulin Effect"
stage = 4
activate(var/mob/living/carbon/mob,var/multiplier)
@@ -488,7 +389,7 @@
if (slot == slot_l_hand)
canremove = 1 //curses!
..()
*/
/datum/disease2/effect/plasma
name = "Toxin Sublimation"
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 KiB

After

Width:  |  Height:  |  Size: 176 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 251 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 60 KiB

+11808 -11814
View File
File diff suppressed because it is too large Load Diff