Jazz2::Actors::Multiplayer::RemoteElectroShot class

Remote representation of the electro shot in online session.

The electro shot has no visible sprite of its own - the owning actor renders it by spawning a swirl of particles every frame, which the generic synchronization can't carry over. This representation replays the same particle emitter (and its light) locally at the synchronized position. The powered-up variant is carried in the synchronized animation state, see Weapons::ElectroShot::PoweredUpAnimState.

Base classes

class RemoteActor
Remote object in online session.

Constructors, destructors, conversion operators

RemoteElectroShot()
Creates a new instance.

Public functions

void AssignMetadata(std::uint8_t flags, ActorState state, StringView path, AnimState anim, float rotation, float scaleX, float scaleY, ActorRendererType rendererType, DrawableNode::BlendingPreset blendingPreset) override
Initializes the actor from metadata received from the server.

Protected functions

void OnUpdate(float timeMult) override
Called every frame to update the object state.
void OnEmitLights(SmallVectorImpl<LightEmitter>& lights) override
Called when emitting lights.