Skip to content

Commit 9c78a52

Browse files
committed
fix and simplify config
1 parent 38402d3 commit 9c78a52

File tree

4 files changed

+27
-26
lines changed

4 files changed

+27
-26
lines changed

src/main/java/de/dertoaster/crossbowverhaul/config/CrossbowverhaulConfigHolder.java

+14-14
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ public class CrossbowverhaulConfigHolder {
1111
private static final int defaultCrossbowDurability = 512;
1212
private static final int defaultNetheriteCrossbowDurability = 1024;
1313
private static final int defaultModifyMultiShotEnchantment = 3;
14-
private static final double defaultModCrossbowChargeTime = 2.0D;
15-
private static final double defaultModNetheriteCrossbowChargeTime = 3.0D;
16-
private static final float defaultModCrossbowProjectileSpeed = 1.0F;
17-
private static final float defaultModNetheriteCrossbowProjectileSpeed = 1.5F;
14+
private static final Integer defaultModCrossbowChargeTime = 50;
15+
private static final Integer defaultModNetheriteCrossbowChargeTime = 75;
16+
private static final double defaultModCrossbowProjectileSpeed = 1.0F;
17+
private static final double defaultModNetheriteCrossbowProjectileSpeed = 1.5F;
1818
private static final double defaultModCrossbowProjectileRange = 1.0D;
1919
private static final double defaultModNetheriteCrossbowProjectileRange = 1.5D;
2020

@@ -24,11 +24,11 @@ public class CrossbowverhaulConfigHolder {
2424
public static final ConfigValue<Integer> coModMultishot;
2525
public static final ConfigValue<Integer> coCrossbowDurability;
2626
public static final ConfigValue<Integer> coNetheriteCrossbowDurability;
27-
public static final ConfigValue<Double> coModCrossbowChargeTime;
28-
public static final ConfigValue<Double> coModNetheriteCrossbowChargeTime;
29-
public static final ConfigValue<Float> coModCrossbowProjectileSpeed;
27+
public static final ConfigValue<Integer> coModCrossbowChargeTime;
28+
public static final ConfigValue<Integer> coModNetheriteCrossbowChargeTime;
29+
public static final ConfigValue<Double> coModCrossbowProjectileSpeed;
3030
public static final ConfigValue<Double> coModCrossbowProjectileRange;
31-
public static final ConfigValue<Float> coModNetheriteCrossbowProjectileSpeed;
31+
public static final ConfigValue<Double> coModNetheriteCrossbowProjectileSpeed;
3232
public static final ConfigValue<Double> coModNetheriteCrossbowProjectileRange;
3333

3434
public static final ForgeConfigSpec.Builder BUILDER = new ForgeConfigSpec.Builder();
@@ -63,20 +63,20 @@ public class CrossbowverhaulConfigHolder {
6363
.define("Explosive bolts on non-netherite crossbow", defaultAllowExplosiveBoltsOnNormalCrossbow);
6464

6565
coModCrossbowChargeTime = BUILDER
66-
.comment("Multiplier for the standard crossbow's charge time, base charge time is 25 ticks")
67-
.defineInRange("Crossbow charge-time modifier", defaultModCrossbowChargeTime, 0.0D, Double.MAX_VALUE);
66+
.comment("Standard crossbow charge time, vanilla charge time is 25 ticks")
67+
.defineInRange("Crossbow charge-time modifier", defaultModCrossbowChargeTime, 1, Integer.MAX_VALUE);
6868

6969
coModNetheriteCrossbowChargeTime = BUILDER
70-
.comment("Multiplier for the netherite crossbow's charge time, base charge time is 25 ticks")
71-
.defineInRange("Netherite Crossbow charge-time modifier", defaultModNetheriteCrossbowChargeTime, 0.0D, Double.MAX_VALUE);
70+
.comment("Netherite crossbow charge time, vanilla charge time is 25 ticks")
71+
.defineInRange("Netherite Crossbow charge-time modifier", defaultModNetheriteCrossbowChargeTime, 1, Integer.MAX_VALUE);
7272

7373
coModCrossbowProjectileSpeed = BUILDER
7474
.comment("Multiplier for the projectile speed for projectiles shot from the standard crossbow")
75-
.defineInRange("Crossbow projectile speed multiplier", defaultModCrossbowProjectileSpeed, 1.0F, Float.MAX_VALUE, Float.class);
75+
.defineInRange("Crossbow projectile speed multiplier", defaultModCrossbowProjectileSpeed, 1.0D, Float.MAX_VALUE);
7676

7777
coModNetheriteCrossbowProjectileSpeed = BUILDER
7878
.comment("Multiplier for the projectile speed for projectiles shot from the netherite crossbow")
79-
.defineInRange("Netherite Crossbow projectile speed multiplier", defaultModNetheriteCrossbowProjectileSpeed, 1.0F, Float.MAX_VALUE, Float.class);
79+
.defineInRange("Netherite Crossbow projectile speed multiplier", defaultModNetheriteCrossbowProjectileSpeed, 1.0D, Float.MAX_VALUE);
8080

8181
coModCrossbowProjectileRange = BUILDER
8282
.comment("Multiplier for the projectile rabge for projectiles shot from the standard crossbow")

src/main/java/de/dertoaster/crossbowverhaul/enchantment/MultishotEnchantment.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public MultishotEnchantment(Rarity p_i50017_1_, EquipmentSlot... p_i50017_2_) {
1212

1313
@Override
1414
public int getMaxLevel() {
15-
return CrossbowverhaulConfigHolder.coModMultishot.get();
15+
return CrossbowverhaulConfigHolder.coModMultishot.get().intValue();
1616
}
1717

1818
}

src/main/java/de/dertoaster/crossbowverhaul/item/ItemCrossbow.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public class ItemCrossbow extends CrossbowItem implements Vanishable, IModifiedC
2525
};
2626

2727
protected static final Predicate<ItemStack> PREDICATE_BOLTS_ONLY_NO_EXPLOSIVE = (itemstack) -> {
28-
return itemstack.getItem() instanceof ItemBolt && (CrossbowverhaulConfigHolder.coAllowExplosiveBoltsOnNormalCrossbow.get() || !(itemstack.getItem() instanceof ItemBoltExplosive));
28+
return itemstack.getItem() instanceof ItemBolt && (CrossbowverhaulConfigHolder.coAllowExplosiveBoltsOnNormalCrossbow.get().booleanValue() || !(itemstack.getItem() instanceof ItemBoltExplosive));
2929
};
3030

3131
//This only checks the items in off and main hand
@@ -140,17 +140,18 @@ public static ItemStack getFirstLoadedBolt(ItemStack crossbow) {
140140
//Override charging duration
141141
@Override
142142
public int getMaxChargeTime() {
143-
return (int)(CrossbowverhaulConfigHolder.coModCrossbowChargeTime.get() * IModifiedCrossbowMethod.super.getMaxChargeTime());
143+
return CrossbowverhaulConfigHolder.coModCrossbowChargeTime.get().intValue();
144144
}
145145

146146
@Override
147147
public int getDefaultProjectileRange() {
148-
return (int)(CrossbowverhaulConfigHolder.coModCrossbowProjectileRange.get() * super.getDefaultProjectileRange());
148+
return (int)(CrossbowverhaulConfigHolder.coModCrossbowProjectileRange.get().doubleValue() * super.getDefaultProjectileRange());
149149
}
150150

151151
@Override
152152
public float getProjectileSpeedModifier() {
153-
return CrossbowverhaulConfigHolder.coModCrossbowProjectileSpeed.get() * IModifiedCrossbowMethod.super.getProjectileSpeedModifier();
153+
float f = CrossbowverhaulConfigHolder.coModCrossbowProjectileSpeed.get().floatValue();
154+
return f * IModifiedCrossbowMethod.super.getProjectileSpeedModifier();
154155
}
155156

156157
protected boolean parentClassIsEnchantable(ItemStack stack) {
@@ -163,12 +164,12 @@ protected boolean parentClassIsBookEnchantable(ItemStack stack, ItemStack book)
163164

164165
@Override
165166
public boolean isEnchantable(ItemStack p_41456_) {
166-
return this.parentClassIsEnchantable(p_41456_) && CrossbowverhaulConfigHolder.coEnchCrossbow.get();
167+
return this.parentClassIsEnchantable(p_41456_) && CrossbowverhaulConfigHolder.coEnchCrossbow.get().booleanValue();
167168
}
168169

169170
@Override
170171
public boolean isBookEnchantable(ItemStack stack, ItemStack book) {
171-
return this.parentClassIsBookEnchantable(stack, book) && CrossbowverhaulConfigHolder.coEnchCrossbow.get();
172+
return this.parentClassIsBookEnchantable(stack, book) && CrossbowverhaulConfigHolder.coEnchCrossbow.get().booleanValue();
172173
}
173174

174175
}

src/main/java/de/dertoaster/crossbowverhaul/item/ItemCrossbowNetherite.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ public Predicate<ItemStack> getAllSupportedProjectiles() {
2424

2525
@Override
2626
public boolean isEnchantable(ItemStack p_41456_) {
27-
return this.parentClassIsEnchantable(p_41456_) && CrossbowverhaulConfigHolder.coEnchNetheriteCrossbow.get();
27+
return this.parentClassIsEnchantable(p_41456_) && CrossbowverhaulConfigHolder.coEnchNetheriteCrossbow.get().booleanValue();
2828
}
2929

3030
@Override
3131
public boolean isBookEnchantable(ItemStack stack, ItemStack book) {
32-
return this.parentClassIsBookEnchantable(stack, book) && CrossbowverhaulConfigHolder.coEnchNetheriteCrossbow.get();
32+
return this.parentClassIsBookEnchantable(stack, book) && CrossbowverhaulConfigHolder.coEnchNetheriteCrossbow.get().booleanValue();
3333
}
3434

3535
public ItemCrossbowNetherite(Properties properties) {
@@ -38,18 +38,18 @@ public ItemCrossbowNetherite(Properties properties) {
3838

3939
@Override
4040
public int getDefaultProjectileRange() {
41-
return (int)(CrossbowverhaulConfigHolder.coModNetheriteCrossbowProjectileRange.get() * (super.getDefaultProjectileRange() / CrossbowverhaulConfigHolder.coModCrossbowProjectileRange.get()));
41+
return (int)(CrossbowverhaulConfigHolder.coModNetheriteCrossbowProjectileRange.get().intValue() * (super.getDefaultProjectileRange() / CrossbowverhaulConfigHolder.coModCrossbowProjectileRange.get()));
4242
}
4343

4444
@Override
4545
public float getProjectileSpeedModifier() {
46-
return CrossbowverhaulConfigHolder.coModNetheriteCrossbowProjectileSpeed.get() * (super.getProjectileSpeedModifier() / CrossbowverhaulConfigHolder.coModCrossbowProjectileSpeed.get());
46+
return CrossbowverhaulConfigHolder.coModNetheriteCrossbowProjectileSpeed.get().floatValue() * (super.getProjectileSpeedModifier() / CrossbowverhaulConfigHolder.coModCrossbowProjectileSpeed.get().floatValue());
4747
}
4848

4949
// Override charging duration
5050
@Override
5151
public int getMaxChargeTime() {
52-
return (int)(CrossbowverhaulConfigHolder.coModNetheriteCrossbowChargeTime.get() * (super.getMaxChargeTime() / CrossbowverhaulConfigHolder.coModCrossbowChargeTime.get()));
52+
return CrossbowverhaulConfigHolder.coModNetheriteCrossbowChargeTime.get().intValue();
5353
}
5454

5555
}

0 commit comments

Comments
 (0)