MCPcopy Create free account
hub / github.com/defold/defold / ResScriptPreload

Function ResScriptPreload

engine/gameobject/src/gameobject/res_script.cpp:26–50  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

24namespace dmGameObject
25{
26 static dmResource::Result ResScriptPreload(const dmResource::ResourcePreloadParams* params)
27 {
28 dmLuaDDF::LuaModule* lua_module = 0;
29 dmDDF::Result e = dmDDF::LoadMessage<dmLuaDDF::LuaModule>(params->m_Buffer, params->m_BufferSize, &lua_module);
30 if ( e != dmDDF::RESULT_OK )
31 return dmResource::RESULT_FORMAT_ERROR;
32
33 PatchLuaBytecode(&lua_module->m_Source);
34
35 uint32_t n_modules = lua_module->m_Modules.m_Count;
36 for (uint32_t i = 0; i < n_modules; ++i)
37 {
38 dmResource::PreloadHint(params->m_HintInfo, lua_module->m_Resources[i]);
39 }
40
41 const char** resources = lua_module->m_PropertyResources.m_Data;
42 uint32_t n_resources = lua_module->m_PropertyResources.m_Count;
43 for (uint32_t i = 0; i < n_resources; ++i)
44 {
45 dmResource::PreloadHint(params->m_HintInfo, resources[i]);
46 }
47
48 *params->m_PreloadData = lua_module;
49 return dmResource::RESULT_OK;
50 }
51
52 static dmResource::Result ResScriptCreate(const dmResource::ResourceCreateParams* params)
53 {

Callers

nothing calls this directly

Calls 2

PatchLuaBytecodeFunction · 0.85
PreloadHintFunction · 0.85

Tested by

no test coverage detected