mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-01-22 06:54:24 +00:00
* Hydroponics area re-arranged to require less running around. * Both Nettles and Death Nettles now can be used in a blender to extact their reagents. * Seeds Crates can now be ordered by the QM. Contains a packet of all the basic seeds available from the seed vendor. * Exotic Seeds Crates can now be ordered by the QM. Contains one packet of the following each: Egg Plant, Nettle, Fly Amanita Mycelium, Liberty Cap Mycelium, Plump Helmet Mycelium * "Egg Plant" added (not a typo). Eggs may not be used on Seed Extractor to make Egg Seeds (that would just be silly). The only way to get an Egg Plant is through mutating an Eggplant or an Exotic Seeds crate. * Plant-b-gone spray bottles now kill weeds and pests better then before. Also slightly less toxic. * Weed spray and Pest Spray both removed since they're redundant. * Potatos added. Can be used to make Fries (Potato + Processor), Cheesy Fries (Microwave: Fries + 1 cheese), Loaded Baked Potato (Microwave: 1 Potato + 1 Cheese) * Beaker I intended to add in previous update finally got added (in kitchen). * AI can no longer pick plants in hydroponics. The Cybernetic Horticulturalist Society has filed a complaint. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@499 316c924e-a436-60f5-8080-3fe189b3f50e
240 lines
5.9 KiB
Plaintext
240 lines
5.9 KiB
Plaintext
/obj/crate
|
|
desc = "A crate."
|
|
name = "Crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "crate"
|
|
density = 1
|
|
var/openicon = "crateopen"
|
|
var/closedicon = "crate"
|
|
req_access = null
|
|
var/opened = 0
|
|
var/locked = 0
|
|
flags = FPRINT
|
|
m_amt = 7500
|
|
mouse_drag_pointer = MOUSE_ACTIVE_POINTER
|
|
|
|
/obj/crate/internals
|
|
desc = "A internals crate."
|
|
name = "Internals crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "o2crate"
|
|
density = 1
|
|
openicon = "o2crateopen"
|
|
closedicon = "o2crate"
|
|
|
|
/obj/crate/medical
|
|
desc = "A medical crate."
|
|
name = "Medical crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "medicalcrate"
|
|
density = 1
|
|
openicon = "medicalcrateopen"
|
|
closedicon = "medicalcrate"
|
|
|
|
/obj/crate/rcd
|
|
desc = "A crate for the storage of the RCD."
|
|
name = "RCD crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "crate"
|
|
density = 1
|
|
openicon = "crateopen"
|
|
closedicon = "crate"
|
|
|
|
/obj/crate/freezer
|
|
desc = "A freezer."
|
|
name = "Freezer"
|
|
icon = 'storage.dmi'
|
|
icon_state = "freezer"
|
|
density = 1
|
|
openicon = "freezeropen"
|
|
closedicon = "freezer"
|
|
|
|
/obj/crate/bin
|
|
desc = "A large bin."
|
|
name = "Large bin"
|
|
icon = 'storage.dmi'
|
|
icon_state = "largebin"
|
|
density = 1
|
|
openicon = "largebinopen"
|
|
closedicon = "largebin"
|
|
|
|
/obj/crate/secure/weapon
|
|
desc = "A secure weapons crate."
|
|
name = "Weapons crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "weaponcrate"
|
|
density = 1
|
|
openicon = "weaponcrateopen"
|
|
closedicon = "weaponcrate"
|
|
|
|
/obj/crate/secure/plasma
|
|
desc = "A secure plasma crate."
|
|
name = "Plasma crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "plasmacrate"
|
|
density = 1
|
|
openicon = "plasmacrateopen"
|
|
closedicon = "plasmacrate"
|
|
|
|
/obj/crate/secure/gear
|
|
desc = "A secure gear crate."
|
|
name = "Gear crate"
|
|
icon = 'storage.dmi'
|
|
icon_state = "secgearcrate"
|
|
density = 1
|
|
openicon = "secgearcrateopen"
|
|
closedicon = "secgearcrate"
|
|
|
|
/obj/crate/secure/bin
|
|
desc = "A secure bin."
|
|
name = "Secure bin"
|
|
icon_state = "largebins"
|
|
openicon = "largebinsopen"
|
|
closedicon = "largebins"
|
|
redlight = "largebinr"
|
|
greenlight = "largebing"
|
|
sparks = "largebinsparks"
|
|
emag = "largebinemag"
|
|
|
|
/obj/crate/secure
|
|
desc = "A secure crate."
|
|
name = "Secure crate"
|
|
icon_state = "securecrate"
|
|
openicon = "securecrateopen"
|
|
closedicon = "securecrate"
|
|
var/redlight = "securecrater"
|
|
var/greenlight = "securecrateg"
|
|
var/sparks = "securecratesparks"
|
|
var/emag = "securecrateemag"
|
|
var/broken = 0
|
|
locked = 1
|
|
|
|
/obj/crate/hydroponics
|
|
name = "Hydroponics crate"
|
|
desc = "All you need to destroy those pesky weeds and pests."
|
|
icon = 'storage.dmi'
|
|
icon_state = "hydrocrate"
|
|
openicon = "hydrocrateopen"
|
|
closedicon = "hydrocrate"
|
|
density = 1
|
|
/* New() // This stuff shouldn't be here, it should be in /datum/supply_packs/hydroponics
|
|
..()
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/minihoe(src)
|
|
new /obj/item/weapon/weedspray(src)
|
|
new /obj/item/weapon/weedspray(src)
|
|
new /obj/item/weapon/pestspray(src)
|
|
new /obj/item/weapon/pestspray(src)
|
|
new /obj/item/weapon/pestspray(src) */
|
|
|
|
/obj/crate/hydroponics/prespawned
|
|
//This exists so the prespawned hydro crates spawn with their contents.
|
|
/* name = "Hydroponics crate"
|
|
desc = "All you need to destroy those pesky weeds and pests."
|
|
icon = 'storage.dmi'
|
|
icon_state = "hydrocrate"
|
|
openicon = "hydrocrateopen"
|
|
closedicon = "hydrocrate"
|
|
density = 1*/
|
|
New()
|
|
..()
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/plantbgone(src)
|
|
new /obj/item/weapon/minihoe(src)
|
|
// new /obj/item/weapon/weedspray(src)
|
|
// new /obj/item/weapon/weedspray(src)
|
|
// new /obj/item/weapon/pestspray(src)
|
|
// new /obj/item/weapon/pestspray(src)
|
|
// new /obj/item/weapon/pestspray(src)
|
|
|
|
/obj/crate/New()
|
|
..()
|
|
spawn(1)
|
|
if(!opened) // if closed, any item at the crate's loc is put in the contents
|
|
for(var/obj/item/I in src.loc)
|
|
if(I.density || I.anchored || I == src) continue
|
|
I.loc = src
|
|
|
|
/obj/crate/secure/New()
|
|
..()
|
|
if(locked)
|
|
overlays = null
|
|
overlays += redlight
|
|
else
|
|
overlays = null
|
|
overlays += greenlight
|
|
|
|
/obj/crate/rcd/New()
|
|
..()
|
|
new /obj/item/weapon/rcd_ammo(src)
|
|
new /obj/item/weapon/rcd_ammo(src)
|
|
new /obj/item/weapon/rcd_ammo(src)
|
|
new /obj/item/weapon/rcd(src)
|
|
|
|
/obj/crate/proc/open()
|
|
playsound(src.loc, 'click.ogg', 15, 1, -3)
|
|
|
|
for(var/obj/O in src)
|
|
O.loc = get_turf(src)
|
|
for(var/mob/M in src)
|
|
M.loc = get_turf(src)
|
|
|
|
icon_state = openicon
|
|
src.opened = 1
|
|
|
|
/obj/crate/proc/close()
|
|
playsound(src.loc, 'click.ogg', 15, 1, -3)
|
|
for(var/obj/O in get_turf(src))
|
|
if(O.density || O.anchored || O == src) continue
|
|
O.loc = src
|
|
icon_state = closedicon
|
|
src.opened = 0
|
|
|
|
/obj/crate/attack_hand(mob/user as mob)
|
|
if(!locked)
|
|
if(opened) close()
|
|
else open()
|
|
else
|
|
user << "\red It's locked."
|
|
return
|
|
|
|
/obj/crate/secure/attack_hand(mob/user as mob)
|
|
if(locked && allowed(user) && !broken)
|
|
user << "\blue You unlock the [src]."
|
|
src.locked = 0
|
|
overlays = null
|
|
overlays += greenlight
|
|
return ..()
|
|
|
|
/obj/crate/secure/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
if(istype(W, /obj/item/weapon/card) && src.allowed(user) && !locked && !opened && !broken)
|
|
user << "\red You lock the [src]."
|
|
src.locked = 1
|
|
overlays = null
|
|
overlays += redlight
|
|
return
|
|
else if (istype(W, /obj/item/weapon/card/emag) && locked &&!broken)
|
|
overlays = null
|
|
overlays += emag
|
|
overlays += sparks
|
|
spawn(6) overlays -= sparks //Tried lots of stuff but nothing works right. so i have to use this *sadface*
|
|
playsound(src.loc, 'sparks4.ogg', 75, 1)
|
|
src.locked = 0
|
|
src.broken = 1
|
|
user << "\blue You unlock the [src]."
|
|
return
|
|
|
|
return ..()
|
|
|
|
/obj/crate/attack_paw(mob/user as mob)
|
|
return attack_hand(user)
|
|
|
|
/obj/crate/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
|
if(opened)
|
|
user.drop_item()
|
|
if(W)
|
|
W.loc = src.loc
|
|
else return attack_hand(user) |