- Clientside anotations for ArmoredElytra
- Update dependency in fabric.mod.json - Renamed interface - Cleanup
This commit is contained in:
parent
d7734cdf22
commit
cdeabbccb2
5 changed files with 22 additions and 18 deletions
|
@ -1,5 +0,0 @@
|
||||||
package ru.betterend.interfaces;
|
|
||||||
|
|
||||||
public interface BreakableItem {
|
|
||||||
void registerBrokenItem();
|
|
||||||
}
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
package ru.betterend.interfaces;
|
||||||
|
|
||||||
|
import net.fabricmc.api.EnvType;
|
||||||
|
import net.fabricmc.api.Environment;
|
||||||
|
|
||||||
|
@Environment(EnvType.CLIENT)
|
||||||
|
public interface MultiModelItem {
|
||||||
|
void registerModelPredicate();
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
package ru.betterend.item;
|
package ru.betterend.item;
|
||||||
|
|
||||||
import net.fabricmc.fabric.api.item.v1.EquipmentSlotProvider;
|
import net.fabricmc.api.EnvType;
|
||||||
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
import net.fabricmc.api.Environment;
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.client.model.FabricModelPredicateProviderRegistry;
|
import net.fabricmc.fabric.api.object.builder.v1.client.model.FabricModelPredicateProviderRegistry;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.entity.EquipmentSlot;
|
import net.minecraft.world.entity.EquipmentSlot;
|
||||||
|
@ -10,12 +10,10 @@ import net.minecraft.world.item.Item;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Rarity;
|
import net.minecraft.world.item.Rarity;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.interfaces.BreakableItem;
|
import ru.betterend.interfaces.MultiModelItem;
|
||||||
import ru.betterend.patterns.Patterned;
|
|
||||||
import ru.betterend.patterns.Patterns;
|
|
||||||
import ru.betterend.registry.EndItems;
|
import ru.betterend.registry.EndItems;
|
||||||
|
|
||||||
public class ArmoredElytra extends ElytraItem implements BreakableItem {
|
public class ArmoredElytra extends ElytraItem implements MultiModelItem {
|
||||||
|
|
||||||
private final ResourceLocation wingTexture;
|
private final ResourceLocation wingTexture;
|
||||||
private final Item repairItem;
|
private final Item repairItem;
|
||||||
|
@ -35,6 +33,7 @@ public class ArmoredElytra extends ElytraItem implements BreakableItem {
|
||||||
return movementFactor;
|
return movementFactor;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Environment(EnvType.CLIENT)
|
||||||
public ResourceLocation getWingTexture() {
|
public ResourceLocation getWingTexture() {
|
||||||
return wingTexture;
|
return wingTexture;
|
||||||
}
|
}
|
||||||
|
@ -45,7 +44,8 @@ public class ArmoredElytra extends ElytraItem implements BreakableItem {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerBrokenItem() {
|
@Environment(EnvType.CLIENT)
|
||||||
|
public void registerModelPredicate() {
|
||||||
FabricModelPredicateProviderRegistry.register(this, new ResourceLocation("broken"),
|
FabricModelPredicateProviderRegistry.register(this, new ResourceLocation("broken"),
|
||||||
(itemStack, clientLevel, livingEntity) -> ElytraItem.isFlyEnabled(itemStack) ? 0.0F : 1.0F);
|
(itemStack, clientLevel, livingEntity) -> ElytraItem.isFlyEnabled(itemStack) ? 0.0F : 1.0F);
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@ import net.minecraft.world.item.*;
|
||||||
import net.minecraft.world.level.block.DispenserBlock;
|
import net.minecraft.world.level.block.DispenserBlock;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.config.Configs;
|
import ru.betterend.config.Configs;
|
||||||
import ru.betterend.interfaces.BreakableItem;
|
import ru.betterend.interfaces.MultiModelItem;
|
||||||
import ru.betterend.item.*;
|
import ru.betterend.item.*;
|
||||||
import ru.betterend.item.material.EndArmorMaterial;
|
import ru.betterend.item.material.EndArmorMaterial;
|
||||||
import ru.betterend.item.material.EndToolMaterial;
|
import ru.betterend.item.material.EndToolMaterial;
|
||||||
|
@ -132,8 +132,8 @@ public class EndItems {
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
registerItem(id, item, MOD_ITEMS);
|
registerItem(id, item, MOD_ITEMS);
|
||||||
if (item instanceof BreakableItem) {
|
if (item instanceof MultiModelItem) {
|
||||||
((BreakableItem) item).registerBrokenItem();
|
((MultiModelItem) item).registerModelPredicate();
|
||||||
}
|
}
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,9 +43,9 @@
|
||||||
],
|
],
|
||||||
|
|
||||||
"depends": {
|
"depends": {
|
||||||
"fabricloader": ">=0.10.0",
|
"fabricloader": ">=0.11.0",
|
||||||
"fabric": ">=0.29.0",
|
"fabric": ">=0.32.0",
|
||||||
"minecraft": ">=1.16.3"
|
"minecraft": ">=1.16.4"
|
||||||
},
|
},
|
||||||
"suggests": {
|
"suggests": {
|
||||||
"byg": ">=1.1.3",
|
"byg": ">=1.1.3",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue