[MIRROR] Enable Ambrosia Gaia, attempt balance (#962)
* Enable Ambrosia Gaia, attempt balance * Update ambrosia.dm * Delete ambrosia.dm.rej
This commit is contained in:
committed by
kevinz000
parent
148666efed
commit
176c2003f9
@@ -39,7 +39,7 @@
|
|||||||
species = "ambrosiadeus"
|
species = "ambrosiadeus"
|
||||||
plantname = "Ambrosia Deus"
|
plantname = "Ambrosia Deus"
|
||||||
product = /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/deus
|
product = /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/deus
|
||||||
mutatelist = list()
|
mutatelist = list(/obj/item/seeds/ambrosia/gaia)
|
||||||
reagents_add = list("omnizine" = 0.15, "synaptizine" = 0.15, "space_drugs" = 0.1, "vitamin" = 0.04, "nutriment" = 0.05)
|
reagents_add = list("omnizine" = 0.15, "synaptizine" = 0.15, "space_drugs" = 0.1, "vitamin" = 0.04, "nutriment" = 0.05)
|
||||||
rarity = 40
|
rarity = 40
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@
|
|||||||
species = "ambrosia_gaia"
|
species = "ambrosia_gaia"
|
||||||
plantname = "Ambrosia Gaia"
|
plantname = "Ambrosia Gaia"
|
||||||
product = /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/gaia
|
product = /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/gaia
|
||||||
mutatelist = list()
|
mutatelist = list(/obj/item/seeds/ambrosia/deus)
|
||||||
reagents_add = list("earthsblood" = 0.05, "nutriment" = 0.06, "vitamin" = 0.05)
|
reagents_add = list("earthsblood" = 0.05, "nutriment" = 0.06, "vitamin" = 0.05)
|
||||||
rarity = 30 //These are some pretty good plants right here
|
rarity = 30 //These are some pretty good plants right here
|
||||||
genes = list()
|
genes = list()
|
||||||
|
|||||||
@@ -27,6 +27,8 @@
|
|||||||
var/unwrenchable = 1
|
var/unwrenchable = 1
|
||||||
var/recent_bee_visit = FALSE //Have we been visited by a bee recently, so bees dont overpollinate one plant
|
var/recent_bee_visit = FALSE //Have we been visited by a bee recently, so bees dont overpollinate one plant
|
||||||
var/using_irrigation = FALSE //If the tray is connected to other trays via irrigation hoses
|
var/using_irrigation = FALSE //If the tray is connected to other trays via irrigation hoses
|
||||||
|
var/self_sufficiency_req = 20 //Required total dose to make a self-sufficient hydro tray. 1:1 with earthsblood.
|
||||||
|
var/self_sufficiency_progress = 0
|
||||||
var/self_sustaining = FALSE //If the tray generates nutrients and water on its own
|
var/self_sustaining = FALSE //If the tray generates nutrients and water on its own
|
||||||
|
|
||||||
|
|
||||||
@@ -329,6 +331,9 @@
|
|||||||
if(!self_sustaining)
|
if(!self_sustaining)
|
||||||
to_chat(user, "<span class='info'>Water: [waterlevel]/[maxwater]</span>")
|
to_chat(user, "<span class='info'>Water: [waterlevel]/[maxwater]</span>")
|
||||||
to_chat(user, "<span class='info'>Nutrient: [nutrilevel]/[maxnutri]</span>")
|
to_chat(user, "<span class='info'>Nutrient: [nutrilevel]/[maxnutri]</span>")
|
||||||
|
if(self_sufficiency_progress > 0)
|
||||||
|
var/percent_progress = round(self_sufficiency_progress * 100 / self_sufficiency_req)
|
||||||
|
to_chat(user, "<span class='info'>Treatment for self-sustenance are [percent_progress]% complete.</span>")
|
||||||
else
|
else
|
||||||
to_chat(user, "<span class='info'>It doesn't require any water or nutrients.</span>")
|
to_chat(user, "<span class='info'>It doesn't require any water or nutrients.</span>")
|
||||||
|
|
||||||
@@ -505,6 +510,14 @@
|
|||||||
mutmod = 0
|
mutmod = 0
|
||||||
adjustNutri(round(S.get_reagent_amount("robustharvestnutriment") *1 ))
|
adjustNutri(round(S.get_reagent_amount("robustharvestnutriment") *1 ))
|
||||||
|
|
||||||
|
// Ambrosia Gaia produces earthsblood.
|
||||||
|
if(S.has_reagent("earthsblood"))
|
||||||
|
self_sufficiency_progress += S.get_reagent_amount("earthsblood")
|
||||||
|
if(self_sufficiency_progress >= self_sufficiency_req)
|
||||||
|
become_self_sufficient()
|
||||||
|
else if(!self_sustaining)
|
||||||
|
to_chat(user, "<span class='notice'>[src] warms as it might on a spring day under a genuine Sun.</span>")
|
||||||
|
|
||||||
// Antitoxin binds shit pretty well. So the tox goes significantly down
|
// Antitoxin binds shit pretty well. So the tox goes significantly down
|
||||||
if(S.has_reagent("charcoal", 1))
|
if(S.has_reagent("charcoal", 1))
|
||||||
adjustToxic(-round(S.get_reagent_amount("charcoal") * 2))
|
adjustToxic(-round(S.get_reagent_amount("charcoal") * 2))
|
||||||
@@ -675,33 +688,7 @@
|
|||||||
|
|
||||||
/obj/machinery/hydroponics/attackby(obj/item/O, mob/user, params)
|
/obj/machinery/hydroponics/attackby(obj/item/O, mob/user, params)
|
||||||
//Called when mob user "attacks" it with object O
|
//Called when mob user "attacks" it with object O
|
||||||
if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/gaia)) //Checked early on so it doesn't have to deal with composting checks
|
if(istype(O, /obj/item/weapon/reagent_containers) ) // Syringe stuff (and other reagent containers now too)
|
||||||
if(self_sustaining)
|
|
||||||
to_chat(user, "<span class='warning'>This [name] is already self-sustaining!</span>")
|
|
||||||
return
|
|
||||||
if(myseed || weedlevel)
|
|
||||||
to_chat(user, "<span class='warning'>[src] needs to be clear of plants and weeds!</span>")
|
|
||||||
return
|
|
||||||
if(alert(user, "This will make [src] self-sustaining but consume [O] forever. Are you sure?", "[name]", "I'm Sure", "Abort") == "Abort" || !user)
|
|
||||||
return
|
|
||||||
if(!O || QDELETED(O))
|
|
||||||
return
|
|
||||||
if(!Adjacent(user))
|
|
||||||
return
|
|
||||||
if(self_sustaining)
|
|
||||||
to_chat(user, "<span class='warning'>This [name] is already self-sustaining!</span>")
|
|
||||||
return
|
|
||||||
if(myseed || weedlevel)
|
|
||||||
to_chat(user, "<span class='warning'>[src] needs to be clear of plants and weeds!</span>")
|
|
||||||
return
|
|
||||||
user.visible_message("<span class='notice'>[user] gently pulls open the soil for [O] and places it inside.</span>", "<span class='notice'>You tenderly root [O] into [src].</span>")
|
|
||||||
user.drop_item()
|
|
||||||
qdel(O)
|
|
||||||
visible_message("<span class='boldnotice'>[src] begins to glow with a beautiful light!</span>")
|
|
||||||
self_sustaining = TRUE
|
|
||||||
update_icon()
|
|
||||||
|
|
||||||
else if(istype(O, /obj/item/weapon/reagent_containers) ) // Syringe stuff (and other reagent containers now too)
|
|
||||||
var/obj/item/weapon/reagent_containers/reagent_source = O
|
var/obj/item/weapon/reagent_containers/reagent_source = O
|
||||||
|
|
||||||
if(istype(reagent_source, /obj/item/weapon/reagent_containers/syringe))
|
if(istype(reagent_source, /obj/item/weapon/reagent_containers/syringe))
|
||||||
@@ -930,6 +917,10 @@
|
|||||||
var/mob/living/simple_animal/hostile/C = new chosen
|
var/mob/living/simple_animal/hostile/C = new chosen
|
||||||
C.faction = list("plants")
|
C.faction = list("plants")
|
||||||
|
|
||||||
|
/obj/machinery/hydroponics/proc/become_self_sufficient() // Ambrosia Gaia effect
|
||||||
|
visible_message("<span class='boldnotice'>[src] begins to glow with a beautiful light!</span>")
|
||||||
|
self_sustaining = TRUE
|
||||||
|
update_icon()
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
/obj/machinery/hydroponics/soil //Not actually hydroponics at all! Honk!
|
/obj/machinery/hydroponics/soil //Not actually hydroponics at all! Honk!
|
||||||
|
|||||||
Reference in New Issue
Block a user