From 8cf24983c6d86253037e4423eacd65687db8a05e Mon Sep 17 00:00:00 2001
From: Leonard <Leonard@Leonard.Leo>
Date: Mon, 13 Jul 2020 14:33:09 +0300
Subject: [PATCH] added bulwark

---
 .../Server/ClientHandler.java                 | 101 +++++++++++++++++-
 desktop/database.mv.db                        | Bin 0 -> 45056 bytes
 2 files changed, 98 insertions(+), 3 deletions(-)
 create mode 100644 desktop/database.mv.db

diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/ClientHandler.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/ClientHandler.java
index b8fe2c1f..176a9136 100644
--- a/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/ClientHandler.java
+++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/Server/ClientHandler.java
@@ -315,7 +315,7 @@ public class ClientHandler implements Runnable {
                                 (float) 1.0, (float) 0.3, 0, (float) 0.3, 1, 1, "Laser Gun", 30);
                         Weapon rocket = new Weapon(UUID.randomUUID().hashCode(), 1, 2, 2, 1, 1, (float) 1.0,
                                 (float) 0.25, 4, (float) 1.0, 2, 1, "Allahu Akbar", 30);
-                        // TODO add weapon price list
+                        // TODO Add weapon price list based on weapon level
                         laser.setWeaponSystem(weapons);
                         rocket.setWeaponSystem(weapons);
                         List<Weapon> shipWeapons = new ArrayList<>();
@@ -368,11 +368,106 @@ public class ClientHandler implements Runnable {
                 }
                 return new Ship(UUID.randomUUID().hashCode(), username, shipType, 30, 60, 11, 7, 8,
                         0, 0, 0, overworld.getStartPlanet(), 0, 100, rooms, inventory, false);
-            // ========== Bulwark A ==========
+            // ========== ROCK A ==========
             case TANK:
+                crewStats.add(0);
+                crewStats.add(3);
+                crewStats.add(4);
+                crewStats.add(3);
+                crewStats.add(0);
                 // ========== Tile Generator ==========
+                for (int i=0;i<18;++i){
+                    // Vertical 2x1
+                    if (i<=4 || i==14 || i==16 || i==17) {
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),0,0));
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),0,1));
+                    }
+                    // Horizontal 1x2
+                    else if (i == 6 || i== 7 || i==10 || i==11){
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),0,0));
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),1,0));
+                    }
+                    // Normal 4x4
+                    else{
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),0,0));
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),1,0));
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),0,1));
+                        tiles.add(new Tile(UUID.randomUUID().hashCode(),1,1));
+                    }
+                    // ========== Room Generator ==========
+                    // O2
+                    if (i==0){
+                        rooms.add(new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,1,5,0,SystemType.O2,new ArrayList<Weapon>()));
 
-                // ========== Room Generator ==========
+                    }
+                    // Cameras
+                    else if (i==1){
+                        rooms.add(new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,1,5,0,SystemType.CAMERAS,new ArrayList<Weapon>()));
+                    }
+                    // Shields
+                    else if (i==5){
+                        rooms.add(new System(UUID.randomUUID().hashCode(),0,100,i, new ArrayList<Crew>(),
+                                tiles,2,5,0,SystemType.SHIELDS,new ArrayList<Weapon>()));
+                    }
+                    // Engine
+                    else if (i==8){
+                        Room engine = new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,2,5, 0,SystemType.ENGINE,new ArrayList<Weapon>());
+                        Crew c = new Crew(UUID.randomUUID().hashCode(),"Varnas",8, 8, crewStats, 3 * crewStats.size() * 2, username);
+                        c.setTile(tiles.get(0));
+                        tiles.get(0).setStandingOnMe(c);
+                        engine.setTiles(tiles);
+                        c.setCurrentRoom(engine);
+                        List<Crew> crewInRoom = engine.getCrew();
+                        crewInRoom.add(c);
+                        engine.setCrew(crewInRoom);
+                        rooms.add(engine);
+                    }
+                    // Weapons
+                    else if (i==12){
+                        System weapons = new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,3,5,0,SystemType.WEAPON_SYSTEM,new ArrayList<Weapon>());
+                        Weapon rocket2 = new Weapon(UUID.randomUUID().hashCode(),2,3,2,1,1,
+                                (float) 0.3,(float)0.25,4,(float)1.0,2,1,"Rocket 2",25);
+                        Weapon rocket1 = new Weapon(UUID.randomUUID().hashCode(),2,2,2,1,1,
+                                (float) 0.3,(float)0.25,4,(float)1.0,2,1,"Rocket 1",25);
+                        // TODO Add weapon price list based on weapon level
+                        List<Weapon> currentWeapons = weapons.getShipWeapons();
+                        rocket1.setWeaponSystem(weapons);
+                        rocket2.setWeaponSystem(weapons);
+                        currentWeapons.add(rocket1);
+                        currentWeapons.add(rocket2);
+                        weapons.setShipWeapons(currentWeapons);
+                        rooms.add(weapons);
+                    }
+                    // Medbay
+                    else if (i==15){
+                        rooms.add(new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,1,5,0,SystemType.MEDBAY,new ArrayList<Weapon>()));
+                    }
+                    // Cockpit
+                    else if (i==16){
+                        Room cockpit = new System(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),
+                                tiles,1,5,0,SystemType.COCKPIT,new ArrayList<Weapon>());
+                        Crew c = new Crew(UUID.randomUUID().hashCode(),"Bomfy",8,8,crewStats,3 * crewStats.size() * 2, username);
+                        c.setTile(cockpit.getTiles().get(0));
+                        c.setCurrentRoom(cockpit);
+                        tiles.get(0).setStandingOnMe(c);
+                        cockpit.setTiles(tiles);
+                        List<Crew> crewInRoom = cockpit.getCrew();
+                        crewInRoom.add(c);
+                        cockpit.setCrew(crewInRoom);
+                        rooms.add(cockpit);
+                    }
+                    else {
+                        rooms.add(new Room(UUID.randomUUID().hashCode(),0,100,i,new ArrayList<Crew>(),tiles));
+                    }
+                    tiles.clear();
+                }
+                return new Ship(UUID.randomUUID().hashCode(), username, shipType, 50, 10, 30, 4, 9,
+                        0, 0, 0, overworld.getStartPlanet(), 0, 100, rooms, inventory, false);
             default:
                 return null;
         }
diff --git a/desktop/database.mv.db b/desktop/database.mv.db
new file mode 100644
index 0000000000000000000000000000000000000000..e0b25930d89215382a66126ff7dadede61aa0b94
GIT binary patch
literal 45056
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

literal 0
HcmV?d00001

-- 
GitLab