Compare commits
2 Commits
b3ab6fa9b7
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 642a74e798 | |||
| 28816a0385 |
+17
-5
@@ -2,25 +2,32 @@ buildscript {
|
||||
repositories {
|
||||
maven { url = 'https://maven.minecraftforge.net' }
|
||||
maven { url = 'https://maven.parchmentmc.org' }
|
||||
maven { url = 'https://repo.spongepowered.org/maven' }
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true
|
||||
classpath 'org.parchmentmc:librarian:1.+'
|
||||
classpath 'org.spongepowered:mixingradle:0.7.+'
|
||||
}
|
||||
}
|
||||
|
||||
apply plugin: 'net.minecraftforge.gradle'
|
||||
apply plugin: 'org.spongepowered.mixin'
|
||||
apply plugin: 'org.parchmentmc.librarian.forgegradle'
|
||||
apply plugin: 'eclipse'
|
||||
apply plugin: 'maven-publish'
|
||||
|
||||
version = '1.16.5-0.1'
|
||||
group = 'dev.halbear1.supernova' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||
group = 'net.halbear.supernova' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||
archivesBaseName = 'supernova'
|
||||
|
||||
java.toolchain.languageVersion = JavaLanguageVersion.of(8) // Mojang ships Java 8 to end users, so your mod should target Java 8.
|
||||
|
||||
mixin {
|
||||
add sourceSets.main, "supernova.mixin-refmap.json"
|
||||
}
|
||||
|
||||
println('Java: ' + System.getProperty('java.version') + ' JVM: ' + System.getProperty('java.vm.version') + '(' + System.getProperty('java.vendor') + ') Arch: ' + System.getProperty('os.arch'))
|
||||
minecraft {
|
||||
|
||||
@@ -29,7 +36,11 @@ minecraft {
|
||||
runs {
|
||||
client {
|
||||
workingDirectory project.file('run')
|
||||
property 'mixin.env.remapRefMap', 'true'
|
||||
property 'mixin.env.refMapRemappingFile', "${projectDir}/build/createSrgToMcp/output.srg"
|
||||
|
||||
|
||||
arg "-mixin.config=supernova.mixin.json"
|
||||
property 'forge.logging.markers', 'REGISTRIES'
|
||||
|
||||
property 'forge.logging.console.level', 'debug'
|
||||
@@ -86,12 +97,13 @@ jar {
|
||||
manifest {
|
||||
attributes([
|
||||
"Specification-Title" : "supernova",
|
||||
"Specification-Vendor": "supernovasareus",
|
||||
"Specification-Version": "1", // We are version 1 of ourselves
|
||||
"Specification-Vendor" : "halbear",
|
||||
"Specification-Version" : "1",
|
||||
"Implementation-Title" : project.name,
|
||||
"Implementation-Version" : "${version}",
|
||||
"Implementation-Vendor" :"supernovasareus",
|
||||
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ")
|
||||
"Implementation-Vendor" : "halbear",
|
||||
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
|
||||
"MixinConfigs" : "supernova.mixin.json"
|
||||
])
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
package dev.halbear1.supernova.custom.fluid;
|
||||
|
||||
public class SupernovaOverlayRenderer {
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
package dev.halbear1.supernova.data;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.event.lifecycle.GatherDataEvent;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = SuperNova.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
|
||||
public class DataGenerators {
|
||||
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package dev.halbear1.supernova.registry;
|
||||
|
||||
public class ModEntities {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package dev.halbear1.supernova.registry.worldgen;
|
||||
|
||||
public class ModFeatures {
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
package dev.halbear1.supernova.world.gen.ores;
|
||||
|
||||
public class OreInCave {
|
||||
}
|
||||
+13
-13
@@ -1,20 +1,16 @@
|
||||
package dev.halbear1.supernova;
|
||||
package net.halbear.supernova;
|
||||
|
||||
import dev.halbear1.supernova.registry.ModParticles;
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import dev.halbear1.supernova.registry.blocks.ModFluids;
|
||||
import dev.halbear1.supernova.registry.items.ModItems;
|
||||
import dev.halbear1.supernova.registry.util.ModSoundEvents;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModBiomes;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModConfiguredFeatures;
|
||||
import net.halbear.supernova.registry.ModEntities;
|
||||
import net.halbear.supernova.registry.ModParticles;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.registry.blocks.ModFluids;
|
||||
import net.halbear.supernova.registry.items.ModItems;
|
||||
import net.halbear.supernova.registry.util.ModSoundEvents;
|
||||
import net.halbear.supernova.registry.worldgen.ModBiomes;
|
||||
import net.halbear.supernova.registry.worldgen.ModConfiguredFeatures;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.event.RegistryEvent;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.eventbus.api.IEventBus;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.InterModComms;
|
||||
@@ -39,10 +35,14 @@ public class SuperNova // to chef, peaceful and pal, no touchy
|
||||
// Directly reference a log4j logger.
|
||||
private static final Logger LOGGER = LogManager.getLogger();
|
||||
|
||||
public static float DegToRad = (float)Math.PI/180.0F;
|
||||
public static float RadToDeg = 180.0F/(float)Math.PI;
|
||||
|
||||
public SuperNova() { //hal
|
||||
//creates a mod event bus
|
||||
IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
|
||||
//register the mod elements on the mod event bus (loads them)
|
||||
ModEntities.ENTITY_TYPES.register(bus);
|
||||
ModBlocks.BLOCKS.register(bus);
|
||||
ModItems.ITEMS.register(bus);
|
||||
ModFluids.FLUIDS.register(bus);
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.halbear1.supernova.custom.block;
|
||||
package net.halbear.supernova.custom.block;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import net.minecraft.item.BlockItemUseContext;
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package dev.halbear1.supernova.custom.block;
|
||||
package net.halbear.supernova.custom.block;
|
||||
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModDimensions;
|
||||
import dev.halbear1.supernova.world.dimension.DebugTeleporter;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.registry.worldgen.ModDimensions;
|
||||
import net.halbear.supernova.world.dimension.DebugTeleporter;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.halbear1.supernova.custom.block;
|
||||
package net.halbear.supernova.custom.block;
|
||||
|
||||
import net.minecraft.block.*;
|
||||
import net.minecraft.item.BlockItemUseContext;
|
||||
+4
-4
@@ -1,14 +1,14 @@
|
||||
package dev.halbear1.supernova.custom.block;
|
||||
package net.halbear.supernova.custom.block;
|
||||
|
||||
import dev.halbear1.supernova.custom.block.blockstate_stuff.SupernovaBlockstates;
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.custom.block.blockstate_stuff.SupernovaBlockstates;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.minecraft.block.*;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.item.BlockItemUseContext;
|
||||
import net.minecraft.state.BooleanProperty;
|
||||
import net.minecraft.state.DirectionProperty;
|
||||
import net.minecraft.state.EnumProperty;
|
||||
import dev.halbear1.supernova.custom.block.blockstate_stuff.enums.PipeContents;
|
||||
import net.halbear.supernova.custom.block.blockstate_stuff.enums.PipeContents;
|
||||
import net.minecraft.state.StateContainer;
|
||||
import net.minecraft.state.properties.BlockStateProperties;
|
||||
import net.minecraft.util.Direction;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.custom.block.blockstate_stuff;
|
||||
package net.halbear.supernova.custom.block.blockstate_stuff;
|
||||
|
||||
import dev.halbear1.supernova.custom.block.blockstate_stuff.enums.PipeContents;
|
||||
import net.halbear.supernova.custom.block.blockstate_stuff.enums.PipeContents;
|
||||
import net.minecraft.state.EnumProperty;
|
||||
|
||||
public class SupernovaBlockstates {
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.halbear1.supernova.custom.block.blockstate_stuff.enums;
|
||||
package net.halbear.supernova.custom.block.blockstate_stuff.enums;
|
||||
|
||||
import net.minecraft.util.IStringSerializable;
|
||||
|
||||
+1
-2
@@ -1,7 +1,6 @@
|
||||
package dev.halbear1.supernova.custom.fluid;
|
||||
package net.halbear.supernova.custom.fluid;
|
||||
|
||||
import net.minecraft.block.FlowingFluidBlock;
|
||||
import net.minecraft.fluid.FlowingFluid;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
+1
-2
@@ -1,4 +1,4 @@
|
||||
package dev.halbear1.supernova.custom.fluid;
|
||||
package net.halbear.supernova.custom.fluid;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
@@ -18,7 +18,6 @@ import net.minecraft.world.IBlockReader;
|
||||
import net.minecraft.world.IWorld;
|
||||
import net.minecraft.world.IWorldReader;
|
||||
import net.minecraftforge.fluids.FluidAttributes;
|
||||
import net.minecraftforge.fluids.ForgeFlowingFluid;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.function.Supplier;
|
||||
+1
-6
@@ -1,12 +1,7 @@
|
||||
package dev.halbear1.supernova.custom.fluid;
|
||||
package net.halbear.supernova.custom.fluid;
|
||||
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import jdk.nashorn.internal.ir.Block;
|
||||
import net.minecraft.fluid.Fluid;
|
||||
import net.minecraft.item.Rarity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.SoundEvent;
|
||||
import net.minecraftforge.fluids.FluidAttributes;
|
||||
|
||||
import java.util.function.BiFunction;
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
package net.halbear.supernova.custom.fluid;
|
||||
|
||||
public class SupernovaOverlayRenderer {
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package net.halbear.supernova.data;
|
||||
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = SuperNova.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
|
||||
public class DataGenerators {
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,124 @@
|
||||
package net.halbear.supernova.entity;
|
||||
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.network.datasync.DataParameter;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.nbt.CompoundNBT;
|
||||
import net.minecraft.network.IPacket;
|
||||
import net.minecraft.network.datasync.DataSerializers;
|
||||
import net.minecraft.network.datasync.EntityDataManager;
|
||||
import net.minecraft.util.ActionResultType;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.math.vector.Vector3d;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.fml.network.NetworkHooks;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
public class Spaceship extends Entity {
|
||||
private static final DataParameter<Float> ORIENTATION_ROLL = EntityDataManager.createKey(Spaceship.class, DataSerializers.FLOAT);
|
||||
private static final DataParameter<Float> ORIENTATION_YAW = EntityDataManager.createKey(Spaceship.class, DataSerializers.FLOAT);
|
||||
private static final DataParameter<Float> ORIENTATION_PITCH = EntityDataManager.createKey(Spaceship.class, DataSerializers.FLOAT);
|
||||
|
||||
private static final Vector3d[] VehicleSeatOffsets = new Vector3d[]{
|
||||
new Vector3d(0.0D, 3D, 0.0D),
|
||||
new Vector3d(0.0D, 1.5D, 0.0D),
|
||||
};
|
||||
|
||||
public Spaceship(EntityType<? extends Spaceship> type, World worldIn) {
|
||||
super(type, worldIn);
|
||||
}
|
||||
|
||||
public void SetVehicleRoll(float value){
|
||||
this.dataManager.set(ORIENTATION_ROLL, value);
|
||||
}
|
||||
public void SetVehicleYaw(float value){
|
||||
this.dataManager.set(ORIENTATION_YAW, value);
|
||||
}
|
||||
public void SetVehiclePitch(float value){
|
||||
this.dataManager.set(ORIENTATION_PITCH, value);
|
||||
}
|
||||
public float GetVehicleRoll(){
|
||||
return this.dataManager.get(ORIENTATION_ROLL);
|
||||
}
|
||||
public float GetVehicleYaw(){
|
||||
return this.dataManager.get(ORIENTATION_YAW);
|
||||
}
|
||||
public float GetVehiclePitch(){
|
||||
return this.dataManager.get(ORIENTATION_PITCH);
|
||||
}
|
||||
public float[] GetVehicleRotations(){
|
||||
return new float[]{GetVehicleYaw(),GetVehiclePitch(),GetVehicleRoll()};
|
||||
}
|
||||
public void SetVehicleRotations(float Yaw, float Pitch, float Roll){
|
||||
SetVehicleRoll(Roll);
|
||||
SetVehicleYaw(Yaw);
|
||||
SetVehiclePitch(Pitch);
|
||||
}
|
||||
@Override
|
||||
public boolean canBeCollidedWith(){return true;}
|
||||
|
||||
@Override
|
||||
protected boolean canFitPassenger(Entity passenger) {
|
||||
return this.getPassengers().size() < VehicleSeatOffsets.length;
|
||||
}
|
||||
@Override
|
||||
public ActionResultType processInitialInteract(PlayerEntity player, Hand hand) {
|
||||
if (this.getPassengers().size() < VehicleSeatOffsets.length && !player.isPassenger()) {
|
||||
if (!this.world.isRemote()) {
|
||||
return player.startRiding(this) ? ActionResultType.CONSUME : ActionResultType.PASS;
|
||||
}
|
||||
return ActionResultType.func_233537_a_(this.world.isRemote());
|
||||
}
|
||||
return ActionResultType.SUCCESS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Entity getControllingPassenger() {
|
||||
return this.getPassengers().isEmpty() ? null : this.getPassengers().get(0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updatePassenger(Entity passenger) {
|
||||
if (this.isPassenger(passenger)) {
|
||||
int seatIndex = this.getPassengers().indexOf(passenger);
|
||||
|
||||
if (seatIndex >= 0 && seatIndex < VehicleSeatOffsets.length) {
|
||||
Vector3d localOffset = VehicleSeatOffsets[seatIndex];
|
||||
Vector3d rotatedOffset = localOffset.rotateYaw((float) Math.toRadians(-this.rotationYaw));
|
||||
passenger.setPosition(
|
||||
this.getPosX() + rotatedOffset.x,
|
||||
this.getPosY() + rotatedOffset.y + passenger.getMountedYOffset(),
|
||||
this.getPosZ() + rotatedOffset.z
|
||||
);
|
||||
} else {
|
||||
super.updatePassenger(passenger);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void registerData() {
|
||||
this.dataManager.register(ORIENTATION_ROLL, 0F);
|
||||
this.dataManager.register(ORIENTATION_PITCH, 0F);
|
||||
this.dataManager.register(ORIENTATION_YAW, 0F);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void readAdditional(CompoundNBT compoundNBT) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void writeAdditional(CompoundNBT compoundNBT) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nonnull
|
||||
public IPacket<?> createSpawnPacket() {
|
||||
return NetworkHooks.getEntitySpawningPacket(this);
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.halbear1.supernova.loot_modifiers;
|
||||
package net.halbear.supernova.loot_modifiers;
|
||||
import com.google.gson.JsonObject;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
@@ -0,0 +1,31 @@
|
||||
package net.halbear.supernova.mixin;
|
||||
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.ActiveRenderInfo;
|
||||
import net.minecraft.client.settings.PointOfView;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.util.math.vector.Vector3f;
|
||||
import net.minecraft.world.IBlockReader;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.Shadow;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
import static net.halbear.supernova.vehicle.VehicleCameraSetup.GetCameraOffsets;
|
||||
|
||||
@Mixin(ActiveRenderInfo.class)
|
||||
public abstract class CameraMixin {
|
||||
@Inject(method = {"update", "func_216772_a"}, at = @At(value = "TAIL"),cancellable = true, remap = true)
|
||||
private void update(IBlockReader currentRenderedLevel, Entity entity, boolean isDetached, boolean isMirrored, float partialTicks, CallbackInfo ci){
|
||||
|
||||
if(entity.isPassenger() && Minecraft.getInstance().gameSettings.getPointOfView() != PointOfView.FIRST_PERSON && entity.getRidingEntity().getType().getRegistryName().getNamespace().equals(SuperNova.MOD_ID)){
|
||||
Vector3f Position = GetCameraOffsets();
|
||||
this.movePosition(-this.calcCameraDistance(Position.getZ()), Position.getY(), Position.getX());
|
||||
}
|
||||
}
|
||||
@Shadow(aliases = {"move", "func_216782_a"})
|
||||
protected abstract void movePosition(double p_216782_1_, double p_216782_3_, double p_216782_5_);
|
||||
@Shadow(aliases = {"getMaxZoom", "func_216779_a"}) protected abstract double calcCameraDistance(double p_216779_1_);
|
||||
}
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry;
|
||||
package net.halbear.supernova.registry;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.inventory.EquipmentSlotType;
|
||||
import net.minecraft.item.IArmorMaterial;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
@@ -0,0 +1,18 @@
|
||||
package net.halbear.supernova.registry;
|
||||
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.entity.Spaceship;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
import net.minecraftforge.registries.DeferredRegister;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
|
||||
public class ModEntities {
|
||||
public static DeferredRegister<EntityType<?>> ENTITY_TYPES = DeferredRegister.create(ForgeRegistries.ENTITIES, SuperNova.MOD_ID);
|
||||
|
||||
public static final RegistryObject<EntityType<Spaceship>> SPACESHIP =
|
||||
ENTITY_TYPES.register("spaceship", ()-> EntityType.Builder.create(Spaceship::new,
|
||||
EntityClassification.MISC ).size(3f,8f).build(new ResourceLocation(SuperNova.MOD_ID, "spaceship").toString()));
|
||||
}
|
||||
+4
-19
@@ -1,28 +1,13 @@
|
||||
package dev.halbear1.supernova.registry;
|
||||
package net.halbear.supernova.registry;
|
||||
|
||||
import dev.halbear1.supernova.*;
|
||||
import dev.halbear1.supernova.loot_modifiers.ModReplaceLootDrop;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModDimensions;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.entity.player.ServerPlayerEntity;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.halbear.supernova.*;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.loot_modifiers.ModReplaceLootDrop;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.Util;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.util.text.ChatType;
|
||||
import net.minecraft.util.text.StringTextComponent;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.event.RenderGameOverlayEvent;
|
||||
import net.minecraftforge.common.loot.GlobalLootModifierSerializer;
|
||||
import net.minecraftforge.event.RegistryEvent;
|
||||
import net.minecraftforge.event.ServerChatEvent;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.eventbus.api.Event;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.server.ServerLifecycleHooks;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
+2
-4
@@ -1,9 +1,7 @@
|
||||
package dev.halbear1.supernova.registry;
|
||||
package net.halbear.supernova.registry;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.minecraft.particles.BasicParticleType;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.particles.ParticleType;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
import net.minecraftforge.registries.DeferredRegister;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
|
||||
+7
-7
@@ -1,12 +1,12 @@
|
||||
package dev.halbear1.supernova.registry.blocks;
|
||||
package net.halbear.supernova.registry.blocks;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
|
||||
import dev.halbear1.supernova.custom.block.ArcFurnace;
|
||||
import dev.halbear1.supernova.custom.block.DebugPortalBlock;
|
||||
import dev.halbear1.supernova.custom.block.StraightSteelPipe;
|
||||
import dev.halbear1.supernova.registry.items.ModItems;
|
||||
import dev.halbear1.supernova.registry.items.ItemGroups;
|
||||
import net.halbear.supernova.custom.block.ArcFurnace;
|
||||
import net.halbear.supernova.custom.block.DebugPortalBlock;
|
||||
import net.halbear.supernova.custom.block.StraightSteelPipe;
|
||||
import net.halbear.supernova.registry.items.ModItems;
|
||||
import net.halbear.supernova.registry.items.ItemGroups;
|
||||
import net.minecraft.block.*;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.item.BlockItem;
|
||||
+6
-7
@@ -1,10 +1,10 @@
|
||||
package dev.halbear1.supernova.registry.blocks;
|
||||
package net.halbear.supernova.registry.blocks;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import dev.halbear1.supernova.custom.fluid.FlammableFluid;
|
||||
import dev.halbear1.supernova.custom.fluid.SupernovaFlowingFluid;
|
||||
import dev.halbear1.supernova.custom.fluid.SupernovaFluidAttributes;
|
||||
import dev.halbear1.supernova.registry.items.ModItems;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.custom.fluid.FlammableFluid;
|
||||
import net.halbear.supernova.custom.fluid.SupernovaFlowingFluid;
|
||||
import net.halbear.supernova.custom.fluid.SupernovaFluidAttributes;
|
||||
import net.halbear.supernova.registry.items.ModItems;
|
||||
import net.minecraft.block.AbstractBlock;
|
||||
import net.minecraft.block.FlowingFluidBlock;
|
||||
import net.minecraft.block.material.Material;
|
||||
@@ -12,7 +12,6 @@ import net.minecraft.fluid.FlowingFluid;
|
||||
import net.minecraft.fluid.Fluid;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.SoundEvents;
|
||||
import net.minecraftforge.eventbus.api.IEventBus;
|
||||
import net.minecraftforge.fluids.FluidAttributes;
|
||||
import net.minecraftforge.fluids.ForgeFlowingFluid;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry.items;
|
||||
package net.halbear.supernova.registry.items;
|
||||
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.minecraft.item.ItemGroup;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
+4
-5
@@ -1,15 +1,14 @@
|
||||
package dev.halbear1.supernova.registry.items;
|
||||
package net.halbear.supernova.registry.items;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import dev.halbear1.supernova.registry.blocks.ModFluids;
|
||||
import dev.halbear1.supernova.registry.util.ModSoundEvents;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.registry.blocks.ModFluids;
|
||||
import net.halbear.supernova.registry.util.ModSoundEvents;
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.client.util.ITooltipFlag;
|
||||
import net.minecraft.item.*;
|
||||
import net.minecraft.util.text.ITextComponent;
|
||||
import net.minecraft.util.text.TranslationTextComponent;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.ToolType;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
import net.minecraftforge.registries.DeferredRegister;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
+12
-33
@@ -1,48 +1,26 @@
|
||||
package dev.halbear1.supernova.registry.util;
|
||||
package net.halbear.supernova.registry.util;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
//import dev.halbear1.supernova.custom.particle.StarSparkle;
|
||||
import dev.halbear1.supernova.registry.ModParticles;
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import dev.halbear1.supernova.registry.blocks.ModFluids;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModBiomes;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModDimensions;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.particle.IParticleFactory;
|
||||
import net.halbear.supernova.entity.EntityRenderers.SpaceshipRenderer;
|
||||
import net.halbear.supernova.entity.Spaceship;
|
||||
import net.halbear.supernova.registry.ModEntities;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.registry.blocks.ModFluids;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.RenderTypeLookup;
|
||||
import net.minecraft.client.world.DimensionRenderInfo;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererManager;
|
||||
import net.minecraft.client.renderer.entity.MobRenderer;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.LivingEntity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.fluid.FluidState;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.Util;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.util.text.ChatType;
|
||||
import net.minecraft.util.text.StringTextComponent;
|
||||
import net.minecraft.world.Dimension;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.client.event.EntityViewRenderEvent;
|
||||
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
|
||||
import net.minecraftforge.event.TickEvent;
|
||||
import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
import net.minecraftforge.fml.client.registry.RenderingRegistry;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraftforge.fml.server.ServerLifecycleHooks;
|
||||
|
||||
import java.util.AbstractMap;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = SuperNova.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT)
|
||||
public class ClientEventHandler {
|
||||
@@ -75,6 +53,7 @@ public class ClientEventHandler {
|
||||
RenderTypeLookup.setRenderLayer(ModFluids.KEROSENE_FLOWING.get(), RenderType.getTranslucent());
|
||||
RenderTypeLookup.setRenderLayer(ModFluids.KEROSENE_BLOCK.get(), RenderType.getTranslucent());
|
||||
|
||||
RenderingRegistry.registerEntityRenderingHandler(ModEntities.SPACESHIP.get(), SpaceshipRenderer::new);
|
||||
/*SetCollectionRenderType(RenderType.getCutoutMipped(), // Cutout Mipped: Cutout but with mipmapping. Textures from far away are simplified for performance.
|
||||
//blocks here
|
||||
);
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry.util;
|
||||
package net.halbear.supernova.registry.util;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.SoundEvent;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package dev.halbear1.supernova.registry.util;
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
package net.halbear.supernova.registry.util;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
|
||||
import dev.halbear1.supernova.registry.blocks.ModFluids;
|
||||
import net.halbear.supernova.registry.blocks.ModFluids;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry.worldgen;
|
||||
package net.halbear.supernova.registry.worldgen;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package dev.halbear1.supernova.registry.worldgen;
|
||||
package net.halbear.supernova.registry.worldgen;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.util.registry.WorldGenRegistries;
|
||||
+2
-3
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry.worldgen;
|
||||
package net.halbear.supernova.registry.worldgen;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.server.MinecraftServer;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
@@ -11,7 +11,6 @@ import net.minecraft.util.text.ChatType;
|
||||
import net.minecraft.util.text.StringTextComponent;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.eventbus.api.IEventBus;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.server.ServerLifecycleHooks;
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
package net.halbear.supernova.registry.worldgen;
|
||||
|
||||
public class ModFeatures {
|
||||
}
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.halbear1.supernova.registry.worldgen;
|
||||
package net.halbear.supernova.registry.worldgen;
|
||||
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
import net.minecraftforge.registries.DeferredRegister;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
+3
-6
@@ -1,10 +1,7 @@
|
||||
package dev.halbear1.supernova.setup;
|
||||
import dev.halbear1.supernova.SuperNova;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModConfiguredFeatures;
|
||||
import dev.halbear1.supernova.registry.worldgen.ModDimensions;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
package net.halbear.supernova.setup;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.registry.worldgen.ModConfiguredFeatures;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraftforge.event.entity.player.PlayerEvent;
|
||||
import net.minecraftforge.event.world.BiomeLoadingEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
@@ -0,0 +1,24 @@
|
||||
package net.halbear.supernova.setup;
|
||||
import net.halbear.supernova.SuperNova;
|
||||
import net.halbear.supernova.entity.Spaceship;
|
||||
import net.halbear.supernova.registry.ModEntities;
|
||||
import net.halbear.supernova.registry.worldgen.ModConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraftforge.event.RegistryEvent;
|
||||
import net.minecraftforge.event.entity.EntityAttributeCreationEvent;
|
||||
import net.minecraftforge.event.world.BiomeLoadingEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = SuperNova.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
|
||||
public class ModEventHandler {
|
||||
@SubscribeEvent
|
||||
public static void addEntityAttributes(EntityAttributeCreationEvent event){
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onRegisterEntities(RegistryEvent.Register<EntityType<?>> event){
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package net.halbear.supernova.vehicle;
|
||||
|
||||
import net.halbear.supernova.*;
|
||||
import net.halbear.supernova.entity.Spaceship;
|
||||
import net.halbear.supernova.registry.ModEntities;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.util.math.vector.Vector3f;
|
||||
import net.minecraftforge.client.event.EntityViewRenderEvent;
|
||||
import net.minecraftforge.event.TickEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
@Mod.EventBusSubscriber
|
||||
public class VehicleCameraSetup {
|
||||
private static Vector3f CamOffset = new Vector3f(0.0f, 0.0f, 0.0f);
|
||||
private static Vector3f CamTransformations = new Vector3f(0.0f, 0.0f, 0.0f);
|
||||
private static float CamFOV = 0.0f;
|
||||
private static float CamFOVExternal = 0.0f;
|
||||
private static String CurrentEntity = "";
|
||||
private static boolean SupernovaVehicle = false;
|
||||
public static Vector3f GetCameraOffsets(){
|
||||
return CamOffset;
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void PlayerTickEvent(TickEvent.PlayerTickEvent event) {
|
||||
|
||||
Minecraft minecraftInstance = Minecraft.getInstance();
|
||||
if (minecraftInstance.player != null && minecraftInstance.player.isPassenger() && minecraftInstance.player.getRidingEntity() != null
|
||||
&& CurrentEntity != minecraftInstance.player.getRidingEntity().getType().getRegistryName().toString()) {
|
||||
CurrentEntity = minecraftInstance.player.getRidingEntity().getType().getRegistryName().toString();
|
||||
SupernovaVehicle = minecraftInstance.player.getRidingEntity().getType().getRegistryName().getNamespace().equals(SuperNova.MOD_ID);
|
||||
if (CurrentEntity.equals(ModEntities.SPACESHIP.get().getRegistryName().toString())) {
|
||||
CamOffset = new Vector3f(0.0f, -0.75f, 6.5f);
|
||||
CamTransformations = new Vector3f(0.0f, 0.0f, 0.0f);
|
||||
CamFOV = 70.0f;
|
||||
CamFOVExternal = 60.0f;
|
||||
}
|
||||
}
|
||||
if (minecraftInstance.player != null && (!minecraftInstance.player.isPassenger() || !SupernovaVehicle)
|
||||
&& (CamFOVExternal != (float) Minecraft.getInstance().gameSettings.fov
|
||||
|| CamFOV != (float) Minecraft.getInstance().gameSettings.fov || CamOffset.getX() != 0 || CamOffset.getY() != 0
|
||||
|| CamOffset.getZ() != 0 || CamTransformations.getX() != 0 || CamTransformations.getY() != 0
|
||||
|| CamTransformations.getZ() != 0)) {
|
||||
CamOffset = new Vector3f(0.0f, 0.0f, 0.0f);// reset if the players not riding an entity and if any the values aren't 0
|
||||
CamTransformations = new Vector3f(0.0f, 0.0f, 0.0f);
|
||||
CamFOV = (float) Minecraft.getInstance().gameSettings.fov;
|
||||
CamFOVExternal = (float) Minecraft.getInstance().gameSettings.fov;
|
||||
if (!minecraftInstance.player.isPassenger())
|
||||
CurrentEntity = "";
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onCameraSetup(EntityViewRenderEvent.CameraSetup event) {
|
||||
if (SupernovaVehicle) {
|
||||
event.setRoll(event.getRoll() + CamTransformations.getX());
|
||||
event.setYaw(event.getYaw() + CamTransformations.getY());
|
||||
event.setPitch(event.getPitch() + CamTransformations.getZ());
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package dev.halbear1.supernova.world.dimension;
|
||||
package net.halbear.supernova.world.dimension;
|
||||
|
||||
import dev.halbear1.supernova.custom.block.ArcFurnace;
|
||||
import dev.halbear1.supernova.registry.blocks.ModBlocks;
|
||||
import net.halbear.supernova.custom.block.ArcFurnace;
|
||||
import net.halbear.supernova.registry.blocks.ModBlocks;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.fluid.Fluids;
|
||||
@@ -0,0 +1,4 @@
|
||||
package net.halbear.supernova.world.gen.ores;
|
||||
|
||||
public class OreInCave {
|
||||
}
|
||||
@@ -29,9 +29,9 @@ displayName="SuperNova" #mandatory
|
||||
# A file name (in the root of the mod JAR) containing a logo for display
|
||||
logoFile="SuperNova.png" #optional
|
||||
# A text field displayed in the mod UI
|
||||
credits="halbear1, Masterchefreal, TechyKnight, Peacefulgamer_, Billz_Game" #optional
|
||||
credits="halbear1, TechyKnight, Billz_Game" #optional
|
||||
# A text field displayed in the mod UI
|
||||
authors="halbear1" #optional
|
||||
authors="Halbear Networking & Software Ltd" #optional
|
||||
# The description text for the mod (multi line!) (#mandatory)
|
||||
description='''
|
||||
SuperNova Space travel mod developed by Iron Horse Game Development (visit https://iron-horse.games/ to find out more)
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 57 KiB |
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"required": true,
|
||||
"package": "net.halbear.supernova.mixin",
|
||||
"refmap": "supernova.mixin-refmap.json",
|
||||
"compatibilityLevel": "JAVA_8",
|
||||
"client": [
|
||||
"CameraMixin"
|
||||
],
|
||||
"injectors": {
|
||||
"defaultRequire": 1
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user