Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebalances black and green core reactions also adds three items to green cores (fug) #14649

Merged
merged 14 commits into from Apr 23, 2017
21 changes: 21 additions & 0 deletions code/game/objects/items/slime_heart.dm
@@ -0,0 +1,21 @@
/obj/item/slime_heart
name = "slime heart"
desc = "You devil..."
icon = 'icons/mob/slimes.dmi'
icon_state = "Slime-Heart"
item_state = "Slime-Heart"
w_class = W_CLASS_TINY

/obj/item/slime_heart/New()
processing_objects.Add(src)
..()

/obj/item/slime_heart/process()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change this to OnMobLife(var/mob) and remove the New code

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dang c*ders

Copy link
Author

@ghost ghost Apr 23, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wait isn't that the old code?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh nvm

if(iscarbon(loc))
var/mob/living/carbon/C = loc
if(C.is_holding_item(src))
if(C.dna && C.dna.mutantrace == "slime")
C.adjustToxLoss(-3)
else
C.adjustToxLoss(5)
spawn(1 SECONDS)
21 changes: 20 additions & 1 deletion code/game/objects/items/stacks/tiles/tile_types.dm
Expand Up @@ -142,4 +142,23 @@
siemens_coefficient = 1
max_amount = 60

material = "fabric"
material = "fabric"

obj/item/stack/tile/slime
name = "tile of slime"
desc = "A flat piece of slime made through xenobiology"
icon_state = "tile-slime"
w_class = W_CLASS_MEDIUM
force = 1
throwforce = 1.0
throw_speed = 5
throw_range = 20
flags = FPRINT
siemens_coefficient = 1
max_amount = 30

/obj/item/stack/tile/slime/adjust_slowdown(mob/living/L, current_slowdown)
if(L.dna.mutantrace == "slime")
return -1
else
return current_slowdown+5
13 changes: 12 additions & 1 deletion code/game/turfs/simulated/floor.dm
Expand Up @@ -111,6 +111,8 @@ turf/simulated/floor/update_icon()
else if(is_plating())
if(!broken && !burnt)
icon_state = icon_plating //Because asteroids are 'platings' too.
else if(is_slime_floor())
icon_state = "tile-slime"
else if(is_light_floor())
var/obj/item/stack/tile/light/T = floor_tile
if(T.on)
Expand Down Expand Up @@ -171,7 +173,6 @@ turf/simulated/floor/update_icon()
else if(is_arcade_floor())
if(!broken && !burnt)
icon_state = "arcade"

else if(is_wood_floor())
if(!broken && !burnt)
if( !(icon_state in wood_icons) )
Expand Down Expand Up @@ -260,6 +261,12 @@ turf/simulated/floor/update_icon()
return 1
return 0

/turf/simulated/floor/is_slime_floor()
if(istype(floor_tile,/obj/item/stack/tile/slime))
return 1
else
return 0

/turf/simulated/floor/is_plating()
if(!floor_tile)
return 1
Expand Down Expand Up @@ -293,6 +300,10 @@ turf/simulated/floor/update_icon()
else if(is_grass_floor())
src.icon_state = "sand[pick("1","2","3")]"
broken = 1
else if(is_slime_floor())
spawn(rand(2,10))
make_plating()
return //slime burns up or completely loses form
else if(is_mineral_floor())
if(material=="diamond")
return //diamond doesn't break
Expand Down
2 changes: 2 additions & 0 deletions code/game/turfs/turf.dm
Expand Up @@ -240,6 +240,8 @@
return 0
/turf/proc/is_arcade_floor()
return 0
/turf/proc/is_slime_floor()
return 0
/turf/proc/is_mineral_floor()
return 0
/turf/proc/return_siding_icon_state() //used for grass floors, which have siding.
Expand Down
139 changes: 64 additions & 75 deletions code/modules/reagents/Chemistry-Recipes.dm
Expand Up @@ -947,85 +947,44 @@
required_other = 1
required_container = /obj/item/slime_extract/green

/datum/chemical_reaction/slimeperidaxon
name = "Slime Peridaxon"
id = "m_peridaxon"
result = null
required_reagents = list(WATER = 5)
result_amount = 1
required_container = /obj/item/slime_extract/green
required_other = 1

/datum/chemical_reaction/slimeperidaxon/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "peridaxon bottle"
B.reagents.add_reagent(PERIDAXON, 5)
B.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimedexplus
name = "Slime Dexalin Plus"
id = "m_dexplus"
result = null
required_reagents = list(OXYGEN = 5)
result_amount = 1
required_container = /obj/item/slime_extract/green
required_other = 1

/datum/chemical_reaction/slimedexplus/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "Dexalin Plus Bottle"
B.reagents.add_reagent(DEXALINP, 5)
B.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimesdelight
name = "Slime Doctor's Delight"
id = "m_doctordelight"
/datum/chemical_reaction/slimecoat
name = "Slime Coat"
id = "slimecoat"
result = null
required_reagents = list(SUGAR = 5)
result_amount = 1
required_container = /obj/item/slime_extract/green
required_other = 1

/datum/chemical_reaction/slimesdelight/on_reaction(var/datum/reagents/holder)
/datum/chemical_reaction/slimecoat/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "Doctor's Delight bottle"
B.reagents.add_reagent(DOCTORSDELIGHT, 10)
B.forceMove(get_turf(holder.my_atom))
var/obj/item/clothing/suit/raincoat/R = new /obj/item/clothing/suit/raincoat
R.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimebicard
name = "Slime Bicaridine"
id = "m_bicaridine"
/datum/chemical_reaction/slimetile
name = "Slime tiles"
id = "slimetile"
result = null
required_reagents = list(CARBON = 5)
result_amount = 1
required_reagents = list(IRON = 5)
required_container = /obj/item/slime_extract/green
required_other = 1

/datum/chemical_reaction/slimebicard/on_reaction(var/datum/reagents/holder)
/datum/chemical_reaction/slimetile/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "bicaridine bottle"
B.reagents.add_reagent(BICARIDINE, 10)
B.forceMove(get_turf(holder.my_atom))
var/obj/item/stack/tile/slime/T = new /obj/item/stack/tile/slime
T.amount = 5
T.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimedermaline
name = "Slime Dermaline"
id = "m_dermaline"
/datum/chemical_reaction/slimeheart
name = "slime heart"
id = "R_heart"
result = null
required_reagents = list(PHOSPHORUS = 5)
result_amount = 1
required_reagents = list(BLOOD = 5)
required_container = /obj/item/slime_extract/green
required_other = 1

/datum/chemical_reaction/slimedermaline/on_reaction(var/datum/reagents/holder)
/datum/chemical_reaction/slimeheart/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "Dermaline bottle"
B.reagents.add_reagent(DERMALINE, 5)
B.forceMove(get_turf(holder.my_atom))
var/obj/item/slime_heart/S = new /obj/item/slime_heart
S.forceMove(get_turf(holder.my_atom))

//Metal
/datum/chemical_reaction/slimemetal
Expand Down Expand Up @@ -1643,32 +1602,62 @@
/datum/chemical_reaction/slimemutate2/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")

/datum/chemical_reaction/slimemednanobots
name = "Slime Medical Nanobots"
id = "m_mednanobots"
result = MEDNANOBOTS
/datum/chemical_reaction/slimenanobots
name = "Slime Nanobots"
id = "s_nanobots"
result = NANOBOTS
required_reagents = list(GOLD = 5)
result_amount = 1
result_amount = 5
required_other = 1
required_container = /obj/item/slime_extract/black
alert_admins = ALERT_ALL_REAGENTS

/datum/chemical_reaction/slimemednanobots/on_reaction(var/datum/reagents/holder)
/datum/chemical_reaction/slimenanobots/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")

/datum/chemical_reaction/slimecomnanobots
name = "Slime Combat Nanobots"
id = "m_comnanobots"
result = COMNANOBOTS
required_reagents = list(URANIUM = 5)
/datum/chemical_reaction/slimeperidaxon
name = "Slime Peridaxon"
id = "m_peridaxon"
result = null
required_reagents = list(WATER = 5)
result_amount = 1
required_container = /obj/item/slime_extract/black
required_other = 1

/datum/chemical_reaction/slimeperidaxon/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "peridaxon bottle"
B.reagents.add_reagent(PERIDAXON, 5)
B.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimesdelight
name = "Slime Doctor's Delight"
id = "m_doctordelight"
result = null
required_reagents = list(SUGAR = 5)
result_amount = 1
required_container = /obj/item/slime_extract/black
alert_admins = ALERT_ALL_REAGENTS
required_other = 1

/datum/chemical_reaction/slimecomnanobots/on_reaction(var/datum/reagents/holder)
/datum/chemical_reaction/slimesdelight/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
var/obj/item/weapon/reagent_containers/glass/bottle/B = new /obj/item/weapon/reagent_containers/glass/bottle
B.name = "Doctor's Delight bottle"
B.reagents.add_reagent(DOCTORSDELIGHT, 10)
B.forceMove(get_turf(holder.my_atom))

/datum/chemical_reaction/slimerezadone
name = "Slime Rezadone"
id = "m_rezadone"
result = REZADONE
required_reagents = list(BLOOD = 5)
result_amount = 10
required_container = /obj/item/slime_extract/black
required_other = 1

/datum/chemical_reaction/slimerezadone/on_reaction(var/datum/reagents/holder)
feedback_add_details("slime_cores_used", "[replacetext(name, " ", "_")]")
//Oil
/datum/chemical_reaction/slimeexplosion
name = "Slime Explosion"
Expand Down
Binary file modified icons/mob/slimes.dmi
Binary file not shown.
Binary file modified icons/obj/items.dmi
Binary file not shown.
Binary file modified icons/turf/floors.dmi
Binary file not shown.
1 change: 1 addition & 0 deletions vgstation13.dme
Expand Up @@ -642,6 +642,7 @@
#include "code\game\objects\items\mommiprints.dm"
#include "code\game\objects\items\ornaments.dm"
#include "code\game\objects\items\shooting_range.dm"
#include "code\game\objects\items\slime_heart.dm"
#include "code\game\objects\items\toys.dm"
#include "code\game\objects\items\trader.dm"
#include "code\game\objects\items\trash.dm"
Expand Down