LCOV - code coverage report
Current view: top level - lib/src/components/mixins - collidable.dart (source / functions) Hit Total Coverage
Test: lcov.info Lines: 1 11 9.1 %
Date: 2021-08-10 15:50:53 Functions: 0 0 -

          Line data    Source code
       1             : import '../../../components.dart';
       2             : import '../../../game.dart';
       3             : import '../../components/position_component.dart';
       4             : import '../../extensions/vector2.dart';
       5             : import '../../geometry/rectangle.dart';
       6             : import 'hitbox.dart';
       7             : 
       8             : /// [CollidableType.active] collides with other [Collidable]s of type active or static
       9             : /// [CollidableType.passive] collides with other [Collidable]s of type active
      10             : /// [CollidableType.inactive] will not collide with any other [Collidable]s
      11          41 : enum CollidableType {
      12             :   active,
      13             :   passive,
      14             :   inactive,
      15             : }
      16             : 
      17             : mixin Collidable on Hitbox {
      18             :   CollidableType collidableType = CollidableType.active;
      19             : 
      20           0 :   void onCollision(Set<Vector2> intersectionPoints, Collidable other) {}
      21           0 :   void onCollisionEnd(Collidable other) {}
      22             : }
      23             : 
      24             : class ScreenCollidable<T extends BaseGame> extends PositionComponent
      25             :     with Hitbox, Collidable, HasGameRef<T> {
      26             :   @override
      27             :   CollidableType collidableType = CollidableType.passive;
      28             : 
      29             :   @override
      30           0 :   Future<void> onLoad() async {
      31           0 :     await super.onLoad();
      32           0 :     size = gameRef.size;
      33           0 :     addHitbox(HitboxRectangle());
      34             :   }
      35             : 
      36             :   final _zeroVector = Vector2.zero();
      37           0 :   @override
      38             :   void update(double dt) {
      39           0 :     super.update(dt);
      40           0 :     position = gameRef.camera.unprojectVector(_zeroVector);
      41           0 :     size = gameRef.size;
      42             :   }
      43             : }

Generated by: LCOV version 1.15