Speech Bubbles Upgrade v1.2
by Amaikokonut || https://naturingnurturing.blogspot.com

Originally submitted for CCSF '21

May be found at Naturing :: Nurturing (https://naturingnurturing.blogspot.com) and/or Naturing :: Nurturing :: Static (https://naturingnurturing.songua.com) and/or a friendly community archive near you!

If you have any comments, questions, bug reports, or just want to chat, email amaikokonut@songua.com


:: Installation ::

PLEASE READ. This installation is a little complicated.

- Place the contents of the Images folder into your /Images folder

- Place the "022 Speech Bubbles" folder from the Bootstrap folder into your /Bootstrap folder. (Not in 010 Docking Station, but next to it)

- If you wish, edit the contents of "/Bootstrap/022 Speech Bubbles/zzzz_speech_bubble_autoload--EDIT ME!" if you want certain speech bubble styles to load on default without having to set them by hand in every new world. If you do not edit this, the default will be the usual black-on-while speech bubble.


:: About ::

This script makes handling norns with really long names a little easier. First, it allows directing spoken commands at the selected norn by prefacing it with 'hey' (IE 'hey eat food' will turn into "Mister Fluffy-Bottom-Cute-Pants eat food" or whatever the selected norn's name is). Secondly, this script expands the size of speech bubbles for creatures with longer names so their speech is less likely to get cut off. We all know how vitally important it is to be able to read the whole message when Mister Fluffy-Bottom-Cute-Pants dislikes Mister Frizzy-Headed-Fluff-Tail. Again.

Version 1.2 adds a new feature for developers-- the agent doing the speaking is now stored in ov00 of the speech bubble, so if you have an agent that reads speech bubbles, you can more easily act on the specific agent doing the speaking.

It also adds the ability to change several aspects of the speech bubbles via game variables, including the sprite, font, and camera-shyness.


:: Usage ::

If you have Magic Words Core installed, you can use several Magic Words commands to customize speech bubble styles:

note that while "reset" is not a listed style, you can use it to clear any custom style you have applied so that the global style is used instead.

- "bubble [style]" (ie: "bubble fairy") will change the bubble style of the currently selected creature.

- "bubble [style] hand" will set the bubble style for the hand.

- "bubble [style] hots" will apply the style to the agent or creature the hand is touching. 

- "bubble [style] global" will set the global style for all speech bubbles. Note that global styles will always be overridden by styles already set specifically on individual creatures/agents. You can use "bubble reset global" to reset all bubbles on creatures and the hand back to the global style-- however, this will not reset other agent speech bubbles to the global style-- you would have to reset those individually with "bubble reset hots."

- "bubble camera toggle" toggles the global visibility of speech bubbles on remote cameras, including creature photos.

:: Customs ::

In the Custom folder, you will find resources including a template you can use to create your own speech bubble styles, as well as images of the default speech bubbles that you can use as a base to start customizing! When you are done, compile your custom sprites with Edos or your favorite sprite builder and put the sprite in your Images folder and your custom cos in your /022 Speech Bubbles folder. Then start a new world and type "bubble menu" to make sure your new style shows up in the list. Have fun!


:: Additional Credits ::

- Thanks to Mea for testing this!

- Thanks to RProgrammer for letting me include an (old) copy of Edos in the customs folder to work with the font recolor script. I have no idea if this will be useful to anyone but I figured I may as well include it.

:: Changelog ::

Dec 2 2021:	Revamped the way custom styles work so they're easier on the end-user.
May 6 2021: 	Added storing of agent doing the speaking in ov00
				Added tweaking of other settings via GAME variables
10-14-2017: 	Initial Test Release