mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-21 07:32:35 +00:00
103 lines
2.8 KiB
Plaintext
103 lines
2.8 KiB
Plaintext
/* Glass stack types
|
|
* Contains:
|
|
* Glass sheets
|
|
* Reinforced glass sheets
|
|
* Phoron Glass Sheets
|
|
* Reinforced Phoron Glass Sheets (AKA Holy fuck strong windows)
|
|
* Glass shards - TODO: Move this into code/game/object/item/weapons
|
|
*/
|
|
|
|
/*
|
|
* Glass sheets
|
|
*/
|
|
/obj/item/stack/material/glass
|
|
name = "glass"
|
|
singular_name = "glass sheet"
|
|
icon_state = "sheet-glass"
|
|
var/is_reinforced = 0
|
|
default_type = "glass"
|
|
drop_sound = 'sound/items/drop/glass.ogg'
|
|
pickup_sound = 'sound/items/pickup/glass.ogg'
|
|
|
|
/obj/item/stack/material/glass/attack_self(mob/user as mob)
|
|
construct_window(user)
|
|
|
|
/obj/item/stack/material/glass/attackby(obj/item/W, mob/user)
|
|
..()
|
|
if(!is_reinforced)
|
|
if(istype(W,/obj/item/stack/cable_coil))
|
|
var/obj/item/stack/cable_coil/CC = W
|
|
if (get_amount() < 1 || CC.get_amount() < 5)
|
|
to_chat(user, "<span class='warning'>You need five lengths of coil and one sheet of glass to make wired glass.</span>")
|
|
return
|
|
|
|
CC.use(5)
|
|
use(1)
|
|
to_chat(user, "<span class='notice'>You attach wire to the [name].</span>")
|
|
new /obj/item/stack/light_w(user.loc)
|
|
else if(istype(W, /obj/item/stack/rods))
|
|
var/obj/item/stack/rods/V = W
|
|
if (V.get_amount() < 1 || get_amount() < 1)
|
|
to_chat(user, "<span class='warning'>You need one rod and one sheet of glass to make reinforced glass.</span>")
|
|
return
|
|
|
|
var/obj/item/stack/material/glass/reinforced/RG = new (user.loc)
|
|
RG.add_fingerprint(user)
|
|
RG.add_to_stacks(user)
|
|
var/obj/item/stack/material/glass/G = src
|
|
src = null
|
|
var/replace = (user.get_inactive_hand()==G)
|
|
V.use(1)
|
|
G.use(1)
|
|
if (!G && replace)
|
|
user.put_in_hands(RG)
|
|
|
|
|
|
|
|
|
|
/*
|
|
* Reinforced glass sheets
|
|
*/
|
|
/obj/item/stack/material/glass/reinforced
|
|
name = "reinforced glass"
|
|
singular_name = "reinforced glass sheet"
|
|
icon_state = "sheet-rglass"
|
|
default_type = "reinforced glass"
|
|
is_reinforced = 1
|
|
|
|
/*
|
|
* Phoron Glass sheets
|
|
*/
|
|
/obj/item/stack/material/glass/phoronglass
|
|
name = "phoron glass"
|
|
singular_name = "phoron glass sheet"
|
|
icon_state = "sheet-phoronglass"
|
|
default_type = "phoron glass"
|
|
|
|
/obj/item/stack/material/glass/phoronglass/attackby(obj/item/W, mob/user)
|
|
..()
|
|
if( istype(W, /obj/item/stack/rods) )
|
|
var/obj/item/stack/rods/V = W
|
|
var/obj/item/stack/material/glass/phoronrglass/RG = new (user.loc)
|
|
RG.add_fingerprint(user)
|
|
RG.add_to_stacks(user)
|
|
V.use(1)
|
|
var/obj/item/stack/material/glass/G = src
|
|
src = null
|
|
var/replace = (user.get_inactive_hand()==G)
|
|
G.use(1)
|
|
if (!G && !RG && replace)
|
|
user.put_in_hands(RG)
|
|
else
|
|
return ..()
|
|
|
|
/*
|
|
* Reinforced phoron glass sheets
|
|
*/
|
|
/obj/item/stack/material/glass/phoronrglass
|
|
name = "reinforced phoron glass"
|
|
singular_name = "reinforced phoron glass sheet"
|
|
icon_state = "sheet-phoronrglass"
|
|
default_type = "reinforced phoron glass"
|
|
is_reinforced = 1
|