Browse Source

City check moved outside of validation

combat-2
MagicBot 7 months ago
parent
commit
7f8c297ae2
  1. 6
      src/engine/gameManager/ForgeManager.java
  2. 3
      src/engine/gameManager/ItemManager.java

6
src/engine/gameManager/ForgeManager.java

@ -105,7 +105,13 @@ public enum ForgeManager implements Runnable { @@ -105,7 +105,13 @@ public enum ForgeManager implements Runnable {
if (validation_result != 0)
return validation_result;
// Concurrency is managed by same lock as warehouse
City city = workOrder.vendor.building.getCity();
if (city == null)
return 58; //58: The formula is beyond the means of this facility
city.transactionLock.writeLock().lock();
try {

3
src/engine/gameManager/ItemManager.java

@ -238,9 +238,6 @@ public enum ItemManager { @@ -238,9 +238,6 @@ public enum ItemManager {
if (workOrder.vendor.getBuilding() == null)
return 58; //58: The formula is beyond the means of this facility
if (workOrder.vendor.getBuilding().getCity() == null)
return 58; //58: The formula is beyond the means of this facility
if (!workOrder.vendor.charItemManager.hasRoomInventory(template.item_wt))
return 30; //30: That person cannot carry that item

Loading…
Cancel
Save