mirror of
https://github.com/thug1src/thug.git
synced 2024-12-02 12:56:45 +00:00
158 lines
4.7 KiB
Plaintext
158 lines
4.7 KiB
Plaintext
|
**************************************************
|
||
|
Level Loading Pathway for THPS3
|
||
|
Updated 7/17/2001
|
||
|
**************************************************
|
||
|
|
||
|
=========================================================
|
||
|
*** REGULAR LEVEL ***
|
||
|
change_level level=Load_LevelName (script)
|
||
|
-setgametype freeskate
|
||
|
-request_level <...>
|
||
|
-RequestLevel <level> -- sets skate_mod->m_requested_level
|
||
|
-ScriptChangeLevel()
|
||
|
-does some network stuff, or might apply to single player
|
||
|
-Return to regular game flow, update function (below) does more later
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** CUSTOM PARK, PLAYED AS REGULAR ***
|
||
|
change_level level=custom_park (script, launched from menu)
|
||
|
-setgametype freeskate
|
||
|
-request_level <...>
|
||
|
-RequestLevel <level> -- sets skate_mod->m_requested_level
|
||
|
-ScriptChangeLevel()
|
||
|
-does some network stuff, or might apply to single player
|
||
|
-Return to regular game flow, update function (below) does more later
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** GOING INTO PARK EDITOR ***
|
||
|
AutoLaunch level=custom_park game=parkeditor
|
||
|
-SetServerMode on (command)
|
||
|
-request_level level=<level>
|
||
|
-RequestLevel <level> -- sets skate_mod->m_requested_level
|
||
|
-SetGameType <game>
|
||
|
-launchmenuscreen screen=parked_menu
|
||
|
-Return to regular game flow, update function (below) does more later
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** UPDATE FUNCTION, ALL ***
|
||
|
-CallMemberFunction, request==GameFlow_RequestLevel
|
||
|
-*** REGULAR LEVEL ***
|
||
|
-LoadLevel (script, see details below)
|
||
|
-*** PARK EDITOR ***
|
||
|
-DoParkGeneration (script, see below)
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** REGULAR LEVEL ***
|
||
|
LoadLevel (script)
|
||
|
-SetServerMode (command)
|
||
|
-PreLevelLoad (script, see details below)
|
||
|
-LaunchLevel (command, see details below)
|
||
|
-PostLevelLoad
|
||
|
-ResetCamera
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** PARK EDITOR ***
|
||
|
DoParkGeneration (script)
|
||
|
-PreLevelLoad (script, see details below)
|
||
|
-LaunchLevel (command, see details below)
|
||
|
-PostLevelLoad
|
||
|
-ResetCamera
|
||
|
-Do color, velocity, fogging stuff normally found in Load_LevName script
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
-PreLevelLoad (script)
|
||
|
-Cleanup
|
||
|
-Stopping, pausing music
|
||
|
-SetArenaSize 1
|
||
|
-call to RwResourcesSetArenaSize()
|
||
|
-Sounds
|
||
|
-SetLevelExists
|
||
|
-rwviewer::SetLevelExists()
|
||
|
-SetupBasicLights
|
||
|
-DisplayLoadingScreen
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
LaunchLevel (command)
|
||
|
-Skate::OpenLevel()
|
||
|
-**** REGULAR LEVEL ***
|
||
|
-runs level script, e.g. Load_Can
|
||
|
-loadlevelgeometry (command)
|
||
|
-rwviewer::RequestLoad() (see details below)
|
||
|
-loadnodearray (command)
|
||
|
-Script::RemoveOldTriggerScripts(), DeleteSpawnedScripts()
|
||
|
-Script::LoadQB()
|
||
|
-ScriptParseNodeArray()
|
||
|
-LoadTerrain (loads sounds)
|
||
|
-SetRenderModeVU
|
||
|
-Set colors, velocity, fog and other level attributes
|
||
|
-Call level startup, e.g. Can_startup
|
||
|
-*** PARK EDITOR ***
|
||
|
-ParkEditor::commandGeneratePark()
|
||
|
-ParkEditor::Initialize() [need ParkEditor::mp_compressedMap to be set up at this point]
|
||
|
-Map::InitializeWorld()
|
||
|
-World::CreateParkHeap()
|
||
|
-rwviewer::RequestLoad("sk3ed.bsp") (see details below)
|
||
|
-Create new heap for generated pieces
|
||
|
-World::PreparePieceSet()
|
||
|
-disconnect world sectors (source piece set) from just-loaded RpWorld
|
||
|
-Script::RemoveOldTriggerScripts(), DeleteSpawnedScripts()
|
||
|
-Script::LoadQB()
|
||
|
-Sk3Ed_Startup (script)
|
||
|
-Map::Initialize()
|
||
|
-Map::readMapFromBuf()
|
||
|
-Clone world sectors and link to them from the RpWorld
|
||
|
-Map::GenerateWorld()
|
||
|
-Generate super sectors
|
||
|
-Obj::Proxim_Init()
|
||
|
-Obj::Rail_Init()
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
// Probably safe for going into editor
|
||
|
|
||
|
rwviewer::RequestLoad()
|
||
|
-world_deinit()
|
||
|
-sky_deinit()
|
||
|
-world_init()
|
||
|
-set m_level_exists
|
||
|
-set m_dff_light_active
|
||
|
-scene_load()
|
||
|
-load bits texture dictionary
|
||
|
-Gfx::SetImageDirectoryFromFileName()
|
||
|
-Gfx::TexDictionaryLoad(), set it up
|
||
|
-RwStreamOpen(), stream in world
|
||
|
-GenerateSuperSectors()
|
||
|
-load models from DFF file, gather textures from clumps, add clumps to AssMan
|
||
|
-Pipeline::Chooser::FinishLoadingWorld()
|
||
|
-Upload texture dictionary
|
||
|
-Add cameras to world
|
||
|
-run SetupViewerLights?
|
||
|
-Mip K value stuff (NGPS)
|
||
|
-Add lights
|
||
|
-Get world sector render callback function
|
||
|
-Set up particle system
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
=========================================================
|
||
|
*** LEAVING CUSTOM PARK ***
|
||
|
|
||
|
chosen_leave_server
|
||
|
-ParkEditor::Cleanup()
|
||
|
-Map::Destroy()
|
||
|
-Map::DestroyWorld()
|
||
|
-ScriptLeaveServer()
|
||
|
-Skate::LeaveServer()
|
||
|
-SetNetworkMode
|
||
|
|
||
|
|