fix new model

ApiManager
Lucas Delanier 2 years ago
parent f420a4fd5e
commit 6953ae96e2

@ -5,10 +5,11 @@ class Game {
DateTime _time;
int _pointsCurrentUser;
bool _isFinished;
List<String> _playerImages = [];
List<Uuid> _playerIds = [];
// Constructor
Game(this._id, this._time, this._pointsCurrentUser, this._isFinished, this._playerImages);
Game(this._id, this._time, this._pointsCurrentUser, this._isFinished,
this._playerIds);
// Getters and setters
Uuid get id => _id;
@ -35,9 +36,9 @@ class Game {
_isFinished = value;
}
List<String> get playerImages => _playerImages;
List<Uuid> get playerIds => _playerIds;
set playerImages(List<String> value) {
_playerImages = value;
set playerIds(List<Uuid> value) {
_playerIds = value;
}
}

@ -9,7 +9,7 @@ class GameDetail {
int _nbPoints;
bool _isFinished;
Round? _currentRound;
Player _host;
Uuid _host;
List<Round> _rounds = [];
List<Player> _players = [];
@ -62,9 +62,9 @@ class GameDetail {
_currentRound = value;
}
Player get host => _host;
Uuid get host => _host;
set host(Player value) {
set host(Uuid value) {
_host = value;
}

@ -1,4 +1,5 @@
library StubLib;
import '../IGameManager.dart';
import '../GameDetail.dart';
import '../Player.dart';
@ -7,7 +8,6 @@ import '../Guest.dart';
import 'StubData.dart';
import 'package:uuid/uuid.dart';
class GameManager extends IGameManager {
List<GameDetail> games = [];
final StubData parent;
@ -17,20 +17,26 @@ class GameManager extends IGameManager {
// Methods
GameDetail getGameById(Uuid id) {
return new GameDetail(Uuid(), DateTime.now(), Uuid(), 290, true, null, Guest(Uuid(),"",""), [ ], [] );
return new GameDetail(
Uuid(), DateTime.now(), Uuid(), 290, true, null, Uuid(), [], []);
}
List<GameDetail> getGamesByPlayerId(Uuid id) {
return [];
}
List<GameDetail> getGamesByPlayer(Player user) {
return [];
}
List<GameDetail> getGamesByPlayers(List<Player> users) {
return [];
}
List<User> getPlayersByIdGame(Uuid id) {
return [];
}
Map<int, Uuid> getRankByIdGame(Uuid id) {
return {};
}

@ -1,5 +1,6 @@
import 'package:uuid/uuid.dart';
import 'Achievement.dart';
import 'Game.dart';
import 'Player.dart';
import 'Stat.dart';
@ -8,9 +9,11 @@ class User extends Player {
List<Achievement> _achievements = <Achievement>[];
List<User> _friends = <User>[];
Stat _stat;
List<Game> games = [];
// Constructor
User(Uuid id, String name, String image, this._mail, this._achievements, this._friends, this._stat)
User(Uuid id, String name, String image, this._mail, this._achievements,
this._friends, this._stat)
: super(id, name, image);
// Getters and setters

@ -30,16 +30,28 @@ void main() {
print("Stats:");
for (var stat in stats) {
print("\tVictoires: ${stat.nbVictory}, Défaites: ${stat.nbDefeat}, Parties jouées: ${stat.nbGames}, Meilleur score: ${stat.highscore}, Nombre de strikes: ${stat.nbStrikes}, Nom de spares: ${stat.nbStrikes}, Moyenne score: ${stat.avgScore}, Moyenne score par round: ${stat.avgPinsPerRound}");
print(
"\tVictoires: ${stat.nbVictory}, Défaites: ${stat.nbDefeat}, Parties jouées: ${stat.nbGames}, Meilleur score: ${stat.highscore}, Nombre de strikes: ${stat.nbStrikes}, Nom de spares: ${stat.nbStrikes}, Moyenne score: ${stat.avgScore}, Moyenne score par round: ${stat.avgPinsPerRound}");
}
User ami = User(Uuid(), "Lucas","https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY","Lucas.delanier@etu.uca.fr",[],[], stats[1]);
User ami = User(
Uuid(),
"Lucas",
"https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY",
"Lucas.delanier@etu.uca.fr",
[],
[],
stats[1]);
List<Player> players = [
Player(Uuid(), "Rami", "https://fastly.picsum.photos/id/1060/2000/2000.jpg?hmac=_RrU8GpkCDUlVKfgyWE-GcX-GS5TKNyUzdFbJAGXHV4"),
Player(Uuid(), "Emre", "https://fastly.picsum.photos/id/670/2000/2000.jpg?hmac=zWqTr_vDEab3dBtp7JZgJP8TRCPNanJ4tYwDDd-jGYA"),
Guest(Uuid(), "Bot1","https://fastly.picsum.photos/id/820/2000/2000.jpg?hmac=Ctxx2feJNZnG1S7UPx_YrWcEw89tKb7fR8i1W-VTOz4"),
Guest(Uuid(), "Bot2","https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY"),
Player(Uuid(), "Rami",
"https://fastly.picsum.photos/id/1060/2000/2000.jpg?hmac=_RrU8GpkCDUlVKfgyWE-GcX-GS5TKNyUzdFbJAGXHV4"),
Player(Uuid(), "Emre",
"https://fastly.picsum.photos/id/670/2000/2000.jpg?hmac=zWqTr_vDEab3dBtp7JZgJP8TRCPNanJ4tYwDDd-jGYA"),
Guest(Uuid(), "Bot1",
"https://fastly.picsum.photos/id/820/2000/2000.jpg?hmac=Ctxx2feJNZnG1S7UPx_YrWcEw89tKb7fR8i1W-VTOz4"),
Guest(Uuid(), "Bot2",
"https://fastly.picsum.photos/id/288/2000/2000.jpg?hmac=AUboE-jzAzofYj_O3w_EqtZU3JHzcg7HR1IQd1Ce7lY"),
ami,
User(
Uuid(),
@ -51,21 +63,19 @@ void main() {
Achievement("2 strikes in a row"),
Achievement("Win a game")
],
[
ami
],
stats[0]
)
[ami],
stats[0])
];
print("Players :");
// afficahge de toutes les informations de tous les joueurs
for (var player in players) {
if (player is Guest) {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Guest");
print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Guest");
} else if (player is User) {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: User");
print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: User");
print("\tAchievements:");
for (var achievement in player.achievements) {
print("\t\tNom: ${achievement.name}");
@ -74,22 +84,101 @@ void main() {
for (var amis in player.friends) {
print("\t\tNom: ${amis.name}, Mail: ${amis.mail}");
}
print("\tVictoires: ${player.stat.nbVictory}, Défaites: ${player.stat.nbDefeat}, Parties jouées: ${player.stat.nbGames}, Meilleur score: ${player.stat.highscore}, Nombre de strikes: ${player.stat.nbStrikes}, Nom de spares: ${player.stat.nbStrikes}, Moyenne score: ${player.stat.avgScore}, Moyenne score par round: ${player.stat.avgPinsPerRound}");
print(
"\tVictoires: ${player.stat.nbVictory}, Défaites: ${player.stat.nbDefeat}, Parties jouées: ${player.stat.nbGames}, Meilleur score: ${player.stat.highscore}, Nombre de strikes: ${player.stat.nbStrikes}, Nom de spares: ${player.stat.nbStrikes}, Moyenne score: ${player.stat.avgScore}, Moyenne score par round: ${player.stat.avgPinsPerRound}");
} else {
print("\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Player");
print(
"\tID: ${player.id}, Nom: ${player.name}, Image: ${player.image}, Type: Player");
}
}
//GameDetail
List<GameDetail> games = [
GameDetail(Uuid(), DateTime.now(), players[0].id, 290, true, null, players[0], [ Round(10,null,10, players[0]), Round(5,2,7, players[1]), Round(5,2,7, players[1]), Round(5,1,12,players[0])], [players[0],players[1]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 2)), players[1].id, 250, true, null, players[1], [ Round(7,null,7, players[1]), Round(3,3,9, players[0]), Round(5,2,7, players[1]), Round(5,1,12,players[0])], [players[0],players[1]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 4)), players[2].id, 210, false, null, players[2], [ Round(8,2,10, players[2]), Round(6,2,8, players[1]), Round(4,2,6, players[2]), Round(2,2,4,players[1])], [players[1],players[2]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 7)), players[3].id, 120, true, Round(12,null,12, players[3]), players[3], [ Round(12,null,12, players[3]), Round(7,3,10, players[2]), Round(6,2,8, players[1]), Round(5,1,12,players[0])], [players[0],players[1],players[2],players[3]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 10)), players[4].id, 280, true, null, players[4], [ Round(9,1,10, players[4]), Round(7,3,10, players[2]), Round(8,2,10, players[3]), Round(5,2,7,players[1])], [players[1],players[2],players[3],players[4]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 12)), players[1].id, 240, true, null, players[1], [ Round(7,null,7, players[1]), Round(5,2,7, players[2]), Round(6,2,8, players[1]), Round(5,1,12,players[0])], [players[0],players[1],players[2],players[4]] ),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 15)), players[2].id, 200, true, null, players[2], [ Round(8,2,10, players[2]), Round(4,2,6, players[1]), Round(7,3,10, players[3]), Round(5,2,7,players[0])], [players[0],players[1],players[2],players[3]] )
GameDetail(
Uuid(), DateTime.now(), players[0].id, 290, true, null, players[0].id, [
Round(10, null, 10, players[0]),
Round(5, 2, 7, players[1]),
Round(5, 2, 7, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 2)),
players[1].id, 250, true, null, players[1].id, [
Round(7, null, 7, players[1]),
Round(3, 3, 9, players[0]),
Round(5, 2, 7, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 4)),
players[2].id, 210, false, null, players[2].id, [
Round(8, 2, 10, players[2]),
Round(6, 2, 8, players[1]),
Round(4, 2, 6, players[2]),
Round(2, 2, 4, players[1])
], [
players[1],
players[2]
]),
GameDetail(
Uuid(),
DateTime.now().subtract(Duration(days: 7)),
players[3].id,
120,
true,
Round(12, null, 12, players[3]),
players[3].id, [
Round(12, null, 12, players[3]),
Round(7, 3, 10, players[2]),
Round(6, 2, 8, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1],
players[2],
players[3]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 10)),
players[4].id, 280, true, null, players[4].id, [
Round(9, 1, 10, players[4]),
Round(7, 3, 10, players[2]),
Round(8, 2, 10, players[3]),
Round(5, 2, 7, players[1])
], [
players[1],
players[2],
players[3],
players[4]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 12)),
players[1].id, 240, true, null, players[1].id, [
Round(7, null, 7, players[1]),
Round(5, 2, 7, players[2]),
Round(6, 2, 8, players[1]),
Round(5, 1, 12, players[0])
], [
players[0],
players[1],
players[2],
players[4]
]),
GameDetail(Uuid(), DateTime.now().subtract(Duration(days: 15)),
players[2].id, 200, true, null, players[2].id, [
Round(8, 2, 10, players[2]),
Round(4, 2, 6, players[1]),
Round(7, 3, 10, players[3]),
Round(5, 2, 7, players[0])
], [
players[0],
players[1],
players[2],
players[3]
])
];
print("GameDetail :");
@ -119,8 +208,5 @@ void main() {
print("\t-----------------------------------------");
print("StubManager:");
}
}

Loading…
Cancel
Save