Twitch Countdown Timer
This project is a Countdown Timer that you can use for several things. It originally was made for a Donothon, but can be easily adapted to anything really.
Code
Import this string into Streamerbot:
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
You will get the following things with this:
Queues
TimerQueue
The TimerQueue is a non-blocking queue that the commands are running on. For the simple reason that it is the most convenient way to pause and resume the timer
Commands
Pause Timer
This command will enable your mods, or yourself, to pause the timer.
Resume Timer
This command will enable your mods, or yourself, to resume the timer.
Actions
SetTimer
With this action you configure your Timer. This should be used initially, if you want to start your Donothon. Since it works in seconds, you will have to do a bit of math if you want to set it to something like 20 Hours or so. You will also have to configure the Scene and Label names for the OBS Text(GDI+) Label to update.
AddTime
This Action adds time to the current timer, depending on the values that are configured in the corresponding secondsPerX
Set argument
Sub-Action.
Per default, it considers a Streamelements Tip, Twitch-Subs, and Twitch-Cheers/Bits.
CountdownTimer
This Action is the one that will start the timer. It should only be started once! It is a recursive action that will call itself after every second, until the counter reaches 0. So if you start it twice, it will count down twice as fast.
Either you start it via the Test-Trigger that I put in, or you add a different trigger.
I would recommend something like like Twitch -> Channel -> Stream Online
if you want the timer to automatically start on going live.
Pause Timer
This Action will pause the timer queue and thereby the timer. It is called by the !pauseTimer Command
Resume Timer
This Action will resume the timer queue and thereby the timer. It is called by the !resumeTimer Command
[TwitchCountdownTimer] * Code
This is the Code for the whole thing, play with this only if you know what you are doing