bool GameComplete::init() { if (!Layer::init()) { return false; } auto winLabel = Label::createWithSystemFont("Game Win","Marker Felt.ttf",50); winLabel->setColor(Color3B::RED); winLabel->setPosition(Vec2(240,160)); addChild(winLabel); auto mSystem = ParticleSystemQuad::create("fengye.plist"); mSystem->setTextureWithRect(Director::getInstance()->getTextureCache()->addImage("fengye.png"),Rect(0,0,91,91)); mSystem->setBlendAdditive(true); mSystem->setPosition(Vec2(240,160)); addChild(mSystem); auto close = MenuItemImage::create("CloseNormal.png","CloseSelected.png"); close->setCallback(CC_CALLBACK_1(GameComplete::menuCloseCallBack,this)); close->setPosition(Vec2(460,20)); auto menu = Menu::create(close,NULL); menu->setPosition(Vec2::ZERO); addChild(menu,2); return true; }
bool Player::init() { _size = 0; _Model = EffectSprite3D::createFromObjFileAndTexture("playerv002.c3b", "playerv002_256.png"); _HealthSound = FMODAudioEngine::getEvent("event:/SFX/low_health"); _HealthSound->getParameter("health", &_HealthSoundParam); _HealthSoundParam->setValue(1.0f); // Start at full health if(_Model) { targetAngle = 0; targetPos = Vec2(0,0); _trailOffset = Vec2(0,-40); _Model->setScale(8); addChild(_Model); // _Model->setRotation3D(Vec3(90,0,0)); _radius = 40; _HP = 100; _alive = true; auto listener = EventListenerTouchOneByOne::create(); listener->setSwallowTouches(true); listener->onTouchBegan = CC_CALLBACK_2(Player::onTouchBegan, this); listener->onTouchMoved = CC_CALLBACK_2(Player::onTouchMoved, this); listener->onTouchEnded = CC_CALLBACK_2(Player::onTouchEnded, this); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); //scheduleUpdate(); GameEntity::UseOutlineEffect(static_cast<Sprite3D*>(_Model), 0.02, Color3B(0,0,0)); schedule(schedule_selector(Player::shootMissile), 1.5, -1, 0); schedule(schedule_selector(Player::shoot), 0.075, -1, 0); // engine trail auto part_frame=SpriteFrameCache::getInstance()->getSpriteFrameByName("engine2.jpg"); ValueMap vm=ParticleManager::getInstance()->GetPlistData("engine"); auto part = ParticleSystemQuad::create(vm); part->setTextureWithRect(part_frame->getTexture(), part_frame->getRect()); addChild(part); part->setPosition(0,-30); part->setScale(0.6); //part->setRotation(90); //controller support ios and android #if(CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS) //need include base/CCEventListenerController.h and base/CCController.h文件 auto controlListener = EventListenerController::create(); controlListener->onKeyDown = CC_CALLBACK_3(Player::onKeyDown,this); controlListener->onKeyUp = CC_CALLBACK_3(Player::onKeyUp,this); controlListener->onAxisEvent = CC_CALLBACK_3(Player::onAxisEvent,this); _eventDispatcher->addEventListenerWithSceneGraphPriority(controlListener,this); Controller::startDiscoveryController(); //init this->axisX = 0; this->axisY = 0; this->keyX = 0; this->keyY = 0; #endif return true; } return false; }