Skip to content

Commit

Permalink
Initial Commit
Browse files Browse the repository at this point in the history
  • Loading branch information
Indemnity83 committed Sep 19, 2015
0 parents commit 4335e1b
Show file tree
Hide file tree
Showing 11 changed files with 576 additions and 0 deletions.
26 changes: 26 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# default
* text eol=auto

# git
.gitattributes text eol=lf
.gitignore text eol=lf

# sources
*.java text eol=lf

# resources
*.lang text eol=lf
*.cfg text eol=lf
*.info text eol=lf
*.mcmeta text eol=lf
*.md text eol=lf
*.xml text eol=lf

# scripts
*.bat text eol=crlf
*.gradle text eol=lf
*.properties text eol=lf

# binaries
*.png binary
*.jar binary
25 changes: 25 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## gradle
/.gradle
/build

## ForgeGradle
/run

## eclipse
/eclipse
/.settings
/.metadata
/.classpath
/.project
/bin

## intellij
/out
/.idea
/*.iml
/*.ipr
/*.iws
/atlassian-ide-plugin.xml

# mac
.DS_Store
21 changes: 21 additions & 0 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2015 Kyle "Indemnity83" Klaus

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
151 changes: 151 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
## Welcome to IronTanks!
[All versions are available here](#)

[Minecraft Forums page](http://www.minecraftforum.net/topic/#)

[Compiling IronTanks](#compiling-irontanks) - For those that want the latest unreleased features.

[Contributing](#contributing) - For those that want to help out.

[FAQ](https://github.com/indemnity83/IronTanks/wiki/Frequently-Asked-Questions) - For those that have questions.

### Compiling IronTanks
IMPORTANT: Please report any issues you have as there might be some problems with the documentation.
Also make sure you know EXACTLY what you're doing before proceeding! We are not responsible if your computer crashes, becomes corrupted, etc. :see_no_evil:
***
[Setup Java](#setup-java)

[Setup Gradle](#setup-gradle)

[Setup Git](#setup-git)

[Setup IronTanks](#setup-irontanks)

[Compile IronTanks](#compile-irontanks)

[Updating Your Repository](#updating-your-repository)

#### Setup Java
The Java JDK is used to compile IronTanks.

1. Download and install the Java JDK.
* [Windows/Mac download link](http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html). Scroll down, accept the `Oracle Binary Code License Agreement for Java SE`, and download it (if you have a 64-bit OS, please download the 64-bit version).
* Linux: Installation methods for certain popular flavors of Linux are listed below. If your distribution is not listed, follow the instructions specific to your package manager or install it manually [here](http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html).
* Gentoo: `emerge dev-java/oracle-jdk-bin`
* Archlinux: `pacman -S jdk7-openjdk`
* Ubuntu/Debian: `apt-get install openjdk-7-jdk`
* Fedora: `yum install java-1.7.0-openjdk`
2. Windows: Set environment variables for the JDK.
* Go to `Control Panel\System and Security\System`, and click on `Advanced System Settings` on the left-hand side.
* Click on `Environment Variables`.
* Under `System Variables`, click `New`.
* For `Variable Name`, input `JAVA_HOME`.
* For `Variable Value`, input something similar to `C:\Program Files\Java\jdk1.7.0_51` exactly as shown (or wherever your Java JDK installation is), and click `Ok`.
* Scroll down to a variable named `Path`, and double-click on it.
* Append `;%JAVA_HOME%\bin` EXACTLY AS SHOWN and click `Ok`. Make sure the location is correct; double-check just to make sure.
3. Open up your command line and run `javac`. If it spews out a bunch of possible options and the usage, then you're good to go. If not, either try the steps again or check the [FAQ](https://github.com/pahimar/Equivalent-Exchange-3/wiki/Frequently-Asked-Questions).

#### Setup Gradle
Gradle is used to execute the various build tasks when compiling IronTanks.

1. Download and install Gradle.
* [Windows/Mac download link](http://www.gradle.org/downloads). You only need the binaries, but choose whatever flavor you want.
* Unzip the package and put it wherever you want, eg `C:\Gradle`.
* Linux: Installation methods for certain popular flavors of Linux are listed below. If your distribution is not listed, follow the instructions specific to your package manager or install it manually [here](http://www.gradle.org/downloads).
* Gentoo: `emerge dev-java/gradle-bin`
* Archlinux: You'll have to install it from the [AUR](https://aur.archlinux.org/packages/gradle).
* Ubuntu/Debian: `apt-get install gradle`
* Fedora: Install Gradle manually from its website (see above), as Fedora ships a "broken" version of Gradle. Use `yum install gradle` only if you know what you're doing.
2. Windows: Set environment variables for Gradle.
* Go back to `Environment Variables` and then create a new system variable.
* For `Variable Name`, input `GRADLE_HOME`.
* For `Variable Value`, input something similar to `C:\Gradle-1.11` exactly as shown (or wherever your Gradle installation is), and click `Ok`.
* Scroll down to `Path` again, and append `;%GRADLE_HOME%\bin` EXACTLY AS SHOWN and click `Ok`. Once again, double-check the location.
3. Open up your command line and run `gradle`. If it says "Welcome to Gradle [version].", then you're good to go. If not, either try the steps again or check the [FAQ](https://github.com/pahimar/Equivalent-Exchange-3/wiki/Frequently-Asked-Questions).

#### Setup Git
Git is used to clone IronTanks and update your local copy.

1. Download and install Git [here](http://git-scm.com/download/).
* *Optional*: Download and install a Git GUI client, such as Github for Windows/Mac, SmartGitHg, TortoiseGit, etc. A nice list is available [here](http://git-scm.com/downloads/guis).

#### Setup IronTanks
This section assumes that you're using the command-line version of Git.

1. Open up your command line.
2. Navigate to a place where you want to download IronTanks's source (eg `C:\Github`) by executing `cd [folder location]`. If choosing a location other than `C:\Github`, just remember that when following the instructions.
3. Execute `git clone https://github.com/indemnity83/IronTanks.git`. This will download IronTanks's source into an `IronTanks` folder
such as `C:\Github\IronTanks`.
4. Right now, you should have a directory that looks something like:

***
Github
\-IronTanks
\-IronTanks's files (should have `build.gradle`)
***

#### Compile IronTanks
1. Execute `gradle setupCiWorkspace` in order to set up Forge and download the necessary libraries to build IronTanks. This might take some time, please be patient :watch:.
* You will generally only have to do this when the Forge version in `build.properties` changes.
2. Execute `gradle build`. If you did everything right, `BUILD SUCCESSFUL` will be displayed after it finishes. This should be relatively quick.
* If you see `BUILD FAILED`, check the error output (it should be right around `BUILD FAILED`), fix everything (if possible), and try again.
3. Navigate to `C:\Github\IronTanks\build\libs`.
* You should see a `.jar` file named `IronTanks-x.y.z-#.jar`, where x.y.z is the Minecraft version number and # is the mod version.
* NOTE: `null` means that you are missing a `build_number` value in `build.properties` or that your CI environment is set up incorrectly-it is totally safe to ignore.
4. Copy the jar into your Minecraft mods folder, and you are done!

#### Updating Your Repository
In order to get the most up-to-date builds, you'll have to periodically update your local repository.

1. Open up your command line.
2. Navigate to wherever you cloned IronTanks in the console.
3. Make sure you have not made any changes to the local repository, or else there might be issues with Git.
* If there are local changes, try reverting them to the status that they were when you last updated your repository by executing `git reset HEAD --hard`.
4. Execute `git pull master`. This pulls all commits from the official repository that do not yet exist on your local repository and updates it.

### Contributing
***
#### Submitting a PR
So you found a :bug: in the code? Think you can make it more efficient :dash:? Want to help in general? Great!

1. If you haven't already, create a Github account.
2. Click the `Fork` icon located at the top-right of this page (below your username).
3. Make the changes that you want to and commit them.
* If you're making changes locally, you'll have to execute `git commit -a` and `git push` in your command line.

##### Preparing a Pull Request (PR)
When you finish up your change you'll want to [squash](http://davidwalsh.name/squash-commits-git) them into a single commit (unless it makes sense to have them split).

1. Make sure your working directory is clean by executing `git status`.
2. Execute `git rebase -i HEAD~X` where `X` is the amount of your commits. This will make sure you squash only your own commits.
3. You should now see a list of all your commits, prefixed with `pick`. Change all instances of `pick` (excluding the first!) into `squash` or simply `s`. Then save/quit the editor once.
4. A second screen should show up, displaying all the commit messages (you may edit them, delete or add some). After your done save/quit the editor again.
5. If git successfully rebased things simply push your cleaned up commits by executing `git push -f`.

##### Submitting a Pull Request (PR)
4. Click `Pull Request` at the right-hand side of the gray bar directly below your fork's name.
5. Click `Click to create a pull request for this comparison`, enter your pull request title, and create a detailed description explaining what you changed.
6. Click `Send pull request`, and wait for feedback!

#### Creating an Issue
IronTanks crashes every time :bomb:? Have a suggestion? Found a :bug:? Create an issue now!

1. Make sure your issue hasn't already been answered or fixed by [searching for it](https://github.com/indemnity83/IronTanks/search?q=&type=Issues). Also think about whether your issue is a valid one before submitting it.
* Please do not open an issue to ask a question about how to use the mod - this kind of thing is for the [wiki](https://github.com/indemnity83/IronTanks/wiki) or [forums](http://www.minecraftforum.net/topic/#).
2. Go to [the issues page](http://github.com/indemnity83/IronTanks/issues).
3. Click `New Issue` right below `Star` and `Fork`.
4. Enter your Issue's title (something that summarizes your issue), and then create a detailed description ("Hey indemnity83, could you add/change xxx?" or "Hey, found an exploit: stuff").
* If you are reporting a bug report from an unofficial version, make sure you include the following:
* Commit SHA (usually located in a changelog or the jar name itself)
* ForgeModLoader log
* Server log if applicable
* Detailed description of the bug and pictures if applicable
5. Click `Submit new issue`, and wait for feedback! :boom:

### Licence
***
This software is licensed under the MIT license

### Acknowledgements
***
Shamelessly based this README off [pahimar's version](https://github.com/pahimar/Equivalent-Exchange-3).
58 changes: 58 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
buildscript {
repositories {
mavenCentral()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
}
}

apply plugin: 'forge'

version = "dev"
group= "com.indemnity83"
archivesBaseName = "IronTanks"

minecraft {
version = "1.7.10-10.13.2.1291"
runDir = "eclipse"
}

repositories {
ivy {
name "BuildCraft"
artifactPattern "http://www.mod-buildcraft.com/releases/BuildCraft/[revision]/[module]-[revision]-[classifier].[ext]"
}
}

dependencies {
compile name: "buildcraft", version: "7.0.23", classifier: "dev"
}

processResources
{
// this will ensure that this task is redone when the versions change.
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version

// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'

// replace version and mcversion
expand 'version':project.version, 'mcversion':project.minecraft.version
}

// copy everything else, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
6 changes: 6 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#Wed Jul 02 15:54:47 CDT 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.0-bin.zip
Loading

0 comments on commit 4335e1b

Please sign in to comment.