Question: In the above script I’ve it set so that (for now)) two actors are supposed to spawn in and start brawling with each other.
Now that being said, Cutscene() mode is enabled and I don’t know why they won’t fight? Is it because of CutsceneMode()? Or is something else going on?
void PrepForDestruction(object oTarget)
{
SetPlotFlag(oTarget, FALSE);
SetImmortal(oTarget, FALSE);
AssignCommand(oTarget, SetIsDestroyable(TRUE, FALSE, FALSE));
}
void SureDestroy()
{
object oTarget = GetNearestObjectByTag("WALTZ");
PrepForDestruction(oTarget);
DestroyObject(oTarget);
}
#include "nw_i0_2q4luskan"
#include "in_g_cutscene"
// Variable stack.
location lRowdy1;
location lRowdy2;
location lRowdy3;
location lRowdy4;
object oBrawler1;
object oBrawler2;
object oBrawler3;
object oBrawler4;
void main() // Begin main function.
{
object oPC = GetEnteringObject(); // Get Who triggered the event.
if (!GetIsPC(oPC)) return; // Valid PC check.
// Declare the host and his consort.
object oZuul = GetObjectByTag("AZASH_ZUUL001");
object oConsort = GetObjectByTag("CONSORT");
// Set to run script only once.
if ( GetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF)) )
return;
SetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF), TRUE);
SetLocalInt(oPC, "SCRIPT_FIRED", 1);
// Apply a cinematic fade.
BlackScreen(oPC);
SoundObjectPlay(GetNearestObjectByTag("GHOST_LAUGH"));
DestroyObject(GetNearestObjectByTag("GHOST_LAUGH"), 3.0);
DelayCommand(5.0, FadeFromBlack(oPC, FADE_SPEED_SLOWEST));
// Begin Cutscene.
DelayCommand(5.5, SetCutsceneMode(oPC, TRUE));
location lLoc;
lLoc = GetLocation(GetWaypointByTag("CUTSCENE_LOC"));
lRowdy1 = GetLocation(GetWaypointByTag("ROWDY_01"));
lRowdy2 = GetLocation(GetWaypointByTag("ROWDY_02"));
lRowdy3 = GetLocation(GetWaypointByTag("ROWDY_03"));
lRowdy4 = GetLocation(GetWaypointByTag("ROWDY_04"));
oBrawler1 = GetObjectByTag("BRAWLER_01");
oBrawler2 = GetObjectByTag("BRAWLER_02");
oBrawler3 = GetObjectByTag("BRAWLER_03");
oBrawler4 = GetObjectByTag("BRAWLER_04");
DelayCommand(2.5, AssignCommand(oPC, PlaySound("holy_diver"))); // Begin ambient music.
// Start camera work.
///////////////////////////
GestaltCameraMove /Camera block 1.
(5.0, 90.0, 3.0,
60.0, 85.0, 6.0, 40.0,
` 8.0, 144.0, oPC, 0, 0, 0);
//////////////////////////
GestaltCameraSmooth // Camera block 2.
(8.0, 3.0, 3.0,
3.0, 2.0, 3.0, 3.0,
1.5, 144.0, oPC, 0);
/////////////////////////
GestaltCameraSetup // Camera block 3.
(9.5, oPC, 85.0, 5.0, 60.0);
// Start dance animation.
DelayCommand(10.3, AssignCommand(oPC, ClearAllActions()));
DelayCommand(11.0, AssignCommand(oPC, PlayAnimation(ANIMATION_LOOPING_CUSTOM2, 1.0, 999000.0)));
// Start sound object "WALTZ".
DelayCommand(28.0, SoundObjectPlay(GetNearestObjectByTag("WALTZ")));
// Begin talk que.
DelayCommand(32.0, AssignCommand(oPC, SpeakString("Why am I dancing?" )));
DelayCommand(34.0, AssignCommand(oZuul, SpeakString("Because I commanded it be." )));
DelayCommand(38.0, AssignCommand(oPC, SpeakString("Why am I naked?")));
DelayCommand(39.0, AssignCommand(oZuul, SpeakString("Because you are meant to, amuse.")));
DelayCommand(41.0, AssignCommand(oConsort, SpeakString("Crawl...!")));
DelayCommand(44.0, AssignCommand(oPC, SpeakString("I can't stop dancing...?")));
DelayCommand(45.0, AssignCommand(oPC, SpeakString("What did you put in my drink...?")));
// Apply an effect tp PC.
DelayCommand(46.5, ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect
( VFX_IMP_CHARM ), oPC));
DelayCommand(47.0, AssignCommand(oPC, PlayAnimation(ANIMATION_LOOPING_DEAD_BACK, 1.0, 999000.0)));
// Stop "Waltz".
DelayCommand(53.0, SoundObjectStop(GetNearestObjectByTag("WALTZ")));
// Start/Stop "Ballroom Blitz".
DelayCommand(49.5, SoundObjectPlay(GetNearestObjectByTag("BRB_01")));
// Spawn ballroom fighters.
// Spawnblock 1.
////////////////////////////////////////////////
////////////////////////////////////////////////
DelayCommand(50.5, CreateObjectVoid(OBJECT_TYPE_CREATURE, "brawler", lRowdy1));
DelayCommand(50.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect
( VFX_IMP_UNSUMMON ), lRowdy1)); ///////////////
// Spawnblock 2.
////////////////////////////////////////////////
DelayCommand(52.5, CreateObjectVoid(OBJECT_TYPE_CREATURE, "brawler001", lRowdy2));
DelayCommand(52.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect
( VFX_IMP_UNSUMMON ), lRowdy2)); ///////////////
// Sapwnblock 3.
////////////////////////////////////////////////
DelayCommand(53.5, CreateObjectVoid(OBJECT_TYPE_CREATURE, "brawler002", lRowdy3));
DelayCommand(53.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect
( VFX_IMP_UNSUMMON ), lRowdy3)); ///////////////
// Spawnblock 4.
////////////////////////////////////////////////
DelayCommand(54.5, CreateObjectVoid(OBJECT_TYPE_CREATURE, "brawler003", lRowdy4));
DelayCommand(54.5, ApplyEffectAtLocation(DURATION_TYPE_INSTANT, EffectVisualEffect
( VFX_IMP_UNSUMMON ), lRowdy4)); ///////////////
/////////////////////////////////////////////
// Begin donybrook. ////////////////////////////
//////////////////////////////////////////////
// Attack "BRAWLER_02".
GestaltActionAttack(61.0, oBrawler1, oBrawler2, "", FALSE);
DelayCommand(93.0, SoundObjectStop(GetNearestObjectByTag("BRB_01")));
// Clean up sound files.
DelayCommand(94.0, SureDestroy());
DelayCommand(93.0, AssignCommand(oPC, ClearAllActions()));
DelayCommand(94.0, AssignCommand(oPC, JumpToLocation(lLoc)));
DelayCommand(94.0, AssignCommand(GetNearestObjectByTag("BRB_01"),
SetIsDestroyable(TRUE)));
DestroyObject(GetNearestObjectByTag("BRB_01"), 95.0);
DelayCommand(96.0, SetCutsceneMode(oPC, FALSE)); // End cutscene mode.
} // End main.
I’ve tried modifying their OnSpawn scripts to attack with no luck.