This code is placed on the CRE and jumps the CRE(s) to the specific spot, with the right orientation. The action comes complete with leaving the party to head to wherever and the obligatory fading out effect. The trigger Global("Z#KvFishingPlace","GLOBAL",1) tells the game engine when they start to move.
The 2 blocks below are essentially identical, except for destination and orientation, and can be used multiple times to cover multiple maps.
// Fishing areas
IF Global("Z#KvFishingPlace","GLOBAL",1)
AreaCheck("AR1100") // Umar Hills
InParty("Kova")
InParty("Kiyone")
THEN
RESPONSE #100
SetGlobal("Z#KvFishingPlace","GLOBAL",2)
RealSetGlobalTimer("KKDreamT","GLOBAL",1)
ActionOverride("Kova", RunAwayFrom(Player1, 15) )
ActionOverride("Kiyone", RunAwayFrom(Player1, 15) )
FadeToColor([10.0],0)
ActionOverride("Kova", NoAction() )
ActionOverride("Kiyone", NoAction() )
ActionOverride("Kova",JumpToPoint([2215.2469]) )
ActionOverride("Kova",Face( )
ActionOverride("Kiyone", JumpToPoint([2260.2475]) )
ActionOverride("Kiyone",Face(10) )
END
IF Global("Z#KvFishingPlace","GLOBAL",1)
AreaCheck("AR1200") // Windspear
InParty("Kova")
InParty("Kiyone")
THEN
RESPONSE #100
SetGlobal("Z#KvFishingPlace","GLOBAL",2)
RealSetGlobalTimer("KKDreamT","GLOBAL",1)
ActionOverride("Kova", RunAwayFrom(Player1, 15) )
ActionOverride("Kiyone", RunAwayFrom(Player1, 15) )
FadeToColor([20.0],0)
ActionOverride("Kova", NoAction() )
ActionOverride("Kiyone", NoAction() )
ActionOverride("Kova",JumpToPoint([2155.2400]) )
ActionOverride("Kova",Face(9) )
ActionOverride("Kiyone", JumpToPoint([2200.2445]) )
ActionOverride("Kiyone",Face(11) )
END
(blah blah code for other spots)
IF Global("Z#KvFishingPlace","GLOBAL",2)
RealGlobalTimerExpired("KKDreamT","GLOBAL")
THEN
RESPONSE #100
FadeFromColor([15.0],0)
MoveViewObject(Myself,INSTANT)
SetGlobal("Z#KvFishingPlace","GLOBAL",3)
END
This last bit of code causes the camera to centre on Kova (since he is the CRE running this script) once he and Kiyone are in position, and also causes the black fade out to fade back into view.
===================
This is put in the xxxD.baf file. In this example its on Kova.CRE
IF InParty("Kova")
InParty("Kiyone")
Global("Z#TrialClear","GLOBAL",0)
Global("Z#GotGameDream","GLOBAL",0)
GlobalGT("KKRomance", "GLOBAL", 1)
GlobalLT("BKvFishing","GLOBAL",2)
Global("KvFishing", "GLOBAL", 0)
OR(6)
AreaCheck("AR1100") // Umar Hills
AreaCheck("AR1200") // Windspear Hills
AreaCheck("AR1800") // North Forest
AreaCheck("AR2500") // Underdark Exit
AreaCheck("AR2600") // Forest of Tethyr
AreaCheck("AR3000") // Watcher's Keep
THEN
RESPONSE #100
SetCutSceneLite(TRUE)
SetGlobal("KvFishing", "GLOBAL", 1)
RealSetGlobalTimer("KKDreamT","GLOBAL",1)
ActionOverride("Kiyone", FaceObject("Kova") )
RunAwayFrom("Kiyone", 15)
END
So for this scene, it starts with Kiyone facing Kova, and Kova moving away from Kiyone.
When their banter is done, it performs the following function.
==============
SetGlobal("Z#KvFishingPlace","GLOBAL",3)
which causes them to be transported to wherever they should be, before continuing on to the next Banter, which has a check for
Global("Z#KvFishingPlace","GLOBAL",3)
before the banter will happen.
Notice I do not use StorePartyLocations(), because when I execute the RestParty() command everyone will get back into their formation around Player1's current location, which does not change in this example. However you may wish to use this code if you do move Player1 and/or others around.
Edited by Zyraen, 26 November 2007 - 12:01 AM.