import 'package:hive/hive.dart'; part 'player_model.g.dart'; @HiveType(typeId: 0) class PlayerModel extends HiveObject { @HiveField(0) final String id; @HiveField(1) String name; @HiveField(2) Gender gender; @HiveField(3) SkillLevel skillLevel; @HiveField(4) List positions; // Mehrere möglich @HiveField(5) int wins = 0; @HiveField(6) List lastTeammates = []; // IDs der letzten Teamkollegen (max 5 behalten?) @HiveField(7) bool hasSatOut = false; // Schon mal ausgesetzt? @HiveField(8, defaultValue: true) bool isActive = true; PlayerModel({ required this.id, required this.name, required this.gender, required this.skillLevel, required this.positions, this.wins = 0, this.lastTeammates = const [], this.hasSatOut = false, this.isActive = true, }); } @HiveType(typeId: 1) // Jede Enum braucht eine eigene typeId! enum Gender { @HiveField(0) male, @HiveField(1) female, @HiveField(2) diverse, } @HiveType(typeId: 2) enum SkillLevel { @HiveField(0) low, @HiveField(1) mid, @HiveField(2) high, } @HiveType(typeId: 3) enum Position { @HiveField(0) aussen, @HiveField(1) mitte, @HiveField(2) diagonal, @HiveField(3) zuspieler, @HiveField(4) libero, }