Leisure Suit Larry Final Source Set
This commit is contained in:
commit
de70c1581c
101 changed files with 35933 additions and 0 deletions
898
RM24.CG
Normal file
898
RM24.CG
Normal file
|
|
@ -0,0 +1,898 @@
|
|||
[logics for room 24 -- rmInsideDisco
|
||||
[ "Leisure Suit Larry in the Land of the Lounge Lizards"
|
||||
[ by Al Lowe
|
||||
|
||||
%include "rm24.msg"
|
||||
%include "gamedefs.h"
|
||||
|
||||
|
||||
[ must be seated to see closeup of face, and give her stuff.
|
||||
[ normal cel if nothing happens, else happy cel if gift, or said something
|
||||
[nice. "Pouty" face if said something nasty, or bad breath.
|
||||
[ To return to long shot, say leave table, or dance with Fawn
|
||||
|
||||
[ if says something rude, add.to.pic mean look, change rooms, and she walks
|
||||
[away. He has to leave, then enter again.
|
||||
|
||||
|
||||
|
||||
|
||||
[ %flag gaveFawnFlowers 71 [ These are pertinent globals.
|
||||
[ %flag gaveFawnCandy 72
|
||||
[ %flag gaveFawnRing 73
|
||||
[ %flag dancedWithFawn 74
|
||||
|
||||
#define L_DANCE_FLOOR 0
|
||||
#define L_LIGHTS 1
|
||||
|
||||
#define TALK_TIME 4
|
||||
|
||||
#define L_FAWN_SITTING 0
|
||||
#define L_EGO_SITTING 1
|
||||
|
||||
#define L_HEAD_RIGHT 1
|
||||
#define L_HEAD_UP 2
|
||||
|
||||
%define cutToLongShot lf0
|
||||
%define nearChair lf1
|
||||
%define nearFawn lf2
|
||||
%define fawnAtTable lf3
|
||||
%define fawnCycling lf4
|
||||
%define lookingAtFawn lf5
|
||||
%define fawnOnDanceFloor lf6
|
||||
%define cutToCloseup lf8
|
||||
%define nearFawnChair lf10
|
||||
%define fawnLeaving lf11
|
||||
%define fawnScriptDone lf12
|
||||
%define turnHeadsToFloor lf13
|
||||
%define turnHeadsToTable lf14
|
||||
|
||||
|
||||
%define fawnCycles lv0
|
||||
%define fawnScript lv8
|
||||
|
||||
|
||||
%object aFloor 1
|
||||
%object aLights 2
|
||||
%object aFawn 5
|
||||
|
||||
|
||||
|
||||
if (initLog)
|
||||
{
|
||||
SetHorizon( 1);
|
||||
AcceptInput();
|
||||
|
||||
LoadPic( currentRoom);
|
||||
DrawPic( currentRoom);
|
||||
DiscardPic( currentRoom);
|
||||
|
||||
LoadView( vEgo);
|
||||
LoadView( vEgoAndFawnSitting);
|
||||
LoadView( vDiscoCustomers);
|
||||
LoadView( vFawn);
|
||||
|
||||
|
||||
[ Add the tables, and customer-bodies.
|
||||
AddToPic( vDiscoCustomers, 0, 0, 115, 120, 11, 0);
|
||||
AddToPic( vDiscoCustomers, 0, 1, 24, 132, 0, 0);
|
||||
AddToPic( vDiscoCustomers, 0, 2, 24, 159, 0, 0);
|
||||
AddToPic( vDiscoCustomers, 0, 3, 105, 108, 4, 4);
|
||||
AddToPic( vDiscoCustomers, 0, 4, 49, 158, 0, 0);
|
||||
AddToPic( vDiscoCustomers, 0, 5, 98, 108, 4, 4);
|
||||
[view, loop, cel, x, y, obj priority, box priority
|
||||
|
||||
[ Add the customers-heads.
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 1, 24, 112, 12, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 2, 24, 139, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 3, 105, 89, 4, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 4, 49, 138, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 5, 98, 90, 4, 4);
|
||||
|
||||
|
||||
if (makeFawnDance) [ This is it!
|
||||
{
|
||||
LoadSound( mDisco);
|
||||
LoadView( vEgoDiscoing1);
|
||||
LoadView( vEgoDiscoing2);
|
||||
LoadView( vEgoFlingingFawn);
|
||||
LoadView( vFawnDancing);
|
||||
LoadView( vDiscoInterior);
|
||||
|
||||
AnimateObj( aFloor);
|
||||
IgnoreBlocks( aFloor);
|
||||
IgnoreObjs( aFloor);
|
||||
SetView( aFloor, vDiscoInterior);
|
||||
SetLoop( aFloor, L_DANCE_FLOOR);
|
||||
SetCel( aFloor, 0);
|
||||
Position( aFloor, 34, 123);
|
||||
SetPriority( aFloor, 3);
|
||||
|
||||
AnimateObj( aLights);
|
||||
SetView( aLights, vDiscoInterior);
|
||||
SetLoop( aLights, L_LIGHTS);
|
||||
SetPriority( aLights, 15);
|
||||
Position( aLights, 47, 24);
|
||||
}
|
||||
|
||||
|
||||
AnimateObj( aFawn);
|
||||
SetView( aFawn, vFawn);
|
||||
ReleasePriority( aFawn);
|
||||
StartCycling( aFawn);
|
||||
CycleTime( aFawn, one);
|
||||
Position( aFawn, 130, 122);
|
||||
|
||||
if (!gaveFawnEverything &&
|
||||
!noFawnInDisco &&
|
||||
!makeFawnDance &&
|
||||
!makeFawnSplit) [ Sit her ass down!
|
||||
{
|
||||
Set( fawnAtTable);
|
||||
SetView( aFawn, vEgoAndFawnSitting);
|
||||
SetLoop( aFawn, L_FAWN_SITTING);
|
||||
SetPriority( aFawn, 11);
|
||||
Position( aFawn, 129, 119);
|
||||
Draw( aFawn);
|
||||
CycleTime( aFawn, two);
|
||||
StopCycling( aFawn);
|
||||
Random( 22, 44, fawnCycles);
|
||||
}
|
||||
|
||||
|
||||
if (previousRoom == rmFawnCloseup)
|
||||
{
|
||||
SetView( ego, vEgoAndFawnSitting);
|
||||
SetLoop( ego, L_EGO_SITTING);
|
||||
SetPriority( ego, 11);
|
||||
StopMotion( ego);
|
||||
Set( programControl);
|
||||
currentStatus = SITTING;
|
||||
egoX = 116;
|
||||
egoY = 119;
|
||||
|
||||
if (makeFawnSplit)
|
||||
{
|
||||
Reset( makeFawnSplit);
|
||||
Draw( aFawn);
|
||||
|
||||
Set( fawnScriptDone);
|
||||
fawnScript = 100;
|
||||
fawnCycles = 0;
|
||||
}
|
||||
|
||||
if (makeFawnDance)
|
||||
{
|
||||
Reset( makeFawnDance);
|
||||
Draw( aFawn);
|
||||
|
||||
Set( scriptDone);
|
||||
script = 3;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
moneyTimer = 0;
|
||||
egoX = 76;
|
||||
egoY = 167;
|
||||
}
|
||||
PositionV( ego, egoX, egoY);
|
||||
Draw( ego);
|
||||
|
||||
ShowPic( );
|
||||
|
||||
Return( );
|
||||
|
||||
} [ end initLOG
|
||||
|
||||
|
||||
|
||||
Reset( nearChair);
|
||||
if (Posn( ego, 112, 121, 123, 124))
|
||||
{
|
||||
Set( nearChair);
|
||||
}
|
||||
|
||||
Reset( nearFawnChair);
|
||||
if (Posn( ego, 124, 121, 141, 124))
|
||||
{
|
||||
Set( nearFawnChair);
|
||||
}
|
||||
|
||||
Reset( nearFawn);
|
||||
if (fawnAtTable)
|
||||
{
|
||||
if ((currentStatus == SITTING ||
|
||||
Posn( ego, 120, 112, 142, 130)))
|
||||
{
|
||||
Set( nearFawn);
|
||||
Set( nearPerson);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
[*****
|
||||
:handleInput
|
||||
[*****
|
||||
|
||||
if (!haveInput) {goto noInput;}
|
||||
|
||||
if ((Said( sit) || [ Can only sit or stand if
|
||||
Said( sit, with, girl, rol) || [ Fawn baby is dancing.
|
||||
Said( sit, down, rol) ||
|
||||
Said( sit, chair, rol) ||
|
||||
Said( sit, table, rol)))
|
||||
{
|
||||
if (currentStatus == SITTING)
|
||||
{
|
||||
Print( 38);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (nearFawnChair)
|
||||
{
|
||||
if (!fawnAtTable)
|
||||
{
|
||||
Print( 62);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 66);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!nearChair)
|
||||
{
|
||||
Set( notCloseEnough);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!fawnAtTable)
|
||||
{
|
||||
Print( 53);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (satWithFawn)
|
||||
{
|
||||
Set( OK);
|
||||
}
|
||||
else
|
||||
{
|
||||
Set( satWithFawn);
|
||||
currentScore += 1;
|
||||
Print( 29);
|
||||
Print( 30);
|
||||
Print( 31);
|
||||
}
|
||||
}
|
||||
|
||||
SetView( ego, vEgoAndFawnSitting);
|
||||
SetLoop( ego, L_EGO_SITTING);
|
||||
RepositionTo( ego, 116, 119);
|
||||
SetPriority( ego, 11);
|
||||
ForceUpdate( ego);
|
||||
StopMotion( ego);
|
||||
Set( programControl);
|
||||
currentStatus = SITTING;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((Said( stand) ||
|
||||
Said( get$up, rol) ||
|
||||
Said( get, off, chair) ||
|
||||
Said( stop, looking, fawn) ||
|
||||
Said( look, away) ||
|
||||
Said( look, away, from, fawn) ||
|
||||
Said( leave, rol) ||
|
||||
Said( stand, up, rol)))
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 39);
|
||||
}
|
||||
else
|
||||
{
|
||||
Set( OK);
|
||||
Set( makeEgoRise);
|
||||
}
|
||||
}
|
||||
|
||||
if (!haveMatch &&
|
||||
fawnOnDanceFloor) [ This catches all other messages
|
||||
{ [ if Fawn is dancing.
|
||||
Print( 2);
|
||||
Set( haveMatch);
|
||||
}
|
||||
|
||||
|
||||
|
||||
if ((Said( order, drink) ||
|
||||
Said( buy, whiskey) ||
|
||||
Said( buy, wine) ||
|
||||
Said( buy, booze) ||
|
||||
Said( buy, girl, drink)))
|
||||
{
|
||||
Print( 57);
|
||||
}
|
||||
|
||||
if ((Said( talk, men) ||
|
||||
Said( talk, man)))
|
||||
{
|
||||
Print( 63);
|
||||
}
|
||||
|
||||
if (fawnAtTable &&
|
||||
(Said( look, fawn, rol) ||
|
||||
Said( establish$eye$contact, rol)))
|
||||
{
|
||||
if (script)
|
||||
{
|
||||
Print( 6);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Set( cutToCloseup);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (noFawnInDisco)
|
||||
{
|
||||
if (Said( dance, rol))
|
||||
{
|
||||
Print( 54);
|
||||
}
|
||||
|
||||
if ((Said( girl, rol) ||
|
||||
Said( anyword, girl, rol)))
|
||||
{
|
||||
Print( 55);
|
||||
}
|
||||
}
|
||||
|
||||
if ((Said( look) ||
|
||||
Said( look, room) ||
|
||||
Said( look, tables) ||
|
||||
Said( look, tables) ||
|
||||
Said( look, disco)))
|
||||
{
|
||||
if (nearFawn)
|
||||
{
|
||||
Print( 61);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 1);
|
||||
}
|
||||
}
|
||||
|
||||
if ((Said( look, dance, floor) ||
|
||||
Said( look, floor)))
|
||||
{
|
||||
Print( 40);
|
||||
}
|
||||
|
||||
if ((Said( look, men) ||
|
||||
Said( look, man)))
|
||||
{
|
||||
if (noFawnInDisco)
|
||||
{
|
||||
Print( 5);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 41);
|
||||
}
|
||||
}
|
||||
|
||||
if (Said( look, dj))
|
||||
{
|
||||
Print( 42);
|
||||
}
|
||||
|
||||
if (fawnAtTable)
|
||||
{
|
||||
if ((Said( talk, fawn) ||
|
||||
Said( say, anyword, fawn)))
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
|
||||
if (nearFawn &&
|
||||
(Said( touch, faith, rol) ||
|
||||
Said( eat, faith, rol) ||
|
||||
Said( hump, faith, rol) ||
|
||||
Said( kiss, faith, rol) ||
|
||||
Said( touch, tit, rol)))
|
||||
{
|
||||
Print( 60);
|
||||
}
|
||||
|
||||
if ((Said( dance) ||
|
||||
Said( dance, fawn) ||
|
||||
Said( dance, me) ||
|
||||
Said( dance, with, me) ||
|
||||
Said( dance, with, fawn) ||
|
||||
Said( you, dance, fawn) ||
|
||||
Said( you, dance, me) ||
|
||||
Said( you, dance, with, me) ||
|
||||
Said( you, dance, with, fawn) ||
|
||||
Said( enjoy, dance) ||
|
||||
Said( enjoy, dance, with, me) ||
|
||||
Said( you, enjoy, dance, rol) ||
|
||||
Said( ask, dance, fawn) ||
|
||||
Said( ask, fawn, dance) ||
|
||||
Said( ask, fawn, dance, rol) ||
|
||||
Said( start, dance)))
|
||||
{
|
||||
if (dancedWithFawn)
|
||||
{
|
||||
Print( 59);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((Said( give, fawn, rose) ||
|
||||
Said( give, rose, fawn)))
|
||||
{
|
||||
if (!Has( iRose))
|
||||
{
|
||||
Set( dontHaveIt);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((Said( give, fawn, candy) ||
|
||||
Said( give, candy, fawn)))
|
||||
{
|
||||
if (!Has( iCandy))
|
||||
{
|
||||
Set( dontHaveIt);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((Said( give, fawn, ring) ||
|
||||
Said( give, ring, fawn)))
|
||||
{
|
||||
if (!Has( iRing))
|
||||
{
|
||||
Set( dontHaveIt);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((Said( give, fawn, money) ||
|
||||
Said( give, one, money, fawn) ||
|
||||
Said( give, fawn, one, dollars) || [ this makes one hundred work
|
||||
Said( give, money, fawn)))
|
||||
{
|
||||
if (currentStatus != SITTING)
|
||||
{
|
||||
Print( 44);
|
||||
}
|
||||
else
|
||||
{
|
||||
Print( 45);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
[*****
|
||||
:noInput
|
||||
[*****
|
||||
|
||||
if (makeEgoRise)
|
||||
{
|
||||
Reset( makeEgoRise);
|
||||
SetView( ego, vEgo);
|
||||
SetLoop( ego, FACING_RIGHT);
|
||||
RepositionTo( ego, 116, 121);
|
||||
ReleasePriority( ego);
|
||||
StartMotion( ego);
|
||||
Reset( programControl);
|
||||
currentStatus = NORMAL;
|
||||
}
|
||||
|
||||
|
||||
if (script == 6 && onWater) [ Larry finally got out there!
|
||||
{
|
||||
Set( scriptDone);
|
||||
}
|
||||
|
||||
|
||||
if (aSecondPassed)
|
||||
{
|
||||
--moneyTimer;
|
||||
if (moneyTimer == 15)
|
||||
{
|
||||
Print( 21);
|
||||
}
|
||||
|
||||
if (moneyTimer == 1)
|
||||
{
|
||||
Print( 22);
|
||||
Set( noFawnInDisco); [ She's pissed.
|
||||
Set( fawnScriptDone);
|
||||
fawnScript = 100;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (scriptDone)
|
||||
{
|
||||
Reset( scriptDone);
|
||||
++script;
|
||||
|
||||
if (script == 4)
|
||||
{
|
||||
MoveObj( aFawn, 97, 143, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 5)
|
||||
{
|
||||
MoveObj( aFawn, 67, 113, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 6) [ She's on the dance floor.
|
||||
{
|
||||
Set( fawnOnDanceFloor);
|
||||
Set( turnHeadsToFloor);
|
||||
ObjectOnWater( aFawn);
|
||||
SetView( aFawn, vFawnDancing);
|
||||
Wander( aFawn);
|
||||
|
||||
Draw( aFloor);
|
||||
Draw( aLights);
|
||||
Set( musicDone);
|
||||
|
||||
if (!onWater) [ Larry's lagging behind
|
||||
{
|
||||
Print( 8);
|
||||
}
|
||||
else
|
||||
{
|
||||
script = 7;
|
||||
}
|
||||
}
|
||||
|
||||
if (script == 7) [ Larry finally got there, too.
|
||||
{
|
||||
ObserveObjs( aFawn);
|
||||
Set( handsOff);
|
||||
Set( keepCycling);
|
||||
SetView( ego, vEgoDiscoing1);
|
||||
Set( programControl);
|
||||
PreventInput();
|
||||
Wander( ego);
|
||||
currentStatus = DANCING;
|
||||
scriptTimer = 10; [ Dance a while.
|
||||
}
|
||||
|
||||
if (script == 8) [ Get Larry in place for the toss.
|
||||
{
|
||||
MoveObj( ego, 53, 110, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 9) [ Get her in place, too.
|
||||
{
|
||||
IgnoreObjs( aFawn);
|
||||
MoveObj( aFawn, 58, 110, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 10) [ Grab her, and toss her.
|
||||
{
|
||||
SetView( ego, vEgoFlingingFawn);
|
||||
SetLoop( ego, 0);
|
||||
SetCel( ego, 0);
|
||||
RepositionTo( ego, 50, 110);
|
||||
CycleTime( ego, three);
|
||||
EndOfLoop( ego, scriptDone);
|
||||
|
||||
Erase( aFawn);
|
||||
ObjectOnAnything( aFawn);
|
||||
SetView( aFawn, vEgoFlingingFawn);
|
||||
SetLoop( aFawn, 1);
|
||||
FixLoop( aFawn);
|
||||
SetCel( aFawn, 0);
|
||||
StopCycling( aFawn);
|
||||
Position( aFawn, 50, 80); [ draw later
|
||||
}
|
||||
|
||||
if (script == 11) [ Draw her over his head. Go up!
|
||||
{
|
||||
SetLoop( ego, 2);
|
||||
CycleTime( ego, one);
|
||||
|
||||
Draw( aFawn);
|
||||
MoveObj( aFawn, 50, 16, 6, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 12) [She's in ceiling. He can let loose.
|
||||
{
|
||||
SetView( ego, vEgoDiscoing2);
|
||||
Wander( ego);
|
||||
|
||||
Erase( aFawn);
|
||||
SetCel( aFawn, 1);
|
||||
scriptTimer = 12;
|
||||
}
|
||||
|
||||
if (script == 13) [ Get in place for the catch.
|
||||
{
|
||||
MoveObj( ego, 53, 110, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 14) [ Here she comes!
|
||||
{
|
||||
SetView( ego, vEgoFlingingFawn);
|
||||
SetLoop( ego, 2);
|
||||
RepositionTo( ego, 50, 110);
|
||||
|
||||
Draw( aFawn);
|
||||
MoveObj( aFawn, 50, 80, 6, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 15) [ Got her!!
|
||||
{
|
||||
SetLoop( ego, 0);
|
||||
LastCel( ego, work);
|
||||
SetCelV( ego, work);
|
||||
BeginningOfLoop( ego, scriptDone);
|
||||
|
||||
Erase( aFawn);
|
||||
ObjectOnWater( aFawn);
|
||||
SetView( aFawn, vFawnDancing);
|
||||
ReleaseLoop( aFawn);
|
||||
StartCycling( aFawn);
|
||||
Position( aFawn, 59, 110);
|
||||
ObserveObjs( aFawn);
|
||||
}
|
||||
|
||||
if (script == 16) [ Dance together a little while.
|
||||
{
|
||||
SetView( ego, vEgoDiscoing1);
|
||||
RepositionTo( ego, 51, 110);
|
||||
Wander( ego);
|
||||
|
||||
Draw( aFawn);
|
||||
Wander( aFawn);
|
||||
scriptTimer = 8;
|
||||
}
|
||||
|
||||
if (script == 17) [ It's over.
|
||||
{
|
||||
StopUpdate( aFloor);
|
||||
Erase( aLights);
|
||||
StopSound();
|
||||
Reset( musicDone);
|
||||
|
||||
Reset( keepCycling);
|
||||
SetView( ego, vEgo);
|
||||
NormalMotion( ego);
|
||||
StartMotion( ego);
|
||||
Reset( programControl);
|
||||
currentStatus = NORMAL;
|
||||
|
||||
ObjectOnAnything( aFawn);
|
||||
SetView( aFawn, vFawn);
|
||||
MoveObj( aFawn, 67, 113, 1, scriptDone);
|
||||
Reset( fawnOnDanceFloor);
|
||||
}
|
||||
|
||||
if (script == 18) [ "Please return to your seats!"
|
||||
{
|
||||
Reset( handsOff);
|
||||
MoveObj( aFawn, 97, 143, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 19)
|
||||
{
|
||||
MoveObj( aFawn, 119, 121, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 20)
|
||||
{
|
||||
MoveObj( aFawn, 130, 121, 1, scriptDone);
|
||||
}
|
||||
|
||||
if (script == 21) [ Sit and wiggle that leg, baby!
|
||||
{
|
||||
Set( turnHeadsToTable);
|
||||
SetView( aFawn, vEgoAndFawnSitting);
|
||||
SetLoop( aFawn, L_FAWN_SITTING);
|
||||
RepositionTo( aFawn, 129, 119);
|
||||
SetPriority( aFawn, 11);
|
||||
CycleTime( aFawn, two);
|
||||
Random( 22, 44, fawnCycles);
|
||||
script = 0;
|
||||
AcceptInput();
|
||||
Set( fawnAtTable);
|
||||
if (!dancedWithFawn)
|
||||
{
|
||||
Set( dancedWithFawn);
|
||||
currentScore += 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (fawnScriptDone)
|
||||
{
|
||||
Reset( fawnScriptDone);
|
||||
++fawnScript;
|
||||
|
||||
if (fawnScript == 101) [ This takes the fawn out the door.
|
||||
{
|
||||
Set( handsOff);
|
||||
Reset( fawnAtTable);
|
||||
|
||||
SetView( aFawn, vFawn);
|
||||
ReleasePriority( aFawn);
|
||||
StartCycling( aFawn);
|
||||
StartMotion( aFawn);
|
||||
fawnCycles = 0;
|
||||
CycleTime( aFawn, one);
|
||||
IgnoreObjs( aFawn);
|
||||
RepositionTo( aFawn, 130, 123);
|
||||
ForceUpdate( aFawn);
|
||||
MoveObj( aFawn, 122, 123, 1, fawnScriptDone);
|
||||
}
|
||||
|
||||
if (fawnScript == 102)
|
||||
{
|
||||
MoveObj( aFawn, 77, 167, 1, fawnScriptDone);
|
||||
}
|
||||
|
||||
if (fawnScript == 103)
|
||||
{
|
||||
Reset( handsOff);
|
||||
fawnScript = 0;
|
||||
Erase( aFawn);
|
||||
AcceptInput();
|
||||
if (gaveFawnEverything)
|
||||
{
|
||||
Print( 19);
|
||||
}
|
||||
|
||||
if (noFawnInDisco)
|
||||
{
|
||||
Print( 56);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!fawnLeaving &&
|
||||
fawnAtTable)
|
||||
{
|
||||
--fawnCycles; [ Kick that leg
|
||||
if (fawnCycles == 1)
|
||||
{
|
||||
Toggle( fawnCycling);
|
||||
if (fawnCycling)
|
||||
{
|
||||
StartCycling( aFawn);
|
||||
Random( 5, 22, fawnCycles);
|
||||
}
|
||||
else
|
||||
{
|
||||
StopCycling( aFawn);
|
||||
Random( 22, 44, fawnCycles);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (currentStatus == DANCING) [ leave this section below script!
|
||||
{
|
||||
ObjectOnWater( ego);
|
||||
}
|
||||
else
|
||||
{
|
||||
ObjectOnAnything( ego);
|
||||
}
|
||||
|
||||
if (musicDone)
|
||||
{
|
||||
Sound( mDisco, musicDone);
|
||||
}
|
||||
|
||||
if (turnHeadsToTable)
|
||||
{
|
||||
Reset( turnHeadsToTable);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 1, 24, 112, 12, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 2, 24, 136, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 3, 105, 89, 4, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 4, 49, 136, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_RIGHT, 5, 98, 90, 4, 4);
|
||||
}
|
||||
if (turnHeadsToFloor) {
|
||||
AddToPic( vDiscoCustomers, L_HEAD_UP, 1, 24, 112, 12, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_UP, 2, 24, 136, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_UP, 3, 105, 89, 4, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_UP, 4, 49, 136, 14, 4);
|
||||
AddToPic( vDiscoCustomers, L_HEAD_UP, 5, 98, 90, 4, 4);
|
||||
Reset( turnHeadsToFloor);
|
||||
}
|
||||
|
||||
|
||||
[*****
|
||||
:exit [ test for leaving the room
|
||||
[*****
|
||||
|
||||
if (edgeEgoHit == BOTTOM) {newRoom = rmOutsideDisco;}
|
||||
if (cutToCloseup)
|
||||
{
|
||||
newRoom = rmFawnCloseup;
|
||||
if (!lookedAtFawn)
|
||||
{
|
||||
Set( lookedAtFawn);
|
||||
currentScore += 1;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue