Initial upload
Initial upload.
This commit is contained in:
69
_module/nss/pgs_new_messnger.nss
Normal file
69
_module/nss/pgs_new_messnger.nss
Normal file
@@ -0,0 +1,69 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Name: pgs_new_messnger
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
This script will create a random messenger
|
||||
for the player to use and command.
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Samius Maximus
|
||||
//:: Created On:
|
||||
//:://////////////////////////////////////////////
|
||||
#include "inc_gsystem_cnfg"
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPlayer = GetPCSpeaker();
|
||||
|
||||
//--------------------------------------------
|
||||
//Check if messenger already created.
|
||||
//--------------------------------------------
|
||||
if (GetIsObjectValid (GetLocalObject (oPlayer, "Temp_Messenger_Creature")))
|
||||
{
|
||||
SendMessageToPC (oPlayer, "You already have a messenger creature in " +
|
||||
"your posession, so you cannot have another.");
|
||||
return;
|
||||
}
|
||||
|
||||
//--------------------------------------------
|
||||
//Choose random messenger to create.
|
||||
//--------------------------------------------
|
||||
string sMessenger;
|
||||
|
||||
switch (d4())
|
||||
{
|
||||
case 1: sMessenger = "fairymessenger"; break;
|
||||
case 2: sMessenger = "falconmessenger"; break;
|
||||
case 3: sMessenger = "ravenmessenger"; break;
|
||||
case 4: sMessenger = "willomessenger"; break;
|
||||
}
|
||||
|
||||
//--------------------------------------------
|
||||
//Now we create the messenger creature.
|
||||
//--------------------------------------------
|
||||
object oMessenger = CreateObject (OBJECT_TYPE_CREATURE, sMessenger,
|
||||
GetLocation (oPlayer), TRUE);
|
||||
|
||||
//--------------------------------------------
|
||||
//Set friendly faction between PC and messenger.
|
||||
//--------------------------------------------
|
||||
AssignCommand (oPlayer, SetStandardFactionReputation
|
||||
(STANDARD_FACTION_COMMONER, 100, oMessenger));
|
||||
|
||||
//--------------------------------------------
|
||||
//Set necessary messenger-related variables.
|
||||
//--------------------------------------------
|
||||
SetLocalInt (oMessenger, "Messenger_Following", TRUE);
|
||||
SetLocalObject (oPlayer, "Temp_Messenger_Creature", oMessenger);
|
||||
SetLocalObject (oMessenger, "Temp_Player", oPlayer);
|
||||
|
||||
SetListening (oMessenger, TRUE);
|
||||
SetListenPattern (oMessenger, "**", 2001);
|
||||
|
||||
//--------------------------------------------
|
||||
//Have messenger follow the player.
|
||||
//--------------------------------------------
|
||||
AssignCommand (oMessenger, ActionForceFollowObject (oPlayer, 3.0f));
|
||||
SetLocalFloat (oMessenger, "Max_Distance", PGS_MAX_MESSENGER_FOLLOW_DISTANCE);
|
||||
}
|
||||
Reference in New Issue
Block a user