Entity->Entities.

This commit is contained in:
hispidence 2022-02-02 20:04:14 +00:00
parent 1edb0bebd5
commit f447a386e2
13 changed files with 35 additions and 15 deletions

View file

@ -41,6 +41,7 @@
<ClInclude Include="include\ReservedScriptNames.h" /> <ClInclude Include="include\ReservedScriptNames.h" />
<ClInclude Include="include\ScriptAssert.h" /> <ClInclude Include="include\ScriptAssert.h" />
<ClInclude Include="include\Scripting\AudioTracks.h" /> <ClInclude Include="include\Scripting\AudioTracks.h" />
<ClInclude Include="include\Scripting\Entities\ScriptInterfaceEntities.h" />
<ClInclude Include="include\Scripting\Entity\ScriptInterfaceEntity.h" /> <ClInclude Include="include\Scripting\Entity\ScriptInterfaceEntity.h" />
<ClInclude Include="include\Scripting\GameFlowScript.h" /> <ClInclude Include="include\Scripting\GameFlowScript.h" />
<ClInclude Include="include\Scripting\GameLogicScript.h" /> <ClInclude Include="include\Scripting\GameLogicScript.h" />
@ -78,6 +79,8 @@
<ClInclude Include="include\ScriptInterfaceLevel.h" /> <ClInclude Include="include\ScriptInterfaceLevel.h" />
<ClInclude Include="include\ScriptUtil.h" /> <ClInclude Include="include\ScriptUtil.h" />
<ClInclude Include="src\AudioTracks.h" /> <ClInclude Include="src\AudioTracks.h" />
<ClInclude Include="src\Entities\Entities.h" />
<ClInclude Include="src\Entities\Static\GameScriptMeshInfo.h" />
<ClInclude Include="src\Entity\Entity.h" /> <ClInclude Include="src\Entity\Entity.h" />
<ClInclude Include="src\Entity\Static\GameScriptMeshInfo.h" /> <ClInclude Include="src\Entity\Static\GameScriptMeshInfo.h" />
<ClInclude Include="src\GameFlowScript.h" /> <ClInclude Include="src\GameFlowScript.h" />
@ -115,6 +118,8 @@
<PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">frameworkandsol.h</PrecompiledHeaderFile> <PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">frameworkandsol.h</PrecompiledHeaderFile>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader> <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
</ClCompile> </ClCompile>
<ClCompile Include="src\Entities\Entities.cpp" />
<ClCompile Include="src\Entities\Static\GameScriptMeshInfo.cpp" />
<ClCompile Include="src\Entity\Entity.cpp" /> <ClCompile Include="src\Entity\Entity.cpp" />
<ClCompile Include="src\Entity\Static\GameScriptMeshInfo.cpp" /> <ClCompile Include="src\Entity\Static\GameScriptMeshInfo.cpp" />
<ClCompile Include="src\GameFlowScript.cpp" /> <ClCompile Include="src\GameFlowScript.cpp" />

View file

@ -282,6 +282,15 @@
<ClInclude Include="include\Scripting\Entity\ScriptInterfaceEntity.h"> <ClInclude Include="include\Scripting\Entity\ScriptInterfaceEntity.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="src\Entities\Entities.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Scripting\Entities\ScriptInterfaceEntities.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\Entities\Static\GameScriptMeshInfo.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="frameworkandsol.cpp"> <ClCompile Include="frameworkandsol.cpp">
@ -359,6 +368,12 @@
<ClCompile Include="src\Entity\Entity.cpp"> <ClCompile Include="src\Entity\Entity.cpp">
<Filter>Source Files</Filter> <Filter>Source Files</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="src\Entities\Entities.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Entities\Static\GameScriptMeshInfo.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="packages.config" /> <None Include="packages.config" />

View file

@ -13,13 +13,13 @@ using VarMapVal = std::variant< short,
using CallbackDrawString = std::function<void(std::string const&, D3DCOLOR, int, int, int)>; using CallbackDrawString = std::function<void(std::string const&, D3DCOLOR, int, int, int)>;
class ScriptInterfaceEntity { class ScriptInterfaceEntities {
public: public:
virtual ~ScriptInterfaceEntity() = default; virtual ~ScriptInterfaceEntities() = default;
virtual bool AddName(std::string const& key, VarMapVal val) = 0; virtual bool AddName(std::string const& key, VarMapVal val) = 0;
virtual void FreeEntities() = 0; virtual void FreeEntities() = 0;
virtual void AssignLara() = 0; virtual void AssignLara() = 0;
}; };
extern ScriptInterfaceEntity* g_GameScriptEntities; extern ScriptInterfaceEntities* g_GameScriptEntities;

View file

@ -1,14 +1,14 @@
#pragma once #pragma once
#include "ScriptInterfaceGame.h" #include "ScriptInterfaceGame.h"
#include "ScriptInterfaceFlow.h" #include "ScriptInterfaceFlow.h"
#include "Entity/ScriptInterfaceEntity.h" #include "Entities/ScriptInterfaceEntities.h"
class ScriptInterfaceState class ScriptInterfaceState
{ {
public: public:
static ScriptInterfaceGame* CreateGame(); static ScriptInterfaceGame* CreateGame();
static ScriptInterfaceFlow* CreateFlow(); static ScriptInterfaceFlow* CreateFlow();
static ScriptInterfaceEntity* CreateEntities(); static ScriptInterfaceEntities* CreateEntities();
static void ScriptInterfaceState::Init(); static void ScriptInterfaceState::Init();
}; };

View file

@ -1,7 +1,7 @@
#include "frameworkandsol.h" #include "frameworkandsol.h"
#include "ReservedScriptNames.h" #include "ReservedScriptNames.h"
#include "Lara/lara.h" #include "Lara/lara.h"
#include "Entity.h" #include "Entities.h"
GameEntities::GameEntities(sol::state* lua) : LuaHandler{ lua } GameEntities::GameEntities(sol::state* lua) : LuaHandler{ lua }
{ {

View file

@ -1,15 +1,15 @@
#pragma once #pragma once
#include <unordered_map> #include <unordered_map>
#include "LuaHandler.h" #include "LuaHandler.h"
#include "Scripting/Entity/ScriptInterfaceEntity.h" #include "Scripting/Entities/ScriptInterfaceEntities.h"
#include "GameScriptItemInfo.h" #include "GameScriptItemInfo.h"
#include "Entity/Static/GameScriptMeshInfo.h" #include "Entities/Static/GameScriptMeshInfo.h"
#include "GameScriptSinkInfo.h" #include "GameScriptSinkInfo.h"
#include "GameScriptAIObject.h" #include "GameScriptAIObject.h"
#include "GameScriptSoundSourceInfo.h" #include "GameScriptSoundSourceInfo.h"
#include "GameScriptCameraInfo.h" #include "GameScriptCameraInfo.h"
class GameEntities : public ScriptInterfaceEntity, public LuaHandler class GameEntities : public ScriptInterfaceEntities, public LuaHandler
{ {
public: public:

View file

@ -18,7 +18,7 @@ using std::unordered_map;
ScriptInterfaceFlow* g_GameFlow; ScriptInterfaceFlow* g_GameFlow;
ScriptInterfaceGame* g_GameScript; ScriptInterfaceGame* g_GameScript;
ScriptInterfaceEntity* g_GameScriptEntities; ScriptInterfaceEntities* g_GameScriptEntities;
GameFlow::GameFlow(sol::state* lua) : LuaHandler{ lua } GameFlow::GameFlow(sol::state* lua) : LuaHandler{ lua }
{ {

View file

@ -9,7 +9,7 @@
#include "GameScriptAnimations.h" #include "GameScriptAnimations.h"
#include "ScriptInterfaceGame.h" #include "ScriptInterfaceGame.h"
#include "ScriptInterfaceFlow.h" #include "ScriptInterfaceFlow.h"
#include "Entity/Entity.h" #include "Entities/Entities.h"
class GameFlow : public LuaHandler, public ScriptInterfaceFlow class GameFlow : public LuaHandler, public ScriptInterfaceFlow
{ {

View file

@ -2,7 +2,7 @@
#include "ScriptInterfaceState.h" #include "ScriptInterfaceState.h"
#include "GameLogicScript.h" #include "GameLogicScript.h"
#include "GameFlowScript.h" #include "GameFlowScript.h"
#include "Entity/Entity.h" #include "Entities/Entities.h"
sol::state g_solState; sol::state g_solState;
@ -21,7 +21,7 @@ ScriptInterfaceFlow* ScriptInterfaceState::CreateFlow()
return new GameFlow(&g_solState); return new GameFlow(&g_solState);
} }
ScriptInterfaceEntity* CreateEntities() ScriptInterfaceEntities* CreateEntities()
{ {
return new GameEntities(&g_solState); return new GameEntities(&g_solState);
} }

View file

@ -47,7 +47,7 @@
#include "Specific/winmain.h" #include "Specific/winmain.h"
#include "Scripting/ScriptInterfaceFlow.h" #include "Scripting/ScriptInterfaceFlow.h"
#include "Scripting/ScriptInterfaceGame.h" #include "Scripting/ScriptInterfaceGame.h"
#include "Scripting/Entity/ScriptInterfaceEntity.h" #include "Scripting/Entities/ScriptInterfaceEntities.h"
using std::vector; using std::vector;
using std::unordered_map; using std::unordered_map;

View file

@ -20,7 +20,7 @@
#include "Scripting/ScriptInterfaceFlow.h" #include "Scripting/ScriptInterfaceFlow.h"
#include "Scripting/ScriptInterfaceGame.h" #include "Scripting/ScriptInterfaceGame.h"
#include "Scripting/ScriptInterfaceLevel.h" #include "Scripting/ScriptInterfaceLevel.h"
#include "Scripting/Entity/ScriptInterfaceEntity.h" #include "Scripting/Entities/ScriptInterfaceEntities.h"
#include "Sound/sound.h" #include "Sound/sound.h"
#include "Specific/setup.h" #include "Specific/setup.h"