new mines system
This commit is contained in:
@@ -115,95 +115,18 @@ public class Mine extends AbstractGameObject {
|
|||||||
this.lastClaimer = null;
|
this.lastClaimer = null;
|
||||||
this.liveHour = rs.getInt("mineLiveHour");
|
this.liveHour = rs.getInt("mineLiveHour");
|
||||||
this.liveMinute = rs.getInt("mineLiveMinute");
|
this.liveMinute = rs.getInt("mineLiveMinute");
|
||||||
}
|
this.capSize = rs.getInt("capSize");
|
||||||
}
|
|
||||||
|
|
||||||
public static void SetTimes(){
|
if(BuildingManager.getBuilding(this.buildingID) != null) {
|
||||||
|
Building mineTower = BuildingManager.getBuilding(this.buildingID);
|
||||||
int count = 1;
|
|
||||||
for(Mine mine : EuroMines){
|
|
||||||
switch(count){
|
|
||||||
case 1:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
count ++;
|
|
||||||
if(count == 5)
|
|
||||||
count = 1;
|
|
||||||
if(BuildingManager.getBuilding(mine.buildingID) != null) {
|
|
||||||
Building mineTower = BuildingManager.getBuilding(mine.buildingID);
|
|
||||||
if (mineTower != null) {
|
if (mineTower != null) {
|
||||||
mineTower.setMaxHitPoints(5000 * mine.capSize);
|
mineTower.setMaxHitPoints(5000 * this.capSize);
|
||||||
mineTower.setCurrentHitPoints((float) 5000 * mine.capSize);
|
mineTower.setCurrentHitPoints((float) 5000 * this.capSize);
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for(Mine mine : ChinaMines){
|
|
||||||
switch(count){
|
|
||||||
case 1:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
mine.capSize = 5;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
mine.capSize = 5;
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
count ++;
|
|
||||||
if(count == 5)
|
|
||||||
count = 1;
|
|
||||||
|
|
||||||
if(BuildingManager.getBuilding(mine.buildingID) != null) {
|
|
||||||
Building mineTower = BuildingManager.getBuilding(mine.buildingID);
|
|
||||||
if (mineTower != null) {
|
|
||||||
mineTower.setMaxHitPoints(5000 * mine.capSize);
|
|
||||||
mineTower.setCurrentHitPoints((float) 5000 * mine.capSize);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for(Mine mine : AmericaMines){
|
|
||||||
switch(count){
|
|
||||||
case 1:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
mine.capSize = 5;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
mine.capSize = 5;
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
mine.capSize = 3;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
count ++;
|
|
||||||
if(count == 5)
|
|
||||||
count = 1;
|
|
||||||
|
|
||||||
if(BuildingManager.getBuilding(mine.buildingID) != null) {
|
|
||||||
Building mineTower = BuildingManager.getBuilding(mine.buildingID);
|
|
||||||
if (mineTower != null) {
|
|
||||||
mineTower.setMaxHitPoints(5000 * mine.capSize);
|
|
||||||
mineTower.setCurrentHitPoints((float) 5000 * mine.capSize);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void releaseMineClaims(PlayerCharacter playerCharacter) {
|
public static void releaseMineClaims(PlayerCharacter playerCharacter) {
|
||||||
|
|
||||||
if (playerCharacter == null)
|
if (playerCharacter == null)
|
||||||
@@ -272,20 +195,30 @@ public class Mine extends AbstractGameObject {
|
|||||||
return Mine.towerMap.get(towerID);
|
return Mine.towerMap.get(towerID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getMineNationality(int time){
|
||||||
|
switch(time){
|
||||||
|
case 7:
|
||||||
|
case 8:
|
||||||
|
case 9:
|
||||||
|
return "CN";
|
||||||
|
case 14:
|
||||||
|
case 15:
|
||||||
|
case 16:
|
||||||
|
return "EU";
|
||||||
|
case 20:
|
||||||
|
case 21:
|
||||||
|
case 22:
|
||||||
|
return "NA";
|
||||||
|
default:
|
||||||
|
return "Unknown";
|
||||||
|
}
|
||||||
|
}
|
||||||
public static void serializeForClientMsg(Mine mine, ByteBufferWriter writer) {
|
public static void serializeForClientMsg(Mine mine, ByteBufferWriter writer) {
|
||||||
writer.putInt(mine.getObjectType().ordinal());
|
writer.putInt(mine.getObjectType().ordinal());
|
||||||
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);
|
||||||
if(ChinaMines.contains((mine))) {
|
writer.putString(Mine.getMineNationality(mine.liveHour) + " {" + mine.capSize + " Man}");
|
||||||
writer.putString("Chinese" + " {" + mine.capSize + " Man}");
|
|
||||||
} else if(AmericaMines.contains(mine)){
|
|
||||||
writer.putString("American" + " {" + mine.capSize + " Man}");
|
|
||||||
} else if(EuroMines.contains(mine)){
|
|
||||||
writer.putString("European" + " {" + mine.capSize + " Man}");
|
|
||||||
}else{
|
|
||||||
writer.putString("Unknown" + " {" + mine.capSize + " Man}");
|
|
||||||
}
|
|
||||||
writer.putInt(mine.production.hash);
|
writer.putInt(mine.production.hash);
|
||||||
writer.putInt(mine.getModifiedProductionAmount());
|
writer.putInt(mine.getModifiedProductionAmount());
|
||||||
writer.putInt(mine.getModifiedProductionAmount()); //TODO calculate range penalty here
|
writer.putInt(mine.getModifiedProductionAmount()); //TODO calculate range penalty here
|
||||||
|
|||||||
Reference in New Issue
Block a user