5 Commits

Author SHA1 Message Date
cf267a959d ender armor
All checks were successful
Build Minecraft Mod / build (push) Successful in 4m16s
Build Minecraft Mod / release (push) Successful in 17s
2026-04-14 13:22:11 +02:00
73a172c9bd fix capes, chorus patch, and other
All checks were successful
Build Minecraft Mod / build (push) Successful in 4m9s
Build Minecraft Mod / release (push) Successful in 31s
2026-04-14 09:13:51 +02:00
98f01f61c4 data generator fix, other fixes too
All checks were successful
Build Minecraft Mod / build (push) Successful in 4m4s
Build Minecraft Mod / release (push) Successful in 15s
2026-04-13 18:14:55 +02:00
bcc90e5593 super diamond and apple
All checks were successful
Build Minecraft Mod / build (push) Successful in 4m39s
Build Minecraft Mod / release (push) Successful in 17s
2026-04-13 16:38:52 +02:00
b476d156dc capes url update 2026-04-13 16:38:30 +02:00
48 changed files with 572 additions and 41 deletions

View File

@@ -2,23 +2,23 @@
"capes": [ "capes": [
{ {
"id": "tg", "id": "tg",
"texture": "https://raw.githubusercontent.com/tggamesyt/szar/main/src/main/resources/assets/szar/textures/etc/tg_cape.png" "texture": "https://gitea.tggamesyt.dev/tggamesyt/szar/raw/main/src/main/resources/assets/szar/textures/etc/tg_cape.png"
}, },
{ {
"id": "gabri", "id": "gabri",
"texture": "https://raw.githubusercontent.com/tggamesyt/szar/main/src/main/resources/assets/szar/textures/etc/gabri_cape.png" "texture": "https://gitea.tggamesyt.dev/tggamesyt/szar/raw/main/src/main/resources/assets/szar/textures/etc/gabri_cape.png"
}, },
{ {
"id": "tg1", "id": "tg1",
"texture": "https://raw.githubusercontent.com/tggamesyt/szar/main/src/main/resources/assets/szar/textures/etc/tg_cape1.png" "texture": "https://gitea.tggamesyt.dev/tggamesyt/szar/raw/main/src/main/resources/assets/szar/textures/etc/tg_cape1.png"
}, },
{ {
"id": "test", "id": "test",
"texture": "https://raw.githubusercontent.com/tggamesyt/szar/main/src/main/resources/assets/szar/textures/etc/testcape.png" "texture": "https://gitea.tggamesyt.dev/tggamesyt/szar/raw/main/src/main/resources/assets/szar/textures/etc/testcape.png"
}, },
{ {
"id": "ciber", "id": "ciber",
"texture": "https://raw.githubusercontent.com/tggamesyt/szar/main/src/main/resources/assets/szar/textures/etc/ciber_cape.png" "texture": "https://gitea.tggamesyt.dev/tggamesyt/szar/raw/main/src/main/resources/assets/szar/textures/etc/ciber_cape.png"
} }
] ]
} }

View File

@@ -6,7 +6,7 @@ minecraft_version=1.20.1
yarn_mappings=1.20.1+build.10 yarn_mappings=1.20.1+build.10
loader_version=0.18.3 loader_version=0.18.3
# Mod Properties # Mod Properties
mod_version=26.4.13.1 mod_version=26.4.14.1
maven_group=dev.tggamesyt maven_group=dev.tggamesyt
archives_base_name=szar archives_base_name=szar
# Dependencies # Dependencies

View File

@@ -0,0 +1,26 @@
package dev.tggamesyt.szar.client;
import dev.tggamesyt.szar.MagyarEntity;
import net.minecraft.client.render.entity.EntityRendererFactory;
import net.minecraft.client.render.entity.MobEntityRenderer;
import net.minecraft.client.render.entity.model.BipedEntityModel;
import net.minecraft.client.render.entity.model.EntityModelLayers;
import net.minecraft.util.Identifier;
public class MagyarEntityRenderer
extends MobEntityRenderer<MagyarEntity, BipedEntityModel<MagyarEntity>> {
public MagyarEntityRenderer(EntityRendererFactory.Context context) {
super(
context,
new BipedEntityModel<>(context.getPart(EntityModelLayers.PLAYER)),
0.5F
);
}
@Override
public Identifier getTexture(MagyarEntity entity) {
return new Identifier("szar", "textures/entity/magyar.png");
}
}

View File

@@ -552,6 +552,10 @@ public class SzarClient implements ClientModInitializer {
OrbanEntityType, OrbanEntityType,
OrbanEntityRenderer::new OrbanEntityRenderer::new
); );
EntityRendererRegistry.register(
MagyarEntityType,
MagyarEntityRenderer::new
);
EntityRendererRegistry.register( EntityRendererRegistry.register(
Szar.StalinEntityType, Szar.StalinEntityType,
StalinEntityRenderer::new StalinEntityRenderer::new

View File

@@ -1,14 +1,12 @@
package dev.tggamesyt.szar.client; package dev.tggamesyt.szar.client;
import dev.tggamesyt.szar.ModItemTagProvider; import dev.tggamesyt.szar.*;
import dev.tggamesyt.szar.ModPoiTagProvider;
import dev.tggamesyt.szar.ModWorldGenerator;
import dev.tggamesyt.szar.Szar;
import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint; import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint;
import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator; import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.block.Block;
import net.minecraft.registry.RegistryBuilder; import net.minecraft.registry.RegistryBuilder;
import net.minecraft.registry.RegistryKeys; import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.RegistryWrapper;
public class SzarDataGenerator implements DataGeneratorEntrypoint { public class SzarDataGenerator implements DataGeneratorEntrypoint {
@@ -16,12 +14,17 @@ public class SzarDataGenerator implements DataGeneratorEntrypoint {
public void onInitializeDataGenerator(FabricDataGenerator fabricDataGenerator) { public void onInitializeDataGenerator(FabricDataGenerator fabricDataGenerator) {
FabricDataGenerator.Pack pack = fabricDataGenerator.createPack(); FabricDataGenerator.Pack pack = fabricDataGenerator.createPack();
pack.addProvider(ModPoiTagProvider::new); pack.addProvider(ModPoiTagProvider::new);
pack.addProvider(ModItemTagProvider::new);
pack.addProvider(ModWorldGenerator::new); pack.addProvider(ModWorldGenerator::new);
FabricTagProvider<Block> blockTags =
pack.addProvider(ModBlockTagProvider::new);
pack.addProvider((output, registries) ->
new ModItemTagProvider(output, registries, blockTags));
} }
@Override @Override
public void buildRegistry(RegistryBuilder registryBuilder) { public void buildRegistry(RegistryBuilder registryBuilder) {
registryBuilder.addRegistry(RegistryKeys.CONFIGURED_FEATURE, Szar.ModConfiguredFeatures::boostrap); registryBuilder.addRegistry(RegistryKeys.CONFIGURED_FEATURE, Szar.ModConfiguredFeatures::boostrap);
registryBuilder.addRegistry(RegistryKeys.PLACED_FEATURE, Szar.ModPlacedFeatures::boostrap); registryBuilder.addRegistry(RegistryKeys.PLACED_FEATURE, Szar.ModPlacedFeatures::boostrap);
registryBuilder.addRegistry(RegistryKeys.BIOME, ModBiomes::bootstrap);
} }
} }

View File

@@ -1,3 +1,3 @@
// 1.20.1 2026-03-16T18:04:06.196888 szar/World Gen // 1.20.1 2026-04-13T18:11:43.5891441 szar/World Gen
1d26b5da3b0a2ea6b23d456d1f0b82455a788ca1 data\szar\worldgen\configured_feature\uranium_ore.json 1d26b5da3b0a2ea6b23d456d1f0b82455a788ca1 data\szar\worldgen\configured_feature\uranium_ore.json
32864170bdb41310f9ee5d06f5720dfdb3badb6d data\szar\worldgen\placed_feature\uranium_ore_placed.json 32864170bdb41310f9ee5d06f5720dfdb3badb6d data\szar\worldgen\placed_feature\uranium_ore_placed.json

View File

@@ -0,0 +1 @@
// 1.20.1 2026-04-13T18:11:43.5911498 szar/Tags for minecraft:block

View File

@@ -1,2 +1,2 @@
// 1.20.1 2026-03-16T18:04:06.197868 szar/Tags for minecraft:point_of_interest_type // 1.20.1 2026-04-13T18:11:43.5911498 szar/Tags for minecraft:point_of_interest_type
eba137b51c50a7143a3668876f41adaa1447b1d1 data\minecraft\tags\point_of_interest_type\acquirable_job_site.json eba137b51c50a7143a3668876f41adaa1447b1d1 data\minecraft\tags\point_of_interest_type\acquirable_job_site.json

View File

@@ -1,2 +1,3 @@
// 1.20.1 2026-03-16T18:04:06.196888 szar/Tags for minecraft:item // 1.20.1 2026-04-13T18:11:43.5901497 szar/Tags for minecraft:item
8a0ecda725173a6312a3e5d3a4b621cdecac4eed data\minecraft\tags\items\music_discs.json edfcd4a53e9627b3d636880f560f9adfa0dc0cdc data\minecraft\tags\items\music_discs.json
aa4e63a06745e574bbe80e94cc1b417460045562 data\minecraft\tags\items\beacon_base_blocks.json

View File

@@ -0,0 +1,13 @@
{
"replace": false,
"values": [
"minecraft:iron_block",
"minecraft:gold_block",
"minecraft:diamond_block",
"minecraft:emerald_block",
"minecraft:netherite_block",
"minecraft:lapis_block",
"szar:niggerite_block",
"szar:cigany"
]
}

View File

@@ -6,6 +6,7 @@
"szar:efn", "szar:efn",
"szar:hello", "szar:hello",
"szar:erika", "szar:erika",
"szar:ussr" "szar:ussr",
"szar:hun_disc"
] ]
} }

View File

@@ -0,0 +1,57 @@
package dev.tggamesyt.szar;
import net.minecraft.item.ArmorItem;
import net.minecraft.item.ArmorMaterial;
import net.minecraft.recipe.Ingredient;
import net.minecraft.sound.SoundEvent;
import net.minecraft.sound.SoundEvents;
import static dev.tggamesyt.szar.Szar.MOD_ID;
public class EnderArmorMaterial implements ArmorMaterial {
public static final EnderArmorMaterial INSTANCE = new EnderArmorMaterial();
private static final int[] BASE_DURABILITY = {14, 17, 18, 12};
private static final int[] PROTECTION = {4, 9, 11, 4};
@Override
public int getDurability(ArmorItem.Type type) {
return BASE_DURABILITY[type.getEquipmentSlot().getEntitySlotId()] * 42;
}
@Override
public int getProtection(ArmorItem.Type type) {
return PROTECTION[type.getEquipmentSlot().getEntitySlotId()];
}
@Override
public int getEnchantability() {
return 20;
}
@Override
public SoundEvent getEquipSound() {
return SoundEvents.ITEM_ARMOR_EQUIP_NETHERITE;
}
@Override
public Ingredient getRepairIngredient() {
return Ingredient.ofItems(Szar.ENDER_INGOT);
}
@Override
public String getName() {
return MOD_ID + ":ender";
}
@Override
public float getToughness() {
return 4F;
}
@Override
public float getKnockbackResistance() {
return 0.2F;
}
}

View File

@@ -0,0 +1,56 @@
package dev.tggamesyt.szar;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.ai.goal.MeleeAttackGoal;
import net.minecraft.entity.ai.goal.WanderAroundFarGoal;
import net.minecraft.entity.attribute.DefaultAttributeContainer;
import net.minecraft.entity.attribute.EntityAttributes;
import net.minecraft.entity.damage.DamageSource;
import net.minecraft.entity.mob.MobEntity;
import net.minecraft.entity.mob.PathAwareEntity;
import net.minecraft.world.World;
public class MagyarEntity extends PathAwareEntity implements Arrestable, HunPartie {
public static boolean arrestable = false;
public MagyarEntity(EntityType<? extends PathAwareEntity> type, World world) {
super(type, world);
}
@Override
protected void initGoals() {
this.goalSelector.add(2, new FollowLeaderWanderGoal(this, 1.0D, 6.0F));
this.goalSelector.add(3, new WanderAroundFarGoal(this, 0.8D));
this.goalSelector.add(1, new MeleeAttackGoal(this, 1.0, true));
this.targetSelector.add(1, new AggroOnHitRevengeGoal(this));
this.targetSelector.add(2, new AttackEnemyHunGoal(this, "tisza"));
}
public static DefaultAttributeContainer.Builder createAttributes() {
return MobEntity.createMobAttributes()
.add(EntityAttributes.GENERIC_MAX_HEALTH, 20.0)
.add(EntityAttributes.GENERIC_MOVEMENT_SPEED, 0.25)
.add(EntityAttributes.GENERIC_ATTACK_DAMAGE, 2);
}
@Override
protected void dropLoot(DamageSource source, boolean causedByPlayer) {
var rand = this.getRandom();
if (rand.nextFloat() < 0.01F) {
this.dropItem(Szar.HUN_DISC);
}
}
@Override
public boolean isArrestable() {
return arrestable;
}
@Override
public String getTeam() {
return "tisza";
}
}

View File

@@ -0,0 +1,41 @@
package dev.tggamesyt.szar;
import net.minecraft.entity.SpawnGroup;
import net.minecraft.registry.Registerable;
import net.minecraft.sound.BiomeMoodSound;
import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.BiomeEffects;
import net.minecraft.world.biome.GenerationSettings;
import net.minecraft.world.biome.SpawnSettings;
public class ModBiomes {
public static void bootstrap(Registerable<Biome> context) {
context.register(Szar.CHORUS_FOREST, createChorusForest());
}
private static Biome createChorusForest() {
return new Biome.Builder()
.precipitation(false)
.temperature(0.5f)
.downfall(0.0f)
.effects(new BiomeEffects.Builder()
.skyColor(0)
.fogColor(10518688)
.waterColor(4159204)
.waterFogColor(329011)
.moodSound(BiomeMoodSound.CAVE)
.build())
.spawnSettings(new SpawnSettings.Builder()
.creatureSpawnProbability(0.1f)
.spawn(SpawnGroup.MONSTER,
new SpawnSettings.SpawnEntry(net.minecraft.entity.EntityType.ENDERMAN, 10, 1, 4))
.build())
.generationSettings(new GenerationSettings.Builder().build())
.build();
}
}

View File

@@ -0,0 +1,21 @@
package dev.tggamesyt.szar;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.registry.RegistryKeys;import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.BlockTags;
import java.util.concurrent.CompletableFuture;
public class ModBlockTagProvider extends FabricTagProvider.BlockTagProvider {
public ModBlockTagProvider(FabricDataOutput output,
CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
super(output, registriesFuture);
}
@Override
protected void configure(RegistryWrapper.WrapperLookup lookup) {
}
}

View File

@@ -2,25 +2,44 @@ package dev.tggamesyt.szar;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider; import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.block.Block;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.RegistryWrapper; import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.BlockTags;
import net.minecraft.registry.tag.ItemTags; import net.minecraft.registry.tag.ItemTags;
import net.minecraft.registry.tag.TagKey;
import net.minecraft.util.Identifier;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
public class ModItemTagProvider extends FabricTagProvider.ItemTagProvider { public class ModItemTagProvider extends FabricTagProvider.ItemTagProvider {
public ModItemTagProvider(FabricDataOutput output, public ModItemTagProvider(FabricDataOutput output,
CompletableFuture<RegistryWrapper.WrapperLookup> completableFuture) { CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture,
super(output, completableFuture); FabricTagProvider<Block> blockTagProvider) {
super(output, registriesFuture, (BlockTagProvider) blockTagProvider);
} }
public static final TagKey<Item> BEACON_BASE_BLOCKS =
TagKey.of(RegistryKeys.ITEM, new Identifier("minecraft", "beacon_base_blocks"));
@Override @Override
protected void configure(RegistryWrapper.WrapperLookup lookup) { protected void configure(RegistryWrapper.WrapperLookup lookup) {
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.POPTART); getOrCreateTagBuilder(ItemTags.MUSIC_DISCS)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.BAITER_DISC); .add(Szar.POPTART)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.EFN_DISK); .add(Szar.BAITER_DISC)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.HELLO_DISC); .add(Szar.EFN_DISK)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.ERIKA_DISC); .add(Szar.HELLO_DISC)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.USSR_DISC); .add(Szar.ERIKA_DISC)
getOrCreateTagBuilder(ItemTags.MUSIC_DISCS).add(Szar.HUN_DISC); .add(Szar.USSR_DISC)
.add(Szar.HUN_DISC);
getOrCreateTagBuilder(BEACON_BASE_BLOCKS)
.add(Items.IRON_BLOCK)
.add(Items.GOLD_BLOCK)
.add(Items.DIAMOND_BLOCK)
.add(Items.EMERALD_BLOCK)
.add(Items.NETHERITE_BLOCK)
.add(Items.LAPIS_BLOCK)
.add(Szar.NIGGERITE_BLOCK)
.add(Szar.CIGANYBLOCK);
} }
} }

View File

@@ -43,6 +43,7 @@ import net.minecraft.entity.data.TrackedDataHandlerRegistry;
import net.minecraft.entity.decoration.painting.PaintingVariant; import net.minecraft.entity.decoration.painting.PaintingVariant;
import net.minecraft.entity.effect.StatusEffect; import net.minecraft.entity.effect.StatusEffect;
import net.minecraft.entity.effect.StatusEffectInstance; import net.minecraft.entity.effect.StatusEffectInstance;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.entity.passive.VillagerEntity; import net.minecraft.entity.passive.VillagerEntity;
import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.*; import net.minecraft.item.*;
@@ -295,6 +296,15 @@ public class Szar implements ModInitializer {
.dimensions(EntityDimensions.fixed(0.6F, 1.8F)) .dimensions(EntityDimensions.fixed(0.6F, 1.8F))
.build() .build()
); );
public static final EntityType<MagyarEntity> MagyarEntityType =
Registry.register(
Registries.ENTITY_TYPE,
new Identifier(MOD_ID, "magyar"),
FabricEntityTypeBuilder
.create(SpawnGroup.CREATURE, MagyarEntity::new)
.dimensions(EntityDimensions.fixed(0.6F, 1.8F))
.build()
);
public static final EntityType<StalinEntity> StalinEntityType = public static final EntityType<StalinEntity> StalinEntityType =
Registry.register( Registry.register(
Registries.ENTITY_TYPE, Registries.ENTITY_TYPE,
@@ -405,6 +415,12 @@ public class Szar implements ModInitializer {
entries.add(Szar.ENDER_ORE_ITEM); entries.add(Szar.ENDER_ORE_ITEM);
entries.add(Szar.RAW_ENDER); entries.add(Szar.RAW_ENDER);
entries.add(Szar.ENDER_INGOT); entries.add(Szar.ENDER_INGOT);
entries.add(Szar.ENDER_HELMET);
entries.add(Szar.ENDER_CHESTPLATE);
entries.add(Szar.ENDER_LEGGINGS);
entries.add(Szar.ENDER_BOOTS);
entries.add(Szar.SUPER_DIAMOND);
entries.add(Szar.SUPER_APPLE);
// blueprint stuff // blueprint stuff
entries.add(BlueprintBlocks.BLUEPRINT); entries.add(BlueprintBlocks.BLUEPRINT);
entries.add(BlueprintBlocks.BLUEPRINT_DOOR_ITEM); entries.add(BlueprintBlocks.BLUEPRINT_DOOR_ITEM);
@@ -454,6 +470,7 @@ public class Szar implements ModInitializer {
entries.add(Szar.USSR_DISC); entries.add(Szar.USSR_DISC);
// politics // politics
entries.add(Szar.ORBAN_SPAWNEGG); entries.add(Szar.ORBAN_SPAWNEGG);
entries.add(Szar.MAGYAR_SPAWNEGG);
entries.add(Szar.HUN_DISC); entries.add(Szar.HUN_DISC);
// racism // racism
if (showRacist) { if (showRacist) {
@@ -853,6 +870,10 @@ public class Szar implements ModInitializer {
OrbanEntityType, OrbanEntityType,
OrbanEntity.createAttributes() OrbanEntity.createAttributes()
); );
FabricDefaultAttributeRegistry.register(
MagyarEntityType,
MagyarEntity.createAttributes()
);
FabricDefaultAttributeRegistry.register( FabricDefaultAttributeRegistry.register(
CommunistEntityType, CommunistEntityType,
CommunistEntity.createAttributes() CommunistEntity.createAttributes()
@@ -1440,8 +1461,78 @@ public class Szar implements ModInitializer {
} }
}); });
TheEndBiomeData.addEndBiomeReplacement(BiomeKeys.END_HIGHLANDS, Szar.CHORUS_FOREST, 0.7); TheEndBiomeData.addEndBiomeReplacement(BiomeKeys.END_HIGHLANDS, Szar.CHORUS_FOREST, 0.7);
ServerLivingEntityEvents.ALLOW_DAMAGE.register((entity, source, amount) -> {
if (!(entity instanceof PlayerEntity player)) return true;
// Check if wearing full Ender armor (optional — remove if you want any piece to trigger)
boolean wearingFullSet =
player.getInventory().getArmorStack(0).isOf(ENDER_BOOTS) &&
player.getInventory().getArmorStack(1).isOf(ENDER_LEGGINGS) &&
player.getInventory().getArmorStack(2).isOf(ENDER_CHESTPLATE) &&
player.getInventory().getArmorStack(3).isOf(ENDER_HELMET);
if (!wearingFullSet) return true;
// If player would drop to <= 1 heart (2 HP)
if (player.getHealth() - amount <= 2.0F) {
if (player.getWorld() instanceof ServerWorld world) {
teleportRandomly(player, world);
}
return false; // CANCEL DAMAGE
}
return true;
});
} }
private static void teleportRandomly(PlayerEntity player, ServerWorld world) {
Random RANDOM = new Random();
double x = player.getX();
double y = player.getY();
double z = player.getZ();
for (int i = 0; i < 16; i++) {
double newX = x + (RANDOM.nextDouble() - 0.5) * 32;
double newY = y + RANDOM.nextInt(16) - 8;
double newZ = z + (RANDOM.nextDouble() - 0.5) * 32;
BlockPos pos = BlockPos.ofFloored(newX, newY, newZ);
if (world.isAir(pos)) {
player.teleport(newX, newY, newZ);
world.playSound(null, player.getBlockPos(),
net.minecraft.sound.SoundEvents.ENTITY_ENDERMAN_TELEPORT,
player.getSoundCategory(), 1.0F, 1.0F);
break;
}
}
}
public static final Item ENDER_HELMET = Registry.register(
Registries.ITEM,
new Identifier(Szar.MOD_ID, "ender_helmet"),
new ArmorItem(EnderArmorMaterial.INSTANCE, ArmorItem.Type.HELMET, new Item.Settings())
);
public static final Item ENDER_CHESTPLATE = Registry.register(
Registries.ITEM,
new Identifier(Szar.MOD_ID, "ender_chestplate"),
new ArmorItem(EnderArmorMaterial.INSTANCE, ArmorItem.Type.CHESTPLATE, new Item.Settings())
);
public static final Item ENDER_LEGGINGS = Registry.register(
Registries.ITEM,
new Identifier(Szar.MOD_ID, "ender_leggings"),
new ArmorItem(EnderArmorMaterial.INSTANCE, ArmorItem.Type.LEGGINGS, new Item.Settings())
);
public static final Item ENDER_BOOTS = Registry.register(
Registries.ITEM,
new Identifier(Szar.MOD_ID, "ender_boots"),
new ArmorItem(EnderArmorMaterial.INSTANCE, ArmorItem.Type.BOOTS, new Item.Settings())
);
public static final Block TIC_TAC_TOE_BLOCK = Registry.register( public static final Block TIC_TAC_TOE_BLOCK = Registry.register(
Registries.BLOCK, new Identifier(MOD_ID, "tictactoe"), Registries.BLOCK, new Identifier(MOD_ID, "tictactoe"),
new TicTacToeBlock(AbstractBlock.Settings.create().strength(2f)) new TicTacToeBlock(AbstractBlock.Settings.create().strength(2f))
@@ -1572,6 +1663,28 @@ public class Szar implements ModInitializer {
new Identifier(MOD_ID, "ender_ingot"), new Identifier(MOD_ID, "ender_ingot"),
new Item(new FabricItemSettings()) new Item(new FabricItemSettings())
); );
public static final Item SUPER_DIAMOND = Registry.register(
Registries.ITEM,
new Identifier(MOD_ID, "super_diamond"),
new Item(new FabricItemSettings())
);
public static final Item SUPER_APPLE = Registry.register(
Registries.ITEM,
new Identifier(MOD_ID, "super_apple"),
new Item(new FabricItemSettings().food(
new FoodComponent.Builder()
.hunger(20)
.alwaysEdible()
.saturationModifier(20F)
.statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION,60*20, 255 ), 1F)
.statusEffect(new StatusEffectInstance(StatusEffects.HEALTH_BOOST,2*60*20, 4 ), 1F)
.statusEffect(new StatusEffectInstance(StatusEffects.RESISTANCE,5*60*20, 2), 1F)
.statusEffect(new StatusEffectInstance(StatusEffects.FIRE_RESISTANCE,5*60*20, 2), 1F)
.statusEffect(new StatusEffectInstance(StatusEffects.ABSORPTION,5*60*20, 4), 1F)
.statusEffect(new StatusEffectInstance(StatusEffects.STRENGTH,5*60*20, 2), 1F)
.build()
).rarity(Rarity.EPIC))
);
// Blocks // Blocks
public static final TrackerBlock TRACKER_BLOCK = Registry.register( public static final TrackerBlock TRACKER_BLOCK = Registry.register(
Registries.BLOCK, new Identifier(MOD_ID, "tracker"), Registries.BLOCK, new Identifier(MOD_ID, "tracker"),
@@ -2357,6 +2470,16 @@ public class Szar implements ModInitializer {
new Item.Settings() new Item.Settings()
) )
); );
public static final Item MAGYAR_SPAWNEGG = Registry.register(
Registries.ITEM,
new Identifier(MOD_ID, "magyar_spawn_egg"),
new SpawnEggItem(
MagyarEntityType,
0x24B573,
0xED4551,
new Item.Settings()
)
);
public static final Item HITTER_SPAWNEGG = Registry.register( public static final Item HITTER_SPAWNEGG = Registry.register(
Registries.ITEM, Registries.ITEM,
new Identifier(MOD_ID, "hitler_spawn_egg"), new Identifier(MOD_ID, "hitler_spawn_egg"),

View File

@@ -207,6 +207,8 @@
"block.szar.ender_ore": "Ender Ore", "block.szar.ender_ore": "Ender Ore",
"item.szar.raw_ender": "Raw Ender", "item.szar.raw_ender": "Raw Ender",
"item.szar.ender_ingot": "Ender Ingot", "item.szar.ender_ingot": "Ender Ingot",
"item.szar.super_diamond": "Super Diamond",
"item.szar.super_apple": "Super Apple",
"advancement.szar.april_game_beaten.title": "We are so back", "advancement.szar.april_game_beaten.title": "We are so back",
"advancement.szar.april_game_beaten.description": "Beat the game on april 1st to flip the game back.", "advancement.szar.april_game_beaten.description": "Beat the game on april 1st to flip the game back.",
@@ -215,5 +217,11 @@
"entity.szar.magyar": "Magyar Péter", "entity.szar.magyar": "Magyar Péter",
"item.szar.hun_disc": "Music Disc", "item.szar.hun_disc": "Music Disc",
"item.szar.hun_disc.desc": "Kölcsey Ferenc - Hungarian Anthem", "item.szar.hun_disc.desc": "Kölcsey Ferenc - Hungarian Anthem",
"item.szar.orban_spawn_egg": "Orbán Spawn Egg" "item.szar.orban_spawn_egg": "Orbán Spawn Egg",
"item.szar.magyar_spawn_egg": "Magyar Spawn Egg",
"item.szar.ender_chestplate": "Ender Chestplate",
"item.szar.ender_leggings": "Ender Leggings",
"item.szar.ender_boots": "Ender Boots",
"item.szar.ender_helmet": "Ender Helmet"
} }

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/ender_boots"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/ender_chestplate"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/ender_helmet"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/ender_leggings"
}
}

View File

@@ -0,0 +1,3 @@
{
"parent": "minecraft:item/template_spawn_egg"
}

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/super_apple"
}
}

View File

@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "szar:item/super_diamond"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 895 B

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 848 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 628 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 970 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 634 B

View File

@@ -1,13 +1,5 @@
{ {
"type": "minecraft:crafting_shaped", "type": "minecraft:crafting_shaped",
"ingredients": [
{
"item": "minecraft:gunpowder"
},
{
"item": "minecraft:iron_nugget"
}
],
"pattern": [ "pattern": [
"PPP", "PPP",
"BBB", "BBB",

View File

@@ -0,0 +1,15 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
"X X",
"X X"
],
"key": {
"X": {
"item": "szar:ender_ingot"
}
},
"result": {
"item": "szar:ender_boots"
}
}

View File

@@ -0,0 +1,16 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
"X X",
"XXX",
"XXX"
],
"key": {
"X": {
"item": "szar:ender_ingot"
}
},
"result": {
"item": "szar:ender_chestplate"
}
}

View File

@@ -0,0 +1,15 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
"XXX",
"X X"
],
"key": {
"X": {
"item": "szar:ender_ingot"
}
},
"result": {
"item": "szar:ender_helmet"
}
}

View File

@@ -0,0 +1,16 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
"XXX",
"X X",
"X X"
],
"key": {
"X": {
"item": "szar:ender_ingot"
}
},
"result": {
"item": "szar:ender_leggings"
}
}

View File

@@ -0,0 +1,14 @@
{
"type": "minecraft:crafting_shapeless",
"ingredients": [
{
"item": "minecraft:apple"
},
{
"item": "szar:super_diamond"
}
],
"result": {
"item": "szar:super_apple"
}
}

View File

@@ -0,0 +1,26 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
" E ",
"DBD",
"MMM"
],
"key": {
"E": {
"item": "minecraft:enchanting_table"
},
"D": {
"item": "szar:super_diamond"
},
"B": {
"item": "minecraft:beacon"
},
"M": {
"tag": "minecraft:beacon_base_blocks"
}
},
"result": {
"item": "minecraft:bedrock",
"count": 1
}
}

View File

@@ -0,0 +1,23 @@
{
"type": "minecraft:crafting_shaped",
"pattern": [
"NEN",
"EDE",
"NEN"
],
"key": {
"N": {
"item": "minecraft:netherite_ingot"
},
"D": {
"item": "minecraft:diamond"
},
"E": {
"item": "szar:ender_ingot"
}
},
"result": {
"item": "szar:super_diamond",
"count": 1
}
}

View File

@@ -3,7 +3,6 @@
"placement": [ "placement": [
{ "type": "minecraft:count", "count": 5 }, { "type": "minecraft:count", "count": 5 },
{ "type": "minecraft:in_square" }, { "type": "minecraft:in_square" },
{ "type": "minecraft:heightmap", "heightmap": "WORLD_SURFACE_WG" }, { "type": "minecraft:heightmap", "heightmap": "WORLD_SURFACE_WG" }
{ "type": "minecraft:biome" }
] ]
} }

View File

@@ -7,8 +7,8 @@
], ],
"placement": { "placement": {
"type": "minecraft:random_spread", "type": "minecraft:random_spread",
"spacing": 20, "spacing": 10,
"separation": 10, "separation": 1,
"salt": 398826349 "salt": 398826349
} }
} }

View File

@@ -8,4 +8,6 @@ accessible method net/minecraft/client/render/entity/LivingEntityRenderer addFea
accessible field net/minecraft/client/render/entity/EntityRenderDispatcher renderers Ljava/util/Map; accessible field net/minecraft/client/render/entity/EntityRenderDispatcher renderers Ljava/util/Map;
accessible method net/minecraft/world/GameRules$BooleanRule create (ZLjava/util/function/BiConsumer;)Lnet/minecraft/world/GameRules$Type; accessible method net/minecraft/world/GameRules$BooleanRule create (ZLjava/util/function/BiConsumer;)Lnet/minecraft/world/GameRules$Type;
accessible method net/minecraft/client/render/block/BlockModelRenderer renderQuad (Lnet/minecraft/world/BlockRenderView;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/client/render/VertexConsumer;Lnet/minecraft/client/util/math/MatrixStack$Entry;Lnet/minecraft/client/render/model/BakedQuad;FFFFIIIII)V accessible method net/minecraft/client/render/block/BlockModelRenderer renderQuad (Lnet/minecraft/world/BlockRenderView;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/client/render/VertexConsumer;Lnet/minecraft/client/util/math/MatrixStack$Entry;Lnet/minecraft/client/render/model/BakedQuad;FFFFIIIII)V
accessible field net/minecraft/client/particle/ParticleManager world Lnet/minecraft/client/world/ClientWorld; accessible field net/minecraft/client/particle/ParticleManager world Lnet/minecraft/client/world/ClientWorld;
accessible method net/minecraft/registry/tag/ItemTags of (Ljava/lang/String;)Lnet/minecraft/registry/tag/TagKey;