Compare commits
43 Commits
Author | SHA1 | Date | |
---|---|---|---|
58eacac28c | |||
![]() |
8c334a4cdd | ||
![]() |
fafde83d4c | ||
![]() |
e15a07bdb8 | ||
![]() |
e6f95908d7 | ||
![]() |
195b6a25dc | ||
![]() |
b539f986f8 | ||
ccf8c75b37 | |||
faa70ed224 | |||
![]() |
e8976365a2 | ||
f8984bec16 | |||
bfb3c3902e | |||
bb9bc335ff | |||
![]() |
93d45ceaeb | ||
![]() |
fb4c81d44b | ||
![]() |
c3a2e9922a | ||
![]() |
92cfb47f4f | ||
![]() |
80720d50ce | ||
9f0de8a250 | |||
![]() |
6b2cb0c105 | ||
![]() |
b075c521b2 | ||
![]() |
804feb4280 | ||
![]() |
6ee71f3dc1 | ||
![]() |
9141dcc8a2 | ||
![]() |
e28524864d | ||
![]() |
eb1eaf3fd7 | ||
adef051ff7 | |||
5ccc94e73a | |||
![]() |
6777030d57 | ||
![]() |
c4f8ffc2b9 | ||
![]() |
87d33ee9a1 | ||
![]() |
1a2e0f233b | ||
![]() |
374f1f1d24 | ||
6a932e6e56 | |||
181fdc196e | |||
fbdb595cd7 | |||
e3576cc07e | |||
9a69e0c15a | |||
3251370335 | |||
57fe4b6070 | |||
00e5ca976f | |||
fa777ca6e0 | |||
a3f53b1593 |
1
.gitignore
vendored
@@ -175,3 +175,4 @@ gradle-app.setting
|
||||
|
||||
# Forge
|
||||
run/
|
||||
src/main/java/com/sosnitzka/taiga/dev
|
||||
|
@@ -15,7 +15,7 @@ Included:
|
||||
|
||||
Download
|
||||
===============
|
||||
[Link coming](www.sosnitzka.com)
|
||||
[TAIGA on CurseForge](http://minecraft.curseforge.com/projects/taiga-tinkers-alloying-addon/files)
|
||||
|
||||
Dependencies
|
||||
===============
|
||||
|
83
build.gradle
@@ -12,7 +12,7 @@ buildscript {
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT'
|
||||
classpath 'gradle.plugin.com.matthewprenger:CurseGradle:1.0.7'
|
||||
classpath 'gradle.plugin.com.matthewprenger:CurseGradle:1.0.8'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,8 +36,32 @@ repositories {
|
||||
group = "com.sosnitzka" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
|
||||
archivesBaseName = "taiga"
|
||||
|
||||
task buildInfo {
|
||||
if (System.getenv().TAIGA_TAG != null) {
|
||||
ext.revision = System.getenv().TAIGA_TAG
|
||||
} else {
|
||||
ext.revision = "snapshot"
|
||||
}
|
||||
|
||||
if (System.getenv().BUILD_NUMBER != null) {
|
||||
ext.buildNum = System.getenv().BUILD_NUMBER
|
||||
}
|
||||
|
||||
|
||||
def cmd = "git log \$(git tag --sort=-refname | sed -n '2p')..\$(git tag --sort=-refname | sed -n '1p') --oneline"
|
||||
def proc = cmd.execute()
|
||||
proc.waitFor()
|
||||
if (proc.exitValue() == 0) {
|
||||
ext.changes = proc.text.trim()
|
||||
} else {
|
||||
ext.changes = "N/A"
|
||||
}
|
||||
}
|
||||
|
||||
version = project.buildInfo.revision
|
||||
|
||||
minecraft {
|
||||
version = "1.10.2-12.18.1.2011"
|
||||
version = "1.10.2-12.18.1.2079"
|
||||
runDir = "run"
|
||||
|
||||
// the mappings can be changed at any time, and must be in the following format.
|
||||
@@ -45,20 +69,24 @@ minecraft {
|
||||
// stable_# stables are built at the discretion of the MCP team.
|
||||
// Use non-default mappings at your own risk. they may not allways work.
|
||||
// simply re-run your setup task after changing the mappings to update your workspace.
|
||||
mappings = "snapshot_20160701"
|
||||
mappings = "snapshot_20160911"
|
||||
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
|
||||
|
||||
replace "${version}", project.version
|
||||
}
|
||||
|
||||
//noinspection GroovyAssignabilityCheck
|
||||
ext.mc_version = project.minecraft.version.split('-')[0]
|
||||
version = "${mc_version}-${project.buildInfo.revision}"
|
||||
|
||||
dependencies {
|
||||
//deobfCompile "codechicken:CodeChickenLib:1.9.4-2.0.2.39:deobf"
|
||||
//deobfCompile "codechicken:CodeChickenCore:1.9.4-2.0.3.65:deobf"
|
||||
//deobfCompile "codechicken:NotEnoughItems:1.9-${nei_version}:dev"
|
||||
deobfCompile "slimeknights.mantle:Mantle:1.10.2-0.10.3.jenkins161:deobf"
|
||||
deobfCompile "slimeknights.mantle:Mantle:1.10.2-1.0.0.jenkins170:deobf"
|
||||
//Old: deobfCompile "slimeknights.mantle:Mantle:1.9-0.10.0.jenkins132:deobf"
|
||||
deobfCompile "mezz.jei:jei_1.10.2:3.7.6.231"
|
||||
deobfCompile "slimeknights:TConstruct:1.10-2.3.3a.jenkins271:deobf"
|
||||
deobfCompile "mezz.jei:jei_1.10.2:3.9.3.252"
|
||||
deobfCompile "slimeknights:TConstruct:1.10.2-2.5.0.jenkins345:deobf"
|
||||
//compile files('libs/TConstruct-1.9-2.3.1.DEV.1d4c1de-deobf.jar')
|
||||
}
|
||||
|
||||
@@ -70,33 +98,6 @@ sourceSets {
|
||||
}
|
||||
}
|
||||
|
||||
task buildInfo {
|
||||
def cmd = "git name-rev --tags --name-only \$(git rev-parse HEAD)"
|
||||
def proc = cmd.execute()
|
||||
proc.waitFor()
|
||||
if (proc.exitValue() == 0) {
|
||||
project.ext.tag = proc.text.trim()
|
||||
}
|
||||
|
||||
if (System.getenv().BUILD_NUMBER != null) {
|
||||
ext.buildNum = System.getenv().BUILD_NUMBER
|
||||
}
|
||||
|
||||
project.ext.mc_version = project.minecraft.version.split('-')[0]
|
||||
|
||||
def cmd_changes = "git log `git describe --tags \$(git rev-list --tags --max-count=2) | sed -n '2p'`..`git describe --tags --abbrev=0` --oneline"
|
||||
def proc_changes = cmd_changes.execute()
|
||||
proc_changes.waitFor()
|
||||
if (proc_changes.exitValue() == 0) {
|
||||
project.ext.changes = proc_changes.text.trim()
|
||||
} else {
|
||||
project.ext.changes = ""
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
version = tag ? "${mc_version}-${tag}" : "${mc_version}-snapshot"
|
||||
|
||||
//noinspection GroovyAssignabilityCheck
|
||||
processResources {
|
||||
// this will ensure that this task is redone when the versions change.
|
||||
@@ -128,15 +129,21 @@ artifacts {
|
||||
|
||||
curseforge {
|
||||
apiKey = System.getenv().CURSE_API_KEY ? System.getenv().CURSE_API_KEY : "devBuild"
|
||||
//noinspection GroovyAssignabilityCheck
|
||||
project {
|
||||
id = '247661'
|
||||
changelog = project.changes // A file can also be set using: changelog = file('changelog.txt')
|
||||
changelog = project.buildInfo.changes // A file can also be set using: changelog = file('changelog.txt')
|
||||
releaseType = 'release'
|
||||
//addGameVersion '1.10.2'
|
||||
//addGameVersion '1.10.1'
|
||||
addArtifact deobfJar
|
||||
|
||||
mainArtifact(jar) {
|
||||
displayName = "taiga-$project.tag"
|
||||
displayName = "taiga-${project.buildInfo.revision}"
|
||||
}
|
||||
|
||||
relations {
|
||||
requiredLibrary 'tinkers-construct'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
@@ -8,6 +8,9 @@ import static com.sosnitzka.taiga.util.Utils.registerTinkerAlloys;
|
||||
|
||||
public class Alloys {
|
||||
|
||||
/**
|
||||
* Registers alloying in the smeltery
|
||||
*/
|
||||
static void register() {
|
||||
registerTinkerAlloys(nitroniteFluid, 2, tiberiumFluid, 4, vibraniumFluid, 3, nitroFluid, 3);
|
||||
registerTinkerAlloys(bysmuidFluid, 1, rubiumFluid, 3, bismuthFluid, 2, anthraciteFluid, 3);
|
||||
|
@@ -26,83 +26,89 @@ public class Blocks {
|
||||
public static Block basalt = new BasicBlock("basalt", Material.ROCK, 45.0f, 35.0f, OBSIDIAN);
|
||||
public static Block rottenGround = new BasicBlockGround("rotten_ground", Material.GROUND, 2.0f, 2.0f, STONE);
|
||||
public static Block ligniteOre = new BlockLignite();
|
||||
// will be optional / config
|
||||
public static Block slagironOre = new BasicBlock("slagiron_ore", Material.ROCK, 3.0f, 5.0f, IRON);
|
||||
public static Block slaggoldOre = new BasicBlock("slaggold_ore", Material.ROCK, 3.0f, 5.0f, IRON);
|
||||
|
||||
// Ores
|
||||
// Group: Solide
|
||||
public static Block titaniteOre = new BasicBlock("titanite_ore", Material.ROCK, 55.0f, 400.0f, TITANITE, PREFIX_ORE);
|
||||
public static Block meteoriteOre = new BasicBlock("meteorite_ore", Material.ROCK, 60.0f, 500.0f, METEORITE, PREFIX_ORE);
|
||||
public static Block vibraniumOre = new BasicBlock("vibranium_ore", Material.ROCK, 70.0f, 800.0f, VIBRANIUM, PREFIX_ORE);
|
||||
public static Block adamantiteOre = new BasicBlock("adamantite_ore", Material.ROCK, 80.0f, 1000.0f, ADAMANTITE, PREFIX_ORE);
|
||||
public static Block titaniteOre = new BasicBlock("titanite_ore", Material.ROCK, 55.0f, 40f, TITANITE, PREFIX_ORE);
|
||||
public static Block meteoriteOre = new BasicBlock("meteorite_ore", Material.ROCK, 60.0f, 50f, METEORITE, PREFIX_ORE);
|
||||
public static Block vibraniumOre = new BasicBlock("vibranium_ore", Material.ROCK, 70.0f, 60f, VIBRANIUM, PREFIX_ORE);
|
||||
public static Block adamantiteOre = new BasicBlock("adamantite_ore", Material.ROCK, 80.0f, 70f, ADAMANTITE, PREFIX_ORE);
|
||||
// Group: Arcane
|
||||
public static Block prometheumOre = new BasicBlock("prometheum_ore", Material.ROCK, 35.0f, 35.0f, COBALT, 0.25f, PREFIX_ORE);
|
||||
public static Block rubiumOre = new BasicBlock("rubium_ore", Material.ROCK, 13.0f, 15.0f, TITANITE, PREFIX_ORE);
|
||||
public static Block prometheumOre = new BasicBlock("prometheum_ore", Material.ROCK, 35.0f, 12f, COBALT, 0.4f, PREFIX_ORE);
|
||||
public static Block rubiumOre = new BasicBlock("rubium_ore", Material.ROCK, 13.0f, 12f, TITANITE, PREFIX_ORE);
|
||||
public static Block tiberiumOre = new BlockTiberium();
|
||||
public static Block arcaniteOre = new BasicBlock("arcanite_ore", Material.ROCK, 23.0f, 25.0f, METEORITE, PREFIX_ORE);
|
||||
public static Block arcaniteOre = new BasicBlock("arcanite_ore", Material.ROCK, 23.0f, 12f, METEORITE, PREFIX_ORE);
|
||||
// Group: Etheri
|
||||
public static Block eterniteOre = new BasicBlock("eternite_ore", Material.ROCK, 24.0f, 25.0f, COBALT, PREFIX_ORE);
|
||||
public static Block mythrilOre = new BasicBlock("mythril_ore", Material.ROCK, 25.0f, 25.0f, TITANITE, PREFIX_ORE);
|
||||
public static Block palladiumOre = new BasicBlock("palladium_ore", Material.ROCK, 25.0f, 25.0f, METEORITE, PREFIX_ORE);
|
||||
public static Block ignititeOre = new BasicBlock("ignitite_ore", Material.ROCK, 23.0f, 25.0f, VIBRANIUM, PREFIX_ORE);
|
||||
public static Block eterniteOre = new BasicBlock("eternite_ore", Material.ROCK, 24.0f, 15f, COBALT, PREFIX_ORE);
|
||||
public static Block mythrilOre = new BasicBlock("mythril_ore", Material.ROCK, 25.0f, 15f, TITANITE, PREFIX_ORE);
|
||||
public static Block palladiumOre = new BasicBlock("palladium_ore", Material.ROCK, 25.0f, 15f, METEORITE, 0.4f, PREFIX_ORE);
|
||||
public static Block ignititeOre = new BasicBlock("ignitite_ore", Material.ROCK, 23.0f, 15f, VIBRANIUM, PREFIX_ORE);
|
||||
// Group: Ratio
|
||||
public static Block violiumOre = new BasicBlock("violium_ore", Material.ROCK, 13.0f, 13.0f, COBALT, PREFIX_ORE);
|
||||
public static Block bismuthOre = new BasicBlock("bismuth_ore", Material.ROCK, 8.0f, 8.0f, OBSIDIAN, PREFIX_ORE);
|
||||
public static Block mindoriteOre = new BasicBlock("mindorite_ore", Material.ROCK, 12.0f, 12.0f, TITANITE, PREFIX_ORE);
|
||||
public static Block karmesineOre = new BasicBlock("karmesine_ore", Material.ROCK, 13.0f, 15.0f, METEORITE, PREFIX_ORE);
|
||||
public static Block violiumOre = new BasicBlock("violium_ore", Material.ROCK, 13.0f, 10f, COBALT, PREFIX_ORE);
|
||||
public static Block bismuthOre = new BasicBlock("bismuth_ore", Material.ROCK, 8.0f, 5f, OBSIDIAN, PREFIX_ORE);
|
||||
public static Block mindoriteOre = new BasicBlock("mindorite_ore", Material.ROCK, 12.0f, 10f, TITANITE, PREFIX_ORE);
|
||||
public static Block karmesineOre = new BasicBlock("karmesine_ore", Material.ROCK, 13.0f, 10f, METEORITE, PREFIX_ORE);
|
||||
|
||||
// Blocks
|
||||
// Group: Solide
|
||||
public static Block titaniteBlock = new BasicBlock("titanite_block", Material.ROCK, 55.0f, 400.0f, 5, PREFIX_BLOCK);
|
||||
public static Block meteoriteBlock = new BasicBlock("meteorite_block", Material.ROCK, 60.0f, 500.0f, 6, PREFIX_BLOCK);
|
||||
public static Block vibraniumBlock = new BasicBlock("vibranium_block", Material.ROCK, 70.0f, 800.0f, 7, PREFIX_BLOCK);
|
||||
public static Block adamantiteBlock = new BasicBlock("adamantite_block", Material.ROCK, 80.0f, 1000.0f, 8, PREFIX_BLOCK);
|
||||
public static Block titaniteBlock = new BasicBlock("titanite_block", Material.ROCK, 55.0f, 50f, 5, PREFIX_BLOCK);
|
||||
public static Block meteoriteBlock = new BasicBlock("meteorite_block", Material.ROCK, 60.0f, 60f, 6, PREFIX_BLOCK);
|
||||
public static Block vibraniumBlock = new BasicBlock("vibranium_block", Material.ROCK, 70.0f, 70f, 7, PREFIX_BLOCK);
|
||||
public static Block adamantiteBlock = new BasicBlock("adamantite_block", Material.ROCK, 80.0f, 80f, 8, PREFIX_BLOCK);
|
||||
// Group: Arcane
|
||||
public static Block prometheumBlock = new BasicBlock("prometheum_block", Material.ROCK, 35.0f, 35.0f, 4, 0.25f, PREFIX_BLOCK);
|
||||
public static Block rubiumBlock = new BasicBlock("rubium_block", Material.ROCK, 13.0f, 15.0f, 5, PREFIX_BLOCK);
|
||||
public static Block tiberiumBlock = new BasicBlock("tiberium_block", Material.ROCK, 30.0f, 30.0f, 6, 1f, PREFIX_BLOCK);
|
||||
public static Block arcaniteBlock = new BasicBlock("arcanite_block", Material.ROCK, 23.0f, 25.0f, 7, PREFIX_BLOCK);
|
||||
public static Block prometheumBlock = new BasicBlock("prometheum_block", Material.ROCK, 35.0f, 15f, 2, 0.5f, PREFIX_BLOCK);
|
||||
public static Block rubiumBlock = new BasicBlock("rubium_block", Material.ROCK, 13.0f, 15f, 5, PREFIX_BLOCK);
|
||||
public static Block tiberiumBlock = new BasicBlock("tiberium_block", Material.ROCK, 30.0f, 15f, 6, 1f, PREFIX_BLOCK);
|
||||
public static Block arcaniteBlock = new BasicBlock("arcanite_block", Material.ROCK, 23.0f, 15f, 7, PREFIX_BLOCK);
|
||||
// Group: Etheri
|
||||
public static Block eterniteBlock = new BasicBlock("eternite_block", Material.ROCK, 24.0f, 25.0f, 4, PREFIX_BLOCK);
|
||||
public static Block mythrilBlock = new BasicBlock("mythril_block", Material.ROCK, 25.0f, 25.0f, 5, PREFIX_BLOCK);
|
||||
public static Block palladiumBlock = new BasicBlock("palladium_block", Material.ROCK, 25.0f, 25.0f, 6, PREFIX_BLOCK);
|
||||
public static Block ignititeBlock = new BasicBlock("ignitite_block", Material.ROCK, 23.0f, 25.0f, 7, PREFIX_BLOCK);
|
||||
public static Block eterniteBlock = new BasicBlock("eternite_block", Material.ROCK, 24.0f, 20f, 4, PREFIX_BLOCK);
|
||||
public static Block mythrilBlock = new BasicBlock("mythril_block", Material.ROCK, 25.0f, 20f, 5, PREFIX_BLOCK);
|
||||
public static Block palladiumBlock = new BasicBlock("palladium_block", Material.ROCK, 25.0f, 20f, 6, 0.5f, PREFIX_BLOCK);
|
||||
public static Block ignititeBlock = new BasicBlock("ignitite_block", Material.ROCK, 23.0f, 20f, 7, PREFIX_BLOCK);
|
||||
// Group: Ratio
|
||||
public static Block violiumBlock = new BasicBlock("violium_block", Material.ROCK, 13.0f, 13.0f, 4, PREFIX_BLOCK);
|
||||
public static Block bismuthBlock = new BasicBlock("bismuth_block", Material.ROCK, 8.0f, 8.0f, 5, PREFIX_BLOCK);
|
||||
public static Block mindoriteBlock = new BasicBlock("mindorite_block", Material.ROCK, 12.0f, 12.0f, 2, PREFIX_BLOCK);
|
||||
public static Block karmesineBlock = new BasicBlock("karmesine_block", Material.ROCK, 13.0f, 15.0f, 3, PREFIX_BLOCK);
|
||||
public static Block violiumBlock = new BasicBlock("violium_block", Material.ROCK, 13.0f, 12f, 4, PREFIX_BLOCK);
|
||||
public static Block bismuthBlock = new BasicBlock("bismuth_block", Material.ROCK, 8.0f, 10f, 5, PREFIX_BLOCK);
|
||||
public static Block mindoriteBlock = new BasicBlock("mindorite_block", Material.ROCK, 12.0f, 12f, 2, PREFIX_BLOCK);
|
||||
public static Block karmesineBlock = new BasicBlock("karmesine_block", Material.ROCK, 13.0f, 12f, 3, PREFIX_BLOCK);
|
||||
|
||||
|
||||
public static Block imperomiteBlock = new BasicBlock("imperomite_block", Material.ROCK, 24.0f, 25.0f, 5, PREFIX_BLOCK);
|
||||
public static Block fractoryteBlock = new BasicBlock("fractoryte_block", Material.ROCK, 8.0f, 8.0f, 8, PREFIX_BLOCK);
|
||||
public static Block noctunyxBlock = new BasicBlock("noctunyx_block", Material.ROCK, 60.0f, 500.0f, 6, PREFIX_BLOCK);
|
||||
public static Block nitroniteBlock = new BasicBlock("nitronite_block", Material.ROCK, 13.0f, 15.0f, 7, PREFIX_BLOCK);
|
||||
public static Block cryptogenBlock = new BasicBlock("cryptogen_block", Material.ROCK, 23.0f, 25.0f, 6, PREFIX_BLOCK);
|
||||
public static Block seismodiumBlock = new BasicBlock("seismodium_block", Material.ROCK, 30.0f, 30.0f, 7, 1f, PREFIX_BLOCK);
|
||||
public static Block aegisaltBlock = new BasicBlock("aegisalt_block", Material.ROCK, 13.0f, 13.0f, 5, PREFIX_BLOCK);
|
||||
public static Block ultraniteBlock = new BasicBlock("ultranite_block", Material.ROCK, 13.0f, 15.0f, 8, PREFIX_BLOCK);
|
||||
public static Block bysmuidBlock = new BasicBlock("bysmuid_block", Material.ROCK, 35.0f, 35.0f, 5, 0.25f, PREFIX_BLOCK);
|
||||
public static Block nucleumBlock = new BasicBlock("nucleum_block", Material.ROCK, 25.0f, 25.0f, 4, PREFIX_BLOCK);
|
||||
public static Block terramiteBlock = new BasicBlock("terramite_block", Material.ROCK, 70.0f, 800.0f, 4, PREFIX_BLOCK);
|
||||
public static Block solariumBlock = new BasicBlock("solarium_block", Material.ROCK, 80.0f, 1000.0f, 5, PREFIX_BLOCK);
|
||||
public static Block lumixylBlock = new BasicBlock("lumixyl_block", Material.ROCK, 12.0f, 12.0f, 5, PREFIX_BLOCK);
|
||||
public static Block dyoniteBlock = new BasicBlock("dyonite_block", Material.ROCK, 23.0f, 25.0f, 4, PREFIX_BLOCK);
|
||||
public static Block proxideumBlock = new BasicBlock("proxideum_block", Material.ROCK, 25.0f, 25.0f, 4, PREFIX_BLOCK);
|
||||
public static Block astriumBlock = new BasicBlock("astrium_block", Material.ROCK, 55.0f, 400.0f, 7, PREFIX_BLOCK);
|
||||
|
||||
public static Block imperomiteBlock = new BasicBlock("imperomite_block", Material.ROCK, 24.0f, 25f, 5, PREFIX_BLOCK);
|
||||
public static Block fractoryteBlock = new BasicBlock("fractoryte_block", Material.ROCK, 8.0f, 15f, 8, PREFIX_BLOCK);
|
||||
public static Block noctunyxBlock = new BasicBlock("noctunyx_block", Material.ROCK, 60.0f, 15f, 6, PREFIX_BLOCK);
|
||||
public static Block nitroniteBlock = new BasicBlock("nitronite_block", Material.ROCK, 13.0f, 12f, 7, 0.8f, PREFIX_BLOCK);
|
||||
public static Block cryptogenBlock = new BasicBlock("cryptogen_block", Material.ROCK, 23.0f, 15f, 6, PREFIX_BLOCK);
|
||||
public static Block seismodiumBlock = new BasicBlock("seismodium_block", Material.ROCK, 30.0f, 25f, 7, PREFIX_BLOCK);
|
||||
public static Block aegisaltBlock = new BasicBlock("aegisalt_block", Material.ROCK, 13.0f, 15f, 5, PREFIX_BLOCK);
|
||||
public static Block ultraniteBlock = new BasicBlock("ultranite_block", Material.ROCK, 13.0f, 25f, 8, 0.6f, PREFIX_BLOCK);
|
||||
public static Block bysmuidBlock = new BasicBlock("bysmuid_block", Material.ROCK, 35.0f, 15f, 5, PREFIX_BLOCK);
|
||||
public static Block nucleumBlock = new BasicBlock("nucleum_block", Material.ROCK, 25.0f, 15f, 4, 0.85f, PREFIX_BLOCK);
|
||||
public static Block terramiteBlock = new BasicBlock("terramite_block", Material.ROCK, 70.0f, 15f, 4, PREFIX_BLOCK);
|
||||
public static Block solariumBlock = new BasicBlock("solarium_block", Material.ROCK, 80.0f, 25f, 5, PREFIX_BLOCK);
|
||||
public static Block lumixylBlock = new BasicBlock("lumixyl_block", Material.ROCK, 12.0f, 15f, 5, 1f, PREFIX_BLOCK);
|
||||
public static Block dyoniteBlock = new BasicBlock("dyonite_block", Material.ROCK, 23.0f, 15f, 4, 0.3f, PREFIX_BLOCK);
|
||||
public static Block proxideumBlock = new BasicBlock("proxideum_block", Material.ROCK, 25.0f, 15f, 4, PREFIX_BLOCK);
|
||||
public static Block astriumBlock = new BasicBlock("astrium_block", Material.ROCK, 55.0f, 15f, 7, PREFIX_BLOCK);
|
||||
|
||||
/**
|
||||
* Registers all materials' ingots and nuggets <br>
|
||||
* Detailed summary: <br>
|
||||
* Gets the ingots declared in the class (fields and reflection) and iterates through them: <br>
|
||||
* Checks that the field is static, registers the field (item), and adds an oreDict entry if needed
|
||||
*/
|
||||
public static void register() {
|
||||
Field[] declaredFields = Blocks.class.getDeclaredFields();
|
||||
for (Field field : declaredFields) {
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
|
||||
Field[] declaredFields = Blocks.class.getDeclaredFields(); // Gets the fields (ingots) declared above
|
||||
for (Field field : declaredFields) { // Iterates through the fields declared above
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { // Checks that the fields are static
|
||||
Class<?> targetType = field.getType();
|
||||
try {
|
||||
Block block = (Block) field.get(targetType);
|
||||
Utils.registerBlockWithItem(block);
|
||||
|
||||
if (block instanceof BasicBlock) {
|
||||
if (((BasicBlock) block).isOreDict()) {
|
||||
Block block = (Block) field.get(targetType); // Gets the field as a BasicBlock which is then casted to an Block
|
||||
block.setCreativeTab(CreativeTab.tabTaigaBlock);
|
||||
Utils.registerBlockWithItem(block); // Registers block and its item
|
||||
if (block instanceof BasicBlock) { // Checks that the block is a BasicBlock
|
||||
if (((BasicBlock) block).isOreDict()) { // Checks that the block has an oreDict entry
|
||||
String oreDictName;
|
||||
String[] nameParts = block.getUnlocalizedName().replace("tile.", "").split("_");
|
||||
|
||||
@@ -111,7 +117,7 @@ public class Blocks {
|
||||
} else {
|
||||
oreDictName = nameParts[0];
|
||||
}
|
||||
OreDictionary.registerOre(((BasicBlock) block).getOreDictPrefix() + StringUtils.capitalize(oreDictName), block);
|
||||
OreDictionary.registerOre(((BasicBlock) block).getOreDictPrefix() + StringUtils.capitalize(oreDictName), block); // Registers the block's oreDict
|
||||
}
|
||||
}
|
||||
} catch (IllegalAccessException e) {
|
||||
@@ -119,8 +125,5 @@ public class Blocks {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
OreDictionary.registerOre("nuggetIron", slagironOre);
|
||||
OreDictionary.registerOre("nuggetGold", slaggoldOre);
|
||||
}
|
||||
}
|
||||
|
27
src/main/java/com/sosnitzka/taiga/CreativeTab.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package com.sosnitzka.taiga;
|
||||
|
||||
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.adamantiteBlock;
|
||||
import static com.sosnitzka.taiga.Items.noctunyxIngot;
|
||||
|
||||
public class CreativeTab {
|
||||
|
||||
public static final CreativeTabs tabTaigaBlock = new CreativeTabs("taiga_block") {
|
||||
@Override
|
||||
public Item getTabIconItem() {
|
||||
return Item.getItemFromBlock(adamantiteBlock);
|
||||
}
|
||||
};
|
||||
|
||||
public static final CreativeTabs tabTaigaItem = new CreativeTabs("taiga_item") {
|
||||
@Override
|
||||
public Item getTabIconItem() {
|
||||
return noctunyxIngot;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
}
|
@@ -5,10 +5,13 @@ import com.sosnitzka.taiga.generic.BasicTinkerFluid;
|
||||
import com.sosnitzka.taiga.util.Utils;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraftforge.fluids.FluidRegistry;
|
||||
import slimeknights.tconstruct.shared.TinkerFluids;
|
||||
import slimeknights.tconstruct.smeltery.block.BlockMolten;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.slaggoldOre;
|
||||
import static com.sosnitzka.taiga.Blocks.slagironOre;
|
||||
import static com.sosnitzka.taiga.Items.*;
|
||||
import static com.sosnitzka.taiga.util.Utils.registerFluid;
|
||||
import static slimeknights.tconstruct.library.TinkerRegistry.registerMelting;
|
||||
@@ -35,7 +38,7 @@ public class Fluids {
|
||||
public static BasicTinkerFluid nitroniteFluid = new BasicTinkerFluid("nitronite", 0xFFdfe553, true, 680, 10, 2185);
|
||||
public static BasicTinkerFluid proxideumFluid = new BasicTinkerFluid("proxideum", 0xFF2f7177, true, 700, 9, 3859);
|
||||
public static BasicTinkerFluid noctunyxFluid = new BasicTinkerFluid("noctunyx", 0xFF5f5081, true, 712, 8, 3983);
|
||||
public static BasicTinkerFluid imperomiteFluid = new BasicTinkerFluid("imperomite", 0xFFff6642, true, 510, 10, 2353);
|
||||
public static BasicTinkerFluid imperomiteFluid = new BasicTinkerFluid("imperomite", 0xFF5cc96b, true, 510, 10, 2353);
|
||||
public static BasicTinkerFluid cryptogenFluid = new BasicTinkerFluid("cryptogen", 0xFF9f8a4a, true, 560, 10, 3243);
|
||||
public static BasicTinkerFluid fractoryteFluid = new BasicTinkerFluid("fractoryte", 0xFF983f11, true, 670, 8, 3805);
|
||||
public static BasicTinkerFluid seismodiumFluid = new BasicTinkerFluid("seismodium", 0xFF46131D, true, 831, 10, 1837);
|
||||
@@ -58,21 +61,28 @@ public class Fluids {
|
||||
public static BasicTinkerFluid anthraciteFluid = new BasicTinkerFluid("anthracite_fluid", 0xFF111111, false, 500, 0, 632);
|
||||
public static BasicTinkerFluid spectrumFluid = new BasicTinkerFluid("spectrum_fluid", 0xFF64748f, false, 600, 0, 512);
|
||||
|
||||
|
||||
/**
|
||||
* Registers all materials' fluids <br>
|
||||
* Detailed summary: <br>
|
||||
* Gets the fluids declared in the class (fields and reflection) and iterates through them: <br>
|
||||
* Checks that the field is static, registers the field (fluids), and registers the models on the client
|
||||
*/
|
||||
static void register() {
|
||||
Field[] declaredFields = Fluids.class.getDeclaredFields();
|
||||
for (Field field : declaredFields) {
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
|
||||
Field[] declaredFields = Fluids.class.getDeclaredFields(); // Gets the blocks and ores declared above
|
||||
for (Field field : declaredFields) { // Iterates through the fields declared above
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { // Checks that the fields are static
|
||||
Class<?> targetType = field.getType();
|
||||
try {
|
||||
BasicTinkerFluid fluid = (BasicTinkerFluid) field.get(targetType);
|
||||
registerFluid(fluid);
|
||||
BasicTinkerFluid fluid = (BasicTinkerFluid) field.get(targetType); // Gets the field as a BasicTinkerFluid
|
||||
registerFluid(fluid); // Registers the fluid into the game along wit its bucket
|
||||
|
||||
BlockMolten block = new BlockMolten(fluid);
|
||||
// Sets names
|
||||
block.setUnlocalizedName("molten_" + fluid.getName());
|
||||
block.setRegistryName(TAIGA.MODID, "molten_" + fluid.getName());
|
||||
// Registers the fluid in its block form and its corresponding item (block/fluid as item in inventory)
|
||||
Utils.registerBlockWithItem(block);
|
||||
|
||||
// Registers the fluid's model but only on the client side
|
||||
TAIGA.proxy.registerFluidModels(fluid);
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
@@ -81,6 +91,9 @@ public class Fluids {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers special smeltery recipes (not alloying)
|
||||
*/
|
||||
static void registerfromItem() {
|
||||
registerMelting(radiant_pearl, radiant_enderium, 72);
|
||||
registerMelting(glimmer_pearl, glimming_enderium, 72);
|
||||
@@ -92,5 +105,10 @@ public class Fluids {
|
||||
registerMelting(Blocks.OBSIDIAN, FluidRegistry.LAVA, 432);
|
||||
registerMelting(Blocks.NETHERRACK, FluidRegistry.LAVA, 48);
|
||||
registerMelting(Blocks.STONE, FluidRegistry.LAVA, 144);
|
||||
registerMelting(slagironOre, TinkerFluids.iron, 16);
|
||||
registerMelting(slagironIngot, TinkerFluids.iron, 24);
|
||||
registerMelting(slaggoldOre, TinkerFluids.gold, 16);
|
||||
registerMelting(slaggoldIngot, TinkerFluids.gold, 24);
|
||||
|
||||
}
|
||||
}
|
||||
|
@@ -3,10 +3,6 @@ package com.sosnitzka.taiga;
|
||||
|
||||
import com.google.common.base.Joiner;
|
||||
import com.sosnitzka.taiga.generic.BasicItem;
|
||||
import com.sosnitzka.taiga.items.ItemIronNugget;
|
||||
import com.sosnitzka.taiga.items.ItemLignite;
|
||||
import com.sosnitzka.taiga.items.ItemSlaggoldIngot;
|
||||
import com.sosnitzka.taiga.items.ItemSlagironIngot;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
@@ -19,14 +15,48 @@ import static com.sosnitzka.taiga.util.Utils.PREFIX_INGOT;
|
||||
import static com.sosnitzka.taiga.util.Utils.PREFIX_NUGGET;
|
||||
|
||||
public class Items {
|
||||
public static ItemSlagironIngot slagironIngot = new ItemSlagironIngot();
|
||||
public static Item lignite = new ItemLignite("lignite", "lignite");
|
||||
public static Item lignite2 = new ItemLignite("lignite", "lignite2");
|
||||
public static Item lignite3 = new ItemLignite("lignite", "lignite3");
|
||||
public static ItemIronNugget iron_nugget = new ItemIronNugget();
|
||||
public static ItemSlaggoldIngot slaggoldIngot = new ItemSlaggoldIngot();
|
||||
|
||||
public static Item lignite = new BasicItem("lignite", null, "lignite");
|
||||
public static Item iron_nugget = new BasicItem("iron_nugget", PREFIX_NUGGET);
|
||||
public static Item slaggoldIngot = new BasicItem("slaggold_ingot");
|
||||
public static Item slagironIngot = new BasicItem("slagiron_ingot");
|
||||
public static Item fuel_brick = new BasicItem("fuel_brick");
|
||||
|
||||
//Nuggets
|
||||
public static Item titanite_nugget = new BasicItem("titanite_nugget", PREFIX_NUGGET);
|
||||
public static Item adamantite_nugget = new BasicItem("adamantite_nugget", PREFIX_NUGGET);
|
||||
public static Item arcanite_nugget = new BasicItem("arcanite_nugget", PREFIX_NUGGET);
|
||||
public static Item violium_nugget = new BasicItem("violium_nugget", PREFIX_NUGGET);
|
||||
public static Item bismuth_nugget = new BasicItem("bismuth_nugget", PREFIX_NUGGET);
|
||||
public static Item eternite_nugget = new BasicItem("eternite_nugget", PREFIX_NUGGET);
|
||||
public static Item ignitite_nugget = new BasicItem("ignitite_nugget", PREFIX_NUGGET);
|
||||
public static Item karmesine_nugget = new BasicItem("karmesine_nugget", PREFIX_NUGGET);
|
||||
public static Item meteorite_nugget = new BasicItem("meteorite_nugget", PREFIX_NUGGET);
|
||||
public static Item mindorite_nugget = new BasicItem("mindorite_nugget", PREFIX_NUGGET);
|
||||
public static Item mythril_nugget = new BasicItem("mythril_nugget", PREFIX_NUGGET);
|
||||
public static Item palladium_nugget = new BasicItem("palladium_nugget", PREFIX_NUGGET);
|
||||
public static Item prometheum_nugget = new BasicItem("prometheum_nugget", PREFIX_NUGGET);
|
||||
// NAH! public static Item tiberium_nugget = new BasicItem("tiberium_nugget", PREFIX_NUGGET);
|
||||
public static Item vibranium_nugget = new BasicItem("vibranium_nugget", PREFIX_NUGGET);
|
||||
public static Item rubium_nugget = new BasicItem("rubium_nugget", PREFIX_NUGGET);
|
||||
public static Item astrium_nugget = new BasicItem("astrium_nugget", PREFIX_NUGGET);
|
||||
public static Item nitronite_nugget = new BasicItem("nitronite_nugget", PREFIX_NUGGET);
|
||||
public static Item proxideum_nugget = new BasicItem("proxideum_nugget", PREFIX_NUGGET);
|
||||
public static Item noctunyx_nugget = new BasicItem("noctunyx_nugget", PREFIX_NUGGET);
|
||||
public static Item imperomite_nugget = new BasicItem("imperomite_nugget", PREFIX_NUGGET);
|
||||
public static Item cryptogen_nugget = new BasicItem("cryptogen_nugget", PREFIX_NUGGET);
|
||||
public static Item fractoryte_nugget = new BasicItem("fractoryte_nugget", PREFIX_NUGGET);
|
||||
public static Item seismodium_nugget = new BasicItem("seismodium_nugget", PREFIX_NUGGET);
|
||||
public static Item tiberium_nugget = new BasicItem("tiberium_nugget", PREFIX_NUGGET);
|
||||
public static Item terramite_nugget = new BasicItem("terramite_nugget", PREFIX_NUGGET);
|
||||
public static Item lumixyl_nugget = new BasicItem("lumixyl_nugget", PREFIX_NUGGET);
|
||||
public static Item solarium_nugget = new BasicItem("solarium_nugget", PREFIX_NUGGET);
|
||||
public static Item dyonite_nugget = new BasicItem("dyonite_nugget", PREFIX_NUGGET);
|
||||
public static Item ultranite_nugget = new BasicItem("ultranite_nugget", PREFIX_NUGGET);
|
||||
public static Item nucleum_nugget = new BasicItem("nucleum_nugget", PREFIX_NUGGET);
|
||||
public static Item aegisalt_nugget = new BasicItem("aegisalt_nugget", PREFIX_NUGGET);
|
||||
public static Item bysmuid_nugget = new BasicItem("bysmuid_nugget", PREFIX_NUGGET);
|
||||
|
||||
public static Item glimmercoal = new BasicItem("glimmercoal");
|
||||
public static Item radiant_pearl = new BasicItem("radiant_pearl");
|
||||
public static Item glimmer_pearl = new BasicItem("glimmer_pearl");
|
||||
@@ -72,19 +102,28 @@ public class Items {
|
||||
public static Item bysmuidIngot = new BasicItem("bysmuid_ingot", PREFIX_INGOT);
|
||||
|
||||
public static Item tiberiumShardInstable = new BasicItem("tiberium_shard_instable");
|
||||
public static Item tiberiumShardStable = new BasicItem("tiberium_nugget", PREFIX_NUGGET);
|
||||
|
||||
/**
|
||||
* Registers all materials' ingots and nuggets <br>
|
||||
* Detailed summary: <br>
|
||||
* Gets the ingots declared in the class (fields and reflection) and iterates through them: <br>
|
||||
* Checks that the field is static, registers the field (item), and adds an oreDict entry if needed
|
||||
*/
|
||||
public static void register() {
|
||||
Field[] declaredFields = Items.class.getDeclaredFields();
|
||||
for (Field field : declaredFields) {
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
|
||||
Field[] declaredFields = Items.class.getDeclaredFields(); // Gets the fields (ingots) declared above
|
||||
for (Field field : declaredFields) { // Iterates through the fields declared above
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) { // Checks that the fields are static
|
||||
Class<?> targetType = field.getType();
|
||||
try {
|
||||
Item item = (Item) field.get(targetType);
|
||||
GameRegistry.register(item);
|
||||
|
||||
if (item instanceof BasicItem) {
|
||||
if (((BasicItem) item).isOreDict()) {
|
||||
Item item = (Item) field.get(targetType); // Gets the field as a BasicItem which is then casted to an Item
|
||||
if (item.equals(iron_nugget) && OreDictionary.doesOreNameExist("nuggetIron")) {
|
||||
System.out.println("TAIGA: Skipped registration of nuggetIron which already exists.");
|
||||
continue;
|
||||
}
|
||||
item.setCreativeTab(CreativeTab.tabTaigaItem);
|
||||
GameRegistry.register(item); // Registers the item into the game
|
||||
if (item instanceof BasicItem) { // Checks that the item is a BasicItem
|
||||
if (((BasicItem) item).isOreDict()) { // Checks if this item should be registered into the oreDict and registers it
|
||||
String oreDictName;
|
||||
String[] nameParts = item.getUnlocalizedName().replace("item.", "").split("_");
|
||||
|
||||
@@ -94,7 +133,7 @@ public class Items {
|
||||
oreDictName = nameParts[0];
|
||||
}
|
||||
|
||||
OreDictionary.registerOre(((BasicItem) item).getOreDictPrefix() + StringUtils.capitalize(oreDictName), item);
|
||||
OreDictionary.registerOre(((BasicItem) item).getOreDictPrefix() + StringUtils.capitalize(oreDictName), item); // Registers into oreDict
|
||||
}
|
||||
}
|
||||
} catch (IllegalAccessException e) {
|
||||
@@ -102,10 +141,6 @@ public class Items {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
OreDictionary.registerOre("nuggetIron", iron_nugget);
|
||||
OreDictionary.registerOre("ingotIron", slagironIngot);
|
||||
OreDictionary.registerOre("ingotGold", slaggoldIngot);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -8,7 +8,7 @@ import slimeknights.tconstruct.library.materials.HeadMaterialStats;
|
||||
import slimeknights.tconstruct.library.materials.Material;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
|
||||
import static slimeknights.tconstruct.tools.TinkerMaterials.*;
|
||||
import static slimeknights.tconstruct.tools.TinkerTraits.*;
|
||||
|
||||
public class MaterialTraits {
|
||||
|
||||
@@ -65,14 +65,12 @@ public class MaterialTraits {
|
||||
public static Material palladium = new Material("palladium", TextFormatting.DARK_GRAY).addTrait(dark);
|
||||
public static Material eternite = new Material("eternite", TextFormatting.AQUA).addTrait(writable2); //.addTrait(traditional)
|
||||
public static Material mythril = new Material("mythril", TextFormatting.GRAY).addTrait(holy, HeadMaterialStats.TYPE).addTrait(hellish, HandleMaterialStats.TYPE);
|
||||
|
||||
public static Material imperomite = new Material("imperomite", TextFormatting.DARK_RED).addTrait(cascade);
|
||||
public static Material fractoryte = new Material("fractoryte", TextFormatting.DARK_RED).addTrait(fracture);
|
||||
public static Material noctunyx = new Material("noctunyx", TextFormatting.LIGHT_PURPLE).addTrait(hollow, HeadMaterialStats.TYPE).addTrait(reviving, HandleMaterialStats.TYPE);
|
||||
public static Material nitronite = new Material("nitronite", TextFormatting.YELLOW).addTrait(uncertain);
|
||||
public static Material cryptogen = new Material("cryptogen", TextFormatting.DARK_GREEN).addTrait(randomize);
|
||||
public static Material seismodium = new Material("seismodium", TextFormatting.WHITE).addTrait(heroic).addTrait(fragile);
|
||||
;
|
||||
public static Material aegisalt = new Material("aegisalt", TextFormatting.AQUA).addTrait(analysing);
|
||||
public static Material ultranite = new Material("ultranite", TextFormatting.AQUA).addTrait(pulverizing);
|
||||
public static Material bysmuid = new Material("bysmuid", TextFormatting.AQUA).addTrait(organizing, HandleMaterialStats.TYPE).addTrait(melting, HeadMaterialStats.TYPE);
|
||||
|
@@ -1,11 +1,12 @@
|
||||
package com.sosnitzka.taiga;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.sosnitzka.taiga.proxy.ServerProxy;
|
||||
import com.sosnitzka.taiga.recipes.Crafting;
|
||||
import com.sosnitzka.taiga.recipes.Smelting;
|
||||
import com.sosnitzka.taiga.proxy.CommonProxy;
|
||||
import com.sosnitzka.taiga.recipes.CraftingRegistry;
|
||||
import com.sosnitzka.taiga.recipes.SmeltingRegistry;
|
||||
import com.sosnitzka.taiga.util.FuelHandler;
|
||||
import com.sosnitzka.taiga.world.ZWorldGen;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.fluids.Fluid;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.Mod.EventHandler;
|
||||
@@ -14,84 +15,57 @@ import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import slimeknights.tconstruct.library.MaterialIntegration;
|
||||
import slimeknights.tconstruct.library.TinkerRegistry;
|
||||
import slimeknights.tconstruct.library.materials.ExtraMaterialStats;
|
||||
import slimeknights.tconstruct.library.materials.HandleMaterialStats;
|
||||
import slimeknights.tconstruct.library.materials.HeadMaterialStats;
|
||||
import slimeknights.tconstruct.library.materials.Material;
|
||||
import slimeknights.tconstruct.tools.TinkerMaterials;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.List;
|
||||
|
||||
import static com.sosnitzka.taiga.Fluids.*;
|
||||
import static com.sosnitzka.taiga.MaterialTraits.*;
|
||||
import static com.sosnitzka.taiga.TAIGAConfiguration.*;
|
||||
import static slimeknights.tconstruct.library.utils.HarvestLevels.*;
|
||||
|
||||
@Mod(modid = TAIGA.MODID, version = TAIGA.VERSION, dependencies = "required-after:tconstruct@[1.10-2.3.3,);" + "required-after:mantle@[1.10-0.10.3,)")
|
||||
@Mod(modid = TAIGA.MODID, version = TAIGA.VERSION, guiFactory = TAIGA.GUIFACTORY, dependencies = "required-after:tconstruct@[1.10-2.3.3,);" + "required-after:mantle@[1.10-0.10.3,)")
|
||||
public class TAIGA {
|
||||
|
||||
public static final String MODID = "taiga";
|
||||
public static final String VERSION = "${version}";
|
||||
public static final String GUIFACTORY = "com.sosnitzka.taiga.TAIGAGuiFactory";
|
||||
|
||||
@SidedProxy(clientSide = "com.sosnitzka.taiga.proxy.ClientProxy", serverSide = "com.sosnitzka.taiga.proxy.ServerProxy")
|
||||
public static ServerProxy proxy;
|
||||
private List<MaterialIntegration> integrateList = Lists.newArrayList();
|
||||
@SidedProxy(clientSide = "com.sosnitzka.taiga.proxy.ClientProxy", serverSide = "com.sosnitzka.taiga.proxy.CommonProxy")
|
||||
public static CommonProxy proxy;
|
||||
|
||||
private List<MaterialIntegration> integrateList = Lists.newArrayList(); // List of materials needed to be integrated
|
||||
|
||||
@EventHandler
|
||||
public void preInit(FMLPreInitializationEvent e) {
|
||||
Items.register();
|
||||
Fluids.register();
|
||||
Blocks.register();
|
||||
Fluids.registerfromItem();
|
||||
Alloys.register();
|
||||
proxy.initConfig();
|
||||
|
||||
// ARCANE ORES
|
||||
registerTinkerMaterial("Tiberium", tiberium, tiberiumFluid, 223, 6.2f, 8.35f, 0.63f, 50, 50, OBSIDIAN, false, true);
|
||||
registerTinkerMaterial("Rubium", rubium, rubiumFluid, 351, 5.15f, 7.00f, 1.05f, -100, 250, COBALT, false, true);
|
||||
registerTinkerMaterial("Prometheum", prometheum, prometheumFluid, 539, 3.6f, 6.60f, 0.90f, 0, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Arcanite", arcanite, arcaniteFluid, 698, 4.3f, 7.88f, 0.85f, -50, 150, METEORITE, false, true);
|
||||
// SOLIDE ORES
|
||||
registerTinkerMaterial("Titanite", titanite, titaniteFluid, 811, 4.8f, 6.40f, 1.00f, -50, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Meteorite", meteorite, meteoriteFluid, 823, 6.1f, 6.83f, 1.20f, -50, 200, METEORITE, false, true);
|
||||
registerTinkerMaterial("Vibranium", vibranium, vibraniumFluid, 917, 7.45f, 7.17f, 1.15f, 50, 150, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Adamantite", adamantite, adamantiteFluid, 981, 8.9f, 9.11f, 1.20f, -200, 300, ADAMANTITE, false, true);
|
||||
// ETHERE ORES
|
||||
registerTinkerMaterial("Eternite", eternite, eterniteFluid, 592, 7.35f, 1.95f, 1.10f, 150, 150, COBALT, false, true);
|
||||
registerTinkerMaterial("Mythril", mythril, mythrilFluid, 552, 8.75f, 2.87f, 0.98f, -100, 200, TITANITE, false, true);
|
||||
registerTinkerMaterial("Palladium", palladium, palladiumFluid, 578, 10.4f, 3.13f, 1.09f, 0, 100, METEORITE, false, true);
|
||||
registerTinkerMaterial("Ignitite", ignitite, ignititeFluid, 673, 12.1f, 4.10f, 1.15f, -50, 150, VIBRANIUM, false, true);
|
||||
// RATIO ORES
|
||||
registerTinkerMaterial("Bismuth", bismuth, bismuthFluid, 235, 5.33f, 3.80f, 1.15f, 17, 117, OBSIDIAN, false, true);
|
||||
registerTinkerMaterial("Violium", violium, violiumFluid, 427, 4.2f, 3.30f, 1.00f, 133, 150, COBALT, false, true);
|
||||
registerTinkerMaterial("Mindorite", mindorite, mindoriteFluid, 458, 6.41f, 4.40f, 0.90f, 83, 100, TITANITE, false, true);
|
||||
registerTinkerMaterial("Karmesine", karmesine, karmesineFluid, 627, 6.75f, 5.10f, 0.99f, 0, 200, METEORITE, false, true);
|
||||
// Material from alloys
|
||||
registerTinkerMaterial("Nitronite", nitronite, nitroniteFluid, 745, 6.74f, 8.74f, 0.85f, 75, 93, TITANITE, false, true);
|
||||
registerTinkerMaterial("Bysmuid", bysmuid, bysmuidFluid, 305, 5.22f, 6.47f, 1.09f, -80, 197, COBALT, false, true);
|
||||
registerTinkerMaterial("Ultranite", ultranite, ultraniteFluid, 1016, 5.72f, 6.76f, 1.02f, -120, 210, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Astrium", astrium, astriumFluid, 670, 5.28f, 9.14f, 0.91f, -45, 170, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Imperomite", imperomite, imperomiteFluid, 770, 11.60f, 3.57f, 1.05f, -38, 125, METEORITE, false, true);
|
||||
registerTinkerMaterial("Dyonite", dyonite, dyoniteFluid, 733, 6.14f, 7.69f, 0.97f, -15, 140, TITANITE, false, true);
|
||||
registerTinkerMaterial("Solarium", solarium, solariumFluid, 1020, 13.78f, 4.64f, 1.15f, 0, 150, ADAMANTITE, false, true);
|
||||
registerTinkerMaterial("Fractoryte", fractoryte, fractoryteFluid, 1071, 7.65f, 7.75f, 1.15f, -250, 283, METEORITE, false, true);
|
||||
registerTinkerMaterial("Aegisalt", aegisalt, aegisaltFluid, 355, 8.88f, 3.18f, 1.00f, 175, 125, TITANITE, false, true);
|
||||
registerTinkerMaterial("Noctunyx", noctunyx, noctunyxFluid, 713, 10.43f, 3.25f, 0.99f, -125, 183, METEORITE, false, true);
|
||||
registerTinkerMaterial("Nucleum", nucleum, nucleumFluid, 503, 11.30f, 3.22f, 1.05f, 100, 125, TITANITE, false, true);
|
||||
registerTinkerMaterial("Seismodium", seismodium, seismodiumFluid, 879, 13.85f, 4.19f, 1.17f, -75, 169, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Lumixyl", lumixyl, lumixylFluid, 357, 4.64f, 5.92f, 1.05f, 15, 130, COBALT, false, true);
|
||||
registerTinkerMaterial("Terramite", terramite, terramiteFluid, 482, 7.25f, 2.85f, 1.03f, 208, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Cryptogen", cryptogen, cryptogenFluid, 538, 5.71f, 6.93f, 0.88f, 58, 117, METEORITE, false, true);
|
||||
registerTinkerMaterial("Proxideum", proxideum, proxideumFluid, 597, 10.55f, 4.21f, 0.99f, -60, 200, METEORITE, false, true);
|
||||
Items.register(); // Registers items and its oreDict
|
||||
Blocks.register(); // Registers blocks and its items form a long with its oreDict
|
||||
Fluids.register(); // Registers all fluids and its buckets
|
||||
Fluids.registerfromItem(); // Registers some special smeltery recipes (not alloying)
|
||||
Alloys.register(); // Registers alloying recipes
|
||||
|
||||
registerTinkerMaterials(); // Registers materials and associated fluids and stats into tconstruct
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void init(FMLInitializationEvent e) {
|
||||
proxy.registerStuff();
|
||||
GameRegistry.registerWorldGenerator(new ZWorldGen(), 100);
|
||||
GameRegistry.registerFuelHandler(new FuelHandler());
|
||||
Smelting.register();
|
||||
Crafting.register();
|
||||
proxy.registerModels(); // Registers models on the client side
|
||||
GameRegistry.registerWorldGenerator(new ZWorldGen(), 100); // Generates ores
|
||||
GameRegistry.registerFuelHandler(new FuelHandler()); // Registeres fuels' burn times
|
||||
SmeltingRegistry.register(); // Registers smelting recipes
|
||||
CraftingRegistry.register(); // Registers crafting recipes
|
||||
|
||||
// Adds new harvest levels' names
|
||||
harvestLevelNames.put(METEORITE, TinkerMaterials.bone.getTextColor() + "Meteorite");
|
||||
harvestLevelNames.put(VIBRANIUM, TinkerMaterials.blueslime.getTextColor() + "Vibranium");
|
||||
harvestLevelNames.put(ADAMANTITE, TinkerMaterials.ardite.getTextColor() + "Adamantite");
|
||||
@@ -107,15 +81,97 @@ public class TAIGA {
|
||||
|
||||
}
|
||||
|
||||
private void registerTinkerMaterial(String oreSuffix, slimeknights.tconstruct.library.materials.Material material, Fluid fluid, int headDura, float headSpeed, float headAttack, float handleMod, int handleDura, int extra, int headLevel, boolean craft, boolean cast) {
|
||||
/**
|
||||
* @param oreSuffix Suffix in the oreDict, also the name. ex) the "Iron" in "ingotIron"
|
||||
* @param material TConstruct material
|
||||
* @param fluid material's fluid
|
||||
* @param headDura Durability (head)
|
||||
* @param headSpeed Mining speed (head)
|
||||
* @param headAttack Attack speed (head)
|
||||
* @param handleMod Durability multiplier (handle)
|
||||
* @param handleDura Extra durability (handle)
|
||||
* @param extra Extra durability (binding and more)
|
||||
* @param headLevel Mining level (head)
|
||||
* @param craft Can craft parts in part builder
|
||||
* @param cast Can craft parts by casting with fluid (smeltery)
|
||||
*/
|
||||
private void registerTinkerMaterial(String oreSuffix, Material material, Fluid fluid, int headDura, float headSpeed, float headAttack, float handleMod, int handleDura, int extra, int headLevel, boolean craft, boolean cast) {
|
||||
TinkerRegistry.addMaterialStats(material, new HeadMaterialStats(headDura, headSpeed, headAttack, headLevel));
|
||||
TinkerRegistry.addMaterialStats(material, new HandleMaterialStats(handleMod, handleDura));
|
||||
TinkerRegistry.addMaterialStats(material, new ExtraMaterialStats(extra));
|
||||
material.setFluid(fluid).setCraftable(craft).setCastable(cast);
|
||||
|
||||
Item item = null;
|
||||
Field[] items = Items.class.getDeclaredFields();
|
||||
for (Field i : items) {
|
||||
if (i.getName().equals(StringUtils.uncapitalize(oreSuffix) + "Ingot")) {
|
||||
Item r = null;
|
||||
try {
|
||||
r = (Item) i.get(i.getType());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
item = r;
|
||||
}
|
||||
}
|
||||
|
||||
material.setFluid(fluid).setCraftable(craft).setCastable(cast).addItem(item, 1, Material.VALUE_Ingot);
|
||||
material.setRepresentativeItem(item);
|
||||
|
||||
proxy.setRenderInfo(material);
|
||||
MaterialIntegration integration = new MaterialIntegration(material, fluid, oreSuffix);
|
||||
integration.integrate();
|
||||
integrateList.add(integration);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Registers materials and associated fluids and stats into tconstruct
|
||||
*/
|
||||
private void registerTinkerMaterials() {
|
||||
|
||||
double d = durabilityFactorGeneral;
|
||||
System.out.println("Durability=" + d);
|
||||
float s = (float) speedFactorGeneral;
|
||||
System.out.println("Speed=" + s);
|
||||
float a = (float) attackFactorGeneral;
|
||||
System.out.println("Attack=" + a);
|
||||
|
||||
// ARCANE ORES
|
||||
registerTinkerMaterial("Tiberium", tiberium, tiberiumFluid, (int) (223 * d), 6.2f * s, 8.35f * a, 0.63f, 50, 50, OBSIDIAN, false, true);
|
||||
registerTinkerMaterial("Rubium", rubium, rubiumFluid, (int) (351 * d), 5.15f * s, 7.00f * a, 1.05f, -100, 250, COBALT, false, true);
|
||||
registerTinkerMaterial("Prometheum", prometheum, prometheumFluid, (int) (539 * d), 3.6f * s, 6.60f, 0.90f, 0, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Arcanite", arcanite, arcaniteFluid, (int) (698 * d), 4.3f * s, 7.88f * a, 0.85f, -50, 150, METEORITE, false, true);
|
||||
// SOLIDE ORES
|
||||
registerTinkerMaterial("Titanite", titanite, titaniteFluid, (int) (811 * d), 4.8f * s, 6.40f * a, 1.00f, -50, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Meteorite", meteorite, meteoriteFluid, (int) (823 * d), 6.1f * s, 6.83f * a, 1.20f, -50, 200, METEORITE, false, true);
|
||||
registerTinkerMaterial("Vibranium", vibranium, vibraniumFluid, (int) (917 * d), 7.45f * s, 7.17f * a, 1.15f, 50, 150, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Adamantite", adamantite, adamantiteFluid, (int) (981 * d), 8.9f * s, 9.11f * a, 1.20f, -200, 300, ADAMANTITE, false, true);
|
||||
// ETHERE ORES
|
||||
registerTinkerMaterial("Eternite", eternite, eterniteFluid, (int) (592 * d), 7.35f * s, 1.95f * a, 1.10f, 150, 150, COBALT, false, true);
|
||||
registerTinkerMaterial("Mythril", mythril, mythrilFluid, (int) (552 * d), 8.75f * s, 2.87f * a, 0.98f, -100, 200, TITANITE, false, true);
|
||||
registerTinkerMaterial("Palladium", palladium, palladiumFluid, (int) (578 * d), 10.4f * s, 3.13f * a, 1.09f, 0, 100, METEORITE, false, true);
|
||||
registerTinkerMaterial("Ignitite", ignitite, ignititeFluid, (int) (673 * d), 12.1f * s, 4.10f * a, 1.15f, -50, 150, VIBRANIUM, false, true);
|
||||
// RATIO ORES
|
||||
registerTinkerMaterial("Bismuth", bismuth, bismuthFluid, (int) (235 * d), 5.33f * s, 3.80f * a, 1.15f, 17, 117, OBSIDIAN, false, true);
|
||||
registerTinkerMaterial("Violium", violium, violiumFluid, (int) (427 * d), 4.2f * s, 3.30f * a, 1.00f, 133, 150, COBALT, false, true);
|
||||
registerTinkerMaterial("Mindorite", mindorite, mindoriteFluid, (int) (458 * d), 6.41f * s, 4.40f * a, 0.90f, 83, 100, TITANITE, false, true);
|
||||
registerTinkerMaterial("Karmesine", karmesine, karmesineFluid, (int) (627 * d), 6.75f * s, 5.10f * a, 0.99f, 0, 200, METEORITE, false, true);
|
||||
// Material from alloys
|
||||
registerTinkerMaterial("Nitronite", nitronite, nitroniteFluid, (int) (745 * d), 6.74f * s, 8.74f * a, 0.85f, 75, 93, TITANITE, false, true);
|
||||
registerTinkerMaterial("Bysmuid", bysmuid, bysmuidFluid, (int) (305 * d), 5.22f * s, 6.47f * a, 1.09f, -80, 197, COBALT, false, true);
|
||||
registerTinkerMaterial("Ultranite", ultranite, ultraniteFluid, (int) (1016 * d), 5.72f * s, 6.76f * a, 1.02f, -120, 210, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Astrium", astrium, astriumFluid, (int) (670 * d), 5.28f * s, 9.14f * a, 0.91f, -45, 170, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Imperomite", imperomite, imperomiteFluid, (int) (770 * d), 11.60f * s, 3.57f * a, 1.05f, -38, 125, METEORITE, false, true);
|
||||
registerTinkerMaterial("Dyonite", dyonite, dyoniteFluid, (int) (733 * d), 6.14f * s, 7.69f * a, 0.97f, -15, 140, TITANITE, false, true);
|
||||
registerTinkerMaterial("Solarium", solarium, solariumFluid, (int) (1020 * d), 13.78f * s, 4.64f * a, 1.15f, 0, 150, ADAMANTITE, false, true);
|
||||
registerTinkerMaterial("Fractoryte", fractoryte, fractoryteFluid, (int) (1071 * d), 7.65f * s, 7.75f * a, 1.15f, -250, 283, METEORITE, false, true);
|
||||
registerTinkerMaterial("Aegisalt", aegisalt, aegisaltFluid, (int) (355 * d), 8.88f * s, 3.18f * a, 1.00f, 175, 125, TITANITE, false, true);
|
||||
registerTinkerMaterial("Noctunyx", noctunyx, noctunyxFluid, (int) (713 * d), 10.43f * s, 3.25f * a, 0.99f, -125, 183, METEORITE, false, true);
|
||||
registerTinkerMaterial("Nucleum", nucleum, nucleumFluid, (int) (503 * d), 11.30f * s, 3.22f * a, 1.05f, 100, 125, TITANITE, false, true);
|
||||
registerTinkerMaterial("Seismodium", seismodium, seismodiumFluid, (int) (879 * d), 13.85f * s, 4.19f * a, 1.17f, -75, 169, VIBRANIUM, false, true);
|
||||
registerTinkerMaterial("Lumixyl", lumixyl, lumixylFluid, (int) (357 * d), 4.64f * s, 5.92f * a, 1.05f, 15, 130, COBALT, false, true);
|
||||
registerTinkerMaterial("Terramite", terramite, terramiteFluid, (int) (482 * d), 7.25f * s, 2.85f * a, 1.03f, 208, 150, TITANITE, false, true);
|
||||
registerTinkerMaterial("Cryptogen", cryptogen, cryptogenFluid, (int) (538 * d), 5.71f * s, 6.93f * a, 0.88f, 58, 117, METEORITE, false, true);
|
||||
registerTinkerMaterial("Proxideum", proxideum, proxideumFluid, (int) (597 * d), 10.55f * s, 4.21f * a, 0.99f, -60, 200, METEORITE, false, true);
|
||||
}
|
||||
}
|
387
src/main/java/com/sosnitzka/taiga/TAIGAConfiguration.java
Normal file
@@ -0,0 +1,387 @@
|
||||
package com.sosnitzka.taiga;
|
||||
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import net.minecraftforge.common.config.Configuration;
|
||||
import net.minecraftforge.common.config.Property;
|
||||
import net.minecraftforge.fml.client.event.ConfigChangedEvent;
|
||||
import net.minecraftforge.fml.common.Loader;
|
||||
import net.minecraftforge.fml.common.eventhandler.EventPriority;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class TAIGAConfiguration {
|
||||
public static final String CATEGORY_NAME_GENERAL = "category_general";
|
||||
public static final String CATEGORY_NAME_ORE_GEN = "category_ore_gen";
|
||||
public static final String CATEGORY_NAME_ORE_VAL = "category_ore_val";
|
||||
|
||||
public static double oreFactorGeneral;
|
||||
public static double speedFactorGeneral;
|
||||
public static double attackFactorGeneral;
|
||||
public static double durabilityFactorGeneral;
|
||||
|
||||
public static double ironFactor;
|
||||
public static double slagironFactor;
|
||||
public static double slaggoldFactor;
|
||||
public static double titaniteFactor;
|
||||
public static double adamantiteFactor;
|
||||
public static double arcaniteFactor;
|
||||
public static double violiumFactor;
|
||||
public static double bismuthFactor;
|
||||
public static double eterniteFactor;
|
||||
public static double ignititeFactor;
|
||||
public static double karmesineFactor;
|
||||
public static double meteoriteFactor;
|
||||
public static double mindoriteFactor;
|
||||
public static double mythrilFactor;
|
||||
public static double palladiumFactor;
|
||||
public static double prometheumFactor;
|
||||
public static double tiberiumFactor;
|
||||
public static double vibraniumFactor;
|
||||
public static double rubiumFactor;
|
||||
public static double basaltFactor;
|
||||
public static double rottengroundFactor;
|
||||
public static double ligniteFactor;
|
||||
|
||||
|
||||
public static boolean slagIronGen;
|
||||
public static boolean slagGoldGen;
|
||||
public static boolean ironGen;
|
||||
private static Configuration config = null;
|
||||
|
||||
public static void preInit() {
|
||||
File configFile = new File(Loader.instance().getConfigDir(), "TAIGA.cfg");
|
||||
config = new Configuration(configFile);
|
||||
|
||||
syncFromFile();
|
||||
}
|
||||
|
||||
public static void clientPreInit() {
|
||||
MinecraftForge.EVENT_BUS.register(new ConfigEventHandler());
|
||||
}
|
||||
|
||||
public static Configuration getConfig() {
|
||||
return config;
|
||||
}
|
||||
|
||||
public static void syncFromFile() {
|
||||
syncConfig(true, true);
|
||||
}
|
||||
|
||||
public static void syncFromGUI() {
|
||||
syncConfig(false, true);
|
||||
}
|
||||
|
||||
public static void syncFromFields() {
|
||||
syncConfig(false, false);
|
||||
}
|
||||
|
||||
private static void syncConfig(boolean loadConfigFromFile, boolean readFieldsFromConfig) {
|
||||
if (loadConfigFromFile) {
|
||||
config.load();
|
||||
}
|
||||
|
||||
/**
|
||||
* Declaration of general ore generation values: <br>
|
||||
* Activation of additional ores (iron/gold) <br>
|
||||
* Ore generation chance multiplier
|
||||
*/
|
||||
|
||||
final boolean GENERATION_DEFAULT_VALUE = true;
|
||||
final double RESFAC_MIN_VALUE = 0;
|
||||
final double RESFAC_MAX_VALUE = 9999;
|
||||
final double RESFAC_DEFAULT_VALUE = 1.0;
|
||||
|
||||
Property slagIronSwitch = config.get(CATEGORY_NAME_GENERAL, "SlagIron Switch", GENERATION_DEFAULT_VALUE);
|
||||
slagIronSwitch.setComment("Switch ore on/off");
|
||||
slagIronSwitch.setLanguageKey("gui.taiga_configuration.gen_slagiron");
|
||||
Property slagGoldSwitch = config.get(CATEGORY_NAME_GENERAL, "SlagGold Switch", GENERATION_DEFAULT_VALUE);
|
||||
slagGoldSwitch.setComment("Switch ore on/off");
|
||||
slagGoldSwitch.setLanguageKey("gui.taiga_configuration.gen_slaggold");
|
||||
Property ironSwitch = config.get(CATEGORY_NAME_GENERAL, "Extra Iron Switch", GENERATION_DEFAULT_VALUE);
|
||||
ironSwitch.setComment("Switch ore on/off");
|
||||
ironSwitch.setLanguageKey("gui.taiga_configuration.gen_iron");
|
||||
|
||||
Property oreFactorGeneralProp = config.get(CATEGORY_NAME_GENERAL, "Ore factor", RESFAC_DEFAULT_VALUE,
|
||||
"General multiplier for all TAIGA ores at once", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
oreFactorGeneralProp.setLanguageKey("gui.taiga_configuration.ore_multiplier");
|
||||
Property durabilityFactorGeneralProp = config.get(CATEGORY_NAME_GENERAL, "Durability factor", RESFAC_DEFAULT_VALUE,
|
||||
"General multiplier for all TAIGA materials", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
durabilityFactorGeneralProp.setLanguageKey("gui.taiga_configuration.durability_multiplier");
|
||||
durabilityFactorGeneralProp.setRequiresMcRestart(true);
|
||||
Property speedFactorGeneralProp = config.get(CATEGORY_NAME_GENERAL, "Speed factor", RESFAC_DEFAULT_VALUE,
|
||||
"General multiplier for all TAIGA materials", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
speedFactorGeneralProp.setLanguageKey("gui.taiga_configuration.speed_multiplier");
|
||||
speedFactorGeneralProp.setRequiresMcRestart(true);
|
||||
Property attackFactorGeneralProp = config.get(CATEGORY_NAME_GENERAL, "Attack factor", RESFAC_DEFAULT_VALUE,
|
||||
"General multiplier for all TAIGA materials", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
attackFactorGeneralProp.setLanguageKey("gui.taiga_configuration.attack_multiplier");
|
||||
attackFactorGeneralProp.setRequiresMcRestart(true);
|
||||
|
||||
List<String> propOrderGeneral = new ArrayList<String>();
|
||||
propOrderGeneral.add(ironSwitch.getName());
|
||||
propOrderGeneral.add(slagIronSwitch.getName());
|
||||
propOrderGeneral.add(slagGoldSwitch.getName());
|
||||
propOrderGeneral.add(oreFactorGeneralProp.getName());
|
||||
propOrderGeneral.add(durabilityFactorGeneralProp.getName());
|
||||
propOrderGeneral.add(speedFactorGeneralProp.getName());
|
||||
propOrderGeneral.add(attackFactorGeneralProp.getName());
|
||||
config.setCategoryPropertyOrder(CATEGORY_NAME_GENERAL, propOrderGeneral);
|
||||
|
||||
/**
|
||||
* Declaration of specific ore generation values: <br>
|
||||
* Generation chance multiplier
|
||||
*/
|
||||
Property ironFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Iron factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
ironFactorProp.setLanguageKey("gui.taiga_configuration.titanite_multiplier");
|
||||
Property slagironFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Slagiorn factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
slagironFactorProp.setLanguageKey("gui.taiga_configuration.titanite_multiplier");
|
||||
Property slaggoldFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Slaggold factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
slaggoldFactorProp.setLanguageKey("gui.taiga_configuration.titanite_multiplier");
|
||||
Property titaniteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Titanite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
titaniteFactorProp.setLanguageKey("gui.taiga_configuration.titanite_multiplier");
|
||||
Property adamantiteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Adamantite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
adamantiteFactorProp.setLanguageKey("gui.taiga_configuration.adamantite_multiplier");
|
||||
Property arcaniteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Arcanite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
arcaniteFactorProp.setLanguageKey("gui.taiga_configuration.arcanite_multiplier");
|
||||
Property violiumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Violium factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
violiumFactorProp.setLanguageKey("gui.taiga_configuration.violium_multiplier");
|
||||
Property bismuthFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Bismuth factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
bismuthFactorProp.setLanguageKey("gui.taiga_configuration.bismuth_multiplier");
|
||||
Property eterniteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Eternite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
eterniteFactorProp.setLanguageKey("gui.taiga_configuration.eternite_multiplier");
|
||||
Property ignititeFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Ignitite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
ignititeFactorProp.setLanguageKey("gui.taiga_configuration.ignitite_multiplier");
|
||||
Property karmesineFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Karmesine factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
karmesineFactorProp.setLanguageKey("gui.taiga_configuration.karmesine_multiplier");
|
||||
Property meteoriteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Meteorite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
meteoriteFactorProp.setLanguageKey("gui.taiga_configuration.meteorite_multiplier");
|
||||
Property mindoriteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Mindorite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
mindoriteFactorProp.setLanguageKey("gui.taiga_configuration.mindorite_multiplier");
|
||||
Property mythrilFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Mythril factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
mythrilFactorProp.setLanguageKey("gui.taiga_configuration.mythril_multiplier");
|
||||
Property palladiumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Palladium factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
palladiumFactorProp.setLanguageKey("gui.taiga_configuration.palladium_multiplier");
|
||||
Property prometheumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Prometheum factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
prometheumFactorProp.setLanguageKey("gui.taiga_configuration.prometheum_multiplier");
|
||||
Property tiberiumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Tiberium factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
tiberiumFactorProp.setLanguageKey("gui.taiga_configuration.tiberium_multiplier");
|
||||
Property vibraniumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Vibranium factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
vibraniumFactorProp.setLanguageKey("gui.taiga_configuration.vibranium_multiplier");
|
||||
Property rubiumFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Rubium factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
rubiumFactorProp.setLanguageKey("gui.taiga_configuration.rubium_multiplier");
|
||||
// RottenGround + Basalt
|
||||
Property basaltFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Basalt factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
basaltFactorProp.setLanguageKey("gui.taiga_configuration.basalt_multiplier");
|
||||
Property rottengroundFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "RottenGround factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
rottengroundFactorProp.setLanguageKey("gui.taiga_configuration.rottenground_multiplier");
|
||||
Property ligniteFactorProp = config.get(CATEGORY_NAME_ORE_GEN, "Lignite factor", RESFAC_DEFAULT_VALUE,
|
||||
"specific generation multiplier", RESFAC_MIN_VALUE, RESFAC_MAX_VALUE);
|
||||
ligniteFactorProp.setLanguageKey("gui.taiga_configuration.lignite_multiplier");
|
||||
|
||||
List<String> propOrderOreGen = new ArrayList<String>();
|
||||
propOrderOreGen.add(ironFactorProp.getName());
|
||||
propOrderOreGen.add(slagironFactorProp.getName());
|
||||
propOrderOreGen.add(slaggoldFactorProp.getName());
|
||||
propOrderOreGen.add(ligniteFactorProp.getName());
|
||||
propOrderOreGen.add(basaltFactorProp.getName());
|
||||
propOrderOreGen.add(rottengroundFactorProp.getName());
|
||||
propOrderOreGen.add(titaniteFactorProp.getName());
|
||||
propOrderOreGen.add(adamantiteFactorProp.getName());
|
||||
propOrderOreGen.add(arcaniteFactorProp.getName());
|
||||
propOrderOreGen.add(violiumFactorProp.getName());
|
||||
propOrderOreGen.add(bismuthFactorProp.getName());
|
||||
propOrderOreGen.add(eterniteFactorProp.getName());
|
||||
propOrderOreGen.add(ignititeFactorProp.getName());
|
||||
propOrderOreGen.add(karmesineFactorProp.getName());
|
||||
propOrderOreGen.add(meteoriteFactorProp.getName());
|
||||
propOrderOreGen.add(mindoriteFactorProp.getName());
|
||||
propOrderOreGen.add(mythrilFactorProp.getName());
|
||||
propOrderOreGen.add(palladiumFactorProp.getName());
|
||||
propOrderOreGen.add(prometheumFactorProp.getName());
|
||||
propOrderOreGen.add(tiberiumFactorProp.getName());
|
||||
propOrderOreGen.add(vibraniumFactorProp.getName());
|
||||
propOrderOreGen.add(rubiumFactorProp.getName());
|
||||
config.setCategoryPropertyOrder(CATEGORY_NAME_ORE_GEN, propOrderOreGen);
|
||||
|
||||
|
||||
List<String> propOrderOreVal = new ArrayList<String>();
|
||||
config.setCategoryPropertyOrder(CATEGORY_NAME_ORE_VAL, propOrderOreVal);
|
||||
|
||||
|
||||
if (readFieldsFromConfig) {
|
||||
oreFactorGeneral = oreFactorGeneralProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (oreFactorGeneral > RESFAC_MAX_VALUE || oreFactorGeneral < RESFAC_MIN_VALUE) {
|
||||
oreFactorGeneral = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
durabilityFactorGeneral = durabilityFactorGeneralProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (durabilityFactorGeneral > RESFAC_MAX_VALUE || durabilityFactorGeneral < RESFAC_MIN_VALUE) {
|
||||
durabilityFactorGeneral = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
speedFactorGeneral = speedFactorGeneralProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (speedFactorGeneral > RESFAC_MAX_VALUE || speedFactorGeneral < RESFAC_MIN_VALUE) {
|
||||
speedFactorGeneral = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
attackFactorGeneral = attackFactorGeneralProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (attackFactorGeneral > RESFAC_MAX_VALUE || attackFactorGeneral < RESFAC_MIN_VALUE) {
|
||||
attackFactorGeneral = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
ironGen = ironSwitch.getBoolean(GENERATION_DEFAULT_VALUE);
|
||||
slagIronGen = slagIronSwitch.getBoolean(GENERATION_DEFAULT_VALUE);
|
||||
slagGoldGen = slagGoldSwitch.getBoolean(GENERATION_DEFAULT_VALUE);
|
||||
ironFactor = ironFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (ironFactor > RESFAC_MAX_VALUE || ironFactor < RESFAC_MIN_VALUE) {
|
||||
ironFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
slagironFactor = slagironFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (slagironFactor > RESFAC_MAX_VALUE || slagironFactor < RESFAC_MIN_VALUE) {
|
||||
slagironFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
slaggoldFactor = slaggoldFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (slaggoldFactor > RESFAC_MAX_VALUE || slaggoldFactor < RESFAC_MIN_VALUE) {
|
||||
slaggoldFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
titaniteFactor = titaniteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (titaniteFactor > RESFAC_MAX_VALUE || titaniteFactor < RESFAC_MIN_VALUE) {
|
||||
titaniteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
adamantiteFactor = adamantiteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (adamantiteFactor > RESFAC_MAX_VALUE || adamantiteFactor < RESFAC_MIN_VALUE) {
|
||||
adamantiteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
arcaniteFactor = arcaniteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (arcaniteFactor > RESFAC_MAX_VALUE || arcaniteFactor < RESFAC_MIN_VALUE) {
|
||||
arcaniteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
violiumFactor = violiumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (violiumFactor > RESFAC_MAX_VALUE || violiumFactor < RESFAC_MIN_VALUE) {
|
||||
violiumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
bismuthFactor = bismuthFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (bismuthFactor > RESFAC_MAX_VALUE || bismuthFactor < RESFAC_MIN_VALUE) {
|
||||
bismuthFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
eterniteFactor = eterniteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (eterniteFactor > RESFAC_MAX_VALUE || eterniteFactor < RESFAC_MIN_VALUE) {
|
||||
eterniteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
ignititeFactor = ignititeFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (ignititeFactor > RESFAC_MAX_VALUE || ignititeFactor < RESFAC_MIN_VALUE) {
|
||||
ignititeFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
karmesineFactor = karmesineFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (karmesineFactor > RESFAC_MAX_VALUE || karmesineFactor < RESFAC_MIN_VALUE) {
|
||||
karmesineFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
meteoriteFactor = meteoriteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (meteoriteFactor > RESFAC_MAX_VALUE || meteoriteFactor < RESFAC_MIN_VALUE) {
|
||||
meteoriteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
mindoriteFactor = mindoriteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (mindoriteFactor > RESFAC_MAX_VALUE || mindoriteFactor < RESFAC_MIN_VALUE) {
|
||||
mindoriteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
mythrilFactor = mythrilFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (mythrilFactor > RESFAC_MAX_VALUE || mythrilFactor < RESFAC_MIN_VALUE) {
|
||||
mythrilFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
palladiumFactor = palladiumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (palladiumFactor > RESFAC_MAX_VALUE || palladiumFactor < RESFAC_MIN_VALUE) {
|
||||
palladiumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
prometheumFactor = prometheumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (prometheumFactor > RESFAC_MAX_VALUE || prometheumFactor < RESFAC_MIN_VALUE) {
|
||||
prometheumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
tiberiumFactor = tiberiumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (tiberiumFactor > RESFAC_MAX_VALUE || tiberiumFactor < RESFAC_MIN_VALUE) {
|
||||
tiberiumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
vibraniumFactor = vibraniumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (vibraniumFactor > RESFAC_MAX_VALUE || vibraniumFactor < RESFAC_MIN_VALUE) {
|
||||
vibraniumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
rubiumFactor = rubiumFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (rubiumFactor > RESFAC_MAX_VALUE || rubiumFactor < RESFAC_MIN_VALUE) {
|
||||
rubiumFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
basaltFactor = basaltFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (basaltFactor > RESFAC_MAX_VALUE || basaltFactor < RESFAC_MIN_VALUE) {
|
||||
basaltFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
rottengroundFactor = rottengroundFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (rottengroundFactor > RESFAC_MAX_VALUE || rottengroundFactor < RESFAC_MIN_VALUE) {
|
||||
rottengroundFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
ligniteFactor = ligniteFactorProp.getDouble(RESFAC_DEFAULT_VALUE);
|
||||
if (ligniteFactor > RESFAC_MAX_VALUE || ligniteFactor < RESFAC_MIN_VALUE) {
|
||||
ligniteFactor = RESFAC_DEFAULT_VALUE;
|
||||
}
|
||||
}
|
||||
|
||||
ironSwitch.set(ironGen);
|
||||
slagIronSwitch.set(slagIronGen);
|
||||
slagGoldSwitch.set(slagGoldGen);
|
||||
oreFactorGeneralProp.set(oreFactorGeneral);
|
||||
durabilityFactorGeneralProp.set(durabilityFactorGeneral);
|
||||
speedFactorGeneralProp.set(speedFactorGeneral);
|
||||
attackFactorGeneralProp.set(attackFactorGeneral);
|
||||
titaniteFactorProp.set(titaniteFactor);
|
||||
adamantiteFactorProp.set(adamantiteFactor);
|
||||
arcaniteFactorProp.set(arcaniteFactor);
|
||||
violiumFactorProp.set(violiumFactor);
|
||||
bismuthFactorProp.set(bismuthFactor);
|
||||
eterniteFactorProp.set(eterniteFactor);
|
||||
ignititeFactorProp.set(ignititeFactor);
|
||||
karmesineFactorProp.set(karmesineFactor);
|
||||
meteoriteFactorProp.set(meteoriteFactor);
|
||||
mindoriteFactorProp.set(mindoriteFactor);
|
||||
mythrilFactorProp.set(mythrilFactor);
|
||||
palladiumFactorProp.set(palladiumFactor);
|
||||
prometheumFactorProp.set(prometheumFactor);
|
||||
tiberiumFactorProp.set(tiberiumFactor);
|
||||
vibraniumFactorProp.set(vibraniumFactor);
|
||||
rubiumFactorProp.set(rubiumFactor);
|
||||
basaltFactorProp.set(basaltFactor);
|
||||
rottengroundFactorProp.set(rottengroundFactor);
|
||||
ligniteFactorProp.set(ligniteFactor);
|
||||
|
||||
if (config.hasChanged()) {
|
||||
config.save();
|
||||
}
|
||||
}
|
||||
|
||||
public static class ConfigEventHandler {
|
||||
@SubscribeEvent(priority = EventPriority.NORMAL)
|
||||
public void onEvent(ConfigChangedEvent.OnConfigChangedEvent event) {
|
||||
if (TAIGA.MODID.equals(event.getModID()) && !event.isWorldRunning()) {
|
||||
if (event.getConfigID().equals(CATEGORY_NAME_GENERAL) || event.getConfigID().equals(CATEGORY_NAME_ORE_GEN) || event.getConfigID().equals(CATEGORY_NAME_ORE_VAL)) {
|
||||
syncFromGUI();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
100
src/main/java/com/sosnitzka/taiga/TAIGAGuiFactory.java
Normal file
@@ -0,0 +1,100 @@
|
||||
package com.sosnitzka.taiga;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraftforge.common.config.ConfigElement;
|
||||
import net.minecraftforge.common.config.Configuration;
|
||||
import net.minecraftforge.fml.client.IModGuiFactory;
|
||||
import net.minecraftforge.fml.client.config.DummyConfigElement;
|
||||
import net.minecraftforge.fml.client.config.GuiConfig;
|
||||
import net.minecraftforge.fml.client.config.GuiConfigEntries;
|
||||
import net.minecraftforge.fml.client.config.IConfigElement;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class TAIGAGuiFactory implements IModGuiFactory {
|
||||
@Override
|
||||
public void initialize(Minecraft minecraftInstance) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends GuiScreen> mainConfigGuiClass() {
|
||||
return TAIGAConfigGui.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<RuntimeOptionCategoryElement> runtimeGuiCategories() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RuntimeOptionGuiHandler getHandlerFor(RuntimeOptionCategoryElement element) {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static class TAIGAConfigGui extends GuiConfig {
|
||||
|
||||
public TAIGAConfigGui(GuiScreen parentScreen) {
|
||||
super(parentScreen, getConfigElements(), TAIGA.MODID, false, false, I18n.format("gui.taiga_configuration.mainTitle"));
|
||||
}
|
||||
|
||||
private static List<IConfigElement> getConfigElements() {
|
||||
List<IConfigElement> list = new ArrayList<IConfigElement>();
|
||||
list.add(new DummyConfigElement.DummyCategoryElement("Basics configuration", "gui.taiga_configuration.ctgy.general", CategoryEntryGeneral.class));
|
||||
list.add(new DummyConfigElement.DummyCategoryElement("Specific ore generation", "gui.taiga_configuration.ctgy.oregen", CategoryEntryOreGen.class));
|
||||
//list.add(new DummyConfigElement.DummyCategoryElement("Specific ore values", "gui.taiga_configuration.ctgy.oreval", CategoryEntryOreVal.class));
|
||||
return list;
|
||||
}
|
||||
|
||||
public static class CategoryEntryGeneral extends GuiConfigEntries.CategoryEntry {
|
||||
public CategoryEntryGeneral(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement prop) {
|
||||
super(owningScreen, owningEntryList, prop);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected GuiScreen buildChildScreen() {
|
||||
Configuration configuration = TAIGAConfiguration.getConfig();
|
||||
ConfigElement cat_general = new ConfigElement(configuration.getCategory(TAIGAConfiguration.CATEGORY_NAME_GENERAL));
|
||||
List<IConfigElement> propertiesOnThisScreen = cat_general.getChildElements();
|
||||
String windowTitle = configuration.toString();
|
||||
|
||||
return new GuiConfig(this.owningScreen, propertiesOnThisScreen, this.owningScreen.modID, TAIGAConfiguration.CATEGORY_NAME_GENERAL, this.configElement.requiresWorldRestart() || this.owningScreen.allRequireWorldRestart, this.configElement.requiresMcRestart() || this.owningScreen.allRequireMcRestart, windowTitle);
|
||||
}
|
||||
}
|
||||
|
||||
public static class CategoryEntryOreGen extends GuiConfigEntries.CategoryEntry {
|
||||
public CategoryEntryOreGen(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement prop) {
|
||||
super(owningScreen, owningEntryList, prop);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected GuiScreen buildChildScreen() {
|
||||
Configuration configuration = TAIGAConfiguration.getConfig();
|
||||
ConfigElement cat_general = new ConfigElement(configuration.getCategory(TAIGAConfiguration.CATEGORY_NAME_ORE_GEN));
|
||||
List<IConfigElement> propertiesOnThisScreen = cat_general.getChildElements();
|
||||
String windowTitle = configuration.toString();
|
||||
|
||||
return new GuiConfig(this.owningScreen, propertiesOnThisScreen, this.owningScreen.modID, TAIGAConfiguration.CATEGORY_NAME_ORE_GEN, this.configElement.requiresWorldRestart() || this.owningScreen.allRequireWorldRestart, this.configElement.requiresMcRestart() || this.owningScreen.allRequireMcRestart, windowTitle);
|
||||
}
|
||||
}
|
||||
|
||||
public static class CategoryEntryOreVal extends GuiConfigEntries.CategoryEntry {
|
||||
public CategoryEntryOreVal(GuiConfig owningScreen, GuiConfigEntries owningEntryList, IConfigElement prop) {
|
||||
super(owningScreen, owningEntryList, prop);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected GuiScreen buildChildScreen() {
|
||||
Configuration configuration = TAIGAConfiguration.getConfig();
|
||||
ConfigElement cat_general = new ConfigElement(configuration.getCategory(TAIGAConfiguration.CATEGORY_NAME_ORE_VAL));
|
||||
List<IConfigElement> propertiesOnThisScreen = cat_general.getChildElements();
|
||||
String windowTitle = configuration.toString();
|
||||
|
||||
return new GuiConfig(this.owningScreen, propertiesOnThisScreen, this.owningScreen.modID, TAIGAConfiguration.CATEGORY_NAME_ORE_VAL, this.configElement.requiresWorldRestart() || this.owningScreen.allRequireWorldRestart, this.configElement.requiresMcRestart() || this.owningScreen.allRequireMcRestart, windowTitle);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -9,11 +9,10 @@ import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.Random;
|
||||
|
||||
import static com.sosnitzka.taiga.Items.lignite;
|
||||
import static com.sosnitzka.taiga.Items.lignite2;
|
||||
import static com.sosnitzka.taiga.Items.lignite3;
|
||||
|
||||
public class BlockLignite extends BasicBlock {
|
||||
|
||||
@@ -31,18 +30,13 @@ public class BlockLignite extends BasicBlock {
|
||||
}
|
||||
|
||||
@Override
|
||||
@ParametersAreNonnullByDefault
|
||||
public int quantityDropped(IBlockState state, int fortune, Random random) {
|
||||
return MathHelper.getRandomIntegerInRange(random, 1, 3 + fortune);
|
||||
return random.nextInt(3) + 1 + fortune;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(IBlockState state, Random rand, int fortune) {
|
||||
int r = RANDOM.nextInt(3);
|
||||
if (r == 0) {
|
||||
return lignite;
|
||||
} else if (r == 1) {
|
||||
return lignite2;
|
||||
} else
|
||||
return lignite3;
|
||||
}
|
||||
}
|
||||
|
@@ -11,6 +11,7 @@ import net.minecraft.world.Explosion;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.Random;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.PREFIX_ORE;
|
||||
@@ -25,16 +26,15 @@ public class BlockTiberium extends BasicBlock {
|
||||
|
||||
@Override
|
||||
public int getExpDrop(IBlockState state, IBlockAccess world, BlockPos pos, int fortune) {
|
||||
Random rand = world instanceof World ? ((World) world).rand : new Random();
|
||||
int r = RANDOM.nextInt(11);
|
||||
if (r > 7) {
|
||||
return MathHelper.getRandomIntegerInRange(rand, 0, 10) + fortune;
|
||||
if (random.nextBoolean()) {
|
||||
return random.nextInt(10) + fortune;
|
||||
} else return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ParametersAreNonnullByDefault
|
||||
public int quantityDropped(IBlockState state, int fortune, Random random) {
|
||||
return MathHelper.getRandomIntegerInRange(random, 1, MathHelper.getRandomIntegerInRange(random, 2, 4 + fortune));
|
||||
return (random.nextInt(3 + fortune) + 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -59,5 +59,4 @@ public class BlockTiberium extends BasicBlock {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -36,5 +36,4 @@ public class BasicBlock extends Block {
|
||||
public String getOreDictPrefix() {
|
||||
return this.oreDictPrefix;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -2,6 +2,9 @@ package com.sosnitzka.taiga.generic;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
|
||||
/**
|
||||
* A "wrapper" for Item that makes construction and manipulation easier
|
||||
*/
|
||||
public class BasicItem extends Item {
|
||||
private String oreDictPrefix;
|
||||
|
||||
|
@@ -4,12 +4,17 @@ import net.minecraft.util.ResourceLocation;
|
||||
import slimeknights.tconstruct.library.Util;
|
||||
import slimeknights.tconstruct.library.fluid.FluidMolten;
|
||||
|
||||
/**
|
||||
* A "wrapper" for FluidMolten that makes construction and manipulation easier
|
||||
*/
|
||||
public class BasicTinkerFluid extends FluidMolten {
|
||||
|
||||
private boolean toolForge;
|
||||
|
||||
public BasicTinkerFluid(String fluidName, int color, boolean toolForge, int temp, int lumen, int visk) {
|
||||
// Constructs the FluidMolten with textures and color
|
||||
super(fluidName, color, new ResourceLocation("tconstruct:blocks/fluids/molten_metal"), new ResourceLocation("tconstruct:blocks/fluids/molten_metal_flow"));
|
||||
//Settings
|
||||
this.setUnlocalizedName(Util.prefix(fluidName));
|
||||
this.setTemperature(temp);
|
||||
this.setLuminosity(lumen);
|
||||
|
@@ -1,10 +0,0 @@
|
||||
package com.sosnitzka.taiga.items;
|
||||
|
||||
import com.sosnitzka.taiga.generic.BasicItem;
|
||||
|
||||
public class ItemIronNugget extends BasicItem {
|
||||
|
||||
public ItemIronNugget() {
|
||||
super("iron_nugget");
|
||||
}
|
||||
}
|
@@ -1,11 +0,0 @@
|
||||
package com.sosnitzka.taiga.items;
|
||||
|
||||
import com.sosnitzka.taiga.generic.BasicItem;
|
||||
|
||||
public class ItemLignite extends BasicItem {
|
||||
|
||||
public ItemLignite(String name, String registry) {
|
||||
super(name, null, registry);
|
||||
}
|
||||
|
||||
}
|
@@ -1,10 +0,0 @@
|
||||
package com.sosnitzka.taiga.items;
|
||||
|
||||
import com.sosnitzka.taiga.generic.BasicItem;
|
||||
|
||||
public class ItemSlaggoldIngot extends BasicItem {
|
||||
|
||||
public ItemSlaggoldIngot() {
|
||||
super("slaggold_ingot");
|
||||
}
|
||||
}
|
@@ -1,10 +0,0 @@
|
||||
package com.sosnitzka.taiga.items;
|
||||
|
||||
import com.sosnitzka.taiga.generic.BasicItem;
|
||||
|
||||
public class ItemSlagironIngot extends BasicItem {
|
||||
|
||||
public ItemSlagironIngot() {
|
||||
super("slagiron_ingot");
|
||||
}
|
||||
}
|
@@ -3,6 +3,7 @@ package com.sosnitzka.taiga.proxy;
|
||||
import com.sosnitzka.taiga.Blocks;
|
||||
import com.sosnitzka.taiga.Items;
|
||||
import com.sosnitzka.taiga.TAIGA;
|
||||
import com.sosnitzka.taiga.TAIGAConfiguration;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.Minecraft;
|
||||
@@ -24,7 +25,7 @@ import java.lang.reflect.Field;
|
||||
|
||||
import static com.sosnitzka.taiga.MaterialTraits.*;
|
||||
|
||||
public class ClientProxy extends ServerProxy {
|
||||
public class ClientProxy extends CommonProxy {
|
||||
|
||||
private static void registerBlockModel(Block block) {
|
||||
registerItemModel(Item.getItemFromBlock(block));
|
||||
@@ -35,14 +36,13 @@ public class ClientProxy extends ServerProxy {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerStuff() {
|
||||
public void registerModels() {
|
||||
Field[] itemFields = Items.class.getDeclaredFields();
|
||||
for (Field field : itemFields) {
|
||||
if (java.lang.reflect.Modifier.isStatic(field.getModifiers())) {
|
||||
Class<?> targetType = field.getType();
|
||||
try {
|
||||
Item item = (Item) field.get(targetType);
|
||||
|
||||
registerItemModel(item);
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
@@ -56,7 +56,6 @@ public class ClientProxy extends ServerProxy {
|
||||
Class<?> targetType = field.getType();
|
||||
try {
|
||||
Block block = (Block) field.get(targetType);
|
||||
|
||||
registerBlockModel(block);
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
@@ -66,26 +65,29 @@ public class ClientProxy extends ServerProxy {
|
||||
}
|
||||
|
||||
public void setRenderInfo(final Material material) {
|
||||
/* if (material != bismuth) {
|
||||
material.setRenderInfo(new MaterialRenderInfo.Metal(fluid.getColor(), 0.4f, 0.2f, 0f));
|
||||
} else bismuth.setRenderInfo(new MaterialRenderInfo.BlockTexture("taiga:blocks/bismuth_block")); */
|
||||
|
||||
if (material == adamantite) renderTo(material, 0xd55cdf, 0.5f, 0.8f, 0.2f);
|
||||
else if (material == solarium) renderTo(material, 0xffff00, 0.6f, 1.8f, 0.0f);
|
||||
else if (material == proxideum) renderTo(material, 0x2d8f8b, 0.4f, 0.3f, 0.1f);
|
||||
else if (material == tiberium) renderTo(material, 0x33ff33, 0.5f, 0.2f, 0.1f);
|
||||
else if (material == bismuth) renderTo(material, 0xffffff, 0.4f, 0.2f, 0.0f);
|
||||
else if (material == dyonite) renderTo(material, 0xffe240, 0.6f, 0.8f, 0.2f);
|
||||
if (material.equals(adamantite)) specialRender(material, 0xd55cdf, 0.5f, 0.6f, 0.2f);
|
||||
else if (material.equals(solarium)) specialRender(material, 0xFFDD11, 0.7f, 0.3f, 0.1f);
|
||||
else if (material.equals(proxideum)) specialRender(material, 0x2d8f8b, 0.4f, 0.3f, 0.1f);
|
||||
else if (material.equals(meteorite)) specialRender(material, 0xaaaaaa, 0.6f, 0.8f, 0.0f);
|
||||
else if (material.equals(tiberium)) specialRender(material, 0x33ff33, 0.5f, 0.2f, 0.1f);
|
||||
else if (material.equals(bismuth)) specialRender(material, 0xffffff, 0.3f, 0.0f, 0.0f);
|
||||
else if (material.equals(bysmuid)) specialRender(material, 0xccccee, 0.6f, 0.2f, 0.0f);
|
||||
else if (material.equals(imperomite)) specialRender(material, 0x8decaf, 0.8f, 0.5f, -0.0f);
|
||||
else if (material.equals(noctunyx)) specialRender(material, 0xce70e8, 0.5f, 0.2f, 0.3f);
|
||||
else if (material.equals(nucleum)) specialRender(material, 0xd9f446, 1.0f, 0.4f, 0.3f);
|
||||
else if (material.equals(dyonite)) specialRender(material, 0xffe240, 0.6f, 1.0f, 0.2f);
|
||||
else if (material.equals(arcanite)) specialRender(material, 0x5e5499, 0.6f, 0.8f, 0.2f);
|
||||
else {
|
||||
material.setRenderInfo(new MaterialRenderInfo.BlockTexture("taiga:blocks/" + material.getFluid().getName() + "_block"));
|
||||
material.setRenderInfo(new MaterialRenderInfo.BlockTexture("taiga:blocks/" + material.getIdentifier() + "_block"));
|
||||
}
|
||||
}
|
||||
|
||||
private void renderTo(Material material, final int f, final float shine, final float brightness, final float hueshift) {
|
||||
private void specialRender(final Material material, final int f, final float shine, final float brightness, final float hueshift) {
|
||||
material.setRenderInfo(new MaterialRenderInfo.AbstractMaterialRenderInfo() {
|
||||
@Override
|
||||
public TextureAtlasSprite getTexture(TextureAtlasSprite baseTexture, String location) {
|
||||
return new MetalTextureTexture("taiga:blocks/materials/adamantite", baseTexture, location, f, shine, brightness, hueshift);
|
||||
return new MetalTextureTexture("taiga:blocks/materials/" + material.getIdentifier(), baseTexture, location, f, shine, brightness, hueshift);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -111,6 +113,12 @@ public class ClientProxy extends ServerProxy {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initConfig() {
|
||||
super.initConfig();
|
||||
TAIGAConfiguration.clientPreInit();
|
||||
}
|
||||
|
||||
public static class FluidStateMapper extends StateMapperBase implements ItemMeshDefinition {
|
||||
|
||||
public final Fluid fluid;
|
||||
|
@@ -1,11 +1,12 @@
|
||||
package com.sosnitzka.taiga.proxy;
|
||||
|
||||
import com.sosnitzka.taiga.TAIGAConfiguration;
|
||||
import net.minecraftforge.fluids.Fluid;
|
||||
import slimeknights.tconstruct.library.materials.Material;
|
||||
|
||||
public class ServerProxy {
|
||||
public class CommonProxy {
|
||||
|
||||
public void registerStuff() {
|
||||
public void registerModels() {
|
||||
|
||||
}
|
||||
|
||||
@@ -15,4 +16,8 @@ public class ServerProxy {
|
||||
|
||||
public void registerFluidModels(Fluid fluid) {
|
||||
}
|
||||
|
||||
public void initConfig() {
|
||||
TAIGAConfiguration.preInit();
|
||||
}
|
||||
}
|
@@ -1,37 +0,0 @@
|
||||
package com.sosnitzka.taiga.recipes;
|
||||
|
||||
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
|
||||
import static com.sosnitzka.taiga.Items.*;
|
||||
import static slimeknights.tconstruct.shared.TinkerCommons.matNecroticBone;
|
||||
|
||||
public class Crafting {
|
||||
public static void register() {
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(fuel_brick), Items.COAL, Items.COAL, Items.COAL, lignite, lignite, lignite);
|
||||
GameRegistry.addShapedRecipe(new ItemStack((tiberiumShardStable), 3), "STS", "TST", "STS", 'T', new ItemStack(tiberiumShardInstable), 'S', new ItemStack(Item.getItemFromBlock(Blocks.SAND)));
|
||||
GameRegistry.addShapedRecipe(new ItemStack((tiberiumShardStable), 2), "GTG", "TGT", "GTG", 'T', new ItemStack(tiberiumShardInstable), 'G', new ItemStack(Item.getItemFromBlock(Blocks.GRAVEL)));
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(luminar_dust), Items.REDSTONE, Items.GLOWSTONE_DUST);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmerstone_dust), luminar_dust, Items.BLAZE_POWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmerstone_dust), Items.REDSTONE, Items.GLOWSTONE_DUST, Items.BLAZE_POWDER);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmercoal), Items.COAL, glimmerstone_dust);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmercoal), lignite, glimmerstone_dust);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(radiant_pearl), Items.ENDER_PEARL, luminar_dust, new ItemStack(Items.DYE, 1, 4));
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmer_pearl), Items.ENDER_PEARL, glimmerstone_dust);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(energy_pearl), Items.ENDER_PEARL, luminar_dust, Items.GUNPOWDER);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(nitro_brick), fuel_brick, Items.GUNPOWDER, Items.BLAZE_POWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(anthracite_dust), matNecroticBone, Items.COAL, Items.GUNPOWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(spectrum_dust), matNecroticBone, glimmerstone_dust);
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
@@ -0,0 +1,76 @@
|
||||
package com.sosnitzka.taiga.recipes;
|
||||
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.oredict.ShapedOreRecipe;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.*;
|
||||
import static com.sosnitzka.taiga.Items.*;
|
||||
import static slimeknights.tconstruct.shared.TinkerCommons.matNecroticBone;
|
||||
|
||||
public class CraftingRegistry {
|
||||
public static void register() {
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(fuel_brick), Items.COAL, Items.COAL, Items.COAL, lignite, lignite, lignite);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(luminar_dust), Items.REDSTONE, Items.GLOWSTONE_DUST);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmerstone_dust), luminar_dust, Items.BLAZE_POWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmerstone_dust), Items.REDSTONE, Items.GLOWSTONE_DUST, Items.BLAZE_POWDER);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmercoal), Items.COAL, glimmerstone_dust);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmercoal), lignite, glimmerstone_dust);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(radiant_pearl), Items.ENDER_PEARL, luminar_dust, new ItemStack(Items.DYE, 1, 4));
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(glimmer_pearl), Items.ENDER_PEARL, glimmerstone_dust);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(energy_pearl), Items.ENDER_PEARL, luminar_dust, Items.GUNPOWDER);
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(nitro_brick), fuel_brick, Items.GUNPOWDER, Items.BLAZE_POWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(anthracite_dust), matNecroticBone, Items.COAL, Items.GUNPOWDER);
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(spectrum_dust), matNecroticBone, glimmerstone_dust);
|
||||
|
||||
registerMetalRecipes(arcaniteIngot, arcanite_nugget, arcaniteBlock);
|
||||
registerMetalRecipes(tiberiumIngot, tiberium_nugget, tiberiumBlock);
|
||||
registerMetalRecipes(prometheumIngot, prometheum_nugget, prometheumBlock);
|
||||
registerMetalRecipes(rubiumIngot, rubium_nugget, rubiumBlock);
|
||||
registerMetalRecipes(violiumIngot, violium_nugget, violiumBlock);
|
||||
registerMetalRecipes(bismuthIngot, bismuth_nugget, bismuthBlock);
|
||||
registerMetalRecipes(karmesineIngot, karmesine_nugget, karmesineBlock);
|
||||
registerMetalRecipes(mindoriteIngot, mindorite_nugget, mindoriteBlock);
|
||||
registerMetalRecipes(titaniteIngot, titanite_nugget, titaniteBlock);
|
||||
registerMetalRecipes(meteoriteIngot, meteorite_nugget, meteoriteBlock);
|
||||
registerMetalRecipes(adamantiteIngot, adamantite_nugget, adamantiteBlock);
|
||||
registerMetalRecipes(vibraniumIngot, vibranium_nugget, vibraniumBlock);
|
||||
registerMetalRecipes(ignititeIngot, ignitite_nugget, ignititeBlock);
|
||||
registerMetalRecipes(palladiumIngot, palladium_nugget, palladiumBlock);
|
||||
registerMetalRecipes(eterniteIngot, eternite_nugget, eterniteBlock);
|
||||
registerMetalRecipes(mythrilIngot, mythril_nugget, mythrilBlock);
|
||||
registerMetalRecipes(imperomiteIngot, imperomite_nugget, imperomiteBlock);
|
||||
registerMetalRecipes(fractoryteIngot, fractoryte_nugget, fractoryteBlock);
|
||||
registerMetalRecipes(noctunyxIngot, noctunyx_nugget, noctunyxBlock);
|
||||
registerMetalRecipes(nitroniteIngot, nitronite_nugget, nitroniteBlock);
|
||||
registerMetalRecipes(cryptogenIngot, cryptogen_nugget, cryptogenBlock);
|
||||
registerMetalRecipes(seismodiumIngot, seismodium_nugget, seismodiumBlock);
|
||||
registerMetalRecipes(aegisaltIngot, aegisalt_nugget, aegisaltBlock);
|
||||
registerMetalRecipes(ultraniteIngot, ultranite_nugget, ultraniteBlock);
|
||||
registerMetalRecipes(bysmuidIngot, bysmuid_nugget, bysmuidBlock);
|
||||
registerMetalRecipes(nucleumIngot, nucleum_nugget, nucleumBlock);
|
||||
registerMetalRecipes(lumixylIngot, lumixyl_nugget, lumixylBlock);
|
||||
registerMetalRecipes(dyoniteIngot, dyonite_nugget, dyoniteBlock);
|
||||
registerMetalRecipes(terramiteIngot, terramite_nugget, terramiteBlock);
|
||||
registerMetalRecipes(solariumIngot, solarium_nugget, solariumBlock);
|
||||
registerMetalRecipes(astriumIngot, astrium_nugget, astriumBlock);
|
||||
registerMetalRecipes(proxideumIngot, proxideum_nugget, proxideumBlock);
|
||||
}
|
||||
|
||||
private static void registerMetalRecipes(Item ingot, Item nugget, Block block) {
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(nugget, 9), new ItemStack(ingot));
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(ingot, 9), new ItemStack(block));
|
||||
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(block), "###", "###", "###", '#', new ItemStack(ingot)));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ingot), "###", "###", "###", '#', new ItemStack(nugget)));
|
||||
}
|
||||
}
|
@@ -1,40 +0,0 @@
|
||||
package com.sosnitzka.taiga.recipes;
|
||||
|
||||
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import org.apache.commons.lang3.RandomUtils;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.*;
|
||||
import static com.sosnitzka.taiga.Items.*;
|
||||
|
||||
public class Smelting {
|
||||
public static void register() {
|
||||
GameRegistry.addSmelting(slagironOre, new ItemStack(slagironIngot), 1.0F);
|
||||
GameRegistry.addSmelting(slaggoldOre, new ItemStack(slaggoldIngot), 1.0F);
|
||||
GameRegistry.addSmelting(slagironIngot, new ItemStack(iron_nugget), 0);
|
||||
GameRegistry.addSmelting(slaggoldIngot, new ItemStack(Items.GOLD_NUGGET), 0);
|
||||
GameRegistry.addSmelting(tiberiumShardInstable, new ItemStack(tiberiumShardStable), 0.2F);
|
||||
GameRegistry.addSmelting(tiberiumOre, new ItemStack(tiberiumShardStable, 3), RandomUtils.nextFloat(0F, 2F));
|
||||
|
||||
// Removed until TiC put its own ores back in.
|
||||
/* GameRegistry.addSmelting(titaniteOre, new ItemStack(titaniteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(arcaniteOre, new ItemStack(arcaniteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(adamantiteOre, new ItemStack(adamantiteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(violiumOre, new ItemStack(violiumIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(bismuthOre, new ItemStack(bismuthIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(eterniteOre, new ItemStack(eterniteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(ignititeOre, new ItemStack(ignititeIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(karmesineOre, new ItemStack(karmesineIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(meteoriteOre, new ItemStack(meteoriteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(mindoriteOre, new ItemStack(mindoriteIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(mythrilOre, new ItemStack(mythrilIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(palladiumOre, new ItemStack(palladiumIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(prometheumOre, new ItemStack(prometheumIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(vibraniumOre, new ItemStack(vibraniumIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
GameRegistry.addSmelting(rubiumOre, new ItemStack(rubiumIngot), RandomUtils.nextFloat(0F, 2F));
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
@@ -0,0 +1,22 @@
|
||||
package com.sosnitzka.taiga.recipes;
|
||||
|
||||
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.*;
|
||||
import static com.sosnitzka.taiga.Items.*;
|
||||
|
||||
public class SmeltingRegistry {
|
||||
public static void register() {
|
||||
GameRegistry.addSmelting(slagironOre, new ItemStack(slagironIngot), 1.0F);
|
||||
ItemStack nugget_iron = OreDictionary.getOres("nuggetIron").get(OreDictionary.getOres("nuggetIron").size() - 1);
|
||||
GameRegistry.addSmelting(slagironIngot, nugget_iron, 0);
|
||||
GameRegistry.addSmelting(slaggoldIngot, new ItemStack(Items.GOLD_NUGGET), 0);
|
||||
GameRegistry.addSmelting(slaggoldOre, new ItemStack(slaggoldIngot), 1.0F);
|
||||
GameRegistry.addSmelting(tiberiumOre, new ItemStack(tiberiumShardInstable, 6), (2F));
|
||||
GameRegistry.addSmelting(tiberiumShardInstable, new ItemStack(tiberiumIngot), (.1F));
|
||||
}
|
||||
}
|
@@ -52,7 +52,7 @@ public class TraitAnalysing extends AbstractTrait {
|
||||
}
|
||||
|
||||
private int getUpdateXP(int xp) {
|
||||
float exp = (float) random.nextFloat() * random.nextFloat() * random.nextFloat() * (xp + 18) * 50;
|
||||
float exp = random.nextFloat() * random.nextFloat() * random.nextFloat() * (xp + 18) * 50;
|
||||
return Math.round(exp);
|
||||
}
|
||||
|
||||
@@ -62,5 +62,4 @@ public class TraitAnalysing extends AbstractTrait {
|
||||
event.getDrops().clear();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -9,6 +9,8 @@ import net.minecraft.world.World;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
import slimeknights.tconstruct.library.utils.ToolHelper;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
public class TraitArcane extends AbstractTrait {
|
||||
|
||||
public TraitArcane() {
|
||||
@@ -30,13 +32,4 @@ public class TraitArcane extends AbstractTrait {
|
||||
ToolHelper.healTool(tool, random.nextInt(15) + 1, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -10,6 +10,8 @@ import net.minecraft.util.text.TextFormatting;
|
||||
import net.minecraft.world.World;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
public class TraitBlind extends AbstractTrait {
|
||||
|
||||
public TraitBlind() {
|
||||
@@ -37,12 +39,4 @@ public class TraitBlind extends AbstractTrait {
|
||||
player.addPotionEffect(new PotionEffect(MobEffects.WEAKNESS, random.nextInt(400) + 200));
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -12,6 +12,8 @@ import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
import slimeknights.tconstruct.library.utils.TagUtil;
|
||||
import slimeknights.tconstruct.library.utils.TinkerUtil;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
|
||||
public class TraitBright extends AbstractTrait {
|
||||
|
||||
@@ -22,7 +24,7 @@ public class TraitBright extends AbstractTrait {
|
||||
@Override
|
||||
public float damage(ItemStack tool, EntityLivingBase player, EntityLivingBase target, float damage, float newDamage, boolean isCritical) {
|
||||
int time = (int) target.getEntityWorld().getWorldTime();
|
||||
if (isDay(time)) {
|
||||
if (!isNight(time)) {
|
||||
newDamage += damage / 2f;
|
||||
}
|
||||
return super.damage(tool, player, target, damage, newDamage, isCritical);
|
||||
@@ -37,14 +39,5 @@ public class TraitBright extends AbstractTrait {
|
||||
e.addPotionEffect(new PotionEffect(MobEffects.GLOWING, 100));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public boolean isDay(int time) {
|
||||
if (time < 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -23,7 +23,8 @@ public class TraitCascade extends AbstractTrait {
|
||||
sx = x = pos.getX();
|
||||
sy = y = pos.getY();
|
||||
sz = z = pos.getZ();
|
||||
for (int i = random.nextInt((int) Math.max(ToolHelper.getCurrentDurability(tool) * 1.5f, 100) + 10); i > 0; i--) {
|
||||
int i = random.nextInt((int) Math.min(300f * (float) ToolHelper.getCurrentDurability(tool) / ToolHelper.getMaxDurability(tool), 50f));
|
||||
for (int a = i; a > 0; a--) {
|
||||
int r = random.nextInt(3);
|
||||
int d = random.nextBoolean() ? 1 : -1;
|
||||
if (r == 0) x += d;
|
||||
|
@@ -21,10 +21,6 @@ import slimeknights.tconstruct.library.utils.TinkerUtil;
|
||||
|
||||
|
||||
public class TraitCurvature extends AbstractTrait {
|
||||
|
||||
|
||||
private static BlockPos pos = new BlockPos(0, 0, 0);
|
||||
|
||||
public TraitCurvature() {
|
||||
super("curvature", TextFormatting.BLACK);
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
@@ -36,7 +32,7 @@ public class TraitCurvature extends AbstractTrait {
|
||||
return;
|
||||
}
|
||||
if (random.nextFloat() <= 0.01 && world.provider.getDimension() != -1) {
|
||||
teleport(player, world, 5);
|
||||
teleport(player, world);
|
||||
player.playSound(SoundEvents.ENTITY_ENDERMEN_TELEPORT, 1.0F, 1.0F);
|
||||
}
|
||||
}
|
||||
@@ -44,10 +40,9 @@ public class TraitCurvature extends AbstractTrait {
|
||||
|
||||
@Override
|
||||
public void afterHit(ItemStack tool, EntityLivingBase player, EntityLivingBase target, float damage, boolean wasCritical, boolean wasHit) {
|
||||
World w = player.getEntityWorld();
|
||||
if (random.nextFloat() <= 0.3) {
|
||||
target.playSound(SoundEvents.ENTITY_ENDERMEN_TELEPORT, 1.0F, 1.0F);
|
||||
changepos(player, target);
|
||||
changePos(player, target);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -64,7 +59,7 @@ public class TraitCurvature extends AbstractTrait {
|
||||
}
|
||||
}
|
||||
|
||||
private void teleport(EntityLivingBase e, World w, int max) {
|
||||
private void teleport(EntityLivingBase e, World w) {
|
||||
int x = e.getPosition().getX() + random.nextInt(250) - 125;
|
||||
int y = e.getPosition().getY();
|
||||
int z = e.getPosition().getZ() + random.nextInt(250) - 125;
|
||||
@@ -78,11 +73,10 @@ public class TraitCurvature extends AbstractTrait {
|
||||
e.setPosition(x, y, z);
|
||||
}
|
||||
|
||||
private void changepos(EntityLivingBase player, EntityLivingBase target) {
|
||||
private void changePos(EntityLivingBase player, EntityLivingBase target) {
|
||||
BlockPos pp = new BlockPos(player.getPosition());
|
||||
BlockPos tp = new BlockPos(target.getPosition());
|
||||
player.setPosition(tp.getX(), tp.getY(), tp.getZ());
|
||||
target.setPosition(pp.getX(), pp.getY(), pp.getZ());
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -5,6 +5,8 @@ import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.text.TextFormatting;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
|
||||
public class TraitDark extends AbstractTrait {
|
||||
|
||||
@@ -21,12 +23,4 @@ public class TraitDark extends AbstractTrait {
|
||||
return super.damage(tool, player, target, damage, newDamage, isCritical);
|
||||
|
||||
}
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -33,10 +33,9 @@ public class TraitDiffuse extends AbstractTrait {
|
||||
@SubscribeEvent
|
||||
public void onBlockBreak(BlockEvent.BreakEvent event) {
|
||||
EntityPlayer player = event.getPlayer();
|
||||
if (!player.getEntityWorld().isRemote && player != null && TinkerUtil.hasTrait(TagUtil.getTagSafe(player.getHeldItemMainhand()), this.identifier)) {
|
||||
if (!player.getEntityWorld().isRemote && TinkerUtil.hasTrait(TagUtil.getTagSafe(player.getHeldItemMainhand()), this.identifier)) {
|
||||
event.setExpToDrop(this.getUpdateXP(event.getExpToDrop()));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
@@ -51,7 +50,7 @@ public class TraitDiffuse extends AbstractTrait {
|
||||
}
|
||||
|
||||
private int getUpdateXP(int xp) {
|
||||
float exp = (float) random.nextFloat() * random.nextFloat() * random.nextFloat() * (xp + random.nextInt(10));
|
||||
float exp = random.nextFloat() * random.nextFloat() * random.nextFloat() * (xp + random.nextInt(10));
|
||||
if (random.nextBoolean())
|
||||
return Math.round(exp);
|
||||
else return 0;
|
||||
@@ -63,5 +62,4 @@ public class TraitDiffuse extends AbstractTrait {
|
||||
event.getDrops().clear();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -24,7 +24,6 @@ public class TraitFracture extends AbstractTrait {
|
||||
float b = 0.99F * calcBonus(tool);
|
||||
if (!world.isRemote && tool.canHarvestBlock(state) && f <= b) {
|
||||
RayTraceResult mop = ((ToolCore) tool.getItem()).rayTrace(world, (EntityPlayer) player, false);
|
||||
if (mop == null) return;
|
||||
for (int i = random.nextInt(9) + 1; i >= 0; i--) {
|
||||
switch (mop.sideHit) {
|
||||
case UP:
|
||||
|
@@ -40,7 +40,6 @@ public class TraitFragile extends AbstractTrait {
|
||||
if (r == 1) y += d;
|
||||
if (r == 2) z += d;
|
||||
BlockPos nextBlock = new BlockPos(x, y, z);
|
||||
int tn = (int) world.getWorldTime() + 5;
|
||||
if (world.getBlockState(nextBlock) == world.getBlockState(pos)) {
|
||||
Block block = Blocks.STONE;
|
||||
int ib = random.nextInt(3);
|
||||
@@ -78,7 +77,6 @@ public class TraitFragile extends AbstractTrait {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private float calcBonus(ItemStack tool) {
|
||||
int durability = ToolHelper.getCurrentDurability(tool);
|
||||
int maxDurability = ToolHelper.getMaxDurability(tool);
|
||||
|
@@ -34,7 +34,7 @@ public class TraitGarishly extends AbstractTrait {
|
||||
EntityPlayer player = (EntityPlayer) event.getSource().getEntity();
|
||||
if (event.getEntity() instanceof EntityMob && TinkerUtil.hasTrait(TagUtil.getTagSafe(player.getHeldItemMainhand()), identifier)) {
|
||||
|
||||
int r = random.nextInt(5);
|
||||
int r = random.nextInt(6);
|
||||
ItemStack i = null;
|
||||
switch (r) {
|
||||
case 0:
|
||||
@@ -56,7 +56,7 @@ public class TraitGarishly extends AbstractTrait {
|
||||
i = new ItemStack(lignite, random.nextInt(3));
|
||||
break;
|
||||
}
|
||||
|
||||
assert i != null;
|
||||
event.getDrops().add(0, new EntityItem(w, event.getEntity().posX, event.getEntity().posY, event.getEntity().posZ, i));
|
||||
}
|
||||
}
|
||||
@@ -67,7 +67,7 @@ public class TraitGarishly extends AbstractTrait {
|
||||
float r = random.nextFloat();
|
||||
if (r > 0.5f) event.getDrops().clear();
|
||||
else if (r < 0.1 && event.getWorld().getBlockState(event.getPos()).getMaterial() == Material.ROCK) {
|
||||
ItemStack stack = new ItemStack(Item.getItemFromBlock(event.getWorld().getBlockState(event.getPos()).getBlock()), random.nextInt(5));
|
||||
@SuppressWarnings("ConstantConditions") ItemStack stack = new ItemStack(Item.getItemFromBlock(event.getWorld().getBlockState(event.getPos()).getBlock()), random.nextInt(3));
|
||||
event.getDrops().add(0, stack);
|
||||
ToolHelper.damageTool(tool, random.nextInt(6) + 1, event.getHarvester());
|
||||
}
|
||||
|
@@ -11,6 +11,8 @@ import net.minecraft.util.text.TextFormatting;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
public class TraitHaunted extends AbstractTrait {
|
||||
|
||||
public TraitHaunted() {
|
||||
@@ -18,7 +20,6 @@ public class TraitHaunted extends AbstractTrait {
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
}
|
||||
|
||||
|
||||
// Just several tested Vanilla-Mobs, e.g. no ghasts, bats or skeletons
|
||||
@Override
|
||||
public void onHit(ItemStack tool, EntityLivingBase player, EntityLivingBase target, float damage, boolean isCritical) {
|
||||
@@ -33,12 +34,4 @@ public class TraitHaunted extends AbstractTrait {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@ public class TraitHeroic extends AbstractTrait {
|
||||
public float damage(ItemStack tool, EntityLivingBase player, EntityLivingBase target, float damage, float newDamage, boolean isCritical) {
|
||||
int durability = ToolHelper.getCurrentDurability(tool);
|
||||
int durabilitymax = ToolHelper.getMaxDurability(tool);
|
||||
float calc = (float) (newDamage + (newDamage / 2) / (durability * durabilitymax / (durabilitymax - durability - 1)));
|
||||
float calc = newDamage + (newDamage / 2) / (durability * durabilitymax / (durabilitymax - durability - 1));
|
||||
if ((float) durability < (float) (0.10 * durabilitymax) || player.getHealth() < player.getMaxHealth() / 8 || (target.getHealth() == target.getMaxHealth() && random.nextFloat() > 0.8)) {
|
||||
return super.damage(tool, player, target, damage, calc, isCritical);
|
||||
} else return super.damage(tool, player, target, damage, newDamage, isCritical);
|
||||
|
@@ -15,6 +15,8 @@ import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
import slimeknights.tconstruct.library.utils.TagUtil;
|
||||
import slimeknights.tconstruct.library.utils.TinkerUtil;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
public class TraitHollow extends AbstractTrait {
|
||||
|
||||
public TraitHollow() {
|
||||
@@ -45,12 +47,4 @@ public class TraitHollow extends AbstractTrait {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -66,6 +66,6 @@ public class TraitInstable extends AbstractTrait {
|
||||
}
|
||||
|
||||
private void explode(World w, Entity e, double x, double y, double z) {
|
||||
w.newExplosion(e, x, y, z, 1.2f + random.nextFloat() * 35, random.nextBoolean(), true);
|
||||
w.newExplosion(e, x, y, z, 1.2f + random.nextFloat() * 5, random.nextBoolean(), true);
|
||||
}
|
||||
}
|
||||
|
@@ -7,9 +7,7 @@ import net.minecraft.util.text.TextFormatting;
|
||||
import net.minecraftforge.event.world.BlockEvent;
|
||||
import slimeknights.tconstruct.library.traits.AbstractTrait;
|
||||
|
||||
/**
|
||||
* Created by Robert on 03.06.2016.
|
||||
*/
|
||||
|
||||
public class TraitMelting extends AbstractTrait {
|
||||
|
||||
public TraitMelting() {
|
||||
@@ -24,8 +22,6 @@ public class TraitMelting extends AbstractTrait {
|
||||
event.getWorld().setBlockState(event.getPos(), Blocks.LAVA.getDefaultState());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@@ -6,7 +6,6 @@ import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.SoundEvents;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.DamageSource;
|
||||
import net.minecraft.util.text.TextFormatting;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
@@ -19,8 +18,6 @@ import slimeknights.tconstruct.library.utils.ToolHelper;
|
||||
|
||||
|
||||
public class TraitNatureBound extends AbstractTrait {
|
||||
public static DamageSource splinter = new DamageSource("splinter").setDamageBypassesArmor();
|
||||
private static int chance = 20;
|
||||
|
||||
public TraitNatureBound() {
|
||||
super("naturebound", TextFormatting.GREEN);
|
||||
@@ -36,6 +33,7 @@ public class TraitNatureBound extends AbstractTrait {
|
||||
@Override
|
||||
public void onUpdate(ItemStack tool, World world, Entity entity, int itemSlot, boolean isSelected) {
|
||||
// *20 because 20 ticks in a second
|
||||
int chance = 20;
|
||||
if (!world.isRemote && entity instanceof EntityLivingBase && random.nextInt(30 * chance) == 0) {
|
||||
ToolHelper.healTool(tool, random.nextInt(9) + 1, (EntityLivingBase) entity);
|
||||
}
|
||||
@@ -50,9 +48,4 @@ public class TraitNatureBound extends AbstractTrait {
|
||||
e.getPlayer().playSound(SoundEvents.ENTITY_ENDERMEN_TELEPORT, 1.0F, 1.0F);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@@ -28,12 +28,10 @@ public class TraitPulverizing extends AbstractTrait {
|
||||
return speed * (maxDurability - maxDurability / 10) / (durability);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void blockHarvestDrops(ItemStack tool, BlockEvent.HarvestDropsEvent event) {
|
||||
if (random.nextFloat() < 0.9) {
|
||||
event.getDrops().clear();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -31,7 +31,7 @@ public class TraitRandomize extends AbstractTrait {
|
||||
@Override
|
||||
public void miningSpeed(ItemStack tool, PlayerEvent.BreakSpeed event) {
|
||||
if (ToolHelper.isToolEffective2(tool, event.getState())) {
|
||||
event.setNewSpeed((float) (event.getNewSpeed() + random.nextFloat() * 2));
|
||||
event.setNewSpeed(event.getNewSpeed() + random.nextFloat() * 2);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,13 +113,15 @@ public class TraitRandomize extends AbstractTrait {
|
||||
}
|
||||
e.setPosition(target.getPosition().getX(), target.getPosition().getY() + 0.1f, target.getPosition().getZ());
|
||||
e.setCustomNameTag("Missingno");
|
||||
((EntityLiving) e).setHealth(((EntityLiving) e).getHealth() * (random.nextInt(5) + 1));
|
||||
if (e instanceof EntityLiving)
|
||||
((EntityLiving) e).setHealth(((EntityLiving) e).getHealth() * (random.nextInt(5) + 1));
|
||||
w.spawnEntityInWorld(e);
|
||||
target.setDead();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("ConstantConditions")
|
||||
@Override
|
||||
public void blockHarvestDrops(ItemStack tool, BlockEvent.HarvestDropsEvent event) {
|
||||
float r = random.nextFloat();
|
||||
|
@@ -18,8 +18,6 @@ public class TraitResonance extends AbstractTrait {
|
||||
target.knockBack(target, random.nextFloat() * random.nextFloat() * 12, player.posX - target.posX, player.posZ - target.posZ);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@@ -18,10 +18,9 @@ import slimeknights.tconstruct.library.utils.TagUtil;
|
||||
import slimeknights.tconstruct.library.utils.TinkerUtil;
|
||||
import slimeknights.tconstruct.library.utils.ToolHelper;
|
||||
|
||||
import static com.sosnitzka.taiga.util.Utils.isNight;
|
||||
|
||||
|
||||
/**
|
||||
* Created by Robert on 03.06.2016.
|
||||
*/
|
||||
public class TraitReviving extends AbstractTrait {
|
||||
|
||||
public TraitReviving() {
|
||||
@@ -38,6 +37,7 @@ public class TraitReviving extends AbstractTrait {
|
||||
if (isNight((int) w.getWorldTime()) && random.nextFloat() > 0.85 && TinkerUtil.hasTrait(TagUtil.getTagSafe(((EntityPlayer) e.getSource().getEntity()).getHeldItemMainhand()), identifier)) {
|
||||
String name = EntityList.getEntityString(e.getEntity());
|
||||
Entity ent = EntityList.createEntityByName(name, w);
|
||||
assert ent != null;
|
||||
ent.setPosition(pos.getX(), pos.getY(), pos.getZ());
|
||||
w.spawnEntityInWorld(ent);
|
||||
}
|
||||
@@ -60,13 +60,4 @@ public class TraitReviving extends AbstractTrait {
|
||||
ToolHelper.healTool(tool, random.nextInt(15) + 1, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public boolean isNight(int time) {
|
||||
if (time > 12500) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -29,11 +29,8 @@ public class TraitSlaughtering extends AbstractTrait {
|
||||
EntityPlayer player = (EntityPlayer) event.getSource().getEntity();
|
||||
if (!w.isRemote && event.getEntity() instanceof EntityLiving && !(event.getEntity() instanceof EntityPlayer) && TinkerUtil.hasTrait(TagUtil.getTagSafe(player.getHeldItemMainhand()), identifier)) {
|
||||
Item i = event.getDrops().get(random.nextInt(event.getDrops().size())).getEntityItem().getItem();
|
||||
if (i != null) {
|
||||
event.getDrops().add(new EntityItem(event.getEntity().getEntityWorld(), event.getEntity().posX, event.getEntity().posY, event.getEntity().posZ, new ItemStack(i, random.nextInt(4) + 1)));
|
||||
}
|
||||
event.getDrops().add(new EntityItem(event.getEntity().getEntityWorld(), event.getEntity().posX, event.getEntity().posY, event.getEntity().posZ, new ItemStack(i, random.nextInt(4) + 1)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -25,8 +25,6 @@ public class TraitSofty extends AbstractTrait {
|
||||
ToolHelper.healTool(tool, random.nextInt(10), player);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@@ -11,6 +11,4 @@ public class TraitTraditional extends AbstractTrait {
|
||||
super("traditional", TextFormatting.GREEN);
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@@ -20,7 +20,8 @@ import slimeknights.tconstruct.library.utils.TinkerUtil;
|
||||
import slimeknights.tconstruct.library.utils.ToolHelper;
|
||||
|
||||
import static com.sosnitzka.taiga.Items.glimmerstone_dust;
|
||||
import static com.sosnitzka.taiga.Items.tiberiumShardStable;
|
||||
import static com.sosnitzka.taiga.Items.tiberiumShardInstable;
|
||||
import static com.sosnitzka.taiga.Items.tiberium_nugget;
|
||||
|
||||
|
||||
public class TraitUncertain extends AbstractTrait {
|
||||
@@ -57,10 +58,10 @@ public class TraitUncertain extends AbstractTrait {
|
||||
i = new ItemStack(Items.GUNPOWDER, random.nextInt(4));
|
||||
break;
|
||||
case 1:
|
||||
i = new ItemStack(tiberiumShardStable, random.nextInt(4));
|
||||
i = new ItemStack(tiberiumShardInstable, random.nextInt(4));
|
||||
break;
|
||||
case 2:
|
||||
i = new ItemStack(tiberiumShardStable, random.nextInt(4));
|
||||
i = new ItemStack(tiberium_nugget, random.nextInt(12));
|
||||
break;
|
||||
case 3:
|
||||
i = new ItemStack(glimmerstone_dust, random.nextInt(4));
|
||||
@@ -73,6 +74,6 @@ public class TraitUncertain extends AbstractTrait {
|
||||
}
|
||||
|
||||
private void explode(World w, Entity e, double x, double y, double z) {
|
||||
w.newExplosion(e, x, y, z, 1.2f + random.nextFloat() * 5, random.nextBoolean(), true);
|
||||
w.newExplosion(e, x, y, z, 1.2f + random.nextFloat() * 4, random.nextBoolean(), true);
|
||||
}
|
||||
}
|
||||
|
@@ -13,7 +13,7 @@ import net.minecraft.world.World;
|
||||
|
||||
public class EntityAIPermanentPanic extends EntityAIBase {
|
||||
private EntityCreature theEntityCreature;
|
||||
protected double speed;
|
||||
private double speed;
|
||||
private double randPosX;
|
||||
private double randPosY;
|
||||
private double randPosZ;
|
||||
@@ -45,10 +45,10 @@ public class EntityAIPermanentPanic extends EntityAIBase {
|
||||
this.randPosY = (double) blockpos.getY();
|
||||
this.randPosZ = (double) blockpos.getZ();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@@ -13,19 +13,12 @@ public class FuelHandler implements IFuelHandler {
|
||||
if (fuel.getItem().equals(lignite)) {
|
||||
return 200 * 6;
|
||||
}
|
||||
if (fuel.getItem().equals(lignite2)) {
|
||||
return 200 * 4;
|
||||
}
|
||||
if (fuel.getItem().equals(lignite3)) {
|
||||
return 200 * 8;
|
||||
}
|
||||
if (fuel.getItem().equals(fuel_brick)) {
|
||||
return 200 * 16;
|
||||
return 200 * 50;
|
||||
}
|
||||
if (fuel.getItem().equals(glimmercoal)) {
|
||||
return (random.nextInt(32) + 32) * 200;
|
||||
return (random.nextInt(20) + 40) * 200;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -18,7 +18,7 @@ public class StateMatcher implements Predicate<IBlockState> {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public static StateMatcher forState(IBlockState state, IProperty property, Comparable value) {
|
||||
static StateMatcher forState(IBlockState state, IProperty property, Comparable value) {
|
||||
return new StateMatcher(state, property, value);
|
||||
}
|
||||
|
||||
|
@@ -16,12 +16,20 @@ public class Utils {
|
||||
public static String PREFIX_ORE = "ore";
|
||||
public static String PREFIX_BLOCK = "block";
|
||||
|
||||
|
||||
/**
|
||||
* Registers the block and its corresponding item (block as item in inventory)
|
||||
*
|
||||
* @param block the associated block
|
||||
*/
|
||||
public static void registerBlockWithItem(Block block) {
|
||||
GameRegistry.register(block);
|
||||
GameRegistry.register(new ItemBlock(block).setRegistryName(block.getRegistryName()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers the fluid and its bucket item
|
||||
* @param fluid the fluid
|
||||
*/
|
||||
public static void registerFluid(Fluid fluid) {
|
||||
FluidRegistry.registerFluid(fluid);
|
||||
FluidRegistry.addBucketForFluid(fluid);
|
||||
@@ -70,4 +78,8 @@ public class Utils {
|
||||
message.setTag("alloy", tagList);
|
||||
FMLInterModComms.sendMessage("tconstruct", "alloy", message);
|
||||
}
|
||||
|
||||
public static boolean isNight(int time) {
|
||||
return time > 12500;
|
||||
}
|
||||
}
|
||||
|
@@ -11,45 +11,55 @@ import net.minecraftforge.fml.common.IWorldGenerator;
|
||||
import java.util.Random;
|
||||
|
||||
import static com.sosnitzka.taiga.Blocks.*;
|
||||
import static com.sosnitzka.taiga.TAIGAConfiguration.*;
|
||||
|
||||
public class ZWorldGen implements IWorldGenerator {
|
||||
private void nether(Random random, int x, int z, World world) {
|
||||
Generator.generateNetherOre(adamantiteOre.getDefaultState(), random, x, z, world, 30, 1, 32, 2, 8);
|
||||
Generator.generateNetherOre(tiberiumOre.getDefaultState(), random, x, z, world, 20, 1, 128, 7, 15);
|
||||
Generator.generateNetherOre(palladiumOre.getDefaultState(), random, x, z, world, 30, 32, 64, 2, 7);
|
||||
Generator.generateNetherOre(prometheumOre.getDefaultState(), random, x, z, world, 30, 32, 64, 2, 6);
|
||||
|
||||
Generator.generateNetherOre(titaniteOre.getDefaultState(), random, x, z, world, (int) (35 * titaniteFactor * oreFactorGeneral), 1, 64, 2, 12);
|
||||
Generator.generateNetherOre(tiberiumOre.getDefaultState(), random, x, z, world, (int) (30 * tiberiumFactor * oreFactorGeneral), 0, 128, 2, 15);
|
||||
Generator.generateNetherOre(palladiumOre.getDefaultState(), random, x, z, world, (int) (35 * palladiumFactor * oreFactorGeneral), 32, 64, 2, 6);
|
||||
Generator.generateNetherOre(prometheumOre.getDefaultState(), random, x, z, world, (int) (35 * prometheumFactor * oreFactorGeneral), 64, 128, 2, 6);
|
||||
}
|
||||
|
||||
private void world(Random random, int x, int z, World world) {
|
||||
Generator.generateOre(slagironOre.getDefaultState(), random, x, z, world, 45, 8, 96, 5, 12);
|
||||
Generator.generateOre(slaggoldOre.getDefaultState(), random, x, z, world, 30, 8, 48, 4, 8);
|
||||
Generator.generateOre(ligniteOre.getDefaultState(), random, x, z, world, 30, 8, 96, 5, 12);
|
||||
Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, 40, 8, 96, 2, 8);
|
||||
Generator.generateOre(basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, 100, 8, 24, 2, 5);
|
||||
Generator.generateOre(rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, 25, 50, 70, 2, 15);
|
||||
|
||||
Generator.generateOre(vibraniumOre.getDefaultState(), random, x, z, world, 30, 48, 64, 2, 8);
|
||||
Generator.generateOre(karmesineOre.getDefaultState(), random, x, z, world, 35, 16, 48, 2, 7);
|
||||
Generator.generateOre(bismuthOre.getDefaultState(), random, x, z, world, 60, 50, 130, 2, 4);
|
||||
Generator.generateOre(mythrilOre.getDefaultState(), random, x, z, world, 33, 16, 32, 2, 8);
|
||||
Generator.generateOre(meteoriteOre.getDefaultState(), random, x, z, world, 10, 0, 32, 2, 25);
|
||||
Generator.generateOre(mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, 150, 16, 96, 2, 8);
|
||||
Generator.generateOre(arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, 150, 16, 96, 2, 8);
|
||||
Generator.generateOre(eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, 150, 16, 96, 2, 8);
|
||||
// Optional
|
||||
if (slagIronGen) {
|
||||
Generator.generateOre(slagironOre.getDefaultState(), random, x, z, world, (int) (45 * slagironFactor * oreFactorGeneral), 0, 128, 2, 12);
|
||||
}
|
||||
if (slagGoldGen) {
|
||||
Generator.generateOre(slaggoldOre.getDefaultState(), random, x, z, world, (int) (20 * slaggoldFactor * oreFactorGeneral), 0, 32, 2, 12);
|
||||
}
|
||||
if (ironGen) {
|
||||
Generator.generateOre(Blocks.IRON_ORE.getDefaultState(), random, x, z, world, (int) (30 * ironFactor * oreFactorGeneral), 0, 128, 1, 9);
|
||||
}
|
||||
|
||||
// to be integrated mod specific
|
||||
Generator.generateOre(basalt.getDefaultState(), Blocks.LAVA.getDefaultState(), random, x, z, world, (int) (125 * basaltFactor * oreFactorGeneral), 0, 28, 2, 4);
|
||||
Generator.generateOre(rottenGround.getDefaultState(), Blocks.DIRT.getDefaultState(), random, x, z, world, (int) (25 * rottengroundFactor * oreFactorGeneral), 50, 70, 2, 15);
|
||||
|
||||
Generator.generateOre(ligniteOre.getDefaultState(), random, x, z, world, (int) (30 * ligniteFactor * oreFactorGeneral), 8, 96, 2, 12);
|
||||
Generator.generateOre(vibraniumOre.getDefaultState(), random, x, z, world, (int) (30 * vibraniumFactor * oreFactorGeneral), 48, 64, 2, 8);
|
||||
Generator.generateOre(karmesineOre.getDefaultState(), random, x, z, world, (int) (35 * karmesineFactor * oreFactorGeneral), 16, 48, 2, 8);
|
||||
Generator.generateOre(bismuthOre.getDefaultState(), random, x, z, world, (int) (40 * bismuthFactor * oreFactorGeneral), 50, 130, 2, 4);
|
||||
Generator.generateOre(mythrilOre.getDefaultState(), random, x, z, world, (int) (34 * mythrilFactor * oreFactorGeneral), 16, 32, 2, 8);
|
||||
Generator.generateOre(meteoriteOre.getDefaultState(), random, x, z, world, (int) (10 * meteoriteFactor * oreFactorGeneral), 0, 32, 2, 25);
|
||||
Generator.generateOre(mindoriteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.DIORITE, random, x, z, world, (int) (120 * mindoriteFactor * oreFactorGeneral), 16, 96, 2, 8);
|
||||
Generator.generateOre(arcaniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.GRANITE, random, x, z, world, (int) (120 * arcaniteFactor * oreFactorGeneral), 16, 96, 2, 8);
|
||||
Generator.generateOre(eterniteOre.getDefaultState(), Blocks.STONE.getDefaultState(), BlockStone.VARIANT, BlockStone.EnumType.ANDESITE, random, x, z, world, (int) (120 * eterniteFactor * oreFactorGeneral), 16, 96, 2, 8);
|
||||
}
|
||||
|
||||
private void end(Random random, int x, int z, World world) {
|
||||
Generator.generateEndOre(adamantiteOre.getDefaultState(), random, x, z, world, (int) (15 * adamantiteFactor * oreFactorGeneral), 10, 35, 2, 8);
|
||||
Generator.generateEndOre(rubiumOre.getDefaultState(), random, x, z, world, (int) (15 * rubiumFactor * oreFactorGeneral), 10, 65, 2, 8);
|
||||
Generator.generateEndOre(ignititeOre.getDefaultState(), random, x, z, world, (int) (15 * ignititeFactor * oreFactorGeneral), 10, 45, 2, 8);
|
||||
Generator.generateEndOre(violiumOre.getDefaultState(), random, x, z, world, (int) (15 * violiumFactor * oreFactorGeneral), 10, 55, 2, 8);
|
||||
|
||||
Generator.generateEndOre(rubiumOre.getDefaultState(), random, x, z, world, 18, 10, 35, 2, 8);
|
||||
Generator.generateEndOre(ignititeOre.getDefaultState(), random, x, z, world, 18, 20, 45, 2, 8);
|
||||
Generator.generateEndOre(violiumOre.getDefaultState(), random, x, z, world, 18, 30, 55, 2, 8);
|
||||
Generator.generateEndOre(titaniteOre.getDefaultState(), random, x, z, world, 18, 40, 65, 2, 8);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator,
|
||||
IChunkProvider chunkProvider) {
|
||||
public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) {
|
||||
int x = chunkX * 16;
|
||||
int z = chunkZ * 16;
|
||||
switch (world.provider.getDimension()) {
|
||||
@@ -62,6 +72,9 @@ public class ZWorldGen implements IWorldGenerator {
|
||||
case 1:
|
||||
end(random, x, z, world);
|
||||
break;
|
||||
default:
|
||||
world(random, x, z, world);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -10,6 +10,7 @@ import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.gen.feature.WorldGenMinable;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.Random;
|
||||
|
||||
public class ZWorldGenMinable extends WorldGenMinable {
|
||||
@@ -32,6 +33,7 @@ public class ZWorldGenMinable extends WorldGenMinable {
|
||||
}
|
||||
|
||||
@Override
|
||||
@ParametersAreNonnullByDefault
|
||||
public boolean generate(World worldIn, Random rand, BlockPos position) {
|
||||
float f = rand.nextFloat() * (float) Math.PI;
|
||||
double d0 = (double) ((float) (position.getX() + 8) + MathHelper.sin(f) * (float) this.numberOfBlocks / 8.0F);
|
||||
|
@@ -127,6 +127,39 @@ item.dyonite_ingot.name=Dyonitbarren
|
||||
item.proxideum_ingot.name=Proxideumbarren
|
||||
item.astrium_ingot.name=Astriumbarren
|
||||
|
||||
item.titanite_nugget.name=Titanitklumpen
|
||||
item.meteorite_nugget.name=Meteoritklumpen
|
||||
item.vibranium_nugget.name=Vibraniumklumpen
|
||||
item.adamantite_nugget.name=Adamantitklumpen
|
||||
item.prometheum_nugget.name=Prometheumklumpen
|
||||
item.rubium_nugget.name=Rubiumklumpen
|
||||
item.tiberium_nugget.name=Tiberiumklumpen
|
||||
item.arcanite_nugget.name=Arcanitklumpen
|
||||
item.eternite_nugget.name=Eternitklumpen
|
||||
item.mythril_nugget.name=Mythrilklumpen
|
||||
item.palladium_nugget.name=Palladiumklumpen
|
||||
item.ignitite_nugget.name=Ignititklumpen
|
||||
item.violium_nugget.name=Violiumklumpen
|
||||
item.bismuth_nugget.name=Bismuthklumpen
|
||||
item.mindorite_nugget.name=Mindoritklumpen
|
||||
item.karmesine_nugget.name=Karmesinklumpen
|
||||
item.imperomite_nugget.name=Imperomitklumpen
|
||||
item.fractoryte_nugget.name=Fractorytklumpen
|
||||
item.noctunyx_nugget.name=Noctunyxklumpen
|
||||
item.nitronite_nugget.name=Nitronitklumpen
|
||||
item.cryptogen_nugget.name=Cryptogenklumpen
|
||||
item.seismodium_nugget.name=Seismodiumklumpen
|
||||
item.aegisalt_nugget.name=Aegisaltklumpen
|
||||
item.ultranite_nugget.name=Ultranitklumpen
|
||||
item.bysmuid_nugget.name=Bysmuidklumpen
|
||||
item.nucleum_nugget.name=Nucleumklumpen
|
||||
item.terramite_nugget.name=Terramitklumpen
|
||||
item.solarium_nugget.name=Solariumklumpen
|
||||
item.lumixyl_nugget.name=Lumixylklumpen
|
||||
item.dyonite_nugget.name=Dyonitklumpen
|
||||
item.proxideum_nugget.name=Proxideumklumpen
|
||||
item.astrium_nugget.name=Astriumklumpen
|
||||
|
||||
fluid.tconstruct.arcanite.name=Arcanit
|
||||
fluid.tconstruct.tiberium.name=Tiberium
|
||||
fluid.tconstruct.prometheum.name=Prometheum
|
||||
@@ -233,4 +266,8 @@ item.spectrum_dust.name=Spektrumstaub
|
||||
item.tiberium_shard_instable.name=Instabile Tiberiumscherbe
|
||||
item.tiberium_nugget.name=Tiberium Nugget
|
||||
item.radiant_pearl.name=Radiumperle
|
||||
item.luminar_dust.name=Luminarstaub
|
||||
item.luminar_dust.name=Luminarstaub
|
||||
|
||||
gui.taiga_configuration.mainTitle=TAIGA Configuration
|
||||
itemGroup.taiga_block=TAIGA Blocks
|
||||
itemGroup.taiga_item=TAIGA Items
|
@@ -167,6 +167,39 @@ item.dyonite_ingot.name=Dyonite Ingot
|
||||
item.proxideum_ingot.name=Proxideum Ingot
|
||||
item.astrium_ingot.name=Astrium Ingot
|
||||
|
||||
item.titanite_nugget.name=Titanite Nugget
|
||||
item.meteorite_nugget.name=Meteorite Nugget
|
||||
item.vibranium_nugget.name=Vibranium Nugget
|
||||
item.adamantite_nugget.name=Adamantite Nugget
|
||||
item.prometheum_nugget.name=Prometheum Nugget
|
||||
item.rubium_nugget.name=Rubium Nugget
|
||||
item.tiberium_nugget.name=Tiberium Nugget
|
||||
item.arcanite_nugget.name=Arcanite Nugget
|
||||
item.eternite_nugget.name=Eternite Nugget
|
||||
item.mythril_nugget.name=Mythril Nugget
|
||||
item.palladium_nugget.name=Palladium Nugget
|
||||
item.ignitite_nugget.name=Ignitite Nugget
|
||||
item.violium_nugget.name=Violium Nugget
|
||||
item.bismuth_nugget.name=Bismuth Nugget
|
||||
item.mindorite_nugget.name=Mindorite Nugget
|
||||
item.karmesine_nugget.name=Karmesine Nugget
|
||||
item.imperomite_nugget.name=Imperomite Nugget
|
||||
item.fractoryte_nugget.name=Fractoryte Nugget
|
||||
item.noctunyx_nugget.name=Noctunyx Nugget
|
||||
item.nitronite_nugget.name=Nitronite Nugget
|
||||
item.cryptogen_nugget.name=Cryptogen Nugget
|
||||
item.seismodium_nugget.name=Seismodium Nugget
|
||||
item.aegisalt_nugget.name=Aegisalt Nugget
|
||||
item.ultranite_nugget.name=Ultranite Nugget
|
||||
item.bysmuid_nugget.name=Bysmuid Nugget
|
||||
item.nucleum_nugget.name=Nucleum Nugget
|
||||
item.terramite_nugget.name=Terramite Nugget
|
||||
item.solarium_nugget.name=Solarium Nugget
|
||||
item.lumixyl_nugget.name=Lumixyl Nugget
|
||||
item.dyonite_nugget.name=Dyonite Nugget
|
||||
item.proxideum_nugget.name=Proxideum Nugget
|
||||
item.astrium_nugget.name=Astrium Nugget
|
||||
|
||||
modifier.analysing.name=Analysing
|
||||
modifier.analysing.desc=§oI know what you are!§r\nKill them, get all their knowledge, ignore loot.
|
||||
modifier.arcane.name=Arcane
|
||||
@@ -201,8 +234,8 @@ modifier.heroic.name=Heroic
|
||||
modifier.heroic.desc=§oUntil you'll die.§r\At the end, you grow stronger.
|
||||
modifier.hollow.name=Hollow
|
||||
modifier.hollow.desc=§oBraindead!§r\Brain smash!
|
||||
modifier.instable.name=Instable
|
||||
modifier.instable.desc=§oWhat the fuck?§r\Seriously, this is instable!
|
||||
modifier.instable.name=Unstable
|
||||
modifier.instable.desc=§oWhat the fuck?§r\Seriously, this is unstable!
|
||||
modifier.naturebound.name=Naturebound
|
||||
modifier.naturebound.desc=§oYou are one with your surrounding!§r\Repairs in name of the nature.
|
||||
modifier.pulverizing.name=Pulverizing
|
||||
@@ -216,7 +249,7 @@ modifier.slaughtering.desc=§oYum yum!§r\Who needs EXP if you can have meat?
|
||||
modifier.softy.name=Softy
|
||||
modifier.softy.desc=§oI love dirt!§r\Dirt heals!
|
||||
modifier.uncertain.name=Uncertain
|
||||
modifier.uncertain.desc=§oSome kind of risky to use.§r\At least it's not instable...or?
|
||||
modifier.uncertain.desc=§oSome kind of risky to use.§r\At least it's not unstable...or?
|
||||
modifier.reviving.name=Reviving
|
||||
modifier.reviving.desc=§oPlease kill it already!§r\Zombies!?
|
||||
modifier.melting.name=Melting
|
||||
@@ -230,7 +263,11 @@ item.energy_pearl.name=Energy Pearl
|
||||
item.nitro_brick.name=Nitro Brick
|
||||
item.anthracite_dust.name=Anthracite Dust
|
||||
item.spectrum_dust.name=Spectrum Dust
|
||||
item.tiberium_shard_instable.name=Instable Tiberium Shard
|
||||
item.tiberium_shard_instable.name=Unstable Tiberium Shard
|
||||
item.tiberium_nugget.name=Tiberium Nugget
|
||||
item.radiant_pearl.name=Radiant Pearl
|
||||
item.luminar_dust.name=Luminar Dust
|
||||
item.luminar_dust.name=Luminar Dust
|
||||
|
||||
gui.taiga_configuration.mainTitle=TAIGA Configuration
|
||||
itemGroup.taiga_block=TAIGA Blocks
|
||||
itemGroup.taiga_item=TAIGA Items
|
273
src/main/resources/assets/taiga/lang/zh_CN.lang
Normal file
@@ -0,0 +1,273 @@
|
||||
item.slagiron.name=富渣铁棒
|
||||
item.lignite.name=褐煤
|
||||
|
||||
tile.adamantite_ore.name=精金矿石
|
||||
tile.arcanite_ore.name=奥金矿石
|
||||
tile.basalt.name=玄武岩
|
||||
tile.bismuth_ore.name=铋矿石
|
||||
tile.eternite_ore.name=伊特尼矿石
|
||||
tile.karmesine_ore.name=卡梅塞恩矿石
|
||||
tile.lignite_ore.name=褐煤矿石
|
||||
tile.meteorite_ore.name=陨铁矿石
|
||||
tile.mindorite_ore.name=曼德瑞特矿石
|
||||
tile.mythril_ore.name=秘银矿石
|
||||
tile.palladium_ore.name=钯矿石
|
||||
tile.prometheum_ore.name=幻金矿石
|
||||
tile.rotten_ground.name=腐烂泥土
|
||||
tile.slagiron_ore.name=富渣铁矿石
|
||||
tile.slaggold_ore.name=富渣金矿石
|
||||
tile.tiberium_ore.name=泰伯利亚矿石
|
||||
tile.vibranium_ore.name=振金矿石
|
||||
tile.rubium_ore.name=鲁宾矿石
|
||||
tile.titanite_ore.name=榍石矿石
|
||||
tile.ignitite_ore.name=焰晶矿石
|
||||
tile.violium_ore.name=瑟蓝矿石
|
||||
|
||||
item.slagiron_ingot.name=富渣铁锭
|
||||
item.slaggold_ingot.name=富渣金锭
|
||||
item.fuel_brick.name=燃料砖
|
||||
item.iron_nugget.name=铁粒
|
||||
|
||||
material.titanite.name=榍石
|
||||
material.meteorite.name=陨铁
|
||||
material.vibranium.name=振金
|
||||
material.adamantite.name=精金
|
||||
material.prometheum.name=幻金
|
||||
material.rubium.name=鲁宾
|
||||
material.tiberium.name=泰伯利亚
|
||||
material.arcanite.name=奥金
|
||||
material.eternite.name=伊特尼
|
||||
material.mythril.name=秘银
|
||||
material.palladium.name=钯
|
||||
material.ignitite.name=焰晶
|
||||
material.violium.name=瑟蓝
|
||||
material.bismuth.name=铋
|
||||
material.mindorite.name=曼德瑞特
|
||||
material.karmesine.name=卡梅塞恩
|
||||
material.imperomite.name=因佩罗
|
||||
material.fractoryte.name=碎裂合金
|
||||
material.noctunyx.name=复苏合金
|
||||
material.nitronite.name=硝化合金
|
||||
material.cryptogen.name=诡秘合金
|
||||
material.seismodium.name=赛斯摩迪
|
||||
material.aegisalt.name=霓磷盐
|
||||
material.ultranite.name=过载合金
|
||||
material.bysmuid.name=拜斯麦
|
||||
material.nucleum.name=辐光合金
|
||||
material.terramite.name=大地合金
|
||||
material.solarium.name=阳光合金
|
||||
material.lumixyl.name=流明
|
||||
material.dyonite.name=狄奥尼
|
||||
material.proxideum.name=博赛德
|
||||
material.astrium.name=阿斯特里姆
|
||||
|
||||
fluid.tconstruct.arcanite.name=熔融奥金
|
||||
fluid.tconstruct.tiberium.name=熔融泰伯利亚
|
||||
fluid.tconstruct.prometheum.name=熔融幻金
|
||||
fluid.tconstruct.rubium.name=熔融鲁宾
|
||||
fluid.tconstruct.violium.name=熔融瑟蓝
|
||||
fluid.tconstruct.bismuth.name=熔融铋
|
||||
fluid.tconstruct.karmesine.name=熔融卡梅塞恩
|
||||
fluid.tconstruct.mindorite.name=熔融曼德瑞特
|
||||
fluid.tconstruct.titanite.name=熔融榍石
|
||||
fluid.tconstruct.meteorite.name=熔融陨铁
|
||||
fluid.tconstruct.adamantite.name=熔融精金
|
||||
fluid.tconstruct.vibranium.name=熔融振金
|
||||
fluid.tconstruct.ignitite.name=熔融焰晶
|
||||
fluid.tconstruct.palladium.name=熔融钯
|
||||
fluid.tconstruct.eternite.name=熔融伊特尼
|
||||
fluid.tconstruct.mythril.name=熔融秘银
|
||||
fluid.tconstruct.astrium.name=熔融阿斯特里姆
|
||||
fluid.tconstruct.nitronite.name=熔融硝化合金
|
||||
fluid.tconstruct.proxideum.name=熔融博赛德
|
||||
fluid.tconstruct.noctunyx.name=熔融复苏合金
|
||||
fluid.tconstruct.imperomite.name=熔融因佩罗
|
||||
fluid.tconstruct.cryptogen.name=熔融诡秘合金
|
||||
fluid.tconstruct.fractoryte.name=熔融碎裂合金
|
||||
fluid.tconstruct.seismodium.name=熔融赛斯摩迪
|
||||
fluid.tconstruct.terramite.name=熔融大地合金
|
||||
fluid.tconstruct.lumixyl.name=熔融流明
|
||||
fluid.tconstruct.solarium.name=熔融阳光合金
|
||||
fluid.tconstruct.dyonite.name=熔融狄奥尼
|
||||
fluid.tconstruct.ultranite.name=熔融过载合金
|
||||
fluid.tconstruct.nucleum.name=熔融辐光合金
|
||||
fluid.tconstruct.aegisalt.name=熔融霓磷盐
|
||||
fluid.tconstruct.bysmuid.name=熔融拜斯麦
|
||||
fluid.tconstruct.radiant_enderium.name=熔融辐射珍珠
|
||||
fluid.tconstruct.glimming_enderium.name=熔融闪耀珍珠
|
||||
fluid.tconstruct.energy_enderium.name=熔融能量珍珠
|
||||
fluid.tconstruct.glimmercoal_fluid.name=熔融闪耀煤炭
|
||||
fluid.tconstruct.nitro_fluid.name=熔融硝化砖
|
||||
fluid.tconstruct.anthracite_fluid.name=熔融无烟煤粉
|
||||
fluid.tconstruct.spectrum_fluid.name=熔融复光粉末
|
||||
|
||||
tile.titanite_block.name=榍石块
|
||||
tile.meteorite_block.name=陨铁块
|
||||
tile.vibranium_block.name=振金块
|
||||
tile.adamantite_block.name=精金块
|
||||
tile.prometheum_block.name=幻金块
|
||||
tile.rubium_block.name=鲁宾块
|
||||
tile.tiberium_block.name=泰伯利亚块
|
||||
tile.arcanite_block.name=奥金块
|
||||
tile.eternite_block.name=伊特尼块
|
||||
tile.mythril_block.name=秘银块
|
||||
tile.palladium_block.name=钯块
|
||||
tile.ignitite_block.name=焰晶块
|
||||
tile.violium_block.name=瑟蓝块
|
||||
tile.bismuth_block.name=铋块
|
||||
tile.mindorite_block.name=曼德瑞特块
|
||||
tile.karmesine_block.name=卡梅塞恩块
|
||||
tile.imperomite_block.name=因佩罗块
|
||||
tile.fractoryte_block.name=碎裂合金块
|
||||
tile.noctunyx_block.name=复苏合金块
|
||||
tile.nitronite_block.name=硝化合金块
|
||||
tile.cryptogen_block.name=诡秘合金块
|
||||
tile.seismodium_block.name=赛斯摩迪块
|
||||
tile.aegisalt_block.name=霓磷盐块
|
||||
tile.ultranite_block.name=过载合金块
|
||||
tile.bysmuid_block.name=拜斯麦块
|
||||
tile.nucleum_block.name=辐光合金块
|
||||
tile.terramite_block.name=大地合金块
|
||||
tile.solarium_block.name=阳光合金块
|
||||
tile.lumixyl_block.name=流明块
|
||||
tile.dyonite_block.name=狄奥尼块
|
||||
tile.proxideum_block.name=博赛德块
|
||||
tile.astrium_block.name=阿斯特里姆块
|
||||
|
||||
item.titanite_ingot.name=榍石锭
|
||||
item.meteorite_ingot.name=陨铁锭
|
||||
item.vibranium_ingot.name=振金锭
|
||||
item.adamantite_ingot.name=精金锭
|
||||
item.prometheum_ingot.name=幻金锭
|
||||
item.rubium_ingot.name=鲁宾锭
|
||||
item.tiberium_ingot.name=泰伯利亚锭
|
||||
item.arcanite_ingot.name=奥金锭
|
||||
item.eternite_ingot.name=伊特尼锭
|
||||
item.mythril_ingot.name=秘银锭
|
||||
item.palladium_ingot.name=钯锭
|
||||
item.ignitite_ingot.name=焰晶锭
|
||||
item.violium_ingot.name=瑟蓝锭
|
||||
item.bismuth_ingot.name=铋锭
|
||||
item.mindorite_ingot.name=曼德瑞特锭
|
||||
item.karmesine_ingot.name=卡梅塞恩锭
|
||||
item.imperomite_ingot.name=因佩罗锭
|
||||
item.fractoryte_ingot.name=碎裂合金锭
|
||||
item.noctunyx_ingot.name=复苏合金锭
|
||||
item.nitronite_ingot.name=硝化合金锭
|
||||
item.cryptogen_ingot.name=诡秘合金锭
|
||||
item.seismodium_ingot.name=赛斯摩迪锭
|
||||
item.aegisalt_ingot.name=霓磷盐锭
|
||||
item.ultranite_ingot.name=过载合金锭
|
||||
item.bysmuid_ingot.name=拜斯麦锭
|
||||
item.nucleum_ingot.name=辐光合金锭
|
||||
item.terramite_ingot.name=大地合金锭
|
||||
item.solarium_ingot.name=阳光合金锭
|
||||
item.lumixyl_ingot.name=流明锭
|
||||
item.dyonite_ingot.name=狄奥尼锭
|
||||
item.proxideum_ingot.name=博赛德锭
|
||||
item.astrium_ingot.name=阿斯特里姆锭
|
||||
|
||||
item.titanite_nugget.name=榍石粒
|
||||
item.meteorite_nugget.name=陨铁粒
|
||||
item.vibranium_nugget.name=振金粒
|
||||
item.adamantite_nugget.name=精金粒
|
||||
item.prometheum_nugget.name=幻金粒
|
||||
item.rubium_nugget.name=鲁宾粒
|
||||
item.tiberium_nugget.name=泰伯利亚粒
|
||||
item.arcanite_nugget.name=奥金粒
|
||||
item.eternite_nugget.name=伊特尼粒
|
||||
item.mythril_nugget.name=秘银粒
|
||||
item.palladium_nugget.name=钯粒
|
||||
item.ignitite_nugget.name=焰晶粒
|
||||
item.violium_nugget.name=瑟蓝粒
|
||||
item.bismuth_nugget.name=铋粒
|
||||
item.mindorite_nugget.name=曼德瑞特粒
|
||||
item.karmesine_nugget.name=卡梅塞恩粒
|
||||
item.imperomite_nugget.name=因佩罗粒
|
||||
item.fractoryte_nugget.name=碎裂合金粒
|
||||
item.noctunyx_nugget.name=复苏合金粒
|
||||
item.nitronite_nugget.name=硝化合金粒
|
||||
item.cryptogen_nugget.name=诡秘合金粒
|
||||
item.seismodium_nugget.name=赛斯摩迪粒
|
||||
item.aegisalt_nugget.name=霓磷盐粒
|
||||
item.ultranite_nugget.name=过载合金粒
|
||||
item.bysmuid_nugget.name=拜斯麦粒
|
||||
item.nucleum_nugget.name=辐光合金粒
|
||||
item.terramite_nugget.name=大地合金粒
|
||||
item.solarium_nugget.name=阳光合金粒
|
||||
item.lumixyl_nugget.name=流明粒
|
||||
item.dyonite_nugget.name=狄奥尼粒
|
||||
item.proxideum_nugget.name=博赛德粒
|
||||
item.astrium_nugget.name=阿斯特里姆粒
|
||||
|
||||
modifier.analysing.name=解析
|
||||
modifier.analysing.desc=§o我知道你是什么!§r\n杀掉他们,获得他们全部的知识,而忽略掉掉落物.
|
||||
modifier.arcane.name=神秘
|
||||
modifier.arcane.desc=§o天黑了,让我们去挖矿吧!§r\n夜晚对工具的耐久有点好处.
|
||||
modifier.organizing.name=增生
|
||||
modifier.organizing.desc=§o现在你是棵树!§r\n有可能产生木头.
|
||||
modifier.blind.name=失明
|
||||
modifier.blind.desc=§o一个漆黑的夜晚,我甚至看不见!§r\n黑暗带给你虚弱及失明.
|
||||
modifier.bright.name=发光
|
||||
modifier.bright.desc=§o一个明亮的白天,我感到了力量!§r\n白天会使你发光.
|
||||
modifier.cascade.name=振动
|
||||
modifier.cascade.desc=§o这个工具在振动!§r\n破坏方块就如地震一样.
|
||||
modifier.curvature.name=扭曲
|
||||
modifier.curvature.desc=§o它带着我前后移动!§r\n有时候它会传送走你和你周围的事物.
|
||||
modifier.dark.name=黑暗
|
||||
modifier.dark.desc=§o天黑了,让我们战斗吧!§r\n夜晚使你更具战斗力.
|
||||
modifier.diffuse.name=漫散
|
||||
modifier.diffuse.desc=§o如此多的经验...或者什么都没有?§r\n经常会使破坏方块掉落经验,但是掉落物可能会消失.
|
||||
modifier.dissolving.name=消溶
|
||||
modifier.dissolving.desc=§o我不在乎失去的经验.§r\n以大量经验做交换.
|
||||
modifier.fracture.name=碎裂
|
||||
modifier.fracture.desc=§o你要挖个很深的洞!§r\n你有电钻或者别的东西吗?
|
||||
modifier.fragile.name=脆弱
|
||||
modifier.fragile.desc=§o一种地震.§r\n你的镐子会损失耐久使方块会变得更脆弱.
|
||||
modifier.garishly.name=炙热
|
||||
modifier.garishly.desc=§o它太热了.§r\n它会瓦解掉掉落物.
|
||||
modifier.glimmer.name=微光
|
||||
modifier.glimmer.desc=§o黑吗?对我来说并不!§r\n有时候你会获得夜视.
|
||||
modifier.haunted.name=发疯
|
||||
modifier.haunted.desc=§o鞭笞他们让他们疯狂!§r\n去TMD疯牛病.
|
||||
modifier.heroic.name=英勇
|
||||
modifier.heroic.desc=§o至死方休.§r\n在生命结束前,你会变得更强壮.
|
||||
modifier.hollow.name=虚伪
|
||||
modifier.hollow.desc=§o吃掉了你的脑子!§r\n粉碎脑子!
|
||||
modifier.instable.name=不稳定
|
||||
modifier.instable.desc=§oWTF?§r\n真的,它很不稳定!
|
||||
modifier.naturebound.name=自然之束
|
||||
modifier.naturebound.desc=§o你与自然融为一体!§r\n以自然之名复原.
|
||||
modifier.pulverizing.name=摧毁
|
||||
modifier.pulverizing.desc=§o浩克...出击!§r\n毁掉你挖掘的东西.
|
||||
modifier.randomize.name=随机
|
||||
modifier.randomize.desc=§o你是谁?§r\n随机生成实体和原版矿物.
|
||||
modifier.resonance.name=共振
|
||||
modifier.resonance.desc=§o振金!!!嘣!§r\n带走冲击!
|
||||
modifier.slaughtering.name=屠宰
|
||||
modifier.slaughtering.desc=§o嗯,美味!§r\n有肉吃谁还要经验?
|
||||
modifier.softy.name=柔软
|
||||
modifier.softy.desc=§o我爱泥土!§r\n挖泥土能回复耐久!
|
||||
modifier.uncertain.name=不常
|
||||
modifier.uncertain.desc=§o用的时候有点危险.§r\n至少他不是不稳定的...吗?
|
||||
modifier.reviving.name=复苏
|
||||
modifier.reviving.desc=§o请把它彻底杀死!§r\n僵尸!?
|
||||
modifier.melting.name=熔化
|
||||
modifier.melting.desc=§o真烫!§r\n燃烧吧!
|
||||
|
||||
|
||||
item.glimmercoal.name=闪耀煤炭
|
||||
item.glimmer_pearl.name=闪耀珍珠
|
||||
item.glimmerstone_dust.name=闪耀粉末
|
||||
item.energy_pearl.name=能量珍珠
|
||||
item.nitro_brick.name=硝化砖
|
||||
item.anthracite_dust.name=无烟煤粉
|
||||
item.spectrum_dust.name=复光粉末
|
||||
item.tiberium_shard_instable.name=不稳定泰伯利亚碎片
|
||||
item.tiberium_nugget.name=泰伯利亚粒
|
||||
item.radiant_pearl.name=辐射珍珠
|
||||
item.luminar_dust.name=流明粉
|
||||
|
||||
gui.taiga_configuration.mainTitle=TAIGA 组态
|
||||
itemGroup.taiga_block=TAIGA 块
|
||||
itemGroup.taiga_item=TAIGA 对象
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/adamantite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/aegisalt_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/arcanite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/astrium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/bismuth_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/bysmuid_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/cryptogen_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/dyonite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/eternite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/fractoryte_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/ignitite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/imperomite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/karmesine_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/lumixyl_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/meteorite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/mindorite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/mythril_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/nitronite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/noctunyx_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/nucleum_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/palladium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/prometheum_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/proxideum_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/rubium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/seismodium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/solarium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/terramite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/titanite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/ultranite_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/vibranium_nugget"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "taiga:items/violium_nugget"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 16 KiB |