global theHeight1968, theWidth1968, myStageColor1968, doCredits1968
set doCredits1968 to 0
set myStageColor1968 to externalParamValue("bgColor")
if voidp(myStageColor1968) then
set myStageColor1968 to "#FFFFFF"
end if
set theWidth1968 to the stageRight - the stageLeft
set theHeight1968 to the stageBottom - the stageTop
set the puppet of sprite 1 to 1
if (the width of sprite 1 < theWidth1968) and (the height of sprite 1 < theHeight1968) then
set the visible of sprite 1 to 1
set the loc of sprite 1 to point(theWidth1968 / 2, theHeight1968 / 2)
else
set the visible of sprite 1 to 0
end if
end
on idle
global doCredits1968, theWidth1968, theHeight1968, stageRows1968
if doCredits1968 then
showOneCredit()
else
slipAway()
end if
end
on slipAway
global theWidth1968, theHeight1968
if rollOver(1) then
set diffvector to (the loc of sprite 1 - point(the mouseH, the mouseV)) / 2
set oldLoc to the loc of sprite 1
set newLoc to the loc of sprite 1 + diffvector
set the loc of sprite 1 to newLoc
updateStage()
if (the right of sprite 1 > theWidth1968) or (the bottom of sprite 1 > theHeight1968) or (the left of sprite 1 < 0) or (the top of sprite 1 < 0) then
set the loc of sprite 1 to oldLoc
updateStage()
end if
end if
end
on startupCredits
global doCredits1968, stageRows1968, stageCols1968, theHeight1968, theWidth1968, tickCount1968
set the visible of sprite 1 to 0
set the puppet of sprite 4 to 1
set the visible of sprite 4 to 1
set stageRows1968 to theHeight1968 / 20
set stageCols1968 to theWidth1968 / 120
set tickCount1968 to the ticks
set doCredits1968 to 1
repeat while the ticks < (tickCount1968 + 120)
showOneCredit()
end repeat
end
on showOneCredit
set the loc of sprite 4 to point(-100, -100)
updateStage()
set yrow to random(stageRows) - 1
set yloc to yrow * 20
set xloc to (random(stageCols) - 1) * 120
if yrow mod 2 then
set xloc to xloc + 50
end if
set the foreColor of member 6 to random(power(2, the colorDepth)) - 1
set the loc of sprite 4 to point(xloc, yloc)
set the text of field 6 to randomPerson()
updateStage()
end
on showCredits
global theHeight1968, theWidth1968
if (theWidth1968 > 100) and (theHeight1968 > 100) then
set the visible of sprite 1 to 0
set the member of sprite 1 to 5
set the ink of sprite 1 to 0
if theWidth1968 > 250 then
set the width of sprite 1 to 250
else
set the width of sprite 1 to theWidth1968 - 10
end if
if theHeight1968 > 300 then
set the height of sprite 1 to 300
else
set the height of sprite 1 to theHeight1968 - 10
end if
set the loc of sprite 1 to point((theWidth1968 / 2) - (the width of sprite 1 / 2), (theHeight1968 / 2) - (the height of sprite 1 / 2))
set the visible of sprite 1 to 1
updateStage()
end if
end
on randomPerson
set myList to "Harry Chesley, Ken Day, Sarah Allen, Chris Rogers, Lisa Gelobter, Ely Greenfield, Harry Chesley, Ken Day, Sarah Allen, Chris Rogers, Lisa Gelobter, Ely Greenfield, Peter Grandmason, Chris Walcott, Alex Beyk, Karl Miller, Bill Gibson, Jake Sapirstein, Dave Dennick, Alan Isaacs, Michael Roeder, Buzz Kettles, Sally Hebble, Steve Pasos, Don Kimm, John Newlin, Werner Sharp, Heather Rose, Phil Shiller, Leesa Lee, John Thompson, Dan Sadowski, Glenn Ruehle, Slavik Lozben, Chris Yerga, Marshall Halford, Sherri Sheridan, Spike, macromedia.com, Victoria Dawson, Christine McCarthy, Alex Zavatone, Murat Konar, Mats Myberg, David Simmons, Mark Sanford, Brett Stuart, Aric Rubin, Ben Dillon, Pete Caban, Mike Seery, Fred Benz, Jeff Schwamberger, Brent Wood, Craig Bryars, Norm Meyrowitz, Bud Colligan, John Dowdell, elmo-l, shocker.com, shockwave-l, direct-l, Carrie Myers, David Curtis, Joe Dunn, Rocky Vienna"
if random(3) = 1 then
return "Shockwave"
end if
set i to random(the number of items in myList)
set theName to item i of myList
if (random(20) = 1) and (the number of words in theName > 1) then