|
|
@ -26,6 +26,7 @@ import java.sql.SQLException; |
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.concurrent.ConcurrentHashMap; |
|
|
|
import java.util.concurrent.ConcurrentHashMap; |
|
|
|
|
|
|
|
import java.util.concurrent.ThreadLocalRandom; |
|
|
|
|
|
|
|
|
|
|
|
import static engine.gameManager.DbManager.MineQueries; |
|
|
|
import static engine.gameManager.DbManager.MineQueries; |
|
|
|
import static engine.gameManager.DbManager.getObject; |
|
|
|
import static engine.gameManager.DbManager.getObject; |
|
|
@ -51,6 +52,8 @@ public class Mine extends AbstractGameObject { |
|
|
|
private int buildingID; |
|
|
|
private int buildingID; |
|
|
|
private MineProduction mineType; |
|
|
|
private MineProduction mineType; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int capSize; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* ResultSet Constructor |
|
|
|
* ResultSet Constructor |
|
|
|
*/ |
|
|
|
*/ |
|
|
@ -91,6 +94,16 @@ public class Mine extends AbstractGameObject { |
|
|
|
this.production = Resource.valueOf(rs.getString("mine_resource")); |
|
|
|
this.production = Resource.valueOf(rs.getString("mine_resource")); |
|
|
|
this.lastClaimer = null; |
|
|
|
this.lastClaimer = null; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int capRoll = ThreadLocalRandom.current().nextInt(0,100); |
|
|
|
|
|
|
|
if(capRoll >= 0 && capRoll <= 33){ |
|
|
|
|
|
|
|
this.capSize = 5; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if(capRoll >= 34 && capRoll <= 66){ |
|
|
|
|
|
|
|
this.capSize = 10; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if(capRoll >= 67 && capRoll <= 100){ |
|
|
|
|
|
|
|
this.capSize = 20; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static void releaseMineClaims(PlayerCharacter playerCharacter) { |
|
|
|
public static void releaseMineClaims(PlayerCharacter playerCharacter) { |
|
|
@ -165,7 +178,7 @@ public class Mine extends AbstractGameObject { |
|
|
|
writer.putInt(mine.getObjectUUID()); |
|
|
|
writer.putInt(mine.getObjectUUID()); |
|
|
|
writer.putInt(mine.getObjectUUID()); //actually a hash of mine
|
|
|
|
writer.putInt(mine.getObjectUUID()); //actually a hash of mine
|
|
|
|
writer.putString(mine.mineType.name); |
|
|
|
writer.putString(mine.mineType.name); |
|
|
|
writer.putString(mine.zoneName); |
|
|
|
writer.putString(mine.zoneName + " " + mine.capSize + " Man "); |
|
|
|
writer.putInt(mine.production.hash); |
|
|
|
writer.putInt(mine.production.hash); |
|
|
|
writer.putInt(mine.production.baseProduction); |
|
|
|
writer.putInt(mine.production.baseProduction); |
|
|
|
writer.putInt(mine.getModifiedProductionAmount()); //TODO calculate range penalty here
|
|
|
|
writer.putInt(mine.getModifiedProductionAmount()); //TODO calculate range penalty here
|
|
|
|