aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/GT_Mod.java
AgeCommit message (Collapse)Author
2023-06-15Move away from SlotWidget for circuit selection window (#2083)miozune
* Fix crash on MP * Move away from SlotWidget for circuit selection window
2023-06-08fix (#2069)Jakub
2023-06-05Code cleanup (#2040)chill
* remove redundant suppressions * prettify commented code * improve comments The integer comment contradicted the code, so I deleted it. * delete commented-out code * update bitwise int flip from XOR to the dedicated tilda operator The flip was a 32-bit XOR, which is an int-flip. That XOR was replaced with an equivalent tilda operator. * convert a field to inline This field was used only once, so put it straight to where it is used. * remove fluid fix since no-one uses Forge version 1355 or earlier * unwrap switches where fitting In some places, we suppress IntelliJ's inspection RedundantLabeledSwitchRuleCodeBlock - we don't want to unwrap some of the suggested cases because we want to keep the consistency in a switch statement for the sake of readability. * fuse "collect" into Stream API * fix javadocs * remove unnecessary public modifiers from an interface Members of an interface are public by default. * move common parts outside of if * suppress OverrideOnly warning in a javadoc * remove unused lock * suppress warnings about unchecked casts These warnings require non-trivial fixes that are yet to arrive. For now, let's suppress them to reduce the warning-bloat. * remove outdated comment * remove final modifier from private methods Because they are private, it is hard to accidentally overwrite them. Therefore, the final modifier is redundant in this case. * refactor getIcon The first 'if' doesn't cover only tMeta == 9 && mConnectedMachineTextures, therefore the second if can be unrolled. The last switch is redundant because all tMeta values are covered by switches, but let's keep SOLID_STEEL as a fallback just in case. * explain what the casings are and why block casings are split * suppress switch-to-if suggestion * remove unnecessary null check The null is handled in doGenerateItem() * address redundant local variables * rename variables in onTick * suppress warning about accessing static member via instance * rephrase exception * rephrase javadoc * address field-can-be-final warnings * remove empty methods * enum cannot inherit, so protected is redundant * remove redundant throws * update imports to be not wildcard * remove unnecessary try-catch * update for loop * remove redundant code in order to use the diamond operator * update instanceof to use pattern variables * replace blank lines with <p> in javadocs * fix dangling javadocs * suppress warning about unreachable methods in javadocs * remove redundant operation * add the descriptions of parameters in javadocs Also fix javadocs along the way. * relax returned type in javadoc That was done in order to make the docs reflect the code more often. Otherwise, people may forget to change the returned type again with another change. * make long conversion explicit Integer multiplication can give a wrong result if one of the parts is not explicitly cast to long. Let's cast one of the parts where applicable. * remove unary plus * simplify unary minus * use addAll instead of forEach,add It was suggested by IntelliJ to replace the iteration with a bulk operation to improve performance. * replace .asList with .singletonList for consistency * simplify toArray calls Explanation from IntelliJ: There are two styles to convert a collection to an array: * A pre-sized array, for example, c.toArray(new String[c.size()]) * An empty array, for example, c.toArray(new String[0]) In older Java versions, using a pre-sized array was recommended, as the reflection call necessary to create an array of proper size was quite slow. However, since late updates of OpenJDK 6, this call was intrinsified, making the performance of the empty array version the same, and sometimes even better, compared to the pre-sized version. Also, passing a pre-sized array is dangerous for a concurrent or synchronized collection as a data race is possible between the size and toArray calls. This may result in extra nulls at the end of the array if the collection was concurrently shrunk during the operation. * split StringBuilder append Explanation by IntelliJ: Reports String concatenation used as the argument to appends. Such calls may profitably be turned into chained append calls on the existing StringBuilder saving the cost of an extra StringBuilder allocation. This inspection ignores compile-time evaluated String concatenations, in which case the conversion would only worsen performance. * annotate overriding methods with @Nonnull where needed The method that was overridden has @Nonnull so the method that is overriding should also have @Nonnull. * remove set adding itself to itself * remove null check because findField either works or blows up cpw.mods.fml.relauncher.ReflectionHelper::findField either returns a non-null value or throws a RuntimeException, so no need to check of null. * remove slot comparison with tInventory.length slot max value is 127 when tInventory.length is set to 256, which results in that the condition is always true and unnecessary. * remove aOutput2 null check As GT_Values.NI is null, there is no need to check aOutput2 for null again * suppress the suggestion to delete tMeta < 13 mConnectedMachineTextures can change, so tMeta range is not guaranteed * remove aCoverVariable % 3 < 2 the if above already limits the result of % 3 to "2", so the condition "less than 2" is always false. * unwrap "if" because bonus is unchanged Unwrap if because even if the bonus is a variable, it hasn't been changed for the past 8 years and is unlikely to be changed in the future. * reformat javadoc * improve ignoring an exception Make them either more clear or concise * fixup fix typo * update deprecated calls of newInstance() * remove testing BaseMetaTileEntity GregTech_API.constructBaseMetaTileEntity() checks the creation by itself, logging and throwing a runtime error if failed. * unwrap hatch-fill for do_SolarSalt To reach this branch, do_coolant needs to be false and we need to still be in the function, which means that do_SolarSalt was set to true in the previous top-tier "if". * remove always-false input-bus checks of MTE PlasmaForge size() is non-negative, and the values it is compared to are final and 0. * length and size are non-negative Therefore, there's no need to check their negativity * aOutput is guaranteed to be positive * tThereWasARecipe is always false when reached in its first occurrence * convert an assert into if Only tStack 2 is checked for null because if it isn't null then tStack1 also isn't null based on the "if" above. Also IntelliJ was sure that tStack is not null for some reason. On a side note, assertions work only either with a specified flag or in debug runs. Therefore, it is dangerous to rely on them. * simplify stone-gravel-cobble if tBlock != Blocks.stone because of the if at the start of the method. for the last else-if, tBlock == Blocks.gravel because of the check slightly above the change. * interDimensional is always true because of the first if * convert an example to javadoc * remove always-false statements * replace referential string equality with equals If we compare strings by "==", we compare references to them, which is not what we usually want. I wasn't sure if String Pool works here, so I played it save with equals(). * use Automatic Resource Management for AutoCloseable ByteBufOutputStream * add todo to swap from sleep to event bus * null is checked by instanceof * merge switch branches * add a TODO to use clamp() * new String declaration is redundant * use getOrDefault for a map * replace StringBuilder with concatenation where fitting Using a StringBuilder to concatenate two string will not make the program faster or more understandable, so I swapped it to concatenation. * remove unnecessary continue * flip if * remove redundant returns * unwrap ifs It's checked at the top "if" that aType == IItemRenderer.ItemRenderType.INVENTORY, so all aType.equals(IItemRenderer.ItemRenderType.INVENTORY below are always true. * remove checking all GT VERSIONs except the API one * remove version check from GT_Mod and delete respective VERSION fields Aside from GregTech_API.VERSION, these fields are not used anywhere in the project, so only GregTech_API.VERSION was kept. The idea and the usage check were done by miozune.
2023-06-03Refactor GT-ERR-01 (#2045)chill
* refactor and reword GT-ERR-01 Add two functions at the bottom: one contains the error message, the other one prints it. This refactor puts the error at the end of the file, so you don't have to scroll through a screen's worth of space when debugging this file. * invert if condition for mRegisteredOres.contains It is questionable to put the case that is considered "wrong" as the first one, and do the most common result as "else". The flipped "if" essentially says "if condition then do the usual, otherwise handle the error."
2023-05-08Migrate to FluidSlotWidget from FluidDisplaySlotWidget (#1963)miozune
2023-05-06Split MetaTE loader and integrate bw material replacement (#1954)chochem
* split MetaTileEntities loader * sort into load * now switch material * add comment * cleanup
2023-05-01bs+saMartin Robertz
2023-04-21Recipes ra2 (#1872)boubou19
* Recipes RA2 fixes * Use \uXXXX for non-ASCII characters * Misc cleanup (#1888) * migrate away from addThermalCentrifugeRecipe * split recipes of GT_Block_Stones_Abstract * migrate away from addForgeHammerRecipe * migrate away from addChemicalBathRecipe * remove "DisableOldChemicalRecipes" and its usage, as it's disabled by default in NH and it increases recipe complexity for nothing * Remove underground biomes ore classes, as it's not present in NH * migrate away from addFluidCannerRecipe * migrate away from addFluidExtractionRecipe * migrate away from addChemicalRecipe * migrate away from addMultiblockChemicalRecipe * deprecate addChemicalRecipeForBasicMachineOnly * migrate away from addCentrifugeRecipe * spotlessApply * fixing wrong merge conflict solving * Add Tengam materials (#1891) * Add Tengam materials * Change new recipes to consume 15/16 Amp * Remove now redundant `break` statements * fix comb chances? * fix centrifuge code not working --------- Co-authored-by: glowredman <35727266+glowredman@users.noreply.github.com> Co-authored-by: Martin Robertz <dream-master@gmx.net>
2023-04-10Update spotless config to 0.2.2Raven Szewczyk
2023-04-09add slot migration to disassembler (#1860)Glease
2023-04-08Kill Disassembler 🔪 (#1855)Connor-Colenso
* Kill disassembler * Kill disassembler * Change arc furnace to fulfil Dreams request. --------- Co-authored-by: GTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com>
2023-04-04Modid work (#1833)boubou19
* add all mods founds in NHCore * depracte old strings * add ars magica 2 * more enum work * use a switch * spotless * more mod id rework * more mod id rework * more mod id rework * should be last * spotless * rename to make more sense * add path attribute * add getResourcePath to enum * spotless
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-04-01Recipe Adder v2 (#1770)Glease
* add everything * fixes * migrate plasma forge recipes * syntax update * make chances array length differ a fatal error * time constants + long eut overload * migrate extruder recipes * migrate electromagnetic separator recipes * migrate wiremill recipes * migrate forming press recipes * migrate bender recipes * add doc to clarify the three itemInputs * migrate alloy smelter recipes * migrate arc furnace recipes * added ModIDs enum * sort ModIDs * migrate autoclave recipes * migrated some assembler recipes * split a bit more assembler recipes * migrate canner recipes * migrate brewing recipes * ic2 mod check in canner recipes * use some loops to reduce the amount of recipes to migrate * add requested helper methods * migrate vacuum freezer recipes * migrate thermal centrifuge recipes * format smelter recipes only, doesn't go through normal GT recipe * migrated slicer recipes * migrated sifter recipes * Use proper enum now * remove more constants * cleaning cutting recipes before migration * remove tons of dead commented recipes * migrate pyrolyse recipes * use ModIDs enum more * migrate printer recipes * add a less confusing way to specify value of specialItem * migrate pulverizer recipes * less confusing special item specification * even more ModIDs enum usage * fix auto * import confusing Minecraft enum value with Minecraft client object * migrated blast furnace recipes * migrated Centrifuge recipes * migrated assembler recipes * migrated implosion compressor recipes * migrated extractor recipes * migrated mixer recipes * remove useless code * mgrate universal chemical recipes * refactor chemical recipes * migrate single block only chem reactor recipes * migrate chem reactor recipes * reworked circuit assembler recipes before migrating them * migrated circuit assembler recipes * fix merge conflict for assembler recipes * remove leftover of the merge conflicts * fix weird translation glitch * example of assembly line recipe using RA2 * bugfixes for assline * remove specialValue usage in blast furnace recipes * fix more bugs * add nooptimize to where it make sense * add recipe descriptions * Materials.Superconductor -> Materials.SuperconductorUHV * remove useless Object creations * remove explicit long casts * migrate assemblyline recipes * migrate chemical bath recipes * migrate compressor recipes * move smelting recipe where it belongs * migrated cutting machine recipes * migrated fermenter recipes (unhide alcohol) * remove explicit long casts * migrate fluid canner recipes * migrate fluid heater recipes * migrated fusion recipes * migrated lathe recipes * migrated laser engraver recipes * migrated packager recipes * migrated forge hammer recipes * migrated TPM recipes * exit early and reduced indents * migrated fluid extractor recipes * migrated fluid solidifier recipes * migrated electrolyzer recipes * migrated crop processing recipes * migrated default polymerization recipes * migrate distillery recipes * migrate matter amplifier recipes * add metadata identifier for fusion ignition threshold * migrate fuel recipes * update bs (cherry picked from commit c2d931c9b6caa0376e9d50591894cd849021104d) * spotless (cherry picked from commit 1060f5357fb95e28bfae1f052025f55dabc21a0f) * guard against null itemstacks * wrong translation * fix empty arrays being accessed * add 0 duration and 0 EU/t for fuel recipes * fix typo in matter amplifier recipes * spotless apply --------- Co-authored-by: boubou19 <miisterunknown@gmail.com> Co-authored-by: Martin Robertz <dream-master@gmx.net>
2023-03-18fix the machine's tooltip doesn't automatically generate when loading (#1799)iouter
* register tooltips * merge master (#1800) * Added custom click sound for the power switch (#1798) * Auto-stock for stocking input bus (#1790) * Add auto-stock for stocking input bus * Add GUI support for autostock and min input limiting. * Added support for copy+pasting config w/ data sticks * typo * correct order * fixes * update branch (#1795) * Send cover data immediately when cover is placed (#1791) * migrate ore prefixes from gt++ and bw (#1792) OrePrefixes are used in switch case a lot and this prevents it from being a valid EnumHelper target. Under the hood for huge enum switch cases, javac will generate a synthetic class with a synthetic static final int[] field to hold switch map. If the OrePrefixes is ever extended, said switch map will be smaller than actual and cause ArrayIndexOutOfBoundException. This moves all addon added ore prefixes back to main mod. This also cleans up the obnoxious comment blocks created by spotless. * Fix advanced external transmitter cover (#1793) * change tpv back to 4k * Revert "change tpv back to 4k" This reverts commit 3560a670e3d697b26014f6320e344867953684e7. * change Tungstensteel to 4k * Add regulator abilities to Steam Valve (#1785) * fix: fix Steam Valve not being configurable * Revert "fix: fix Steam Valve not being configurable" This reverts commit 505d9e273b48315fde154490e116d58fed46ffaf. * feat: add steam regulator * feat: add superheated steam to steam valve * update bs * update to subversion 42 --------- Co-authored-by: miozune <miozune@gmail.com> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: Matej Dipčár <492666@mail.muni.cz> Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: NexusNull <p.wellershaus@googlemail.com> * fix --------- Co-authored-by: miozune <miozune@gmail.com> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: Matej Dipčár <492666@mail.muni.cz> Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: NexusNull <p.wellershaus@googlemail.com> --------- Co-authored-by: Maxim <maxim235@gmx.de> Co-authored-by: MadMan310 <66886359+MadMan310@users.noreply.github.com> Co-authored-by: miozune <miozune@gmail.com> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: Matej Dipčár <492666@mail.muni.cz> Co-authored-by: NexusNull <p.wellershaus@googlemail.com> * Revert "merge master (#1800)" This reverts commit dafbaf22fd6bef1112143b80d35eae9c60880dfc. --------- Co-authored-by: Martin Robertz <dream-master@gmx.net> Co-authored-by: Maxim <maxim235@gmx.de> Co-authored-by: MadMan310 <66886359+MadMan310@users.noreply.github.com> Co-authored-by: miozune <miozune@gmail.com> Co-authored-by: Glease <4586901+Glease@users.noreply.github.com> Co-authored-by: Matej Dipčár <492666@mail.muni.cz> Co-authored-by: NexusNull <p.wellershaus@googlemail.com>
2023-03-11update to subversion 42Martin Robertz
2023-03-01Add way to register tooltip without using oredict (#1779)miozune
2023-02-26Add a completely new system for late/endgame content (#1754)BlueWeabo
* basic work * typo fixes * make an enum folder * location enums * space project manager * implement the space project teams * commands * move things around and new things * upgrade work * requirement work * if possible use an upgrades values * cleanup * more helpers in command * fix AOOBE * fix world saved data * builder for requirements * add command autocomplete * fix command npe * mark world saved data dirty * switch to saving to json string. this is fine * fix npe * fix files not saving correctly. serialization * spotless * part 1 of fixing json saving * working json file saving * rename fields * full implementation of SP_Upgrade * fixes * cleanup * texture prep * documentation part 1 * documentation part 2 and rework of json saving * fix the missed conversions * set texture when copying * more interface usage and fixes * rework saving. * Added rudimentary NEI handler for projects * Revert "Added rudimentary NEI handler for projects" This reverts commit 6d8210e25b27fee7dc1865d1afa91708a8d9b875. * address NPEs * some textures * higher quality textures, put in the moon as a temp texture * add a check to create a team if one smt weird happens * command work * add ability to localize the space bodies * Added disabled button and toggle button * Added possibility to not render the original stacksize of item stacks in NEI * Added NEI handler * Fixes item count on tooltip always rendering as 1 * Fix refactor * 5 new body textures * fix misspelled texture name --------- Co-authored-by: minecraft7771 <maxim235@gmx.de>
2023-02-19Make material renderer available for arbitrary item (#1753)miozune
* Make material renderer available for arbitrary item * pass render pass
2023-02-10Rfg cleanup (#1726)Raven Szewczyk
* Update buildscript, add all recently added gradle.properties entries * Dependency version bumps and cleanup * Bump eternal singularity version * Update buildscript * Make AE2 a required dependency * Switch version to class generation from token replacement
2023-01-30[ci skip] spotlessApply with the new settingsJason Mitchell
2023-01-20Add Hazmat enchant to add Full Hazmat protection to an arbitrary armor item ↵David Lindström
(#1663)
2022-12-23add NEI handler for ic2 fuel rods (#1580)Glease
* add NEI handler for ic2 fuel rods Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * fix typo Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> * rename variable to cover up the original intention Signed-off-by: Glease <4586901+Glease@users.noreply.github.com> Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
2022-12-20Use GTNHLib Tooltip Animation (#1569)glowredman
* Update build.gradle * Extract tooltip animation to API * Use GTNHLib * Delete AnimatedTooltipHandler.java
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-12Revert the change to Paperbark trees, also removes harvestcraft from ↵Alastors
dependency (#1459) * Update dependencies.gradle * Update GT_Mod.java * Delete Harvestcraft.java
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-09-01various loading time optimization (#1330)Glease
* change to more performant GT_ItemStack2 in some maps The exact performance improvement of this is hard to measure as it impacts both startup time and tick time, but in general identityHashCode should be faster than retrieving stuff from registry. * improve performance for registerUsagesForMaterials index the recipe list based on recipe type, so we no longer do 16*44*444 recipe match. this indexing reduced the total runtime from ~12 second to ~3.7 second. * guess this not belongs here * move type check earlier * more GT_ItemStack2 Co-authored-by: Martin Robertz <dream-master@gmx.net>
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-15Overriding GUI colors with .mcmeta (#1261)Albi
* Implemented gui textcolor override with .mcmeta files * cleanup * Added shared class to reduce code duplication * Moved #drawLine back to GT_NEI_DefaultHandler
2022-08-15Add localization to MC language list (#1260)miozune
* Add localization to MC language list * Revert workaround patches
2022-08-14Fix wrong ternary operator causing electrolyzer recipes disappear (#1255)miozune
2022-08-13switch to gson (#1247)Glease
* switch to gson * json loader code cleanup
2022-08-12Added means of customizing GUI colors for resource packs (#1203)Albi
* Added means of customizing GUI colors through lang file * Color values are now stored in json file instead of the lang file * Made json only load upon resource reload and ensured server compatibility Co-authored-by: Martin Robertz <dream-master@gmx.net>
2022-08-09fix(warnings): remove broad wanings suppression (#1223)Léa Gris
* fix(warnings): remove broad wanings suppression This shell script was applied to remove all instances of `@SuppressWarnings("ALL")`: ```sh grep -lr '@SuppressWarnings([[:space:]]*"ALL"[[:space:]]*)' src/ | xargs -l1 \ sed -n -i.bak '/@SuppressWarnings([[:space:]]*"ALL"[[:space:]]*)/!p' ``` * nuke @SuppressWarnings("all") in GT_NEI_DefaultHandler Case insensitive: ```sh grep -lr '@SuppressWarnings([[:space:]]*"[Aa][Ll][Ll]"[[:space:]]*)' src/ | xargs -l1 \ sed -n -i.bak '/@SuppressWarnings([[:space:]]*"[Aa][Ll][Ll]"[[:space:]]*)/!p' find src -type f -name '*.bak' -delete ``` * fix(warnings): GT_NEI_DefaultHandler * fix(warnings): GT_Mod * fix(warnings): GT_Values * fix(warnings): Materials * fix(warnings): GT_BeeDefinition * fix(warnings): GT_PostLoad * fix(warnings): GT_Worldgenloader * fix(warnings): GT_PreLoad
2022-08-05Botania fixes (#1208)miozune
2022-07-27Move Industrial Apiary to gregtech (#1107)Jakub
* Industrial Apiary * Make Forestry not required. * Add support for gendustry upgrades and lower energy demand * Add item validation to input slots and fix battery + special slots * Automation upgrade support and bug fixes * Better canWork check and flower detection * GUI work * Better detection of modifier update * Add button to cancel process * Add textures * Tooltip changes * Add convert crafting * Make top and sides glow * Bug fix * New textures * Add bee effects * Make all tooltips translatable * Implement GT Apiary Upgrades * Prevent inserting too many upgrades * Just require gendustry instead of checking it everywhere * Add blacklist (bug fix) and use hashsets instead of arrays * Cache beemember to do effects * Make blacklist automatic * Add acceleration upgrades for all tiers (LV -> UV) * Lock the machine to maxspeed by default * Correct required energy in info tooltip * Use isUpgrade method instead of manually checking * Lower amperage to 4 * Save locked speed to nbt
2022-07-22MultiTileEntityJason Mitchell
2022-07-02Add IMC for NEI RecipeCatalyst (#1109)miozune
2022-03-14pin comb type id instead of depending on array ordinal (#980)Glease
* pin comb type id instead of depending on array ordinal * fix up _NULL related problems * fix out of bound * make it private * add some more test
2022-02-14Server side metaitems localization (#938)repo-alt
fixes https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/8778
2022-02-04Paperbark tweak (#917)miozune
2022-01-28Bring Waila handling in houseJason Mitchell
Update deps
2022-01-27Add new circuit tiers (#895)GTNH-Colen
* New circuits * Fix last tier ore dict * Colorfull tier tooltips (#898) * Make Repellator stop slimes spawning (#896) * Add special tooltip handling, requested by Colen Co-authored-by: Alkalus <3060479+draknyte1@users.noreply.github.com> Co-authored-by: glowredman <fredcraft00@gmail.com> Co-authored-by: Alkalus <3060479+draknyte1@users.noreply.github.com> Co-authored-by: glowredman <fredcraft00@gmail.com>
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
2022-01-06Add in game GUI to configure client preference (#852)Glease
* Add in game GUI to configure client preference * Fix backslash
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-16ash recipe wasnt changedMartin Robertz
fix now to full dust