Files
flame/packages/flame_forge2d/example/lib/contact_callbacks_sample.dart
Lukas Klingsbo 5c47d7f6d7 chore: analyze issues introduced from new dart version (#1196)
* Added Component.childrenFactory

* fix some of the lint warnings

* more lint warnings

* remove changelog entry

* more analyzer warnings

* one more warning

* one more warning

* remove more unused imports

* fix more warnings

* another warning

* one more warning

* a lot more warnings

* some more warnings

* fix warnings in flame_svg

* fix warnings in flame_bloc

* Remove OrderedSet override feature

* Remove testRandom change

* Remove unnecessary type checks

* Re-remove deprecated argument in random_test

Co-authored-by: Pasha Stetsenko <stpasha@google.com>
2021-12-09 15:40:43 +01:00

33 lines
853 B
Dart

import 'dart:math' as math;
import 'package:flame/input.dart';
import 'package:flame_forge2d/forge2d_game.dart';
import 'balls.dart';
import 'boundaries.dart';
class ContactCallbacksSample extends Forge2DGame with TapDetector {
ContactCallbacksSample() : super(gravity: Vector2(0, -10.0));
@override
Future<void> onLoad() async {
await super.onLoad();
final boundaries = createBoundaries(this);
boundaries.forEach(add);
addContactCallback(BallContactCallback());
addContactCallback(BallWallContactCallback());
addContactCallback(WhiteBallContactCallback());
}
@override
void onTapDown(TapDownInfo details) {
super.onTapDown(details);
final position = details.eventPosition.game;
if (math.Random().nextInt(10) < 2) {
add(WhiteBall(position));
} else {
add(Ball(position));
}
}
}