//----------------------------- // // void CMiniGameCatchLayer::UpDataTime( ccTime dt ) { m_iTime--; if( m_iTime <= 0 ) { m_iTime = 0; } int height = m_pTimeSprite->getTextureRect().size.height; CCRect rect( 0, 0, ( (float)m_iTime / (float)m_iMaxTime ) * m_iTimeBar, height ); if( NULL != m_pTimeSprite ) { m_pTimeSprite->setTextureRect( rect ); } if( m_iTime <= 0 && !m_bIsFinish) { m_bIsFinish = true; if( CCUserDefault::sharedUserDefault()->getBoolForKey( "sound" ) ) { CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect("data/audio/time_up.mp3", false); } AdvanceSprite *pAdv = new AdvanceSprite(); pAdv->addFramesFromiT2D( "time_up.plist" ); pAdv->autorelease(); addChild( pAdv, 100 ); int timeup[] = { 0,3,2 }; pAdv->PlayAnimation( timeup, 1, NULL, this, false, true ); CCSize size = CCDirector::sharedDirector()->getWinSize(); pAdv->setPosition( ccp( size.width/2, size.height/2 ) ); schedule( schedule_selector( CMiniGameCatchLayer::Finsh ), 3.0f ); } }
//------------------------------------------------------------------------ // // void CFightGroundLayer::CreatPlayer() { //CBaseDataPet *pBaseDataPet = g_pClientLoader->GetBaseDataPetFromId(1); CBaseDataAnimation *pAnimationData = g_pClientLoader->GetBaseDataAnimationFromId(g_pPetDataBlock->ResId); if( NULL != pAnimationData ) { CBaseDataPet *pPetBaseData = g_pClientLoader->GetBaseDataPetFromId( g_pPetDataBlock->petid ); m_pPetLeft = new CPet(); m_pPetLeft->init(); m_pPetLeft->autorelease(); m_pPetLeft->setSitId( FIGHT_LEFT_PLAYER_POS ); m_pPetLeft->setFlipX( true ); //PetDatablock *petdata = new PetDatablock(); //petdata->petName = "petName1"; //petdata->Agility = 10; //petdata->hp = 100; //petdata->MaxHp = 100; //petdata->Damage = 10; //petdata->ResId = g_pPetDataBlock->ResId; m_pPetLeft->setPetDataBlock(g_pPetDataBlock); m_pPetLeft->addFramesFromiT2D( pAnimationData->m_strPlist.c_str(), pAnimationData->m_iPlistType ); m_pPetLeft->PlayAnimation( pAnimationData->m_stand, -1,NULL,this, false, false ); m_pPetLeft->setTurnEndCallBack( this, callfuncND_selector( CFightGroundLayer::FightTurnOverCallBack ), NULL ); CCNode* pNode = GetXMLNodeFromKey( "t2dSceneObject_player1_pos" ); m_pPetLeft->setPosition( pNode->getPosition() ); pNode = GetXMLNodeFromKey( "t2dSceneObject_player1_attack" ); m_pPetLeft->setTargetPosition( pNode->getPosition() ); addChild( m_pPetLeft, MAXTORQUELAYERNUM ); } CBaseDataPet* pPetBaseData = g_pClientLoader->GetBaseDataPetFromId( CSelectEnemyScene::s_pPetDataBlock->petid ); CBaseDataAnimation *pAnimationData2 = g_pClientLoader->GetBaseDataAnimationFromId(pPetBaseData->animationid); if( NULL != pAnimationData2 ) { m_pPetRight = new CPet(); m_pPetRight->init(); m_pPetRight->autorelease(); m_pPetRight->setSitId( FIGHT_RIFHT_PLAYER_POS ); m_pPetRight->setPetDataBlock(CSelectEnemyScene::s_pPetDataBlock); m_pPetRight->addFramesFromiT2D( pAnimationData2->m_strPlist.c_str(), pAnimationData2->m_iPlistType ); m_pPetRight->PlayAnimation( pAnimationData2->m_stand, -1,NULL,this, false, false ); m_pPetRight->setTurnEndCallBack( this, callfuncND_selector( CFightGroundLayer::FightTurnOverCallBack ), NULL ); m_pPetRight->setFlipX( false ); CCNode* pNode = GetXMLNodeFromKey( "t2dSceneObject_player2_pos" ); m_pPetRight->setPosition( pNode->getPosition() ); pNode = GetXMLNodeFromKey( "t2dSceneObject_player2_attack" ); m_pPetRight->setTargetPosition( pNode->getPosition() ); addChild( m_pPetRight, MAXTORQUELAYERNUM ); } schedule(schedule_selector(CFightGroundLayer::upData),0.1f); m_pPetLeft->setLockTarget( m_pPetRight ); m_pPetRight->setLockTarget( m_pPetLeft ); /*************************************player1Hp&Mp****************************************/ m_pPlayer1Hp = new CCSprite(); m_pPlayer1Hp->init(); string path = GetGameImagesPath(); path = path + "fight_lefthp.png"; m_pPlayer1Hp->initWithFile(path.c_str()); //ccColor3B ccRED={255,0,0}; //m_pPlayer1Hp->setColor( ccRED ); m_pPlayer1Hp->autorelease(); m_pPlayer1Hp->setAnchorPoint( ccp( 0,0 ) ); addChild( m_pPlayer1Hp, MAXTORQUELAYERNUM ); CCNode* pNode = GetXMLNodeFromKey( "t2dSceneObject_player1hpbar" ); m_iMaxHpBar = m_pPlayer1Hp->getTextureRect().size.width; m_iMaxHpHeight = m_pPlayer1Hp->getTextureRect().size.height; m_pPlayer1Hp->setPosition( ccp( pNode->getPosition().x - m_iMaxHpBar / 2, pNode->getPosition().y - m_iMaxHpHeight / 2 ) ); m_pPlayer1Hp->setTextureRect( CCRectMake(0, 0, m_iMaxHpBar,m_iMaxHpHeight) ); m_iHpInitPos = m_pPlayer1Hp->getPosition().x; m_pPlayer1Mp = new CCSprite(); m_pPlayer1Mp->init(); //ccColor3B ccBlue={0,0,255}; //m_pPlayer1Mp->setColor( ccBlue ); path = GetGameImagesPath(); path = path + "fight_leftmp.png"; m_pPlayer1Mp->initWithFile(path.c_str()); m_pPlayer1Mp->autorelease(); m_pPlayer1Mp->setAnchorPoint( ccp( 0,0 ) ); addChild( m_pPlayer1Mp, MAXTORQUELAYERNUM ); pNode = GetXMLNodeFromKey( "t2dSceneObject_player1MpBar" ); m_iMaxMpBar = m_pPlayer1Mp->getTextureRect().size.width; m_iMaxMpHeight = m_pPlayer1Mp->getTextureRect().size.height; m_pPlayer1Mp->setPosition( ccp( pNode->getPosition().x - m_iMaxMpBar / 2, pNode->getPosition().y - m_iMaxMpHeight / 2 ) ); m_pPlayer1Mp->setTextureRect( CCRectMake(0, 0, m_iMaxMpBar,m_iMaxMpHeight) ); m_iMpInitPos = m_pPlayer1Mp->getPosition().x; /*************************************player2Hp&Mp****************************************/ m_pPlayer2Hp = new CCSprite(); m_pPlayer2Hp->init(); path = GetGameImagesPath(); path = path + "fight_righthp.png"; m_pPlayer2Hp->initWithFile(path.c_str()); m_pPlayer2Hp->autorelease(); m_pPlayer2Hp->setAnchorPoint( ccp( 0,0 ) ); addChild( m_pPlayer2Hp, MAXTORQUELAYERNUM ); pNode = GetXMLNodeFromKey( "t2dSceneObject_player2hpbar" ); m_iMaxHpBar = m_pPlayer2Hp->getTextureRect().size.width; m_iMaxHpHeight = m_pPlayer2Hp->getTextureRect().size.height; m_pPlayer2Hp->setPosition( ccp( pNode->getPosition().x - m_iMaxHpBar / 2, pNode->getPosition().y - m_iMaxHpHeight / 2 ) ); m_pPlayer2Hp->setTextureRect( CCRectMake(0, 0, m_iMaxHpBar,m_iMaxHpHeight) ); m_pPlayer2Mp = new CCSprite(); m_pPlayer2Mp->init(); path = GetGameImagesPath(); path = path + "fight_rightmp.png"; m_pPlayer2Mp->initWithFile(path.c_str()); m_pPlayer2Mp->setAnchorPoint( ccp( 0,0 ) ); addChild( m_pPlayer2Mp, MAXTORQUELAYERNUM ); pNode = GetXMLNodeFromKey( "t2dSceneObject_player2MpBar" ); m_iMaxMpBar = m_pPlayer2Mp->getTextureRect().size.width; m_iMaxMpHeight = m_pPlayer2Mp->getTextureRect().size.height; m_pPlayer2Mp->setPosition( ccp( pNode->getPosition().x - m_iMaxMpBar / 2, pNode->getPosition().y - m_iMaxMpHeight / 2 ) ); m_pPlayer2Mp->setTextureRect( CCRectMake(0, 0, m_iMaxMpBar,m_iMaxMpHeight) ); /****************************************************************************************/ pNode = GetXMLNodeFromKey( "player1NameBg" ); m_pLeftPetName = CCLabelTTF::labelWithString( "10000",kFontSystem[FONT_TINY].fontName,kFontSystem[FONT_TINY].fontSize); m_pLeftPetName->setColor( ccWhite ); m_pLeftPetName->setString( m_pPetLeft->GetPetData()->petName.c_str() ); m_pLeftPetName->setPosition( pNode->getPosition()); addChild( m_pLeftPetName,MAXTORQUELAYERNUM ); pNode = GetXMLNodeFromKey( "player2NameBG" ); m_pRightPetName = CCLabelTTF::labelWithString( "10000",kFontSystem[FONT_SMALL].fontName,kFontSystem[FONT_TINY].fontSize); m_pRightPetName->setColor( ccWhite ); m_pRightPetName->setString( m_pPetRight->GetPetData()->petName.c_str() ); m_pRightPetName->setPosition( pNode->getPosition()); addChild( m_pRightPetName,MAXTORQUELAYERNUM ); CCSprite *pSprite= (CCSprite*)GetXMLNodeFromKey( "button_back" ); CCMenu *pMenu = CreatGameUIWithSprite( pSprite, menu_selector(CFightGroundLayer::menuCallback), 0, this, pSprite->getPosition() ); removeChild( pSprite, true ); addChild( pMenu, pSprite->getZOrder() ); std::string effectpath = GetGameParticlePath(); std::string filename = effectpath + "Glitter.plist"; CCParticleSystemQuad *pEmitter = CCParticleSystemQuad::particleWithFile( filename.c_str() ); //m_emitter->setPositionType( kCCPositionTypeRelative ); pEmitter->setPosition( getPosition() ); CCPoint pos = getPosition(); addChild( pEmitter, 100 ); AdvanceSprite *pAdv = new AdvanceSprite(); pAdv->addFramesFromiT2D( "battlenow.plist" ); pAdv->autorelease(); addChild( pAdv, 100 ); m_pBattlenow = pAdv; int battleNow[] = { 0,2,1 }; pAdv->PlayAnimation( battleNow, 1, callfunc_selector(CFightGroundLayer::FightBegin), this, false, true ); CCSize size = CCDirector::sharedDirector()->getWinSize(); pAdv->setPosition( ccp( size.width/2, size.height/2 ) ); if( CCUserDefault::sharedUserDefault()->getBoolForKey( "sound" ) ) { CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect("data/audio/Battlenow.mp3", false); } }