#ifndef __GJDROPDOWNLAYER_H__ #define __GJDROPDOWNLAYER_H__ #include namespace gd { class GJListLayer; #pragma runtime_checks("s", off) class GDH_DLL GJDropDownLayer : public cocos2d::CCLayerColor { public: cocos2d::CCPoint m_obEndPosition; cocos2d::CCPoint m_obStartPosition; cocos2d::CCMenu* m_pButtonMenu; GJListLayer* m_pListLayer; bool m_bControllerEnabled; //? cocos2d::CCLayer* m_pLayer; bool m_bHidden; //? PAD(7); public: //CCNode vtable virtual void registerWithTouchDispatcher() { return reinterpret_cast( base + 0x16990 )(this); } virtual void draw() { return reinterpret_cast( base + 0x16A80 )(this); } //CCTouchDelegate vtable virtual bool ccTouchBegan(cocos2d::CCTouch* pTouch, cocos2d::CCEvent* pEvent) { return true; } virtual void ccTouchMoved(cocos2d::CCTouch* pTouch, cocos2d::CCEvent* pEvent) {} virtual void ccTouchEnded(cocos2d::CCTouch* pTouch, cocos2d::CCEvent* pEvent) {} virtual void ccTouchCancelled(cocos2d::CCTouch* pTouch, cocos2d::CCEvent* pEvent) {} //CCKeypadDelegate vtable virtual void keyBackClicked() { return reinterpret_cast( base + 0x113960 )(reinterpret_cast(this) + 0xF4); } //vtable virtual void customSetup() {} virtual void enterLayer() { return reinterpret_cast( base + 0x16970 )(this); } virtual void exitLayer(cocos2d::CCObject* btn) { return reinterpret_cast( base + 0x113980 )(this, btn); } virtual void showLayer(bool noTransition) { return reinterpret_cast( base + 0x1139C0 )(this, noTransition); } virtual void hideLayer(bool noTransition) { return reinterpret_cast( base + 0x113A90 )(this, noTransition); } virtual void layerVisible() { return reinterpret_cast( base + 0x16A40 )(this); } virtual void layerHidden() { return reinterpret_cast( base + 0x113B60 )(this); } virtual void enterAnimFinished() {} virtual void disableUI() { return reinterpret_cast( base + 0x113920 )(this); } virtual void enableUI() { return reinterpret_cast( base + 0x113940 )(this); } GJDropDownLayer() { reinterpret_cast( base + 0x038470 )(this); } bool init(const char* title, float height) { __asm movss xmm2, height return reinterpret_cast( base + 0x113530 )(this, title); } static GJDropDownLayer* create(const char* title, float height) { GJDropDownLayer* pRet = new GJDropDownLayer(); if (pRet && pRet->init(title, height)) { pRet->autorelease(); return pRet; } else { CC_SAFE_DELETE(pRet); return nullptr; } } }; #pragma runtime_checks("s", restore) } #endif