Remove pthread dependency by default, adds ability to turn off angelscript debugger
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone Build is failing

This commit is contained in:
2022-02-05 17:48:47 +01:00
parent b438e36a63
commit c960f3fa0b
4 changed files with 23 additions and 7 deletions

View File

@@ -3,7 +3,9 @@
#include <CreatureLib/Battling/ScriptHandling/ScriptResolver.hpp>
#include <mutex>
#ifdef ANGELSCRIPT_DEBUGGER
#include "../../../extern/AngelscriptDebuggerServer/src/AngelscriptDebugger.hpp"
#endif
#include "../../../extern/angelscript_addons/scriptbuilder/scriptbuilder.h"
#include "../../Battling/Library/BattleLibrary.hpp"
#include "AngelScriptEvolutionScript.hpp"
@@ -26,7 +28,9 @@ private:
CScriptBuilder _builder = {};
std::string _sourceDirectory = {};
AngelscriptUserdata* _userData;
#ifdef ANGELSCRIPT_DEBUGGER
ArbUt::OptionalUniquePtr<AngelscriptDebugger> _debugger;
#endif
ArbUt::Dictionary<ScriptCategory, ArbUt::Dictionary<ArbUt::StringView, AngelScriptTypeInfo*>> _typeDatabase;
ArbUt::Dictionary<ArbUt::StringView, asITypeInfo*> _baseTypes;
@@ -113,8 +117,10 @@ public:
inline asIScriptEngine* GetEngine() const noexcept { return _engine; }
inline AngelscriptUserdata* GetUserdata() const noexcept { return _userData; }
#ifdef ANGELSCRIPT_DEBUGGER
inline ArbUt::OptionalBorrowedPtr<AngelscriptDebugger> GetDebugger() const noexcept { return _debugger.GetValue(); }
inline void SetDebugger(AngelscriptDebugger* debugger) noexcept { _debugger = debugger; }
#endif
asITypeInfo* GetScriptOwnerType(ScriptCategory category) {
auto tryget = _scriptOwnerTypes.TryGet(category);

View File

@@ -53,9 +53,11 @@ public:
ctx = _resolver->GetEngine()->CreateContext();
ctx->SetUserData(_userData);
}
#ifdef ANGELSCRIPT_DEBUGGER
if (_resolver->GetDebugger().HasValue()) {
_resolver->GetDebugger().GetValue()->RegisterContext(ctx);
}
#endif
return ctx;
}