void EnemyGreenNinja::Reset() { SetAnimation(ENEMY_GREEN_NINJA_ANIM_MOVE, 0, false, false, 22, false); SetCurLife(enemy_green_ninja_set_cur_life); SetNumLifeBars((int)(enemy_green_ninja_set_cur_life * .2f + 1)); ipFlags.S_DEAD = false; ipFlags.S_ACTIVE = true; }
Enemy::Enemy():xViewLoc(0), yViewLoc(0) { // this->curLevel = curLevel; SetMaxAttacks(5); SetCurLife(enemy_blue_ninja_set_cur_life); SetNumLifeBars((int)(enemy_blue_ninja_set_cur_life * .2f + 1)); SetDamageTimer(.5); introtimer = 3; m_rangeExtra = (rand()%6)*16; m_rangeExtra *= m_rangeExtra; }
EnemyZombiePrisoner::EnemyZombiePrisoner(Level *curLevel) { SetRenderOffset(enemy_prisoner_zombie_render_offset); SetCurLife(enemy_prisoner_zombie_cur_life); SetNumLifeBars((int)(enemy_prisoner_zombie_cur_life * .2f + 1)); SetDamageTimer(.25); SetWeaponDamage(3); level_class = curLevel; ipFlags.S_ATTACK = true; SetMaxWalkVelocity(static_cast<float>(rand()%30 + 30)); rectDX = 15; rectDY = 45; rectXOffset = -nxOffSet; rectYOffset = -15; }
EnemyPrisonerRock::EnemyPrisonerRock(Level *curLevel) { SetRenderOffset(enemy_ninja_render_offset); SetCurLife(3); // SetSprite(1, 8); level_class = curLevel; rectDX = 15; rectDY = 45; rectXOffset = -nxOffSet; rectYOffset = -15; CR::Graphics::Sprite *temps; temps = graphics_engine->CreateSprite1(); temps->SetImage(CR::AssetList::prisoner_rock); }
EnemyShadowElitePistol::EnemyShadowElitePistol(Level *curLevel) { // SetCurLife(enemy_blue_ninja_set_cur_life); SetSprite(1, CR::AssetList::elite_guard); level_class = curLevel; SetRenderOffset(9); SetCurLife(8); SetNumLifeBars(2); //SetCurLife(15); //SetNumLifeBars(3); rectDX = 15; rectDY = 45; rectXOffset = -nxOffSet; rectYOffset = -15; }
void Enemy::InitEnemy(int nHitPoints, int nMaxXVelocity, int nMaxYVelocity, float nMaxXAcceleration, float nRecoveryTime, int nPointValue, bool bRenderHBar) { SetWeaponDamage(0); SetCurLife(nHitPoints); SetNumLifeBars(static_cast<int>(nHitPoints * .20)); if(GetNumLifeBars() <= 0) SetNumLifeBars(1); SetWalkAcceleration(nMaxXAcceleration); SetMaxWalkVelocity(static_cast<float>(nMaxXVelocity)); // SetMaxJumpVelocity(nMaxYVelocity); SetDamageTimer(nRecoveryTime); SetEnergyLevel(0); SetExtraLives(0); // SetMaxClimbVelocity(0); SetRenderHealthBar(bRenderHBar); }
EnemyWolfGawain::EnemyWolfGawain(Level *curLevel, IPlayer *player) { maxWalkSpeed = 100.00; ipFlags.S_NO_GRAVITY = true; SetCurLife(6); SetNumLifeBars(1); level_class = curLevel; SetDamageTimer(1); this->player = player; ipFlags.S_ATTACK = true; HIT = false; COLLISION = false; START = false; SetWeaponDamage(5); // SetMaxWalkVelocity(60); }
void EnemyDoor::doDoor(int type) { //ipFlags.fInvulnerableTimer = 1000; //ipFlags.S_INVULNERABLE = true; ipFlags.door = true; if(type >= 3) type += 1; if(isDead) return; if(this->type == (type-1)) { SetCurLife(-1); ipFlags.door = false; } else { if(game_class->player->IsWeaponAvailable(type+1)) TutorialManager::Instance().Trigger(TutorialManager::TDOOR2); else TutorialManager::Instance().Trigger(TutorialManager::TDOOR); } }