mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2024-07-03 07:30:02 +00:00
154 lines
4.3 KiB
Java
154 lines
4.3 KiB
Java
package com.boydti.fawe.object;
|
|
|
|
import com.sk89q.worldedit.world.block.BlockState;
|
|
|
|
import java.util.Collections;
|
|
import java.util.Set;
|
|
|
|
/**
|
|
* Created by Jesse on 4/5/2016.
|
|
*/
|
|
public class FaweLimit {
|
|
public int MAX_ACTIONS = 0;
|
|
public int MAX_CHANGES = 0;
|
|
public int MAX_FAILS = 0;
|
|
public int MAX_CHECKS = 0;
|
|
public int MAX_ITERATIONS = 0;
|
|
public int MAX_BLOCKSTATES = 0;
|
|
public int MAX_ENTITIES = 0;
|
|
public int MAX_HISTORY = 0;
|
|
public int MAX_EXPRESSION_MS = 0;
|
|
public int INVENTORY_MODE = Integer.MAX_VALUE;
|
|
public int SPEED_REDUCTION = Integer.MAX_VALUE;
|
|
public boolean FAST_PLACEMENT = false;
|
|
public boolean CONFIRM_LARGE = true;
|
|
public Set<String> STRIP_NBT = null;
|
|
|
|
public static FaweLimit MAX;
|
|
|
|
static {
|
|
MAX = new FaweLimit() {
|
|
@Override
|
|
public boolean MAX_CHANGES() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean MAX_BLOCKSTATES() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean MAX_CHECKS() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean MAX_ENTITIES() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean MAX_FAILS() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public boolean MAX_ITERATIONS() {
|
|
return true;
|
|
}
|
|
};
|
|
MAX.SPEED_REDUCTION = 0;
|
|
MAX.INVENTORY_MODE = 0;
|
|
MAX.MAX_ACTIONS = 1;
|
|
MAX.MAX_CHANGES = Integer.MAX_VALUE;
|
|
MAX.MAX_FAILS = Integer.MAX_VALUE;
|
|
MAX.MAX_CHECKS = Integer.MAX_VALUE;
|
|
MAX.MAX_ITERATIONS = Integer.MAX_VALUE;
|
|
MAX.MAX_BLOCKSTATES = Integer.MAX_VALUE;
|
|
MAX.MAX_ENTITIES = Integer.MAX_VALUE;
|
|
MAX.MAX_HISTORY = Integer.MAX_VALUE;
|
|
MAX.MAX_EXPRESSION_MS = 50;
|
|
MAX.FAST_PLACEMENT = true;
|
|
MAX.CONFIRM_LARGE = true;
|
|
MAX.STRIP_NBT = null;
|
|
}
|
|
|
|
public boolean MAX_CHANGES() {
|
|
return MAX_CHANGES-- > 0;
|
|
}
|
|
|
|
public boolean MAX_FAILS() {
|
|
return MAX_FAILS-- > 0;
|
|
}
|
|
|
|
public boolean MAX_CHECKS() {
|
|
return MAX_CHECKS-- > 0;
|
|
}
|
|
|
|
public boolean MAX_ITERATIONS() {
|
|
return MAX_ITERATIONS-- > 0;
|
|
}
|
|
|
|
public boolean MAX_BLOCKSTATES() {
|
|
return MAX_BLOCKSTATES-- > 0;
|
|
}
|
|
|
|
public boolean MAX_ENTITIES() {
|
|
return MAX_ENTITIES-- > 0;
|
|
}
|
|
|
|
public boolean isUnlimited() {
|
|
return MAX_CHANGES == Integer.MAX_VALUE &&
|
|
MAX_FAILS == Integer.MAX_VALUE &&
|
|
MAX_CHECKS == Integer.MAX_VALUE &&
|
|
MAX_ITERATIONS == Integer.MAX_VALUE &&
|
|
MAX_BLOCKSTATES == Integer.MAX_VALUE &&
|
|
MAX_ENTITIES == Integer.MAX_VALUE &&
|
|
MAX_HISTORY == Integer.MAX_VALUE &&
|
|
INVENTORY_MODE == 0 &&
|
|
SPEED_REDUCTION == 0 &&
|
|
FAST_PLACEMENT == true &&
|
|
(STRIP_NBT == null || STRIP_NBT.isEmpty());
|
|
}
|
|
|
|
public void set(FaweLimit limit) {
|
|
MAX_ACTIONS = limit.MAX_ACTIONS;
|
|
MAX_CHANGES = limit.MAX_CHANGES;
|
|
MAX_BLOCKSTATES = limit.MAX_BLOCKSTATES;
|
|
MAX_CHECKS = limit.MAX_CHECKS;
|
|
MAX_ENTITIES = limit.MAX_ENTITIES;
|
|
MAX_FAILS = limit.MAX_FAILS;
|
|
MAX_ITERATIONS = limit.MAX_ITERATIONS;
|
|
MAX_HISTORY = limit.MAX_HISTORY;
|
|
INVENTORY_MODE = limit.INVENTORY_MODE;
|
|
SPEED_REDUCTION = limit.SPEED_REDUCTION;
|
|
FAST_PLACEMENT = limit.FAST_PLACEMENT;
|
|
CONFIRM_LARGE = limit.CONFIRM_LARGE;
|
|
STRIP_NBT = limit.STRIP_NBT;
|
|
}
|
|
|
|
public FaweLimit copy() {
|
|
FaweLimit limit = new FaweLimit();
|
|
limit.INVENTORY_MODE = INVENTORY_MODE;
|
|
limit.SPEED_REDUCTION = SPEED_REDUCTION;
|
|
limit.MAX_ACTIONS = MAX_ACTIONS;
|
|
limit.MAX_CHANGES = MAX_CHANGES;
|
|
limit.MAX_BLOCKSTATES = MAX_BLOCKSTATES;
|
|
limit.MAX_CHECKS = MAX_CHECKS;
|
|
limit.MAX_ENTITIES = MAX_ENTITIES;
|
|
limit.MAX_FAILS = MAX_FAILS;
|
|
limit.MAX_ITERATIONS = MAX_ITERATIONS;
|
|
limit.MAX_HISTORY = MAX_HISTORY;
|
|
limit.FAST_PLACEMENT = FAST_PLACEMENT;
|
|
limit.CONFIRM_LARGE = CONFIRM_LARGE;
|
|
limit.STRIP_NBT = STRIP_NBT;
|
|
return limit;
|
|
}
|
|
|
|
@Override
|
|
public String toString() {
|
|
return MAX_CHANGES + "";
|
|
}
|
|
}
|