void LuaArmatureWrapper::frameEventCallback(CCBone* bone, const char* frameEventName, int orginFrameIndex, int currentFrameIndex) { if (0 != m_lHandler) { CCLuaEngine* pEngine = CCLuaEngine::defaultEngine(); CCLuaStack* pStack = pEngine->getLuaStack(); pStack->pushCCObject(bone, "CCBone"); pStack->pushString(frameEventName); pStack->pushInt(orginFrameIndex); pStack->pushInt(currentFrameIndex); pStack->executeFunctionByHandler(m_lHandler, 4); pStack->clean(); } }
void LuaCocoStudioEventListener::eventCallbackFunc(CCObject* sender,int eventType) { if (0 != m_lHandler) { CCLuaEngine* pEngine = CCLuaEngine::defaultEngine(); CCLuaStack* pStack = pEngine->getLuaStack(); pStack->pushCCObject(sender, "CCObject"); pStack->pushInt(eventType); pStack->executeFunctionByHandler(m_lHandler, 2); pStack->clean(); } }
void LuaArmatureWrapper::movementEventCallback(CCArmature* armature, MovementEventType type,const char* movementID) { if (0 != m_lHandler) { CCLuaEngine* pEngine = CCLuaEngine::defaultEngine(); CCLuaStack* pStack = pEngine->getLuaStack(); pStack->pushCCObject(armature, "CCArmature"); pStack->pushInt(type); pStack->pushString(movementID); pStack->executeFunctionByHandler(m_lHandler, 3); pStack->clean(); } }
virtual void onMessage(WebSocket* ws, const WebSocket::Data& data) { LuaWebSocket* luaWs = dynamic_cast<LuaWebSocket*>(ws); if (NULL != luaWs) { if (data.isBinary) { int nHandler = luaWs->getScriptHandler(LuaWebSocket::kWebSocketScriptHandlerMessage); if (-1 != nHandler) { CCLuaStack *pStack = CCLuaEngine::defaultEngine()->getLuaStack(); pStack->pushFunctionByHandler(nHandler); pStack->pushString(data.bytes, (int)data.len); pStack->pushInt((int)data.len); pStack->executeFunction(2); } } else{ int nHandler = luaWs->getScriptHandler(LuaWebSocket::kWebSocketScriptHandlerMessage); if (-1 != nHandler) { CCScriptEngineManager::sharedManager()->getScriptEngine()->executeEvent(nHandler,data.bytes); } } } }