mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-02-13 03:33:48 +00:00
clean up subscene load evaluators so that it doesn';t require a client if it's set to global
(allows spawnpoints to fill out prior to connections) also try and apply filtering prior to actual loading
This commit is contained in:
parent
e77c4b3a18
commit
a529e3ecc0
2 changed files with 12 additions and 14 deletions
|
|
@ -214,10 +214,11 @@ bool SubScene::evaluateCondition()
|
|||
|
||||
bool SubScene::testBox(const Box3F& testBox)
|
||||
{
|
||||
if (mGlobalLayer)
|
||||
return true;
|
||||
bool passes = mGlobalLayer;
|
||||
|
||||
if (!passes)
|
||||
passes = getWorldBox().isOverlapped(testBox);
|
||||
|
||||
bool passes = getWorldBox().isOverlapped(testBox);
|
||||
if (passes)
|
||||
passes = evaluateCondition();
|
||||
return passes;
|
||||
|
|
@ -346,22 +347,22 @@ void SubScene::load()
|
|||
if (mSaving)
|
||||
return;
|
||||
|
||||
GameMode::findGameModes(mGameModesNames, &mGameModesList);
|
||||
if ((String(mGameModesNames).isNotEmpty() && mGameModesList.size() == 0) || !evaluateCondition())
|
||||
{
|
||||
mLoaded = false;
|
||||
return;
|
||||
}
|
||||
|
||||
_loadFile(true);
|
||||
mLoaded = true;
|
||||
|
||||
GameMode::findGameModes(mGameModesNames, &mGameModesList);
|
||||
|
||||
onLoaded_callback();
|
||||
for (U32 i = 0; i < mGameModesList.size(); i++)
|
||||
{
|
||||
mGameModesList[i]->onSubsceneLoaded_callback(this);
|
||||
}
|
||||
|
||||
if (!mOnLoadCommand.isEmpty())
|
||||
{
|
||||
String command = "%this = " + String(getIdString()) + "; " + mLoadIf + ";";
|
||||
Con::evaluatef(command.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
void SubScene::unload()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue