Files
flame/examples/lib/commons/circle_component.dart
Pasha Stetsenko d9984c7bda RemoveEffect (#1063)
* Added FlameAnimationController class

* Added MainAnimationController class

* Update doc comments

* formatting

* rename MainAnimationController

* Added tests for StandardAnimationController

* Added more tests

* comment

* Added changelog note

* Export StandardAnimationController

* formatting

* Use a default for 'curve' parameter

* rename onsetDelay -> startDelay

* Added Transofm2DEffect

* Added EffectComponent

* Added .transform getter

* formatting

* Rename EffectComponent -> Effect

* Add documentation for the Effect class

* minor

* Added a test for Effect class

* Adding tests for removeOnFinish

* Adding tests for onStart and onFinish

* Also check the effect after reset

* Fix-up merge

* formatting

* added doc-comments

* changelog note

* Added test for transform2DEffect

* Adjusted comments

* Make PositionComponent._transform public

* change changelog

* Added SimpleEffectController

* Added DestroyEffect

* Changelog note

* Rename DestroyEffect -> RemoveEffect

* Added example for RemoveEffect

* flutter format

* Move description of the RemoveEffectExample game

* move the description again

* minor
2021-11-02 09:59:35 +01:00

29 lines
679 B
Dart

import 'dart:ui';
import 'package:flame/components.dart';
class CircleComponent extends PositionComponent {
CircleComponent({this.radius = 10.0})
: paint = Paint()..color = const Color(0xFF60CB35),
super(
size: Vector2.all(2 * radius),
anchor: Anchor.center,
);
Paint paint;
double radius;
@override
void render(Canvas canvas) {
super.render(canvas);
canvas.drawCircle(Offset(radius, radius), radius, paint);
}
@override
bool containsPoint(Vector2 point) {
final local = absoluteToLocal(point);
final center = Vector2.all(radius);
return local.distanceToSquared(center) <= radius * radius;
}
}