Added Enemy and BrownGuard classes. Added health and damage.
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
23
lib/classes/enemy.dart
Normal file
23
lib/classes/enemy.dart
Normal file
@@ -0,0 +1,23 @@
|
||||
import 'package:wolf_dart/classes/entity.dart';
|
||||
import 'package:wolf_dart/classes/linear_coordinates.dart';
|
||||
|
||||
abstract class Enemy extends Entity {
|
||||
Enemy({
|
||||
required super.x,
|
||||
required super.y,
|
||||
required super.spriteIndex,
|
||||
super.angle,
|
||||
super.state,
|
||||
super.mapId,
|
||||
super.lastActionTime,
|
||||
});
|
||||
|
||||
// Every enemy must implement its own brain!
|
||||
void update({
|
||||
required int elapsedMs,
|
||||
required LinearCoordinates player,
|
||||
required bool Function(int x, int y) isWalkable,
|
||||
required bool Function(Entity entity) hasLineOfSight,
|
||||
required void Function(int damage) onDamagePlayer,
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user