aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities/boilers
AgeCommit message (Collapse)Author
2023-05-06Exploring some various ForgeDirection fixes (#1950)Jason Mitchell
* Fix mFacing NPEs * Default facing fixes (#1945) * QuickFixes incomplete facing fixes * fix Neither UP nor DOWN conditions as offsetY == 0 is not valid test * fix neither up nor down again * Still not fixed: use ForgeDirection.flag for clarty killed more ordinal siding. * get ride of offset testing --------- Co-authored-by: Jakub <53441451+kuba6000@users.noreply.github.com> Co-authored-by: Jason Mitchell <mitchej@gmail.com> * bit logic fix * Fix single block machine facings * Predict the machine facing direction clientside before the server packet arrives * Fix isFacingValid logic --------- Co-authored-by: Léa Gris <lea.gris@noiraude.net> Co-authored-by: Jakub <53441451+kuba6000@users.noreply.github.com> Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: Raven Szewczyk <git@eigenraven.me>
2023-05-01bs+saMartin Robertz
2023-04-23Forge direction (#1895)Jason Mitchell
* ForgeDirection Also refactor the clusterfuck that was `getCoordinateScan` Co-authored by: Jason Mitchell <mitchej@gmail.com> * Fix rendering of Frame Boxes Frame boxes needed their own implementation of getTexture with int connexion mask, which is returning an error texture for the MetaTileEntity, because pipes (FrameBox **is** a pipe) do use this method to return different textures based on connexion status. --------- Co-authored-by: Léa Gris <lea.gris@noiraude.net>
2023-04-10Update spotless config to 0.2.2Raven Szewczyk
2023-04-01Jabel, Generic injection and mostly automatic code cleanup (#1829)Raven Szewczyk
* Enable Jabel&Generic injection, fix type error caused by this * add missing <> * Infer generic types automatically * Parametrize cast types * Use enhanced for loops * Unnecessary boxing * Unnecessary unboxing * Use Objects.equals * Explicit type can be replaced with `<>` * Collapse identical catch blocks * Add SafeVarargs where applicable * Anonymous type can be replaced with lambda * Use List.sort directly * Lambda can be a method reference * Statement lambda can be an expression lambda * Use string switches * Instanceof pattern matching * Text block can be used * Migrate to enhanced switch * Java style array declarations * Unnecessary toString() * More unnecessary String conversions * Unnecessary modifiers * Unnecessary semicolons * Fix duplicate conditions * Extract common code from if branches * Replace switches with ifs for 1-2 cases * Inner class may be static * Minor performance issues * Replace string appending in loops with string builders * Fix IntelliJ using the wrong empty list method * Use Long.compare * Generic arguments: getSubItems * Generic arguments: getSubBlocks * Raw types warnings * Fix remaining missing generics * Too weak variable type leads to unnecessary cast * Redundant type casts * Redundant array length check * Redundant vararg arrays * Manual min/max implementations * A couple missed inspections * Goodbye explosion power ternary ladder * Apply spotless * Get rid of the other two big ternary ladders * Binary search explosion power * Don't overcomplicate things
2023-04-01update spotless formatting (#1827)boubou19
2023-03-30Implementation of A more useful Lava Boiler (#1814)Léa Gris
* Fix Missing null/empty checks on boilers base class Would cause a deadlock on empty boilers unable to start, as it tried to transfer null or empty FuildStack. * Fix Sound coordinates so it can be centered on block * WIP Lava Boiler Improuvements * :spotlessapply * Add GUI slot block background textures * Restrict ash slot to remove items only (disallow inserting items there) * Finalize GUI and Obsidian Production mechanic * Fix still output Obisidian from cooled Lava even when no more Lava available * Lava Boiler Textures: Improves GUI and TOP - Fluid slot now has Steam themed textures - Item slot block background gets a smaller icon that hides behind actual item blocks - Boiler TOP is now a drain texture instead of pump * Add null check
2023-01-30[ci skip] spotlessApply with the new settingsJason Mitchell
2022-12-20Don't allow inserting item into solar boiler for fuel and ash slots (#1568)miozune
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-08-27Update buildscript & apply spotless (#1306)Raven Szewczyk
* Update dependencies * Update buildscript, apply spotless
2022-08-24Disable calcification when using distilled water (#1290)Stēlla Caerulea
Disable calcification when using distilled water.
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-18feat(tile): onRandomDisplayTick (#1138)Léa Gris
Adds onRandomDisplayTick method to the IGregTechTileEntity interface that can proxy randomDisplayTick from block. This allows to delegate block particles to the tile, with a client-side-only processing. Includes reference implementation for the Bronze Boiler
2022-01-30Waila handling was all in one place, distribute it now that it's in GT5u ↵Jason Mitchell
proper. (#907)
2021-11-25changed single block boilers to use per second for more precisionboubou_19
2021-11-24centralized pollution for GT boilersboubou_19
2021-11-17convert cover data storage to a full nbt tagGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-08-01Merge remote-tracking branch 'origin/experimental' into boilerTimeConqueror
2021-08-01Boiler: when filled with bucket being in creative mode, it doesn't transform ↵TimeConqueror
water bucket back to empty bucket.
2021-08-01Visibility changes & new methods in GT_MetaTileEntity_Boiler for using them ↵TimeConqueror
in GTPP
2021-08-01Merge branch 'experimental' into code-improvementsAndrey
2021-08-01GT_MetaTileEntity_Boiler: Forgot to replace sendSoundTimeConqueror
2021-08-01Improved readability of GT_MetaTileEntity_Boiler#doSoundTimeConqueror
2021-07-29Add clay bucket ore prefix; fix oredictingD-Cysteine
2021-07-24Fix method formattingD-Cysteine
2021-07-24Update single-block boiler GUI to use getCapacity()D-Cysteine
Update single-block boiler GUI to use GT_MetaTileEntity_Boiler.getCapacity() for computing water and steam fill percentages. Also change lava boiler to have 32000 capacity (from 16000).
2021-07-01Improve lava boiler tooltipGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-06-04move the comment to where it belongsGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-06-04Fix ancient copy paste problemGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-06-03Prevent integer overflow in solar boilerGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
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-21feat(render): implementation-free api texture factoryLéa Gris
Provides an implementation-free API Texture factory an builder. Deprecates gregtech.api.objects.GT_*Texture.java classes Once all GregTech add-on will be migrated to the new implemnetation-free API, changes to the implementation will not affect the add-on. For now, this API allow rendering of in-world glow textures. In-inventory/hand rendering of glow texture require implementation changes that are postponed until no add-on uses the deprecated embedded implementation API.
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-05-21feat(render): active high pressure lava boiler glowLéa Gris
2021-05-21feat(render): active boiler glowLéa Gris
2021-04-24cleanup(todo): remove done todo tasks mentionsLéa Gris
WAILAPlugins has been updated to the new solar boiler interface. Deprecated methods are left behind for backward compat with older plugins. Rebase from experimental
2021-04-24Optimize config codeGlease
1. Reuse same config across all solar boilers of the same class 2. Remove shading of config field in subclass Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-04-24fixes(solarboiler): integer math, waila plugin interface, configLéa Gris
- Fix integer math of getProductionPerSecond by moving the multiplier ahead. - Fix and deprecate WAILAPlugins interface by returning ratio adjusted values. - Simplify the inner Config class.
2021-04-24impr(solarboilers): abstracted the configLéa Gris
2021-04-24fix(solarboilers): fixes and QOL improvementsLéa Gris
- Change run-time counter from seconds to ticks since solar boilers are ticking every 10 ticks, or 0.5 second. - Prevent run-time counter from overflowing Integer.MAX_VALUE ticks. - Fix missing check of available steam before pushing to output. - Fix the cool-down rate that broke in GTNH 2.1.0.6. - Make the solar boilers entirely configurable.
2021-04-24impr(solarboilers): configurable solar boilersLéa Gris
2021-04-24refactor(solarboilers): reorganise cleanup factorise codeLéa Gris
2021-04-24Fix solar boiler heat up speedGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-04-14Fix waila display for solar boilersGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-04-13Fix solar boiler outputting to wrong directionGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-04-03Polished GT_MetaTileEntity_Boiler (#492)bartimaeusnek
2021-04-03Ensure conservation of masses in boilersGlease
Unified single block boiler logic Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-03-20Expose all fluid tanks properly when there are more than one internal tankGlease
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2021-03-11Minor improvementsbartimaeusnek