Make reach distance reduction switchable (fight.reach.reduce).

This commit is contained in:
asofold 2012-09-20 01:03:25 +02:00
parent 6673d5be37
commit 035eddea3a
4 changed files with 6 additions and 2 deletions

View File

@ -92,6 +92,7 @@ public class FightConfig extends ACheckConfig {
public final boolean reachCheck;
public final long reachPenalty;
public final boolean reachPrecision;
public final boolean reachReduce;
public final ActionList reachActions;
public final boolean selfHitCheck;
@ -147,6 +148,7 @@ public class FightConfig extends ACheckConfig {
reachCheck = data.getBoolean(ConfPaths.FIGHT_REACH_CHECK);
reachPenalty = data.getLong(ConfPaths.FIGHT_REACH_PENALTY);
reachPrecision = data.getBoolean(ConfPaths.FIGHT_REACH_PRECISION);
reachReduce = data.getBoolean(ConfPaths.FIGHT_REACH_REDUCE);
reachActions = data.getActionList(ConfPaths.FIGHT_REACH_ACTIONS, Permissions.FIGHT_REACH);
selfHitCheck = data.getBoolean(ConfPaths.FIGHT_SELFHIT_CHECK);

View File

@ -131,7 +131,8 @@ public class Reach extends Check {
cancel = true;
}
if (lenpRel > 0.8 * distanceLimit){
if (!cc.reachReduce) data.reachMod = 1d;
else if (lenpRel > 0.8 * distanceLimit){
data.reachMod = Math.max(0.8, data.reachMod - 0.05);
}
else{

View File

@ -355,6 +355,7 @@ public abstract class ConfPaths {
public static final String FIGHT_REACH_CHECK = FIGHT_REACH + "active";
public static final String FIGHT_REACH_PENALTY = FIGHT_REACH + "penalty";
public static final String FIGHT_REACH_PRECISION = FIGHT_REACH + "precision";
public static final String FIGHT_REACH_REDUCE = FIGHT_REACH + "reduce";
public static final String FIGHT_REACH_ACTIONS = FIGHT_REACH + "actions";
public static final String FIGHT_SELFHIT = FIGHT + "selfhit.";

View File

@ -272,7 +272,7 @@ public class DefaultConfig extends ConfigFile {
set(ConfPaths.FIGHT_REACH_CHECK, true);
set(ConfPaths.FIGHT_REACH_PENALTY, 500);
set(ConfPaths.FIGHT_REACH_PRECISION, true);
set(ConfPaths.FIGHT_REACH_REDUCE, true);
set(ConfPaths.FIGHT_REACH_ACTIONS, "cancel vl>10 log:freach:2:5:if cancel");
set(ConfPaths.FIGHT_SELFHIT_CHECK, true);