generated from Jaysyn/ModuleTemplate
2025/07/21 Update
Added PEPS AI Full compile.
This commit is contained in:
67
_removed/nw_ch_summon_9.nss
Normal file
67
_removed/nw_ch_summon_9.nss
Normal file
@@ -0,0 +1,67 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Associate: On Spawn In
|
||||
//:: NW_CH_AC9
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
|
||||
This must support the OC henchmen and all summoned/companion
|
||||
creatures.
|
||||
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Preston Watamaniuk
|
||||
//:: Created On: Nov 19, 2001
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Updated By: Georg Zoeller, 2003-08-20: Added variable check for spawn in animation
|
||||
|
||||
|
||||
#include "X0_INC_HENAI"
|
||||
#include "x2_inc_switches"
|
||||
void main()
|
||||
{
|
||||
//Sets up the special henchmen listening patterns
|
||||
SetAssociateListenPatterns();
|
||||
|
||||
// Set additional henchman listening patterns
|
||||
bkSetListeningPatterns();
|
||||
|
||||
//DMFI CODE ADDITIONS BEGIN HERE
|
||||
SetListening(OBJECT_SELF, TRUE);
|
||||
SetListenPattern(OBJECT_SELF, "**", 20600); //listen to all text
|
||||
SetLocalInt(OBJECT_SELF, "hls_Listening", 1); //listen to all text
|
||||
//DMFI CODE ADDITIONS END HERE
|
||||
|
||||
// Default behavior for henchmen at start
|
||||
SetAssociateState(NW_ASC_POWER_CASTING);
|
||||
SetAssociateState(NW_ASC_HEAL_AT_50);
|
||||
SetAssociateState(NW_ASC_RETRY_OPEN_LOCKS);
|
||||
SetAssociateState(NW_ASC_DISARM_TRAPS);
|
||||
SetAssociateState(NW_ASC_MODE_DEFEND_MASTER, FALSE);
|
||||
|
||||
//Use melee weapons by default
|
||||
SetAssociateState(NW_ASC_USE_RANGED_WEAPON, FALSE);
|
||||
|
||||
// Distance: make henchmen stick closer
|
||||
SetAssociateState(NW_ASC_DISTANCE_4_METERS);
|
||||
if (GetAssociate(ASSOCIATE_TYPE_HENCHMAN, GetMaster()) == OBJECT_SELF) {
|
||||
SetAssociateState(NW_ASC_DISTANCE_2_METERS);
|
||||
}
|
||||
|
||||
// * If Incorporeal, apply changes
|
||||
if (GetCreatureFlag(OBJECT_SELF, CREATURE_VAR_IS_INCORPOREAL) == TRUE)
|
||||
{
|
||||
effect eConceal = EffectConcealment(50, MISS_CHANCE_TYPE_NORMAL);
|
||||
eConceal = ExtraordinaryEffect(eConceal);
|
||||
effect eGhost = EffectCutsceneGhost();
|
||||
eGhost = ExtraordinaryEffect(eGhost);
|
||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eConceal, OBJECT_SELF);
|
||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eGhost, OBJECT_SELF);
|
||||
}
|
||||
|
||||
|
||||
// Set starting location
|
||||
SetAssociateStartLocation();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user