diff --git a/.gitignore b/.gitignore
index 91c89aaa7..ad6bc2b5f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,9 @@
-.gradle/
-build/
+/.gradle/
+/build/
+/instance/
+/eclipse/
+/.classpath
+/.gradletasknamecache
+/.project
+/.settings/org.eclipse.jdt.core.prefs
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.location b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.resources/.projects/Minecraft/.location
new file mode 100644
index 000000000..e69de29bb
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/0.tree b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/0.tree
new file mode 100644
index 000000000..897e2b847
Binary files /dev/null and b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.resources/.root/0.tree differ
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 000000000..466d7f93a
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+#Sun Jun 05 18:58:07 CEST 2011
+version=1
+eclipse.preferences.version=1
+refresh.enabled=true
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
new file mode 100644
index 000000000..94c56761d
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
@@ -0,0 +1,7 @@
+#Sun Jun 05 19:03:53 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.debug.ui.UseContextualLaunch=false
+Console.highWaterMark=88000
+org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n
+org.eclipse.debug.ui.user_view_bindings=\r\n\r\n\r\n\r\n\r\n\r\n
+StringVariablePreferencePage=130,107,107,86,
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs
new file mode 100644
index 000000000..333b99153
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.usagedata.gathering.prefs
@@ -0,0 +1,3 @@
+#Sun Jun 05 18:58:07 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.epp.usagedata.gathering.enabled=false
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 000000000..593e3199f
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,5 @@
+#Sun Sep 18 16:44:39 NZST 2011
+org.eclipse.jdt.core.compiler.compliance=1.7
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.source=1.7
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
new file mode 100644
index 000000000..316ef6f30
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
@@ -0,0 +1,4 @@
+#Sun Jun 05 18:58:05 CEST 2011
+spacesForTabs=true
+eclipse.preferences.version=1
+overviewRuler_migration=migrated_3.1
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
new file mode 100644
index 000000000..ae368abb9
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
@@ -0,0 +1,9 @@
+#Sun Jun 05 18:58:07 CEST 2011
+IMPORT_FILES_AND_FOLDERS_MODE=prompt
+IMPORT_FILES_AND_FOLDERS_VIRTUAL_FOLDER_MODE=prompt
+SAVE_ALL_BEFORE_BUILD=true
+eclipse.preferences.version=1
+tipsAndTricks=true
+platformState=1287081747687
+quickStart=false
+PROBLEMS_FILTERS_MIGRATE=true
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
new file mode 100644
index 000000000..cbc59537b
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
@@ -0,0 +1,3 @@
+#Sun Jun 05 18:50:08 CEST 2011
+eclipse.preferences.version=1
+showIntro=false
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Full.launch.template b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Full.launch.template
new file mode 100644
index 000000000..cea00228b
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Full.launch.template
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Minimal.launch.template b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Minimal.launch.template
new file mode 100644
index 000000000..83c9daf3d
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Client-Minimal.launch.template
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+@@eclipseRuntimeClasspath@@
+
+
+
+
+
+
+
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Full.launch.template b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Full.launch.template
new file mode 100644
index 000000000..52e1a1d25
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Full.launch.template
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Minimal.launch.template b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Minimal.launch.template
new file mode 100644
index 000000000..d5a8227d8
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.core/.launches/Server-Minimal.launch.template
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+@@eclipseRuntimeClasspath@@
+
+
+
+
+
+
+
diff --git a/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
new file mode 100644
index 000000000..1208f602e
--- /dev/null
+++ b/.meta/eclipse/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build.gradle b/build.gradle
index 7e5216e34..546dc246a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -18,6 +18,67 @@ buildscript {
}
}
+allprojects {
+ tasks.withType(JavaCompile) {
+ options.compilerArgs << "-Xlint:deprecation" << "-Xlint:unchecked"
+ }
+}
+
+apply plugin: 'eclipse'
+eclipse {
+ classpath {
+ downloadJavadoc = true
+ downloadSources = true
+ }
+}
+
+def eclipseRuntimeClasspath = ""
+def eclipseRuntimeClasspathTemplate = "\n"
+
+task eclipseForgeWorkspace(type: Copy) {
+ doFirst {
+ sourceSets.main.runtimeClasspath.collect {
+ eclipseRuntimeClasspath += eclipseRuntimeClasspathTemplate.replaceAll('@@PATH@@', it.toString())
+ ""
+ }
+ }
+ from(".meta/eclipse/.metadata") {
+ include '**/*.template'
+ rename { it.replace '.template', '' }
+ filter { it.replaceAll('@@eclipseRuntimeClasspath@@', eclipseRuntimeClasspath) }
+ //rename '(.*).template', '$1'
+ }
+ from(".meta/eclipse/.metadata") {
+ exclude '**/*.launch'
+ }
+ into "eclipse/.metadata"
+}
+
+import org.apache.tools.ant.taskdefs.condition.Os
+task eclipseForgeProject {
+ doLast {
+ if(!(new File("eclipse/Minecraft")).exists()) {
+ if(!Os.isFamily(Os.FAMILY_WINDOWS)) {
+ ant.symlink(resource: "../", link: "eclipse/Minecraft")
+ } else {
+ println("WINDOWS: Before loading this workspace with Eclipse, manually run this in an Elevated/Admin command prompt:")
+ println("mklink /D " + (new File("").absolutePath) + "/eclipse/Minecraft " + (new File("").absolutePath))
+ }
+ }
+ }
+}
+eclipseForgeProject.dependsOn(eclipseForgeWorkspace)
+
+tasks.eclipse.dependsOn(eclipseForgeProject)
+
+apply plugin: 'idea'
+idea {
+ module {
+ downloadJavadoc = true
+ downloadSources = true
+ }
+}
+
apply plugin: 'forge'
version = "1.0.27"