protected virtual void HandleProjectileMoved(ProjectilesMovedSignal s) { if (!s.ProjectilesPositions.TryGetValue(EntityView.EntityGuid, out var position)) { return; } entityTransform.position = position; }
public override void Update() { base.Update(); var projectilesCount = Data.Count; if (projectilesCount == 0) { return; } var projectilesMovedSignal = new ProjectilesMovedSignal(); for (int i = 0; i < projectilesCount; i++) { var projectileData = Data[i]; projectileData.UpdatePosition(Time.deltaTime); projectilesMovedSignal.AddProjectilePosition( projectileData.EntityGuid, projectileData.ProjectilePosition); } Manager.SignalBus.Fire(projectilesMovedSignal); }