From 3406971e712261b1cc945d68385db82c3a78538b Mon Sep 17 00:00:00 2001 From: wraith-54321 <69217972+wraith-54321@users.noreply.github.com> Date: Thu, 29 Jun 2023 19:55:33 -0700 Subject: [PATCH 1/2] vent sus --- .../twitch_bits/events/australia_mode.dm | 19 +++++++++++++++++ .../modules/twitch_bits/events/base_event.dm | 7 +++++-- .../modules/twitch_bits/events/die_fate.dm | 21 +++++++++++++++++++ .../modules/twitch_bits/events/random_item.dm | 14 +++++++++++++ .../code/modules/twitch_bits/events/rod.dm | 12 +++++++++++ tgstation.dme | 4 ++++ 6 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 monkestation/code/modules/twitch_bits/events/australia_mode.dm create mode 100644 monkestation/code/modules/twitch_bits/events/die_fate.dm create mode 100644 monkestation/code/modules/twitch_bits/events/random_item.dm create mode 100644 monkestation/code/modules/twitch_bits/events/rod.dm diff --git a/monkestation/code/modules/twitch_bits/events/australia_mode.dm b/monkestation/code/modules/twitch_bits/events/australia_mode.dm new file mode 100644 index 000000000000..9204c81c2ae1 --- /dev/null +++ b/monkestation/code/modules/twitch_bits/events/australia_mode.dm @@ -0,0 +1,19 @@ +/datum/twitch_event/australia_mode + event_name = "Australia Mode" + event_duration = 15 MINUTES //effect is very minor so it lasts for a while + event_flags = TWITCH_AFFECTS_ALL + id_tag = "australia-mode" + +/datum/twitch_event/australia_mode/run_event(name) + . = ..() + + for(var/mob/living/target in targets) + var/matrix/m180 = matrix(target.transform) + m180.Turn(180) + animate(target, transform = m180, time = 3) + +/datum/twitch_event/australia_mode/end_event() + for(var/mob/living/target in targets) //I would like to figure out a way to make this check first but this should work for now + var/matrix/m180 = matrix(target.transform) + m180.Turn(180) + animate(target, transform = m180, time = 3) diff --git a/monkestation/code/modules/twitch_bits/events/base_event.dm b/monkestation/code/modules/twitch_bits/events/base_event.dm index 9c3d5dca7e8d..b38ecfb8691f 100644 --- a/monkestation/code/modules/twitch_bits/events/base_event.dm +++ b/monkestation/code/modules/twitch_bits/events/base_event.dm @@ -9,8 +9,10 @@ var/random_count = 0 ///list of targets var/list/targets = list() - ///the tag tied to this event + ///the tag tied to this event, should make these be defines at some point var/id_tag + ///should we announce this event + var/announce = TRUE /datum/twitch_event/proc/run_event(name) if(event_flags & TWITCH_AFFECTS_STREAMER) @@ -26,7 +28,8 @@ targets += picked living_players -= picked - minor_announce("[event_name] has just been triggered by [name].", "The Observers") + if(announce) + minor_announce("[event_name] has just been triggered by [name].", "The Observers") /datum/twitch_event/proc/end_event() return diff --git a/monkestation/code/modules/twitch_bits/events/die_fate.dm b/monkestation/code/modules/twitch_bits/events/die_fate.dm new file mode 100644 index 000000000000..9bb6dabfa845 --- /dev/null +++ b/monkestation/code/modules/twitch_bits/events/die_fate.dm @@ -0,0 +1,21 @@ +/datum/twitch_event/free_wiz + event_name = "Change Ook's Fate" + event_duration = 1 SECONDS + event_flags = TWITCH_AFFECTS_STREAMER + id_tag = "ook-die-fate" + +/datum/twitch_event/free_wiz/run_event(name) + . = ..() + + for(var/target in targets) + var/mob/living/future_wiz = target + var/obj/item/dice/d20/fate/one_use/the_die = new(get_turf(future_wiz)) + future_wiz.put_in_hands(the_die) + to_chat(future_wiz, span_warning("Something apears in your hand and- oh no you fumbled it. That can't be good.")) + the_die.diceroll(future_wiz) + +//this is more of a joke, could maybe cost 100k bits or something +/datum/twitch_event/free_wiz/everyone + event_name = "Change Everyone's Fate" + event_flags = TWITCH_AFFECTS_ALL + id_tag = "everyone-die-fate" diff --git a/monkestation/code/modules/twitch_bits/events/random_item.dm b/monkestation/code/modules/twitch_bits/events/random_item.dm new file mode 100644 index 000000000000..0bcc67025703 --- /dev/null +++ b/monkestation/code/modules/twitch_bits/events/random_item.dm @@ -0,0 +1,14 @@ +/datum/twitch_event/give_smsword + event_name = "Give Ook Random Item" + event_duration = 1 SECONDS + event_flags = TWITCH_AFFECTS_STREAMER + id_tag = "give-ook-item" + +/datum/twitch_event/give_smsword/run_event(name) + . = ..() + + for(var/target in targets) + var/mob/living/debug_uplink_reciever = target + var/obj/item/gamer_item = pick(subtypesof(/obj/item)) + gamer_item = new gamer_item() + debug_uplink_reciever.put_in_hands(gamer_item) diff --git a/monkestation/code/modules/twitch_bits/events/rod.dm b/monkestation/code/modules/twitch_bits/events/rod.dm new file mode 100644 index 000000000000..44b8bfd4c0c1 --- /dev/null +++ b/monkestation/code/modules/twitch_bits/events/rod.dm @@ -0,0 +1,12 @@ +/datum/twitch_event/clang + event_name = "Immovable Rod Ook" + event_duration = 1 SECONDS + event_flags = TWITCH_AFFECTS_STREAMER + id_tag = "rod-ook" + announce = FALSE //takes a while to reach its target so dont announce it + +/datum/twitch_event/clang/run_event(name) + . = ..() + + for(var/target in targets) //send a rod at the turf of all targets, not making it target them directly because thats just death + new /obj/effect/immovablerod(spaceDebrisStartLoc(pick(GLOB.cardinals), target_turf.z), target) diff --git a/tgstation.dme b/tgstation.dme index e78a12c882aa..8023af7bac5c 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -5687,9 +5687,13 @@ #include "monkestation\code\modules\twitch_bits\twitch_system.dm" #include "monkestation\code\modules\twitch_bits\events\amongus.dm" #include "monkestation\code\modules\twitch_bits\events\anime_ook.dm" +#include "monkestation\code\modules\twitch_bits\events\australia_mode.dm" #include "monkestation\code\modules\twitch_bits\events\base_event.dm" #include "monkestation\code\modules\twitch_bits\events\buff.dm" #include "monkestation\code\modules\twitch_bits\events\chuckle_nut.dm" +#include "monkestation\code\modules\twitch_bits\events\die_fate.dm" +#include "monkestation\code\modules\twitch_bits\events\random_item.dm" +#include "monkestation\code\modules\twitch_bits\events\rod.dm" #include "monkestation\code\modules\twitch_bits\events\skinny.dm" #include "monkestation\code\modules\uplink\uplink_items\job.dm" #include "monkestation\code\modules\vehicles\monkey_ball.dm" From e997c886b55dbcc70b552426ffa8a153b1d0ac0a Mon Sep 17 00:00:00 2001 From: wraith-54321 <69217972+wraith-54321@users.noreply.github.com> Date: Thu, 29 Jun 2023 20:08:27 -0700 Subject: [PATCH 2/2] nice --- monkestation/code/modules/twitch_bits/events/rod.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/monkestation/code/modules/twitch_bits/events/rod.dm b/monkestation/code/modules/twitch_bits/events/rod.dm index 44b8bfd4c0c1..7de830e3cbca 100644 --- a/monkestation/code/modules/twitch_bits/events/rod.dm +++ b/monkestation/code/modules/twitch_bits/events/rod.dm @@ -9,4 +9,5 @@ . = ..() for(var/target in targets) //send a rod at the turf of all targets, not making it target them directly because thats just death + var/turf/target_turf = get_turf(target) new /obj/effect/immovablerod(spaceDebrisStartLoc(pick(GLOB.cardinals), target_turf.z), target)