Merge branch 'HydroTweaksNov2013' of https://github.com/Rolan7/-tg-station into HydroTweaksNov2013

Conflicts:
	html/changelog.html
This commit is contained in:
Aranclanos
2013-12-08 06:29:48 -03:00
8 changed files with 77 additions and 18 deletions
@@ -42,8 +42,12 @@
item_color = "medical" //Exists for washing machines. Is not different from latex gloves in any way.
/obj/item/clothing/gloves/botanic_leather
desc = "These leather gloves protect against thorns, barbs, prickles, spikes and other harmful objects of floral origin."
desc = "These leather gloves protect against thorns, barbs, prickles, spikes and other harmful objects of floral origin. They're also quite warm."
name = "botanist's leather gloves"
icon_state = "leather"
item_state = "ggloves"
permeability_coefficient = 0.9
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
+7 -1
View File
@@ -716,7 +716,13 @@
/obj/item/weapon/reagent_containers/food/snacks/grown/grass/attack_self(mob/user as mob)
user << "<span class='notice'>You prepare the astroturf.</span>"
new/obj/item/stack/tile/grass(user.loc)
var/location = get_turf(user)
var/grassAmt = 1 // The grass we're holding
for(var/obj/item/weapon/reagent_containers/food/snacks/grown/grass/grassToConvert in location) // The grass on the floor
grassAmt += 1
del(grassToConvert)
var/obj/item/stack/tile/newAstroturf = new /obj/item/stack/tile/grass(location)
newAstroturf.amount = grassAmt
del(src)
/obj/item/weapon/reagent_containers/food/snacks/grown/kudzupod
+37 -8
View File
@@ -58,6 +58,18 @@ obj/machinery/hydroponics/process()
if(nutrilevel <= 0 && myseed.plant_type != 1)
adjustHealth(-rand(1,3))
//Photosynthesis/////////////////////////////////////////////////////////
// Lack of light hurts non-mushrooms
if(isturf(loc))
var/turf/currentTurf = loc
var/lightAmt = currentTurf.lighting_lumcount
if(myseed.plant_type == 2) // Mushroom
if(lightAmt < 2)
adjustHealth(-1)
else // Non-mushroom
if(lightAmt < 4)
adjustHealth(-2)
//Water//////////////////////////////////////////////////////////////////
// Drink random amount of water
adjustWater(-rand(1,6))
@@ -348,8 +360,8 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
// Beakers, bottles, buckets, etc. Can't use is_open_container though.
if(istype(reagent_source, /obj/item/weapon/reagent_containers/glass/))
playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
// There needs to be a good amount of mutagen to actually work
// Requires 5 mutagen to possibly change species.
if(S.has_reagent("mutagen", 5))
switch(rand(100))
if(91 to 100) plantdies()
@@ -360,6 +372,11 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(11 to 20) mutateweed()
if(1 to 10) mutatepest()
else user << "Nothing happens..."
// 2 or 1 units is enough to change the yield and other stats.
else if(S.has_reagent("mutagen", 2))
hardmutate()
else if(S.has_reagent("mutagen", 1))
mutate()
// Antitoxin binds shit pretty well. So the tox goes significantly down
if(S.has_reagent("anti_toxin", 1))
@@ -462,10 +479,7 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
adjustNutri(round(S.get_reagent_amount("nutriment")*1))
// Poor man's mutagen.
if(S.has_reagent("radium", 1))
adjustHealth(-round(S.get_reagent_amount("radium")*1.5))
adjustToxic(round(S.get_reagent_amount("radium")*2))
if(S.has_reagent("radium", 10))
if(S.has_reagent("radium", 10) || S.has_reagent("uranium", 10))
switch(rand(100))
if(91 to 100) plantdies()
if(81 to 90) mutatespecie()
@@ -475,6 +489,19 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
if(11 to 20) mutateweed()
if(1 to 10) mutatepest()
else user << "Nothing happens..."
// Can change the yield and other stats, but requires more than mutagen
else if(S.has_reagent("radium", 5) || S.has_reagent("uranium", 5))
hardmutate()
else if(S.has_reagent("radium", 2) || S.has_reagent("uranium", 2))
mutate()
// After handling the mutating, we now handle the damage from adding crude radioactives...
if(S.has_reagent("uranium", 1))
adjustHealth(-round(S.get_reagent_amount("uranium")*1))
adjustToxic(round(S.get_reagent_amount("uranium")*2))
if(S.has_reagent("radium", 1))
adjustHealth(-round(S.get_reagent_amount("radium")*1))
adjustToxic(round(S.get_reagent_amount("radium")*3)) // Radium is harsher (OOC: also easier to produce)
// The best stuff there is. For testing/debugging.
if(S.has_reagent("adminordrazine", 1))
@@ -811,10 +838,12 @@ obj/machinery/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/hydroponics/proc/update_tray(mob/user = usr)
harvest = 0
lastproduce = age
if((yieldmod * myseed.yield) <= 0)
if(istype(myseed,/obj/item/seeds/replicapod/))
user << "You harvest from the [myseed.plantname]."
else if((yieldmod * myseed.yield) <= 0)
user << "\red You fail to harvest anything useful."
else
user << "You harvest from the [myseed.plantname]."
user << "You harvest [yieldmod * myseed.yield] items from the [myseed.plantname]."
if(myseed.oneharvest)
del(myseed)
planted = 0
+1 -1
View File
@@ -415,7 +415,7 @@
if(istype(W,/obj/item/weapon/storage/bag/ore))
var/obj/item/weapon/storage/bag/ore/S = W
if(S.collection_mode)
if(S.collection_mode == 1)
for(var/obj/item/weapon/ore/O in src.contents)
O.attackby(W,user)
return
+5 -3
View File
@@ -22,10 +22,12 @@
attack_self(mob/living/user as mob) //It's magic I ain't gonna explain how instant conversion with no tool works. -- Urist
var/location = get_turf(user)
for(var/obj/item/weapon/ore/glass/sandToConvert in location)
new /obj/item/stack/sheet/mineral/sandstone(location)
var/sandAmt = 1 // The sand we're holding
for(var/obj/item/weapon/ore/glass/sandToConvert in location) // The sand on the floor
sandAmt += 1
del(sandToConvert)
new /obj/item/stack/sheet/mineral/sandstone(location)
var/obj/item/stack/sheet/mineral/newSandstone = new /obj/item/stack/sheet/mineral/sandstone(location)
newSandstone.amount = sandAmt
del(src)
/obj/item/weapon/ore/plasma