Added PnP Dire Rat.
Added PnP Dire Rat.
This commit is contained in:
136
nwn_dark_sun/asg_a_onenter.nss
Normal file
136
nwn_dark_sun/asg_a_onenter.nss
Normal file
@@ -0,0 +1,136 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Name ASG SpawnKit On Enter
|
||||
//:: FileName asg_a_onenter
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
Place this script on you area's on enter event
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Donny Wilbanks
|
||||
//:: Created On: 9/8/03
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "asg_i_spawnkit"
|
||||
// #include "asg_i_dbplayer" // For the GetLocalKey
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC = GetEnteringObject();
|
||||
object oSpawnPoint;
|
||||
|
||||
int iPCFlying = GetLocalInt(oPC,"ASG_SPAWNKIT_PCFLYING");
|
||||
int iVersion;
|
||||
int iASGQInit = GetLocalInt(GetModule(),"ASG_QUESTENGINE_INT");
|
||||
|
||||
string sAreaN = GetName(OBJECT_SELF);
|
||||
string sAreaT = GetTag(OBJECT_SELF);
|
||||
string sBase = "oSpawnPoint_";
|
||||
string sComp;
|
||||
|
||||
if (GetIsPC(oPC) || GetIsDM(oPC) && iPCFlying == FALSE)
|
||||
{
|
||||
// **************************
|
||||
// * Check to see if Config Has been ran
|
||||
// **************************
|
||||
int iASG_SKIT = GetLocalInt(GetModule(),"ASG_SKIT");
|
||||
if (iASG_SKIT == FALSE)
|
||||
{
|
||||
SetLocalInt(GetModule(),"ASG_SKIT",TRUE);
|
||||
ExecuteScript("asg_cfg_spawnkit",GetModule());
|
||||
}
|
||||
object oArea = GetArea(oPC);
|
||||
// *************
|
||||
// **
|
||||
// ** Send Area Message To PC or DM (vr 1.3)
|
||||
// **
|
||||
int iASG_SKIT_ADISCR = GetLocalInt(GetModule(),"ASG_SKIT_ADISCR");
|
||||
if (iASG_SKIT_ADISCR==TRUE)
|
||||
{
|
||||
EntryMessage(GetTag(oArea),oPC);
|
||||
}
|
||||
// *************
|
||||
// **
|
||||
// ** Check Automap Feature (vr 1.3)
|
||||
// **
|
||||
int iMap = GetLocalInt(GetModule(),"ASG_SPAWKIT_AUTOMAPPER");
|
||||
if (iMap == TRUE)
|
||||
{
|
||||
// Check to see if a No Auto Map Placeable Present
|
||||
if (GetIsObjectValid(GetNearestObjectByTag("ASG_NOAUTOMAP",oPC))!=TRUE)
|
||||
{
|
||||
ExploreAreaForPlayer(oArea, oPC);
|
||||
}
|
||||
}
|
||||
// ************************************
|
||||
// **
|
||||
// ** Quest Engine Addon 1.4
|
||||
// **
|
||||
if (iASGQInit==TRUE)
|
||||
{
|
||||
int iASG_QE = GetLocalInt(oPC,"ASG_QUESTENGINE");
|
||||
if (iASG_QE == TRUE)
|
||||
{
|
||||
ExecuteScript("asg_scr_questeng",oPC);
|
||||
}
|
||||
}
|
||||
// *************
|
||||
// **
|
||||
// ** Check Area Setup - Recored SpawnPoints
|
||||
// **
|
||||
int iDoneOnce = GetLocalInt(oArea,"ASG_AREA_DONEONCE");
|
||||
if (iDoneOnce == FALSE)
|
||||
{
|
||||
SetLocalInt(oArea,"ASG_AREA_DONEONCE",TRUE);
|
||||
asg_SetUpArray(oArea);
|
||||
}
|
||||
// *************
|
||||
// **
|
||||
// ** Look For Monsters & Spawn Monsters
|
||||
// **
|
||||
int iWorking = GetLocalInt(oArea,"ASG_A_SPAWNWORKING");
|
||||
// ** Single Spawn in Addon Routine 1.5.03
|
||||
int iSingleSpawnIn = 0;
|
||||
int iIndex = GetLocalInt(oArea,"ASG_AREA_SPAWNPOINT_INDEX");
|
||||
int iK;
|
||||
for (iK=1;iK<=iIndex;iK++)
|
||||
{
|
||||
//sComp = sBase + IntToString(iK);
|
||||
//
|
||||
// * Check for Legacy
|
||||
//
|
||||
//oSpawnPoint = GetLocalObject(oArea,sComp);
|
||||
//if (GetIsObjectValid(oSpawnPoint))
|
||||
//{
|
||||
// iVersion = GetLocalInt(oSpawnPoint,"ASG_Version");
|
||||
// if (iVersion == 14) asg_SpawnCreature14(oArea);
|
||||
asg_SpawnCreature(oArea);
|
||||
//}
|
||||
}
|
||||
SendMessageToPC(oPC,"* Standard Spawnin Script Execuited.");
|
||||
SendMessageToPC(oPC,"(@) You have entered "+sAreaN);
|
||||
}
|
||||
// Exicute Custom Scripts Here
|
||||
//
|
||||
if (GetIsPC(oPC) || GetIsDM(oPC))
|
||||
{
|
||||
// Local Kit - Found on Config Placeable
|
||||
object oASG_SPKit = GetNearestObjectByTag("ASG_SPAWNKIT_XAREAINFO",oPC);
|
||||
string sScript_OnEnter = GetLocalString(oASG_SPKit,"SPK_Script_OnEnter");
|
||||
if (sScript_OnEnter != "SCRIPT_INVALID")
|
||||
{
|
||||
ExecuteScript(sScript_OnEnter,OBJECT_SELF);
|
||||
}
|
||||
// Check for Global
|
||||
sScript_OnEnter = GetLocalString(GetModule(),"ASG_SPKIT_ONENTER");
|
||||
if (sScript_OnEnter != "SCRIPT_INVALID")
|
||||
{
|
||||
ExecuteScript(sScript_OnEnter,OBJECT_SELF);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user