├── .github ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .gitmodules ├── CHANGE_LOG.md ├── README.md ├── RoomManager └── src │ └── com │ └── builtbroken │ └── room │ ├── Main.java │ ├── data │ ├── DataHandler.java │ └── Room.java │ ├── gui │ └── UserInteraction.java │ └── logic │ └── Logic.java ├── desktop.ini ├── engine.properties ├── folderIcon.ico ├── html └── settings.config ├── license.md ├── runConfigs.txt ├── settings └── settings.config └── src ├── archive ├── Pos.scala └── grid │ ├── Grid.java │ ├── GridNode.scala │ ├── GridTicking.java │ ├── HeatingDictionary.java │ ├── TConnector.scala │ ├── TEnergyBuffer.scala │ ├── TileConductor.java │ ├── branch │ ├── BranchedGrid.java │ ├── GridPathfinder.java │ ├── NodeBranchPart.scala │ └── part │ │ ├── Branch.java │ │ ├── Junction.java │ │ └── Part.java │ ├── electric │ ├── NodeElectric.scala │ └── part │ │ ├── BranchElectric.scala │ │ ├── JunctionElectric.scala │ │ └── TElectricPart.scala │ ├── energy │ └── EnergyStorage.scala │ ├── node │ ├── NodeConnector.scala │ ├── NodeEnergy.scala │ ├── NodeGrid.scala │ └── TTileConnector.scala │ └── test │ └── grid │ ├── BranchGridTest.java │ ├── BranchTest.java │ ├── GridTest.java │ ├── NodeConnectionTest.java │ └── WireMap.java ├── genTest └── java │ └── com │ └── builtbroken │ └── mc │ └── codegen │ └── tests │ ├── TileFluidTank.java │ ├── TileTestEmpty.java │ ├── TileTestEnergy.java │ ├── TileTestEnergyInventory.java │ └── TileTestInventory.java ├── main ├── resources │ ├── META-INF │ │ └── VE_at.cfg │ ├── assets │ │ └── voltzengine │ │ │ ├── lang │ │ │ ├── de_DE.lang │ │ │ ├── en_US.lang │ │ │ ├── et_EE.lang │ │ │ ├── fr_FR.lang │ │ │ ├── no_NO.lang │ │ │ ├── ru_RU.lang │ │ │ └── zh_CN.lang │ │ │ ├── models │ │ │ ├── tool-table.mtl │ │ │ └── tool-table.obj │ │ │ └── textures │ │ │ ├── 40%grey.png │ │ │ ├── blocks │ │ │ ├── infiniteEnergy.png │ │ │ ├── infiniteFluid.png │ │ │ ├── infiniteInventory.png │ │ │ ├── metal_block.png │ │ │ ├── metal_brick.png │ │ │ ├── metal_diamond.png │ │ │ ├── metal_grate.png │ │ │ ├── stone.png │ │ │ └── stone │ │ │ │ ├── ore_amazonite.png │ │ │ │ ├── ore_bauxite.png │ │ │ │ ├── ore_copper.png │ │ │ │ ├── ore_garnetgreen.png │ │ │ │ ├── ore_garnetorange.png │ │ │ │ ├── ore_garnetred.png │ │ │ │ ├── ore_garnetyellow.png │ │ │ │ ├── ore_lead.png │ │ │ │ ├── ore_magnesite.png │ │ │ │ ├── ore_nickel.png │ │ │ │ ├── ore_onyxblack.png │ │ │ │ ├── ore_onyxred.png │ │ │ │ ├── ore_platinum.png │ │ │ │ ├── ore_ruby.png │ │ │ │ ├── ore_sapphire.png │ │ │ │ ├── ore_silver.png │ │ │ │ ├── ore_smokeyquartz.png │ │ │ │ ├── ore_tin.png │ │ │ │ ├── ore_titanium.png │ │ │ │ ├── ore_uranium.png │ │ │ │ └── ore_zinc.png │ │ │ ├── entity │ │ │ ├── bat.demon.png │ │ │ ├── bat.ender.png │ │ │ ├── bat.fire.png │ │ │ ├── bat.png │ │ │ ├── bat.tnt.png │ │ │ └── bat.xcf │ │ │ ├── fadedSphere.png │ │ │ ├── grey.png │ │ │ ├── gui │ │ │ ├── 9px_buttons.png │ │ │ ├── 9px_buttons.xcf │ │ │ ├── book.png │ │ │ ├── crafting_table_4x4.png │ │ │ ├── crafting_table_4x4.xcf │ │ │ ├── gui_base.png │ │ │ ├── gui_components.bars.png │ │ │ ├── gui_components.bars.xcf │ │ │ ├── gui_components.png │ │ │ ├── gui_components.xcf │ │ │ ├── gui_empty.png │ │ │ ├── gui_slots.xcf │ │ │ ├── mc_base.png │ │ │ └── mc_base_empty.png │ │ │ ├── items │ │ │ ├── blank.png │ │ │ ├── circuitAdvanced.png │ │ │ ├── circuitBasic.png │ │ │ ├── circuitElite.png │ │ │ ├── copperCoil.png │ │ │ ├── copperCoilStepper.png │ │ │ ├── dcMotor.png │ │ │ ├── devDataTool.png │ │ │ ├── devStaff.png │ │ │ ├── dust.png │ │ │ ├── dustImpure.png │ │ │ ├── dustImpure_overlay.png │ │ │ ├── ex.icon.creeper_head.old.png │ │ │ ├── ex.icon.creeper_head.png │ │ │ ├── ex.icon.gunpowder.png │ │ │ ├── ex.icon.missing.png │ │ │ ├── ex.icon.tnt.blank.png │ │ │ ├── ex.icon.tnt.png │ │ │ ├── gear.png │ │ │ ├── gem.amazonite.uncut.png │ │ │ ├── gem.garnet.green.uncut.png │ │ │ ├── gem.garnet.orange.uncut.png │ │ │ ├── gem.garnet.red.uncut.png │ │ │ ├── gem.garnet.yellow.uncut.png │ │ │ ├── gem.onyx.black.uncut.png │ │ │ ├── gem.onyx.red.uncut.png │ │ │ ├── gem.quartz.smoky.uncut.png │ │ │ ├── gem.ruby.uncut.png │ │ │ ├── gem.sapphire.uncut.png │ │ │ ├── gemShape_emerald.png │ │ │ ├── gemShape_onyx.png │ │ │ ├── gemShape_quartz.png │ │ │ ├── gemShape_ruby.png │ │ │ ├── gemUncut.png │ │ │ ├── gemUncut_overlay.png │ │ │ ├── handCrank.png │ │ │ ├── handle_main.png │ │ │ ├── handle_spade.png │ │ │ ├── handle_sword.png │ │ │ ├── head_axe.png │ │ │ ├── head_hoe.png │ │ │ ├── head_pick.png │ │ │ ├── head_spade.png │ │ │ ├── head_sword.png │ │ │ ├── hilt_sword.png │ │ │ ├── ingot.png │ │ │ ├── insulation.png │ │ │ ├── ironCutters.png │ │ │ ├── manual.png │ │ │ ├── manual.xcf │ │ │ ├── motor.png │ │ │ ├── nugget.png │ │ │ ├── plate.png │ │ │ ├── rivets.png │ │ │ ├── rod.png │ │ │ ├── rubble.png │ │ │ ├── screw.png │ │ │ ├── sheet.cone.medium.png │ │ │ ├── sheet.cone.micro.png │ │ │ ├── sheet.cone.small.png │ │ │ ├── sheet.curve.1.png │ │ │ ├── sheet.curve.2.png │ │ │ ├── sheet.curve.3.png │ │ │ ├── sheet.curve.4.png │ │ │ ├── sheet.cylinder.half.png │ │ │ ├── sheet.cylinder.png │ │ │ ├── sheet.cylinder.small.png │ │ │ ├── sheet.eighth.png │ │ │ ├── sheet.fin.micro.png │ │ │ ├── sheet.fin.small.png │ │ │ ├── sheet.half.png │ │ │ ├── sheet.png │ │ │ ├── sheet.quarter.png │ │ │ ├── sheet.third.png │ │ │ ├── sheet.triangle.png │ │ │ ├── sheetMetalHammer.png │ │ │ ├── sheetMetalShears.png │ │ │ ├── stepperMotor.png │ │ │ ├── stoneChisel.png │ │ │ ├── stoneDrill.png │ │ │ ├── stoneFile.png │ │ │ ├── stoneHammer.png │ │ │ ├── wire.png │ │ │ └── wrench │ │ │ │ ├── wrench.fluid.color.png │ │ │ │ ├── wrench.fluid.png │ │ │ │ ├── wrench.item.color.png │ │ │ │ ├── wrench.item.png │ │ │ │ ├── wrench.png │ │ │ │ ├── wrench.power.color.png │ │ │ │ ├── wrench.power.png │ │ │ │ ├── wrench.redstone.color.png │ │ │ │ ├── wrench.redstone.png │ │ │ │ ├── wrench.rotation.color.png │ │ │ │ ├── wrench.rotation.png │ │ │ │ └── wrench.xcf │ │ │ ├── laser.png │ │ │ ├── models │ │ │ └── tool-table.png │ │ │ ├── noise.png │ │ │ └── particle │ │ │ └── soft.png │ ├── content │ │ └── voltzengine │ │ │ ├── assets │ │ │ ├── models.json │ │ │ └── textures.json │ │ │ ├── debug │ │ │ └── TileInfInv.json │ │ │ ├── nei │ │ │ └── hiddenItems.json │ │ │ ├── oredictionary.json │ │ │ ├── ores │ │ │ ├── gem │ │ │ │ ├── ore.json │ │ │ │ ├── render.json │ │ │ │ └── world.json │ │ │ └── metal │ │ │ │ ├── ore.json │ │ │ │ ├── recipes.json │ │ │ │ ├── render.json │ │ │ │ └── world.json │ │ │ └── resources │ │ │ ├── gem │ │ │ ├── item.json │ │ │ ├── recipes.json │ │ │ └── render.json │ │ │ └── sheet │ │ │ ├── item.json │ │ │ └── render.json │ └── mcmod.info └── scala │ ├── META-INF │ └── DragonAPI_at.cfg │ ├── buildcraft │ └── api │ │ └── tools │ │ ├── IToolWrench.java │ │ └── package-info.java │ ├── cofh │ └── api │ │ ├── CoFHAPIProps.java │ │ ├── energy │ │ ├── EnergyStorage.java │ │ ├── IEnergyConnection.java │ │ ├── IEnergyContainerItem.java │ │ ├── IEnergyHandler.java │ │ ├── IEnergyProvider.java │ │ ├── IEnergyReceiver.java │ │ ├── IEnergyStorage.java │ │ ├── IEnergyTransport.java │ │ ├── ItemEnergyContainer.java │ │ └── package-info.java │ │ ├── item │ │ ├── IEmpowerableItem.java │ │ ├── IInventoryContainerItem.java │ │ ├── IToolHammer.java │ │ └── package-info.java │ │ └── package-info.java │ ├── com │ └── builtbroken │ │ └── mc │ │ ├── abstraction │ │ └── EngineLoader.java │ │ ├── client │ │ ├── ExplosiveRegistryClient.java │ │ ├── SharedAssets.java │ │ ├── effects │ │ │ ├── VisualEffectProvider.java │ │ │ ├── VisualEffectRegistry.java │ │ │ └── providers │ │ │ │ ├── VEProviderBlood.java │ │ │ │ ├── VEProviderLaserBeam.java │ │ │ │ ├── VEProviderRocketTrail.java │ │ │ │ ├── VEProviderShockWave.java │ │ │ │ └── VEProviderSmokeStream.java │ │ ├── gui │ │ │ └── GuiQuickAccess.java │ │ ├── helpers │ │ │ ├── ItemTextureBaker.java │ │ │ └── Render2DHelper.java │ │ ├── json │ │ │ ├── ClientDataHandler.java │ │ │ ├── IJsonRenderStateProvider.java │ │ │ ├── audio │ │ │ │ ├── AudioData.java │ │ │ │ └── AudioJsonProcessor.java │ │ │ ├── effects │ │ │ │ ├── EffectJsonProcessor.java │ │ │ │ ├── EffectLayer.java │ │ │ │ ├── EffectList.java │ │ │ │ └── EffectListJsonProcessor.java │ │ │ ├── imp │ │ │ │ ├── IEffectData.java │ │ │ │ ├── IModelState.java │ │ │ │ └── IRenderState.java │ │ │ ├── models │ │ │ │ ├── ModelCustomData.java │ │ │ │ ├── ModelJsonProcessor.java │ │ │ │ └── cube │ │ │ │ │ ├── BlockModelData.java │ │ │ │ │ ├── BlockModelJsonProcessor.java │ │ │ │ │ ├── BlockModelPart.java │ │ │ │ │ └── JsonConverterModelCube.java │ │ │ ├── render │ │ │ │ ├── RenderData.java │ │ │ │ ├── block │ │ │ │ │ ├── RenderStateTexturedBlock.java │ │ │ │ │ └── model │ │ │ │ │ │ ├── BlockRenderHandler.java │ │ │ │ │ │ └── RenderStateBlockModel.java │ │ │ │ ├── item │ │ │ │ │ ├── ItemJsonRenderer.java │ │ │ │ │ └── RenderStateItem.java │ │ │ │ ├── processor │ │ │ │ │ ├── BlockModelStateJsonProcessor.java │ │ │ │ │ ├── BlockTexturedStateJsonProcessor.java │ │ │ │ │ ├── ItemStateJsonProcessor.java │ │ │ │ │ ├── ModelStateJsonProcessor.java │ │ │ │ │ ├── RenderJsonProcessor.java │ │ │ │ │ └── RenderJsonSubProcessor.java │ │ │ │ ├── state │ │ │ │ │ ├── ModelState.java │ │ │ │ │ ├── RenderState.java │ │ │ │ │ └── RenderStateTexture.java │ │ │ │ └── tile │ │ │ │ │ ├── RenderStateTile.java │ │ │ │ │ └── TileRenderData.java │ │ │ └── texture │ │ │ │ ├── TextureData.java │ │ │ │ └── TextureJsonProcessor.java │ │ └── wrapper │ │ │ ├── BlockAccessWrapper.java │ │ │ └── BlockRenderWrapper.java │ │ ├── codegen │ │ └── annotations │ │ │ ├── ItemWrapped.java │ │ │ └── TileWrapped.java │ │ ├── core │ │ ├── ConfigValues.java │ │ ├── Engine.java │ │ ├── EngineCoreMod.java │ │ ├── EnginePreloader.java │ │ ├── References.java │ │ ├── asm │ │ │ ├── CheckFakeWorld.java │ │ │ ├── ChunkSetBlockEvent.java │ │ │ ├── ChunkTransformer.java │ │ │ ├── ProxyASMTest.java │ │ │ ├── StaticForwarder.java │ │ │ └── template │ │ │ │ ├── ClassTransformer.java │ │ │ │ ├── ITemplateCalls.java │ │ │ │ ├── InjectionTemplate.java │ │ │ │ └── TemplateManager.java │ │ ├── commands │ │ │ ├── CommandVE.java │ │ │ ├── debug │ │ │ │ ├── CommandDebugChunk.java │ │ │ │ ├── CommandDebugClass.java │ │ │ │ ├── CommandDebugInventory.java │ │ │ │ ├── CommandDebugItem.java │ │ │ │ ├── CommandDebugMap.java │ │ │ │ └── CommandDebugRecipes.java │ │ │ ├── energy │ │ │ │ └── CommandChargeItem.java │ │ │ ├── ext │ │ │ │ ├── GroupSubCommand.java │ │ │ │ ├── ModularCommandRemoveAdd.java │ │ │ │ ├── SubCommandWithName.java │ │ │ │ └── UserSubCommand.java │ │ │ ├── json │ │ │ │ ├── CommandJsonRecipe.java │ │ │ │ ├── override │ │ │ │ │ ├── CommandJOGen.java │ │ │ │ │ ├── CommandJOGet.java │ │ │ │ │ └── CommandJOSet.java │ │ │ │ └── visuals │ │ │ │ │ └── CommandJsonRender.java │ │ │ ├── permissions │ │ │ │ ├── GroupProfileHandler.java │ │ │ │ ├── PermissionsCommandManager.java │ │ │ │ ├── PermissionsRegistry.java │ │ │ │ └── sub │ │ │ │ │ ├── CommandDumpPermissions.java │ │ │ │ │ ├── CommandGroup.java │ │ │ │ │ ├── CommandGroups.java │ │ │ │ │ ├── CommandNewGroup.java │ │ │ │ │ ├── CommandRemoveGroup.java │ │ │ │ │ ├── CommandUser.java │ │ │ │ │ ├── GSCList.java │ │ │ │ │ ├── GSCPerm.java │ │ │ │ │ ├── GSCUser.java │ │ │ │ │ └── USCList.java │ │ │ ├── prefab │ │ │ │ ├── AbstractCommand.java │ │ │ │ ├── ModularCommand.java │ │ │ │ └── SubCommand.java │ │ │ ├── sub │ │ │ │ ├── CommandVEButcher.java │ │ │ │ ├── CommandVEClear.java │ │ │ │ ├── CommandVERemove.java │ │ │ │ └── CommandVEVersion.java │ │ │ └── thread │ │ │ │ └── CommandThreadClear.java │ │ ├── content │ │ │ ├── blast │ │ │ │ ├── emp │ │ │ │ │ ├── BlastEMP.java │ │ │ │ │ ├── BlastEMPClient.java │ │ │ │ │ ├── EmpDrainEdit.java │ │ │ │ │ ├── EmpEdit.java │ │ │ │ │ └── ExEmp.java │ │ │ │ ├── holiday │ │ │ │ │ ├── BlastGift.java │ │ │ │ │ ├── BlastGiftClient.java │ │ │ │ │ ├── ExGift.java │ │ │ │ │ └── ExGiftClient.java │ │ │ │ └── tnt │ │ │ │ │ └── ExplosiveHandlerTNT.java │ │ │ ├── blocks │ │ │ │ └── BlockHeatedStone.java │ │ │ ├── debug │ │ │ │ ├── ItemDevData.java │ │ │ │ └── TileInfInv.java │ │ │ ├── entity │ │ │ │ ├── ItemExEntitySpawnEgg.java │ │ │ │ ├── bat │ │ │ │ │ ├── EntityCreatureBat.java │ │ │ │ │ └── ex │ │ │ │ │ │ ├── EntityExBat.java │ │ │ │ │ │ ├── ModelExBat.java │ │ │ │ │ │ └── RenderExBat.java │ │ │ │ └── creeper │ │ │ │ │ ├── EntityExCreeper.java │ │ │ │ │ └── RenderExCreeper.java │ │ │ ├── parts │ │ │ │ ├── CraftingParts.java │ │ │ │ ├── ItemCircuits.java │ │ │ │ └── ItemCraftingParts.java │ │ │ ├── resources │ │ │ │ ├── DefinedGenItems.java │ │ │ │ ├── GenMaterial.java │ │ │ │ ├── items │ │ │ │ │ ├── ItemGenMaterial.java │ │ │ │ │ └── ItemSheetMetal.java │ │ │ │ └── load │ │ │ │ │ ├── CastRecipeLoader.java │ │ │ │ │ ├── CrusherRecipeLoad.java │ │ │ │ │ ├── FluidSmelterRecipeLoad.java │ │ │ │ │ ├── GearRecipeLoader.java │ │ │ │ │ ├── GrinderRecipeLoad.java │ │ │ │ │ ├── NuggetRecipeLoader.java │ │ │ │ │ ├── PlateRecipeLoader.java │ │ │ │ │ ├── RodRecipeLoader.java │ │ │ │ │ ├── ScrewRecipeLoader.java │ │ │ │ │ ├── SmeltingRecipeLoad.java │ │ │ │ │ └── WireRecipeLoader.java │ │ │ ├── tool │ │ │ │ ├── ItemAbstractCraftingTool.java │ │ │ │ ├── ItemScrewdriver.java │ │ │ │ ├── ItemSheetMetalTools.java │ │ │ │ ├── ItemSimpleCraftingTool.java │ │ │ │ ├── ItemToolModeColor.java │ │ │ │ └── screwdriver │ │ │ │ │ ├── ToolMode.java │ │ │ │ │ ├── ToolModeConnection.java │ │ │ │ │ ├── ToolModeGeneral.java │ │ │ │ │ └── ToolModeRotation.java │ │ │ └── world │ │ │ │ ├── DevWorldLoader.java │ │ │ │ ├── WorldGenWrapper.java │ │ │ │ └── chunks │ │ │ │ ├── AbstractChunkProvider.java │ │ │ │ ├── ChunkProviderChess.java │ │ │ │ ├── ChunkProviderEmpty.java │ │ │ │ └── ChunkProviderStone.java │ │ ├── deps │ │ │ ├── Dep.java │ │ │ ├── DepDownloader.java │ │ │ ├── FileDownloader.java │ │ │ ├── MavenDep.java │ │ │ └── Version.java │ │ ├── handler │ │ │ ├── InteractionHandler.java │ │ │ ├── PlayerKeyHandler.java │ │ │ ├── RenderSelection.java │ │ │ ├── SaveManager.java │ │ │ └── TileTaskTickHandler.java │ │ ├── network │ │ │ ├── IPacketIDReceiver.java │ │ │ ├── IPacketReceiver.java │ │ │ ├── ex │ │ │ │ ├── PacketIDException.java │ │ │ │ └── PacketTileReadException.java │ │ │ ├── netty │ │ │ │ ├── PacketChannelHandler.java │ │ │ │ ├── PacketHandler.java │ │ │ │ └── PacketManager.java │ │ │ └── packet │ │ │ │ ├── PacketBiomeData.java │ │ │ │ ├── PacketEntity.java │ │ │ │ ├── PacketGui.java │ │ │ │ ├── PacketPlayerItem.java │ │ │ │ ├── PacketSelectionData.java │ │ │ │ ├── PacketSpawnParticle.java │ │ │ │ ├── PacketSpawnParticleCircle.java │ │ │ │ ├── PacketSpawnParticleStream.java │ │ │ │ ├── PacketSpawnStream.java │ │ │ │ ├── PacketTile.java │ │ │ │ ├── PacketType.java │ │ │ │ ├── callback │ │ │ │ ├── PacketAudio.java │ │ │ │ ├── PacketBlast.java │ │ │ │ ├── PacketOpenGUI.java │ │ │ │ └── chunk │ │ │ │ │ ├── PacketRequestData.java │ │ │ │ │ └── PacketSendData.java │ │ │ │ └── user │ │ │ │ ├── PacketMouseClick.java │ │ │ │ ├── PacketMouseScroll.java │ │ │ │ └── PacketPlayerItemMode.java │ │ └── registry │ │ │ ├── ClientRegistryProxy.java │ │ │ ├── CommonRegistryProxy.java │ │ │ ├── ModManager.java │ │ │ └── implement │ │ │ ├── ILoadComplete.java │ │ │ ├── IPostInit.java │ │ │ ├── IRecipeContainer.java │ │ │ └── IRegistryInit.java │ │ ├── debug │ │ ├── IJsonDebugDisplay.java │ │ ├── component │ │ │ └── DebugDataCellRenderer.java │ │ ├── data │ │ │ ├── DebugData.java │ │ │ ├── DebugJsonData.java │ │ │ └── IJsonDebugData.java │ │ ├── error │ │ │ ├── ExceptionErrorDebug.java │ │ │ └── IErrorDebug.java │ │ └── gui │ │ │ ├── FrameDebug.java │ │ │ ├── panels │ │ │ ├── imp │ │ │ │ └── PanelDataList.java │ │ │ ├── json │ │ │ │ ├── PanelJsonConsole.java │ │ │ │ ├── PanelJsonData.java │ │ │ │ └── TabPanelJsonData.java │ │ │ └── recipes │ │ │ │ ├── PanelRecipes.java │ │ │ │ ├── TabPanelFurnaceRecipes.java │ │ │ │ ├── TabPanelShapedRecipes.java │ │ │ │ └── TabPanelShapelessRecipes.java │ │ │ └── windows │ │ │ ├── FrameModelStateData.java │ │ │ └── FrameRenderData.java │ │ ├── framework │ │ ├── block │ │ │ └── imp │ │ │ │ ├── BlockListenerKeys.java │ │ │ │ ├── IActivationListener.java │ │ │ │ ├── IBlockListener.java │ │ │ │ ├── IBlockStackListener.java │ │ │ │ ├── IBoundListener.java │ │ │ │ ├── IChangeListener.java │ │ │ │ ├── ICollisionListener.java │ │ │ │ ├── IDestroyedListener.java │ │ │ │ ├── IFillRainListener.java │ │ │ │ ├── IHardnessListener.java │ │ │ │ ├── ILightLevelListener.java │ │ │ │ ├── IPlacementListener.java │ │ │ │ ├── IRenderBoundsListener.java │ │ │ │ ├── IResistanceListener.java │ │ │ │ ├── ITileEventListener.java │ │ │ │ ├── ITileEventListenerBuilder.java │ │ │ │ ├── ITileWithListeners.java │ │ │ │ ├── IToolListener.java │ │ │ │ ├── IUpdateListener.java │ │ │ │ └── IWrenchListener.java │ │ ├── computer │ │ │ ├── DataArg.java │ │ │ ├── DataMethodReflection.java │ │ │ ├── DataSystemHandler.java │ │ │ ├── DataSystemLambda.java │ │ │ ├── DataSystemProxy.java │ │ │ ├── DataSystemReflection.java │ │ │ └── FunctionComputer.java │ │ ├── energy │ │ │ ├── EnergyHandler.java │ │ │ ├── UniversalEnergyHandler.java │ │ │ ├── UniversalEnergySystem.java │ │ │ └── data │ │ │ │ ├── AbstractEnergyBuffer.java │ │ │ │ ├── EnergyBuffer.java │ │ │ │ ├── EnergyBufferData.java │ │ │ │ ├── EnergyChargeData.java │ │ │ │ └── EnergySides.java │ │ ├── entity │ │ │ ├── effect │ │ │ │ ├── EntityEffect.java │ │ │ │ ├── EntityEffectHandler.java │ │ │ │ ├── IEEPEntityEffect.java │ │ │ │ └── effects │ │ │ │ │ └── BleedingEffect.java │ │ │ └── package-info.java │ │ ├── explosive │ │ │ ├── ExplosiveItemUtility.java │ │ │ ├── ExplosiveRegistry.java │ │ │ ├── TriggerNBTBuilder.java │ │ │ ├── blast │ │ │ │ ├── Blast.java │ │ │ │ └── PostBlastTrigger.java │ │ │ └── handler │ │ │ │ ├── ExplosiveData.java │ │ │ │ └── ExplosiveHandler.java │ │ ├── guide │ │ │ ├── GuideBookModule.java │ │ │ ├── GuideEntry.java │ │ │ ├── GuideEntryType.java │ │ │ ├── gui │ │ │ │ ├── GuiBookList.java │ │ │ │ └── GuiBookPage.java │ │ │ ├── json │ │ │ │ ├── JsonProcessorBook.java │ │ │ │ ├── JsonProcessorChapter.java │ │ │ │ ├── JsonProcessorPage.java │ │ │ │ └── JsonProcessorSection.java │ │ │ └── parts │ │ │ │ ├── Book.java │ │ │ │ ├── Chapter.java │ │ │ │ ├── Page.java │ │ │ │ ├── Section.java │ │ │ │ ├── comp │ │ │ │ ├── PageComponent.java │ │ │ │ └── PageComponentText.java │ │ │ │ └── imp │ │ │ │ ├── GuidePart.java │ │ │ │ └── GuidePartContainer.java │ │ ├── item │ │ │ ├── ItemBase.java │ │ │ ├── ItemListenerIterator.java │ │ │ ├── ItemNode.java │ │ │ └── ItemNodeSubType.java │ │ ├── json │ │ │ ├── IJsonGenMod.java │ │ │ ├── JsonContentLoader.java │ │ │ ├── conversion │ │ │ │ ├── IJsonConverter.java │ │ │ │ ├── JsonConverter.java │ │ │ │ ├── data │ │ │ │ │ ├── energy │ │ │ │ │ │ ├── JsonConverterEnergyBufferData.java │ │ │ │ │ │ └── JsonConverterEnergyChargeData.java │ │ │ │ │ ├── mc │ │ │ │ │ │ ├── JsonConverterBlock.java │ │ │ │ │ │ ├── JsonConverterItem.java │ │ │ │ │ │ ├── JsonConverterMaterial.java │ │ │ │ │ │ └── JsonConverterNBT.java │ │ │ │ │ └── transform │ │ │ │ │ │ ├── JsonConverterCube.java │ │ │ │ │ │ └── JsonConverterPos.java │ │ │ │ ├── primitives │ │ │ │ │ ├── JsonConverterBoolean.java │ │ │ │ │ ├── JsonConverterByte.java │ │ │ │ │ ├── JsonConverterDouble.java │ │ │ │ │ ├── JsonConverterFloat.java │ │ │ │ │ ├── JsonConverterInt.java │ │ │ │ │ ├── JsonConverterLong.java │ │ │ │ │ ├── JsonConverterShort.java │ │ │ │ │ └── JsonConverterString.java │ │ │ │ └── structures │ │ │ │ │ ├── arrays │ │ │ │ │ ├── JsonConverterByteArray.java │ │ │ │ │ ├── JsonConverterIntegerArray.java │ │ │ │ │ ├── JsonConverterShortArray.java │ │ │ │ │ └── JsonConverterStringArray.java │ │ │ │ │ ├── list │ │ │ │ │ └── JsonConverterList.java │ │ │ │ │ └── map │ │ │ │ │ └── JsonConverterHashMap.java │ │ │ ├── data │ │ │ │ ├── JsonBlockEntry.java │ │ │ │ ├── JsonItemEntry.java │ │ │ │ └── JsonRecipeData.java │ │ │ ├── event │ │ │ │ ├── JsonContentLoaderEvent.java │ │ │ │ ├── JsonEntryCreationEvent.java │ │ │ │ └── JsonProcessorRegistryEvent.java │ │ │ ├── imp │ │ │ │ ├── IJSONMetaConvert.java │ │ │ │ ├── IJsonGenObject.java │ │ │ │ ├── IJsonKeyDataProvider.java │ │ │ │ ├── IJsonProcessor.java │ │ │ │ └── JsonLoadPhase.java │ │ │ ├── loading │ │ │ │ ├── JsonEntry.java │ │ │ │ ├── JsonLoader.java │ │ │ │ ├── JsonProcessorData.java │ │ │ │ ├── JsonProcessorDataGetter.java │ │ │ │ ├── JsonProcessorInjectionMap.java │ │ │ │ └── ProcessorKeySorter.java │ │ │ ├── override │ │ │ │ ├── IModifableJson.java │ │ │ │ ├── JsonOverrideData.java │ │ │ │ └── JsonOverrideProcessor.java │ │ │ ├── processors │ │ │ │ ├── JsonGenData.java │ │ │ │ ├── JsonProcessor.java │ │ │ │ ├── event │ │ │ │ │ ├── JsonMissingMapEventProcessor.java │ │ │ │ │ └── JsonMobDropEventProcessor.java │ │ │ │ ├── explosive │ │ │ │ │ └── JsonProcessorExplosive.java │ │ │ │ └── multiblock │ │ │ │ │ └── JsonMultiBlockLayoutProcessor.java │ │ │ ├── reload │ │ │ │ └── IReloadableJson.java │ │ │ ├── settings │ │ │ │ ├── JsonSettingData.java │ │ │ │ ├── JsonSettingsProcessor.java │ │ │ │ └── data │ │ │ │ │ ├── JsonSettingBoolean.java │ │ │ │ │ └── JsonSettingInteger.java │ │ │ └── struct │ │ │ │ ├── JsonConditional.java │ │ │ │ └── JsonForLoop.java │ │ ├── logic │ │ │ ├── TileNode.java │ │ │ └── imp │ │ │ │ └── ITileDesc.java │ │ ├── mod │ │ │ ├── AbstractMod.java │ │ │ ├── AbstractProxy.java │ │ │ ├── IMod.java │ │ │ ├── ModCreativeTab.java │ │ │ ├── ModProxy.java │ │ │ ├── Mods.java │ │ │ └── loadable │ │ │ │ ├── AbstractLoadable.java │ │ │ │ ├── ILoadable.java │ │ │ │ ├── ILoadableProxy.java │ │ │ │ ├── LoadWithMod.java │ │ │ │ └── LoadableHandler.java │ │ ├── multiblock │ │ │ ├── BlockMultiblock.java │ │ │ ├── EnumMultiblock.java │ │ │ ├── ItemBlockMulti.java │ │ │ ├── MultiBlockHelper.java │ │ │ ├── MultiBlockRenderHelper.java │ │ │ ├── RendererMultiBlock.java │ │ │ ├── TileMulti.java │ │ │ ├── listeners │ │ │ │ ├── IMultiBlockLayoutListener.java │ │ │ │ └── IMultiBlockNodeListener.java │ │ │ ├── structure │ │ │ │ ├── MultiBlockLayout.java │ │ │ │ └── MultiBlockLayoutHandler.java │ │ │ └── types │ │ │ │ ├── TileMultiEnergy.java │ │ │ │ ├── TileMultiInv.scala │ │ │ │ ├── TileMultiInvEnergy.scala │ │ │ │ ├── TileMultiTank.scala │ │ │ │ ├── TileMultiTankEnergy.scala │ │ │ │ ├── TileMultiTankInv.scala │ │ │ │ └── TileMultiTankInvEnergy.scala │ │ ├── package-info.java │ │ ├── recipe │ │ │ ├── cast │ │ │ │ ├── CastingData.java │ │ │ │ ├── CastingRecipe.java │ │ │ │ └── MRHandlerCast.java │ │ │ ├── extend │ │ │ │ ├── MRHandler.java │ │ │ │ ├── MachineRecipe.java │ │ │ │ └── MachineRecipeLoader.java │ │ │ ├── fluid │ │ │ │ ├── MRFluidStack.java │ │ │ │ ├── MRHandlerFluidStack.java │ │ │ │ └── MRLoaderFluidStack.java │ │ │ └── item │ │ │ │ ├── MRHandlerItemStack.java │ │ │ │ ├── MRItemStack.java │ │ │ │ ├── MRLoaderItemStack.java │ │ │ │ ├── MRSmelterHandler.java │ │ │ │ ├── RecipeShapedOre.java │ │ │ │ ├── RecipeShapelessOre.java │ │ │ │ ├── RecipeShapelessTool.java │ │ │ │ ├── RecipeTool.java │ │ │ │ ├── grid │ │ │ │ └── RecipeShapedOreLarge.java │ │ │ │ └── sheetmetal │ │ │ │ └── RecipeSheetMetal.java │ │ ├── thread │ │ │ ├── WorkerThread.java │ │ │ ├── action │ │ │ │ ├── WCAThreadProcess.java │ │ │ │ ├── WorldActionQue.java │ │ │ │ ├── WorldChangeActionPost.java │ │ │ │ └── WorldEditQueue.java │ │ │ └── delay │ │ │ │ ├── DelayedAction.java │ │ │ │ ├── DelayedActionHandler.java │ │ │ │ └── DelayedSpawn.java │ │ └── trigger │ │ │ ├── WorldTrigger.java │ │ │ ├── WorldTriggerArea.java │ │ │ └── WorldTriggerEvent.java │ │ ├── lib │ │ ├── Holiday.java │ │ ├── asm │ │ │ ├── ASMHelper.java │ │ │ ├── ASMUtility.scala │ │ │ ├── CC_ClassWriter.java │ │ │ ├── ClassHeirachyManager.java │ │ │ ├── InsnListPrinter.java │ │ │ ├── InstructionComparator.java │ │ │ └── ObfMapping.java │ │ ├── data │ │ │ ├── BlockStateEntry.java │ │ │ ├── HashMapNotNull.java │ │ │ ├── ItemStackMap.java │ │ │ ├── ItemStackToStackMap.java │ │ │ ├── StringComparator.java │ │ │ ├── heat │ │ │ │ ├── BlockConversionData.java │ │ │ │ └── HeatedBlockRegistry.java │ │ │ ├── item │ │ │ │ ├── ItemStackList.java │ │ │ │ └── ItemStackWrapper.java │ │ │ └── mass │ │ │ │ └── MassRegistry.java │ │ ├── debug │ │ │ └── DebugHelper.java │ │ ├── helper │ │ │ ├── BlockUtility.java │ │ │ ├── DamageUtility.java │ │ │ ├── DummyPlayer.java │ │ │ ├── LanguageUtility.java │ │ │ ├── MaterialDict.java │ │ │ ├── MathUtility.java │ │ │ ├── NBTUtility.java │ │ │ ├── PotionUtility.java │ │ │ ├── ReflectionUtility.java │ │ │ ├── WrenchUtility.java │ │ │ └── recipe │ │ │ │ ├── OreNames.java │ │ │ │ ├── RecipeUtility.java │ │ │ │ └── UniversalRecipe.java │ │ ├── render │ │ │ ├── ModelUtility.java │ │ │ ├── RenderItemOverlayUtility.java │ │ │ ├── RenderUtility.java │ │ │ ├── block │ │ │ │ ├── BlockRenderHandler.java │ │ │ │ ├── ItemRenderHandler.java │ │ │ │ └── RenderTileDummy.java │ │ │ ├── fx │ │ │ │ ├── EntityDropParticleFX.java │ │ │ │ ├── FXElectricBolt.java │ │ │ │ ├── FXElectricBolt2.java │ │ │ │ ├── FXElectricBoltSpawner.java │ │ │ │ ├── FXEnderPortalPartical.java │ │ │ │ ├── FXShockWave.java │ │ │ │ ├── FXSmoke.java │ │ │ │ ├── FxBeam.java │ │ │ │ ├── FxRocketFire.java │ │ │ │ └── FxRocketSmokeTrail.java │ │ │ └── model │ │ │ │ ├── FixedTechneModel.java │ │ │ │ ├── Model.java │ │ │ │ └── loader │ │ │ │ ├── EngineModelLoader.java │ │ │ │ └── FixedTechneModelLoader.java │ │ └── world │ │ │ ├── WorldUtility.java │ │ │ ├── edit │ │ │ ├── BlockEdit.java │ │ │ ├── BlockEditMove.java │ │ │ ├── PlacementData.java │ │ │ ├── PlacementDataExtended.java │ │ │ ├── WorldChangeHelper.java │ │ │ └── sorter │ │ │ │ └── WorldEditSorter.java │ │ │ ├── generator │ │ │ ├── OreGenReplace.java │ │ │ ├── OreGenerator.java │ │ │ └── OreGeneratorSettings.java │ │ │ ├── map │ │ │ ├── block │ │ │ │ ├── ExtendedBlockDataManager.java │ │ │ │ └── ExtendedBlockDataMap.java │ │ │ ├── data │ │ │ │ ├── ChunkData.java │ │ │ │ ├── ChunkMap.java │ │ │ │ ├── ChunkMapManager.java │ │ │ │ └── s │ │ │ │ │ ├── ChunkDataShort.java │ │ │ │ │ └── ChunkSectionShort.java │ │ │ ├── fluid │ │ │ │ ├── FluidDataManager.java │ │ │ │ └── FluidMap.java │ │ │ ├── heat │ │ │ │ ├── HeatDataManager.java │ │ │ │ └── HeatMap.java │ │ │ ├── radar │ │ │ │ ├── RadarMap.java │ │ │ │ ├── RadarRegistry.java │ │ │ │ └── data │ │ │ │ │ ├── RadarEntity.java │ │ │ │ │ ├── RadarObject.java │ │ │ │ │ └── RadarTile.java │ │ │ ├── radiation │ │ │ │ ├── RadiationDataManager.java │ │ │ │ └── RadiationMap.java │ │ │ └── radio │ │ │ │ ├── RadioMap.java │ │ │ │ ├── RadioRegistry.java │ │ │ │ └── network │ │ │ │ └── WirelessNetwork.java │ │ │ └── schematic │ │ │ ├── Schematic.java │ │ │ ├── SchematicMap.java │ │ │ ├── SchematicRegistry.java │ │ │ └── StringSchematic.java │ │ └── testing │ │ ├── package-info.java │ │ └── tile │ │ ├── AbstractTileEntityTest.java │ │ └── AbstractTileTest.java │ └── resonant │ └── api │ ├── ITier.java │ ├── explosion │ ├── ExplosionEvent.java │ ├── ExplosiveType.java │ ├── IEMPBlock.java │ ├── IEMPItem.java │ ├── IEntityExplosion.java │ ├── IExplosion.java │ ├── IExplosive.java │ ├── IExplosiveContainer.java │ ├── IExplosiveIgnore.java │ ├── ILauncherContainer.java │ ├── ILauncherController.java │ ├── IMissile.java │ └── LauncherType.java │ └── weapon │ ├── IAmmunition.java │ └── ProjectileType.java ├── templates └── java │ └── com │ └── builtbroken │ └── mc │ └── codegen │ ├── asdsa │ ├── processor │ ├── ItemWrappedTemplate.java │ ├── ProcessorItemNode.java │ ├── ProcessorTileNode.java │ └── TileWrappedTemplate.java │ └── templates │ ├── item │ ├── ItemTemplate.java │ └── ItemWorldPos.java │ └── tile │ ├── TileTemplate.java │ ├── TileTemplateConnector.java │ ├── TileTemplateEnergy.java │ ├── TileTemplateExternalInventory.java │ ├── TileTemplateFluidTank.java │ └── TileTemplateMultiblock.java └── test ├── resources ├── assets │ └── voltzenginetest │ │ ├── models │ │ └── thing.obj │ │ └── textures │ │ └── items │ │ └── testTexture.png ├── content │ └── voltzenginetest │ │ └── test │ │ ├── block │ │ ├── Block.json │ │ ├── BlockInventory.json │ │ └── BlockTile.json │ │ ├── item │ │ ├── TestItem.json │ │ └── TestItemRender.json │ │ ├── recipes │ │ ├── TestCraftingRecipe.json │ │ ├── TestCraftingRecipeReplacement.json │ │ ├── TestCraftingRecipeWithOre.json │ │ ├── TestFurnaceRecipe.json │ │ └── TestOreName.json │ │ └── render │ │ └── TestRenderItem.json └── test │ ├── .local │ └── test.jar │ ├── [test]test │ └── test.jar │ ├── external │ ├── sub1 │ │ └── test.json │ ├── sub2 │ │ ├── subsub2 │ │ │ ├── test.jar │ │ │ └── test.json │ │ ├── test.jar │ │ └── test.json │ ├── test.jar │ └── test.json │ ├── test test │ └── test.jar │ ├── test-test │ └── test.jar │ ├── test.jar │ ├── test.json │ ├── test.test │ └── test.jar │ ├── test_test │ └── test.jar │ └── {test}test │ └── test.jar └── scala └── com └── builtbroken └── test ├── access └── TestAccessProfile.java ├── command └── TestAbstractCommand.java ├── core ├── TestCore.java ├── dep │ ├── MavenDepTest.java │ └── VersionTest.java └── package-info.java ├── json ├── FakeProcessor.java ├── TestForLoop.java ├── TestJsonLoader.java ├── TestJsonStringSorter.java ├── conversion │ ├── TestHashMapConverter.java │ └── TestPrimitiveConverters.java └── loader │ ├── InjectionTestClass.java │ ├── TestLoader.java │ └── TestProcessorInjection.java ├── lib ├── TestInventoryUtility.java └── world │ ├── edit │ └── TestBlockEdit.java │ ├── explosive │ ├── MainRadiusData.java │ ├── TestExplosiveItemRegistry.java │ └── TestExplosiveRegistry.java │ └── map │ ├── block │ └── TestExtendedBlockDataMap.java │ └── data │ ├── TestChunkDataShort.java │ └── TestChunkSectionShort.java ├── mod ├── ClientProxy.java ├── CommonProxy.java ├── EngineTestMod.java └── block │ └── TileEntityVETestBlock.java ├── prefab ├── blast │ └── TestBlastSimplePath.java ├── energy │ ├── TestEnergyBuffer.java │ ├── TestRFEnergyHandler.java │ ├── TestTEnergyHandler.java │ └── TileTEnergyHandler.scala ├── inventory │ └── BasicInventoryTest.java ├── recipe │ └── TestMRHItemStack.java └── tile │ └── TestTile.java ├── testing ├── TestTileEntityTestPrefab.java └── TestTileTestPrefab.java ├── transform ├── region │ ├── CuboidTest.java │ ├── RectangleTest.java │ └── TriangleTest.java └── vector │ ├── LocationTest.java │ ├── TestAbstractLocation.java │ ├── TestBlockPos.java │ ├── Vector3Sorter.java │ └── Vector3Test.java └── wrapper └── ItemStackWrapperTest.java /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Thank you for taking the time to report issues. 2 | Please follow the templete in order for us to help you better. 3 | We appriciate you taking time time to help fix bugs, request features etc. 4 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Minecraft Version: 2 | - 3 | Forge Version: 4 | - 5 | VoltzEngine Version: 6 | - 7 | *is this the latest curseforge build?* 8 | **Please Pastebin crash** 9 | --------------------- 10 | Crash Report: 11 | ---------- 12 | Explain issue in detail: 13 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Fixes # 2 | Changes you have proposed in this pull request: 3 | - 4 | - 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /bin 2 | /out 3 | /runs 4 | /run 5 | /src/genTest/gen 6 | *.classpath 7 | *.project 8 | .settings/ 9 | CREDITS-fml.txt 10 | LICENSE-fml.txt 11 | MinecraftForge-Credits.txt 12 | MinecraftForge-License.txt 13 | build/ 14 | eclipse/ 15 | forge-1.6.4-9.11.1.964-changelog.txt 16 | .gradle/ 17 | output/ 18 | .cache 19 | *.iml 20 | *.ipr 21 | *.iws 22 | *.idea/ 23 | logs/ 24 | html/downloads/ 25 | downloads/ 26 | *.xml 27 | VoltzEngine.txt 28 | APP-AuthTest/ 29 | CompiledWith.txt 30 | banned-ips.json 31 | banned-players.json 32 | ops.json 33 | whitelist.json 34 | libs/CodeChickenCore-1.7.10-1.0.7.47-dev.jar 35 | libs/CodeChickenLib-1.7.10-1.1.3.140-dev.jar 36 | libs/NotEnoughItems-1.7.10-1.0.5.118-dev.jar 37 | libs/Botania r1.7-229-deobf.jar 38 | libs/industrialcraft-2-2.2.817-experimental-api.jar 39 | libs/industrialcraft-2-2.2.817-experimental-dev.jar 40 | libs/industrialcraft-2-2.2.824-experimental-dev.jar 41 | libs/industrialcraft-2-2.2.824-experimental-api.jar 42 | tmp/ 43 | run2/ 44 | src/generated/ 45 | libs/ 46 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/.gitmodules -------------------------------------------------------------------------------- /RoomManager/src/com/builtbroken/room/data/DataHandler.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.room.data; 2 | 3 | import java.util.HashMap; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 2/21/2018. 8 | */ 9 | public class DataHandler 10 | { 11 | public HashMap rooms; 12 | 13 | public DataHandler() 14 | { 15 | rooms = new HashMap(); 16 | } 17 | 18 | public void loadData() 19 | { 20 | rooms.put(0, new Room("Funky Room", true)); 21 | rooms.put(1, new Room("Party Room", true)); 22 | rooms.put(2, new Room("Jazz Room", true)); 23 | rooms.put(3, new Room("Norm Room", true)); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /RoomManager/src/com/builtbroken/room/data/Room.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.room.data; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 2/21/2018. 6 | */ 7 | public class Room 8 | { 9 | public String name; 10 | public boolean isTaken; 11 | 12 | public Room(String name, boolean isTaken) 13 | { 14 | this.name = name; 15 | this.isTaken = isTaken; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /RoomManager/src/com/builtbroken/room/logic/Logic.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.room.logic; 2 | 3 | import com.builtbroken.room.data.DataHandler; 4 | import com.builtbroken.room.data.Room; 5 | 6 | import java.util.ArrayList; 7 | import java.util.List; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/21/2018. 12 | */ 13 | public class Logic 14 | { 15 | public DataHandler dataHandler; 16 | 17 | public Logic(DataHandler dataHandler) 18 | { 19 | this.dataHandler = dataHandler; 20 | } 21 | 22 | public List getEmptyRooms() 23 | { 24 | List rooms = new ArrayList(); 25 | 26 | //Get all rooms 27 | for(Room room : dataHandler.rooms.values()) 28 | { 29 | //Room is not taken 30 | if(!room.isTaken) 31 | { 32 | rooms.add(room); 33 | } 34 | } 35 | return rooms; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /desktop.ini: -------------------------------------------------------------------------------- 1 | [.ShellClassInfo] 2 | IconFile=folderIcon.ico 3 | IconResource=F:\github\1.7\VoltzEngine\folderIcon.ico,0 4 | -------------------------------------------------------------------------------- /engine.properties: -------------------------------------------------------------------------------- 1 | ext.version_major="1" 2 | ext.version_minor="11" 3 | ext.version_revis="0" 4 | ext.archivebase="VoltzEngine" 5 | ext.groupid="voltzengine" 6 | ext.org="builtbroken" 7 | ext.bbm_url="http://api.dmodoomsirius.me/" 8 | ext.coding_lib="com/builtbroken/codinglib" 9 | ext.CL_name="CodingLib" 10 | ext.CL_major="0" 11 | ext.CL_minor="2" 12 | ext.CL_revis="8" 13 | ext.CL_build="50" 14 | ext.coremod="com.builtbroken.mc.core.EngineCoreMod" 15 | ext.url="http://builtbroken.com/" 16 | ext.description="VoltzEngine is a framework with shared libaries and content to help build a solid foundation for high quality mods." 17 | ext.coremod="com.builtbroken.mc.core.EngineCoreMod" 18 | ext.cofhlib_version="[1.7.10]1.0.2-160-dev" 19 | ext.cofhcore_version="[1.7.10]3.0.2-262-dev" 20 | ext.rars_version="[1.7.10]1.1.0-80-dev" 21 | ext.texpansion_version="[1.7.10]4.0.0-176-dev" 22 | ext.tfoundation_version="[1.7.10]1.0.0-81-dev" 23 | ext.startGitRev="5a7b4f1" 24 | -------------------------------------------------------------------------------- /folderIcon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/folderIcon.ico -------------------------------------------------------------------------------- /html/settings.config: -------------------------------------------------------------------------------- 1 | # 2 | #Thu Jan 01 03:07:08 EST 2015 3 | adfly=2380428 4 | maven=ci.dmodoomsirius.me/maven 5 | group=dev.builtbroken.voltzengine 6 | id=VoltzEngine 7 | -------------------------------------------------------------------------------- /runConfigs.txt: -------------------------------------------------------------------------------- 1 | Client 2 | 3 | VM args: -Xincgc -Xmx1024M -Xms1024M -XX:MaxPermSize=128m -XX:+CMSClassUnloadingEnabled -Ddevelopment=true 4 | 5 | 6 | 7 | Server 8 | 9 | VM args: -Xincgc -Dfml.ignoreInvalidMinecraftCertificates=true -XX:MaxPermSize=128m -XX:+CMSClassUnloadingEnabled -Ddevelopment=true -------------------------------------------------------------------------------- /settings/settings.config: -------------------------------------------------------------------------------- 1 | # 2 | #Sun Aug 16 21:03:51 EDT 2015 3 | adfly=2380428 4 | maven=ci.dmodoomsirius.me/maven 5 | group=dev.builtbroken.voltzengine 6 | output_location=html 7 | id=VoltzEngine 8 | 9 | -------------------------------------------------------------------------------- /src/archive/grid/GridTicking.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.grid; 2 | 3 | import com.builtbroken.mc.api.IUpdate; 4 | import com.builtbroken.mc.prefab.tile.module.TileModule; 5 | 6 | public class GridTicking extends Grid implements IUpdate { 7 | 8 | public GridTicking(Class node) 9 | { 10 | super(node); 11 | } 12 | 13 | @Override 14 | public void add(N node) 15 | { 16 | super.add(node); 17 | if(getNodes().size() > 0) 18 | { 19 | // TODO UpdateTicker.threaded().addUpdater(this); 20 | } 21 | } 22 | 23 | @Override 24 | public boolean update() 25 | { 26 | for(N node : this.getNodes()) 27 | { 28 | if(node instanceof IUpdate) 29 | { 30 | ((IUpdate) node).update(); 31 | } 32 | } 33 | return getNodes().size() > 0; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/archive/grid/electric/part/BranchElectric.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.grid.electric.part 2 | 3 | import com.builtbroken.mc.lib.grid.branch.part.Branch 4 | 5 | /** 6 | * Created by robert on 11/17/2014. 7 | */ 8 | class BranchElectric extends Branch with TElectricPart 9 | { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/archive/grid/electric/part/JunctionElectric.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.grid.electric.part 2 | 3 | import com.builtbroken.mc.lib.grid.branch.part.Junction 4 | 5 | /** 6 | * Created by robert on 11/17/2014. 7 | */ 8 | class JunctionElectric extends Junction with TElectricPart 9 | { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/archive/grid/electric/part/TElectricPart.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.grid.electric.part 2 | 3 | import com.builtbroken.mc.lib.grid.branch.NodeBranchPart 4 | import com.builtbroken.mc.lib.grid.branch.part.Part 5 | import com.builtbroken.mc.lib.grid.electric.NodeElectric 6 | import scala.collection.JavaConversions._ 7 | 8 | /** 9 | * Created by robert on 11/17/2014. 10 | */ 11 | trait TElectricPart extends Part 12 | { 13 | var resistance : Double = 0 14 | 15 | def getResistance(): Double = return resistance 16 | 17 | /** Calculates resistance of the part */ 18 | def calculateResistance() 19 | { 20 | resistance = 0 21 | for(node: NodeBranchPart <- getEcapsulatedNodes) 22 | { 23 | if(node.isInstanceOf[NodeElectric]) 24 | { 25 | resistance += node.asInstanceOf[NodeElectric].getResistance 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/archive/grid/node/NodeEnergy.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.grid.node 2 | 3 | import com.builtbroken.mc.api.tile.ITileModuleProvider 4 | import com.builtbroken.mc.lib.grid.energy.EnergyStorage 5 | import com.builtbroken.mc.prefab.TEnergyBuffer 6 | 7 | /** Node which acts like glorified battery for storing energy. 8 | */ 9 | abstract class NodeEnergy[A <: AnyRef](parent:ITileModuleProvider) extends NodeConnector[A](parent) with TEnergyBuffer 10 | { 11 | var buffer : EnergyStorage = new EnergyStorage(); 12 | 13 | /** Current energy value of the node 14 | * defaults to buffer.getEnergy() 15 | * @deprecated use getEnergy() so we fit with standards 16 | * @return energy as a double 17 | */ 18 | @Deprecated 19 | def energy : Double = getEnergyStorage.getEnergy 20 | 21 | /** Current Watts value of the node 22 | * defaults to buffer.getEnergy() 23 | * @deprecated use getEnergy() so we fit with standards 24 | * @return energy as a double 25 | */ 26 | @Deprecated 27 | def power : Double = getEnergyStorage.getEnergy 28 | 29 | override def getEnergyStorage(): EnergyStorage = buffer 30 | 31 | } -------------------------------------------------------------------------------- /src/archive/grid/test/grid/GridTest.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.test.grid; 2 | 3 | import junit.framework.TestCase; 4 | 5 | /** 6 | * Created by robert on 11/13/2014. 7 | */ 8 | public class GridTest extends TestCase 9 | { 10 | public void testNothing() {} 11 | } 12 | -------------------------------------------------------------------------------- /src/genTest/java/com/builtbroken/mc/codegen/tests/TileFluidTank.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.tests; 2 | 3 | import com.builtbroken.mc.api.tile.provider.ITankProvider; 4 | import com.builtbroken.mc.codegen.annotations.TileWrapped; 5 | import com.builtbroken.mc.framework.logic.TileNode; 6 | import net.minecraftforge.fluids.Fluid; 7 | import net.minecraftforge.fluids.FluidTank; 8 | import net.minecraftforge.fluids.IFluidTank; 9 | 10 | /** 11 | * @see License for what you can and can't do with the code. 12 | * Created by Dark(DarkGuardsman, Robert) on 4/1/2017. 13 | */ 14 | @TileWrapped(className = ".tile.TileEntityWrapperTestTank", wrappers = "TankProvider") 15 | public class TileFluidTank extends TileNode implements ITankProvider 16 | { 17 | protected FluidTank tank; 18 | 19 | public TileFluidTank() 20 | { 21 | super("tile.test.fluid", "null"); 22 | } 23 | 24 | @Override 25 | public IFluidTank getTankForFluid(Fluid fluid) 26 | { 27 | if(tank == null) 28 | { 29 | tank = new FluidTank(1000); 30 | } 31 | return tank; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/genTest/java/com/builtbroken/mc/codegen/tests/TileTestEmpty.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.tests; 2 | 3 | import com.builtbroken.mc.framework.logic.TileNode; 4 | import com.builtbroken.mc.codegen.annotations.TileWrapped; 5 | 6 | /** 7 | * Test tile to see if {@link com.builtbroken.mc.codegen.Main} functions correctly for tile processing 8 | * 9 | * @see License for what you can and can't do with the code. 10 | * Created by Dark(DarkGuardsman, Robert) on 3/31/2017. 11 | */ 12 | @TileWrapped(className = ".tile.TileEntityWrapperTestEmpty") 13 | public final class TileTestEmpty extends TileNode 14 | { 15 | public TileTestEmpty() 16 | { 17 | super("tile.test", "null"); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/lang/et_EE.lang: -------------------------------------------------------------------------------- 1 | # Resonant Engine Language Properties 2 | # @author tambre 3 | 4 | death.attack.electrocution=%1$s sai elektrilöögi! 5 | 6 | ## Creative Testing Blocks 7 | tile.resonant:creativeBuilder.name=Loominguline ehitaja 8 | tile.resonant:infiniteEnergy.name=Lõpmatu energia 9 | tile.resonant:infiniteFluid.name=Lõpmatu vedelik 10 | 11 | ## Tools 12 | toolmode.mode=Mood: 13 | toolmode.general.name=Üldine 14 | toolmode.rotation.name=Pööramine 15 | 16 | # Items 17 | item.resonant:screwdriver.name=Kruvikeeraja 18 | item.resonant:screwdriver.tooltip=Kasutatud plokkide konfigureerimiseks. Shift-parem klikki moodi vahetamiseks. 19 | 20 | #Misc 21 | # %0 goes before the localized name of the shift key, %1 goes after 22 | tooltip.noShift=Hoia #0shift#1 Rohkema informatsiooni jaoks 23 | info.recipes.tooltip=Hoia #0J#1 Et näha vajalikke materjale 24 | 25 | info.energylevel.waila=Hetke energia tase 26 | info.energycapacity.waila=Maksimaalne energia tase 27 | -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/models/tool-table.mtl: -------------------------------------------------------------------------------- 1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware 2 | # File Created: 08.04.2016 10:21:08 3 | 4 | newmtl Material__2 5 | Ns 10.0000 6 | Ni 1.5000 7 | d 1.0000 8 | Tr 0.0000 9 | Tf 1.0000 1.0000 1.0000 10 | illum 2 11 | Ka 0.5880 0.5880 0.5880 12 | Kd 0.5880 0.5880 0.5880 13 | Ks 0.0000 0.0000 0.0000 14 | Ke 0.0000 0.0000 0.0000 15 | map_Ka C:\Users\Adam Morton\Google Drive\Minecraft\BuiltBroken\Minecraft\Requests\Morton\Models\missiles\small\small-workshop-table.png 16 | map_Kd C:\Users\Adam Morton\Google Drive\Minecraft\BuiltBroken\Minecraft\Requests\Morton\Models\missiles\small\small-workshop-table.png 17 | -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/40%grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/40%grey.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/infiniteEnergy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/infiniteEnergy.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/infiniteFluid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/infiniteFluid.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/infiniteInventory.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/infiniteInventory.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/metal_block.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/metal_block.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/metal_brick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/metal_brick.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/metal_diamond.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/metal_diamond.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/metal_grate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/metal_grate.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_amazonite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_amazonite.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_bauxite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_bauxite.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_copper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_copper.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetgreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetgreen.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetorange.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetorange.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetred.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetred.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetyellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_garnetyellow.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_lead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_lead.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_magnesite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_magnesite.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_nickel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_nickel.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_onyxblack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_onyxblack.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_onyxred.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_onyxred.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_platinum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_platinum.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_ruby.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_ruby.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_sapphire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_sapphire.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_silver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_silver.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_smokeyquartz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_smokeyquartz.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_tin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_tin.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_titanium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_titanium.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_uranium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_uranium.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/blocks/stone/ore_zinc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/blocks/stone/ore_zinc.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.demon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.demon.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.ender.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.ender.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.fire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.fire.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.tnt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.tnt.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/entity/bat.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/entity/bat.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/fadedSphere.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/fadedSphere.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/grey.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/9px_buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/9px_buttons.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/9px_buttons.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/9px_buttons.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/book.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/crafting_table_4x4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/crafting_table_4x4.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/crafting_table_4x4.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/crafting_table_4x4.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_base.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_components.bars.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_components.bars.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_components.bars.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_components.bars.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_components.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_components.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_components.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_components.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_empty.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/gui_slots.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/gui_slots.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/mc_base.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/mc_base.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/gui/mc_base_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/gui/mc_base_empty.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/blank.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/circuitAdvanced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/circuitAdvanced.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/circuitBasic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/circuitBasic.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/circuitElite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/circuitElite.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/copperCoil.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/copperCoil.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/copperCoilStepper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/copperCoilStepper.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/dcMotor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/dcMotor.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/devDataTool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/devDataTool.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/devStaff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/devStaff.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/dust.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/dust.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/dustImpure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/dustImpure.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/dustImpure_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/dustImpure_overlay.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.creeper_head.old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.creeper_head.old.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.creeper_head.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.creeper_head.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.gunpowder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.gunpowder.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.missing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.missing.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.tnt.blank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.tnt.blank.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ex.icon.tnt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ex.icon.tnt.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gear.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.amazonite.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.amazonite.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.garnet.green.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.garnet.green.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.garnet.orange.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.garnet.orange.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.garnet.red.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.garnet.red.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.garnet.yellow.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.garnet.yellow.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.onyx.black.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.onyx.black.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.onyx.red.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.onyx.red.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.quartz.smoky.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.quartz.smoky.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.ruby.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.ruby.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gem.sapphire.uncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gem.sapphire.uncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemShape_emerald.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemShape_emerald.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemShape_onyx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemShape_onyx.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemShape_quartz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemShape_quartz.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemShape_ruby.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemShape_ruby.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemUncut.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemUncut.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/gemUncut_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/gemUncut_overlay.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/handCrank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/handCrank.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/handle_main.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/handle_main.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/handle_spade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/handle_spade.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/handle_sword.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/handle_sword.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/head_axe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/head_axe.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/head_hoe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/head_hoe.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/head_pick.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/head_pick.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/head_spade.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/head_spade.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/head_sword.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/head_sword.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/hilt_sword.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/hilt_sword.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ingot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ingot.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/insulation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/insulation.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/ironCutters.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/ironCutters.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/manual.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/manual.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/manual.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/manual.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/motor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/motor.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/nugget.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/nugget.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/plate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/plate.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/rivets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/rivets.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/rod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/rod.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/rubble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/rubble.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/screw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/screw.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cone.medium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cone.medium.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cone.micro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cone.micro.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cone.small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cone.small.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.curve.1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.curve.1.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.curve.2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.curve.2.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.curve.3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.curve.3.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.curve.4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.curve.4.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.half.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.half.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.cylinder.small.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.eighth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.eighth.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.fin.micro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.fin.micro.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.fin.small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.fin.small.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.half.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.half.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.quarter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.quarter.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.third.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.third.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheet.triangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheet.triangle.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheetMetalHammer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheetMetalHammer.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/sheetMetalShears.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/sheetMetalShears.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/stepperMotor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/stepperMotor.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/stoneChisel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/stoneChisel.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/stoneDrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/stoneDrill.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/stoneFile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/stoneFile.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/stoneHammer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/stoneHammer.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wire.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wire.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.fluid.color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.fluid.color.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.fluid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.fluid.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.item.color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.item.color.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.item.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.item.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.power.color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.power.color.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.power.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.power.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.redstone.color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.redstone.color.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.redstone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.redstone.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.rotation.color.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.rotation.color.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.rotation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.rotation.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/items/wrench/wrench.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/items/wrench/wrench.xcf -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/laser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/laser.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/models/tool-table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/models/tool-table.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/noise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/noise.png -------------------------------------------------------------------------------- /src/main/resources/assets/voltzengine/textures/particle/soft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/main/resources/assets/voltzengine/textures/particle/soft.png -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/assets/models.json: -------------------------------------------------------------------------------- 1 | { 2 | "model": { 3 | "key": "voltzengine:toolTable", 4 | "domain": "voltzengine", 5 | "name": "tool-table.obj" 6 | } 7 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/assets/textures.json: -------------------------------------------------------------------------------- 1 | { 2 | "texture": { 3 | "key": "voltzengine:toolTable", 4 | "domain": "voltzengine", 5 | "name": "tool-table", 6 | "type": "model" 7 | }, 8 | "texture:1": { 9 | "key": "voltzengine:rubble", 10 | "domain": "voltzengine", 11 | "name": "rubble", 12 | "type": "item" 13 | } 14 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/debug/TileInfInv.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "voltzengine" 4 | }, 5 | "loadCondition": "devMode", 6 | "block": { 7 | "name": "inventory.infinite", 8 | "id": "infInv", 9 | "mod": "voltzengine", 10 | "material": "iron", 11 | "tileEntity": { 12 | "id": "infInv", 13 | "class": "com.builtbroken.mc.core.content.debug.TileEntityWrappedInfInv" 14 | } 15 | }, 16 | "render": { 17 | "contentID": "voltzengine:infInv", 18 | "type": "block", 19 | "states": [ 20 | { 21 | "id": "block", 22 | "renderType": "block", 23 | "texture": { 24 | "domain": "voltzengine", 25 | "name": "infiniteInventory" 26 | } 27 | } 28 | ] 29 | } 30 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/nei/hiddenItems.json: -------------------------------------------------------------------------------- 1 | { 2 | "hideItem:0": "block@voltzengine:veMultiBlock", 3 | "hideItem:1": "block@voltzengine:VEHeatedRock" 4 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/oredictionary.json: -------------------------------------------------------------------------------- 1 | { 2 | "oreName": { 3 | "name": "gunpowder", 4 | "item": "minecraft:gunpowder" 5 | }, 6 | "oreName:1": { 7 | "name": "string", 8 | "item": "minecraft:string" 9 | }, 10 | "oreName:2": { 11 | "name": "flint", 12 | "item": "minecraft:flint" 13 | } 14 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/ores/metal/recipes.json: -------------------------------------------------------------------------------- 1 | { 2 | "furnaceRecipe": { 3 | "forEach": { 4 | "values": [ 5 | { 6 | "id": "Tin" 7 | }, 8 | { 9 | "id": "Copper" 10 | }, 11 | { 12 | "id": "Silver" 13 | }, 14 | { 15 | "id": "Lead" 16 | }, 17 | { 18 | "id": "Zinc" 19 | }, 20 | { 21 | "id": "Nickel" 22 | }, 23 | { 24 | "id": "Bauxite" 25 | }, 26 | { 27 | "id": "Magnesite" 28 | }, 29 | { 30 | "id": "Uranium" 31 | }, 32 | { 33 | "id": "Platinum" 34 | } 35 | ], 36 | "data": { 37 | "input": { 38 | "item": "block@voltzengine:veStoneOre", 39 | "meta": "%id%" 40 | }, 41 | "output": "ore@ingot%id%" 42 | } 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /src/main/resources/content/voltzengine/ores/metal/render.json: -------------------------------------------------------------------------------- 1 | { 2 | "render": { 3 | "contentID": "voltzengine:veStoneOre", 4 | "type": "block", 5 | "states": [ 6 | { 7 | "forEach": { 8 | "values": [ 9 | { 10 | "id": "tin" 11 | }, 12 | { 13 | "id": "copper" 14 | }, 15 | { 16 | "id": "silver" 17 | }, 18 | { 19 | "id": "lead" 20 | }, 21 | { 22 | "id": "zinc" 23 | }, 24 | { 25 | "id": "nickel" 26 | }, 27 | { 28 | "id": "bauxite" 29 | }, 30 | { 31 | "id": "magnesite" 32 | }, 33 | { 34 | "id": "uranium" 35 | }, 36 | { 37 | "id": "platinum" 38 | } 39 | ], 40 | "data": { 41 | "id": "%id%", 42 | "renderType": "block", 43 | "texture": { 44 | "domain": "voltzengine", 45 | "name": "stone/ore_%id%" 46 | } 47 | } 48 | } 49 | } 50 | ] 51 | } 52 | } -------------------------------------------------------------------------------- /src/main/resources/mcmod.info: -------------------------------------------------------------------------------- 1 | [{ 2 | "modid": "VoltzEngine", 3 | "name": "${modname}", 4 | "description": "${description}", 5 | "version": "${version}", 6 | "mcversion": "${mcversion}", 7 | "url": "${url}", 8 | "updateUrl": "", 9 | "authors": ["DarkCow"], 10 | "credits": "Calcalvia, Alex_hawks, Tgame14, Dmod, Hangcow, etc.. will add the rest later", 11 | "logoFile": "", 12 | "screenshots": [], 13 | "parent": "", 14 | "requiredMods": [], 15 | "dependencies": [], 16 | "dependants": [], 17 | "useDependencyInformation": "false" 18 | }] 19 | -------------------------------------------------------------------------------- /src/main/scala/buildcraft/api/tools/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2011-2014, SpaceToad and the BuildCraft Team 3 | * http://www.mod-buildcraft.com 4 | * 5 | * BuildCraft is distributed under the terms of the Minecraft Mod Public 6 | * License 1.0, or MMPL. Please check the contents of the license located in 7 | * http://www.mod-buildcraft.com/MMPL-1.0.txt 8 | */ 9 | @API(apiVersion = "1.0", owner = "BuildCraftAPI|core", provides = "BuildCraftAPI|tools") 10 | package buildcraft.api.tools; 11 | import cpw.mods.fml.common.API; 12 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/CoFHAPIProps.java: -------------------------------------------------------------------------------- 1 | package cofh.api; 2 | 3 | public class CoFHAPIProps { 4 | 5 | private CoFHAPIProps() { 6 | 7 | } 8 | 9 | public static final String VERSION = "1.7.10R1.0.10"; 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/energy/IEnergyConnection.java: -------------------------------------------------------------------------------- 1 | package cofh.api.energy; 2 | 3 | import net.minecraftforge.common.util.ForgeDirection; 4 | 5 | /** 6 | * Implement this interface on TileEntities which should connect to energy transportation blocks. This is intended for blocks which generate energy but do not 7 | * accept it; otherwise just use IEnergyHandler. 8 | *

9 | * Note that {@link IEnergyHandler} is an extension of this. 10 | * 11 | * @author King Lemming 12 | * 13 | */ 14 | public interface IEnergyConnection { 15 | 16 | /** 17 | * Returns TRUE if the TileEntity can connect on a given side. 18 | */ 19 | boolean canConnectEnergy(ForgeDirection from); 20 | 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/energy/IEnergyProvider.java: -------------------------------------------------------------------------------- 1 | package cofh.api.energy; 2 | 3 | import net.minecraftforge.common.util.ForgeDirection; 4 | 5 | /** 6 | * Implement this interface on Tile Entities which should provide energy, generally storing it in one or more internal {@link IEnergyStorage} objects. 7 | *

8 | * A reference implementation is provided {@link TileEnergyHandler}. 9 | * 10 | * @author King Lemming 11 | * 12 | */ 13 | public interface IEnergyProvider extends IEnergyConnection { 14 | 15 | /** 16 | * Remove energy from an IEnergyProvider, internal distribution is left entirely to the IEnergyProvider. 17 | * 18 | * @param from 19 | * Orientation the energy is extracted from. 20 | * @param maxExtract 21 | * Maximum amount of energy to extract. 22 | * @param simulate 23 | * If TRUE, the extraction will only be simulated. 24 | * @return Amount of energy that was (or would have been, if simulated) extracted. 25 | */ 26 | int extractEnergy(ForgeDirection from, int maxExtract, boolean simulate); 27 | 28 | /** 29 | * Returns the amount of energy currently stored. 30 | */ 31 | int getEnergyStored(ForgeDirection from); 32 | 33 | /** 34 | * Returns the maximum amount of energy that can be stored. 35 | */ 36 | int getMaxEnergyStored(ForgeDirection from); 37 | 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/energy/IEnergyReceiver.java: -------------------------------------------------------------------------------- 1 | package cofh.api.energy; 2 | 3 | import net.minecraftforge.common.util.ForgeDirection; 4 | 5 | /** 6 | * Implement this interface on Tile Entities which should receive energy, generally storing it in one or more internal {@link IEnergyStorage} objects. 7 | *

8 | * A reference implementation is provided {@link TileEnergyHandler}. 9 | * 10 | * @author King Lemming 11 | * 12 | */ 13 | public interface IEnergyReceiver extends IEnergyConnection { 14 | 15 | /** 16 | * Add energy to an IEnergyReceiver, internal distribution is left entirely to the IEnergyReceiver. 17 | * 18 | * @param from 19 | * Orientation the energy is received from. 20 | * @param maxReceive 21 | * Maximum amount of energy to receive. 22 | * @param simulate 23 | * If TRUE, the charge will only be simulated. 24 | * @return Amount of energy that was (or would have been, if simulated) received. 25 | */ 26 | int receiveEnergy(ForgeDirection from, int maxReceive, boolean simulate); 27 | 28 | /** 29 | * Returns the amount of energy currently stored. 30 | */ 31 | int getEnergyStored(ForgeDirection from); 32 | 33 | /** 34 | * Returns the maximum amount of energy that can be stored. 35 | */ 36 | int getMaxEnergyStored(ForgeDirection from); 37 | 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/energy/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * (C) 2014 Team CoFH / CoFH / Cult of the Full Hub 3 | * http://www.teamcofh.com 4 | */ 5 | @API(apiVersion = CoFHAPIProps.VERSION, owner = "CoFHAPI", provides = "CoFHAPI|energy") 6 | package cofh.api.energy; 7 | 8 | import cofh.api.CoFHAPIProps; 9 | import cpw.mods.fml.common.API; 10 | 11 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/item/IEmpowerableItem.java: -------------------------------------------------------------------------------- 1 | package cofh.api.item; 2 | 3 | import net.minecraft.entity.player.EntityPlayer; 4 | import net.minecraft.item.ItemStack; 5 | 6 | /** 7 | * Implement this interface on Item classes which may be "Empowered" - what that means is completely up to you. This just provides a uniform way of dealing with 8 | * them. 9 | * 10 | * @author King Lemming 11 | * 12 | */ 13 | public interface IEmpowerableItem { 14 | 15 | /** 16 | * Check whether or not a given item is currently in an empowered state. 17 | */ 18 | boolean isEmpowered(ItemStack stack); 19 | 20 | /** 21 | * Attempt to set the empowered state of the item. 22 | * 23 | * @param stack 24 | * ItemStack to be empowered/disempowered. 25 | * @param state 26 | * Desired state. 27 | * @return TRUE if the operation was successful, FALSE if it was not. 28 | */ 29 | boolean setEmpoweredState(ItemStack stack, boolean state); 30 | 31 | /** 32 | * Callback method for reacting to a state change. Useful in KeyBinding handlers. 33 | * 34 | * @param player 35 | * Player holding the item, if applicable. 36 | * @param stack 37 | * The item being held. 38 | */ 39 | void onStateChange(EntityPlayer player, ItemStack stack); 40 | 41 | } 42 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/item/IInventoryContainerItem.java: -------------------------------------------------------------------------------- 1 | package cofh.api.item; 2 | 3 | import net.minecraft.item.ItemStack; 4 | 5 | /** 6 | * Implement this interface on Item classes that are themselves inventories. 7 | * 8 | * A reference implementation is provided {@link ItemInventoryContainer}. 9 | * 10 | * @author King Lemming 11 | * 12 | */ 13 | public interface IInventoryContainerItem { 14 | 15 | /** 16 | * Get the size of this inventory of this container item. 17 | */ 18 | int getSizeInventory(ItemStack container); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/item/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * (C) 2014 Team CoFH / CoFH / Cult of the Full Hub 3 | * http://www.teamcofh.com 4 | */ 5 | @API(apiVersion = CoFHAPIProps.VERSION, owner = "CoFHAPI", provides = "CoFHAPI|item") 6 | package cofh.api.item; 7 | 8 | import cofh.api.CoFHAPIProps; 9 | import cpw.mods.fml.common.API; 10 | 11 | -------------------------------------------------------------------------------- /src/main/scala/cofh/api/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * (C) 2014 Team CoFH / CoFH / Cult of the Full Hub 3 | * http://www.teamcofh.com 4 | */ 5 | @API(apiVersion = CoFHAPIProps.VERSION, owner = "CoFHLib", provides = "CoFHAPI") 6 | package cofh.api; 7 | 8 | import cpw.mods.fml.common.API; 9 | 10 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/imp/IEffectData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.imp; 2 | 3 | import net.minecraft.nbt.NBTTagCompound; 4 | import net.minecraft.world.World; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 4/12/2017. 9 | */ 10 | public interface IEffectData 11 | { 12 | default void trigger(World world, double x, double y, double z, double mx, double my, double mz, boolean endPoint) 13 | { 14 | trigger(world, x, y, z, mx, my, mz, endPoint, getNbt()); 15 | } 16 | 17 | default void trigger(World world, double x, double y, double z, double mx, double my, double mz, boolean endPoint, NBTTagCompound nbt) 18 | { 19 | 20 | } 21 | 22 | default NBTTagCompound getNbt() 23 | { 24 | return new NBTTagCompound(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/models/cube/BlockModelJsonProcessor.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.models.cube; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 5 | import com.google.gson.JsonElement; 6 | 7 | /** 8 | * Handles loading block model 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 5/2/2018. 12 | */ 13 | public class BlockModelJsonProcessor extends JsonProcessor 14 | { 15 | public BlockModelJsonProcessor() 16 | { 17 | super(BlockModelData.class); 18 | } 19 | 20 | @Override 21 | public String getMod() 22 | { 23 | return References.DOMAIN; 24 | } 25 | 26 | @Override 27 | public String getJsonKey() 28 | { 29 | return "cubeModel"; 30 | } 31 | 32 | @Override 33 | public String getLoadOrder() 34 | { 35 | return null; 36 | } 37 | 38 | @Override 39 | public BlockModelData process(JsonElement element) 40 | { 41 | return new BlockModelData(this); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/render/item/RenderStateItem.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.render.item; 2 | 3 | import com.builtbroken.mc.client.json.render.state.RenderStateTexture; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 9/5/2017. 8 | */ 9 | public class RenderStateItem extends RenderStateTexture 10 | { 11 | public RenderStateItem(String id) 12 | { 13 | super(id); 14 | } 15 | 16 | @Override 17 | public String toString() 18 | { 19 | return "RenderItemState[" + id + ", " + getTextureID() + "]@" + hashCode(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/render/processor/ItemStateJsonProcessor.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.render.processor; 2 | 3 | import com.builtbroken.mc.client.json.render.item.RenderStateItem; 4 | import com.builtbroken.mc.client.json.texture.TextureData; 5 | import com.google.gson.JsonObject; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 5/13/2017. 10 | */ 11 | public class ItemStateJsonProcessor extends RenderJsonSubProcessor 12 | { 13 | public ItemStateJsonProcessor() 14 | { 15 | super(TextureData.Type.ITEM); 16 | } 17 | 18 | @Override 19 | public RenderStateItem process(JsonObject renderStateObject, String stateID, String globalRenderType, String subRenderType) 20 | { 21 | return new RenderStateItem(stateID); 22 | } 23 | 24 | @Override 25 | public boolean canProcess(String type) 26 | { 27 | return "item".equals(type); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/render/tile/RenderStateTile.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.render.tile; 2 | 3 | import com.builtbroken.mc.client.json.render.state.ModelState; 4 | import com.builtbroken.mc.imp.transform.rotation.EulerAngle; 5 | import com.builtbroken.mc.imp.transform.vector.Pos; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 4/4/2017. 10 | */ 11 | public class RenderStateTile extends ModelState 12 | { 13 | public RenderStateTile(String ID) 14 | { 15 | super(ID); 16 | } 17 | 18 | public RenderStateTile(String ID, String modelID, Pos offset, Pos scale, EulerAngle rotation) 19 | { 20 | super(ID, modelID, offset, scale, rotation); 21 | } 22 | 23 | @Override 24 | public String toString() 25 | { 26 | return "RenderStateTile[" + id + "]@" + hashCode(); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/client/json/render/tile/TileRenderData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.client.json.render.tile; 2 | 3 | import com.builtbroken.mc.client.json.render.RenderData; 4 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 5 | import net.minecraft.tileentity.TileEntity; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 4/4/2017. 10 | */ 11 | public class TileRenderData extends RenderData 12 | { 13 | public Class tileClass; 14 | public TileRenderData(IJsonProcessor processor, String contentID, String type) 15 | { 16 | super(processor, contentID, type); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/codegen/annotations/ItemWrapped.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.annotations; 2 | 3 | import com.builtbroken.mc.framework.item.ItemNode; 4 | 5 | /** 6 | * Applied to {@link ItemNode} to add support for {@link net.minecraft.item.Item} interfaces 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 5/9/2017. 10 | */ 11 | public @interface ItemWrapped 12 | { 13 | /** File name to use for the class */ 14 | String className(); 15 | 16 | /** Wrappers to use during processing */ 17 | String wrappers() default ""; 18 | } 19 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/codegen/annotations/TileWrapped.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.annotations; 2 | 3 | import com.builtbroken.mc.api.tile.node.ITileNode; 4 | 5 | import java.lang.annotation.Retention; 6 | import java.lang.annotation.RetentionPolicy; 7 | 8 | /** 9 | * Applied to instances of {@link ITileNode} so that a TileEntityWrapper 10 | * can be created for the tile. 11 | * 12 | * @see License for what you can and can't do with the code. 13 | * Created by Dark(DarkGuardsman, Robert) on 3/31/2017. 14 | */ 15 | @Retention(RetentionPolicy.SOURCE) 16 | public @interface TileWrapped 17 | { 18 | /** File name to use for the class */ 19 | String className(); 20 | 21 | /** Wrappers to use during processing */ 22 | String wrappers() default ""; 23 | } 24 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/ConfigValues.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 8/12/2017. 6 | */ 7 | public class ConfigValues 8 | { 9 | public static boolean enableExtendedMetaPacketSync = true; 10 | public static boolean log_registering_explosives = false; 11 | } 12 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/EnginePreloader.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core; 2 | 3 | import com.google.common.eventbus.EventBus; 4 | 5 | import cpw.mods.fml.common.DummyModContainer; 6 | import cpw.mods.fml.common.LoadController; 7 | import cpw.mods.fml.common.ModMetadata; 8 | 9 | /** 10 | * Loads a lot of content before all other mods have even started loading. Handles downloading 11 | * of missing files, and setup of file structures. 12 | * Created by Dark on 9/7/2015. 13 | */ 14 | public class EnginePreloader extends DummyModContainer 15 | { 16 | public static final String version = "0.0.1"; 17 | private static final ModMetadata md; 18 | 19 | static 20 | { 21 | md = new ModMetadata(); 22 | md.modId = "voltzenginepreloader"; 23 | md.name = "Voltz Engine Preloader"; 24 | md.version = version; 25 | } 26 | 27 | public EnginePreloader() 28 | { 29 | super(md); 30 | } 31 | 32 | @Override 33 | public boolean registerBus(EventBus bus, LoadController controller) 34 | { 35 | return true; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/asm/ChunkSetBlockEvent.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.asm; 2 | 3 | import net.minecraft.block.Block; 4 | import net.minecraft.world.chunk.Chunk; 5 | import net.minecraftforge.event.world.ChunkEvent; 6 | 7 | /** 8 | * Simple Event fired when a chunk is modified with a set block event 9 | * Created by robert on 2/19/2015. 10 | */ 11 | public class ChunkSetBlockEvent extends ChunkEvent 12 | { 13 | public final int x, y, z; 14 | public final Block block; 15 | public final int meta; 16 | 17 | 18 | public ChunkSetBlockEvent(Chunk chunk, int x, int y, int z, Block block, int meta) 19 | { 20 | super(chunk); 21 | this.x = x; 22 | this.y = y; 23 | this.z = z; 24 | this.block = block; 25 | this.meta = meta; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/asm/StaticForwarder.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.asm; 2 | 3 | import net.minecraft.block.Block; 4 | import net.minecraft.world.chunk.Chunk; 5 | import net.minecraftforge.common.MinecraftForge; 6 | 7 | /** 8 | * @author Calclavia 9 | */ 10 | public class StaticForwarder 11 | { 12 | public static void chunkSetBlockEvent(Chunk chunk, int x, int y, int z, Block block, int blockMetadata) 13 | { 14 | MinecraftForge.EVENT_BUS.post(new ChunkSetBlockEvent(chunk, x, y, z, block, blockMetadata)); 15 | } 16 | } -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/asm/template/ITemplateCalls.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.asm.template; 2 | 3 | /** 4 | * Applied to templates that may need additional calls in order to function 5 | * 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 8/11/2016. 8 | */ 9 | public interface ITemplateCalls 10 | { 11 | /** Called when tile loads into the world */ 12 | default void load(Object tile) 13 | { 14 | } 15 | 16 | /** Called when tile unloads fromt the world */ 17 | default void unload(Object tile) 18 | { 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/commands/ext/SubCommandWithName.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.commands.ext; 2 | 3 | import com.builtbroken.mc.core.commands.prefab.SubCommand; 4 | import net.minecraft.command.ICommandSender; 5 | import net.minecraft.entity.player.EntityPlayer; 6 | 7 | /** 8 | * Created by robert on 2/18/2015. 9 | */ 10 | public class SubCommandWithName extends SubCommand 11 | { 12 | public SubCommandWithName(String name) 13 | { 14 | super(name); 15 | } 16 | 17 | @Override 18 | public boolean handleEntityPlayerCommand(EntityPlayer player, String[] args) 19 | { 20 | return args.length > 0 && handleEntityPlayerCommand(player, args[0], removeFront(args)); 21 | } 22 | 23 | @Override 24 | public boolean handleConsoleCommand(ICommandSender sender, String[] args) 25 | { 26 | return args.length > 0 && handleConsoleCommand(sender, args[0], removeFront(args)); 27 | } 28 | 29 | public boolean handleEntityPlayerCommand(EntityPlayer player, String user, String[] args) 30 | { 31 | return false; 32 | } 33 | 34 | public boolean handleConsoleCommand(ICommandSender sender, String user, String[] args) 35 | { 36 | return false; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/commands/permissions/sub/CommandDumpPermissions.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.commands.permissions.sub; 2 | 3 | import com.builtbroken.mc.core.commands.permissions.PermissionsRegistry; 4 | import com.builtbroken.mc.core.commands.prefab.SubCommand; 5 | import net.minecraft.command.ICommandSender; 6 | import net.minecraft.entity.player.EntityPlayer; 7 | import net.minecraft.util.ChatComponentText; 8 | 9 | /** 10 | * Created by robert on 2/17/2015. 11 | */ 12 | public class CommandDumpPermissions extends SubCommand 13 | { 14 | public CommandDumpPermissions() 15 | { 16 | super("permissions"); 17 | } 18 | 19 | @Override 20 | public boolean handleEntityPlayerCommand(EntityPlayer player, String[] args) 21 | { 22 | return handleConsoleCommand(player, args); 23 | } 24 | 25 | @Override 26 | public boolean handleConsoleCommand(ICommandSender sender, String[] args) 27 | { 28 | sender.addChatMessage(new ChatComponentText("Dumping permission nodes to file in the server's base directory")); 29 | PermissionsRegistry.dumpNodesToFile(); 30 | return true; 31 | } 32 | 33 | @Override 34 | public boolean isHelpCommand(String[] args) 35 | { 36 | return false; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/commands/prefab/SubCommand.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.commands.prefab; 2 | 3 | /** 4 | * Designed to be used from inside ModularCommand 5 | * Created by robert on 2/10/2015. 6 | */ 7 | public class SubCommand extends AbstractCommand 8 | { 9 | protected ModularCommand super_command; 10 | 11 | public SubCommand(String name) 12 | { 13 | super(name); 14 | } 15 | 16 | public void setSuperCommand(ModularCommand c) 17 | { 18 | this.super_command = c; 19 | } 20 | 21 | @Override 22 | public String getPrefix() 23 | { 24 | return "/" + (super_command != null ? super_command.getPrefix().replace("/", "") : "") + " " + getCommandName(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/commands/sub/CommandVEVersion.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.commands.sub; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.core.commands.prefab.SubCommand; 5 | import net.minecraft.command.ICommandSender; 6 | import net.minecraft.util.ChatComponentText; 7 | 8 | import java.util.List; 9 | 10 | /** 11 | * Created by robert on 2/10/2015. 12 | */ 13 | public class CommandVEVersion extends SubCommand 14 | { 15 | public CommandVEVersion() 16 | { 17 | super("version"); 18 | } 19 | 20 | @Override 21 | public boolean handleConsoleCommand(ICommandSender sender, String[] args) 22 | { 23 | sender.addChatMessage(new ChatComponentText("Version: " + References.VERSION + " Build: " + References.BUILD_VERSION)); 24 | return true; 25 | } 26 | 27 | @Override 28 | public boolean isHelpCommand(String[] args) 29 | { 30 | return false; 31 | } 32 | 33 | @Override 34 | public void getHelpOutput(ICommandSender sender, List items) 35 | { 36 | items.add(""); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/blast/emp/BlastEMPClient.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.blast.emp; 2 | 3 | import com.builtbroken.mc.api.edit.IWorldEdit; 4 | import com.builtbroken.mc.api.explosive.IExplosiveHandler; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 8/5/2017. 9 | */ 10 | public class BlastEMPClient extends BlastEMP 11 | { 12 | public BlastEMPClient(IExplosiveHandler handler) 13 | { 14 | super(handler); 15 | } 16 | 17 | @Override 18 | public void doStartDisplay() 19 | { 20 | //TODO emp wave, light and hard to see as second wave will be the main wave 21 | } 22 | 23 | @Override 24 | public void doEndDisplay() 25 | { 26 | //TODO second emp wave, but faster 27 | } 28 | 29 | @Override 30 | public void displayEffectForEdit(IWorldEdit blocks) 31 | { 32 | if (!oldWorld.isRemote) 33 | { 34 | //TODO render sparks around machine that was drained 35 | //TODO render parts flying around machine that was destroyed 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/blast/emp/ExEmp.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.blast.emp; 2 | 3 | import com.builtbroken.mc.framework.explosive.handler.ExplosiveHandler; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 1/30/2016. 8 | */ 9 | public class ExEmp extends ExplosiveHandler 10 | { 11 | public ExEmp() 12 | { 13 | super("Emp", 1); 14 | } 15 | 16 | @Override 17 | protected BlastEMP newBlast() 18 | { 19 | return new BlastEMP(this); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/blast/holiday/BlastGiftClient.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.blast.holiday; 2 | 3 | import com.builtbroken.mc.api.explosive.IExplosiveHandler; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 12/24/2017. 8 | */ 9 | public class BlastGiftClient extends BlastGift 10 | { 11 | public BlastGiftClient(IExplosiveHandler handler) 12 | { 13 | super(handler); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/blast/holiday/ExGift.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.blast.holiday; 2 | 3 | import com.builtbroken.mc.framework.explosive.handler.ExplosiveHandler; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 12/24/2017. 8 | */ 9 | public class ExGift extends ExplosiveHandler 10 | { 11 | public ExGift() 12 | { 13 | super("Gift", 1); 14 | } 15 | 16 | @Override 17 | protected BlastGift newBlast() 18 | { 19 | return new BlastGift(this); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/blast/holiday/ExGiftClient.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.blast.holiday; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 12/24/2017. 6 | */ 7 | public class ExGiftClient extends ExGift 8 | { 9 | @Override 10 | protected BlastGift newBlast() 11 | { 12 | return new BlastGiftClient(this); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/tool/screwdriver/ToolModeGeneral.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.tool.screwdriver; 2 | 3 | import com.builtbroken.mc.core.Engine; 4 | import com.builtbroken.mc.api.tile.connection.ConnectionColor; 5 | 6 | public class ToolModeGeneral extends ToolMode 7 | { 8 | @Override 9 | public String getInfoName() 10 | { 11 | return Engine.itemWrench.getUnlocalizedName() + ".general.info"; 12 | } 13 | 14 | @Override 15 | public String getItemUnlocalizedName(ConnectionColor color) 16 | { 17 | return Engine.itemWrench.getUnlocalizedName(); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/content/world/WorldGenWrapper.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.content.world; 2 | 3 | import cpw.mods.fml.common.IWorldGenerator; 4 | import net.minecraft.world.World; 5 | import net.minecraft.world.chunk.IChunkProvider; 6 | 7 | import java.util.Random; 8 | 9 | /** 10 | * Created by Dark on 8/13/2015. 11 | */ 12 | public class WorldGenWrapper implements IWorldGenerator 13 | { 14 | private IWorldGenerator generator; 15 | 16 | public WorldGenWrapper(IWorldGenerator generator) 17 | { 18 | this.generator = generator; 19 | } 20 | 21 | @Override 22 | public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider) 23 | { 24 | if (world.provider.terrainType != DevWorldLoader.emptyWorldGenerator && world.provider.terrainType != DevWorldLoader.stoneWorldGenerator) 25 | { 26 | generator.generate(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/deps/Dep.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.deps; 2 | 3 | import cpw.mods.fml.relauncher.FMLInjectionData; 4 | 5 | import java.io.File; 6 | import java.net.URL; 7 | 8 | /** 9 | * Prefab for new dependency downloads 10 | * Created by Dark on 7/29/2015. 11 | */ 12 | public abstract class Dep 13 | { 14 | /** Download path for the file */ 15 | public abstract URL getURL(); 16 | 17 | /** Folder to download the file to inside the MC folder */ 18 | public String getOutputFolderPath() 19 | { 20 | //MC_Folder/mods/MC_Version ex .minecraft/mods/1.7.10 21 | return ((File) FMLInjectionData.data()[6]).getAbsolutePath() + "/mods/" + FMLInjectionData.data()[4]; 22 | } 23 | 24 | /** Main peace of the name of the file excluding the version # */ 25 | public abstract String getGenericFileName(); 26 | 27 | /** Gets exact file name for this version of the dep */ 28 | public abstract String getFileName(); 29 | 30 | public boolean isNewerVersion(String fileName) 31 | { 32 | return false; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/deps/FileDownloader.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.deps; 2 | 3 | import java.io.IOException; 4 | import java.net.URL; 5 | import java.nio.file.Files; 6 | import java.nio.file.Path; 7 | import java.nio.file.Paths; 8 | import java.nio.file.StandardCopyOption; 9 | 10 | /** 11 | * Handles downloading 12 | * Created by Dark on 7/29/2015. 13 | */ 14 | public class FileDownloader 15 | { 16 | public static void downloadDeps(Dep... deps) 17 | { 18 | for (Dep dep : deps) 19 | { 20 | downloadDep(dep); 21 | } 22 | } 23 | 24 | public static void downloadDep(Dep dep) 25 | { 26 | URL url = dep.getURL(); 27 | if (url != null) 28 | { 29 | downloadFromURL(url, dep.getOutputFolderPath(), dep.getFileName()); 30 | } 31 | } 32 | 33 | public static void downloadFromURL(URL in, String out, String fileName) 34 | { 35 | try 36 | { 37 | Path outPath = Paths.get(out + "/" + fileName); 38 | if (!outPath.toFile().exists()) 39 | { 40 | Files.copy(in.openStream(), outPath, StandardCopyOption.REPLACE_EXISTING); 41 | } 42 | 43 | } catch (IOException ex) 44 | { 45 | ex.printStackTrace(); 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/network/ex/PacketIDException.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.network.ex; 2 | 3 | import com.builtbroken.mc.imp.transform.vector.Location; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 10/26/2015. 8 | */ 9 | public class PacketIDException extends PacketTileReadException 10 | { 11 | public PacketIDException(Location location) 12 | { 13 | super(location, "Packet provided an invalid or missing ID."); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/registry/implement/ILoadComplete.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.registry.implement; 2 | 3 | /** 4 | * Called when the game has finished loading all mods 5 | * 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 3/11/2017. 8 | */ 9 | @Deprecated 10 | public interface ILoadComplete 11 | { 12 | /** 13 | * Called when the game finished loadiing, 14 | * use this to override data that was 15 | * processed in postInit(); 16 | *

17 | * Do not use lightly as this really should 18 | * not be used much. 19 | */ 20 | void onLoadCompleted(); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/registry/implement/IPostInit.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.registry.implement; 2 | 3 | /** 4 | * Created by robert on 2/8/2015. 5 | */ 6 | public interface IPostInit 7 | { 8 | /** Called from the mod that registered this object. 9 | * Use this method trigger to register recipes */ 10 | void onPostInit(); 11 | } 12 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/core/registry/implement/IRegistryInit.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.core.registry.implement; 2 | 3 | import cpw.mods.fml.relauncher.Side; 4 | import cpw.mods.fml.relauncher.SideOnly; 5 | 6 | /** Called after the object has been registered threw the ModManager 7 | * Created by robert on 2/6/2015. 8 | */ 9 | public interface IRegistryInit 10 | { 11 | /** 12 | * Called right after the block has been registered 13 | */ 14 | default void onRegistered() 15 | { 16 | 17 | } 18 | 19 | /** 20 | * Called client side after the block has been registered, 21 | * use this to register any renders 22 | */ 23 | @SideOnly(Side.CLIENT) 24 | default void onClientRegistered() 25 | { 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/IJsonDebugDisplay.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug; 2 | 3 | import com.builtbroken.mc.framework.json.imp.IJsonGenObject; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | * Applied to objects that can control the display of debug information 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 9/6/2017. 12 | */ 13 | public interface IJsonDebugDisplay extends IJsonGenObject 14 | { 15 | default String getDisplayName() 16 | { 17 | return getMod() + ":" + getContentID(); 18 | } 19 | 20 | default void addDebugLines(List lines) 21 | { 22 | 23 | } 24 | 25 | default void onDoubleClickLine() 26 | { 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/component/DebugDataCellRenderer.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug.component; 2 | 3 | import com.builtbroken.mc.debug.data.IJsonDebugData; 4 | 5 | import javax.swing.*; 6 | import java.awt.*; 7 | 8 | public class DebugDataCellRenderer extends DefaultListCellRenderer 9 | { 10 | @Override 11 | public Component getListCellRendererComponent(JList list, Object o, int index, boolean isSelected, boolean cellHasFocus) 12 | { 13 | IJsonDebugData data = (IJsonDebugData) o; 14 | return super.getListCellRendererComponent(list, data.buildDebugLineDisplay(), index, isSelected, cellHasFocus); 15 | } 16 | } -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/data/IJsonDebugData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug.data; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 9/6/2017. 6 | */ 7 | public interface IJsonDebugData 8 | { 9 | /** 10 | * Called to get a display string for default component 11 | * 12 | * @return string 13 | */ 14 | String buildDebugLineDisplay(); 15 | 16 | /** 17 | * Called when default component is double clicked 18 | */ 19 | default void onDoubleClicked() 20 | { 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/error/ExceptionErrorDebug.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug.error; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 10/28/2017. 6 | */ 7 | public class ExceptionErrorDebug implements IErrorDebug 8 | { 9 | String title; 10 | String message; 11 | Exception exception; 12 | 13 | public ExceptionErrorDebug(String title, String message, Exception e) 14 | { 15 | this.title = title; 16 | this.message = message; 17 | this.exception = e; 18 | } 19 | 20 | @Override 21 | public String getTitle() 22 | { 23 | return title; 24 | } 25 | 26 | @Override 27 | public String getMessage() 28 | { 29 | return null; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/error/IErrorDebug.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug.error; 2 | 3 | /** 4 | * Applied to object that contains error information for display in a debug system 5 | * 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 10/28/2017. 8 | */ 9 | public interface IErrorDebug 10 | { 11 | String getTitle(); 12 | 13 | String getMessage(); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/debug/gui/panels/recipes/TabPanelShapelessRecipes.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.debug.gui.panels.recipes; 2 | 3 | import com.builtbroken.mc.debug.data.IJsonDebugData; 4 | import com.builtbroken.mc.debug.gui.panels.imp.PanelDataList; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 9/15/2017. 9 | */ 10 | public class TabPanelShapelessRecipes extends PanelDataList 11 | { 12 | @Override 13 | protected IJsonDebugData getDataEntryFor(Object object) 14 | { 15 | return null; 16 | } 17 | 18 | @Override 19 | protected void buildData() 20 | { 21 | 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/IBlockListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import com.builtbroken.mc.api.abstraction.world.IWorld; 4 | import net.minecraft.world.IBlockAccess; 5 | 6 | /** 7 | * Applied to {@link ITileEventListener} that listen directly for the block even and not the tile version of the event. 8 | *

9 | * This should be used for events that need to fire regardless if a tile exists. 10 | * 11 | * @see License for what you can and can't do with the code. 12 | * Created by Dark(DarkGuardsman, Robert) on 4/3/2017. 13 | */ 14 | public interface IBlockListener 15 | { 16 | /** 17 | * Called to set the location of the listener so that 18 | * normal tile calls can be used. 19 | * 20 | * @param world 21 | * @param x 22 | * @param y 23 | * @param z 24 | */ 25 | void inject(IWorld world, int x, int y, int z); 26 | 27 | void inject(IBlockAccess world, int x, int y, int z); 28 | 29 | default void eject() 30 | { 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/ICollisionListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import net.minecraft.entity.Entity; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 4/19/2017. 8 | */ 9 | public interface ICollisionListener extends ITileEventListener 10 | { 11 | default void onEntityCollidedWithBlock(Entity entity) 12 | { 13 | 14 | } 15 | 16 | default String getListenerKey() 17 | { 18 | return "collision"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/IFillRainListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 4/3/2017. 6 | */ 7 | public interface IFillRainListener extends ITileEventListener 8 | { 9 | /** 10 | * Called when rain hits the block 11 | */ 12 | void onFilledWithRain(); 13 | 14 | @Override 15 | default String getListenerKey() 16 | { 17 | return "rain"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/IHardnessListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import net.minecraft.entity.player.EntityPlayer; 4 | 5 | /** 6 | * Applied to objects that listen for block action events 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 10/3/2017. 10 | */ 11 | public interface IHardnessListener extends ITileEventListener 12 | { 13 | default float getBlockHardness() 14 | { 15 | return -1; 16 | } 17 | 18 | default float getBlockHardness(EntityPlayer player) 19 | { 20 | return getBlockHardness(); 21 | } 22 | 23 | @Override 24 | default String getListenerKey() 25 | { 26 | return "hardness"; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/ILightLevelListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 9/10/2017. 6 | */ 7 | public interface ILightLevelListener extends ITileEventListener 8 | { 9 | default int getLightLevel() 10 | { 11 | return -1; 12 | } 13 | 14 | @Override 15 | default String getListenerKey() 16 | { 17 | return "light"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/IRenderBoundsListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import com.builtbroken.mc.imp.transform.region.Cube; 4 | 5 | /** 6 | * Used to modify the render bounds of the tile 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 7/14/2017. 10 | */ 11 | public interface IRenderBoundsListener extends ITileEventListener 12 | { 13 | default Cube getRenderBounds() 14 | { 15 | return null; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/ITileEventListenerBuilder.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import net.minecraft.block.Block; 4 | import net.minecraft.tileentity.TileEntity; 5 | 6 | /** 7 | * Used to build a listener object for json based system 8 | * 9 | * @see License for what you can and can't do with the code. 10 | * Created by Dark(DarkGuardsman, Robert) on 4/5/2017. 11 | */ 12 | public interface ITileEventListenerBuilder 13 | { 14 | default ITileEventListener createListener(Block block) 15 | { 16 | return null; 17 | } 18 | 19 | default ITileEventListener createListener(TileEntity tileEntity) 20 | { 21 | return null; 22 | } 23 | 24 | /** 25 | * Get of the listener this 26 | * builds 27 | * 28 | * @return key 29 | */ 30 | String getListenerKey(); 31 | } 32 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/block/imp/ITileWithListeners.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.block.imp; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 4/3/2017. 8 | */ 9 | public interface ITileWithListeners 10 | { 11 | /** 12 | * Called to get the listeners for a tile 13 | * 14 | * @param key - unique group ID 15 | * @return list of listeners or empty list 16 | */ 17 | List getListeners(String key); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/computer/FunctionComputer.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.computer; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 6/20/2018. 6 | */ 7 | @FunctionalInterface 8 | public interface FunctionComputer 9 | { 10 | Object apply(Object host, String method, Object[] args); 11 | } 12 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/energy/data/EnergyBuffer.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.energy.data; 2 | 3 | /** 4 | * Basic implementation of energy buffer 5 | * Created by Dark on 8/15/2015. 6 | */ 7 | public class EnergyBuffer extends AbstractEnergyBuffer 8 | { 9 | private final int maxBufferSize; 10 | 11 | public EnergyBuffer(int maxStorage) 12 | { 13 | this.maxBufferSize = maxStorage; 14 | } 15 | 16 | @Override 17 | public int getMaxBufferSize() 18 | { 19 | return maxBufferSize; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/energy/data/EnergyBufferData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.energy.data; 2 | 3 | import com.builtbroken.mc.api.data.energy.IEnergyBufferData; 4 | 5 | /** 6 | * Used to store information about energy buffers 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 8/7/2017. 10 | */ 11 | public class EnergyBufferData implements IEnergyBufferData 12 | { 13 | private int power; 14 | 15 | @Override 16 | public int getEnergyCapacity() 17 | { 18 | return power; 19 | } 20 | 21 | public EnergyBufferData setEnergyCapacity(int power) 22 | { 23 | this.power = Math.max(0, power); 24 | return this; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/entity/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * @see License for what you can and can't do with the code. 3 | * Created by Dark(DarkGuardsman, Robert) on 9/30/2017. 4 | */ 5 | package com.builtbroken.mc.framework.entity; -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/GuideEntryType.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 2/19/2018. 6 | */ 7 | public enum GuideEntryType 8 | { 9 | INVALID, 10 | BOOK, 11 | CHAPTER, 12 | SECTION, 13 | PAGE; 14 | } 15 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/json/JsonProcessorBook.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.json; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.guide.GuideBookModule; 5 | import com.builtbroken.mc.framework.guide.parts.Book; 6 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 7 | import com.google.gson.JsonElement; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 12 | */ 13 | public class JsonProcessorBook extends JsonProcessor 14 | { 15 | @Override 16 | protected Book process(final JsonElement element) 17 | { 18 | return new Book(this); 19 | } 20 | 21 | @Override 22 | public String getMod() 23 | { 24 | return References.DOMAIN; 25 | } 26 | 27 | @Override 28 | public String getJsonKey() 29 | { 30 | return GuideBookModule.JSON_GUIDE_BOOK; 31 | } 32 | 33 | @Override 34 | public String getLoadOrder() 35 | { 36 | return "after:item"; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/json/JsonProcessorChapter.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.json; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.guide.GuideBookModule; 5 | import com.builtbroken.mc.framework.guide.parts.Chapter; 6 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 7 | import com.google.gson.JsonElement; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 12 | */ 13 | public class JsonProcessorChapter extends JsonProcessor 14 | { 15 | @Override 16 | protected Chapter process(final JsonElement element) 17 | { 18 | return new Chapter(this); 19 | } 20 | 21 | @Override 22 | public String getMod() 23 | { 24 | return References.DOMAIN; 25 | } 26 | 27 | @Override 28 | public String getJsonKey() 29 | { 30 | return GuideBookModule.JSON_GUIDE_CHAPTER; 31 | } 32 | 33 | @Override 34 | public String getLoadOrder() 35 | { 36 | return "after:" + GuideBookModule.JSON_GUIDE_BOOK; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/json/JsonProcessorPage.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.json; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.guide.GuideBookModule; 5 | import com.builtbroken.mc.framework.guide.parts.Page; 6 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 7 | import com.google.gson.JsonElement; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 12 | */ 13 | public class JsonProcessorPage extends JsonProcessor 14 | { 15 | @Override 16 | protected Page process(final JsonElement element) 17 | { 18 | return new Page(this); 19 | } 20 | 21 | @Override 22 | public String getMod() 23 | { 24 | return References.DOMAIN; 25 | } 26 | 27 | @Override 28 | public String getJsonKey() 29 | { 30 | return GuideBookModule.JSON_GUIDE_PAGE; 31 | } 32 | 33 | @Override 34 | public String getLoadOrder() 35 | { 36 | return "after:" + GuideBookModule.JSON_GUIDE_SECTION; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/json/JsonProcessorSection.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.json; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.guide.GuideBookModule; 5 | import com.builtbroken.mc.framework.guide.parts.Section; 6 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 7 | import com.google.gson.JsonElement; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 12 | */ 13 | public class JsonProcessorSection extends JsonProcessor

14 | { 15 | @Override 16 | protected Section process(final JsonElement element) 17 | { 18 | return new Section(this); 19 | } 20 | 21 | @Override 22 | public String getMod() 23 | { 24 | return References.DOMAIN; 25 | } 26 | 27 | @Override 28 | public String getJsonKey() 29 | { 30 | return GuideBookModule.JSON_GUIDE_SECTION; 31 | } 32 | 33 | @Override 34 | public String getLoadOrder() 35 | { 36 | return "after:" + GuideBookModule.JSON_GUIDE_CHAPTER; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/parts/Book.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.parts; 2 | 3 | import com.builtbroken.mc.framework.guide.GuideEntry; 4 | import com.builtbroken.mc.framework.guide.parts.imp.GuidePartContainer; 5 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 10 | */ 11 | public class Book extends GuidePartContainer 12 | { 13 | public Book(IJsonProcessor processor) 14 | { 15 | super(processor); 16 | } 17 | 18 | @Override 19 | public GuideEntry getGuideEntry() 20 | { 21 | return new GuideEntry(id, null, null, null); 22 | } 23 | 24 | @Override 25 | public Book add(Chapter chapter) 26 | { 27 | super.add(chapter); 28 | chapter.parent = this; 29 | return this; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/parts/Chapter.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.parts; 2 | 3 | import com.builtbroken.mc.framework.guide.GuideEntry; 4 | import com.builtbroken.mc.framework.guide.parts.imp.GuidePartContainer; 5 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 6 | 7 | /** 8 | * Single chapter in the guide book 9 | *

10 | * Normal a chapter would be focused on a single item or concept. However, it doesn't matter so long as the content 11 | * helps the user. 12 | * 13 | * @see License for what you can and can't do with the code. 14 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 15 | */ 16 | public class Chapter extends GuidePartContainer 17 | { 18 | public Chapter(IJsonProcessor processor) 19 | { 20 | super(processor); 21 | } 22 | 23 | @Override 24 | public GuideEntry getGuideEntry() 25 | { 26 | return parent != null ? parent.getGuideEntry().getWithChapter(id) : new GuideEntry(null, id, null, null); 27 | } 28 | 29 | @Override 30 | public Chapter add(Section section) 31 | { 32 | super.add(section); 33 | section.parent = this; 34 | return this; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/parts/Section.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.parts; 2 | 3 | import com.builtbroken.mc.framework.guide.GuideEntry; 4 | import com.builtbroken.mc.framework.guide.parts.imp.GuidePartContainer; 5 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 2/15/2018. 10 | */ 11 | public class Section extends GuidePartContainer 12 | { 13 | public Section(IJsonProcessor processor) 14 | { 15 | super(processor); 16 | } 17 | 18 | @Override 19 | public GuideEntry getGuideEntry() 20 | { 21 | return parent != null ? parent.getGuideEntry().getWithSection(id) : new GuideEntry(null, null, id, null); 22 | } 23 | 24 | @Override 25 | public Section add(Page page) 26 | { 27 | super.add(page); 28 | page.parent = this; 29 | return this; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/parts/comp/PageComponent.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.parts.comp; 2 | 3 | import com.builtbroken.mc.prefab.gui.components.GuiComponent; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 2/16/2018. 8 | */ 9 | public abstract class PageComponent 10 | { 11 | public abstract GuiComponent getComponent(); 12 | } 13 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/guide/parts/comp/PageComponentText.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.guide.parts.comp; 2 | 3 | import com.builtbroken.mc.prefab.gui.components.GuiComponent; 4 | 5 | /** 6 | * Block of text 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 2/16/2018. 10 | */ 11 | public class PageComponentText extends PageComponent 12 | { 13 | @Override 14 | public GuiComponent getComponent() 15 | { 16 | //TODO convert text into lines 17 | //TODO generate a label per line 18 | //TODO return a container 19 | return null; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/conversion/primitives/JsonConverterString.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.conversion.primitives; 2 | 3 | import com.builtbroken.mc.framework.json.conversion.JsonConverter; 4 | import com.google.gson.JsonElement; 5 | import com.google.gson.JsonPrimitive; 6 | 7 | /** 8 | * Wrapper for converting JSON element to string 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 9/26/2017. 12 | */ 13 | public class JsonConverterString extends JsonConverter 14 | { 15 | public JsonConverterString() 16 | { 17 | super("string"); 18 | } 19 | 20 | @Override 21 | public String convert(JsonElement element, String... args) 22 | { 23 | if (element == null || !element.isJsonPrimitive()) 24 | { 25 | throw new IllegalArgumentException("JsonConverterString: Invalid argument >> " + element); 26 | } 27 | return element.getAsString(); 28 | } 29 | 30 | @Override 31 | public JsonElement build(String type, Object data, String... args) 32 | { 33 | return new JsonPrimitive(data != null ? data.toString() : "null"); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/data/JsonBlockEntry.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.data; 2 | 3 | import com.builtbroken.mc.prefab.inventory.InventoryUtility; 4 | import net.minecraft.block.Block; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 9/26/2017. 9 | */ 10 | public class JsonBlockEntry 11 | { 12 | /** Reference to a block */ 13 | protected String block; 14 | 15 | public JsonBlockEntry(String block) 16 | { 17 | this.block = block; 18 | } 19 | 20 | public String getRegistryName() 21 | { 22 | return block; 23 | } 24 | 25 | public Block getBlock() 26 | { 27 | if (block != null && !block.isEmpty()) 28 | { 29 | return InventoryUtility.getBlock(block); 30 | } 31 | return null; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/event/JsonContentLoaderEvent.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.event; 2 | 3 | import com.builtbroken.mc.framework.json.JsonContentLoader; 4 | import com.builtbroken.mc.framework.json.imp.JsonLoadPhase; 5 | import cpw.mods.fml.common.eventhandler.Event; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 8/12/2017. 10 | */ 11 | public class JsonContentLoaderEvent extends Event 12 | { 13 | public final JsonContentLoader contentLoader; 14 | public final JsonLoadPhase phase; 15 | 16 | public JsonContentLoaderEvent(JsonContentLoader contentLoader, JsonLoadPhase phase) 17 | { 18 | this.contentLoader = contentLoader; 19 | this.phase = phase; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/event/JsonProcessorRegistryEvent.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.event; 2 | 3 | import com.builtbroken.mc.framework.json.JsonContentLoader; 4 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 5 | import com.builtbroken.mc.framework.json.imp.JsonLoadPhase; 6 | 7 | /** 8 | * Called when a new processor has been registered 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 8/12/2017. 12 | */ 13 | public class JsonProcessorRegistryEvent extends JsonContentLoaderEvent 14 | { 15 | public final IJsonProcessor processor; 16 | 17 | public JsonProcessorRegistryEvent(JsonContentLoader loader, JsonLoadPhase loadPhase, IJsonProcessor processor) 18 | { 19 | super(loader, loadPhase); 20 | this.processor = processor; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/imp/IJSONMetaConvert.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.imp; 2 | 3 | /** 4 | * Applied to items or blocks to convert a meta entry used in a recipe or registry value to the actual meta. This 5 | * is used to allow states to be used rather than hardcoded integers. As well to fix issues with runtime generated 6 | * meta values. 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 8/9/2017. 10 | */ 11 | public interface IJSONMetaConvert 12 | { 13 | /** 14 | * Converts the string to its meta value 15 | * 16 | * @param value - string, ignore case as input will be lowercase to prevent issues 17 | * @return 0-15 for blocks, 0-31999 for items, -1 is an error state 18 | */ 19 | int getMetaForValue(String value); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/loading/JsonProcessorDataGetter.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.loading; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | /** 9 | * Gives JSON systems access to the data. Only requires for methods as 10 | * fields automaticly are consider getters if used with {@link JsonProcessorData} 11 | * 12 | * @see License for what you can and can't do with the code. 13 | * Created by Dark(DarkGuardsman, Robert) on 12/13/2017. 14 | */ 15 | @Retention(RetentionPolicy.RUNTIME) 16 | @Target(value = {ElementType.METHOD}) 17 | public @interface JsonProcessorDataGetter 18 | { 19 | /** List of keys to use */ 20 | String[] value(); 21 | 22 | /** Data type to convert value into JSON */ 23 | String type(); 24 | } 25 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/loading/ProcessorKeySorter.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.loading; 2 | 3 | import java.util.Comparator; 4 | 5 | /** 6 | * Simple pre-sorter that attempt to place tagged string near the bottom 7 | * so they are added after tags they depend on. 8 | */ 9 | public class ProcessorKeySorter implements Comparator 10 | { 11 | @Override 12 | public int compare(String o1, String o2) 13 | { 14 | if (o1.contains("@") && !o2.contains("@")) 15 | { 16 | return 1; 17 | } 18 | else if (!o1.contains("@") && o2.contains("@")) 19 | { 20 | return -1; 21 | } 22 | //TODO attempt to sort using before & after tags 23 | return o1.compareTo(o2); 24 | } 25 | } -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/processors/event/JsonMobDropEventProcessor.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.processors.event; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 3/11/2017. 6 | */ 7 | public class JsonMobDropEventProcessor 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/processors/explosive/JsonProcessorExplosive.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.processors.explosive; 2 | 3 | import com.builtbroken.mc.core.References; 4 | import com.builtbroken.mc.framework.explosive.handler.ExplosiveData; 5 | import com.builtbroken.mc.framework.json.processors.JsonProcessor; 6 | import com.google.gson.JsonElement; 7 | 8 | /** 9 | * @see License for what you can and can't do with the code. 10 | * Created by Dark(DarkGuardsman, Robert) on 8/10/2017. 11 | */ 12 | public class JsonProcessorExplosive extends JsonProcessor 13 | { 14 | public JsonProcessorExplosive() 15 | { 16 | super(ExplosiveData.class); 17 | } 18 | 19 | @Override 20 | public ExplosiveData process(JsonElement element) 21 | { 22 | return new ExplosiveData(this); 23 | } 24 | 25 | @Override 26 | public String getMod() 27 | { 28 | return References.DOMAIN; 29 | } 30 | 31 | @Override 32 | public String getJsonKey() 33 | { 34 | return "explosive"; 35 | } 36 | 37 | @Override 38 | public String getLoadOrder() 39 | { 40 | return "after:item"; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/reload/IReloadableJson.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.reload; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 4/14/2017. 6 | */ 7 | public interface IReloadableJson 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/json/settings/data/JsonSettingBoolean.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.json.settings.data; 2 | 3 | import com.builtbroken.mc.framework.json.imp.IJsonProcessor; 4 | import com.builtbroken.mc.framework.json.settings.JsonSettingData; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 9/13/2017. 9 | */ 10 | public class JsonSettingBoolean extends JsonSettingData 11 | { 12 | public boolean value; 13 | 14 | public JsonSettingBoolean(IJsonProcessor processor, String key, boolean value) 15 | { 16 | super(processor, key); 17 | this.value = value; 18 | } 19 | 20 | @Override 21 | public boolean getBoolean() 22 | { 23 | return value; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/logic/imp/ITileDesc.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.logic.imp; 2 | 3 | import com.builtbroken.mc.api.data.IPacket; 4 | import com.builtbroken.mc.core.network.IPacketIDReceiver; 5 | import com.builtbroken.mc.core.network.packet.PacketType; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 3/30/2017. 10 | */ 11 | public interface ITileDesc extends IPacketIDReceiver 12 | { 13 | IPacket getDescPacket(); 14 | 15 | default boolean canHandlePackets() 16 | { 17 | return true; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/IMod.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod; 2 | 3 | import com.builtbroken.mc.core.registry.ModManager; 4 | import net.minecraftforge.common.config.Configuration; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 4/11/2016. 9 | */ 10 | public interface IMod 11 | { 12 | /** Prefix used by the mod before resources, example( Mod: ) */ 13 | String getPrefix(); 14 | 15 | /** Resource folder name, used to pull localization and textures */ 16 | String getDomain(); 17 | 18 | /** 19 | * Gets the manager that is used to 20 | * register content for the mod. 21 | * 22 | * @return 23 | */ 24 | @Deprecated 25 | default ModManager getManager() 26 | { 27 | return null; 28 | } 29 | 30 | /** 31 | * Gets the config file 32 | * 33 | * @return 34 | */ 35 | Configuration getConfig(); 36 | } 37 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/ModProxy.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod; 2 | 3 | import com.builtbroken.mc.core.Engine; 4 | import com.builtbroken.mc.framework.mod.loadable.AbstractLoadable; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 7/13/2016. 9 | */ 10 | public class ModProxy extends AbstractLoadable 11 | { 12 | public final Mods mod; 13 | 14 | public ModProxy(Mods mod) 15 | { 16 | this.mod = mod; 17 | } 18 | 19 | @Override 20 | public boolean shouldLoad() 21 | { 22 | return Engine.loaderInstance.getConfig().getBoolean("Load_" + mod.mod_id, "Mod_Support", true, ""); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/Mods.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod; 2 | 3 | import cpw.mods.fml.common.Loader; 4 | 5 | /** 6 | * Enum of supported mods, mainly used to track mod ids. 7 | * Created by robert on 12/31/2014. 8 | */ 9 | public enum Mods 10 | { 11 | //TODO link github repos for each mod for look up 12 | OC("OpenComputers"), 13 | CC("ComputerCraft"), 14 | AE("appliedenergistics2"), 15 | AM2("arsmagica2"), 16 | BOP("BiomesOPlenty"), 17 | BC("BuildCraft|Core"), 18 | IC2("IC2"), 19 | WAILA("Waila"), 20 | DRAGON_API("DragonAPI"), 21 | RF(""), 22 | TINKERS("TConstruct"), 23 | MFR("MineFactoryReloaded"), 24 | TF_EXPANSION("ThermalExpansion"), 25 | TF_FOUNDATION("ThermalFoundation"), 26 | CoFH_API_ENERGY("CoFHAPI|energy"), 27 | CoFH_CORE("CoFHCore"), 28 | NEI("NotEnoughItems"), 29 | //https://github.com/aidancbrady/Mekanism/blob/master/src/main/java/mekanism/common/Mekanism.java 30 | MEKANISM("Mekanism"), 31 | PROJECT_E("ProjectE"), 32 | APPLE_CORE("AppleCore"); 33 | 34 | public final String mod_id; 35 | 36 | Mods(String id) 37 | { 38 | this.mod_id = id; 39 | } 40 | 41 | public boolean isLoaded() 42 | { 43 | return Loader.isModLoaded(mod_id); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/loadable/AbstractLoadable.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod.loadable; 2 | 3 | /** 4 | * Created by robert on 1/10/2015. 5 | */ 6 | public class AbstractLoadable implements ILoadableProxy 7 | { 8 | @Override 9 | public void preInit() 10 | { 11 | 12 | } 13 | 14 | @Override 15 | public void init() 16 | { 17 | 18 | } 19 | 20 | @Override 21 | public void postInit() 22 | { 23 | 24 | } 25 | 26 | @Override 27 | public void loadComplete() 28 | { 29 | 30 | } 31 | 32 | @Override 33 | public boolean shouldLoad() 34 | { 35 | return true; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/loadable/ILoadableProxy.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod.loadable; 2 | 3 | /** 4 | * Decision based version of ILoadable to allow control over if it should or shouldn't be loaded 5 | */ 6 | public interface ILoadableProxy extends ILoadable 7 | { 8 | /** 9 | * Should we load this loadable 10 | */ 11 | default boolean shouldLoad() 12 | { 13 | return true; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/mod/loadable/LoadWithMod.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.mod.loadable; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | /** 7 | * Created by robert on 1/10/2015. 8 | */ 9 | @Retention(RetentionPolicy.RUNTIME) 10 | public @interface LoadWithMod 11 | { 12 | /** ID of the mod to check against */ 13 | String mod_id(); 14 | 15 | //TODO add mod version checking for loading content based on mod versions or MC versions 16 | } 17 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/ItemBlockMulti.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock; 2 | 3 | import net.minecraft.block.Block; 4 | import net.minecraft.entity.Entity; 5 | import net.minecraft.entity.player.EntityPlayer; 6 | import net.minecraft.item.ItemBlock; 7 | import net.minecraft.item.ItemStack; 8 | import net.minecraft.world.World; 9 | 10 | /** 11 | * Created by Dark on 8/18/2015. 12 | */ 13 | public class ItemBlockMulti extends ItemBlock 14 | { 15 | public ItemBlockMulti(Block block) 16 | { 17 | super(block); 18 | } 19 | 20 | @Override 21 | public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean inUse) 22 | { 23 | if (stack.getItem() == this) 24 | { 25 | stack.stackSize = 0; 26 | if (entity instanceof EntityPlayer) 27 | { 28 | ((EntityPlayer) entity).inventory.setInventorySlotContents(slot, null); 29 | ((EntityPlayer) entity).inventoryContainer.detectAndSendChanges(); 30 | } 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/RendererMultiBlock.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock; 2 | 3 | import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; 4 | import net.minecraft.tileentity.TileEntity; 5 | 6 | /** 7 | * Created by Dark on 8/18/2015. 8 | */ 9 | public class RendererMultiBlock extends TileEntitySpecialRenderer 10 | { 11 | @Override 12 | public void renderTileEntityAt(TileEntity tile, double xx, double yy, double zz, float delta) 13 | { 14 | if (tile instanceof TileMulti) 15 | { 16 | //TODO implement a system to allow the multiblock to be set with a renderer object. 17 | //This way we can render only the peaces of the multiblock structure that are on the player's screen 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/listeners/IMultiBlockNodeListener.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.listeners; 2 | 3 | import com.builtbroken.mc.api.tile.multiblock.IMultiTile; 4 | import com.builtbroken.mc.api.tile.node.ITileNode; 5 | import com.builtbroken.mc.imp.transform.vector.Pos; 6 | import net.minecraft.entity.player.EntityPlayer; 7 | 8 | /** 9 | * Temp listener used to pass interaction to a node. Will be replaced by {@link com.builtbroken.mc.api.tile.multiblock.IMultiBlockProvider} 10 | * 11 | * @see License for what you can and can't do with the code. 12 | * Created by Dark(DarkGuardsman, Robert) on 5/3/2018. 13 | */ 14 | public interface IMultiBlockNodeListener extends ITileNode 15 | { 16 | /** 17 | * Called when multi-block is added 18 | * 19 | * @param tileMulti - tile 20 | * @param relativePos - relative position 21 | */ 22 | void onMultiTileAdded(IMultiTile tileMulti, Pos relativePos); 23 | 24 | boolean onMultiTileActivated(IMultiTile tile, Pos relativePos, EntityPlayer player, int side, float xHit, float yHit, float zHit); 25 | 26 | default String getMultiBlockLayoutKey() 27 | { 28 | return null; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/structure/MultiBlockLayoutHandler.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.structure; 2 | 3 | import com.builtbroken.jlib.data.vector.IPos3D; 4 | 5 | import java.util.HashMap; 6 | 7 | /** 8 | * Cache of structures to be used by multi-block tiles 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 4/17/2017. 12 | */ 13 | public class MultiBlockLayoutHandler 14 | { 15 | private static final HashMap layouts = new HashMap(); 16 | 17 | static 18 | { 19 | //Empty layout, used as a null or default value 20 | register(new MultiBlockLayout(null, "1x1")); 21 | } 22 | 23 | public static HashMap get(String key) 24 | { 25 | MultiBlockLayout layout = layouts.get(key != null && !key.isEmpty() ? key.toLowerCase() : null); 26 | if (layout != null) 27 | { 28 | return layout.tiles; 29 | } 30 | return null; 31 | } 32 | 33 | public static void register(MultiBlockLayout multiBlockLayout) 34 | { 35 | layouts.put(multiBlockLayout.key.toLowerCase(), multiBlockLayout); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiInv.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.api.tile.multiblock.IMultiTileInvHost 4 | import com.builtbroken.mc.api.tile.provider.IInventoryProvider 5 | import com.builtbroken.mc.framework.multiblock.TileMulti 6 | import com.builtbroken.mc.prefab.tile.traits.TSidedInvProvider 7 | import net.minecraft.inventory.IInventory 8 | 9 | /** 10 | * Created by Cow Pi on 8/10/2015. 11 | */ 12 | class TileMultiInv extends TileMulti with TSidedInvProvider[IInventory] { 13 | 14 | override def getInventory: IInventory = { 15 | if (getHost != null) { 16 | if (getHost.isInstanceOf[IMultiTileInvHost]) { 17 | return getHost.asInstanceOf[IMultiTileInvHost].getInventoryForTile(this) 18 | } 19 | else if (getHost.isInstanceOf[IInventoryProvider[IInventory]]) { 20 | return getHost.asInstanceOf[IInventoryProvider[IInventory]].getInventory 21 | } 22 | } 23 | return inventory_module 24 | } 25 | 26 | override protected var inventory_module: IInventory = null 27 | } 28 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiInvEnergy.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.api.tile.multiblock.IMultiTileInvHost 4 | import com.builtbroken.mc.api.tile.provider.IInventoryProvider 5 | import com.builtbroken.mc.prefab.tile.traits.TSidedInvProvider 6 | import net.minecraft.inventory.IInventory 7 | 8 | /** Implementation of Inventory and Energy wrapper tile for multi-block system 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 2/17/2017. 12 | */ 13 | class TileMultiInvEnergy extends TileMultiEnergy with TSidedInvProvider[IInventory] { 14 | 15 | override def getInventory: IInventory = { 16 | if (getHost != null) { 17 | if (getHost.isInstanceOf[IMultiTileInvHost]) { 18 | return getHost.asInstanceOf[IMultiTileInvHost].getInventoryForTile(this) 19 | } 20 | else if (getHost.isInstanceOf[IInventoryProvider[IInventory]]) { 21 | return getHost.asInstanceOf[IInventoryProvider[IInventory]].getInventory 22 | } 23 | } 24 | return inventory_module 25 | } 26 | 27 | override protected var inventory_module: IInventory = null 28 | } 29 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiTank.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.framework.multiblock.TileMulti 4 | import com.builtbroken.mc.prefab.tile.traits.TFluidHandler 5 | 6 | /** 7 | * Created by Dark on 8/9/2015. 8 | */ 9 | class TileMultiTank extends TileMulti with TFluidHandler { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiTankEnergy.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.prefab.tile.traits.TFluidHandler 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 2/17/2017. 8 | */ 9 | class TileMultiTankEnergy extends TileMultiEnergy with TFluidHandler { 10 | } 11 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiTankInv.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.api.tile.multiblock.IMultiTileInvHost 4 | import com.builtbroken.mc.api.tile.provider.IInventoryProvider 5 | import com.builtbroken.mc.prefab.tile.traits.TSidedInvProvider 6 | import net.minecraft.inventory.IInventory 7 | 8 | /** 9 | * @see License for what you can and can't do with the code. 10 | * Created by Dark(DarkGuardsman, Robert) on 2/17/2017. 11 | */ 12 | class TileMultiTankInv extends TileMultiTank with TSidedInvProvider[IInventory] { 13 | 14 | override def getInventory: IInventory = { 15 | if (getHost != null) { 16 | if (getHost.isInstanceOf[IMultiTileInvHost]) { 17 | return getHost.asInstanceOf[IMultiTileInvHost].getInventoryForTile(this) 18 | } 19 | else if (getHost.isInstanceOf[IInventoryProvider[IInventory]]) { 20 | return getHost.asInstanceOf[IInventoryProvider[IInventory]].getInventory 21 | } 22 | } 23 | return inventory_module 24 | } 25 | 26 | override protected var inventory_module: IInventory = null 27 | } 28 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/multiblock/types/TileMultiTankInvEnergy.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.multiblock.types 2 | 3 | import com.builtbroken.mc.prefab.tile.traits.TFluidHandler 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 2/17/2017. 8 | */ 9 | class TileMultiTankInvEnergy extends TileMultiInvEnergy with TFluidHandler { 10 | } 11 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * @see License for what you can and can't do with the code. 3 | * Created by Dark(DarkGuardsman, Robert) on 3/30/2017. 4 | */ 5 | package com.builtbroken.mc.framework; -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/recipe/cast/CastingData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.recipe.cast; 2 | 3 | import com.builtbroken.mc.core.References; 4 | 5 | /** 6 | * Created by Dark on 6/23/2015. 7 | */ 8 | public enum CastingData 9 | { 10 | INGOT(References.INGOT_VOLUME), 11 | NUGGET(References.INGOT_VOLUME / 16), 12 | BLOCK(References.INGOT_VOLUME * 9); 13 | 14 | public final int volume; 15 | 16 | CastingData(int volume) 17 | { 18 | this.volume = volume; 19 | } 20 | 21 | public String internalName() 22 | { 23 | return name().toLowerCase(); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/trigger/WorldTriggerArea.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.trigger; 2 | 3 | import com.builtbroken.mc.api.map.IMapArea; 4 | 5 | /** 6 | * Simple trigger that reacts to actions taken 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 9/30/2017. 10 | */ 11 | public class WorldTriggerArea extends WorldTrigger 12 | { 13 | IMapArea triggerArea; 14 | } 15 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/framework/trigger/WorldTriggerEvent.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.framework.trigger; 2 | 3 | /** 4 | * Simple trigger that reacts to an event fired by another system 5 | *

6 | * Example: Armory Weapon exploding, Machine turning off, Sound being produced 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 9/30/2017. 10 | */ 11 | public class WorldTriggerEvent extends WorldTrigger 12 | { 13 | /** ID of the event to listen for */ 14 | public final String eventID; 15 | 16 | public WorldTriggerEvent(String eventID) 17 | { 18 | this.eventID = eventID; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/asm/ASMUtility.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.lib.asm 2 | 3 | import org.objectweb.asm.tree.{ClassNode, InsnNode, MethodNode} 4 | import org.objectweb.asm.{Opcodes, Type} 5 | 6 | import scala.collection.JavaConversions._ 7 | 8 | /** 9 | * @since 21/04/14 10 | * @author tgame14 11 | */ 12 | object ASMUtility 13 | { 14 | def findOrCreateClinit(cnode: ClassNode): MethodNode = 15 | { 16 | for (mnode <- cnode.methods) 17 | { 18 | if (mnode.name.equals("")) 19 | { 20 | return mnode 21 | } 22 | } 23 | val clinit: MethodNode = new MethodNode(Opcodes.ACC_PUBLIC | Opcodes.ACC_STATIC, "", Type.getMethodDescriptor(Type.VOID_TYPE), null, null) 24 | clinit.instructions.add(new InsnNode(Opcodes.RETURN)) 25 | cnode.methods.add(clinit) 26 | return clinit 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/asm/CC_ClassWriter.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.asm; 2 | 3 | import org.objectweb.asm.ClassWriter; 4 | 5 | /** 6 | * @author ChickenBones 7 | */ 8 | public class CC_ClassWriter extends ClassWriter 9 | { 10 | private final boolean runtime; 11 | 12 | public CC_ClassWriter(int flags) 13 | { 14 | this(flags, false); 15 | } 16 | 17 | public CC_ClassWriter(int flags, boolean runtime) 18 | { 19 | super(flags); 20 | this.runtime = runtime; 21 | } 22 | 23 | @Override 24 | protected String getCommonSuperClass(String type1, String type2) 25 | { 26 | String c = type1.replace('/', '.'); 27 | String d = type2.replace('/', '.'); 28 | if (ClassHeirachyManager.classExtends(d, c)) 29 | { 30 | return type1; 31 | } 32 | if (ClassHeirachyManager.classExtends(c, d)) 33 | { 34 | return type2; 35 | } 36 | do 37 | { 38 | c = ClassHeirachyManager.getSuperClass(c, runtime); 39 | } 40 | while (!ClassHeirachyManager.classExtends(d, c)); 41 | return c.replace('.', '/'); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/data/ItemStackMap.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.data; 2 | 3 | import com.builtbroken.mc.core.Engine; 4 | import net.minecraft.item.ItemStack; 5 | 6 | import java.util.Map; 7 | 8 | /** 9 | * @see License for what you can and can't do with the code. 10 | * Created by Dark(DarkGuardsman, Robert) on 9/15/2017. 11 | */ 12 | public class ItemStackMap extends HashMapNotNull 13 | { 14 | public ItemStackMap(String name) 15 | { 16 | super(name); 17 | } 18 | 19 | public ItemStackMap(String name, Map map) 20 | { 21 | super(name, map); 22 | } 23 | 24 | @Override 25 | public V put(ItemStack key, V value) 26 | { 27 | if (key != null && key.getItem() != null && value != null) 28 | { 29 | return super.put(key, value); 30 | } 31 | else 32 | { 33 | Engine.logger().error("ItemStackMap: Something tried to insert an invalid value of [K: " + key + " V: " + value + "] into map '" + name + "'", new RuntimeException()); 34 | } 35 | return null; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/data/StringComparator.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.data; 2 | 3 | import java.util.Comparator; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 9/15/2017. 8 | */ 9 | public class StringComparator implements Comparator 10 | { 11 | @Override 12 | public int compare(String o1, String o2) 13 | { 14 | if (o1.equalsIgnoreCase(o2)) 15 | { 16 | return 0; 17 | } 18 | else if (o1 == null) 19 | { 20 | return -1; 21 | } 22 | else if (o2 == null) 23 | { 24 | return 1; 25 | } 26 | 27 | int l = o1.length() < o2.length() ? o1.length() : o2.length(); 28 | for (int i = 0; i < l; i++) 29 | { 30 | char c = o1.charAt(i); 31 | char c2 = o2.charAt(i); 32 | int result = Character.compare(c, c2); 33 | if (result != 0) 34 | { 35 | return result; 36 | } 37 | } 38 | return Integer.compare(o1.length(), o2.length()); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/data/heat/BlockConversionData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.data.heat; 2 | 3 | import com.builtbroken.mc.lib.world.edit.PlacementData; 4 | 5 | /** Data entry used to log which blocks turn into other blocks threw 6 | * heat exchange. Example ICE -> WATER 7 | * Created by robert on 2/25/2015. 8 | */ 9 | public class BlockConversionData 10 | { 11 | //If you need to change this data just make a new object and replace this reference to this one 12 | //If you badly need to change it use the reflection helper 13 | public final PlacementData original_block; 14 | public final PlacementData resulting_block; 15 | public final int temp_kelvin; 16 | 17 | public BlockConversionData(PlacementData original, PlacementData result, int kelvin) 18 | { 19 | this.original_block = original; 20 | this.resulting_block = result; 21 | this.temp_kelvin = kelvin; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/data/item/ItemStackList.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.data.item; 2 | 3 | import net.minecraft.item.ItemStack; 4 | 5 | import java.util.ArrayList; 6 | import java.util.Collection; 7 | import java.util.List; 8 | 9 | /** 10 | * Created by robert on 1/10/2015. 11 | */ 12 | public class ItemStackList extends ArrayList 13 | { 14 | public void add(ItemStack stack) 15 | { 16 | super.add(new ItemStackWrapper(stack)); 17 | } 18 | 19 | public void add(Collection stacks) 20 | { 21 | for(ItemStack stack : stacks) 22 | { 23 | add(stack); 24 | } 25 | } 26 | 27 | public List toItemStack() 28 | { 29 | List list = new ArrayList(); 30 | for(ItemStackWrapper wrapper : this) 31 | { 32 | list.add(wrapper.itemStack); 33 | } 34 | return list; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/render/block/RenderTileDummy.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.render.block; 2 | 3 | import com.builtbroken.mc.imp.transform.vector.Pos; 4 | import com.builtbroken.mc.prefab.tile.Tile; 5 | import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; 6 | import net.minecraft.tileentity.TileEntity; 7 | 8 | /** 9 | * Created by robert on 1/11/2015. 10 | */ 11 | @Deprecated 12 | public class RenderTileDummy extends TileEntitySpecialRenderer 13 | { 14 | @Override 15 | public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float deltaFrame) 16 | { 17 | if(tile instanceof Tile) 18 | { 19 | ((Tile) tile).renderDynamic(new Pos(x, y, z), deltaFrame, 0); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/render/fx/FXElectricBoltSpawner.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.render.fx; 2 | 3 | import com.builtbroken.jlib.data.vector.IPos3D; 4 | import net.minecraft.client.Minecraft; 5 | import net.minecraft.client.particle.EntityFX; 6 | import net.minecraft.world.World; 7 | 8 | import java.util.Random; 9 | 10 | /** 11 | * A spawner used to spawn in multiple electrical bolts for a specific duration. 12 | */ 13 | public class FXElectricBoltSpawner extends EntityFX 14 | { 15 | private IPos3D start; 16 | private IPos3D end; 17 | 18 | public FXElectricBoltSpawner(World world, IPos3D startVec, IPos3D targetVec, long seed, int duration) 19 | { 20 | super(world, startVec.x(), startVec.y(), startVec.z(), 0.0D, 0.0D, 0.0D); 21 | 22 | if (seed == 0) 23 | { 24 | this.rand = new Random(); 25 | } 26 | else 27 | { 28 | this.rand = new Random(seed); 29 | } 30 | 31 | this.start = startVec; 32 | this.end = targetVec; 33 | this.particleMaxAge = duration; 34 | } 35 | 36 | @Override 37 | public void onUpdate() 38 | { 39 | Minecraft.getMinecraft().effectRenderer.addEffect(new FXElectricBolt(this.worldObj, this.start, this.end, 0)); 40 | if (this.particleAge++ >= this.particleMaxAge) 41 | { 42 | this.setDead(); 43 | } 44 | } 45 | 46 | } 47 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/render/fx/FXEnderPortalPartical.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.render.fx; 2 | 3 | import cpw.mods.fml.common.FMLLog; 4 | import cpw.mods.fml.relauncher.ReflectionHelper; 5 | import cpw.mods.fml.relauncher.Side; 6 | import cpw.mods.fml.relauncher.SideOnly; 7 | import net.minecraft.client.particle.EntityPortalFX; 8 | import net.minecraft.world.World; 9 | import com.builtbroken.mc.imp.transform.vector.Pos; 10 | 11 | @SideOnly(Side.CLIENT) 12 | public class FXEnderPortalPartical extends EntityPortalFX 13 | { 14 | public FXEnderPortalPartical(World par1World, Pos position, float red, float green, float blue, float scale, double distance) 15 | { 16 | super(par1World, position.x(), position.y(), position.z(), 0, 0, 0); 17 | this.particleScale = scale; 18 | try 19 | { 20 | ReflectionHelper.setPrivateValue(EntityPortalFX.class, this, this.particleScale, 0); 21 | } 22 | catch (Exception e) 23 | { 24 | FMLLog.warning("[Voltz Engine] Failed to correctly spawn portal effects."); 25 | } 26 | this.renderDistanceWeight = distance; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/render/model/loader/FixedTechneModelLoader.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.render.model.loader; 2 | 3 | import com.builtbroken.mc.lib.render.model.FixedTechneModel; 4 | import net.minecraft.util.ResourceLocation; 5 | import net.minecraftforge.client.model.IModelCustom; 6 | import net.minecraftforge.client.model.IModelCustomLoader; 7 | import net.minecraftforge.client.model.ModelFormatException; 8 | 9 | public class FixedTechneModelLoader implements IModelCustomLoader 10 | { 11 | 12 | private static final String[] types = { "tcn" }; 13 | 14 | @Override 15 | public String getType() 16 | { 17 | return "Techne model"; 18 | } 19 | 20 | @Override 21 | public String[] getSuffixes() 22 | { 23 | return types; 24 | } 25 | 26 | @Override 27 | public IModelCustom loadInstance(ResourceLocation resource) throws ModelFormatException 28 | { 29 | return new FixedTechneModel(resource); 30 | } 31 | } -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/generator/OreGeneratorSettings.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.generator; 2 | 3 | import net.minecraft.block.Block; 4 | import net.minecraft.init.Blocks; 5 | 6 | /** 7 | * @see License for what you can and can't do with the code. 8 | * Created by Dark(DarkGuardsman, Robert) on 5/1/2017. 9 | */ 10 | public class OreGeneratorSettings 11 | { 12 | public int minGenerateLevel; 13 | public int maxGenerateLevel; 14 | public int amountPerChunk; 15 | public int amountPerBranch; 16 | 17 | public Block replaceBlock = Blocks.stone; 18 | 19 | public OreGeneratorSettings(int min, int max, int amountPerBranch, int amountPerChunk) 20 | { 21 | this.minGenerateLevel = min; 22 | this.maxGenerateLevel = max; 23 | this.amountPerBranch = amountPerBranch; 24 | this.amountPerChunk = amountPerChunk; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/map/fluid/FluidDataManager.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.map.fluid; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 5/20/2017. 6 | */ 7 | public class FluidDataManager 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/map/fluid/FluidMap.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.map.fluid; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 5/20/2017. 6 | */ 7 | public class FluidMap 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/map/heat/HeatMap.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.map.heat; 2 | 3 | /** 4 | * Tracks heat energy values for the world 5 | * 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 2/25/2015. 8 | */ 9 | public class HeatMap 10 | { 11 | public final int dimID; 12 | 13 | public HeatMap(int dimID) 14 | { 15 | this.dimID = dimID; 16 | } 17 | 18 | /** 19 | * Dimension ID this map tracks 20 | * 21 | * @return valid dim ID. 22 | */ 23 | public int dimID() 24 | { 25 | return dimID; 26 | } 27 | 28 | @Override 29 | public boolean equals(Object object) 30 | { 31 | if (object == this) 32 | { 33 | return true; 34 | } 35 | else if (object instanceof HeatMap) 36 | { 37 | return ((HeatMap) object).dimID == dimID; 38 | } 39 | return false; 40 | } 41 | 42 | @Override 43 | public String toString() 44 | { 45 | return "RadiationMap[" + dimID + "]"; 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/map/radar/data/RadarObject.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.map.radar.data; 2 | 3 | import com.builtbroken.mc.api.IWorldPosition; 4 | import net.minecraft.world.ChunkCoordIntPair; 5 | 6 | /** 7 | * Special type of weak reference used to track radar objects. This prevents the radar system from holding on to 8 | * references that should be unloaded from the map. 9 | * 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 3/5/2016. 12 | */ 13 | public abstract class RadarObject implements IWorldPosition 14 | { 15 | /** 16 | * Is the radar object valid? 17 | * 18 | * @return true if the object is valid, normally a null check 19 | */ 20 | public abstract boolean isValid(); 21 | 22 | public ChunkCoordIntPair getChunkCoordIntPair() 23 | { 24 | return new ChunkCoordIntPair((int)x() >> 4, (int)z() >> 4); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/lib/world/map/radiation/RadiationDataManager.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.lib.world.map.radiation; 2 | 3 | import com.builtbroken.mc.lib.world.map.data.ChunkMapManager; 4 | 5 | /** 6 | * Handles updating radiation data for the game world 7 | * 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 5/20/2017. 10 | */ 11 | public class RadiationDataManager extends ChunkMapManager 12 | { 13 | public RadiationDataManager() 14 | { 15 | super("radiation", "radiation"); 16 | } 17 | 18 | @Override 19 | protected RadiationMap createNewMap(int dim) 20 | { 21 | return null; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/scala/com/builtbroken/mc/testing/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * @see License for what you can and can't do with the code. 3 | * Created by Dark(DarkGuardsman, Robert) on 6/24/2016. 4 | */ 5 | package com.builtbroken.mc.testing; -------------------------------------------------------------------------------- /src/main/scala/resonant/api/ITier.java: -------------------------------------------------------------------------------- 1 | package resonant.api; 2 | 3 | /** This interface should be applied to all things that has a tier/level. 4 | * 5 | * @author Calclavia */ 6 | public interface ITier 7 | { 8 | /** Gets the tier of this object 9 | * 10 | * @return - The tier */ 11 | public int getTier(); 12 | 13 | /** Sets the tier of the object 14 | * 15 | * @param tier - The tier to be set */ 16 | public void setTier(int tier); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/ExplosiveType.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | public enum ExplosiveType 4 | { 5 | ALL, 6 | /** An explosive in TNT block form. */ 7 | BLOCK, 8 | /** An explosive in item form such as a grenade. */ 9 | ITEM, 10 | /** An explosive in aircraft form such as a missile. */ 11 | AIR, 12 | /** An explosive in vehicle form such as a minecart. */ 13 | VEHICLE; 14 | 15 | public static ExplosiveType get(int id) 16 | { 17 | if (id >= 0 && id < ExplosiveType.values().length) 18 | { 19 | return ExplosiveType.values()[id]; 20 | } 21 | 22 | return null; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IEMPBlock.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | import net.minecraft.world.World; 4 | 5 | /** Applied to all blocks that has a custom reaction to EMPs. Blocks not TileEntities. 6 | * 7 | * @author Calclavia */ 8 | public interface IEMPBlock 9 | { 10 | /** Called when this block gets attacked by EMP. 11 | * 12 | * @param world - The world object. 13 | * @param position - The position. 14 | * @param empExplosive - The explosion */ 15 | public void onEMP(World world, int x, int y, int z, IExplosion empExplosive); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IEMPItem.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | import net.minecraft.entity.Entity; 4 | import net.minecraft.item.ItemStack; 5 | 6 | /** Applied to all items that can be protected from EMP somehow. 7 | * 8 | * @author Calclavia */ 9 | public interface IEMPItem 10 | { 11 | /** Called when this item is being EMPed 12 | * 13 | * @param itemStack - The itemstack attacked by EMP 14 | * @param entity - The entity holding the item 15 | * @param empExplosives - The IExplosive object */ 16 | public void onEMP(ItemStack itemStack, Entity entity, IExplosion empExplosive); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IEntityExplosion.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | /** An entity that is currently conducting an explosion. 4 | * 5 | * @author Calclavia */ 6 | public interface IEntityExplosion 7 | { 8 | public void endExplosion(); 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IExplosion.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | /** The actual explosion interface. Extends Explosion.java. 4 | * 5 | * @author Calclavia */ 6 | public interface IExplosion 7 | { 8 | /** Called to initiate the explosion. */ 9 | public void explode(); 10 | 11 | /** @return The radius of effect of the explosion. */ 12 | public float getRadius(); 13 | 14 | /** @return The energy emitted by this explosive. In Joules and approximately based off of a real 15 | * life equivalent. */ 16 | public long getEnergy(); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IExplosiveContainer.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | import net.minecraft.nbt.NBTTagCompound; 4 | 5 | /** An object that contains a reference to IExplosive. Carried by explosives, grenades and missile 6 | * entities etc. 7 | * 8 | * @author Calclavia */ 9 | public interface IExplosiveContainer 10 | { 11 | public NBTTagCompound getTagCompound(); 12 | 13 | public IExplosive getExplosiveType(); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/IExplosiveIgnore.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | /** Applied to entities that ignore the affects of a specific explosion. 4 | * 5 | * @author Calclavia */ 6 | public interface IExplosiveIgnore 7 | { 8 | public boolean canIgnore(IExplosion explosion); 9 | } 10 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/ILauncherContainer.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | import net.minecraft.inventory.IInventory; 4 | 5 | /** Applied to TileEntities that contains missiles within them. 6 | * 7 | * @author Calclavia */ 8 | public interface ILauncherContainer extends IInventory 9 | { 10 | /** Retrieves the launcher controller controlling this container. */ 11 | public ILauncherController getController(); 12 | } 13 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/ILauncherController.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | import com.builtbroken.mc.imp.transform.vector.Pos; 4 | import net.minecraft.item.ItemStack; 5 | 6 | /** Applied to all launcher TileEntitiies that operates the launching of missiles. 7 | * 8 | * @author Calclavia */ 9 | public interface ILauncherController 10 | { 11 | /** What type of launcher is this? */ 12 | public LauncherType getLauncherType(); 13 | 14 | /** Launches the missile into the specified target. */ 15 | public boolean launch(); 16 | 17 | /** Can the launcher launch the missile? */ 18 | public boolean canLaunch(); 19 | 20 | /** @return The status of the launcher. */ 21 | public String getStatus(); 22 | 23 | /** @return The target of the launcher. */ 24 | public Pos getTarget(); 25 | 26 | /** @param target Sets the target of the launcher */ 27 | public void setTarget(Pos target); 28 | 29 | default void setTarget(double x, double y, double z) 30 | { 31 | setTarget(new Pos(x, y, z)); 32 | } 33 | 34 | /** Places a missile into the launcher. */ 35 | public void placeMissile(ItemStack itemStack); 36 | } -------------------------------------------------------------------------------- /src/main/scala/resonant/api/explosion/LauncherType.java: -------------------------------------------------------------------------------- 1 | package resonant.api.explosion; 2 | 3 | /** Types of missile launchers 4 | * 5 | * @author Calclavia */ 6 | public enum LauncherType 7 | { 8 | TRADITIONAL, 9 | CRUISE 10 | } -------------------------------------------------------------------------------- /src/main/scala/resonant/api/weapon/IAmmunition.java: -------------------------------------------------------------------------------- 1 | package resonant.api.weapon; 2 | 3 | import net.minecraft.item.ItemStack; 4 | 5 | public interface IAmmunition 6 | { 7 | /** Called when the item is added to the world when a ammo container is forcefully broken. Useful 8 | * it the ammo should detonate or cause extra havoc 9 | * 10 | * @return what is left of the stack after action. Return entire stack if nothing happens */ 11 | public ItemStack onDroppedIntoWorld(ItemStack itemStack); 12 | 13 | /** Called when the ammo is consumed, modify the stack to show it has been consumed, null if 14 | * fully consumed */ 15 | public ItemStack consumeAmmo(ItemStack itemStack, int count); 16 | 17 | /** Amount of rounds of ammo this itemStack counts towards */ 18 | public int getAmmoCount(ItemStack itemStack); 19 | 20 | /** Gets the item stack that is the shell for the ammo */ 21 | public ItemStack getShell(ItemStack itemStack, int count); 22 | 23 | /** Type of project only used to restrict ammo use */ 24 | public ProjectileType getType(ItemStack itemStack); 25 | 26 | /** Gets the damage this ammo item should do when fired */ 27 | public float getDamage(); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /src/main/scala/resonant/api/weapon/ProjectileType.java: -------------------------------------------------------------------------------- 1 | package resonant.api.weapon; 2 | 3 | /** Used by sentries to tell what type of projectile its using 4 | * 5 | * @author DarkGuardsman */ 6 | public enum ProjectileType 7 | { 8 | UNKNOWN, /* NOT A PROJECTILE */ 9 | CONVENTIONAL, /* Classic bullets that do impact damage */ 10 | RAILGUN, /* Ammo that can only be used by railguns */ 11 | MISSILE, /* Ammo used by SAM sites or missile based sentries */ 12 | EXPLOSIVE/* Ammo that a mortar or grenade launcher uses */; 13 | } 14 | -------------------------------------------------------------------------------- /src/templates/java/com/builtbroken/mc/codegen/asdsa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/templates/java/com/builtbroken/mc/codegen/asdsa -------------------------------------------------------------------------------- /src/templates/java/com/builtbroken/mc/codegen/processor/ItemWrappedTemplate.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.processor; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 4/1/2017. 6 | */ 7 | public @interface ItemWrappedTemplate 8 | { 9 | String annotationName(); 10 | } 11 | -------------------------------------------------------------------------------- /src/templates/java/com/builtbroken/mc/codegen/processor/TileWrappedTemplate.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.processor; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 4/1/2017. 6 | */ 7 | public @interface TileWrappedTemplate 8 | { 9 | String annotationName(); 10 | } 11 | -------------------------------------------------------------------------------- /src/templates/java/com/builtbroken/mc/codegen/templates/item/ItemTemplate.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.mc.codegen.templates.item; 2 | 3 | import com.builtbroken.mc.codegen.processor.ItemWrappedTemplate; 4 | import com.builtbroken.mc.framework.item.ItemBase; 5 | import com.builtbroken.mc.framework.item.ItemNode; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 5/9/2017. 10 | */ 11 | @ItemWrappedTemplate(annotationName = "Empty") 12 | public class ItemTemplate extends ItemBase 13 | { 14 | public ItemTemplate(ItemNode node) 15 | { 16 | super(node); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/test/resources/assets/voltzenginetest/models/thing.obj: -------------------------------------------------------------------------------- 1 | # 3ds Max Wavefront OBJ Exporter v0.97b - (c)2007 guruware 2 | # File Created: 04.04.2017 18:00:00 3 | 4 | mtllib thing.mtl 5 | 6 | # 7 | # object SketchUp 8 | # 9 | 10 | v 0.5000 0.0000 -0.5000 11 | v -0.5000 0.0000 0.5000 12 | v -0.5000 0.0000 -0.5000 13 | v 0.5000 0.0000 0.5000 14 | v 0.5000 1.0000 0.5000 15 | v 0.5000 1.0000 -0.5000 16 | v -0.5000 1.0000 0.5000 17 | v -0.5000 1.0000 -0.5000 18 | # 8 vertices 19 | 20 | vn 0.0000 -1.0000 -0.0000 21 | vn 1.0000 0.0000 -0.0000 22 | vn 0.0000 0.0000 1.0000 23 | vn -1.0000 0.0000 -0.0000 24 | vn 0.0000 0.0000 -1.0000 25 | vn 0.0000 1.0000 -0.0000 26 | # 6 vertex normals 27 | 28 | vt 0.0000 1.0000 0.0000 29 | vt 1.0000 0.0000 0.0000 30 | vt 1.0000 1.0000 0.0000 31 | vt 0.0000 0.0000 0.0000 32 | vt 1.0000 0.0000 1.0000 33 | vt 0.0000 1.0000 1.0000 34 | vt 0.0000 0.0000 1.0000 35 | vt 1.0000 1.0000 1.0000 36 | # 8 texture coords 37 | 38 | g SketchUp 39 | usemtl Material__25 40 | s off 41 | f 1/1/1 2/2/1 3/3/1 42 | f 2/2/1 1/1/1 4/4/1 43 | f 1/5/2 5/6/2 4/7/2 44 | f 5/6/2 1/5/2 6/8/2 45 | f 5/3/3 2/4/3 4/2/3 46 | f 2/4/3 5/3/3 7/1/3 47 | f 8/1/4 2/2/4 7/3/4 48 | f 2/2/4 8/1/4 3/4/4 49 | f 8/8/5 1/7/5 3/5/5 50 | f 1/7/5 8/8/5 6/6/5 51 | f 5/5/6 8/6/6 7/7/6 52 | f 8/6/6 5/5/6 6/8/6 53 | # 12 faces 54 | 55 | -------------------------------------------------------------------------------- /src/test/resources/assets/voltzenginetest/textures/items/testTexture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/assets/voltzenginetest/textures/items/testTexture.png -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/block/Block.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "block": { 6 | "name": "veTestBlock", 7 | "id": "veTestBlock", 8 | "mod":"voltzenginetest", 9 | "material": "rock", 10 | "listeners":[ 11 | "rotation", 12 | "rotationIcon" 13 | ] 14 | }, 15 | "render": { 16 | "contentID": "voltzenginetest:veTestBlock", 17 | "type": "block", 18 | "states": [ 19 | { 20 | "id": "tile", 21 | "sides": "stone", 22 | "north":"planks", 23 | "south":"logs", 24 | "up": "planks", 25 | "down":"logs" 26 | } 27 | ] 28 | }, 29 | "texture": { 30 | "key": "stone", 31 | "domain": "minecraft", 32 | "name": "stone", 33 | "type": "block" 34 | }, 35 | "texture:1": { 36 | "key": "planks", 37 | "domain": "minecraft", 38 | "name": "planks_oak", 39 | "type": "block" 40 | }, 41 | "texture:2": { 42 | "key": "logs", 43 | "domain": "minecraft", 44 | "name": "log_oak_top", 45 | "type": "block" 46 | } 47 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/block/BlockInventory.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "block": { 6 | "name": "inventoryTestTile", 7 | "id": "inventoryTestTile", 8 | "mod":"voltzenginetest", 9 | "material": "rock", 10 | "tileEntity": { 11 | "id": "inventoryTestTile", 12 | "class": "com.builtbroken.mc.codegen.tests.tile.TileEntityWrapperTestInventory" 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/block/BlockTile.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "block": { 6 | "name": "veTestBlock2", 7 | "id": "veTestBlock2", 8 | "mod": "voltzenginetest", 9 | "material": "rock", 10 | "renderType": -1, 11 | "tileEntity": { 12 | "id": "veTestBlockTile", 13 | "class": "com.builtbroken.test.mod.block.TileEntityVETestBlock" 14 | } 15 | }, 16 | "render": { 17 | "contentID": "voltzenginetest:veTestBlockTile", 18 | "type": "tile", 19 | "tileClass": "com.builtbroken.test.mod.block.TileEntityVETestBlock", 20 | "states": [ 21 | { 22 | "id": "tile", 23 | "renderType": "model", 24 | "modelID": "modelThing" 25 | }, 26 | { 27 | "id": "tile.2", 28 | "renderType": "model", 29 | "parent": "tile", 30 | "rotation": { 31 | "yaw": 90 32 | } 33 | } 34 | ] 35 | }, 36 | "model": { 37 | "key": "modelThing", 38 | "domain": "voltzenginetest", 39 | "name": "thing.obj" 40 | } 41 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/item/TestItem.json: -------------------------------------------------------------------------------- 1 | { 2 | "item": 3 | { 4 | "name":"test", 5 | "mod":"voltzenginetest", 6 | "id":"testVeItem" 7 | } 8 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/item/TestItemRender.json: -------------------------------------------------------------------------------- 1 | { 2 | "render": { 3 | "type":"item", 4 | "contentID": "item.voltzenginetest:testVeItem", 5 | "states": [ 6 | { 7 | "id": "item.inventory", 8 | "renderType": "item", 9 | "textureID": "ve.testItemTexture" 10 | } 11 | ] 12 | }, 13 | "texture": { 14 | "key": "ve.testItemTexture", 15 | "domain": "voltzenginetest", 16 | "name": "testTexture", 17 | "type": "item" 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/recipes/TestCraftingRecipe.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "craftingGridRecipe": { 6 | "loadCondition":"devMode", 7 | "type": "shaped", 8 | "output":"item@minecraft:stick", 9 | "grid": "...,.S.,...", 10 | "items": { 11 | "S": "item@minecraft:stick" 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/recipes/TestCraftingRecipeReplacement.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "recipeRemoval": { 6 | "type": "replace", 7 | "craftingType": "grid", 8 | "item": "item@minecraft:stick", 9 | "craftingGridRecipe": { 10 | "loadCondition": "devMode", 11 | "type": "shaped", 12 | "output": "item@minecraft:stick", 13 | "grid": "C,C", 14 | "items": { 15 | "C": "block@minecraft:cobblestone" 16 | } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/recipes/TestCraftingRecipeWithOre.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "craftingGridRecipe": { 6 | "loadCondition":"devMode", 7 | "type": "shaped", 8 | "output":"minecraft:cobblestone", 9 | "grid": "RR,RR", 10 | "items": { 11 | "R": "rock" 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/recipes/TestFurnaceRecipe.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "furnaceRecipe": { 6 | "loadCondition": "devMode", 7 | "output": "item@minecraft:stick", 8 | "input": "item@minecraft:stick" 9 | } 10 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/recipes/TestOreName.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": { 3 | "name": "${voltzengine}" 4 | }, 5 | "oreName": { 6 | "name":"rock", 7 | "item":"block@minecraft:cobblestone" 8 | } 9 | } -------------------------------------------------------------------------------- /src/test/resources/content/voltzenginetest/test/render/TestRenderItem.json: -------------------------------------------------------------------------------- 1 | { 2 | "item": 3 | { 4 | "name":"testRenderItem", 5 | "mod":"voltzenginetest", 6 | "id":"testRenderItem" 7 | } 8 | } -------------------------------------------------------------------------------- /src/test/resources/test/.local/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/.local/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/[test]test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/[test]test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/external/sub1/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "tag": "hello" 3 | } -------------------------------------------------------------------------------- /src/test/resources/test/external/sub2/subsub2/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/external/sub2/subsub2/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/external/sub2/subsub2/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "tag": "hello" 3 | } -------------------------------------------------------------------------------- /src/test/resources/test/external/sub2/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/external/sub2/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/external/sub2/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "tag": "hello" 3 | } -------------------------------------------------------------------------------- /src/test/resources/test/external/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/external/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/external/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "tag": "hello" 3 | } -------------------------------------------------------------------------------- /src/test/resources/test/test test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/test test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/test-test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/test-test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "tag" :"hello" 3 | } 4 | -------------------------------------------------------------------------------- /src/test/resources/test/test.test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/test.test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/test_test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/test_test/test.jar -------------------------------------------------------------------------------- /src/test/resources/test/{test}test/test.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VoltzEngine-Project/Engine/ce7b310b41b7930598acc75cf4b56e36efbff143/src/test/resources/test/{test}test/test.jar -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/core/TestCore.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.core; 2 | 3 | import com.builtbroken.mc.core.Engine; 4 | import com.builtbroken.mc.testing.junit.AbstractTest; 5 | import com.builtbroken.mc.testing.junit.VoltzTestRunner; 6 | import org.junit.Test; 7 | import org.junit.runner.RunWith; 8 | 9 | /** 10 | * @see License for what you can and can't do with the code. 11 | * Created by Dark(DarkGuardsman, Robert) on 7/29/2017. 12 | */ 13 | @RunWith(VoltzTestRunner.class) 14 | public class TestCore extends AbstractTest 15 | { 16 | @Test 17 | public void testJUnitCheck() 18 | { 19 | if(!Engine.isJUnitTest()) 20 | { 21 | StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); 22 | for (StackTraceElement element : stackTrace) 23 | { 24 | System.out.println(element); 25 | } 26 | fail(); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/core/package-info.java: -------------------------------------------------------------------------------- 1 | /** 2 | * @see License for what you can and can't do with the code. 3 | * Created by Dark(DarkGuardsman, Robert) on 10/12/2015. 4 | */ 5 | package com.builtbroken.test.core; -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/lib/TestInventoryUtility.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.lib; 2 | 3 | import com.builtbroken.mc.testing.junit.AbstractTest; 4 | import com.builtbroken.mc.testing.junit.VoltzTestRunner; 5 | import org.junit.Test; 6 | import org.junit.runner.RunWith; 7 | 8 | /** 9 | * JUnit test for {@link com.builtbroken.mc.prefab.inventory.InventoryUtility} 10 | * 11 | * @see License for what you can and can't do with the code. 12 | * Created by Dark(DarkGuardsman, Robert) on 10/23/2015. 13 | */ 14 | @RunWith(VoltzTestRunner.class) 15 | public class TestInventoryUtility extends AbstractTest 16 | { 17 | @Test 18 | public void testEmpty() 19 | { 20 | 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/lib/world/explosive/MainRadiusData.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.lib.world.explosive; 2 | 3 | import com.builtbroken.mc.framework.explosive.ExplosiveRegistry; 4 | 5 | import java.util.Scanner; 6 | 7 | /** 8 | * @see License for what you can and can't do with the code. 9 | * Created by Dark(DarkGuardsman, Robert) on 5/2/2016. 10 | */ 11 | public class MainRadiusData 12 | { 13 | public static void main(String... args) 14 | { 15 | Scanner reader = new Scanner(System.in); // Reading from System.in 16 | System.out.println("Enter a number: "); 17 | int radius = reader.nextInt(); 18 | 19 | System.out.println("Radius: " + radius); 20 | for (int scale = 1; scale < 128; scale++) 21 | { 22 | double newRadius = ExplosiveRegistry.getExplosiveSize(radius, scale); 23 | System.out.println("\tScale[" + scale + "] = " + newRadius); 24 | if (scale % 5 == 0) 25 | { 26 | System.out.println(); 27 | } 28 | } 29 | System.out.println(); 30 | 31 | System.out.println("Press any key to exit... "); 32 | reader.next(); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/mod/ClientProxy.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.mod; 2 | 3 | /** 4 | * @see License for what you can and can't do with the code. 5 | * Created by Dark(DarkGuardsman, Robert) on 3/12/2017. 6 | */ 7 | public class ClientProxy extends CommonProxy 8 | { 9 | } 10 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/mod/CommonProxy.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.mod; 2 | 3 | import com.builtbroken.mc.framework.mod.AbstractProxy; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 3/12/2017. 8 | */ 9 | public class CommonProxy extends AbstractProxy 10 | { 11 | } 12 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/mod/block/TileEntityVETestBlock.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.mod.block; 2 | 3 | import net.minecraft.tileentity.TileEntity; 4 | 5 | /** 6 | * @see License for what you can and can't do with the code. 7 | * Created by Dark(DarkGuardsman, Robert) on 4/3/2017. 8 | */ 9 | public class TileEntityVETestBlock extends TileEntity 10 | { 11 | } 12 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/prefab/energy/TestRFEnergyHandler.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.prefab.energy; 2 | 3 | import com.builtbroken.mc.mods.rf.RFEnergyHandler; 4 | import com.builtbroken.mc.testing.junit.AbstractTest; 5 | import com.builtbroken.mc.testing.junit.VoltzTestRunner; 6 | import org.junit.Assert; 7 | import org.junit.runner.RunWith; 8 | 9 | /** 10 | * Created by Dark on 8/15/2015. 11 | */ 12 | @RunWith(VoltzTestRunner.class) 13 | public class TestRFEnergyHandler extends AbstractTest 14 | { 15 | public void testInit() 16 | { 17 | RFEnergyHandler handler = new RFEnergyHandler(2); 18 | //TODO If the ratio changes UPDATE THE WIKI with the new values 19 | Assert.assertTrue("Handler ratio should be 0.5", handler.toForeignEnergy == (1.0 / 2.0)); 20 | Assert.assertTrue("Handler ratio should be 2", handler.toUEEnergy == 2); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/prefab/energy/TileTEnergyHandler.scala: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.prefab.energy 2 | 3 | import com.builtbroken.mc.framework.energy.data.EnergyBuffer 4 | import net.minecraft.tileentity.TileEntity 5 | 6 | /** 7 | * Created by Dark on 8/15/2015. 8 | */ 9 | class TileTEnergyHandler extends TileEntity{ 10 | 11 | var buffer: EnergyBuffer = new EnergyBuffer(100) 12 | } 13 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/testing/TestTileEntityTestPrefab.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.testing; 2 | 3 | import com.builtbroken.mc.testing.junit.VoltzTestRunner; 4 | import com.builtbroken.mc.testing.tile.AbstractTileEntityTest; 5 | import net.minecraft.block.BlockFurnace; 6 | import net.minecraft.init.Blocks; 7 | import net.minecraft.tileentity.TileEntityFurnace; 8 | import org.junit.runner.RunWith; 9 | 10 | /** 11 | * Test for {@link AbstractTileEntityTest} using {@link TileEntityFurnace} and {@link BlockFurnace} as the input data. 12 | * Doesn't actually test the functionality of the furnace but just the basic method calls 13 | * Created by Dark on 9/12/2015. 14 | */ 15 | @RunWith(VoltzTestRunner.class) 16 | public class TestTileEntityTestPrefab extends AbstractTileEntityTest 17 | { 18 | public TestTileEntityTestPrefab() 19 | { 20 | super((BlockFurnace) Blocks.furnace, TileEntityFurnace.class); 21 | } 22 | 23 | @Override 24 | protected TileEntityFurnace newTile() 25 | { 26 | return new TileEntityFurnace(); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/testing/TestTileTestPrefab.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.testing; 2 | 3 | import com.builtbroken.mc.prefab.tile.Tile; 4 | import com.builtbroken.mc.testing.junit.VoltzTestRunner; 5 | import com.builtbroken.mc.testing.tile.AbstractTileTest; 6 | import net.minecraft.block.material.Material; 7 | import org.junit.runner.RunWith; 8 | 9 | /** 10 | * JUnit test for {@link Tile} 11 | * Created by robert on 1/6/2015. 12 | */ 13 | @RunWith(VoltzTestRunner.class) 14 | public class TestTileTestPrefab extends AbstractTileTest 15 | { 16 | public TestTileTestPrefab() throws InstantiationException, IllegalAccessException 17 | { 18 | super("TestTileTest", TileTestTest.class); 19 | } 20 | 21 | @Override 22 | protected TileTestTest newTile() 23 | { 24 | return new TileTestTest(); 25 | } 26 | 27 | public static class TileTestTest extends Tile 28 | { 29 | public TileTestTest() 30 | { 31 | super("TileTestTest", Material.cloth); 32 | this.textureName = "stone"; 33 | } 34 | 35 | @Override 36 | public Tile newTile() 37 | { 38 | return new TileTestTest(); 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/test/scala/com/builtbroken/test/transform/vector/Vector3Test.java: -------------------------------------------------------------------------------- 1 | package com.builtbroken.test.transform.vector; 2 | 3 | import junit.framework.TestCase; 4 | import org.junit.Assert; 5 | import com.builtbroken.mc.imp.transform.vector.Pos; 6 | 7 | /** 8 | * Created by robert on 10/27/2014. 9 | */ 10 | public class Vector3Test extends TestCase 11 | { 12 | /** Simple addition test for Vector3 */ 13 | public void testAddition() throws Exception 14 | { 15 | Pos vec = new Pos(0, 1, 0); 16 | vec = vec.add(1, 1, 1); 17 | 18 | Assert.assertEquals(2.0, vec.y(), 0); 19 | Assert.assertEquals(1.0, vec.x(), 0); 20 | Assert.assertEquals(1.0, vec.z(), 0); 21 | } 22 | 23 | /** Simple addition test for Vector3 */ 24 | public void testSubtraction() throws Exception 25 | { 26 | Pos vec = new Pos(0, 1, 0); 27 | vec = vec.subtract(1, 1, 1); 28 | 29 | Assert.assertEquals(0.0, vec.y(), 0); 30 | Assert.assertEquals(-1.0, vec.x(), 0); 31 | Assert.assertEquals(-1.0, vec.z(), 0); 32 | } 33 | } 34 | --------------------------------------------------------------------------------