31 lines
489 B
Dart
31 lines
489 B
Dart
import 'package:boardgames_core/core.dart';
|
|
|
|
mixin Ownable {
|
|
List<Player> _owners = [];
|
|
|
|
int addOwner(Player player) {
|
|
_owners.add(player);
|
|
return _owners.length;
|
|
}
|
|
|
|
removeOwner(Player player) {
|
|
_owners.remove(player);
|
|
}
|
|
|
|
bool isOwner(Player player) {
|
|
return _owners.contains(player);
|
|
}
|
|
|
|
bool hasOwners() {
|
|
return _owners.length > 0;
|
|
}
|
|
|
|
List<Player> getOwners() {
|
|
return _owners.sublist(0).toList();
|
|
}
|
|
}
|
|
|
|
mixin Renderable {
|
|
void render();
|
|
}
|