void Shooter::update() { //rand() if(mFrame %(mSpeed) == 0) { Shot* ms = new Shot(); ms->setShotType(Shot::ShotType_Fireball); ms->setInitialVelocity(float2(0.f,mInitialVelocity[Shot::ShotType_Fireball].y)); ms->setPosition(getPosition()); mRoom->addEntity(ms); } mFrame++; }
void Hero::fireWeapon(){ if(mWeaponSelected == Weapon_None){ return; } Shot* ms = new Shot(); if (mWeaponSelected == Weapon_Gun){ ms->setShotType(Shot::ShotType_Bullet); Sound::playSample("data/sounds/shoot.wav"); } else if (mWeaponSelected == Weapon_Gravity_Grenade){ ms->setShotType(Shot::ShotType_GravityGrenade); Sound::playSample("data/sounds/throwgrenade.wav"); } ms->setPosition(getPosition()); ms->setDirection(getFacingDirection()); ms->setInitialVelocity(float2(ms->getInitialVelocity().x, ms->getInitialVelocity().y * getGravityDirection())); mRoom->addEntity(ms); }