mirror of
https://github.com/SWG-Source/dsrc.git
synced 2026-10-09 00:12:57 -04:00
84 lines
1.7 KiB
Plaintext
84 lines
1.7 KiB
Plaintext
include library.ai_lib;
|
|
include library.create;
|
|
|
|
trigger OnInitialize ()
|
|
{
|
|
spawnDroid( self );
|
|
spawnGuy( self );
|
|
messageTo( self, "handleChatting", null, 10, false );
|
|
messageTo( self, "checkForScripts", null, 10, true );
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
messageHandler handleChatting()
|
|
{
|
|
messageTo( self, "handleChatting", null, 600, false );
|
|
obj_id droid = getObjIdObjVar( self, "droidSpawn" );
|
|
obj_id guy1 = getObjIdObjVar(self, "guy1");
|
|
|
|
if ( !exists( droid ) || !exists( guy1 ) )
|
|
return SCRIPT_CONTINUE;
|
|
|
|
faceTo (guy1, droid);
|
|
faceTo (droid, guy1);
|
|
setAnimationMood (guy1, "conversation");
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
void spawnGuy( obj_id baseObject )
|
|
{
|
|
obj_id guy1 = create.themeParkObject( getRandomGuy(), 1f, 0f, "handleDeadGuy", 0f );
|
|
if( isIdValid(guy1) )
|
|
{
|
|
setObjVar( baseObject, "guy1", guy1 );
|
|
}
|
|
}
|
|
messageHandler handleDeadGuy()
|
|
{
|
|
spawnGuy( self );
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
void spawnDroid( obj_id baseObject )
|
|
{
|
|
string[] droids = new string[4];
|
|
droids[0]= "r2";
|
|
droids[1]= "r3";
|
|
droids[2]= "r4";
|
|
droids[3]= "r5";
|
|
|
|
obj_id droid = create.themeParkObject( droids[ rand(0, 3) ], 2f, 1f , "handleDeadDroid", 0f);
|
|
if( isIdValid(droid) )
|
|
{
|
|
setObjVar( baseObject, "droidSpawn", droid ); // Suppress linting - The lint script is incorrectly
|
|
} // catching this due to a similarly named array
|
|
}
|
|
messageHandler handleDeadDroid()
|
|
{
|
|
spawnDroid( self );
|
|
return SCRIPT_CONTINUE;
|
|
}
|
|
|
|
string getRandomGuy ()
|
|
{
|
|
int whichGuy = rand (1,5);
|
|
string guy;
|
|
if (whichGuy == 1)
|
|
{
|
|
guy = "commoner";
|
|
}
|
|
else
|
|
{
|
|
guy = "noble";
|
|
}
|
|
return guy;
|
|
}
|
|
|
|
messageHandler checkForScripts()
|
|
{
|
|
if (hasScript (self, "theme_park.poi.launch"))
|
|
{
|
|
detachScript (self, "theme_park.poi.launch");
|
|
}
|
|
return SCRIPT_CONTINUE;
|
|
} |