Jazz2::Actors::Multiplayer::RemotePlayerOnServer class

Remote player in online session.

Base classes

class PlayerOnServer
Player on the server in online session.

Public types

enum class PlayerFlags { None = 0, SpecialMoveMask = 0x07, IsFacingLeft = 0x10, IsVisible = 0x20, IsActivelyPushing = 0x40, JustWarped = 0x100 }
State flags of the remote player.

Constructors, destructors, conversion operators

RemotePlayerOnServer(std::shared_ptr<PeerDescriptor> peerDesc)

Public functions

auto IsLedgeClimbAllowed() const -> bool override
Returns true if ledge climbing is allowed.
auto OnHandleCollision(std::shared_ptr<ActorBase> other) -> bool override
Called when the object collides with another object.
auto OnLevelChanging(Actors::ActorBase* initiator, ExitType exitType) -> bool override
Called when the level is about to change.
void SyncWithServer(Vector2f pos, Vector2f speed, bool isVisible, bool isFacingLeft, bool isActivelyPushing)

Public variables

PlayerFlags Flags
State flags.
std::uint64_t PressedKeys
Pressed keys.
std::uint64_t PressedKeysLast
Previously pressed keys.
std::uint32_t UpdatedFrame
Last frame when pressed keys were updated.

Protected functions

auto OnActivatedAsync(const ActorActivationDetails& details) -> Task<bool> override
Called when the object is created and activated.
auto OnPerish(ActorBase* collider) -> bool override
Called when the object has no health left and should perish.
void OnUpdate(float timeMult) override
Called every frame to update the object state.
void OnHitSpring(Vector2f pos, Vector2f force, bool keepSpeedX, bool keepSpeedY, bool& removeSpecialMove) override
Called when a spring is hit.
void WarpToPosition(Vector2f pos, WarpFlags flags) override
Warps to a given position.
auto TakeDamage(std::int32_t amount, float pushForce) -> bool override
Takes damage.
auto AddAmmo(WeaponType weaponType, std::int16_t count) -> bool override
Adds weapon ammo.
void AddWeaponUpgrade(WeaponType weaponType, std::uint8_t upgrade) override
Adds weapon upgrade.
auto FireCurrentWeapon(WeaponType weaponType) -> bool override
Fires currently equipped weapon.
void EmitWeaponFlare() override
Emits weapon flare after firing.
void SetCurrentWeapon(WeaponType weaponType) override
Sets current weapon.