Boonzeet
Pokémon Secrets of the Ages Developer
- 188
- Posts
- 15
- Years
- United Kingdom
- Seen Sep 30, 2022
I wanted to include the BW 'shout/scream' effect in my games, and thought I would make it available to everyone as I hadn't seen it before.
To use
Start a message with '\sh' and the message box, sound effect and shake effect will all be applied.
To set up
First, download this zip file which contains a windowskin and sound effect. Add the Windowskin to your Graphics/Windowskins folder, and the .ogg file to Audio\SE.
Open the Script editor, and head to Messages. There's 3 changes you'll want to make:
1. Add the 'sh' message command to the text parser
Look for this line:
And replace it with:
2. Add the flag for shout
Look for this line:
And insert this line below it:
3. Set up the shout command
Look for these lines:
And insert these lines below it:
4. Add the window shake effect
Look for these lines:
Change the if to elsif and insert these lines above it:
And there you have it! It didn't seem like monkey patching this bit of code was possible so it's a little more awkward to set up - but it works great once it's in place. Hope this helps someone!
To use
Start a message with '\sh' and the message box, sound effect and shake effect will all be applied.
To set up
First, download this zip file which contains a windowskin and sound effect. Add the Windowskin to your Graphics/Windowskins folder, and the .ogg file to Audio\SE.
Open the Script editor, and head to Messages. There's 3 changes you'll want to make:
1. Add the 'sh' message command to the text parser
Look for this line:
Code:
while text[/(?:\\([WwFf]|[Ff][Ff]|[Tt][Ss]|[Cc][Ll]|[Mm][Ee]|[Ss][Ee]|[Ww][Tt]|[Ww][Tt][Nn][Pp]|[Cc][Hh])\[([^\]]*)\]|\\([Gg]|[Cc][Nn]|[Ww][Dd]|[Ww][Mm]|[Oo][Pp]|[Cc][Ll]|[Ww][Uu]|[\.]|[\|]|[\!]|[\x5E])())/i]
And replace it with:
Code:
while text[/(?:\\([WwFf]|[Ff][Ff]|[Tt][Ss]|[Cc][Ll]|[Mm][Ee]|[Ss][Ee]|[Ww][Tt]|[Ww][Tt][Nn][Pp]|[Cc][Hh])\[([^\]]*)\]|\\([Gg]|[Cc][Nn]|[Ww][Dd]|[Ww][Mm]|[Oo][Pp]|[Ss][Hh]|[Cc][Ll]|[Ww][Uu]|[\.]|[\|]|[\!]|[\x5E])())/i]
2. Add the flag for shout
Look for this line:
Code:
signWaitCount=0
And insert this line below it:
Code:
shout = false
3. Set up the shout command
Look for these lines:
Code:
elsif control=="op"
signWaitCount=21
And insert these lines below it:
Code:
elsif control=="sh"
shout=true
signWaitCount=16
startSE="shout"
msgwindow.setSkin("Graphics/Windowskins/shout")
msgwindow.width=msgwindow.width # Necessary evil
4. Add the window shake effect
Look for these lines:
Code:
if signWaitCount>0
signWaitCount-=1
Change the if to elsif and insert these lines above it:
Code:
if signWaitCount != 0 && shout == true
signWaitCount = (signWaitCount*-0.9).floor
if atTop
msgwindow.y= signWaitCount
else
msgwindow.y=Graphics.height-(msgwindow.height + signWaitCount)
end
And there you have it! It didn't seem like monkey patching this bit of code was possible so it's a little more awkward to set up - but it works great once it's in place. Hope this helps someone!
Last edited: