282 lines
9.9 KiB
Lua
282 lines
9.9 KiB
Lua
-- $Id: //depot/Projects/StarWars_Steam/FOC/Run/Data/Scripts/Story/Story_Empire_ActI_M04_SPACE.lua#1 $
|
|
--/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- (C) Petroglyph Games, Inc.
|
|
--
|
|
--
|
|
-- ***** ** * *
|
|
-- * ** * * *
|
|
-- * * * * *
|
|
-- * * * * * * * *
|
|
-- * * *** ****** * ** **** *** * * * ***** * ***
|
|
-- * ** * * * ** * ** ** * * * * ** ** ** *
|
|
-- *** ***** * * * * * * * * ** * * * *
|
|
-- * * * * * * * * * * * * * * *
|
|
-- * * * * * * * * * * ** * * * *
|
|
-- * ** * * ** * ** * * ** * * * *
|
|
-- ** **** ** * **** ***** * ** *** * *
|
|
-- * * *
|
|
-- * * *
|
|
-- * * *
|
|
-- * * * *
|
|
-- **** * *
|
|
--
|
|
--/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
-- C O N F I D E N T I A L S O U R C E C O D E -- D O N O T D I S T R I B U T E
|
|
--/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- $File: //depot/Projects/StarWars_Steam/FOC/Run/Data/Scripts/Story/Story_Empire_ActI_M04_SPACE.lua $
|
|
--
|
|
-- Original Author: James_Richmond
|
|
--
|
|
-- $Author: Brian_Hayes $
|
|
--
|
|
-- $Change: 637819 $
|
|
--
|
|
-- $DateTime: 2017/03/22 10:16:16 $
|
|
--
|
|
-- $Revision: #1 $
|
|
--
|
|
--/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
require("PGStoryMode")
|
|
|
|
--
|
|
-- Definitions -- This function is called once when the script is first created.
|
|
--
|
|
function Definitions()
|
|
|
|
DebugMessage("%s -- In Definitions", tostring(Script))
|
|
|
|
StoryModeEvents =
|
|
{
|
|
Empire_M04_Begin = State_Empire_M04_Begin
|
|
,Empire_A01_M04_Begin_End = State_Empire_A01_M04_Begin_End
|
|
,Empire_A01_M04_Intro_Text_00 = State_Empire_A01_M04_Intro_Text_00
|
|
,Empire_A01_M04_Intro_End_00 = State_Empire_A01_M04_Intro_End_00
|
|
,Empire_A01_M04_Intro_Text_01 = State_Empire_A01_M04_Intro_Text_01
|
|
,Empire_A01_M04_Intro_End_01 = State_Empire_A01_M04_Intro_End_01
|
|
,Empire_A01_M04_Intro_Text_02 = State_Empire_A01_M04_Intro_Text_02
|
|
,Empire_A01_M04_Intro_End_02 = State_Empire_A01_M04_Intro_End_02
|
|
,Empire_A01_M04_Intro_Text_03 = State_Empire_A01_M04_Intro_Text_03
|
|
,Empire_A01_M04_Intro_End_03 = State_Empire_A01_M04_Intro_End_03
|
|
}
|
|
end
|
|
|
|
|
|
function State_Empire_M04_Begin(message)
|
|
if message == OnEnter then
|
|
-- Prevent the AI from performing an automatic fog of war reveal for this tactical scenario.
|
|
-- MessageBox("disallowing ai controlled fog reveal")
|
|
GlobalValue.Set("Allow_AI_Controlled_Fog_Reveal", 0)
|
|
|
|
-- MessageBox("Act 1 - Mission 4: Empire_M04_Begin beginning")
|
|
|
|
-- Start AI initially suspended so the rebels don't attact the acclamator right away
|
|
Suspend_AI(1)
|
|
-- Lock out the controls as we are going to be letterboxed
|
|
Lock_Controls(1)
|
|
|
|
Letter_Box_In(0)
|
|
-- Find the hint objects
|
|
space_entry_pos = Find_Hint("GENERIC_MARKER_SPACE", "entryposition")
|
|
Acclamatormove_pos = Find_Hint("GENERIC_MARKER_SPACE", "acclamatormove")
|
|
xwingmove_pos1 = Find_Hint("GENERIC_MARKER_SPACE", "xwingmarker1")
|
|
xwingmove_pos2 = Find_Hint("GENERIC_MARKER_SPACE", "xwingmarker2")
|
|
evasive_pos = Find_Hint("GENERIC_MARKER_SPACE", "evasivepos")
|
|
tantiveIV = Find_Hint("CORELLIAN_CORVETTE", "storytantive4")
|
|
acclamator = Find_Hint("ACCLAMATOR_ASSAULT_SHIP", "storyacclamator")
|
|
xwing_1 = Find_Hint("Rebel_X-Wing_Squadron", "xwing1")
|
|
xwing_2 = Find_Hint("Rebel_X-Wing_Squadron", "xwing2")
|
|
TantiveIV_Move = Find_Hint("GENERIC_MARKER_SPACE", "corvettemove")
|
|
TantiveIV_Move2 = Find_Hint("GENERIC_MARKER_SPACE", "corvettemove2")
|
|
|
|
|
|
-- keep acclamator from moving before space warp
|
|
|
|
acclamator.Suspend_Locomotor(true)
|
|
|
|
-- Prevent the acclamator from firing on the rebels until the story catches the fact that they are there
|
|
|
|
-- tantiveIV.Prevent_Opportunity_Fire(true)
|
|
-- acclamator.Prevent_Opportunity_Fire(true)
|
|
|
|
-- Pre cinematic setup
|
|
|
|
-- Set the tactical camera starting position so we can transition to it later
|
|
Point_Camera_At(evasive_pos)
|
|
|
|
-- Start the cinematic camera
|
|
Start_Cinematic_Camera()
|
|
|
|
-- Get an initial shot of the acclamator ship
|
|
|
|
-- Set_Cinematic_Camera_Key(target_pos, x_dist, y_pitch, z_yaw, euler, linkobject, use_object_rotation, cinematic_animation)
|
|
Set_Cinematic_Camera_Key(acclamator, 300, 5, 100, 1, 0, 0, 0)
|
|
|
|
-- Set_Cinematic_Target_Key(target_pos, x_dist, y_pitch, z_yaw, euler, linkobject, use_object_rotation, cinematic_animation)
|
|
Set_Cinematic_Target_Key(acclamator, 0, 0, 0, 0, 0, 0, 0)
|
|
|
|
|
|
-- Hyperspace in acclamator
|
|
|
|
|
|
acclamator.Cinematic_Hyperspace_In(60)
|
|
tantiveIV.Face_Immediate(TantiveIV_Move)
|
|
|
|
-- Fade the scene in
|
|
Fade_Screen_In(1)
|
|
|
|
Sleep(3)
|
|
|
|
|
|
-- acclamator.Suspend_Locomotor(false)
|
|
acclamator.Move_To(Acclamatormove_pos)
|
|
tantiveIV.Move_To(TantiveIV_Move)
|
|
xwing_1.Move_To(xwingmove_pos1)
|
|
xwing_2.Move_To(xwingmove_pos2)
|
|
|
|
|
|
-- Transition_Cinematic_Camera_Key(target_pos, time, x_dist, y_pitch, z_yaw, euler, pobj, use_object_rotation, cinematic_animation)
|
|
Transition_Cinematic_Camera_Key(acclamator, 10, 500, -15, 320, 1, acclamator, 0, 0)
|
|
|
|
Transition_Cinematic_Target_Key(acclamator, 10, 700, 0, 135, 1, acclamator, 0, 0)
|
|
-- Transition_Cinematic_Target_Key(tantiveIV, 10, 0, 0, 0, 1, tantiveIV, 0, 0)
|
|
|
|
-- Let the establishing shot of the acclamator progress 4/5 before we start the dialog
|
|
|
|
Sleep(4)
|
|
|
|
-- Tell the story xml it is okay to continue with the dialog
|
|
Story_Event("LUA_FINSHED_BEGIN")
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- Opening Cinematic Complete
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Begin_End(message)
|
|
if message == OnEnter then
|
|
end
|
|
end
|
|
|
|
|
|
-- ****************************************************
|
|
-- First text sequence placed on screen
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_Text_00(message)
|
|
if message == OnEnter then
|
|
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- First Text Sequence removed, 2nd sequence about to start
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_End_00(message)
|
|
if message == OnEnter then
|
|
|
|
-- The second dialog text should come on top of the first one
|
|
-- so no delay here
|
|
|
|
|
|
|
|
-- Set_Cinematic_Camera_Key(target_pos, x_dist, y_pitch, z_yaw, euler, pobj, use_object_rotation, cinematic_animation)
|
|
Set_Cinematic_Camera_Key(tantiveIV, 200, -10, 250, 1, 0, 0, 0)
|
|
|
|
-- Set_Cinematic_Target_Key(target_pos, x_dist, y_pitch, z_yaw, euler, pobj, use_object_rotation, cinematic_animation)
|
|
Set_Cinematic_Target_Key(tantiveIV, 0, 0, 0, 0, tantiveIV, 0, 0)
|
|
|
|
Sleep(3)
|
|
|
|
|
|
Story_Event("LUA_FINSHED_00")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
-- ****************************************************
|
|
-- Second Text sequence placed on screen
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_Text_01(message)
|
|
if message == OnEnter then
|
|
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- Second Text sequence removed from screen third sequence about to start
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_End_01(message)
|
|
if message == OnEnter then
|
|
|
|
Story_Event("LUA_FINSHED_01")
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- Third text sequence placed on screen
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_Text_02(message)
|
|
if message == OnEnter then
|
|
|
|
Sleep(3)
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- Third text sequence removed from screen fourth sequence about to start
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_End_02(message)
|
|
if message == OnEnter then
|
|
|
|
Story_Event("LUA_FINSHED_02")
|
|
|
|
end
|
|
end
|
|
|
|
|
|
|
|
-- ****************************************************
|
|
-- Fourth text sequence placed on screen
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_Text_03(message)
|
|
if message == OnEnter then
|
|
|
|
-- Have the acclamator do its evasive manuever
|
|
acclamator.Move_To(evasive_pos)
|
|
|
|
|
|
-- Set_Cinematic_Camera_Key(target_pos, x_dist, y_pitch, z_yaw, euler, pobj, use_object_rotation, cinematic_animation)
|
|
Set_Cinematic_Camera_Key(acclamator, -50, 1200, 0, 1, 0, 0, 0)
|
|
|
|
-- Transition_Cinematic_Camera_Key(target_pos, time, x_dist, y_pitch, z_yaw, euler, pobj, use_object_rotation,cinematic_animation)
|
|
Set_Cinematic_Target_Key(tantiveIV, 0, 0, 0, 1, tantiveIV, 0, 0)
|
|
|
|
|
|
|
|
end
|
|
end
|
|
|
|
-- ****************************************************
|
|
-- Fourth text sequence removed from screen intro sequence about to end
|
|
-- ****************************************************
|
|
function State_Empire_A01_M04_Intro_End_03(message)
|
|
if message == OnEnter then
|
|
|
|
-- End the cinetic camera mode
|
|
Resume_Hyperspace_In()
|
|
Point_Camera_At(acclamator)
|
|
Transition_To_Tactical_Camera(2)
|
|
Letter_Box_Out(2)
|
|
Sleep(2)
|
|
End_Cinematic_Camera()
|
|
Lock_Controls(0)
|
|
Suspend_AI(0)
|
|
|
|
end
|
|
end
|