Initial Commit
Initial Commit [v1.32PRC8]
This commit is contained in:
110
_module/nss/nh_qst1.nss
Normal file
110
_module/nss/nh_qst1.nss
Normal file
@@ -0,0 +1,110 @@
|
||||
#include "rd_questinc"
|
||||
|
||||
object GetNHUndead(object oPC, object oSender, int iRaceOnly=0, string sTag = "");
|
||||
object GetNHCreatures(object oPC,string sCampType, int iBase, int iBaseStart, int iBaseMax, int iCampType);
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC;
|
||||
object oBoss;
|
||||
int iAdjustedLevel;
|
||||
string sTag;
|
||||
|
||||
oPC = GetPCSpeaker();
|
||||
iAdjustedLevel = GetHitDice(oPC);
|
||||
|
||||
if (iAdjustedLevel<5)
|
||||
sTag = "undead1";
|
||||
else if (iAdjustedLevel<9)
|
||||
sTag = "undead3";
|
||||
else if (iAdjustedLevel<15)
|
||||
sTag = "undead4";
|
||||
else if (iAdjustedLevel<20)
|
||||
sTag = "undead5";
|
||||
else
|
||||
sTag = "undead6";
|
||||
|
||||
oBoss = GetNHUndead(oPC,OBJECT_SELF,0,sTag);
|
||||
SetPartyInt(GetPCSpeaker(),"QuestType",2);
|
||||
|
||||
SetLocalString(OBJECT_SELF,"QuestCreatures",GetTag(oBoss));
|
||||
SetPartyInt(GetPCSpeaker(),"NHQuest",1);
|
||||
}
|
||||
|
||||
object GetNHUndead(object oPC, object oSender, int iRaceOnly=0, string sTag = "")
|
||||
{
|
||||
object oCreature;
|
||||
string sCampType;
|
||||
string sCampDescription;
|
||||
string sLocation;
|
||||
int iDifficulty;
|
||||
int iBase;
|
||||
int iBaseStart;
|
||||
int iBaseMax;
|
||||
int iCampType;
|
||||
object oMod;
|
||||
|
||||
oMod = GetModule();
|
||||
|
||||
if (sTag == "")
|
||||
sCampType = GetQuestMob(oPC,iRaceOnly);
|
||||
else
|
||||
sCampType = GetSpecificCampType(sTag);
|
||||
|
||||
iBase = GetLocalInt(oMod,"iBase");
|
||||
iBaseStart = GetLocalInt(oMod,"iBaseStart");
|
||||
iBaseMax = GetLocalInt(oMod,"iBaseMax");
|
||||
iCampType = GetLocalInt(oMod,"iCampType");
|
||||
SetLocalInt(oMod,"iBase",0);
|
||||
SetLocalInt(oMod,"iBaseStart",0);
|
||||
SetLocalInt(oMod,"iBaseMax",0);
|
||||
SetLocalInt(oMod,"iCampType",0);
|
||||
SetLocalString(oMod,"sCD","");
|
||||
|
||||
oCreature = GetNHCreatures(oPC,sCampType,iBase,iBaseStart,iBaseMax,iCampType);
|
||||
|
||||
iDifficulty = GetLocalInt(oPC,"QuestDifficulty");
|
||||
iDifficulty++;
|
||||
SetPartyInt(oPC,"QuestDifficulty",iDifficulty);
|
||||
|
||||
return oCreature;
|
||||
}
|
||||
|
||||
object GetNHCreatures(object oPC,string sCampType, int iBase, int iBaseStart, int iBaseMax, int iCampType)
|
||||
{
|
||||
string sZone;
|
||||
string sTag;
|
||||
int iMaxSpots;
|
||||
int iSpawn;
|
||||
int iCreatureLevel;
|
||||
int iCreatures;
|
||||
int iIndex;
|
||||
int iLevel;
|
||||
object oCreature;
|
||||
object oWP;
|
||||
int iAdjustedLevel;
|
||||
int iPCCount;
|
||||
|
||||
sZone = "NH";
|
||||
iMaxSpots = GetMaxQuestSpots(sZone);
|
||||
iSpawn = Random(iMaxSpots)+1;
|
||||
sTag = sZone + "_Q_" + IntToString(iSpawn);
|
||||
|
||||
iLevel = GetHitDice(oPC);
|
||||
iAdjustedLevel = GetLocalInt(oPC,"QuestLevel");
|
||||
|
||||
iCreatureLevel = Random(3)+1;
|
||||
iCreatures = Random(3)+2;
|
||||
iIndex = 1;
|
||||
|
||||
while (iIndex <= iCreatures)
|
||||
{
|
||||
oCreature = GetCampMob(iCreatureLevel,sTag,sCampType,iAdjustedLevel,iBaseStart,iBase,iBaseMax,iCampType, 0);
|
||||
iIndex++;
|
||||
}
|
||||
|
||||
//oWP = GetObjectByTag(sTag);
|
||||
//SetLocalString(oCreature,"Location",GetLocalString(oWP,"Description"));
|
||||
|
||||
return oCreature;
|
||||
}
|
Reference in New Issue
Block a user