aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
AgeCommit message (Collapse)Author
2022-12-17another attempt at lag fixing (#1556)Glease
* another attempt at lag fixing Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * fix tests Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * fix tests 2/2 Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * address review Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * get rid of GT_Test Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2022-11-28Make Waila show all the covers attached (#1527)miozune
* Make Waila show all the covers attached * Make full translatable
2022-11-25Rewrite GUIs with ModularUI (#1381)miozune
* Base work for ModularUI compat * Remove useless interface * Add almost all the widgets * Invert method * Refactor NEI stack placement positions * NEI handlers on ModularUI * Add some more docs * AdvDebugStructureWriter * Fix NEI progressbar not working * PrimitiveBlastFurnace * clean * derp * clean * spotlessApply * Boilers * Buffers * clean * N by N slots containers * Fix boilers not having bucket interaction Put opening UI to individual MetaTEs * Maintenance Hatch * clean * spotlessApply * Add dependency * IndustrialApiary * Adapt to ModularUI change * Base work for covers & fix crash with MP * Fix crash with server * Rewrite base work for covers * Send initial cover data on cover GUI open so that the time of showing incorrect data will be eliminated * Covers part 1 * Rename package: ModularUI -> modularui * Rename class: GT_UIInfo -> GT_UIInfos * Fix build * Covers part2 * Fix missing client check with tile UI & fix title overlap * CoverTabLine * Move cover window creators to inner class * Fix crash with null base TE * Close GUI when tile is broken * Color cover window with tile colorization * Change signature of addUIWidgets * FluidFilter cover, FluidDisplaySlotWidget, BasicTank, BasicGenerator, Output Hatch, MicrowaveEnergyTransmitter, Teleporter, DigitalChest, DigitalTank * Add title tab * Move package: modularui -> modularui/widget * Programmed circuit + IConfigurationCircuitSupport * clean * VolumetricFlask * Remove integrated circuit overlay from recipe input slots * Input Hatch & Quadruple Input Hatch * Multiblock * Deprecate old cover GUI * BasicMachines * Finish BasicMachine & NEI * Expand DTPF NEI to 9 slots * Fix ME input bus on MP * Move AESlotWidget to public class * Move GT_Recipe_Map constructors with mNEIUnificateOutput to setter method * Move SteamTexture.Variant to outer enum * Switch to remote repository * oops * Update MUI * Update MUI * Minor refactor for change amount buttons * Display items and fluids that exceed usual count * blah * use +=, why didn't I do this * Update MUI * Move ModularUI to Base (#1510) * Move ModularUI to Base * Move most of the ModularUI functionality to `BaseTileEntity` (and `CoverableTileEntity`) * `CommonMetaTileEntity` delegates ato the MetaTileEntity * Added several interfaces (with defaults) to indicate if a tile/metatile override/implement certain behaviors. * Moved `IConfigurationCircuitSupport` interface such that it will work with BaseTileEntity or a MetaTileEntity * Address reviews Co-authored-by: miozune <miozune@gmail.com> * Update MUI * Minor changes to NEI * Return :facepalm: * IGetTabIconSet override * Some more changes to NEI * Merge texture getter interfaces to new class GUITextureSet * Remove BBF structure picture as it's auto-buildable now * Make unified title tab style of texture angular * Expose some boiler texture getters for addon * Fix crash with cover GUI on pipe * Lower the number of recipe per page for DTPF & update MUI * Update MUI * Fix crash with middle-clicking slot on circuit selection GUI * Fix circuit selection window not syncing item from base machine * Merge GT_NEI_AssLineHandler into GT_NEI_DefaultHandler * Update MUI * Add in TecTech multi message * Allow changing the way of binding player inventory * Update MUI * Update MUI * Update MUI * Update MUI * Update MUI * Make MUI non-transitive to allow addons to use their own version * Force enable mixin * Format fluid amount tooltip * Add GUITextureSet.STEAM * Add guard against null ModularWindow creation * Add constructors for Muffler Hatch with inventory * Fix output slot on digital chest and tank allowing insertion * Don't log null ModularWindow * Add default implementation for IHasWorldObjectAndCoords#openGUI * Make openGTTileEntityUI accept MultiTE & cleanup Co-authored-by: Jason Mitchell <mitchej@gmail.com>
2022-10-22Added check to API if the block should drop its inventory on break (#1479)Maxim
* Added check to API if the block should drop its inventory on break * Apply spotless * Changed should drop flag to take index argument
2022-09-23Implement `onBaseTEDestroyed` hook for coversMatej Dipčár
2022-09-03merge in ASM-ed in changes from gt++ (#1339)Glease
* merge in ASM-ed in changes from gt++ * Spotless apply for branch gtpp-asm-merge for #1339 (#1340) Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: GitHub GTNH Actions <> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-31Two slots wiremill (#1324)Martin Robertz
* add a circuit slot to wiremil * add circuits to wire recipes * add 2 input slots to Wiremil * exchange circuit and material slot * add 2x-16x wires to wiremil * add missing 12x wires * add slot migration code (#1326) * spotlessApply (#1327) Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: GitHub GTNH Actions <> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-27Update buildscript & apply spotless (#1306)Raven Szewczyk
* Update dependencies * Update buildscript, apply spotless
2022-08-10do not return IAlignment if MTE is not IAlignmentProvider (#1234)Glease
2022-07-23add(api/enums): particle and sound effect enumerations (#1154)Léa Gris
* add(api/enums): particle and sound effect enumerations - Adds new GregTech API enumerations: - `ParticleFX`: Enumerates known EntityFX particles. - `SoundResource`: Enumerates known sounds with, id and ResourceLocation. - Refactors code to use the new enumerations instead of string literals. - Uses `ParticleFX` and `onRandomDisplayTick` to improve or implement new particle effects for these machines: - BBF: Adds random flames in front of the firebox. - Steam machines: Changes pressure-exhaust particles to white vapour, rather than dark smoke. - Magic Energy Absorber: Adds random effect, of absorbed magical purple particles, by the EnderDragon Egg siphon. - Forge Hammer: Adds sparse random sparks, ejected from the main face.
2022-07-12Report crash while updateEntity to FML log as well (#1126)miozune
2022-04-21Fix machine rain exploding in biomes that does not have visual rains (#1026)Glease
* Fix machine rain exploding in biomes that does not have visual rains * update buildscript * Add missing boolean negation
2022-04-18Multitileentity precursor (#963)Jason Mitchell
* Refactors * Refactor CoverableTileEntity a bit more, pull out a CommonMetaTileEntity * Add an IDebugableTileEntity interface instead of checking various subclasses * Move more redstone related things to CoverableTileEntity * Add IGTENet * Final and dead code removal * Address a few comments, fix a few comments, remove some more dead code, and add some more finals. * fix bad rebase
2022-03-31Make gregtech machines mark the chunk they're in as dirty on updates (#1001)Jakub Szewczyk
* Make gregtech machines mark the chunk they're in as dirty on updates * Avoid any potential NPE in markDirty * Mark dirty on GT tool use (screwdriver/wrench/etc) * Fix multiblocks not marking hatches/buses as dirty too
2022-02-03Basic Machine NEI Power Tiers (#914)YannickMG
* Add IntelliJ .shelf folder to .gitignore * Fixing GT_GuiTooltip bug I introduced * Deprecated superfluous String trans methods. * Add Power class to compute and describe power usage * trans -> GT_Utility.trans Removed absent param from Javadoc * Add Power to BasicMachine and use it for power calculations * Steam BasicMachine rework Have Bronze and Steel tier override Power with appropriate SteamPower Make Bronze machines explicitly tier 1 Make Steel machines explicitly tier 2 Defined recipe list and bricked status for each machine Unified checkRecipe uses machine's recipe list and Power * Raised NEI dependency to 2.2.5 * Defining NEI transfer rect in individual UIs Using a new interface called from GT_RectHandler * Code cleanup & minor refactor * Add power field to NEI Default Handler Add method to create Power object from the recipe map * Display power tier in NEI handler name * User Power to draw NEI Handler description * Enable filtering handler recipes using Power * Repurposing aBricked parameter into aHighPressure To fix my previous faulty method of setting mTier * Must call getCache to get recipes properly. * Better communicate NEI Overclock info
2022-01-30Waila handling was all in one place, distribute it now that it's in GT5u ↵Jason Mitchell
proper. (#907)
2022-01-23AE2 Cable facade as cover (#887)Glease
* initial work on facade covers * fix colorMultiplier also removed derp * Clean up drop cover texture reset code What was I thinking actually? Send a packet to reset client states? * Fix cover display stack
2021-12-30Refactors for easier reading (#839)Jason Mitchell
* Refactors * Common functionality to base classes * GT Pre/Postload broken into more modular pieces * Extract common (mainly cover related) functionality from BaseMetaTileEntity & BaseMetaPipeEntity
2021-12-18Fix derp in BaseMetaPipeEntity during git merge (#824)Glease
Also added a bunch of fallback overrides to GT_Cover_None in the case of my stupid programming errors again
2021-12-17Fix cover data not resetting on clientGlease
2021-12-16Fix oversight in cover NBT migrationGlease
2021-12-01Add a new ghost slot to single block machines for config circuitsGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-11-27Merge pull request #755 from GTNewHorizons/patch-outbound-loss-reduceMartin Robertz
Reduce innate outbound loss by one tier
2021-11-26Reduce innate outbound loss by one tierGlease
This will make LV power networks less annoying to build Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-11-23centralized pollution for GT multiesboubou_19
2021-11-21Makes it not crash if someone calls in from UNKNOWN directionGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-11-17Rename GT_CoverBehavior_New to GT_CoverBehaviorBaseGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-11-17convert cover data storage to a full nbt tagGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-10-23Try to use locale formattingD-Cysteine
* Also format some more of the portable scanner's output
2021-10-22Try start processing immediately upon manual fluid manipulationGlease
2021-08-01Manual mergingTimeConqueror
2021-08-01Merge branch 'experimental' into code-improvementsAndrey
2021-08-01Improved readability of setBlockEventTimeConqueror
2021-08-01Improved readability of BaseMetaTileEntity receiveClientEventTimeConqueror
2021-07-30Fixes related to coil hint blocksGlease
Also updates StructureLib to fix invisible block hint and pulled the utility methods up. Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-07-30Implement IConstructable for demo multisGlease
2021-07-30Initial StructureLib integrationGlease
2021-07-03Remove unnecessary redstone state query for coversGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-07-02remove debug codekorneel vandamme
2021-06-21fix NPE/infinit loop and small refractoringkorneel vandamme
2021-06-16add graph network to pipes and implement it for powerkorneel vandamme
2021-05-24feat(glow): iconset machines glow supportLéa Gris
- Add glow support for all sides and states of iconset machines (same as with basicmachines). Automated code cleanup with IDEA of: - Optiimise all imports (remove unused, sort) - Reorder all modifiers to the canonical preferred order (as stated in the Java Language Specification) - Add all missing @Override annotations
2021-05-21fix(render): move new textures rendering to new packageLéa Gris
Old textures rendering are kept in api/objects for backward compatibility. The old textures rendering does not handle glow textures or independant inventory tessellation. The old textures will only work with the old GT_Renderer_Block class New textures rendering with own tessellation in inventory and handling of glow emisssive textures are moved to the api/render package. These must not be used with the Old GT_Renderer_Block class or it will crash with: Already Tessellating Exception from the Tessellator class
2021-03-30Updated to use proper naming conventions.charles
2021-03-30Made it so that machine control covers disable themselves when thecharles
machine runs out of energy
2021-03-24feat(cover): hide covers when holding a soldering-ironLéa Gris
2021-03-20feat(cover): handles transparent coversLéa Gris
Add support for transparent covers (glass plate) on all GT Machines: - See pipes, wires, cables through transparent covers - Layer transparent covers over full-block pipes and machines
2021-03-10Correctly release/reuse channel after ME bus removal and reconnectrepo_alt
2021-01-19ME output busrepo_alt
2020-12-26Machine Block Update changesJason Mitchell
* Conditionally trigger an update on front facing (Needed for pipelines) * Use a queue instead of recursion