Website Summary Files Commits Branches @commit @diff @stats
path: root / src / Web / PUSG.Web / Models / Shell.cs
diff options
context:
space:
mode:
Commite8ee7b69663a95d97b226266ebe3ccc95e13c309 (patch)
Author
 ivaylo.zhelev <ivaylo.zhelev@solarwinds.com>
2021-01-31 16:42:30 +0200
Committer
 ivaylo.zhelev <ivaylo.zhelev@solarwinds.com>
2021-01-31 16:42:30 +0200
Files9eed7de1b817c812d61514950a9299aa2cb8d887 /src/Web/PUSG.Web/Models/Shell.cs
pusg-api-e8ee7b69663a95d97b226266ebe3ccc95e13c309.tar
pusg-api-e8ee7b69663a95d97b226266ebe3ccc95e13c309.tar.gz
pusg-api-e8ee7b69663a95d97b226266ebe3ccc95e13c309.zip
Parent6fb05a2a6f94e008dc689291d0522f39f87a6622 (diff)
Major Business Logic Implementation
* Added GameHub * Added Back-End Game Loop and Game Mechanics * Added End Game and Result message
1 files changed, 40 insertions, 0 deletions
-rw-r--r--src/Web/PUSG.Web/Models/Shell.cs40
diff --git a/src/Web/PUSG.Web/Models/Shell.cs b/src/Web/PUSG.Web/Models/Shell.cs
new file mode 100644
index 0000000..f005423
--- /dev/null
+++ b/src/Web/PUSG.Web/Models/Shell.cs
@@ -0,0 +1,40 @@
+using System;
+
+namespace PUSG.Web.Models
+{
+ public class Shell : BaseGameObject
+ {
+ public string Id { get; set; } = Guid.NewGuid().ToString();
+
+ public string Direction { get; set; }
+
+ public string Color { get; set; }
+
+ public bool IsDestroyable { get; set; } = false;
+
+ public void Update()
+ {
+ if(this.Direction == "up")
+ {
+ this.Y -= 7;
+ }
+ else if(this.Direction == "right")
+ {
+ this.X += 7;
+ }
+ else if(this.Direction == "down")
+ {
+ this.Y += 7;
+ }
+ else if(this.Direction == "left")
+ {
+ this.X -= 7;
+ }
+
+ if(this.Y < 0 || this.Y > 1366 || this.X < 0 || this.X > 1366)
+ {
+ this.IsDestroyable = true;
+ }
+ }
+ }
+}