#pragma once #include "cocos2d.h" #include "cocostudio/CocoStudio.h" #include "ui/CocosGUI.h" #include "MD5.h" #include "MissionWeiXin.h" #include "LoginMission.h" USING_NS_CC; using namespace cocos2d::ui; class LogonScene :public Scene ,public ILoginMissionSink ,public IWeiXinMissionSink { public: LogonScene(); ~LogonScene(); public: CREATE_FUNC(LogonScene); virtual bool init(); virtual void onEnter(); virtual void onEnterTransitionDidFinish(); virtual void onExit(); public: void RegisterAccount(); public: virtual void onGPLoginSuccess(); virtual void onGPLoginComplete(); virtual void onGPLoginFailure(unsigned int iErrorCode,const char* szDescription); virtual void onGPError(int err); virtual void onWxLoginSuccess(WxUserInfo kWxUserInfo ); virtual void onWxLoginFail(std::string kError); void onWeiXinLogon(Ref*); //按键处理 void onKeyReleased(EventKeyboard::KeyCode keyCode, Event * pEvent); // 检测版本 void checkVersion(); //请求版本信息结果 void ResponseResult(rapidjson::Document* pDoc); // Username login void onShowAccountPanel(Ref*); void onHideAccountPanel(Ref*); void onUsernameLogon(Ref*); private: LoginMission m_kLoginMission; std::string m_kPssword; WxUserInfo m_kWeiXinUserInfo; // Account login UI Node* m_pPanelAccount; cocos2d::ui::TextField* m_pTxtUsername; cocos2d::ui::TextField* m_pTxtPassword; cocos2d::ui::Button* m_pBtnLogin; cocos2d::ui::Button* m_pBtnClose; };