Jazz2::Actors::Enemies::EnemyBase class

Base class of an enemy.

Base classes

class Jazz2::Actors::ActorBase
Base class of an object.

Derived classes

class Jazz2::Actors::Bosses::BossBase
Base class of an enemy boss.
class Jazz2::Actors::Bosses::Robot
Robot (boss)
class Bat
Bat.
class Bee
Bee.
class Caterpillar
Caterpillar.
class Crab
Crab.
class Demon
Demon.
class Doggy
Doggy.
class Dragon
Dragon.
class Dragonfly
Dragonfly.
class FatChick
Fat chick.
class Fencer
Fencer.
class Fish
Fish.
class Helmut
Helmut.
class LabRat
Lab rat.
class Lizard
Lizard.
class LizardFloat
Floating lizard.
class MadderHatter
Madder hatter.
class Monkey
Monkey.
class Rapier
Rapier.
class Raven
Raven.
class Skeleton
Skeleton.
class Sparks
Sparks.
class Sucker
Sucker.
class SuckerFloat
Floating sucker.
class Turtle
Turtle.
class TurtleShell
Turtle shell.
class TurtleTough
Tough turtle.
class TurtleTube
Tube turtle.
class Witch
Witch.
class Jazz2::Actors::Environment::RollingRock
Rolling rock.
class Jazz2::Actors::Solid::SpikeBall
Spike ball.

Constructors, destructors, conversion operators

EnemyBase()

Public functions

auto OnHandleCollision(std::shared_ptr<ActorBase> other) -> bool override
Called when the object collides with another object.
auto CanCauseDamage(ActorBase* collider) -> bool override
Called to check whether collider can cause damage to the object.
auto CanHurtPlayer() const -> bool
Whether the enemy can hurt player.
auto IsFrozen() const -> bool
Whether the enemy is currently frozen.

Public variables

bool CanCollideWithShots
Whether the enemy should collide with player shots.

Protected functions

void OnUpdate(float timeMult) override
Called every frame to update the object state.
void OnHealthChanged(ActorBase* collider) override
Called when health of the object changed.
auto OnPerish(ActorBase* collider) -> bool override
Called when the object has no health left and should perish.
void AddScoreToCollider(ActorBase* collider)
void SetHealthByDifficulty(int health)
void PlaceOnGround()
auto CanMoveToPosition(float x, float y) -> bool
void TryGenerateRandomDrop()
void StartBlinking()
void HandleBlinking(float timeMult)