Skip to content

Commit

Permalink
maybe fix
Browse files Browse the repository at this point in the history
  • Loading branch information
Globox1997 committed Jan 9, 2024
1 parent 54f8c12 commit c775ecf
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 45 deletions.
48 changes: 6 additions & 42 deletions src/main/java/net/nutritionz/mixin/HungerManagerMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -127,17 +127,14 @@ private void updateNutritionEffectsMixin(PlayerEntity player, CallbackInfo info)
player.getAttributes().addTemporaryModifiers(ArrayListMultimap.create(map));
// Multimaps.unmodifiableMultimap(map);

System.out.println("Added attributes: " + player.getAttributeInstance(EntityAttributes.GENERIC_ARMOR).getModifiers()+ " : "+ArrayListMultimap.create(map));
System.out.println("Added attributes: " + player.getAttributeInstance(EntityAttributes.GENERIC_ARMOR).getModifiers() + " : " + ArrayListMultimap.create(map) + " : "
+ NutritionMain.NUTRITION_POSITIVE_EFFECTS.get(i).get(u));

// player.getAttributes().removeModifiers((Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u));
// System.out.println("After removed attributes: " + player.getAttributeInstance(EntityAttributes.GENERIC_ARMOR).getModifiers());
changedAttributes = true;
}

// [Server thread/INFO] (Minecraft) [STDOUT]: Before Added attributes: [] : {net.minecraft.entity.attribute.ClampedEntityAttribute@553fbe94=[AttributeModifier{amount=2.0,
// operation=ADDITION, name='attribute.name.generic.armor', id=d5ed1a75-69e5-47f5-95c4-0e8fd02e149e}]}
// [19:02:24] [Server thread/INFO] (Minecraft) [STDOUT]: Added attributes: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=d5ed1a75-69e5-47f5-95c4-0e8fd02e149e}]
}
this.effectMap.put(i, true);
}
Expand All @@ -147,49 +144,16 @@ private void updateNutritionEffectsMixin(PlayerEntity player, CallbackInfo info)
List<Object> positiveEffectList = NutritionMain.NUTRITION_POSITIVE_EFFECTS.get(i);
for (int u = 0; u < positiveEffectList.size(); u++) {
if (positiveEffectList.get(u) instanceof Multimap multimap) {
// System.out.println("BEFORE: " + player.getAttributes().getValue(EntityAttributes.GENERIC_ARMOR));
// ((Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u)).forEach((eattribute, eamodifier) -> {
// if (player.getAttributes().getCustomInstance(eattribute) != null) {

// player.getAttributes().getCustomInstance(eattribute).removeModifier(eamodifier);
// System.out.println(eamodifier.getName() + " : " + player.getAttributes().getCustomInstance(eattribute).tryRemoveModifier(eamodifier.getId()) + " : "
// + player.getAttributes().getCustomInstance(eattribute).getModifiers() + " : "
// + player.getAttributes().getCustomInstance(eattribute).getModifier(eamodifier.getId()) + " : " + eamodifier.getId());
// }
// });

// [19:09:04] [Server thread/INFO] (Minecraft) [STDOUT]: Before Added attributes: [] :
// {net.minecraft.entity.attribute.ClampedEntityAttribute@553fbe94=[AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=4b844a6a-572a-473c-b217-5c08ab61f91b}]}

// [19:09:04] [Server thread/INFO] (Minecraft) [STDOUT]: Added attributes: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=4b844a6a-572a-473c-b217-5c08ab61f91b}]

// [19:09:34] [Server thread/INFO] (Minecraft) [STDOUT]: BEFORE REMOVE: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=4b844a6a-572a-473c-b217-5c08ab61f91b}] : {net.minecraft.entity.attribute.ClampedEntityAttribute@553fbe94=[AttributeModifier{amount=2.0, operation=ADDITION,
// name='attribute.name.generic.armor', id=71605017-10ef-4c20-80fd-00580501f496}]}

// [19:09:34] [Server thread/INFO] (Minecraft) [STDOUT]: AFTER REMOVE: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=4b844a6a-572a-473c-b217-5c08ab61f91b}]

System.out.println("BEFORE REMOVE: " + player.getAttributes().getCustomInstance(EntityAttributes.GENERIC_ARMOR).getModifiers() + " : "
+ (Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u) + " : " + NutritionMain.NUTRITION_POSITIVE_EFFECTS.get(i).get(u) + " : "
+ multimap);
// + (Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u) + " : "
System.out.println("BEFORE REMOVE: " + player.getAttributes().getCustomInstance(EntityAttributes.GENERIC_ARMOR).getModifiers() + " : " + multimap + " : "
+ NutritionMain.NUTRITION_POSITIVE_EFFECTS.get(i).get(u) + " : " + multimap);
player.getAttributes().removeModifiers((Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u));
System.out.println("AFTER REMOVE: " + player.getAttributes().getCustomInstance(EntityAttributes.GENERIC_ARMOR).getModifiers());

changedAttributes = true;
// System.out.println("AFTER: " + player.getAttributes().getValue(EntityAttributes.GENERIC_ARMOR));
// System.out.println("REMOVE" + ((Multimap<EntityAttribute, EntityAttributeModifier>) positiveEffectList.get(u)).values());
} // 30dc89b2-ee07-4319-a9d1-02123c1abf82

// Added attributes: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor', id=d5ed1a75-69e5-47f5-95c4-0e8fd02e149e}]

// Before Added attributes: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor', id=d5ed1a75-69e5-47f5-95c4-0e8fd02e149e}] :
// {net.minecraft.entity.attribute.ClampedEntityAttribute@1d585fb=[AttributeModifier{amount=0.10000000149011612, operation=ADDITION,
// name='attribute.name.generic.knockback_resistance', id=aeaf4641-0a52-4523-acfe-82758363e6b3}]}
// [19:00:52] [Server thread/INFO] (Minecraft) [STDOUT]: Added attributes: [AttributeModifier{amount=2.0, operation=ADDITION, name='attribute.name.generic.armor',
// id=d5ed1a75-69e5-47f5-95c4-0e8fd02e149e}]
}
}
List<Object> negativeEffectList = NutritionMain.NUTRITION_NEGATIVE_EFFECTS.get(i);
for (int u = 0; u < negativeEffectList.size(); u++) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;

import com.google.common.collect.LinkedHashMultimap;
import com.google.common.collect.Multimap;
Expand Down Expand Up @@ -84,12 +85,12 @@ public static void init() {
objectList.add(new StatusEffectInstance(Registries.STATUS_EFFECT.get(identifier), duration, amplifier, false, false, true));
} else {
Identifier identifier = buf.readIdentifier();
// String name = buf.readString();
UUID uuid = buf.readUuid();
float value = buf.readFloat();
String operation = buf.readString();
Multimap<EntityAttribute, EntityAttributeModifier> attributeModifiers = LinkedHashMultimap.create();
attributeModifiers.put(Registries.ATTRIBUTE.get(identifier),
new EntityAttributeModifier(Registries.ATTRIBUTE.get(identifier).getTranslationKey(), value, Operation.valueOf(operation.toUpperCase())));
new EntityAttributeModifier(uuid, Registries.ATTRIBUTE.get(identifier).getTranslationKey(), value, Operation.valueOf(operation.toUpperCase())));
objectList.add(attributeModifiers);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ private static void processEffects(PacketByteBuf buf, Iterator<Map.Entry<Integer
Multimap<EntityAttribute, EntityAttributeModifier> multimap = (Multimap<EntityAttribute, EntityAttributeModifier>) entry.getValue().get(i);
multimap.forEach((attribute, modifier) -> {
buf.writeIdentifier(Registries.ATTRIBUTE.getId(attribute));
// buf.writeString(modifier.getName());
buf.writeUuid(modifier.getId());
buf.writeFloat((float) modifier.getValue());
buf.writeString(modifier.getOperation().name());
return;
Expand Down

0 comments on commit c775ecf

Please sign in to comment.