From 2786393a61c02eb3759d59aeffdc91cf48884c0f Mon Sep 17 00:00:00 2001
From: Leonard <Leonard@Leonard.Leo>
Date: Fri, 29 May 2020 19:08:03 +0300
Subject: [PATCH] added hangar controller, added field in overworld

---
 .../Model/Map/Overworld.java                  |  5 ++
 .../Server/Services/HangarService.java        | 30 +++++++--
 .../Server/Services/RoomService.java          |  4 +-
 .../Server/Services/ShipService.java          | 63 -------------------
 4 files changed, 32 insertions(+), 70 deletions(-)
 delete mode 100644 core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/ShipService.java

diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Model/Map/Overworld.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Model/Map/Overworld.java
index 25cdf1fe..76714081 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Model/Map/Overworld.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Model/Map/Overworld.java
@@ -25,6 +25,11 @@ public class Overworld implements Serializable {
     @DatabaseField(columnName = "planetMap")
     private HashMap<float[],Planet> planetMap;
 
+    /** The start planet */
+    @NonNull
+    @DatabaseField(columnName = "startPlanet")
+    private Planet startPlanet;
+
     /** Constructor */
     public Overworld(int seed) {
         planetMap = new HashMap<>();
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/HangarService.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/HangarService.java
index 99812d22..789da815 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/HangarService.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/HangarService.java
@@ -1,14 +1,32 @@
 package com.galaxytrucker.galaxytruckerreloaded.Server.Services;
 
-import java.util.UUID;
+import com.galaxytrucker.galaxytruckerreloaded.Model.Map.Overworld;
+import com.galaxytrucker.galaxytruckerreloaded.Model.Ship;
 
-/** Handles picking a ship, creating the game map and so on */
+/**
+ * Handles picking a ship, creating the game map and so on
+ */
 public class HangarService {
 
-    /** Generate a map
+    /**
+     * Generate a map
+     *
      * @param username - the user who to generate a map for
-     * @param seed - seed for map generation */
-    public void generateMap(String username,int seed){}
+     * @param seed     - seed for map generation
+     * @return the generated map
+     */
+    public Overworld generateMap(String username, int seed) {
+        return null;
+    }
 
-    /** */
+    /**
+     * Make the user pick a ship
+     *
+     * @param username   - the user who wants to pick a ship
+     * @param shipDesign - the ship design the user chose
+     * @return a new ship object for that design
+     */
+    public Ship chooseShip(String username, String shipDesign) {
+        return null;
+    }
 }
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/RoomService.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/RoomService.java
index e59d0d8d..8811859d 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/RoomService.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/RoomService.java
@@ -23,7 +23,9 @@ public class RoomService {
     /** Cause a breach in a room
      * @param ship - the ship the breach is happening on
      * @param room - the room the breach is happening in */
-    public void causeBreach(Ship ship,Room room){}
+    public void causeBreach(Ship ship,Room room){
+
+    }
 
     /** Disable a system
      * @param ship - the ship to disable a system on
diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/ShipService.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/ShipService.java
deleted file mode 100644
index 0b8cb8af..00000000
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/Services/ShipService.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.galaxytrucker.galaxytruckerreloaded.Server.Services;
-
-import com.galaxytrucker.galaxytruckerreloaded.Model.Ship;
-import com.galaxytrucker.galaxytruckerreloaded.Model.User;
-import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.DuplicateShipException;
-import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.ShipNotFoundException;
-import com.galaxytrucker.galaxytruckerreloaded.Server.Exception.UserNotFoundException;
-import com.galaxytrucker.galaxytruckerreloaded.Server.Persistence.ObjectDAO;
-import com.galaxytrucker.galaxytruckerreloaded.Server.Persistence.ShipDAO;
-import com.j256.ormlite.support.ConnectionSource;
-
-public class ShipService {
-
-    /**
-     * The DAO used by the service
-     */
-    private ShipDAO shipDAO;
-
-    /**
-     * Add a new ship to the database
-     *
-     * @param s - the ship to add
-     *
-     * @throws DuplicateShipException if the ship already exists in the database
-     */
-    public void persist(Ship s) throws DuplicateShipException {
-    }
-
-    /** Update a ship in the database
-     * @param s - the ship to update \
-     * @throws ShipNotFoundException if the ship cannot be found in the database */
-    public void update(Ship s) throws ShipNotFoundException{
-
-    }
-
-    /**
-     * Fetch a ship from the database using the user associated to it
-     *
-     * @param u - the user associated to the ship
-     *
-     * @throws UserNotFoundException if the user cannot be found in the database
-     */
-    public User getShipByUser(User u) throws UserNotFoundException {
-        return null;
-    }
-
-    /**
-     * Remove a ship from the database
-     *
-     * @param s - the ship to remove from the database
-     */
-    public void remove(Ship s) throws ShipNotFoundException {
-    }
-
-    /**
-     * Constructor
-     *
-     * @param source - the database connection source
-     */
-    public ShipService(ConnectionSource source) {
-    }
-
-}
-- 
GitLab