73 lines
3.0 KiB
Diff
73 lines
3.0 KiB
Diff
--- a/net/minecraft/item/Food.java
|
|
+++ b/net/minecraft/item/Food.java
|
|
@@ -11,15 +11,26 @@
|
|
private final boolean field_221472_c;
|
|
private final boolean field_221473_d;
|
|
private final boolean field_221474_e;
|
|
- private final List<Pair<EffectInstance, Float>> field_221475_f;
|
|
+ private final List<Pair<java.util.function.Supplier<EffectInstance>, Float>> field_221475_f;
|
|
|
|
+ private Food(Food.Builder builder) {
|
|
+ this.field_221470_a = builder.field_221458_a;
|
|
+ this.field_221471_b = builder.field_221459_b;
|
|
+ this.field_221472_c = builder.field_221460_c;
|
|
+ this.field_221473_d = builder.field_221461_d;
|
|
+ this.field_221474_e = builder.field_221462_e;
|
|
+ this.field_221475_f = builder.field_221463_f;
|
|
+ }
|
|
+
|
|
+ // Forge: Use builder method instead
|
|
+ @Deprecated
|
|
private Food(int p_i50106_1_, float p_i50106_2_, boolean p_i50106_3_, boolean p_i50106_4_, boolean p_i50106_5_, List<Pair<EffectInstance, Float>> p_i50106_6_) {
|
|
this.field_221470_a = p_i50106_1_;
|
|
this.field_221471_b = p_i50106_2_;
|
|
this.field_221472_c = p_i50106_3_;
|
|
this.field_221473_d = p_i50106_4_;
|
|
this.field_221474_e = p_i50106_5_;
|
|
- this.field_221475_f = p_i50106_6_;
|
|
+ this.field_221475_f = p_i50106_6_.stream().map(pair -> Pair.<java.util.function.Supplier<EffectInstance>, Float>of(pair::getFirst, pair.getSecond())).collect(java.util.stream.Collectors.toList());
|
|
}
|
|
|
|
public int func_221466_a() {
|
|
@@ -43,7 +54,7 @@
|
|
}
|
|
|
|
public List<Pair<EffectInstance, Float>> func_221464_f() {
|
|
- return this.field_221475_f;
|
|
+ return this.field_221475_f.stream().map(pair -> Pair.of(pair.getFirst() != null ? pair.getFirst().get() : null, pair.getSecond())).collect(java.util.stream.Collectors.toList());
|
|
}
|
|
|
|
public static class Builder {
|
|
@@ -52,7 +63,7 @@
|
|
private boolean field_221460_c;
|
|
private boolean field_221461_d;
|
|
private boolean field_221462_e;
|
|
- private final List<Pair<EffectInstance, Float>> field_221463_f = Lists.newArrayList();
|
|
+ private final List<Pair<java.util.function.Supplier<EffectInstance>, Float>> field_221463_f = Lists.newArrayList();
|
|
|
|
public Food.Builder func_221456_a(int p_221456_1_) {
|
|
this.field_221458_a = p_221456_1_;
|
|
@@ -79,13 +90,20 @@
|
|
return this;
|
|
}
|
|
|
|
+ public Food.Builder effect(java.util.function.Supplier<EffectInstance> effectIn, float probability) {
|
|
+ this.field_221463_f.add(Pair.of(effectIn, probability));
|
|
+ return this;
|
|
+ }
|
|
+
|
|
+ // Forge: Use supplier method instead
|
|
+ @Deprecated
|
|
public Food.Builder func_221452_a(EffectInstance p_221452_1_, float p_221452_2_) {
|
|
- this.field_221463_f.add(Pair.of(p_221452_1_, p_221452_2_));
|
|
+ this.field_221463_f.add(Pair.of(() -> p_221452_1_, p_221452_2_));
|
|
return this;
|
|
}
|
|
|
|
public Food func_221453_d() {
|
|
- return new Food(this.field_221458_a, this.field_221459_b, this.field_221460_c, this.field_221461_d, this.field_221462_e, this.field_221463_f);
|
|
+ return new Food(this);
|
|
}
|
|
}
|
|
}
|