Fixed inventory lookups/rollbacks missing block placement actions
This commit is contained in:
parent
527be90249
commit
585d8b275a
14 changed files with 136 additions and 114 deletions
|
|
@ -44,6 +44,7 @@ public class Process {
|
|||
public static final int ITEM_TRANSACTION = 26;
|
||||
public static final int INVENTORY_ROLLBACK_UPDATE = 27;
|
||||
public static final int INVENTORY_CONTAINER_ROLLBACK_UPDATE = 28;
|
||||
public static final int BLOCK_INVENTORY_ROLLBACK_UPDATE = 29;
|
||||
|
||||
public static int lastLockUpdate = 0;
|
||||
private static volatile int currentConsumerSize = 0;
|
||||
|
|
@ -166,6 +167,9 @@ public class Process {
|
|||
case Process.INVENTORY_CONTAINER_ROLLBACK_UPDATE:
|
||||
RollbackUpdateProcess.process(statement, processId, id, forceData, 3);
|
||||
break;
|
||||
case Process.BLOCK_INVENTORY_ROLLBACK_UPDATE:
|
||||
RollbackUpdateProcess.process(statement, processId, id, forceData, 4);
|
||||
break;
|
||||
case Process.WORLD_INSERT:
|
||||
WorldInsertProcess.process(preparedStmtWorlds, i, statement, object, forceData);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import java.util.Map;
|
|||
|
||||
import net.coreprotect.consumer.Consumer;
|
||||
import net.coreprotect.database.Database;
|
||||
import net.coreprotect.utility.Util;
|
||||
|
||||
class RollbackUpdateProcess {
|
||||
|
||||
|
|
@ -16,8 +17,8 @@ class RollbackUpdateProcess {
|
|||
for (Object[] listRow : list) {
|
||||
long rowid = (Long) listRow[0];
|
||||
int rolledBack = (Integer) listRow[9];
|
||||
if (rolledBack == action) {
|
||||
Database.performUpdate(statement, rowid, action, table);
|
||||
if (Util.rolledBack(rolledBack, (table == 2 || table == 3 || table == 4)) == action) { // 1 = restore, 0 = rollback
|
||||
Database.performUpdate(statement, rowid, rolledBack, table);
|
||||
}
|
||||
}
|
||||
updateLists.remove(id);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue