Age | Commit message (Collapse) | Author |
|
* Fix crash on MP
* Move away from SlotWidget for circuit selection window
|
|
|
|
* 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.
|
|
* address ModularUI methods that can only be overridden
A call of super was safely deleted.
A call of draw() is legit, but it's labeled as OverrideOnly in ModularUI,
so IntelliJ considers it incorrect to call draw(). This warning was
suppressed. On top of that, IntelliJ incorrectly says that this
suppression is redundant, so that was addressed too.
Fixing the issue without suppressing the warning entails changing the
ModularUI mod, which is too much work for one warning.
However, if there are many warnings like that, it might be reasonable
to change ModularUI.
The whitespace change is Spotless, although it did not detect it
before the changes to the file.
* remove suppression on RedundantSuppression
The mark of OverrideOnly suppression as RedundantSuppression
could not be reproduced. Therefore the suppression of
RedundantSuppression is not needed.
|
|
|
|
|
|
* 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>
|
|
|
|
* 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
|
|
|
|
|
|
|
|
|
|
* Move descriptions to recipemap
* Move tooltips to recipemap
* Move overlays to recipemap
* Use shared code for generating grid positions
* 2 fluid inputs for freezer recipes
* Add deprecation javadoc
|
|
* 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>
|
|
|
|
* 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>
|
|
* Add IAlleleBeeAcceleratableEffect
* Still feeling the rainbow
* Use float
* NBT
* No more gendustry
* Production modifier is counted from 0 now
* Extract bee cycles length
* spotless
|
|
to Gregtech (#1447)
* Update forestry
* Apply new formula (+uncap the chance)
* Yeet gendustry upgrades
* Conversion recipes
* Add upgrade frame
* Remove recipes
* Gendustry way
* Yeet gendustry
* Fix
|
|
* unify super chest and quantum chest code base
* add item info to waila
* add an input filter to digital chests
|
|
|
|
* Added advanced debug structure writer
* Applied spotless
* Removed testing variables
* Added client only to rendering
* Added one client side annotation too much
* Included requested changes
* Applied spotless
* Introduced variables for tooltip keys
|
|
* fix GT_Packet_SetLockedFluid not setting lock mode
also fixed drag and drop from NEI handler got called when drag and drop from main inventory
* fix lockFluid overwriting mMode == 8
* add markDirty() call
|
|
* Add Drag-And-Drop support for digital tank
* lockedFluidName is null in old save
|
|
* Update dependencies
* Update buildscript, apply spotless
|
|
server (#1304)
|
|
* Refactored built-in integrated circuit support
Added built-in integrated circuit to input buses
* fix spacing
|
|
* Fix a circuit slot position
"Borrow" item size rendering from AE2
* Add existing type check
|
|
types (#1271)
* ME input bus, gives the multiblock direct access to the 16 selected item types
* Reworked GUI to match the normal interface
* Don't need to duplicate shadow slots
Sync can (better) be done in `endRecipeProcessing`, in case some multi doesn't call `updateSlots` or does it at the wrong time
* Clarify name, to distinguish from the (future) Buffering and Crafting buses
* Make the GUI 4x4 again
* Make the 4x4 GUI actually work
* Make ghost item show item amount
* Remove unimplemented code remnants
Co-authored-by: Sampsa <sampo.vanninen@aalto.fi>
|
|
* Implemented gui textcolor override with .mcmeta files
* cleanup
* Added shared class to reduce code duplication
* Moved #drawLine back to GT_NEI_DefaultHandler
|
|
* 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>
|
|
* Upgrade slot tooltip
* Fix Hellish biomes temperature
* Princess -> Queen process is always automated
|
|
* Start with lower energy without acceleration upgrades
* Pollen collection is an upgrade... I didnt know.
* Implement Queen Pollination
* Fix battery slot not working
* Dont try to pollinate when there is no chance to success
|
|
* Allow storing `long` energy
* Fix hardcoded voltage limit for searching recipe
* Fix reactor might run without consuming energy
* Fix weird charging rate limit
|
|
* 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
|
|
* Renamed parameters of ItemBlock subclasses
* Renamed damageDropped and getDamageValue method parameters of Block subclasses
* Removed trivially superfluous overrides of Block::quantityDropped, Block::isOpaqueCube and Block::renderAsNormalBlock
* Removed trivially superfluous overrides of Block::getItemDropped
* Cleaned up a few more block subclass method parameters
* Cleaned up obsolete Javadoc
* par1 -> block in ItemBlock Constructors
* Renamed arguments to drawGuiContainerForegroundLayer
* Cleaned up redundant casts
* Renamed arguments to drawGuiContainerBackgroundLayer
* Renamed arguments to Slot subclass constructors
* Renamed arguments to World subclass GT_DummyWorld
* Renamed parameters of updateProgressBar
* Renamed the rest of the par* parameters outside of GT_MinableOreGenerator which should be deleted
* Renamed most var1-var10 and a few more in generally non-dead code
* Renamed last varSomething variables
* Removed 3 fully dead classes used nowhere in the codebase, with obsolete unused code
|
|
|
|
|
|
|
|
* 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
|
|
* add recipe filter block
* Add tooltip to recipe filter GUI & improve type filter UI interaction
now you can click special slot in type filter UI to directly set the oreprefix based on the stack held on the cursor
|
|
* Add network support for chanining GT Tile GUIs
* Implemented Cover Tabs for IGregTechTileEntity
See GTNewHorizons/GT-New-Horizons-Modpack#9367 for details
* Added IGuiIcon
For easier addon extensibility of GT_GuiIcon
Also fixed Ghost Circuit tab tooltip overlapping right-side cover tabs
* Typo fix
* Fixed unintended scala import
* Tabs -> Spaces on the files I've touched
|
|
* Allow drag and drop from NEI to set output hatch locking
also cleaned up the output hatch networking code
* Add not locked indicator
|
|
* add unlocalizedname fluid map
* change the lock name into fluid name
|
|
also fixed some issue with basic machine gui introduced in 9d42b299def1c41bbc7a1f01efe445be28f54399
also retrofitted volumetric flask to use the new INetworkUpdatableItem and GT_Packet_UpdateItem, deprecating MessageSetFlaskCapacity in the meanwhile.
To open the gui for machine, shift-left-click the circuit slot
To open the gui for circuit, click any block (need to be sneaking if it's chest, furnace, etc) with the circuit held in hand.
Signed-off-by: Glease <4586901+Glease@users.noreply.github.com>
Co-authored-by: Glease <4586901+Glease@users.noreply.github.com>
|
|
Fix scanner to report locked fluid even when the hatch is not locked
https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/8801
|
|
|
|
|
|
|
|
|