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

136 lines
4.4 KiB
Bash

#include "nw_i0_plot"
#include "nw_i0_generic"
#include "nw_i0_2q4luskan"
#include "x0_i0_partywide"
void main()
{
object oTarget;
object oActor;
object oPC = GetPCSpeaker();
SetLocalString(oPC, "bshfght1", "1");
// Give 5 experience (to party) to the PC.
GiveXPToAll(oPC, 5);
// Destroy an object (not fully effective until this script ends).
DestroyObject(GetObjectByTag("Sivilan_counchX"));
// Spawn "sivilan_counchy".
oTarget = GetWaypointByTag("WP_SPnsivilan_counchy");
DelayCommand(2.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "sivilan_counchy", GetLocation(oTarget)));
// Destroy an object (not fully effective until this script ends).
DestroyObject(GetObjectByTag("Basharat_ChairX"));
// Spawn "basharat_chairy".
oTarget = GetWaypointByTag("WP_SPnbasharat_chairy");
DelayCommand(2.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "basharat_chairy", GetLocation(oTarget)));
oTarget = GetObjectByTag("WorlgaGuard2by");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oWorlgaGuard2by = GetObjectByTag("WorlgaGuard2by");
ChangeToStandardFaction(oWorlgaGuard2by, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("WorlgaGuard2bx");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oWorlgaGuard2bx = GetObjectByTag("WorlgaGuard2bx");
ChangeToStandardFaction(oWorlgaGuard2bx, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("GeneralWorlga");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oGeneralWorlga = GetObjectByTag("GeneralWorlga");
ChangeToStandardFaction(oGeneralWorlga, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("HellHound");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oHellHound = GetObjectByTag("HellHound");
ChangeToStandardFaction(oHellHound, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("Sivilan");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oSivilan = GetObjectByTag("Sivilan");
ChangeToStandardFaction(oSivilan, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("BasharatGuard21c");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oBasharatGuard21c = GetObjectByTag("BasharatGuard21c");
ChangeToStandardFaction(oBasharatGuard21c, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("BasharatGuard21b");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oBasharatGuard21b = GetObjectByTag("BasharatGuard21b");
ChangeToStandardFaction(oBasharatGuard21b, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
// Have "Kreshmar" perform a sequence of actions.
oActor = GetObjectByTag("");
AssignCommand(oActor, ActionMoveToObject(oPC));
// Have "Skel" perform a sequence of actions.
oActor = GetObjectByTag("Skel");
AssignCommand(oActor, ActionMoveToObject(oPC));
oTarget = GetObjectByTag("Kreshmar");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oKreshmar = GetObjectByTag("Kreshmar");
ChangeToStandardFaction(oKreshmar, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("Skel");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oSkel = GetObjectByTag("Skel");
ChangeToStandardFaction(oSkel, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
oTarget = GetObjectByTag("Basharat");
SetIsTemporaryEnemy(oPC, oTarget);
AssignCommand(oTarget, ActionAttack(oPC));
AssignCommand(oTarget, DetermineCombatRound(oPC));
object oBasharat = GetObjectByTag("Basharat");
ChangeToStandardFaction(oBasharat, STANDARD_FACTION_HOSTILE);
ActionAttack(oPC);
PlayOldTheme();
// Remove items from the player's inventory
object oItemToTake;
oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "NW_IT_RECALL");
if(GetIsObjectValid(oItemToTake) != 0)
ActionTakeItem(oItemToTake, GetPCSpeaker());
}