summaryrefslogtreecommitdiff
path: root/lib/models
diff options
context:
space:
mode:
Diffstat (limited to 'lib/models')
-rw-r--r--lib/models/arrow_direction.dart12
-rw-r--r--lib/models/input_direction.dart14
-rw-r--r--lib/models/note.dart10
3 files changed, 36 insertions, 0 deletions
diff --git a/lib/models/arrow_direction.dart b/lib/models/arrow_direction.dart
new file mode 100644
index 0000000..5f0298b
--- /dev/null
+++ b/lib/models/arrow_direction.dart
@@ -0,0 +1,12 @@
+import 'package:flutter/material.dart';
+
+enum ArrowDirection {
+ left(Icons.arrow_back),
+ down(Icons.arrow_downward),
+ up(Icons.arrow_upward),
+ right(Icons.arrow_forward);
+
+ const ArrowDirection(this.icon);
+
+ final IconData icon;
+}
diff --git a/lib/models/input_direction.dart b/lib/models/input_direction.dart
new file mode 100644
index 0000000..b15b880
--- /dev/null
+++ b/lib/models/input_direction.dart
@@ -0,0 +1,14 @@
+class InputDirection {
+ bool up = false;
+ bool down = false;
+ bool left = false;
+ bool right = false;
+
+ /// reset all directions to false
+ void reset() {
+ up = false;
+ down = false;
+ left = false;
+ right = false;
+ }
+}
diff --git a/lib/models/note.dart b/lib/models/note.dart
new file mode 100644
index 0000000..bcc6ac6
--- /dev/null
+++ b/lib/models/note.dart
@@ -0,0 +1,10 @@
+import 'package:sense_the_rhythm/models/arrow_direction.dart';
+
+class Note {
+ final double time;
+ final ArrowDirection direction;
+ double position = 0;
+ bool? wasHit;
+
+ Note({required this.time, required this.direction});
+}