From 3f95f2fceef57575441cfa623b57a82da90104ac Mon Sep 17 00:00:00 2001 From: Emre Date: Thu, 9 Feb 2023 22:20:47 +0100 Subject: [PATCH] Creating class (User, Achievement, IManager, Game, Round...) --- .../bowlin_project/lib/model/Achievement.dart | 11 +++++++ Sources/bowlin_project/lib/model/Game.dart | 32 ++++++++++++++++++ .../bowlin_project/lib/model/IManager.dart | 30 +++++++++++++++++ Sources/bowlin_project/lib/model/Round.dart | 11 +++++++ Sources/bowlin_project/lib/model/User.dart | 33 +++++++++++++++++++ Sources/bowlin_project/pubspec.lock | 8 +++++ Sources/bowlin_project/pubspec.yaml | 1 + 7 files changed, 126 insertions(+) create mode 100644 Sources/bowlin_project/lib/model/Achievement.dart create mode 100644 Sources/bowlin_project/lib/model/Game.dart create mode 100644 Sources/bowlin_project/lib/model/IManager.dart create mode 100644 Sources/bowlin_project/lib/model/Round.dart create mode 100644 Sources/bowlin_project/lib/model/User.dart diff --git a/Sources/bowlin_project/lib/model/Achievement.dart b/Sources/bowlin_project/lib/model/Achievement.dart new file mode 100644 index 0000000..5e806e9 --- /dev/null +++ b/Sources/bowlin_project/lib/model/Achievement.dart @@ -0,0 +1,11 @@ +class Achievement { + String _name; + + String get name => _name; + + set name(String value) { + _name = value; + } + + Achievement(this._name); +} diff --git a/Sources/bowlin_project/lib/model/Game.dart b/Sources/bowlin_project/lib/model/Game.dart new file mode 100644 index 0000000..e1167f5 --- /dev/null +++ b/Sources/bowlin_project/lib/model/Game.dart @@ -0,0 +1,32 @@ +import 'dart:ffi'; + +import 'package:uuid/uuid.dart'; +import 'package:uuid/uuid_util.dart'; + +class Game { + var _id; + + get id => _id; + + set id(value) { + _id = value; + } + + DateTime _time; + + DateTime get time => _time; + + set time(DateTime value) { + _time = value; + } + + final Map _players; + + Map get players => _players; + + final Uuid _winner; + + Uuid get winner => _winner; + + Game(this._id, this._time, this._players, this._winner); +} diff --git a/Sources/bowlin_project/lib/model/IManager.dart b/Sources/bowlin_project/lib/model/IManager.dart new file mode 100644 index 0000000..715f244 --- /dev/null +++ b/Sources/bowlin_project/lib/model/IManager.dart @@ -0,0 +1,30 @@ +import 'package:bowl_in/model/Game.dart'; + +import 'User.dart'; + +abstract class IManager { + User _userCurrent; + + User get userCurrent => _userCurrent; + + set userCurrent(User value) { + _userCurrent = value; + } + + late Game _gameCurrent; + List _games; + + Game get gameCurrent => _gameCurrent; + + set gameCurrent(Game value) { + _gameCurrent = value; + } + + List get games => _games; + + set games(List value) { + _games = value; + } + + IManager(this._userCurrent, this._gameCurrent, this._games); +} diff --git a/Sources/bowlin_project/lib/model/Round.dart b/Sources/bowlin_project/lib/model/Round.dart new file mode 100644 index 0000000..829ec71 --- /dev/null +++ b/Sources/bowlin_project/lib/model/Round.dart @@ -0,0 +1,11 @@ +class Round { + int _nbPoints; + + int get nbPoints => _nbPoints; + + set nbPoints(int value) { + _nbPoints = value; + } + + Round(this._nbPoints); +} diff --git a/Sources/bowlin_project/lib/model/User.dart b/Sources/bowlin_project/lib/model/User.dart new file mode 100644 index 0000000..a47e2b1 --- /dev/null +++ b/Sources/bowlin_project/lib/model/User.dart @@ -0,0 +1,33 @@ +import 'package:uuid/uuid.dart'; +import 'package:uuid/uuid_util.dart'; +import 'Achievement.dart'; + +class User { + //attributes from BowlIn + Uuid _id; + + get id => _id; + + set id(value) { + _id = value; + } + + String get name => _name; + + set name(String value) { + _name = value; + } + + String _name; + + List _achievements = []; + + List get achievements => _achievements; + + set achievements(List value) { + _achievements = value; + } + + //constructors + User(this._id, this._name, this._achievements); +} diff --git a/Sources/bowlin_project/pubspec.lock b/Sources/bowlin_project/pubspec.lock index 0d74a1f..da2a4e6 100644 --- a/Sources/bowlin_project/pubspec.lock +++ b/Sources/bowlin_project/pubspec.lock @@ -413,6 +413,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.1" + uuid: + dependency: "direct main" + description: + name: uuid + sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313" + url: "https://pub.dev" + source: hosted + version: "3.0.7" vector_math: dependency: transitive description: diff --git a/Sources/bowlin_project/pubspec.yaml b/Sources/bowlin_project/pubspec.yaml index 365f457..6b6031d 100644 --- a/Sources/bowlin_project/pubspec.yaml +++ b/Sources/bowlin_project/pubspec.yaml @@ -39,6 +39,7 @@ dependencies: simple_gradient_text: ^1.2.4 google_fonts: ^3.0.1 go_router: ^6.0.1 + uuid: ^3.0.7 dev_dependencies: flutter_test: