添加创造模式充电站

This commit is contained in:
Light_Quanta 2025-01-24 23:50:40 +08:00
parent 816c73cd57
commit 845e2f0123
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
20 changed files with 252 additions and 4 deletions

View file

@ -13,5 +13,5 @@ mod_description=A Warfare Mod
minecraft_version=1.20.1 minecraft_version=1.20.1
jei_version=15.2.0.27 jei_version=15.2.0.27
cloth_config_version=11.1.106 cloth_config_version=11.1.106
mod_version=0.4.3 mod_version=0.4.4
mod_authors=Atsuishio, Roki27, Light_Quanta mod_authors=Atsuishio, Roki27, Light_Quanta

View file

@ -1,8 +1,9 @@
// 1.20.1 2024-12-19T16:59:33.3284116 Loot Tables // 1.20.1 2025-01-24T23:42:51.1560585 Loot Tables
98386b2e65b2afb7cf5b0cabf6a7b0f062c1e640 data/superbwarfare/loot_tables/blocks/barbed_wire.json 98386b2e65b2afb7cf5b0cabf6a7b0f062c1e640 data/superbwarfare/loot_tables/blocks/barbed_wire.json
811e69929a14e6736015849c220100bb58d914c9 data/superbwarfare/loot_tables/blocks/cemented_carbide_block.json 811e69929a14e6736015849c220100bb58d914c9 data/superbwarfare/loot_tables/blocks/cemented_carbide_block.json
89568ab53a9e33d332b9125c1acccc80db6eb5bc data/superbwarfare/loot_tables/blocks/charging_station.json 89568ab53a9e33d332b9125c1acccc80db6eb5bc data/superbwarfare/loot_tables/blocks/charging_station.json
8ed3f1d518c86fe6ed14f14f3121c2e24e109269 data/superbwarfare/loot_tables/blocks/container.json 8ed3f1d518c86fe6ed14f14f3121c2e24e109269 data/superbwarfare/loot_tables/blocks/container.json
c7b613c897b0eeca4dbade5eb65f718015dcb853 data/superbwarfare/loot_tables/blocks/creative_charging_station.json
dabbe17417c944567dc6dfcdcba32b8377c24f69 data/superbwarfare/loot_tables/blocks/deepslate_galena_ore.json dabbe17417c944567dc6dfcdcba32b8377c24f69 data/superbwarfare/loot_tables/blocks/deepslate_galena_ore.json
a7c1af3e194d35a64544902468bd964f45f2f9ef data/superbwarfare/loot_tables/blocks/deepslate_scheelite_ore.json a7c1af3e194d35a64544902468bd964f45f2f9ef data/superbwarfare/loot_tables/blocks/deepslate_scheelite_ore.json
76fa64ff714374c1655f4d11776fda132287a014 data/superbwarfare/loot_tables/blocks/deepslate_silver_ore.json 76fa64ff714374c1655f4d11776fda132287a014 data/superbwarfare/loot_tables/blocks/deepslate_silver_ore.json

View file

@ -1,4 +1,4 @@
// 1.20.1 2025-01-18T09:52:20.4788146 Item Models: superbwarfare // 1.20.1 2025-01-24T23:46:19.2276768 Item Models: superbwarfare
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/aa_12_blueprint.json 13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/aa_12_blueprint.json
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_12_blueprint.json 13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_12_blueprint.json
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_47_blueprint.json 13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_47_blueprint.json
@ -19,6 +19,7 @@ b97ce523ca85cddff78abd9fd735295414ee07fd assets/superbwarfare/models/item/cement
a52a7f9dc18d5af69903c2249239c15cb6d38c8e assets/superbwarfare/models/item/coal_powder.json a52a7f9dc18d5af69903c2249239c15cb6d38c8e assets/superbwarfare/models/item/coal_powder.json
5ccef04175adcc9fa0797caca6bf04526f702d5c assets/superbwarfare/models/item/common_material_pack.json 5ccef04175adcc9fa0797caca6bf04526f702d5c assets/superbwarfare/models/item/common_material_pack.json
fc892b610a110980dbc6f8e2c080672b5dc06e99 assets/superbwarfare/models/item/copper_plate.json fc892b610a110980dbc6f8e2c080672b5dc06e99 assets/superbwarfare/models/item/copper_plate.json
7e43d8e9c4b8589f7665c46d4b67de645949cc6b assets/superbwarfare/models/item/creative_charging_station.json
0d3ef5e99a28f03b41c39bb7a173b77a0d42467d assets/superbwarfare/models/item/crowbar.json 0d3ef5e99a28f03b41c39bb7a173b77a0d42467d assets/superbwarfare/models/item/crowbar.json
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/devotion_blueprint.json 13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/devotion_blueprint.json
6f4a829dc159f1740f52265d01730ecb6a840d81 assets/superbwarfare/models/item/dog_tag.json 6f4a829dc159f1740f52265d01730ecb6a840d81 assets/superbwarfare/models/item/dog_tag.json

View file

@ -1,8 +1,9 @@
// 1.20.1 2025-01-09T21:37:53.6258664 Block States: superbwarfare // 1.20.1 2025-01-24T23:42:51.1511918 Block States: superbwarfare
f3b778ca36ca78c3d80f1b778078897f59bdb0c5 assets/superbwarfare/blockstates/barbed_wire.json f3b778ca36ca78c3d80f1b778078897f59bdb0c5 assets/superbwarfare/blockstates/barbed_wire.json
0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json 0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json
472c06e6b43ad09925edaa88e9376bfd27ab267f assets/superbwarfare/blockstates/charging_station.json 472c06e6b43ad09925edaa88e9376bfd27ab267f assets/superbwarfare/blockstates/charging_station.json
921500c7cf6c92da0e656486126068bbf5e30348 assets/superbwarfare/blockstates/container.json 921500c7cf6c92da0e656486126068bbf5e30348 assets/superbwarfare/blockstates/container.json
05f0cdee0936354ef2bf904037fe09ff7d5e0bc7 assets/superbwarfare/blockstates/creative_charging_station.json
62fb0464ca59ac21693639c406e08730427d87b3 assets/superbwarfare/blockstates/deepslate_galena_ore.json 62fb0464ca59ac21693639c406e08730427d87b3 assets/superbwarfare/blockstates/deepslate_galena_ore.json
b8b7cdea6c8626c74d652d0b300b3afe19c60674 assets/superbwarfare/blockstates/deepslate_scheelite_ore.json b8b7cdea6c8626c74d652d0b300b3afe19c60674 assets/superbwarfare/blockstates/deepslate_scheelite_ore.json
2b24b703de4821bebe71ba53043e6a1a23d71c17 assets/superbwarfare/blockstates/deepslate_silver_ore.json 2b24b703de4821bebe71ba53043e6a1a23d71c17 assets/superbwarfare/blockstates/deepslate_silver_ore.json

View file

@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "superbwarfare:block/creative_charging_station",
"y": 90
},
"facing=north": {
"model": "superbwarfare:block/creative_charging_station"
},
"facing=south": {
"model": "superbwarfare:block/creative_charging_station",
"y": 180
},
"facing=west": {
"model": "superbwarfare:block/creative_charging_station",
"y": 270
}
}
}

View file

@ -0,0 +1,3 @@
{
"parent": "superbwarfare:block/creative_charging_station"
}

View file

@ -0,0 +1,21 @@
{
"type": "minecraft:block",
"pools": [
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "superbwarfare:creative_charging_station"
}
],
"rolls": 1.0
}
],
"random_sequence": "superbwarfare:blocks/creative_charging_station"
}

View file

@ -0,0 +1,70 @@
package com.atsuishio.superbwarfare.block;
import com.atsuishio.superbwarfare.block.entity.CreativeChargingStationBlockEntity;
import com.atsuishio.superbwarfare.init.ModBlockEntities;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.world.item.context.BlockPlaceContext;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.*;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityTicker;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.level.block.state.properties.DirectionProperty;
import org.jetbrains.annotations.Nullable;
@SuppressWarnings("deprecation")
public class CreativeChargingStationBlock extends BaseEntityBlock {
public static final DirectionProperty FACING = HorizontalDirectionalBlock.FACING;
public CreativeChargingStationBlock() {
super(Properties.of().sound(SoundType.METAL).strength(3.0f).requiresCorrectToolForDrops());
this.registerDefaultState(this.stateDefinition.any().setValue(FACING, Direction.NORTH));
}
@Override
public RenderShape getRenderShape(BlockState pState) {
return RenderShape.MODEL;
}
@Nullable
@Override
public BlockEntity newBlockEntity(BlockPos pPos, BlockState pState) {
return new CreativeChargingStationBlockEntity(pPos, pState);
}
@Nullable
@Override
public <T extends BlockEntity> BlockEntityTicker<T> getTicker(Level pLevel, BlockState pState, BlockEntityType<T> pBlockEntityType) {
if (!pLevel.isClientSide) {
return createTickerHelper(pBlockEntityType, ModBlockEntities.CREATIVE_CHARGING_STATION.get(), (pLevel1, pPos, pState1, blockEntity) -> CreativeChargingStationBlockEntity.serverTick(blockEntity));
}
return null;
}
@Override
public void onRemove(BlockState pState, Level pLevel, BlockPos pPos, BlockState pNewState, boolean pMovedByPiston) {
if (!pState.is(pNewState.getBlock())) {
BlockEntity blockentity = pLevel.getBlockEntity(pPos);
if (blockentity instanceof CreativeChargingStationBlockEntity) {
pLevel.updateNeighbourForOutputSignal(pPos, this);
}
}
super.onRemove(pState, pLevel, pPos, pNewState, pMovedByPiston);
}
@Override
protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> pBuilder) {
pBuilder.add(FACING);
}
@Nullable
@Override
public BlockState getStateForPlacement(BlockPlaceContext pContext) {
return this.defaultBlockState().setValue(FACING, pContext.getHorizontalDirection().getOpposite());
}
}

View file

@ -0,0 +1,98 @@
package com.atsuishio.superbwarfare.block.entity;
import com.atsuishio.superbwarfare.entity.vehicle.IChargeEntity;
import com.atsuishio.superbwarfare.init.ModBlockEntities;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.phys.AABB;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.ForgeCapabilities;
import net.minecraftforge.common.util.LazyOptional;
import net.minecraftforge.energy.EnergyStorage;
import org.jetbrains.annotations.NotNull;
/**
* Energy Data Slot Code based on @GoryMoon's Chargers
*/
public class CreativeChargingStationBlockEntity extends BlockEntity {
public static final int CHARGE_RADIUS = 8;
private LazyOptional<EnergyStorage> energyHandler;
public CreativeChargingStationBlockEntity(BlockPos pos, BlockState state) {
super(ModBlockEntities.CREATIVE_CHARGING_STATION.get(), pos, state);
this.energyHandler = LazyOptional.of(() -> new EnergyStorage(2147483647));
}
public static void serverTick(CreativeChargingStationBlockEntity blockEntity) {
if (blockEntity.level == null) return;
blockEntity.energyHandler.ifPresent(handler -> {
blockEntity.chargeEntity();
blockEntity.chargeBlock();
});
}
private void chargeEntity() {
assert this.level != null;
this.level
.getEntitiesOfClass(Entity.class, new AABB(this.getBlockPos()).inflate(CHARGE_RADIUS))
.forEach(entity -> {
if (entity instanceof IChargeEntity chargeEntity && chargeEntity.canCharge()) {
chargeEntity.charge(2147483647);
}
});
}
private void chargeBlock() {
assert this.level != null;
for (Direction direction : Direction.values()) {
var blockEntity = this.level.getBlockEntity(this.getBlockPos().relative(direction));
if (blockEntity == null
|| !blockEntity.getCapability(ForgeCapabilities.ENERGY).isPresent()
|| blockEntity instanceof CreativeChargingStationBlockEntity
) continue;
blockEntity.getCapability(ForgeCapabilities.ENERGY).ifPresent(energy -> {
if (energy.canReceive() && energy.getEnergyStored() < energy.getMaxEnergyStored()) {
energy.receiveEnergy(2147483647, false);
blockEntity.setChanged();
}
});
}
}
@Override
public ClientboundBlockEntityDataPacket getUpdatePacket() {
return ClientboundBlockEntityDataPacket.create(this);
}
@Override
public <T> @NotNull LazyOptional<T> getCapability(@NotNull Capability<T> cap, Direction side) {
if (cap == ForgeCapabilities.ENERGY) {
return energyHandler.cast();
}
return super.getCapability(cap, side);
}
@Override
public void invalidateCaps() {
super.invalidateCaps();
energyHandler.invalidate();
}
@Override
public void reviveCaps() {
super.reviveCaps();
this.energyHandler = LazyOptional.of(() -> new EnergyStorage(2147483647));
}
}

View file

@ -34,6 +34,7 @@ public class ModBlockLootProvider extends BlockLootSubProvider {
this.dropSelf(ModBlocks.CEMENTED_CARBIDE_BLOCK.get()); this.dropSelf(ModBlocks.CEMENTED_CARBIDE_BLOCK.get());
this.dropSelf(ModBlocks.SILVER_BLOCK.get()); this.dropSelf(ModBlocks.SILVER_BLOCK.get());
this.dropSelf(ModBlocks.CHARGING_STATION.get()); this.dropSelf(ModBlocks.CHARGING_STATION.get());
this.dropSelf(ModBlocks.CREATIVE_CHARGING_STATION.get());
this.dropSelf(ModBlocks.FUMO_25.get()); this.dropSelf(ModBlocks.FUMO_25.get());
this.add(ModBlocks.GALENA_ORE.get(), this.createOreDrop(ModBlocks.GALENA_ORE.get(), ModItems.GALENA.get())); this.add(ModBlocks.GALENA_ORE.get(), this.createOreDrop(ModBlocks.GALENA_ORE.get(), ModItems.GALENA.get()));

View file

@ -25,6 +25,7 @@ public class ModBlockStateProvider extends BlockStateProvider {
horizontalBlock(ModBlocks.REFORGING_TABLE.get(), new ModelFile.UncheckedModelFile(modLoc("block/reforging_table"))); horizontalBlock(ModBlocks.REFORGING_TABLE.get(), new ModelFile.UncheckedModelFile(modLoc("block/reforging_table")));
horizontalBlock(ModBlocks.CONTAINER.get(), new ModelFile.UncheckedModelFile(modLoc("block/container"))); horizontalBlock(ModBlocks.CONTAINER.get(), new ModelFile.UncheckedModelFile(modLoc("block/container")));
horizontalBlock(ModBlocks.CHARGING_STATION.get(), new ModelFile.UncheckedModelFile(modLoc("block/charging_station"))); horizontalBlock(ModBlocks.CHARGING_STATION.get(), new ModelFile.UncheckedModelFile(modLoc("block/charging_station")));
horizontalBlock(ModBlocks.CREATIVE_CHARGING_STATION.get(), new ModelFile.UncheckedModelFile(modLoc("block/creative_charging_station")));
blockWithItem(ModBlocks.GALENA_ORE); blockWithItem(ModBlocks.GALENA_ORE);
blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE); blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE);

View file

@ -146,6 +146,7 @@ public class ModItemModelProvider extends ItemModelProvider {
evenSimplerBlockItem(ModBlocks.JUMP_PAD); evenSimplerBlockItem(ModBlocks.JUMP_PAD);
evenSimplerBlockItem(ModBlocks.REFORGING_TABLE); evenSimplerBlockItem(ModBlocks.REFORGING_TABLE);
evenSimplerBlockItem(ModBlocks.CHARGING_STATION); evenSimplerBlockItem(ModBlocks.CHARGING_STATION);
evenSimplerBlockItem(ModBlocks.CREATIVE_CHARGING_STATION);
simpleItem(ModItems.FUMO_25); simpleItem(ModItems.FUMO_25);
} }

View file

@ -3,6 +3,7 @@ package com.atsuishio.superbwarfare.init;
import com.atsuishio.superbwarfare.ModUtils; import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.block.entity.ChargingStationBlockEntity; import com.atsuishio.superbwarfare.block.entity.ChargingStationBlockEntity;
import com.atsuishio.superbwarfare.block.entity.ContainerBlockEntity; import com.atsuishio.superbwarfare.block.entity.ContainerBlockEntity;
import com.atsuishio.superbwarfare.block.entity.CreativeChargingStationBlockEntity;
import com.atsuishio.superbwarfare.block.entity.FuMO25BlockEntity; import com.atsuishio.superbwarfare.block.entity.FuMO25BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.DeferredRegister;
@ -17,6 +18,8 @@ public class ModBlockEntities {
() -> BlockEntityType.Builder.of(ContainerBlockEntity::new, ModBlocks.CONTAINER.get()).build(null)); () -> BlockEntityType.Builder.of(ContainerBlockEntity::new, ModBlocks.CONTAINER.get()).build(null));
public static final RegistryObject<BlockEntityType<ChargingStationBlockEntity>> CHARGING_STATION = REGISTRY.register("charging_station", public static final RegistryObject<BlockEntityType<ChargingStationBlockEntity>> CHARGING_STATION = REGISTRY.register("charging_station",
() -> BlockEntityType.Builder.of(ChargingStationBlockEntity::new, ModBlocks.CHARGING_STATION.get()).build(null)); () -> BlockEntityType.Builder.of(ChargingStationBlockEntity::new, ModBlocks.CHARGING_STATION.get()).build(null));
public static final RegistryObject<BlockEntityType<CreativeChargingStationBlockEntity>> CREATIVE_CHARGING_STATION = REGISTRY.register("creative_charging_station",
() -> BlockEntityType.Builder.of(CreativeChargingStationBlockEntity::new, ModBlocks.CREATIVE_CHARGING_STATION.get()).build(null));
public static final RegistryObject<BlockEntityType<FuMO25BlockEntity>> FUMO_25 = REGISTRY.register("fumo_25", public static final RegistryObject<BlockEntityType<FuMO25BlockEntity>> FUMO_25 = REGISTRY.register("fumo_25",
() -> BlockEntityType.Builder.of(FuMO25BlockEntity::new, ModBlocks.FUMO_25.get()).build(null)); () -> BlockEntityType.Builder.of(FuMO25BlockEntity::new, ModBlocks.FUMO_25.get()).build(null));

View file

@ -44,5 +44,6 @@ public class ModBlocks {
() -> new Block(BlockBehaviour.Properties.of().instrument(NoteBlockInstrument.BASEDRUM).sound(SoundType.METAL).strength(5f, 6f).requiresCorrectToolForDrops())); () -> new Block(BlockBehaviour.Properties.of().instrument(NoteBlockInstrument.BASEDRUM).sound(SoundType.METAL).strength(5f, 6f).requiresCorrectToolForDrops()));
public static final RegistryObject<Block> CONTAINER = REGISTRY.register("container", ContainerBlock::new); public static final RegistryObject<Block> CONTAINER = REGISTRY.register("container", ContainerBlock::new);
public static final RegistryObject<Block> CHARGING_STATION = REGISTRY.register("charging_station", ChargingStationBlock::new); public static final RegistryObject<Block> CHARGING_STATION = REGISTRY.register("charging_station", ChargingStationBlock::new);
public static final RegistryObject<Block> CREATIVE_CHARGING_STATION = REGISTRY.register("creative_charging_station", CreativeChargingStationBlock::new);
public static final RegistryObject<Block> FUMO_25 = REGISTRY.register("fumo_25", FuMO25Block::new); public static final RegistryObject<Block> FUMO_25 = REGISTRY.register("fumo_25", FuMO25Block::new);
} }

View file

@ -250,6 +250,7 @@ public class ModItems {
public static final RegistryObject<Item> DRAGON_TEETH = block(ModBlocks.DRAGON_TEETH); public static final RegistryObject<Item> DRAGON_TEETH = block(ModBlocks.DRAGON_TEETH);
public static final RegistryObject<Item> REFORGING_TABLE = block(ModBlocks.REFORGING_TABLE); public static final RegistryObject<Item> REFORGING_TABLE = block(ModBlocks.REFORGING_TABLE);
public static final RegistryObject<Item> CHARGING_STATION = block(ModBlocks.CHARGING_STATION); public static final RegistryObject<Item> CHARGING_STATION = block(ModBlocks.CHARGING_STATION);
public static final RegistryObject<Item> CREATIVE_CHARGING_STATION = block(ModBlocks.CREATIVE_CHARGING_STATION);
public static final RegistryObject<Item> LEAD_BLOCK = block(ModBlocks.LEAD_BLOCK); public static final RegistryObject<Item> LEAD_BLOCK = block(ModBlocks.LEAD_BLOCK);
public static final RegistryObject<Item> STEEL_BLOCK = block(ModBlocks.STEEL_BLOCK); public static final RegistryObject<Item> STEEL_BLOCK = block(ModBlocks.STEEL_BLOCK);
public static final RegistryObject<Item> TUNGSTEN_BLOCK = block(ModBlocks.TUNGSTEN_BLOCK); public static final RegistryObject<Item> TUNGSTEN_BLOCK = block(ModBlocks.TUNGSTEN_BLOCK);

View file

@ -225,6 +225,7 @@
"container.superbwarfare.charging_station.show_range": "Show Range", "container.superbwarfare.charging_station.show_range": "Show Range",
"container.superbwarfare.charging_station.hide_range": "Hide Range", "container.superbwarfare.charging_station.hide_range": "Hide Range",
"des.superbwarfare.charging_station.energy": "Energy: %1$s / %2$s FE", "des.superbwarfare.charging_station.energy": "Energy: %1$s / %2$s FE",
"block.superbwarfare.creative_charging_station": "Creative Charging Station",
"block.superbwarfare.fumo_25": "FuMO25 Fire Control Radar", "block.superbwarfare.fumo_25": "FuMO25 Fire Control Radar",
"des.superbwarfare.fumo_25.current_pos": "Current Pos: %1$s", "des.superbwarfare.fumo_25.current_pos": "Current Pos: %1$s",
"des.superbwarfare.fumo_25.current_target": "Target: %1$s", "des.superbwarfare.fumo_25.current_target": "Target: %1$s",

View file

@ -223,6 +223,7 @@
"block.superbwarfare.steel_block": "钢块", "block.superbwarfare.steel_block": "钢块",
"block.superbwarfare.charging_station": "充电站", "block.superbwarfare.charging_station": "充电站",
"des.superbwarfare.charging_station.energy": "能量:%1$s / %2$s FE", "des.superbwarfare.charging_station.energy": "能量:%1$s / %2$s FE",
"block.superbwarfare.creative_charging_station": "创造模式充电站",
"block.superbwarfare.fumo_25": "FuMO25火控雷达", "block.superbwarfare.fumo_25": "FuMO25火控雷达",
"des.superbwarfare.fumo_25.current_pos": "当前坐标:%1$s", "des.superbwarfare.fumo_25.current_pos": "当前坐标:%1$s",
"des.superbwarfare.fumo_25.current_target": "目标:%1$s", "des.superbwarfare.fumo_25.current_target": "目标:%1$s",

View file

@ -0,0 +1,24 @@
{
"credit": "Made with Blockbench",
"parent": "minecraft:block/block",
"ambientocclusion": false,
"texture_size": [32, 32],
"textures": {
"4": "superbwarfare:block/creative_charging_station",
"particle": "superbwarfare:block/creative_charging_station"
},
"elements": [
{
"from": [0, 0, 0],
"to": [16, 16, 16],
"faces": {
"north": {"uv": [0, 0, 8, 8], "texture": "#4"},
"east": {"uv": [0, 8, 8, 16], "texture": "#4"},
"south": {"uv": [0, 8, 8, 16], "texture": "#4"},
"west": {"uv": [0, 8, 8, 16], "texture": "#4"},
"up": {"uv": [16, 8, 8, 0], "texture": "#4"},
"down": {"uv": [16, 8, 8, 16], "texture": "#4"}
}
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 977 B