Add stuff

This commit is contained in:
2024-07-27 15:31:06 +02:00
parent 4df69c27a1
commit d5a28040e4
70 changed files with 1133 additions and 102 deletions

View File

@@ -1,13 +1,18 @@
package systems.brn.plasticgun.bullets;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
import net.minecraft.component.DataComponentTypes;
import net.minecraft.component.type.LoreComponent;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroups;
import net.minecraft.item.Items;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.text.Text;
import systems.brn.plasticgun.lib.ItemGroups;
import systems.brn.plasticgun.lib.SimpleItem;
import java.util.List;
import static systems.brn.plasticgun.lib.Util.id;
public class BulletItem extends SimpleItem {
@@ -16,14 +21,26 @@ public class BulletItem extends SimpleItem {
public final boolean isIncendiary;
public final double explosionPowerCoefficient;
public final double repulsionPowerCoefficient;
public BulletItem(String path, double damageCoefficient, int caliber, boolean isIncendiary, double explosionPowerCoefficient, double repulsionPowerCoefficient) {
super(new Settings().maxCount(99), id(path), Items.STICK);
public BulletItem(String path, int maxCount, double damageCoefficient, int caliber, boolean isIncendiary, double explosionPowerCoefficient, double repulsionPowerCoefficient) {
super(
new Settings()
.maxCount(maxCount)
.component(DataComponentTypes.LORE, new LoreComponent(List.of(
Text.translatable("gun.description.speed", damageCoefficient),
Text.translatable("gun.description.explosion_coefficient", explosionPowerCoefficient),
Text.translatable("gun.description.repulsion_efficient", repulsionPowerCoefficient),
Text.translatable("gun.description.repulsion_efficient", repulsionPowerCoefficient),
Text.translatable(isIncendiary ? "gun.description.incendiary_yes" : "gun.description.incendiary_no")
))
)
,
id(path),
Items.STICK);
this.damageCoefficient = damageCoefficient;
this.caliber = caliber;
this.isIncendiary = isIncendiary;
this.explosionPowerCoefficient = explosionPowerCoefficient;
this.repulsionPowerCoefficient = repulsionPowerCoefficient;
Item item = Registry.register(Registries.ITEM, this.identifier, this);
ItemGroupEvents.modifyEntriesEvent(ItemGroups.FUNCTIONAL).register(content -> content.add(item));
Registry.register(Registries.ITEM, this.identifier, this);
}
}