e3420842fe
It was an O(n^2) operation to insert an item. Now its just O(n). The functions for checking to see if a stack is valid in a slot are expensive and should never be called more than once per slot, let alone n^2 times (where n is the length of the inventory). Additionally, by wrapping inventory in a slot iterator, I was able to eliminate the need to handle FSided and VSided differently from IInventory. |
||
---|---|---|
buildcraft_resources | ||
common/buildcraft | ||
.classpath | ||
.gitattributes | ||
.gitignore | ||
.project | ||
build.xml | ||
README.md |
Welcome to Buildcraft on GitHub
Contributing
If you wish to submit a pull request to fix bugs or broken behaviour feel free to do so. If you would like to add features or change existing behaviour or balance, please discuss it with Sengir or Krapht before submiting the pull request.
Reporting issues
Issues are for bugs/crashes, please do not use them to ask general questions. Always include the version you are having trouble with. Or if you're building from source, which source you're building. If you don't, we might assume that you are using latest-greatest and waste a bunch of time trying to reproduce a problem that might have fixed been already. Such things makes for very grumpy devs. Grumpy devs spend less time coding and more time doing stuff that makes them less grumpy.
Compiling and packaging Buildcraft
- Ensure that
Apache Ant
(found here) is installed correctly on your system.
- Linux users will need the latest version of astyle installed as well.
- Create a base directory for the build
- Clone the Buildcraft repository into
basedir/BuildCraft/
- Optional: Copy BuildCraft localization repository into
basedir/BuildCraft-Localization
- Navigate to basedir/Buildcraft in a shell and run
ant
(this will take 2-5 minutes) - The compiled and obfuscated jar will be in basedir/bin
Your directory structure should look like this before running ant:
basedir
\- buildcraft
|- buildcraft_resources
|- common
|- ...
\- buildcraft.localization
|- lang
And like this after running ant:
basedir
\- buildcraft
|- bin
|- build
|- buildcraft_resources
|- common
|- download
|- ...
\- buildcraft.localization
|- lang
Localizations
Localizations can be submitted here. Localization PRs against this repository will have to be rejected.