Minecraft Forge 1.16.4-35.1.32, with an *ACTUALLY* secure version of Log4j.
Find a file
rwtema a1e41f5464 Add IItemHandler capability
Add the actual patches that I forgot.

Add simple implementations of IStorage and the factory methods.

Add ItemStackHandler. A simple IItemHandler implementaton.

return nulls, not throw nulls.

Move the vanilla wrappers to a separate class for now.

Minor clean ups of VanillaWrapper code.

Inline static methods.

Add comments.

Minor cleanup of code.

Remove redundant size field and add a validate slot index method.

Minor formatting issues.

Break early If stacksize to insert is 0.

Remove setByte() methods.

Throw exception if IItemHandler can't be modifyed in NBT loading.

Replace event handler with patches

Add capability to mine cart inventory entities.

Change formatting and registration of capability.

Make InventoryPlayer implements IItemHandler because why not. Also added a field to allow mods that add additional player inventory space to publicly expose them.

Reduce patch sizes

Lazy initialization of the item handler for vanilla tiles.

Minor formatting changes.

Create a single vanilla chest item handler that will merge with adjacent chests when detected. Added hooks to reset the cached adjacent value when a block update is detected and when a chunk loads.

Revert "Make InventoryPlayer implements IItemHandler because why not. Also added a field to allow mods that add additional player inventory space to publicly expose them."

This reverts commit 306d4a37fd0e8c8a0754411c013b750dfe8e2c87.

Fix furnace derp

Replace double chest code with a simpler method.

Vanilla wrappers implement IItemHandlerModifiable (since they are modifiable)

Minor code cleanups

Add an onContentsChanged() and onLoad() callback methods.to the default implementation.

Add slot as a parameter in the callback method.

Change IItemHandlerModifiable.setStackInSlot() to void, and added a note about not being intended for cross-mod use.

Improve ItemStackHandler handling of errored NBT.

Make the stacks array protected.

Fix a lot of derps in SlotItemHandler.

Fix derp in ItemStackHandler

Clarify comments on IItemHandler

ItemStackHandler no longer caches the stack array in local variable.

Clean up the Chests code to make intentions clearer

Vanilla hoppers have their cooldown activated when an item is inserted. Made this behavior part of an item handler (rather than the insertion code)

Fix mistake in ItemStackHandler

More documentation of potential edge cases in getStackInSlot()

Make limit checking more resiliant.
2016-01-24 05:20:58 +00:00
gradle/wrapper Update Gradle wrapper to 2.7 2015-09-14 13:18:02 -07:00
jsons Swap Mod and Realms button to fix new realms 'notification' icon. 2015-12-31 14:41:08 -08:00
mdk Remove trailing */ in the build.gradle 2015-11-24 20:10:02 -05:00
patches/minecraft/net/minecraft Add IItemHandler capability 2016-01-24 05:20:58 +00:00
src Add IItemHandler capability 2016-01-24 05:20:58 +00:00
.gitattributes Updated the forge logo to a higher-quality GIF file. Closes #2276. 2015-12-30 19:10:33 +03:00
.gitignore Fixed issue where config folder would not be created before SplashProgress tried to read from it. 2015-08-22 18:55:32 -07:00
build.gradle 1.8.9 update 2015-12-30 07:15:03 +03:00
CONTRIBUTING.md Update CONTRIBUTING.md 2014-03-19 23:33:36 +08:00
CREDITS-fml.txt FML is no more. FML has ceased to be. FML's expired and gone to meet its maker. FML's a stiff! Bereft of life, FML rests in peace. 2015-08-01 23:51:40 -04:00
gradlew Added FG2 buildscript + updated for Gradle 2.4 2015-06-29 21:56:35 -05:00
gradlew.bat Added FG2 buildscript + updated for Gradle 2.4 2015-06-29 21:56:35 -05:00
icon.ico Added FG2 buildscript + updated for Gradle 2.4 2015-06-29 21:56:35 -05:00
l4jManifest.xml Added FG2 buildscript + updated for Gradle 2.4 2015-06-29 21:56:35 -05:00
LICENSE-fml.txt FML is no more. FML has ceased to be. FML's expired and gone to meet its maker. FML's a stiff! Bereft of life, FML rests in peace. 2015-08-01 23:51:40 -04:00
MinecraftForge-Credits.txt Step 3: The Rebirth 2013-11-09 21:48:53 -06:00
MinecraftForge-License.txt Small wording change in license to allow for specifc differnet licnense contributions. 2014-04-07 10:01:56 -07:00
Paulscode IBXM Library License.txt Step 3: The Rebirth 2013-11-09 21:48:53 -06:00
Paulscode SoundSystem CodecIBXM License.txt Step 3: The Rebirth 2013-11-09 21:48:53 -06:00
README.txt Update README.txt 2014-08-06 16:29:34 -04:00
settings.gradle fixed versioning and stuff 2013-11-10 00:54:57 -06:00

*** HOW TO INSTALL ***
For Mod Users:

Download the latest installer from http://files.minecraftforge.net and follow instructions given by the installer.


For Mod Devs:

Download the latest Forge source distribution from http://files.minecraftforge.net and unzip it to a folder.
Open a command prompt, navigate to the directory where you unzipped the Forge sources, and run:
If you have Gradle: gradle setupDevWorkspace
If you DO NOT have Gradle installed:
Windows: ./gradlew.bat setupDevWorkspace
MacOS/Linux: ./gradlew setupDevWorkspace

If you wish to use the Eclipse IDE, run gradle eclipse instead of gradle setupDevWorkspace, or install the Gradle plugin for Eclipse and import the Forge source folder as a Gradle project.

To get the decompiled classes:
If you have Gradle: gradle setupDecompWorkspace
If you DO NOT have Gradle installed:
Windows: ./gradlew.bat setupDecompWorkspace
MacOS/Linux: ./gradlew setupDecompWorkspace

For Contributors: (Note: This assumes you have Gradle installed. If you don't, use ./gradlew(.bat) instead of gradle.

Clone this repository to a folder. 
Open a command prompt and navigate to the folder where you cloned this repo.
Run gradle setupForge to setup your development environment.

To use Eclipse, point your Eclipse workspace at the eclipse folder inside the repo.


Requirements (for both mod devs and contributors):
  You must have a JDK installed and accessible.
  If you do not wish to use the gradle wrapper, you can install Gradle from http://www.gradle.org/ .