Lankhmar_PRC8/_module/nss/conv_rem_hench.nss
Jaysyn904 ebc0c6a9b2 Initial commit
Initial commit [v9.7]
2025-04-03 12:54:47 -04:00

46 lines
1.2 KiB
Plaintext

#include "nw_i0_spells"
#include "x3_inc_horse"
void main()
{
object oHench;
int nHench;
// Get the PC who is in this conversation.
object oPC = GetPCSpeaker();
// Have the PC unpossess its familiar.
if ( GetIsPossessedFamiliar(oPC) )
// The PC is really the master of what is currently oPC.
oPC = GetMaster(oPC);
UnpossessFamiliar(GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC));
// Have the PC release its animal companion.
DestroyObject(GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC));
// Have the PC release its familiar.
DestroyObject(GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC));
// Have the PC dismiss its paladin mount.
AssignCommand(oPC, HorseUnsummonPaladinMount());
// Have the PC release its summoned creature.
DestroyObject(GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC));
// Have the PC release its dominated creature.
RemoveSpecificEffect(EFFECT_TYPE_DOMINATED, GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC));
// Have the PC release its henchman.
nHench = 1;
oHench = GetHenchman(oPC, 1);
while ( oHench != OBJECT_INVALID )
{
RemoveHenchman(oPC, oHench);
// Update the loop.
oHench = GetHenchman(oPC, ++nHench);
}
}