mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 16:47:13 +01:00
Merge branch 'HydroTweaksNov2013' of https://github.com/Rolan7/-tg-station into HydroTweaksNov2013
Conflicts: html/changelog.html
This commit is contained in:
@@ -179,19 +179,23 @@
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
var/obj/item/weapon/storage/S = W
|
||||
if(S.use_to_pickup)
|
||||
if(S.collection_mode) //Mode is set to collect all items on a tile and we clicked on a valid one.
|
||||
if(S.collection_mode) //Mode is set to collect multiple items on a tile and we clicked on a valid one.
|
||||
if(isturf(src.loc))
|
||||
var/list/rejections = list()
|
||||
var/success = 0
|
||||
var/failure = 0
|
||||
|
||||
for(var/obj/item/I in src.loc)
|
||||
if(S.collection_mode == 2 && !istype(I,src.type)) // We're only picking up items of the target type
|
||||
failure = 1
|
||||
continue
|
||||
if(I.type in rejections) // To limit bag spamming: any given type only complains once
|
||||
continue
|
||||
if(!S.can_be_inserted(I)) // Note can_be_inserted still makes noise when the answer is no
|
||||
rejections += I.type // therefore full bags are still a little spammy
|
||||
failure = 1
|
||||
continue
|
||||
|
||||
success = 1
|
||||
S.handle_item_insertion(I, 1) //The 1 stops the "You put the [src] into [S]" insertion message from being displayed.
|
||||
if(success && !failure)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
var/display_contents_with_number //Set this to make the storage item group contents of the same type and display them as a number.
|
||||
var/allow_quick_empty //Set this variable to allow the object to have the 'empty' verb, which dumps all the contents on the floor.
|
||||
var/allow_quick_gather //Set this variable to allow the object to have the 'toggle mode' verb, which quickly collects all items from a tile.
|
||||
var/collection_mode = 1; //0 = pick one at a time, 1 = pick all on tile
|
||||
var/collection_mode = 1; //0 = pick one at a time, 1 = pick all on tile, 2 = pick all of a type
|
||||
|
||||
|
||||
/obj/item/weapon/storage/MouseDrop(obj/over_object)
|
||||
@@ -351,8 +351,10 @@
|
||||
set name = "Switch Gathering Method"
|
||||
set category = "Object"
|
||||
|
||||
collection_mode = !collection_mode
|
||||
collection_mode = (collection_mode+1)%3
|
||||
switch (collection_mode)
|
||||
if(2)
|
||||
usr << "[src] now picks up all items of a single type at once."
|
||||
if(1)
|
||||
usr << "[src] now picks up all items in a tile at once."
|
||||
if(0)
|
||||
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
+13
-1
@@ -54,6 +54,18 @@ should be listed in the changelog upon commit tho. Thanks. -->
|
||||
|
||||
<!-- DO NOT REMOVE OR MOVE THIS COMMENT! THIS MUST BE THE LAST NON-EMPTY LINE BEFORE THE LOGS #ADDTOCHANGELOGMARKER# -->
|
||||
|
||||
<div class='commit sansserif'>
|
||||
<h2 class='date'>8 December 2013</h2>
|
||||
<h3 class='author'>Rolan7 updated:</h3>
|
||||
<ul class='changes bgimages16'>
|
||||
<li class='tweak'>Leather gloves can be used to removes lights.</li>
|
||||
<li class='rscadd'>Plant, ore, and trash bags have a new option to pick up all items of single type</li>
|
||||
<li class='tweak'>Creating astroturf now works like sandstone, converting all the grass at once.</li>
|
||||
<li class='tweak'>Uranium and radium can be used instead of mutagen. 10 can mutate species, 5 or 2 mutate traits. Highly toxic.</li>
|
||||
<li class='experiment'>Plants require a little light to live. Mushroom require even less (2 units vs 4) and take less damage.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class='commit sansserif'>
|
||||
<h2 class='date'>5 December 2013</h2>
|
||||
<h3 class='author'>Razharas updated:</h3>
|
||||
@@ -76,7 +88,7 @@ should be listed in the changelog upon commit tho. Thanks. -->
|
||||
|
||||
|
||||
<div class='commit sansserif'>
|
||||
<h2 class='date'>12 March 2013</h2>
|
||||
<h2 class='date'>1 December 2013</h2>
|
||||
<h3 class='author'>cookingboy3 updated:</h3>
|
||||
<ul class='changes bgimages16'>
|
||||
<li class='rscadd'>Added three new buttons to the sandbox panel.</li>
|
||||
|
||||
Reference in New Issue
Block a user