130 lines
3.2 KiB
C++
130 lines
3.2 KiB
C++
|
|
#include "PlayerScene.h"
|
|||
|
|
#include "MissionWeiXin.h"
|
|||
|
|
#include "SimpleAudioEngine.h"
|
|||
|
|
#include "UserInfo.h"
|
|||
|
|
#include "ImagicDownManager.h"
|
|||
|
|
|
|||
|
|
PlayerScene::PlayerScene()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
PlayerScene::~PlayerScene()
|
|||
|
|
{
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
bool PlayerScene::init()
|
|||
|
|
{
|
|||
|
|
if (!Node::init())
|
|||
|
|
{
|
|||
|
|
return false;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
rootPanel = CSLoader::createNode("Platform/PlayerScene.csb");
|
|||
|
|
CC_ASSERT(rootPanel != nullptr);
|
|||
|
|
this->addChild(rootPanel);
|
|||
|
|
|
|||
|
|
m_ImageView = (ImageView*)rootPanel->getChildByName("Imagebg");
|
|||
|
|
CC_ASSERT(m_ImageView != nullptr);
|
|||
|
|
|
|||
|
|
////<2F><>ȡ<EFBFBD>رհ<D8B1>ť
|
|||
|
|
//auto btnClose = (Button*)m_ImageView->getChildByName("btnExit");
|
|||
|
|
//CC_ASSERT(btnClose != nullptr);
|
|||
|
|
|
|||
|
|
////ע<><D7A2><EFBFBD>رհ<D8B1>ť<EFBFBD>¼<EFBFBD>
|
|||
|
|
//btnClose->addClickEventListener([this](Ref*){
|
|||
|
|
// YSAudioEngine::Instance().playBtnClickEffect();
|
|||
|
|
// //this->removeFromParent();
|
|||
|
|
// this->popScene();
|
|||
|
|
//});
|
|||
|
|
|
|||
|
|
auto panelbg = (Layout*)rootPanel->getChildByName("Panel_bg");
|
|||
|
|
CC_ASSERT(panelbg != nullptr);
|
|||
|
|
panelbg->addClickEventListener([this](Ref*){
|
|||
|
|
YSAudioEngine::Instance().playBtnClickEffect();
|
|||
|
|
this->popScene();
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
return true;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void PlayerScene::showPlayerInfo(GamePlayer* player /*= nullptr*/)
|
|||
|
|
{
|
|||
|
|
if (player != nullptr)
|
|||
|
|
{
|
|||
|
|
// ͷ<><CDB7>
|
|||
|
|
auto sprUserFace = (Sprite*)m_ImageView->getChildByName("Face");
|
|||
|
|
CC_ASSERT(sprUserFace != nullptr);
|
|||
|
|
|
|||
|
|
std::string strHttp = player->GetHeadHttp();
|
|||
|
|
uint32 dwUserID = player->GetUserID();
|
|||
|
|
ImagicDownManager::Instance().addDown(sprUserFace, strHttp, dwUserID);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
|
auto txtUserName = (Text*)m_ImageView->getChildByName("txtUserName");
|
|||
|
|
CC_ASSERT(txtUserName != nullptr);
|
|||
|
|
txtUserName->setString(player->GetNickName());
|
|||
|
|
|
|||
|
|
// <20>Ա<EFBFBD>
|
|||
|
|
auto sex = (Sprite*)m_ImageView->getChildByName("sex");
|
|||
|
|
CC_ASSERT(sex != nullptr);
|
|||
|
|
std::string strSex = StringUtils::format("Platform/player/%d.png", player->GetUserInfo()->cbGender);
|
|||
|
|
sex->setTexture(strSex);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
|
auto txtExp = (Text*)m_ImageView->getChildByName("txtExp");
|
|||
|
|
CC_ASSERT(txtExp != nullptr);
|
|||
|
|
std::string strExp = utility::GetUserLevel(player->GetUserGrade());
|
|||
|
|
txtExp->setString(utility::a_u8(strExp));
|
|||
|
|
|
|||
|
|
// IP
|
|||
|
|
auto txtUserIP = (Text*)m_ImageView->getChildByName("txtUserIp");
|
|||
|
|
CC_ASSERT(txtUserIP != nullptr);
|
|||
|
|
std::string strLogonIp = StringUtils::format("IP:%s", player->GetLogonIp().c_str());
|
|||
|
|
txtUserIP->setString(strLogonIp);
|
|||
|
|
|
|||
|
|
// <20><>ַ
|
|||
|
|
tagUserAddr UserAddr = player->GetLocation();
|
|||
|
|
auto txtAddr = (Text*)m_ImageView->getChildByName("txtAddr");
|
|||
|
|
CC_ASSERT(txtAddr != nullptr);
|
|||
|
|
std::string strAddr = utility::a_u8("δ֪λ<EFBFBD><EFBFBD>");
|
|||
|
|
if (UserAddr.isInit)
|
|||
|
|
{
|
|||
|
|
strAddr = utility::a_u8("<EFBFBD><EFBFBD>ַ:") + UserAddr.strAddress;
|
|||
|
|
}
|
|||
|
|
txtAddr->setString(strAddr);
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
|
auto txtDistance = (Text*)m_ImageView->getChildByName("txtDistance");
|
|||
|
|
CC_ASSERT(txtDistance != nullptr);
|
|||
|
|
std::string strDistance = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:0.0km";
|
|||
|
|
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
tagUserAddr* pSelfAddr = CGlobalUserInfo::GetInstance()->GetUserAddr();
|
|||
|
|
if (pSelfAddr->isInit && UserAddr.isInit)
|
|||
|
|
{
|
|||
|
|
double dDistance = CGlobalUserInfo::GetInstance()->GetDistance(UserAddr.latitude, UserAddr.longitude);
|
|||
|
|
strDistance = StringUtils::format("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%0.3fkm", dDistance);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
txtDistance->setString(utility::a_u8(strDistance));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void PlayerScene::onEnter()
|
|||
|
|
{
|
|||
|
|
Node::onEnter();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void PlayerScene::onEnterTransitionDidFinish()
|
|||
|
|
{
|
|||
|
|
Node::onEnterTransitionDidFinish();
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void PlayerScene::onExit()
|
|||
|
|
{
|
|||
|
|
Node::onExit();
|
|||
|
|
}
|