the cutting room mirror

Comments

This is a sub-page of My Disney Kitchen (Windows, Mac OS Classic).

A bunch of comments can be found inside the boot and stage files.

bootfile.boot#

To do:
Moar.

used to set heading to proper state
these will be checked against propvalue

Returns the ticks at the beginning of the current frame.
This is so that tick() which is expensive on some processors can be called
just once in the idle loop.
FrameTickB Replaced by DebugPropMouseDown() because it only works for props.

Drag the prop around until the mouse button is released.
Move the prop.
Display the mouse position.

Display the mouse position. 
Shift key is depressed. Edit this prop's script.
DebugActorMouseDown: Drag the actor around until the mouse button is released.
Move the actor.

Shift key is depressed. Edit this actor's script.
Returns whether or not the button with name ObjName exists.

Return false. FlatName is not active.

General ethereal VO instigator

Mouse default functions and commands.

MouseMove! Rudimentary mitt cursor rollover

Can't detect if a painting exists and message doesn't drop through to postscript()._ sendtopainting(setscene(),setview(),ObjName,MouseWasReleased(CapturedObjType,CapturedObjName))

Can't detect if a painting or quad exists and message doesn't drop through to postscript().
sendtoquad(ObjName,MouseWasReleased(CapturedObjType,CapturedObjName))
Object exists, send a message._ sendtopainting(setscene(),setview(),ObjName,MouseWasCaptured(ReleasedObjType,ReleasedObjName))
sendtoquad(ObjName,MouseWasCaptured(ReleasedObjType,ReleasedObjName))
Returns true if the mouse is currently captured.

Object exists. Capture will succeed.

Capture the mouse.
Mouse was currently captured. Send object a message to inform it that it's capture is released.
Inform the new object that it has been captured.

Save the captured object info.
Release the capture.
Inform the object that it's capture is released.
Mouse Handlers.
Default handlers for handling mouse messages to dimmed objects.

Do recipe mode stuff here.

If mouse is captured. Send the message to the object that has captured the mouse.
Mouse is captured. Is the object that captured the mouse still around?
Send this message to the object that captured the mouse.
Object no longer exists. Release the capture.
Fall through and send message to the object below the cursor.

Sends a SetCursor() message to the appropriate object.

SetCursorG Sends a MouseIn() message to the object gaining the mouse input focus.
Also sends the type and name of the object losing the focus.
MouseInSendG Sends a MouseOut() message to the object losing the mouse input focus.
Also sends the type and name of the object gaining the focus.
Makes sure the object that should recieve the Mouseout still exists before sending the message.

Make sure the object exists.Msendtopainting(setscene(),setview(),ObjName,MouseOut(pt,InObjType,InObjName))
Can't detect if painting or quad exists and message doesn't drop through to postscript().
sendtoquad(ObjName,MouseOut(pt,InObjType,OutObjName))

modified propxy to let the prop decide how to move itself and any attached props

these props are always added "out"
Returns the name of the prop directly underneath the
point in , minus the mouse capturing prop.

tell mac and gmg to play the intro again

Handler To Print Out Recipe

Hides the propcursor and object being dragged and then does a hittest.

Type and name of object being dragged.

Hide the propcursor if it exists so that hittest won't find it.

bhtIsProp = CursorIsProp() // Only works currently if using a propcursor.
bhtVisible = CursorIsVisible()
if(bhtIsProp)
if(bhtVisible)
propvisible(CursorNameGet(),false)
endif 
endif 

Hide the Dragged object if it exists, so that hittest won't find it.

Get type and name of object being dragged. 

Do the hittest with the appropriate objects hidden.

Save these values. They are what is returned.
Restore the state of the cursor and dragged object.
propvisible(CursorNameGet(),true)
Return the result of hittest.
//////////////////////////////////////////////

Uses a sprite as the cursor.

blkscreen.stag#

The purpose of this stage is as follows :
Due to printing, we need to switch out of fullscreen to print.
Due to video transition problems on certain PC video cards at
a screen resolution of other than 640x480, the title may display
in a maximized window instead. 
Due to some other unidentified? problem (perhaps menu related ?) in RT the title image shifts
down a few pixels a few frames into the title.
Therefore, this: black screen covers the shift down, and then continues on

kitchen.stag#

The shop mop is opened separately to allow ResetKitchen to call
OpenKitShops and CloseKitShops without disturbing the mop props.

For speed reasons we hide everything in the fridge and cupboards

Ignore this one as interferes with fridge

This function decides how and where to put user's name in the kitchen

To Avoid Problems in sub-modes (e.g. in front of flipping pancakes for example)

           spacing = 13 
           ink = 5 
           dist = ZStartGMR - 1 
           if calcmod(stringlength(gsPlayerName),2)= 0 
           x = x - 13 
           endif 
           recipe
           's

Just in case, try & delete old instance of this name

Pans the stage to a position, and sends an optional callback to an object when complete.
The callback function name is PanScrollComplete()
if a callback is no desired, set CBType to "".
Y is currently ignored.

Save the callback type and name to be sent when 

Restore the Kitchen scroll loop to it's original state.
Loop existed when we started. Restart it.
Loop was paused when we started. Re-pause it.
Send callback and delete globals, if specified to do so

Send messages to MAC and Griddle when active.

Reset funky alloc code

Array for tracking when an ethereal VO is played

Keeping track of what's on the table's place settings

Deferred window animation queue

Handler For Putting Objects In Shelves ShelfList

Remove Object From Shelf List

A function to decide whether we're in a shelf

itworked?

If removing prop, use xy position of prop instead of mouse pos

Should Not Get here

A function to try and add object to shelf list

Find Button Properties ... all go from "back" to "front"

Freezer, fridge, and drawer

tsp added nothing uses this shelf, items in drawer have "fridgedrawer" as home
other items dropped here dissapear behind drawer

Clear The Array element, shortening the list if this is the last entry

Just Tidy Up List : Don't Delete Props
Delete "delete-able" props ... up to required number
If we get here, we need to tell the player to clean up his/her act

Create a new instance of a food

Create a new Object under the cursor (Used for picking up food from food sources)

handle this mouse down if dragging is not paused
dragging this prop (prop2Test is the cursor)

else added by Andy : 7/23/98
else added by TP
if button does anything, 
dragstop is called
so I added another check below
nothing dragging, so pick this up

See if it is being sent home

Fridge Compartment Door Code

Can only drop in doors 3-6

If In A Good Compdoor, try to place