Tobacco Crop (no fruit)
@@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"variants": {
|
||||||
|
"age=0": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage0"
|
||||||
|
},
|
||||||
|
"age=1": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage1"
|
||||||
|
},
|
||||||
|
"age=2": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage2"
|
||||||
|
},
|
||||||
|
"age=3": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage3"
|
||||||
|
},
|
||||||
|
"age=4": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage4"
|
||||||
|
},
|
||||||
|
"age=5": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage5"
|
||||||
|
},
|
||||||
|
"age=6": {
|
||||||
|
"model": "acesbs:block/tobacco_crop_stage6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage0"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage1"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage2"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage3"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage4"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage5"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:block/crop",
|
||||||
|
"textures": {
|
||||||
|
"crop": "acesbs:block/tobacco_crop_stage6"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"parent": "minecraft:item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "acesbs:item/tobacco_seeds"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -4,13 +4,11 @@
|
|||||||
"translate": "enchantment.acesbs.lightning_strike"
|
"translate": "enchantment.acesbs.lightning_strike"
|
||||||
},
|
},
|
||||||
"effects": {
|
"effects": {
|
||||||
"minecraft:post_attack": [
|
"minecraft:projectile_spawned": [
|
||||||
{
|
{
|
||||||
"affected": "victim",
|
|
||||||
"effect": {
|
"effect": {
|
||||||
"type": "acesbs:lighting_strike"
|
"type": "acesbs:lighting_strike"
|
||||||
},
|
}
|
||||||
"enchanted": "attacker"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -23,10 +21,9 @@
|
|||||||
"base": 5,
|
"base": 5,
|
||||||
"per_level_above_first": 7
|
"per_level_above_first": 7
|
||||||
},
|
},
|
||||||
"primary_items": "#minecraft:enchantable/bow",
|
|
||||||
"slots": [
|
"slots": [
|
||||||
"mainhand"
|
"mainhand"
|
||||||
],
|
],
|
||||||
"supported_items": "#minecraft:enchantable/weapon",
|
"supported_items": "#minecraft:enchantable/bow",
|
||||||
"weight": 5
|
"weight": 5
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"functions": [
|
||||||
|
{
|
||||||
|
"function": "minecraft:explosion_decay"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"bonus_rolls": 0.0,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:alternatives",
|
||||||
|
"children": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"block": "acesbs:tobacco_crop",
|
||||||
|
"condition": "minecraft:block_state_property",
|
||||||
|
"properties": {
|
||||||
|
"age": "6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "acesbs:lemon"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "acesbs:tobacco_seeds"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"rolls": 1.0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"bonus_rolls": 0.0,
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"block": "acesbs:tobacco_crop",
|
||||||
|
"condition": "minecraft:block_state_property",
|
||||||
|
"properties": {
|
||||||
|
"age": "6"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"functions": [
|
||||||
|
{
|
||||||
|
"enchantment": "minecraft:fortune",
|
||||||
|
"formula": "minecraft:binomial_with_bonus_count",
|
||||||
|
"function": "minecraft:apply_bonus",
|
||||||
|
"parameters": {
|
||||||
|
"extra": 3,
|
||||||
|
"probability": 0.5714286
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "acesbs:tobacco_seeds"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"rolls": 1.0
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -15,6 +15,7 @@ import net.fabricmc.api.ModInitializer;
|
|||||||
|
|
||||||
import net.fabricmc.fabric.api.event.player.AttackEntityCallback;
|
import net.fabricmc.fabric.api.event.player.AttackEntityCallback;
|
||||||
import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents;
|
import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents;
|
||||||
|
import net.fabricmc.fabric.api.registry.CompostingChanceRegistry;
|
||||||
import net.fabricmc.fabric.api.registry.FabricBrewingRecipeRegistryBuilder;
|
import net.fabricmc.fabric.api.registry.FabricBrewingRecipeRegistryBuilder;
|
||||||
import net.fabricmc.fabric.api.renderer.v1.Renderer;
|
import net.fabricmc.fabric.api.renderer.v1.Renderer;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
@@ -56,5 +57,8 @@ public class AcesBS implements ModInitializer {
|
|||||||
builder.registerPotionRecipe(Potions.AWKWARD, ModItems.LEMON, ModPotions.LEMON);
|
builder.registerPotionRecipe(Potions.AWKWARD, ModItems.LEMON, ModPotions.LEMON);
|
||||||
builder.registerPotionRecipe(Potions.AWKWARD, Items.SAND, ModPotions.BLINDNESS);
|
builder.registerPotionRecipe(Potions.AWKWARD, Items.SAND, ModPotions.BLINDNESS);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// CompostingChanceRegistry.INSTANCE.add(ModItems.TOBACCO);
|
||||||
|
CompostingChanceRegistry.INSTANCE.add(ModItems.TOBACCO_SEEDS, 0.5f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -19,6 +19,7 @@ Food
|
|||||||
- Infernal Beef (Mob/Ashes + Cooked Beef)
|
- Infernal Beef (Mob/Ashes + Cooked Beef)
|
||||||
- Hyper Stimulants (Hyper Sugar)
|
- Hyper Stimulants (Hyper Sugar)
|
||||||
- Narcan (Stimulants + Entropic Eviscerator)
|
- Narcan (Stimulants + Entropic Eviscerator)
|
||||||
|
- Tobacco
|
||||||
|
|
||||||
Crop
|
Crop
|
||||||
- Tobacco
|
- Tobacco
|
||||||
|
|||||||
@@ -4,9 +4,11 @@ import com.acethewildfire.acesbs.AcesBS;
|
|||||||
import com.acethewildfire.acesbs.block.custom.EntropyBlock;
|
import com.acethewildfire.acesbs.block.custom.EntropyBlock;
|
||||||
import com.acethewildfire.acesbs.block.custom.EvilBlock;
|
import com.acethewildfire.acesbs.block.custom.EvilBlock;
|
||||||
import com.acethewildfire.acesbs.block.custom.StableEntropyBlock;
|
import com.acethewildfire.acesbs.block.custom.StableEntropyBlock;
|
||||||
|
import com.acethewildfire.acesbs.block.custom.TobaccoCrop;
|
||||||
import com.acethewildfire.acesbs.sounds.ModSounds;
|
import com.acethewildfire.acesbs.sounds.ModSounds;
|
||||||
import net.minecraft.block.*;
|
import net.minecraft.block.*;
|
||||||
import net.minecraft.block.enums.NoteBlockInstrument;
|
import net.minecraft.block.enums.NoteBlockInstrument;
|
||||||
|
import net.minecraft.block.piston.PistonBehavior;
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
@@ -194,6 +196,20 @@ public class ModBlocks {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
public static final Block TOBACCO_CROP = registerBlockWithoutItem("tobacco_crop", new TobaccoCrop(
|
||||||
|
AbstractBlock.Settings.create()
|
||||||
|
.mapColor(MapColor.DARK_GREEN)
|
||||||
|
.noCollision()
|
||||||
|
.ticksRandomly()
|
||||||
|
.breakInstantly()
|
||||||
|
.sounds(BlockSoundGroup.CROP)
|
||||||
|
.pistonBehavior(PistonBehavior.DESTROY)
|
||||||
|
));
|
||||||
|
|
||||||
|
private static Block registerBlockWithoutItem(String name, Block block){
|
||||||
|
return Registry.register(Registries.BLOCK, Identifier.of(AcesBS.MOD_ID, name), block);
|
||||||
|
}
|
||||||
|
|
||||||
private static Block registerBlock(String name, Block block){
|
private static Block registerBlock(String name, Block block){
|
||||||
registerBlockItem(name, block);
|
registerBlockItem(name, block);
|
||||||
return Registry.register(Registries.BLOCK, Identifier.of(AcesBS.MOD_ID, name), block);
|
return Registry.register(Registries.BLOCK, Identifier.of(AcesBS.MOD_ID, name), block);
|
||||||
|
|||||||
@@ -0,0 +1,39 @@
|
|||||||
|
package com.acethewildfire.acesbs.block.custom;
|
||||||
|
|
||||||
|
import com.acethewildfire.acesbs.item.ModItems;
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockState;
|
||||||
|
import net.minecraft.block.CropBlock;
|
||||||
|
import net.minecraft.item.ItemConvertible;
|
||||||
|
import net.minecraft.state.StateManager;
|
||||||
|
import net.minecraft.state.property.IntProperty;
|
||||||
|
|
||||||
|
public class TobaccoCrop extends CropBlock {
|
||||||
|
|
||||||
|
public static final int MAX_AGE = 6;
|
||||||
|
public static final IntProperty AGE = IntProperty.of("age", 0, 6);
|
||||||
|
|
||||||
|
public TobaccoCrop(Settings settings) {
|
||||||
|
super(settings);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected ItemConvertible getSeedsItem() {
|
||||||
|
return ModItems.TOBACCO_SEEDS;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IntProperty getAgeProperty() {
|
||||||
|
return AGE;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMaxAge() {
|
||||||
|
return MAX_AGE;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void appendProperties(StateManager.Builder<Block, BlockState> builder) {
|
||||||
|
builder.add(AGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@ package com.acethewildfire.acesbs.datagen;
|
|||||||
|
|
||||||
import com.acethewildfire.acesbs.AcesBS;
|
import com.acethewildfire.acesbs.AcesBS;
|
||||||
import com.acethewildfire.acesbs.block.ModBlocks;
|
import com.acethewildfire.acesbs.block.ModBlocks;
|
||||||
|
import com.acethewildfire.acesbs.block.custom.TobaccoCrop;
|
||||||
import com.acethewildfire.acesbs.item.ModItems;
|
import com.acethewildfire.acesbs.item.ModItems;
|
||||||
import com.acethewildfire.acesbs.util.ModTags;
|
import com.acethewildfire.acesbs.util.ModTags;
|
||||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||||
@@ -17,6 +18,7 @@ import net.minecraft.item.ItemStack;
|
|||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
import net.minecraft.loot.LootPool;
|
import net.minecraft.loot.LootPool;
|
||||||
import net.minecraft.loot.LootTable;
|
import net.minecraft.loot.LootTable;
|
||||||
|
import net.minecraft.loot.condition.BlockStatePropertyLootCondition;
|
||||||
import net.minecraft.loot.condition.InvertedLootCondition;
|
import net.minecraft.loot.condition.InvertedLootCondition;
|
||||||
import net.minecraft.loot.condition.LootCondition;
|
import net.minecraft.loot.condition.LootCondition;
|
||||||
import net.minecraft.loot.condition.MatchToolLootCondition;
|
import net.minecraft.loot.condition.MatchToolLootCondition;
|
||||||
@@ -28,6 +30,7 @@ import net.minecraft.loot.function.SetCountLootFunction;
|
|||||||
import net.minecraft.loot.provider.number.ConstantLootNumberProvider;
|
import net.minecraft.loot.provider.number.ConstantLootNumberProvider;
|
||||||
import net.minecraft.loot.provider.number.UniformLootNumberProvider;
|
import net.minecraft.loot.provider.number.UniformLootNumberProvider;
|
||||||
import net.minecraft.predicate.NumberRange;
|
import net.minecraft.predicate.NumberRange;
|
||||||
|
import net.minecraft.predicate.StatePredicate;
|
||||||
import net.minecraft.predicate.item.EnchantmentPredicate;
|
import net.minecraft.predicate.item.EnchantmentPredicate;
|
||||||
import net.minecraft.predicate.item.EnchantmentsPredicate;
|
import net.minecraft.predicate.item.EnchantmentsPredicate;
|
||||||
import net.minecraft.predicate.item.ItemPredicate;
|
import net.minecraft.predicate.item.ItemPredicate;
|
||||||
@@ -67,6 +70,10 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider {
|
|||||||
addDrop(ModBlocks.LEMONWOOD_TRAPDOOR);
|
addDrop(ModBlocks.LEMONWOOD_TRAPDOOR);
|
||||||
|
|
||||||
addDrop(ModBlocks.ENTROPY_ORE, prismaSteelOreDrops(ModBlocks.ENTROPY_ORE, ModItems.RAW_ENTROPY, 1, 3));
|
addDrop(ModBlocks.ENTROPY_ORE, prismaSteelOreDrops(ModBlocks.ENTROPY_ORE, ModItems.RAW_ENTROPY, 1, 3));
|
||||||
|
|
||||||
|
BlockStatePropertyLootCondition.Builder builder2 = BlockStatePropertyLootCondition.builder(ModBlocks.TOBACCO_CROP)
|
||||||
|
.properties(StatePredicate.Builder.create().exactMatch(TobaccoCrop.AGE, TobaccoCrop.MAX_AGE));
|
||||||
|
this.addDrop(ModBlocks.TOBACCO_CROP, this.cropDrops(ModBlocks.TOBACCO_CROP, ModItems.LEMON, ModItems.TOBACCO_SEEDS, builder2));
|
||||||
}
|
}
|
||||||
|
|
||||||
public LootTable.Builder multipleOreDrops(Block drop, Item item, float minDrops, float maxDrops) {
|
public LootTable.Builder multipleOreDrops(Block drop, Item item, float minDrops, float maxDrops) {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.acethewildfire.acesbs.datagen;
|
|||||||
|
|
||||||
import com.acethewildfire.acesbs.block.ModBlocks;
|
import com.acethewildfire.acesbs.block.ModBlocks;
|
||||||
import com.acethewildfire.acesbs.block.custom.EvilBlock;
|
import com.acethewildfire.acesbs.block.custom.EvilBlock;
|
||||||
|
import com.acethewildfire.acesbs.block.custom.TobaccoCrop;
|
||||||
import com.acethewildfire.acesbs.item.ModItems;
|
import com.acethewildfire.acesbs.item.ModItems;
|
||||||
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
|
||||||
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
|
import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider;
|
||||||
@@ -47,6 +48,7 @@ public class ModModelProvider extends FabricModelProvider {
|
|||||||
blockStateModelGenerator.blockStateCollector.accept(VariantsBlockStateSupplier.create(ModBlocks.EVIL_BLOCK)
|
blockStateModelGenerator.blockStateCollector.accept(VariantsBlockStateSupplier.create(ModBlocks.EVIL_BLOCK)
|
||||||
.coordinate(BlockStateModelGenerator.createBooleanModelMap(EvilBlock.CLICKED, lampOnIdentifier, lampOffIdentifier)));
|
.coordinate(BlockStateModelGenerator.createBooleanModelMap(EvilBlock.CLICKED, lampOnIdentifier, lampOffIdentifier)));
|
||||||
|
|
||||||
|
blockStateModelGenerator.registerCrop(ModBlocks.TOBACCO_CROP, TobaccoCrop.AGE, 0,1,2,3,4,5,6);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ public class ModItemGroups {
|
|||||||
entries.add(ModItems.PRISMA_STEEL);
|
entries.add(ModItems.PRISMA_STEEL);
|
||||||
entries.add(ModItems.PRISMA_SMITHING_TEMPLATE);
|
entries.add(ModItems.PRISMA_SMITHING_TEMPLATE);
|
||||||
entries.add(ModItems.CRAB_RAVE_MUSIC_DISC);
|
entries.add(ModItems.CRAB_RAVE_MUSIC_DISC);
|
||||||
|
entries.add(ModItems.TOBACCO_SEEDS);
|
||||||
})
|
})
|
||||||
.build());
|
.build());
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.acethewildfire.acesbs.item;
|
package com.acethewildfire.acesbs.item;
|
||||||
|
|
||||||
import com.acethewildfire.acesbs.AcesBS;
|
import com.acethewildfire.acesbs.AcesBS;
|
||||||
|
import com.acethewildfire.acesbs.block.ModBlocks;
|
||||||
import com.acethewildfire.acesbs.item.custom.HammerItem;
|
import com.acethewildfire.acesbs.item.custom.HammerItem;
|
||||||
import com.acethewildfire.acesbs.item.custom.ModArmorItem;
|
import com.acethewildfire.acesbs.item.custom.ModArmorItem;
|
||||||
import com.acethewildfire.acesbs.item.custom.OracleLemon;
|
import com.acethewildfire.acesbs.item.custom.OracleLemon;
|
||||||
@@ -144,7 +145,7 @@ public class ModItems {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
public static final Item TOBACCO_SEEDS = registerItem("tobacco_seeds", new AliasedBlockItem(ModBlocks.TOBACCO_CROP, new Item.Settings()));
|
||||||
|
|
||||||
private static Item registerItem(String name, Item item){
|
private static Item registerItem(String name, Item item){
|
||||||
return Registry.register(Registries.ITEM, Identifier.of(AcesBS.MOD_ID, name), item);
|
return Registry.register(Registries.ITEM, Identifier.of(AcesBS.MOD_ID, name), item);
|
||||||
|
|||||||
@@ -40,6 +40,8 @@
|
|||||||
"item.acesbs.crab_rave_music_disc": "Crab Rave Music Disc",
|
"item.acesbs.crab_rave_music_disc": "Crab Rave Music Disc",
|
||||||
"item.acesbs.crab_rave_music_disc.desc": "Noisestorm - Crab Rave [Monstercat Release]",
|
"item.acesbs.crab_rave_music_disc.desc": "Noisestorm - Crab Rave [Monstercat Release]",
|
||||||
|
|
||||||
|
"item.acesbs.tobacco_seeds": "Tobacco Seeds",
|
||||||
|
|
||||||
|
|
||||||
"painting.acesbs.herald.title": "Herald's Banner",
|
"painting.acesbs.herald.title": "Herald's Banner",
|
||||||
"painting.acesbs.herald.author": "AceTheWildfire",
|
"painting.acesbs.herald.author": "AceTheWildfire",
|
||||||
@@ -74,6 +76,8 @@
|
|||||||
|
|
||||||
"block.acesbs.evil_block": "Evil Block",
|
"block.acesbs.evil_block": "Evil Block",
|
||||||
|
|
||||||
|
"block.acesbs.tobacco_crop": "Tobacco Crop",
|
||||||
|
|
||||||
"itemgroup.acesbs.items": "Ace's BS Items",
|
"itemgroup.acesbs.items": "Ace's BS Items",
|
||||||
"itemgroup.acesbs.blocks": "Ace's BS Blocks",
|
"itemgroup.acesbs.blocks": "Ace's BS Blocks",
|
||||||
"itemgroup.acesbs.combat": "Ace's BS Combat",
|
"itemgroup.acesbs.combat": "Ace's BS Combat",
|
||||||
|
|||||||
|
After Width: | Height: | Size: 4.1 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.2 KiB |