mirror of
https://github.com/flame-engine/flame.git
synced 2025-10-31 00:48:47 +08:00
feat!: Add CameraComponent to FlameGame (#2740)
This PR adds the `CameraComponent` and a `World` by default to the FlameGame.
This commit is contained in:
@ -25,21 +25,15 @@ class JoystickAdvancedExample extends FlameGame with HasCollisionDetection {
|
||||
late final TextComponent speedText;
|
||||
late final TextComponent directionText;
|
||||
|
||||
final world = World();
|
||||
late final CameraComponent cameraComponent;
|
||||
|
||||
@override
|
||||
Future<void> onLoad() async {
|
||||
cameraComponent = CameraComponent(world: world);
|
||||
addAll([cameraComponent, world]);
|
||||
|
||||
final image = await images.load('joystick.png');
|
||||
final sheet = SpriteSheet.fromColumnsAndRows(
|
||||
image: image,
|
||||
columns: 6,
|
||||
rows: 1,
|
||||
);
|
||||
world.add(ScreenHitbox()..anchor = cameraComponent.viewfinder.anchor);
|
||||
world.add(ScreenHitbox()..anchor = camera.viewfinder.anchor);
|
||||
joystick = JoystickComponent(
|
||||
knob: SpriteComponent(
|
||||
sprite: sheet.getSpriteById(1),
|
||||
@ -185,14 +179,14 @@ class JoystickAdvancedExample extends FlameGame with HasCollisionDetection {
|
||||
)..add(directionText);
|
||||
|
||||
world.add(player);
|
||||
cameraComponent.viewport.add(joystick);
|
||||
cameraComponent.viewport.add(flipButton);
|
||||
cameraComponent.viewport.add(flopButton);
|
||||
cameraComponent.viewport.add(buttonComponent);
|
||||
cameraComponent.viewport.add(spriteButtonComponent);
|
||||
cameraComponent.viewport.add(shapeButton);
|
||||
cameraComponent.viewport.add(speedWithMargin);
|
||||
cameraComponent.viewport.add(directionWithMargin);
|
||||
camera.viewport.add(joystick);
|
||||
camera.viewport.add(flipButton);
|
||||
camera.viewport.add(flopButton);
|
||||
camera.viewport.add(buttonComponent);
|
||||
camera.viewport.add(spriteButtonComponent);
|
||||
camera.viewport.add(shapeButton);
|
||||
camera.viewport.add(speedWithMargin);
|
||||
camera.viewport.add(directionWithMargin);
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
Reference in New Issue
Block a user