mirror of
https://github.com/flame-engine/flame.git
synced 2025-11-04 04:47:13 +08:00
Reverting doc rename
This commit is contained in:
59
doc/examples/sound/lib/main.dart
Normal file
59
doc/examples/sound/lib/main.dart
Normal file
@ -0,0 +1,59 @@
|
||||
import 'package:flame/flame.dart';
|
||||
import 'package:flame/game.dart';
|
||||
import 'package:flame/components/component.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
final Size size = await Flame.util.initialDimensions();
|
||||
runApp(MyGame(size).widget);
|
||||
}
|
||||
|
||||
class Ball extends PositionComponent {
|
||||
final Size gameSize;
|
||||
final paint = Paint()..color = const Color(0xFFFFFFFF);
|
||||
|
||||
bool forward = true;
|
||||
|
||||
Ball(this.gameSize);
|
||||
|
||||
@override
|
||||
void render(Canvas c) {
|
||||
c.drawOval(toRect(), paint);
|
||||
}
|
||||
|
||||
@override
|
||||
void update(double delta) {
|
||||
x += (forward ? 1 : -1) * 100 * delta;
|
||||
|
||||
if (x <= 0 || x + width >= gameSize.width) {
|
||||
if (forward) {
|
||||
x = gameSize.width - width - 1;
|
||||
} else {
|
||||
x = 1;
|
||||
}
|
||||
|
||||
forward = !forward;
|
||||
print('boin');
|
||||
Flame.audio.play('boin.mp3', volume: 1.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class MyGame extends BaseGame {
|
||||
MyGame(Size screenSize) {
|
||||
size = screenSize;
|
||||
_start();
|
||||
}
|
||||
|
||||
void _start() async {
|
||||
Flame.audio.disableLog();
|
||||
Flame.audio.load('boin.mp3');
|
||||
Flame.audio.loop('music.mp3', volume: 0.4);
|
||||
|
||||
add(Ball(size)
|
||||
..y = (size.height / 2) - 50
|
||||
..width = 100
|
||||
..height = 100);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user