From 7f586323cc6de5ae9d0f9a5dbc01ea02a1660007 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 16 Dec 2018 18:11:47 +0100 Subject: [PATCH 1/7] discomode --- code/game/objects/items/etherealdiscoball.dm | 72 +++++++++++++++++++ icons/obj/device.dmi | Bin 47768 -> 48903 bytes 2 files changed, 72 insertions(+) create mode 100644 code/game/objects/items/etherealdiscoball.dm diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm new file mode 100644 index 00000000000..11b52c432a3 --- /dev/null +++ b/code/game/objects/items/etherealdiscoball.dm @@ -0,0 +1,72 @@ +/obj/item/etherealballdeployer + name = "Portable Ethereal Disco Ball" + desc = "Press the button for a deployment of slightly-unethical PARTY!" + icon = 'icons/obj/device.dmi' + icon_state = "ethdisco" + +/obj/item/etherealballdeployer/attack_self(mob/living/carbon/user) + .=..() + to_chat(user, "You deploy the Ethereal Disco Ball") + new /obj/structure/etherealball(user.loc) + qdel(src) + +/obj/structure/etherealball + name = "Ethereal Disco Ball" + desc = "The ethics of this discoball are questionable." + icon = 'icons/obj/device.dmi' + icon_state = "ethdisco_head_0" + anchored = TRUE + density = TRUE + var/TurnedOn = FALSE + var/current_color + var/TimerID + +/obj/structure/etherealball/Initialize() + . = ..() + update_icon() + +/obj/structure/etherealball/attack_hand(mob/living/carbon/human/user) + . = ..() + if(TurnedOn) + TurnOff() + to_chat(user, "You turn the disco ball off!") + else + TurnOn() + to_chat(user, "You turn the disco ball on!") + +/obj/structure/etherealball/AltClick(mob/living/carbon/human/user) + . = ..() + if(anchored) + to_chat(user, "You unlock the Ethereal Disco Ball") + anchored = FALSE + else + to_chat(user, "You lock the Ethereal Disco Ball") + anchored = FALSE + +/obj/structure/etherealball/proc/TurnOn() + TurnedOn = TRUE //Same + DiscoFever() + anchored = TRUE + +/obj/structure/etherealball/proc/TurnOff() + TurnedOn = FALSE + set_light(0) + remove_atom_colour(TEMPORARY_COLOUR_PRIORITY) + update_icon() + if(TimerID) + deltimer(TimerID) + +/obj/structure/etherealball/proc/DiscoFever() + remove_atom_colour(TEMPORARY_COLOUR_PRIORITY) + current_color = random_color() + set_light(4, 3, current_color) + add_atom_colour("#[current_color]", FIXED_COLOUR_PRIORITY) + update_icon() + TimerID = addtimer(CALLBACK(src, .proc/DiscoFever), 5, TIMER_STOPPABLE) //Call ourselves every 0.5 seconds to change colors + +/obj/structure/etherealball/update_icon() + cut_overlays() + icon_state = "ethdisco_head_[TurnedOn]" + var/mutable_appearance/base_overlay = mutable_appearance(icon, "ethdisco_base") + base_overlay.appearance_flags = RESET_COLOR + add_overlay(base_overlay) \ No newline at end of file diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 41f326111b44cddff1e9c5cb9f564a5441aefce5..8753600c92817bdbc1426b318211db2aa6606360 100644 GIT binary patch delta 8889 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 QM=_wKrmI?{Y!mu_0KL)|$p8QV From a46e1881c498d8c0cd956dfb60c71ed5e4d86336 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 16 Dec 2018 18:58:36 +0100 Subject: [PATCH 2/7] done --- code/game/objects/items/etherealdiscoball.dm | 4 +++- .../crates_lockers/closets/secure/bar.dm | 1 + icons/obj/device.dmi | Bin 48903 -> 48904 bytes tgstation.dme | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm index 11b52c432a3..e59f26a4dda 100644 --- a/code/game/objects/items/etherealdiscoball.dm +++ b/code/game/objects/items/etherealdiscoball.dm @@ -20,6 +20,8 @@ var/TurnedOn = FALSE var/current_color var/TimerID + var/range = 7 + var/power = 3 /obj/structure/etherealball/Initialize() . = ..() @@ -59,7 +61,7 @@ /obj/structure/etherealball/proc/DiscoFever() remove_atom_colour(TEMPORARY_COLOUR_PRIORITY) current_color = random_color() - set_light(4, 3, current_color) + set_light(range, power, current_color) add_atom_colour("#[current_color]", FIXED_COLOUR_PRIORITY) update_icon() TimerID = addtimer(CALLBACK(src, .proc/DiscoFever), 5, TIMER_STOPPABLE) //Call ourselves every 0.5 seconds to change colors diff --git a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm index f0c1495281a..e0f8d6e61c1 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm @@ -9,3 +9,4 @@ ..() for(var/i in 1 to 10) new /obj/item/reagent_containers/food/drinks/beer( src ) + new /obj/item/etherealballdeployer(src) diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 8753600c92817bdbc1426b318211db2aa6606360..74110bc2d11085104e85f73b5655c260c4fe1ef5 100644 GIT binary patch delta 51 zcmV-30L=e~{sM^p0+1vDjj<(m1RuM1%bW{P7WFrL4*0qH_VcNF`tg1FKU5Afu+}3) JsI$2QPP%*}8F>Hz delta 50 zcmV-20L}l1{sM>o0+1vDjIkwl1Rl3$_cB0P)Zg$q;OFYw&!_6?$M@y`P|h-_k&?md Iv$_OMx~t9|F#rGn diff --git a/tgstation.dme b/tgstation.dme index f7bfa7b00c2..e8813af037f 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -791,6 +791,7 @@ #include "code\game\objects\items\dna_injector.dm" #include "code\game\objects\items\documents.dm" #include "code\game\objects\items\eightball.dm" +#include "code\game\objects\items\etherealdiscoball.dm" #include "code\game\objects\items\extinguisher.dm" #include "code\game\objects\items\flamethrower.dm" #include "code\game\objects\items\gift.dm" From 8092369539f865f9846abd16ac5933aba1db4d6b Mon Sep 17 00:00:00 2001 From: MrDoomBringer Date: Tue, 18 Dec 2018 22:36:56 +0100 Subject: [PATCH 3/7] Update code/game/objects/items/etherealdiscoball.dm Co-Authored-By: Qustinnus --- code/game/objects/items/etherealdiscoball.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm index e59f26a4dda..78950919364 100644 --- a/code/game/objects/items/etherealdiscoball.dm +++ b/code/game/objects/items/etherealdiscoball.dm @@ -43,7 +43,7 @@ anchored = FALSE else to_chat(user, "You lock the Ethereal Disco Ball") - anchored = FALSE + anchored = TRUE /obj/structure/etherealball/proc/TurnOn() TurnedOn = TRUE //Same @@ -71,4 +71,4 @@ icon_state = "ethdisco_head_[TurnedOn]" var/mutable_appearance/base_overlay = mutable_appearance(icon, "ethdisco_base") base_overlay.appearance_flags = RESET_COLOR - add_overlay(base_overlay) \ No newline at end of file + add_overlay(base_overlay) From 954ba5c76bbd774ca8f27f7ada78884c3302e076 Mon Sep 17 00:00:00 2001 From: Qustinnus Date: Tue, 18 Dec 2018 23:40:30 +0100 Subject: [PATCH 4/7] wtf did i fuck up --- code/game/objects/items/etherealdiscoball.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm index 78950919364..5a7ed6bbab4 100644 --- a/code/game/objects/items/etherealdiscoball.dm +++ b/code/game/objects/items/etherealdiscoball.dm @@ -48,7 +48,6 @@ /obj/structure/etherealball/proc/TurnOn() TurnedOn = TRUE //Same DiscoFever() - anchored = TRUE /obj/structure/etherealball/proc/TurnOff() TurnedOn = FALSE From 30f22b5f1adb8033ebd9e467bd62d072838f14e2 Mon Sep 17 00:00:00 2001 From: Qustinnus Date: Sun, 23 Dec 2018 17:42:40 +0100 Subject: [PATCH 5/7] yeet --- code/game/objects/items/etherealdiscoball.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm index 5a7ed6bbab4..25f8c576629 100644 --- a/code/game/objects/items/etherealdiscoball.dm +++ b/code/game/objects/items/etherealdiscoball.dm @@ -6,7 +6,7 @@ /obj/item/etherealballdeployer/attack_self(mob/living/carbon/user) .=..() - to_chat(user, "You deploy the Ethereal Disco Ball") + to_chat(user, "You deploy the Ethereal Disco Ball.") new /obj/structure/etherealball(user.loc) qdel(src) @@ -39,10 +39,10 @@ /obj/structure/etherealball/AltClick(mob/living/carbon/human/user) . = ..() if(anchored) - to_chat(user, "You unlock the Ethereal Disco Ball") + to_chat(user, "You unlock the disco ball.") anchored = FALSE else - to_chat(user, "You lock the Ethereal Disco Ball") + to_chat(user, "You lock the disco ball.") anchored = TRUE /obj/structure/etherealball/proc/TurnOn() From dcbbfa81f6ab4c9c9773631648142ab9b762d83f Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 23 Dec 2018 17:49:11 +0100 Subject: [PATCH 6/7] reee --- code/game/objects/items/etherealdiscoball.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/etherealdiscoball.dm b/code/game/objects/items/etherealdiscoball.dm index 25f8c576629..685e83b8940 100644 --- a/code/game/objects/items/etherealdiscoball.dm +++ b/code/game/objects/items/etherealdiscoball.dm @@ -43,7 +43,7 @@ anchored = FALSE else to_chat(user, "You lock the disco ball.") - anchored = TRUE + anchored = TRUE /obj/structure/etherealball/proc/TurnOn() TurnedOn = TRUE //Same From 9a4806a7a5c43746a3e3817073344d1ea5090363 Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 27 Dec 2018 00:24:41 +0100 Subject: [PATCH 7/7] fix --- .../objects/structures/crates_lockers/closets/secure/bar.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm index e0f8d6e61c1..7a25e906654 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/bar.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/bar.dm @@ -9,4 +9,4 @@ ..() for(var/i in 1 to 10) new /obj/item/reagent_containers/food/drinks/beer( src ) - new /obj/item/etherealballdeployer(src) + new /obj/item/etherealballdeployer(src)