Esempio n. 1
0
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;
}
Esempio n. 2
0
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;
}