注册飞行器弹射装置

This commit is contained in:
17146 2025-05-12 22:16:02 +08:00 committed by Light_Quanta
parent 566a504923
commit ce4bf1fd78
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
17 changed files with 355 additions and 7 deletions

View file

@ -1,4 +1,5 @@
// 1.21.1 2025-05-04T16:53:50.2249137 Loot Tables
// 1.21.1 2025-05-12T23:49:56.0141715 Loot Tables
c7ee888c6a22a799172b3a4b488c31e1d1d43cc0 data/superbwarfare/loot_table/blocks/aircraft_catapult.json
98386b2e65b2afb7cf5b0cabf6a7b0f062c1e640 data/superbwarfare/loot_table/blocks/barbed_wire.json
811e69929a14e6736015849c220100bb58d914c9 data/superbwarfare/loot_table/blocks/cemented_carbide_block.json
184c3243ca0acfc3103582e0ada2526b3cb4b43c data/superbwarfare/loot_table/blocks/charging_station.json

View file

@ -1,6 +1,6 @@
// 1.21.1 2025-05-04T18:13:17.6174853 Tags for minecraft:block mod id superbwarfare
// 1.21.1 2025-05-12T23:49:56.0102777 Tags for minecraft:block mod id superbwarfare
0acfd31854bf15f2c108138b3df7206bd2593e6b data/minecraft/tags/block/mineable/axe.json
2130375fae100923a56ea877f5d3ff572beacdfe data/minecraft/tags/block/mineable/pickaxe.json
cd3701aa4a886404eb31c2e2e9d8342673710960 data/minecraft/tags/block/mineable/pickaxe.json
3da7f021790388a122717f16f51c7ec5232eebcb data/minecraft/tags/block/mineable/shovel.json
f42a8c01336e64b74da966f03d45ee0d60ac5d6b data/minecraft/tags/block/needs_iron_tool.json
32d65f7120acb277f54e1a7d4f6163456b9d1030 data/superbwarfare/tags/block/hard_collision.json

View file

@ -1,6 +1,7 @@
// 1.21.1 2025-05-09T23:24:48.8440376 Item Models: superbwarfare
// 1.21.1 2025-05-12T23:49:56.0161244 Item Models: superbwarfare
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/aa_12_blueprint.json
0a9bfb695c2b5668863a2de4770f5bfca663c1dc assets/superbwarfare/models/item/agm.json
29ad5daadcdf7c10771fc45b649c527d16325cbb assets/superbwarfare/models/item/aircraft_catapult.json
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_12_blueprint.json
13ca8d5676888ff51f3308d88e4bf67691fa34f8 assets/superbwarfare/models/item/ak_47_blueprint.json
c993bddc0db9453ffbefa59f9ac9a74dba909038 assets/superbwarfare/models/item/ancient_cpu.json

View file

@ -1,4 +1,5 @@
// 1.21.1 2025-05-11T18:58:17.1566789 Block States: superbwarfare
// 1.21.1 2025-05-12T23:49:56.0122177 Block States: superbwarfare
1db13c2f6bc5225df98d2c1a550b3e175d1e9f92 assets/superbwarfare/blockstates/aircraft_catapult.json
f3b778ca36ca78c3d80f1b778078897f59bdb0c5 assets/superbwarfare/blockstates/barbed_wire.json
0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json
472c06e6b43ad09925edaa88e9376bfd27ab267f assets/superbwarfare/blockstates/charging_station.json
@ -19,6 +20,7 @@ cf801445ce7cec678d5e811b5985506472e6ba4c assets/superbwarfare/blockstates/silver
a175c908c9aabee3a073844cd58ec9dfe6498bf0 assets/superbwarfare/blockstates/steel_block.json
d4bbef5040ef43c362b28ea12ea73fb4a3db9adc assets/superbwarfare/blockstates/tungsten_block.json
df138042591221cb2091c7e2f86a0ce5c77949be assets/superbwarfare/blockstates/vehicle_deployer.json
4deddc7d84204f7942d0fa211f9815b26af415d9 assets/superbwarfare/models/block/aircraft_catapult.json
5f1c22b64ff3ca4db9987f91a7179c9e705c7601 assets/superbwarfare/models/block/cemented_carbide_block.json
0fe4613a4446ac485eee58bed6d0d8f5b38f6253 assets/superbwarfare/models/block/deepslate_galena_ore.json
84f584f684519f686e976b994f0a2639a98a7851 assets/superbwarfare/models/block/deepslate_scheelite_ore.json

View file

@ -0,0 +1,244 @@
{
"variants": {
"facing=east,power=0": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=1": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=10": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=11": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=12": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=13": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=14": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=15": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=2": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=3": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=4": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=5": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=6": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=7": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=8": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=east,power=9": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 90
},
"facing=north,power=0": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=1": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=10": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=11": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=12": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=13": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=14": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=15": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=2": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=3": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=4": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=5": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=6": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=7": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=8": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=north,power=9": {
"model": "superbwarfare:block/aircraft_catapult"
},
"facing=south,power=0": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=1": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=10": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=11": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=12": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=13": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=14": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=15": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=2": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=3": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=4": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=5": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=6": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=7": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=8": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=south,power=9": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 180
},
"facing=west,power=0": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=1": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=10": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=11": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=12": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=13": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=14": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=15": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=2": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=3": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=4": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=5": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=6": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=7": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=8": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
},
"facing=west,power=9": {
"model": "superbwarfare:block/aircraft_catapult",
"y": 270
}
}
}

View file

@ -0,0 +1,9 @@
{
"parent": "minecraft:block/cube_bottom_top",
"textures": {
"bottom": "superbwarfare:block/vehicle_deployer_bottom",
"particle": "superbwarfare:block/vehicle_deployer_bottom",
"side": "superbwarfare:block/vehicle_deployer_side",
"top": "superbwarfare:block/vehicle_deployer_top"
}
}

View file

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

View file

@ -17,6 +17,8 @@
"superbwarfare:container",
"superbwarfare:charging_station",
"superbwarfare:fumo_25",
"superbwarfare:small_container"
"superbwarfare:small_container",
"superbwarfare:vehicle_deployer",
"superbwarfare:aircraft_catapult"
]
}

View file

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

View file

@ -0,0 +1,54 @@
package com.atsuishio.superbwarfare.block;
import com.mojang.serialization.MapCodec;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.world.item.context.BlockPlaceContext;
import net.minecraft.world.level.block.*;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockBehaviour;
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 net.minecraft.world.level.block.state.properties.IntegerProperty;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class AircraftCatapultBlock extends BaseEntityBlock {
public static final DirectionProperty FACING = HorizontalDirectionalBlock.FACING;
public static final IntegerProperty POWER = IntegerProperty.create("power", 0, 15);
public AircraftCatapultBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.METAL).strength(3.0f).requiresCorrectToolForDrops());
this.registerDefaultState(this.stateDefinition.any().setValue(FACING, Direction.NORTH).setValue(POWER, 0));
}
@Nullable
@Override
public BlockEntity newBlockEntity(@NotNull BlockPos pPos, @NotNull BlockState pState) {
return null;
}
@Override
protected void createBlockStateDefinition(StateDefinition.@NotNull Builder<Block, BlockState> builder) {
builder.add(FACING).add(POWER);
}
public static final MapCodec<AircraftCatapultBlock> CODEC = simpleCodec((prop) -> new AircraftCatapultBlock());
@Override
protected @NotNull MapCodec<? extends BaseEntityBlock> codec() {
return CODEC;
}
@Override
public @NotNull RenderShape getRenderShape(@NotNull BlockState pState) {
return RenderShape.MODEL;
}
@Override
public BlockState getStateForPlacement(BlockPlaceContext context) {
return this.defaultBlockState().setValue(FACING, context.getHorizontalDirection().getOpposite());
}
}

View file

@ -40,6 +40,7 @@ public class ModBlockLootProvider extends BlockLootSubProvider {
this.dropSelf(ModBlocks.CREATIVE_CHARGING_STATION.get());
this.dropSelf(ModBlocks.FUMO_25.get());
this.dropSelf(ModBlocks.VEHICLE_DEPLOYER.get());
this.dropSelf(ModBlocks.AIRCRAFT_CATAPULT.get());
this.add(ModBlocks.CHARGING_STATION.get(), createCopyComponentsDrops(
ModBlocks.CHARGING_STATION.get(),

View file

@ -31,6 +31,11 @@ public class ModBlockStateProvider extends BlockStateProvider {
Mod.loc("block/vehicle_deployer_bottom"), Mod.loc("block/vehicle_deployer_top"))
.texture("particle", Mod.loc("block/vehicle_deployer_bottom")));
// TODO 替换模型
horizontalBlock(ModBlocks.AIRCRAFT_CATAPULT.get(), models().cubeBottomTop("aircraft_catapult", Mod.loc("block/vehicle_deployer_side"),
Mod.loc("block/vehicle_deployer_bottom"), Mod.loc("block/vehicle_deployer_top"))
.texture("particle", Mod.loc("block/vehicle_deployer_bottom")));
blockWithItem(ModBlocks.GALENA_ORE);
blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE);
blockWithItem(ModBlocks.SCHEELITE_ORE);

View file

@ -34,7 +34,7 @@ public class ModBlockTagProvider extends BlockTagsProvider {
ModBlocks.REFORGING_TABLE.get(), ModBlocks.LEAD_BLOCK.get(), ModBlocks.STEEL_BLOCK.get(), ModBlocks.TUNGSTEN_BLOCK.get(),
ModBlocks.CEMENTED_CARBIDE_BLOCK.get(), ModBlocks.SILVER_ORE.get(), ModBlocks.DEEPSLATE_SILVER_ORE.get(),
ModBlocks.SILVER_BLOCK.get(), ModBlocks.JUMP_PAD.get(), ModBlocks.CONTAINER.get(), ModBlocks.CHARGING_STATION.get(),
ModBlocks.FUMO_25.get(), ModBlocks.SMALL_CONTAINER.get());
ModBlocks.FUMO_25.get(), ModBlocks.SMALL_CONTAINER.get(), ModBlocks.VEHICLE_DEPLOYER.get(), ModBlocks.AIRCRAFT_CATAPULT.get());
this.tag(BlockTags.MINEABLE_WITH_SHOVEL).add(ModBlocks.SANDBAG.get());
this.tag(ModTags.Blocks.SOFT_COLLISION)

View file

@ -16,6 +16,7 @@ import net.neoforged.neoforge.registries.DeferredHolder;
@SuppressWarnings({"ConstantConditions", "UnusedReturnValue", "SameParameterValue", "unused"})
public class ModItemModelProvider extends ItemModelProvider {
public ModItemModelProvider(PackOutput output, ExistingFileHelper existingFileHelper) {
super(output, Mod.MODID, existingFileHelper);
}
@ -166,6 +167,7 @@ public class ModItemModelProvider extends ItemModelProvider {
evenSimplerBlockItem(ModBlocks.REFORGING_TABLE);
evenSimplerBlockItem(ModBlocks.CHARGING_STATION);
evenSimplerBlockItem(ModBlocks.CREATIVE_CHARGING_STATION);
evenSimplerBlockItem(ModBlocks.AIRCRAFT_CATAPULT);
}
private ItemModelBuilder simpleItem(DeferredHolder<Item, ? extends Item> item) {

View file

@ -49,4 +49,5 @@ public class ModBlocks {
public static final DeferredHolder<Block, Block> CREATIVE_CHARGING_STATION = REGISTRY.register("creative_charging_station", () -> new CreativeChargingStationBlock());
public static final DeferredHolder<Block, Block> FUMO_25 = REGISTRY.register("fumo_25", FuMO25Block::new);
public static final DeferredHolder<Block, Block> VEHICLE_DEPLOYER = REGISTRY.register("vehicle_deployer", VehicleDeployerBlock::new);
public static final DeferredHolder<Block, Block> AIRCRAFT_CATAPULT = REGISTRY.register("aircraft_catapult", AircraftCatapultBlock::new);
}

View file

@ -276,6 +276,7 @@
"des.superbwarfare.vehicle_deployer": "Right click with a container to set vehicle info. Summon a vehicle when triggered",
"des.superbwarfare.vehicle_deployer.success": "Vehicle info set successfully!",
"des.superbwarfare.vehicle_deployer.fail": "Please click with a container!",
"block.superbwarfare.aircraft_catapult": "Aircraft Catapult",
"item.superbwarfare.high_energy_explosives": "High Energy Explosives",
"item.superbwarfare.grain": "Grain",

View file

@ -276,6 +276,7 @@
"des.superbwarfare.vehicle_deployer": "使用集装箱右击设置待部署载具类型,通入红石信号后可以部署载具",
"des.superbwarfare.vehicle_deployer.success": "成功设置载具信息!",
"des.superbwarfare.vehicle_deployer.fail": "请使用集装箱点击!",
"block.superbwarfare.aircraft_catapult": "飞行器弹射装置",
"item.superbwarfare.high_energy_explosives": "高能炸药",
"item.superbwarfare.grain": "推进药柱",