MCPcopy Create free account
hub / github.com/axmolengine/axmol / handleNodeEvent

Method handleNodeEvent

extensions/scripting/lua-bindings/manual/LuaEngine.cpp:224–268  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

222}
223
224int LuaEngine::handleNodeEvent(void* data)
225{
226 if (NULL == data)
227 return 0;
228
229 BasicScriptData* basicScriptData = (BasicScriptData*)data;
230 if (NULL == basicScriptData->nativeObject || NULL == basicScriptData->value)
231 return 0;
232
233 int handler = ScriptHandlerMgr::getInstance()->getObjectHandler(basicScriptData->nativeObject,
234 ScriptHandlerMgr::HandlerType::NODE);
235
236 if (0 == handler)
237 return 0;
238
239 int action = *((int*)(basicScriptData->value));
240 switch (action)
241 {
242 case kNodeOnEnter:
243 _stack->pushString("enter");
244 break;
245
246 case kNodeOnExit:
247 _stack->pushString("exit");
248 break;
249
250 case kNodeOnEnterTransitionDidFinish:
251 _stack->pushString("enterTransitionFinish");
252 break;
253
254 case kNodeOnExitTransitionDidStart:
255 _stack->pushString("exitTransitionStart");
256 break;
257
258 case kNodeOnCleanup:
259 _stack->pushString("cleanup");
260 break;
261
262 default:
263 return 0;
264 }
265 int ret = _stack->executeFunctionByHandler(handler, 1);
266 _stack->clean();
267 return ret;
268}
269
270int LuaEngine::handleMenuClickedEvent(void* data)
271{

Callers

nothing calls this directly

Calls 5

getInstanceFunction · 0.85
getObjectHandlerMethod · 0.80
pushStringMethod · 0.80
cleanMethod · 0.45

Tested by

no test coverage detected