Big Demonic Update
Big Demonic Update. Full compile. Updated release archive.
This commit is contained in:
@@ -14,6 +14,8 @@ void main()
|
||||
nClass = GetLevelByClass(CLASS_TYPE_ROGUE, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_NINJA, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_SCOUT, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_BARD, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_BEGUILER, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_FACTOTUM, oPC)
|
||||
+GetLevelByClass(CLASS_TYPE_PSYCHIC_ROGUE, oPC);
|
||||
|
||||
@@ -34,17 +36,51 @@ void main()
|
||||
{
|
||||
if(nSearch >= 34)
|
||||
{
|
||||
SendMessageToPC(oPC, "You found a secret lever!");
|
||||
|
||||
int nHench;
|
||||
object oHench;
|
||||
object oTarget;
|
||||
|
||||
// Send a message to the player's chat window.
|
||||
SendMessageToPC(oPC, "You have found a secret lever!");
|
||||
|
||||
// Have text appear over the PC's head.
|
||||
FloatingTextStringOnCreature("You have found a secret lever!", oPC);
|
||||
|
||||
// Find the location to which to teleport.
|
||||
oTarget = GetWaypointByTag("royalrogueway");
|
||||
|
||||
lTarget = GetLocation(oTarget);
|
||||
// Save the PC's current location for the return trip.
|
||||
SetLocalLocation(oPC, "ls_stored_loc", GetLocation(oPC));
|
||||
|
||||
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
|
||||
// Teleport the PC.
|
||||
AssignCommand(oPC, ClearAllActions());
|
||||
AssignCommand(oPC, JumpToObject(oTarget));
|
||||
|
||||
DelayCommand(2.0, AssignCommand(oPC, ClearAllActions()));
|
||||
// Also teleport associates.
|
||||
oHench = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC);
|
||||
AssignCommand(oHench, ClearAllActions());
|
||||
AssignCommand(oHench, JumpToObject(oTarget));
|
||||
oHench = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC);
|
||||
AssignCommand(oHench, ClearAllActions());
|
||||
AssignCommand(oHench, JumpToObject(oTarget));
|
||||
oHench = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC);
|
||||
AssignCommand(oHench, ClearAllActions());
|
||||
AssignCommand(oHench, JumpToObject(oTarget));
|
||||
oHench = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC);
|
||||
AssignCommand(oHench, ClearAllActions());
|
||||
AssignCommand(oHench, JumpToObject(oTarget));
|
||||
|
||||
DelayCommand(2.0, AssignCommand(oPC, ActionJumpToLocation(lTarget)));
|
||||
// Support for multiple henchmen (includes horses).
|
||||
nHench = 1;
|
||||
oHench = GetHenchman(oPC, 1);
|
||||
while ( oHench != OBJECT_INVALID )
|
||||
{
|
||||
AssignCommand(oHench, ClearAllActions());
|
||||
AssignCommand(oHench, JumpToObject(oTarget));
|
||||
// Next henchman.
|
||||
oHench = GetHenchman(oPC, ++nHench);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user