Compare commits

...
28 Commits
Author SHA1 Message Date
Martin Robertz 7553983e28 Merge pull request #9 from DrParadox7/patch-1
ExtraTrees' Butterfly crashing on Escritoire
2021-12-18 17:46:14 +01:00
DrParadox7 d47246adbe ExtraTrees' Butterfly crashing on Escritoire 2021-12-17 02:43:43 +00:00
Martin Robertz 91446f7c07 ignore bat file 2021-12-10 23:55:44 +01:00
Johann Bernhardt c84b8ae033 Migrated to unified build script 2021-12-09 13:56:39 +01:00
Martin Robertz a64ac3e19c Merge pull request #8 from GTNewHorizons/D-Cysteine-patch-1
Replacing jar with slightly fresher one
2021-08-14 22:48:02 +02:00
D-Cysteine a24d7a339c Replacing jar with slightly fresher one 2021-08-14 14:45:53 -06:00
Martin Robertz d92cae88e2 Merge pull request #7 from D-Cysteine/master-MC1.7.10
Update to latest Forestry API
2021-08-14 15:48:48 +02:00
D-Cysteine 7b021331bb Update to latest Forestry API 2021-08-12 20:55:36 -06:00
Martin Robertz 3a1b633044 Merge pull request #6 from TataTawa/patch-1
Update ExtraTreeSpecies.java
2020-08-04 22:23:08 +02:00
TataTawa 7b744a3e2c Update ExtraTreeSpecies.java
correct item name
2020-08-04 08:09:02 +00:00
DreamMasterXXL de53168447 bump version 2020-05-27 15:00:41 +02:00
Martin Robertz 18073d2f76 Merge pull request #4 from Kiwi233/master-MC1.7.10
Update zh_CN.lang
2020-05-27 14:07:12 +02:00
[Kiwi233] 87581cd03b Update zh_CN.lang 2020-05-25 21:52:34 +08:00
Dream-Master 6facfe5fa8 bump version 2020-03-19 18:46:56 +01:00
Martin Robertz e32e427f93 Merge pull request #3 from GTNewHorizons/wrong-blockname-in-waila
Fix Extra Trees fences and gates showing up wrong in WAILA
2020-03-18 17:05:57 +01:00
Wilhelm Schuster fe35f8e237 Fix fences and gates showing up wrong in WAILA 2020-03-18 16:26:49 +01:00
Wilhelm Schuster 4836d89ed9 Update gitignore 2020-03-18 15:20:31 +01:00
Martin Robertz d486b30dff Merge pull request #2 from GTNewHorizons/connectTo-patch
fix(fences): connection to logic
2020-03-08 19:38:15 +01:00
Léa Gris 1b9212786f bump(version): 2.0.27 2020-03-08 19:24:41 +01:00
Léa Gris d8bf61a44e fix(fences): connection to logic
Fix ExtraTrees fences to connect correctly to other wooden fences and fence gates.

Address issue: [Extra Trees fences are buggy #5694](https://github.com/GTNewHorizons/NewHorizons/issues/5694)

Works even better with https://github.com/mitchej123/Hodgepodge/pull/2 witch patches
vanilla fences to connect with other mod fences.
2020-03-08 19:18:14 +01:00
Léa Gris bce6c26704 fix(doors): up max stack size from 1 to 8
Align Max stack size to 8 same as MC Door Item.
2020-02-13 04:47:28 +01:00
Léa Gris a9eb396b7e fix(lang): osange orange and sync lang keys 2020-02-11 00:56:09 +01:00
Léa Gris 92211ddbf4 fix(fruitdrop): remove 5x multiplier
See issue https://github.com/GTNewHorizons/NewHorizons/issues/5131
2020-02-10 23:46:01 +01:00
Léa Gris 3c6ab0e052 fix(tile): remove useless meta nbt 2020-02-10 23:34:06 +01:00
Léa Gris 16793c2385 fix(gradle): wrapper update 4.4.1 2020-02-10 22:45:05 +01:00
Dream-MasterXXL 9c820bd038 bump version
update git ignore
2020-01-02 17:28:43 +01:00
repo-alt f12a75a356 Merge pull request #1 from repo-alt/feature/MasterRegistryFix
Binnie Master Registry search window not working
2019-12-29 22:26:04 +03:00
repo_alt 74d8810684 Binnie Master Registry search window not working
https://github.com/GTNewHorizons/NewHorizons/issues/4685
2019-12-29 22:19:52 +03:00
34 changed files with 1428 additions and 353 deletions

No files matched your search

+9
View File
@@ -0,0 +1,9 @@
directory="run/crash-reports"
if [ -d $directory ]; then
echo "Crash reports detected:"
cat $directory/*
exit 1
else
echo "No crash reports detected"
exit 0
fi
+45
View File
@@ -0,0 +1,45 @@
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Build and test
on:
pull_request:
branches: [ master, main ]
push:
branches: [ master, main ]
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Setup the workspace
run: ./gradlew setupCIWorkspace
- name: Build the mod
run: ./gradlew build
- name: Run server for 1 minute
run: |
mkdir run
echo "eula=true" > run/eula.txt
timeout 60 ./gradlew runServer || true
- name: Test no crashes happend
run: |
chmod +x .github/scripts/test-no-crash-reports.sh
.github/scripts/test-no-crash-reports.sh
+45
View File
@@ -0,0 +1,45 @@
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Release tagged build
on:
push:
tags:
- '*'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set release version
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- name: Set up JDK 8
uses: actions/setup-java@v2
with:
java-version: '8'
distribution: 'adopt'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Setup the workspace
run: ./gradlew setupCIWorkspace
- name: Build the mod
run: ./gradlew build
- name: Release under current tag
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "${{ env.RELEASE_VERSION }}"
prerelease: false
title: "${{ env.RELEASE_VERSION }}"
files: build/libs/*.jar
+25 -15
View File
@@ -1,19 +1,29 @@
.gradle
# IntelliJ
/build
/run
/eclipse
/out
/classes
.idea
.settings
/.idea/
/run/
/build/
/eclipse/
.classpath
.project
/bin/
/config/
/crash-reports/
/logs/
options.txt
/saves/
usernamecache.json
banned-ips.json
banned-players.json
eula.txt
ops.json
server.properties
servers.dat
usercache.json
whitelist.json
/out/
*.iml
*.ipr
*.iws
# minecraft
/config
/logs
/saves
/options.txt
/usernamecache.json
changelog.html
src/main/resources/mixins.*.json
*.bat
-24
View File
@@ -1,24 +0,0 @@
sudo: required
dist: trusty
language: java
jdk: oraclejdk8
before_cache:
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
- rm -f $HOME/.gradle/caches/minecraft/deobfedDeps/providedDummy.jar
- rm -f $HOME/.gradle/caches/minecraft/deobfedDeps/compileDummy.jar
cache:
directories:
- $HOME/.gradle/caches/
- $HOME/.gradle/wrapper/
before_install: chmod +x gradlew
install:
- ./gradlew setupCIWorkspace -S
script:
- ./gradlew build
notifications:
email: false
+499 -61
View File
@@ -1,91 +1,529 @@
//version: 928ecf7feb33a1149538b0e2cd17e3bc5f281428
/*
DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available.
Please check https://github.com/SinTh0r4s/ExampleMod1.7.10/blob/main/build.gradle for updates.
*/
import com.github.jengelman.gradle.plugins.shadow.tasks.ConfigureShadowRelocation
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import java.util.concurrent.TimeUnit
buildscript {
repositories {
mavenCentral()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
url = "https://maven.minecraftforge.net"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
maven {
url "https://plugins.gradle.org/m2/"
name = "Scala CI dependencies"
url = "https://repo1.maven.org/maven2/"
}
maven {
name = "jitpack"
url = "https://jitpack.io"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
classpath "gradle.plugin.se.bjurr.gitchangelog:git-changelog-gradle-plugin:1.47"
classpath 'com.github.GTNewHorizons:ForgeGradle:1.2.4'
}
}
plugins {
id "com.matthewprenger.cursegradle" version "1.0.6"
id 'idea'
id 'scala'
id("org.ajoberstar.grgit") version("3.1.1")
id("com.github.johnrengelman.shadow") version("4.0.4")
id("com.palantir.git-version") version("0.12.3")
}
apply plugin: "se.bjurr.gitchangelog.git-changelog-gradle-plugin"
apply plugin: 'forge'
version = "2.0.22"
if (System.getenv("BUILD_NUMBER") != null) {
version = version + "." + System.getenv("BUILD_NUMBER")
}
group = "binnie" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "binnie-mods-1.7.10"
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
def projectJavaVersion = JavaLanguageVersion.of(8)
// uncomment this hack if you use old IDEA
/*sourceSets {
main {
output.resourcesDir = output.classesDir
java {
toolchain {
languageVersion.set(projectJavaVersion)
}
}*/
}
idea {
module {
inheritOutputDirs = true
downloadJavadoc = true
downloadSources = true
}
}
if(JavaVersion.current() != JavaVersion.VERSION_1_8) {
throw new GradleException("This project requires Java 8, but it's running on " + JavaVersion.current())
}
checkPropertyExists("modName")
checkPropertyExists("modId")
checkPropertyExists("modGroup")
checkPropertyExists("autoUpdateBuildScript")
checkPropertyExists("minecraftVersion")
checkPropertyExists("forgeVersion")
checkPropertyExists("replaceGradleTokenInFile")
checkPropertyExists("gradleTokenModId")
checkPropertyExists("gradleTokenModName")
checkPropertyExists("gradleTokenVersion")
checkPropertyExists("gradleTokenGroupName")
checkPropertyExists("apiPackage")
checkPropertyExists("accessTransformersFile")
checkPropertyExists("usesMixins")
checkPropertyExists("mixinPlugin")
checkPropertyExists("mixinsPackage")
checkPropertyExists("coreModClass")
checkPropertyExists("containsMixinsAndOrCoreModOnly")
checkPropertyExists("usesShadowedDependencies")
checkPropertyExists("developmentEnvironmentUserName")
String javaSourceDir = "src/main/java/"
String scalaSourceDir = "src/main/scala/"
String targetPackageJava = javaSourceDir + modGroup.toString().replaceAll("\\.", "/")
String targetPackageScala = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/")
if((getFile(targetPackageJava).exists() || getFile(targetPackageScala).exists()) == false) {
throw new GradleException("Could not resolve \"modGroup\"! Could not find " + targetPackageJava + " or " + targetPackageScala)
}
if(apiPackage) {
targetPackageJava = javaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + apiPackage.toString().replaceAll("\\.", "/")
targetPackageScala = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + apiPackage.toString().replaceAll("\\.", "/")
if((getFile(targetPackageJava).exists() || getFile(targetPackageScala).exists()) == false) {
throw new GradleException("Could not resolve \"apiPackage\"! Could not find " + targetPackageJava + " or " + targetPackageScala)
}
}
if(accessTransformersFile) {
String targetFile = "src/main/resources/META-INF/" + accessTransformersFile
if(getFile(targetFile).exists() == false) {
throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile)
}
}
if(usesMixins.toBoolean()) {
if(mixinsPackage.isEmpty() || mixinPlugin.isEmpty()) {
throw new GradleException("\"mixinPlugin\" requires \"mixinsPackage\" and \"mixinPlugin\" to be set!")
}
targetPackageJava = javaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + mixinsPackage.toString().replaceAll("\\.", "/")
targetPackageScala = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + mixinsPackage.toString().replaceAll("\\.", "/")
if((getFile(targetPackageJava).exists() || getFile(targetPackageScala).exists()) == false) {
throw new GradleException("Could not resolve \"mixinsPackage\"! Could not find " + targetPackageJava + " or " + targetPackageScala)
}
String targetFileJava = javaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + mixinPlugin.toString().replaceAll("\\.", "/") + ".java"
String targetFileScala = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + mixinPlugin.toString().replaceAll("\\.", "/") + ".scala"
String targetFileScalaJava = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + mixinPlugin.toString().replaceAll("\\.", "/") + ".java"
if((getFile(targetFileJava).exists() || getFile(targetFileScala).exists() || getFile(targetFileScalaJava).exists()) == false) {
throw new GradleException("Could not resolve \"mixinPlugin\"! Could not find " + targetFileJava + " or " + targetFileScala + " or " + targetFileScalaJava)
}
}
if(coreModClass) {
String targetFileJava = javaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + coreModClass.toString().replaceAll("\\.", "/") + ".java"
String targetFileScala = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + coreModClass.toString().replaceAll("\\.", "/") + ".scala"
String targetFileScalaJava = scalaSourceDir + modGroup.toString().replaceAll("\\.", "/") + "/" + coreModClass.toString().replaceAll("\\.", "/") + ".java"
if((getFile(targetFileJava).exists() || getFile(targetFileScala).exists() || getFile(targetFileScalaJava).exists()) == false) {
throw new GradleException("Could not resolve \"coreModClass\"! Could not find " + targetFileJava + " or " + targetFileScala + " or " + targetFileScalaJava)
}
}
configurations.all {
resolutionStrategy.cacheChangingModulesFor(0, TimeUnit.SECONDS)
// Make sure GregTech build won't time out
System.setProperty("org.gradle.internal.http.connectionTimeout", 120000 as String)
System.setProperty("org.gradle.internal.http.socketTimeout", 120000 as String)
}
// Fix Jenkins' Git: chmod a file should not be detected as a change and append a '.dirty' to the version
'git config core.fileMode false'.execute()
// Pulls version from git tag
try {
version = minecraftVersion + "-" + gitVersion()
}
catch (Exception e) {
throw new IllegalStateException("This mod must be version controlled by Git AND the repository must provide at least one tag!");
}
group = modGroup
if(project.hasProperty("customArchiveBaseName") && customArchiveBaseName) {
archivesBaseName = customArchiveBaseName
}
else {
archivesBaseName = modId
}
minecraft {
version = "1.7.10-10.13.4.1614-1.7.10"
runDir = "eclipse"
}
version = minecraftVersion + "-" + forgeVersion + "-" + minecraftVersion
runDir = "run"
processResources {
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
expand 'version': project.version,
'mcversion': project.minecraft.version,
'modid': "BinnieMods"
}
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
task gitChangelogTask(type: se.bjurr.gitchangelog.plugin.gradle.GitChangelogTask) {
filePath = "changelog.html"
untaggedName = "Current release ${project.version}"
fromCommit = "dbc5c1a564c39e4a9c042411d1bdbe450985ce2c"
toRef = "HEAD"
templateContent = file('changelog.mustache').getText('UTF-8')
}
curseforge {
apiKey = project.hasProperty('curseforge_apikey') ? project.curseforge_apikey : '0'
project {
id = '223525'
changelog = file('changelog.html')
changelogType = 'html'
releaseType = 'release'
relations {
requiredLibrary 'forestry'
incompatible 'binnie-fix'
incompatible 'binniepatcher'
incompatible 'more-binnie-fixes'
if (replaceGradleTokenInFile) {
replaceIn replaceGradleTokenInFile
if(gradleTokenModId) {
replace gradleTokenModId, modId
}
if(gradleTokenModName) {
replace gradleTokenModName, modName
}
if(gradleTokenVersion) {
replace gradleTokenVersion, versionDetails().lastTag
}
if(gradleTokenGroupName) {
replace gradleTokenGroupName, modGroup
}
}
}
afterEvaluate {
tasks.curseforge223525.dependsOn.add(gitChangelogTask)
if(file("addon.gradle").exists()) {
apply from: "addon.gradle"
}
apply from: 'repositories.gradle'
configurations {
implementation.extendsFrom(shadowImplementation)
}
repositories {
maven {
name = "Overmind forge repo mirror"
url = "https://gregtech.overminddl1.com/"
}
if(usesMixins.toBoolean()) {
maven {
name = "sponge"
url = "https://repo.spongepowered.org/repository/maven-public"
}
maven {
url = "https://jitpack.io"
}
}
}
dependencies {
if(usesMixins.toBoolean()) {
annotationProcessor("org.ow2.asm:asm-debug-all:5.0.3")
annotationProcessor("com.google.guava:guava:24.1.1-jre")
annotationProcessor("com.google.code.gson:gson:2.8.6")
annotationProcessor("org.spongepowered:mixin:0.8-SNAPSHOT")
// using 0.8 to workaround a issue in 0.7 which fails mixin application
compile("org.spongepowered:mixin:0.7.11-SNAPSHOT") {
// Mixin includes a lot of dependencies that are too up-to-date
exclude module: "launchwrapper"
exclude module: "guava"
exclude module: "gson"
exclude module: "commons-io"
exclude module: "log4j-core"
}
compile("com.github.GTNewHorizons:SpongeMixins:1.3.3:dev")
}
}
apply from: 'dependencies.gradle'
def mixingConfigRefMap = "mixins." + modId + ".refmap.json"
def refMap = "${tasks.compileJava.temporaryDir}" + File.separator + mixingConfigRefMap
def mixinSrg = "${tasks.reobf.temporaryDir}" + File.separator + "mixins.srg"
task generateAssets {
if(usesMixins.toBoolean()) {
getFile("/src/main/resources/mixins." + modId + ".json").text = """{
"required": true,
"minVersion": "0.7.11",
"package": "${modGroup}.${mixinsPackage}",
"plugin": "${modGroup}.${mixinPlugin}",
"refmap": "${mixingConfigRefMap}",
"target": "@env(DEFAULT)",
"compatibilityLevel": "JAVA_8"
}
"""
}
}
task relocateShadowJar(type: ConfigureShadowRelocation) {
target = tasks.shadowJar
prefix = modGroup + ".shadow"
}
shadowJar {
manifest {
attributes(getManifestAttributes())
}
minimize() // This will only allow shading for actually used classes
configurations = [project.configurations.shadowImplementation]
dependsOn(relocateShadowJar)
}
jar {
manifest {
attributes(getManifestAttributes())
}
if(usesShadowedDependencies.toBoolean()) {
dependsOn(shadowJar)
enabled = false
}
}
reobf {
if(usesMixins.toBoolean()) {
addExtraSrgFile mixinSrg
}
}
afterEvaluate {
if(usesMixins.toBoolean()) {
tasks.compileJava {
options.compilerArgs += [
"-AreobfSrgFile=${tasks.reobf.srg}",
"-AoutSrgFile=${mixinSrg}",
"-AoutRefMapFile=${refMap}",
// Elan: from what I understand they are just some linter configs so you get some warning on how to properly code
"-XDenableSunApiLintControl",
"-XDignore.symbol.file"
]
}
}
}
runClient {
def arguments = []
if(usesMixins.toBoolean()) {
arguments += [
"--mods=../build/libs/$modId-${version}.jar",
"--tweakClass org.spongepowered.asm.launch.MixinTweaker"
]
}
if(developmentEnvironmentUserName) {
arguments += [
"--username",
developmentEnvironmentUserName
]
}
args(arguments)
}
runServer {
def arguments = []
if (usesMixins.toBoolean()) {
arguments += [
"--mods=../build/libs/$modId-${version}.jar",
"--tweakClass org.spongepowered.asm.launch.MixinTweaker"
]
}
args(arguments)
}
tasks.withType(JavaExec).configureEach {
javaLauncher.set(
javaToolchains.launcherFor {
languageVersion = projectJavaVersion
}
)
}
processResources
{
// this will ensure that this task is redone when the versions change.
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
// replace version and mcversion
expand "minecraftVersion": project.minecraft.version,
"modVersion": versionDetails().lastTag,
"modId": modId,
"modName": modName
}
if(usesMixins.toBoolean()) {
from refMap
}
// copy everything else, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
def getManifestAttributes() {
def manifestAttributes = [:]
if(containsMixinsAndOrCoreModOnly.toBoolean() == false && (usesMixins.toBoolean() || coreModClass)) {
manifestAttributes += ["FMLCorePluginContainsFMLMod": true]
}
if(accessTransformersFile) {
manifestAttributes += ["FMLAT" : accessTransformersFile.toString()]
}
if(coreModClass) {
manifestAttributes += ["FMLCorePlugin": modGroup + "." + coreModClass]
}
if(usesMixins.toBoolean()) {
manifestAttributes += [
"TweakClass" : "org.spongepowered.asm.launch.MixinTweaker",
"MixinConfigs" : "mixins." + modId + ".json",
"ForceLoadAsMod" : containsMixinsAndOrCoreModOnly.toBoolean() == false
]
}
return manifestAttributes
}
task sourcesJar(type: Jar) {
from (sourceSets.main.allJava)
from (file("$projectDir/LICENSE"))
getArchiveClassifier().set('sources')
}
task shadowDevJar(type: ShadowJar) {
from sourceSets.main.output
getArchiveClassifier().set("dev")
manifest {
attributes(getManifestAttributes())
}
minimize() // This will only allow shading for actually used classes
configurations = [project.configurations.shadowImplementation]
}
task relocateShadowDevJar(type: ConfigureShadowRelocation) {
target = tasks.shadowDevJar
prefix = modGroup + ".shadow"
}
task circularResolverJar(type: Jar) {
dependsOn(relocateShadowDevJar)
dependsOn(shadowDevJar)
enabled = false
}
task devJar(type: Jar) {
from sourceSets.main.output
getArchiveClassifier().set("dev")
manifest {
attributes(getManifestAttributes())
}
if(usesShadowedDependencies.toBoolean()) {
dependsOn(circularResolverJar)
enabled = false
}
}
task apiJar(type: Jar) {
from (sourceSets.main.allJava) {
include modGroup.toString().replaceAll("\\.", "/") + "/" + apiPackage.toString().replaceAll("\\.", "/") + '/**'
}
from (sourceSets.main.output) {
include modGroup.toString().replaceAll("\\.", "/") + "/" + apiPackage.toString().replaceAll("\\.", "/") + '/**'
}
from (sourceSets.main.resources.srcDirs) {
include("LICENSE")
}
getArchiveClassifier().set('api')
}
artifacts {
archives sourcesJar
archives devJar
if(apiPackage) {
archives apiJar
}
}
// Updating
task updateBuildScript {
doLast {
if (performBuildScriptUpdate(projectDir.toString())) return
print("Build script already up-to-date!")
}
}
if (isNewBuildScriptVersionAvailable(projectDir.toString())) {
if (autoUpdateBuildScript.toBoolean()) {
performBuildScriptUpdate(projectDir.toString())
} else {
println("Build script update available! Run 'gradle updateBuildScript'")
}
}
static URL availableBuildScriptUrl() {
new URL("https://raw.githubusercontent.com/SinTh0r4s/ExampleMod1.7.10/main/build.gradle")
}
boolean performBuildScriptUpdate(String projectDir) {
if (isNewBuildScriptVersionAvailable(projectDir)) {
def buildscriptFile = getFile("build.gradle")
availableBuildScriptUrl().withInputStream { i -> buildscriptFile.withOutputStream { it << i } }
print("Build script updated. Please REIMPORT the project or RESTART your IDE!")
return true
}
return false
}
boolean isNewBuildScriptVersionAvailable(String projectDir) {
Map parameters = ["connectTimeout": 2000, "readTimeout": 2000]
String currentBuildScript = getFile("build.gradle").getText()
String currentBuildScriptHash = getVersionHash(currentBuildScript)
String availableBuildScript = availableBuildScriptUrl().newInputStream(parameters).getText()
String availableBuildScriptHash = getVersionHash(availableBuildScript)
boolean isUpToDate = currentBuildScriptHash.empty || availableBuildScriptHash.empty || currentBuildScriptHash == availableBuildScriptHash
return !isUpToDate
}
static String getVersionHash(String buildScriptContent) {
String versionLine = buildScriptContent.find("^//version: [a-z0-9]*")
if(versionLine != null) {
return versionLine.split(": ").last()
}
return ""
}
configure(updateBuildScript) {
group = 'forgegradle'
description = 'Updates the build script to the latest version'
}
// Helper methods
def checkPropertyExists(String propertyName) {
if (project.hasProperty(propertyName) == false) {
throw new GradleException("This project requires a property \"" + propertyName + "\"! Please add it your \"gradle.properties\". You can find all properties and their description here: https://github.com/SinTh0r4s/ExampleMod1.7.10/blob/main/gradle.properties")
}
}
def getFile(String relativePath) {
return new File(projectDir, relativePath)
}
+16
View File
@@ -0,0 +1,16 @@
// Add your dependencies here
dependencies {
compile("com.github.GTNewHorizons:ForestryMC:master-SNAPSHOT:dev")
/*compileOnly("net.industrial-craft:industrialcraft-2:2.2.828-experimental:api") { // Transitive by ForestryMC
transitive = false
}
compileOnly("com.mod-buildcraft:buildcraft:7.1.23:dev") { // Transitive by ForestryMC
transitive = false
}
compileOnly("curse.maven:cofh-lib-220333:2388748") { // Transitive by ForestryMC
transitive = false
}*/
}
+64
View File
@@ -0,0 +1,64 @@
modName = Binnie Core
# This is a case-sensitive string to identify your mod. Convention is to use lower case.
modId = BinnieCore
modGroup = binnie
# WHY is there no version field?
# The build script relies on git to provide a version via tags. It is super easy and will enable you to always know the
# code base or your binary. Check out this tutorial: https://blog.mattclemente.com/2017/10/13/versioning-with-git-tags/
# Will update your build.gradle automatically whenever an update is available
autoUpdateBuildScript = false
minecraftVersion = 1.7.10
forgeVersion = 10.13.4.1614
# Select a username for testing your mod with breakpoints. You may leave this empty for a random user name each time you
# restart Minecraft in development. Choose this dependent on your mod:
# Do you need consistent player progressing (for example Thaumcraft)? -> Select a name
# Do you need to test how your custom blocks interacts with a player that is not the owner? -> leave name empty
developmentEnvironmentUserName = "Developer"
# Define a source file of your project with:
# public static final String VERSION = "GRADLETOKEN_VERSION";
# The string's content will be replaced with your mods version when compiled. You should use this to specify your mod's
# version in @Mod([...], version = VERSION, [...])
# Leave these properties empty to skip individual token replacements
replaceGradleTokenInFile =
gradleTokenModId =
gradleTokenModName =
gradleTokenVersion =
gradleTokenGroupName =
# In case your mod provides an API for other mods to implement you may declare its package here. Otherwise you can
# leave this property empty.
# Example value: apiPackage = api + modGroup = com.myname.mymodid -> com.myname.mymodid.api
apiPackage =
# Specify the configuration file for Forge's access transformers here. I must be placed into /src/main/resources/META-INF/
# Example value: mymodid_at.cfg
accessTransformersFile =
# Provides setup for Mixins if enabled. If you don't know what mixins are: Keep it disabled!
usesMixins = false
# Specify the location of your implementation of IMixinConfigPlugin. Leave it empty otherwise.
mixinPlugin =
# Specify the package that contains all of your Mixins. You may only place Mixins in this package or the build will fail!
mixinsPackage =
# Specify the core mod entry class if you use a core mod. This class must implement IFMLLoadingPlugin!
# This parameter is for legacy compatability only
# Example value: coreModClass = asm.FMLPlugin + modGroup = com.myname.mymodid -> com.myname.mymodid.asm.FMLPlugin
coreModClass =
# If your project is only a consolidation of mixins or a core mod and does NOT contain a 'normal' mod ( = some class
# that is annotated with @Mod) you want this to be true. When in doubt: leave it on false!
containsMixinsAndOrCoreModOnly = false
# If enabled, you may use 'shadowImplementation' for dependencies. They will be integrated in your jar. It is your
# responsibility check the licence and request permission for distribution, if required.
usesShadowedDependencies = false
# Optional parameter to customize the produced artifacts. Use this to preserver artifact naming when migrating older
# projects. New projects should not use this parameter.
customArchiveBaseName = binnie-mods
Binary file not shown.
+1 -2
View File
@@ -1,6 +1,5 @@
#Wed Jul 02 15:54:47 CDT 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.9.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.0-bin.zip
Vendored
+77 -53
View File
@@ -1,4 +1,20 @@
#!/usr/bin/env bash
#!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
##############################################################################
##
@@ -6,47 +22,6 @@
##
##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
echo "$*"
}
die ( ) {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
esac
# For Cygwin, ensure paths are in UNIX format before anything is touched.
if $cygwin ; then
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
fi
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
@@ -61,9 +36,49 @@ while [ -h "$PRG" ] ; do
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >&-
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >&-
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
@@ -90,7 +105,7 @@ location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
@@ -110,10 +125,11 @@ if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
@@ -154,11 +170,19 @@ if $cygwin ; then
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
APP_ARGS=$(save "$@")
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "$@"
Vendored
+100 -90
View File
@@ -1,90 +1,100 @@
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windowz variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
+2
View File
@@ -0,0 +1,2 @@
before_install:
- ./gradlew setupCIWorkspace
Binary file not shown.
Binary file not shown.
Binary file not shown.
+18
View File
@@ -0,0 +1,18 @@
// Add any additional repositories for your dependencies here
repositories {
maven {
name = "ic2"
url = "http://maven.ic2.player.to/"
metadataSources {
mavenPom()
artifact()
}
}
maven {
url "https://cursemaven.com"
}
maven {
url = "https://jitpack.io"
}
}
@@ -74,12 +74,8 @@ public class TileEntityMetadata extends TileEntity {
}
public static ItemStack getItemStack(Block block, int damage) {
NBTTagCompound tag = new NBTTagCompound();
tag.setInteger("meta", damage);
ItemStack item = new ItemStack(block, 1, 0);
item.setItemDamage((damage < 16387) ? damage : 16387);
item.setTagCompound(tag);
item.setItemDamage(Math.min(damage, 16387));
return item;
}
@@ -1,5 +1,6 @@
package binnie.extrabees.genetics.requirements;
import forestry.api.core.IClimateProvider;
import forestry.api.genetics.IAllele;
import forestry.api.genetics.IGenome;
import forestry.api.genetics.IMutationCondition;
@@ -13,7 +14,7 @@ public class DummyMutationCondition implements IMutationCondition {
}
@Override
public float getChance(World world, int x, int y, int z, IAllele allele0, IAllele allele1, IGenome genome0, IGenome genome1) {
public float getChance(World world, int x, int y, int z, IAllele allele0, IAllele allele1, IGenome genome0, IGenome genome1, IClimateProvider climate) {
return 1.0F;
}
@@ -17,7 +17,7 @@ import net.minecraft.world.World;
public class ItemETDoor extends ItemMetadata {
public ItemETDoor(Block block) {
super(block);
maxStackSize = 1;
maxStackSize = 8;
setCreativeTab(CreativeTabs.tabRedstone);
}
@@ -1,6 +1,5 @@
package binnie.extratrees.block.decor;
import binnie.core.Mods;
import binnie.core.block.BlockMetadata;
import binnie.core.block.IBlockMetadata;
import binnie.core.block.TileEntityMetadata;
@@ -19,7 +18,6 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
@@ -41,15 +39,6 @@ public class BlockFence extends net.minecraft.block.BlockFence implements IBlock
setStepSound(Block.soundTypeWood);
}
public static boolean canConnect(Block block) {
return block == ((ItemBlock) Mods.forestry.item("fences")).field_150939_a
|| block == Blocks.fence
|| block == Blocks.fence_gate
|| block == Blocks.nether_brick_fence
|| block instanceof IBlockFence
|| block == ExtraTrees.blockGate;
}
@Override
public void getSubBlocks(Item item, CreativeTabs tab, List list) {
for (IFenceProvider type : PlankType.ExtraTreePlanks.values()) {
@@ -146,16 +135,10 @@ public class BlockFence extends net.minecraft.block.BlockFence implements IBlock
@Override
public boolean canConnectFenceTo(IBlockAccess world, int x, int y, int z) {
if (!isFence(world, x, y, z)) {
Block block = world.getBlock(x, y, z);
return block != null && block.getMaterial().isOpaque() && block.renderAsNormalBlock();
}
return true;
}
public boolean isFence(IBlockAccess world, int x, int y, int z) {
Block block = world.getBlock(x, y, z);
return canConnect(block);
Material material = block.getMaterial();
return IBlockFence.isFence(block) && material == this.blockMaterial
|| material.isOpaque() && block.renderAsNormalBlock() && material != Material.gourd;
}
@Override
@@ -191,6 +174,13 @@ public class BlockFence extends net.minecraft.block.BlockFence implements IBlock
}
@Override
//@SideOnly(Side.CLIENT)
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z) {
return BlockMetadata.getPickBlock(world, x, y, z);
}
@Override
//@SideOnly(Side.CLIENT)
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z, EntityPlayer player) {
return BlockMetadata.getPickBlock(world, x, y, z);
}
@@ -137,6 +137,13 @@ public class BlockGate extends BlockFenceGate implements IBlockMetadata {
}
@Override
//@SideOnly(Side.CLIENT)
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z) {
return BlockMetadata.getPickBlock(world, x, y, z);
}
@Override
//@SideOnly(Side.CLIENT)
public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z, EntityPlayer player) {
return BlockMetadata.getPickBlock(world, x, y, z);
}
@@ -29,10 +29,6 @@ public class BlockHedge extends Block implements IBlockFence {
setBlockName("hedge");
}
public static boolean func_149825_a(Block block) {
return BlockFence.canConnect(block);
}
public static int getColor(int meta) {
LeafType type = LeafType.values()[meta % 6];
if (type == LeafType.CONIFER) {
@@ -130,11 +126,11 @@ public class BlockHedge extends Block implements IBlockFence {
return ModuleBlocks.hedgeRenderID;
}
@Override
public boolean canConnectFenceTo(IBlockAccess world, int x, int y, int z) {
Block block = world.getBlock(x, y, z);
return block == this
|| block == Blocks.fence_gate
|| func_149825_a(block)
|| IBlockFence.isFence(block)
|| block.isLeaves(world, x, y, z)
|| (block.getMaterial().isOpaque() && block.renderAsNormalBlock() && block.getMaterial() != Material.gourd);
}
@@ -1,4 +1,26 @@
package binnie.extratrees.block.decor;
import binnie.core.Mods;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFence;
import net.minecraft.block.BlockFenceGate;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemBlock;
import net.minecraft.world.IBlockAccess;
public interface IBlockFence {
/**
* Test if the specified block is a fence
*
* @param block the block to test
* @return {@code true} if the specified block is a fence
*/
static boolean isFence(Block block) {
return block == ((ItemBlock) Mods.forestry.item("fences")).field_150939_a
|| block instanceof BlockFence && block != Blocks.nether_brick_fence
|| block instanceof BlockFenceGate;
}
boolean canConnectFenceTo(IBlockAccess world, int x, int y, int z);
}
@@ -213,7 +213,7 @@ public enum ButterflySpecies implements IAlleleButterflySpecies {
if (itemstack.getItem() == Mods.forestry.item("honeydew")) {
return 0.7f;
}
if (itemstack.getItem() == Mods.forestry.item("beeComb")) {
if (itemstack.getItem() == Mods.forestry.item("beeCombs")) {
return 0.4f;
}
if (AlleleManager.alleleRegistry.isIndividual(itemstack)) {
@@ -375,7 +375,7 @@ public enum ExtraTreeFruitGene implements IAlleleFruit, IFruitProvider {
float modeYieldMod = 1.0f;
for (Map.Entry<ItemStack, Float> entry2 : products.entrySet()) {
if (world.rand.nextFloat() <= genome.getYield() * modeYieldMod * entry2.getValue() * 5.0f * stage) {
if (world.rand.nextFloat() <= genome.getYield() * modeYieldMod * entry2.getValue() * stage) {
product2.add(entry2.getKey().copy());
}
}
@@ -1347,7 +1347,7 @@ public enum ExtraTreeSpecies implements IAlleleTreeSpecies, IIconProvider, IGerm
if (itemstack.getItem() == Mods.forestry.item("honeydew")) {
return 0.7f;
}
if (itemstack.getItem() == Mods.forestry.item("beeComb")) {
if (itemstack.getItem() == Mods.forestry.item("beeCombs")) {
return 0.4f;
}
if (AlleleManager.alleleRegistry.isIndividual(itemstack)) {
@@ -53,7 +53,7 @@ public class AnalystPageDatabase extends ControlAnalystPage {
Collection<IAlleleSpecies> options = new ArrayList<>();
getSpecies(system);
for (IAlleleSpecies species : getSpecies(system)) {
if (value != null && value.isEmpty() && !species.getName().toLowerCase().contains(value.toLowerCase())) {
if (value != null && !value.isEmpty() && !species.getName().toLowerCase().contains(value.toLowerCase())) {
continue;
}
options.add(species);
@@ -2,14 +2,14 @@ botany.tab.botany=Binnie|花卉
botany.pigmentedGlass=染色玻璃
botany.ceramicBlock=陶瓷块
botany.ceramicTile=陶瓷瓦砖
botany.ceramicTile=瓷砖
botany.ceramicBricks=陶瓷砖块
botany.strippedCeramicBricks=条纹陶瓷砖块
botany.largeCeramicBricks=大型陶瓷瓦砖
botany.splitCeramicTile=匀称陶瓷瓦砖
botany.chequeredCeramicTile=方格陶瓷瓦砖
botany.mixedCeramicTile=混合风格陶瓷瓦砖
botany.verticalCeramicBricks=竖纹陶瓷瓦砖
botany.largeCeramicBricks=大型瓷砖
botany.splitCeramicTile=匀称瓷砖
botany.chequeredCeramicTile=方格瓷砖
botany.mixedCeramicTile=混合风格瓷砖
botany.verticalCeramicBricks=竖纹瓷砖
botany.verticalStripedCeramicBricks=竖状条纹陶瓷砖块
botany.largeVerticalCeramicBricks=竖纹大型陶瓷砖块
@@ -1,14 +1,429 @@
extratrees.machine.machine.press.info=The Press squeezes fruit to give various fruit juices. It can be powered or run manually by right clicking.
extratrees.machine.machine.lumbermill.info=The Lumbermill converts logs into planks at an increased rate, as well as giving by-products such as sawdust and bark.
extratrees.machine.kitchen.bar=Bar
extratrees.machine.kitchen.bottleRack=Bottle Rack
extratrees.machine.machine.brewery=Brewery
extratrees.machine.machine.brewery.info=The Brewery uses yeasts, juices and grains to make many kinds of Wines and Beers.
extratrees.machine.machine.distillery=Distillery
extratrees.machine.machine.distillery.info=The Distillery can single, double or triple distill certain alcohols to give brandies, liquors and other spirits.
extratrees.machine.machine.nursery=Nursery
extratrees.machine.machine.press=Fruit Press
extratrees.machine.machine.press.info=The Press squeezes fruit to give various fruit juices. It can be powered or run manually by right clicking.
extratrees.machine.machine.lumbermill=Lumbermill
extratrees.machine.machine.lumbermill.info=The Lumbermill converts logs into planks at an increased rate, as well as giving by-products such as sawdust and bark.
extratrees.machine.lumbermill.logs=Logs
extratrees.machine.lumbermill.error.noWood=No Wood
extratrees.machine.lumbermill.error.noRoom=No room for new planks
extratrees.machine.lumbermill.error.noWater=Not Enough Water
extratrees.machine.machine.woodworker=Woodworker
extratrees.machine.machine.woodworker.info=The Woodworker creates patterned wooden tiles from two different woods.
extratrees.machine.woodworker.material=Wooden Plank
extratrees.machine.machine.panelworker=Panelworker
extratrees.machine.machine.panelworker.info=The Panelworker creates patterned wooden panels from two different woods.
extratrees.machine.panelworker.material=Wooden Plank
extratrees.machine.machine.glassworker=Glassworker
extratrees.machine.machine.glassworker.info=The Glassworker creates patterned stained glass.
extratrees.machine.glassworker.material=Glass
extratrees.machine.machine.tileworker=Tileworker
extratrees.machine.machine.tileworker.info=The Tileworker creates patterned ceramic tiles.
extratrees.machine.tileworker.material=Ceramic Block
extratrees.machine.worker.error.glueRequired=Requires Adhesive to Function
extratrees.block.planks.fir=Fir
extratrees.block.planks.cedar=Cedar
extratrees.block.planks.hemlock=Hemlock
extratrees.block.planks.cypress=Cypress
extratrees.block.planks.fig=Fig
extratrees.block.planks.beech=Beech
extratrees.block.planks.alder=Alder
extratrees.block.planks.hazel=Hazel
extratrees.block.planks.hornbeam=Hornbeam
extratrees.block.planks.box=Box
extratrees.block.planks.butternut=Butternut
extratrees.block.planks.hickory=Hickory
extratrees.block.planks.whitebeam=Whitebeam
extratrees.block.planks.elm=Elm
extratrees.block.planks.apple=Apple
extratrees.block.planks.yew=Yew
extratrees.block.planks.pear=Pear
extratrees.block.planks.hawthorn=Hawthorn
extratrees.block.planks.rowan=Rowan
extratrees.block.planks.elder=Elder
extratrees.block.planks.maclura=Maclura
extratrees.block.planks.syzgium=Syzgium
extratrees.block.planks.brazilwood=Brazilwood
extratrees.block.planks.logwood=Logwood
extratrees.block.planks.iroko=Iroko
extratrees.block.planks.locust=Locust
extratrees.block.planks.eucalyptus=Eucalyptus
extratrees.block.planks.purpleheart=Purpleheart
extratrees.block.planks.ash=Ash
extratrees.block.planks.holly=Holly
extratrees.block.planks.olive=Olive
extratrees.block.planks.sweetgum=Sweetgum
extratrees.block.planks.rosewood=Rosewood
extratrees.block.planks.gingko=Gingko
extratrees.block.planks.pinkivory=Pink Ivory
extratrees.block.planks.cherry=Cherry
extratrees.block.planks.banana=Banana
extratrees.block.planks.cinnamon=Cinnamon
extratrees.block.planks.vanilla.oak=Oak
extratrees.block.planks.vanilla.spruce=Spruce
extratrees.block.planks.vanilla.birch=Birch
extratrees.block.planks.vanilla.jungle=Jungle
extratrees.block.planks.vanilla.darkoak=Dark Oak
extratrees.block.planks.vanilla.acacia=Acacia
extratrees.block.planks.forestry.larch=Larch
extratrees.block.planks.forestry.teak=Teak
extratrees.block.planks.forestry.acacia=Desert Acacia
extratrees.block.planks.forestry.lime=Lime
extratrees.block.planks.forestry.chestnut=Chestnut
extratrees.block.planks.forestry.wenge=Wenge
extratrees.block.planks.forestry.baobab=Baobab
extratrees.block.planks.forestry.sequoia=Sequoia
extratrees.block.planks.forestry.kapok=Kapok
extratrees.block.planks.forestry.ebony=Ebony
extratrees.block.planks.forestry.mahogany=Mahogany
extratrees.block.planks.forestry.balsa=Balsa
extratrees.block.planks.forestry.willow=Willow
extratrees.block.planks.forestry.walnut=Walnut
extratrees.block.planks.forestry.greenheart=Greenheart
extratrees.block.planks.forestry.cherry=Cherry
extratrees.block.planks.forestry.mahoe=Mahoe
extratrees.block.planks.forestry.poplar=Poplar
extratrees.block.planks.forestry.palm=Palm
extratrees.block.planks.forestry.papaya=Papaya
extratrees.block.planks.forestry.pine=Pine
extratrees.block.planks.forestry.plum=Plum
extratrees.block.planks.forestry.maple=Maple
extratrees.block.planks.forestry.citrus=Citrus
extratrees.block.planks.forestry.giganteum=Giant Sequoia
extratrees.block.planks.forestry.ipe=Ipe
extratrees.block.planks.forestry.padauk=Padauk
extratrees.block.planks.forestry.cocobolo=Cocobolo
extratrees.block.planks.forestry.zebrawood=Zebrawood
extratrees.block.planks.ebxl.redwood=Redwood
extratrees.block.planks.ebxl.fir=Scottish Fir
extratrees.block.planks.ebxl.acacia=Excel Acacia
extratrees.block.planks.fir.desc=A good sturdy conifer wood.|Lumber Jack
extratrees.block.planks.cedar.desc=A red tinged softwood.|Lumber Jack
extratrees.block.planks.hemlock.desc=Hemlock gives a green hued conifer wood.|Lumber Jack
extratrees.block.planks.cypress.desc=A conifer wood with a sligh yellow colouring.|Lumber Jack
extratrees.block.planks.fig.desc=Generally not considered a viable construction wood, nonetheless a useful wood.|Lumber Jack
extratrees.block.planks.beech.desc=A slightly lighter wood, pretty average.|Lumber Jack
extratrees.block.planks.alder.desc=A darker hardwood, doesn't have many discerning properties.|Lumber Jack
extratrees.block.planks.hazel.desc=A lovely pale wood, similar in colour to Birch.|Lumber Jack
extratrees.block.planks.hornbeam.desc=Another average wood, without many interesting properties.|Lumber Jack
extratrees.block.planks.box.desc=One of the palest woods avaiable, but only found on the short box shrub.|Lumber Jack
extratrees.block.planks.butternut.desc=A creamy hued wood, though the tree is more known for its nuts.|Lumber Jack
extratrees.block.planks.hickory.desc=A not particularly remarkable hardwood.|Lumber Jack
extratrees.block.planks.whitebeam.desc=Despite it's name whitebeam has a rather subdued colour.|Lumber Jack
extratrees.block.planks.elm.desc=A rather brigh peachy wood.|Lumber Jack
extratrees.block.planks.apple.desc=A very dark wood, making apple trees a very useful cultivar.|Lumber Jack
extratrees.block.planks.yew.desc=A rather attractively hued conifer wood.|Lumber Jack
extratrees.block.planks.pear.desc=Unlike Apple wood, pear wood is not particularly unique.|Lumber Jack
extratrees.block.planks.hawthorn.desc=An average softwood.|Lumber Jack
extratrees.block.planks.rowan.desc=A more subdued wood with nice contrast between the planks.|Lumber Jack
extratrees.block.planks.elder.desc=A average plank without much fanfare.|Lumber Jack
extratrees.block.planks.maclura.desc=A very rich orange hue makes Maclura wood very desirable.|Lumber Jack
extratrees.block.planks.syzgium.desc=With a tinge of pink Syzgium is a very unique wood.|Lumber Jack
extratrees.block.planks.brazilwood.desc=Brazilwood is known for its deep purple shade.|Lumber Jack
extratrees.block.planks.logwood.desc=Logwood is one of the closest you can get to a red wood.|Lumber Jack
extratrees.block.planks.iroko.desc=This attractive dark wood would make a lovely lintel.|Lumber Jack
extratrees.block.planks.locust.desc=Totally unrelated to the devouring insect plague.|Lumber Jack
extratrees.block.planks.eucalyptus.desc=A pinkish wood, more commonly converted to wood pulp.|Lumber Jack
extratrees.block.planks.purpleheart.desc=A deep shade of purple makes this tree aptly named.|Lumber Jack
extratrees.block.planks.ash.desc=Gotta catch 'em all!|Ash Ketchum
extratrees.block.planks.holly.desc=The whitest wood available, just avoid the pointy leaves to get to it.|Lumber Jack
extratrees.block.planks.olive.desc=Coloured in the same way as its fruits, an attractive subdued green.|Lumber Jack
extratrees.block.planks.sweetgum.desc=Yet another average wood, but has a certain character.|Lumber Jack
extratrees.block.planks.rosewood.desc=Used to make chess pieces, this is another strongly hued wood.|Lumber Jack
extratrees.block.planks.gingko.desc=Similar to Boxwood, Gingko wood is very pale.|Lumber Jack
extratrees.block.planks.pinkivory.desc=What can I say. It's very pink.|Lumber Jack
extratrees.block.tooltip.twoColors=%s and %s
extratrees.block.tooltip.twoMaterials=%s and %s
extratrees.block.door.name=%1$s Wood Door
extratrees.block.door.name.adv=%2$s %1$s Wood Door
extratrees.block.door.type.standard=
extratrees.block.door.type.solid=Solid
extratrees.block.door.type.double=Split
extratrees.block.door.type.full=Full
extratrees.block.plank.name=%1$s Wood Planks
extratrees.block.log.name=%1$s Wood
extratrees.block.woodslab.name=%1$s Wood Slab
extratrees.block.woodstairs.name=%1$s Stairs
extratrees.block.woodfence.name=%1$s Fence
extratrees.block.woodgate.name=%1$s Gate
extratrees.block.multifence.name=%2$s %1$s Gate
extratrees.block.multifence.name2=%2$s %1$s & $3$s Gate
extratrees.block.woodentile.name=%1$s Wooden Tile
extratrees.block.woodenpanel.name=%1$s Wooden Panel
extratrees.block.stainedglass.name=%1$s Stained Glass
extratrees.species.orchardapple.name=Orchard Apple
extratrees.species.sweetcrabapple.name=Sweet Crab Apple
extratrees.species.floweringcrabapple.name=Flowering Crab Apple
extratrees.species.prairiecrabapple.name=Prairie Crab Apple
extratrees.species.blackthorn.name=Blackthorn
extratrees.species.cherryplum.name=Cherry Plum
extratrees.species.peach.name=Peach
extratrees.species.nectarine.name=Nectarine
extratrees.species.apricot.name=Apricot
extratrees.species.almond.name=Almond
extratrees.species.wildcherry.name=Wild Cherry
extratrees.species.sourcherry.name=Sour Cherry
extratrees.species.blackcherry.name=Black Cherry
extratrees.species.orange.name=Orange
extratrees.species.manderin.name=Mandarin
extratrees.species.satsuma.name=Satsuma
extratrees.species.tangerine.name=Tangerine
extratrees.species.lime.name=Lime
extratrees.species.keylime.name=Key Lime
extratrees.species.fingerlime.name=Finger Lime
extratrees.species.pomelo.name=Pomelo
extratrees.species.grapefruit.name=Grapefruit
extratrees.species.kumquat.name=Kumquat
extratrees.species.citron.name=Citron
extratrees.species.buddhahand.name=Buddha's Hand
extratrees.species.banana.name=Banana
extratrees.species.redbanana.name=Red Banana
extratrees.species.plantain.name=Plantain
extratrees.species.butternut.name=Butternut
extratrees.species.rowan.name=Common Rowan
extratrees.species.hemlock.name=Western Hemlock
extratrees.species.ash.name=Common Ash
extratrees.species.alder.name=Common Alder
extratrees.species.alder.desc=A common tree in wet places and marshes.|Arborist Manual
extratrees.species.beech.name=Common Beech
extratrees.species.beech.desc=An elegant tree with small inedible nuts, used in the manufacture of seed oil.|Arborist Manual
extratrees.species.copperbeech.name=Copper Beech
extratrees.species.copperbeech.desc=Beautiful purple brown leaves make this tree a favourite of gardeners.|Arborist Manual
extratrees.species.aspen.name=Aspen
extratrees.species.yew.name=Common Yew
extratrees.species.cypress.name=Lawson Cypress
extratrees.species.douglasfir.name=Douglas-fir
extratrees.species.hazel.name=Common Hazel
extratrees.species.sycamore.name=Sycamore Fig
extratrees.species.whitebeam.name=Whitebeam
extratrees.species.hawthorn.name=Common Hawthorn
extratrees.species.pecan.name=Pecan
extratrees.species.elm.name=Common Elm
extratrees.species.elder.name=Elderberry
extratrees.species.holly.name=Common Holly
extratrees.species.hornbeam.name=Common Hornbeam
extratrees.species.sallow.name=Great Sallow
extratrees.species.acornoak.name=Acorn Oak
extratrees.species.fir.name=Silver Fir
extratrees.species.cedar.name=Great Cedar
extratrees.species.olive.name=Olive
extratrees.species.redmaple.name=Red Maple
extratrees.species.balsamfir.name=Balsam Fir
extratrees.species.loblollypine.name=Loblolly Pine
extratrees.species.sweetgum.name=Sweetgum
extratrees.species.locust.name=Black Locust
extratrees.species.pear.name=Cultivated Pear
extratrees.species.osangeosange.name=Osage-Orange
extratrees.species.oldfustic.name=Old Fustic
extratrees.species.brazilwood.name=Brazilwood
extratrees.species.logwood.name=Logwood
extratrees.species.rosewood.name=Rosewood
extratrees.species.purpleheart.name=Purpleheart
extratrees.species.iroko.name=Iroko
extratrees.species.gingko.name=Ginkgo
extratrees.species.brazilnut.name=Brazil Nut
extratrees.species.rosegum.name=Rose Gum
extratrees.species.swampgum.name=Swamp Gum
extratrees.species.box.name=Boxwood
extratrees.species.clove.name=Clove
extratrees.species.coffee.name=Coffee
extratrees.species.monkeypuzzle.name=Monkey Puzzle
extratrees.species.rainbowgum.name=Rainbow Gum
extratrees.species.pinkivory.name=Pink Ivory
extratrees.species.blackcurrant.name=Blackcurrant
extratrees.species.redcurrant.name=Redcurrant
extratrees.species.blackberry.name=Blackberry
extratrees.species.raspberry.name=Raspberry
extratrees.species.blueberry.name=Blueberry
extratrees.species.cranberry.name=Cranberry
extratrees.species.juniper.name=Juniper
extratrees.species.gooseberry.name=Gooseberry
extratrees.species.goldenraspberry.name=Golden Raspberry
extratrees.species.cinnamon.name=Cinnamon
extratrees.species.coconut.name=Coconut
extratrees.species.cashew.name=Cashew
extratrees.species.avacado.name=Avocado
extratrees.species.nutmeg.name=Nutmeg
extratrees.species.allspice.name=Allspice
extratrees.species.chilli.name=Chilli Pepper
extratrees.species.staranise.name=Star Anise
extratrees.species.mango.name=Mango
extratrees.species.starfruit.name=Starfruit
extratrees.species.candlenut.name=Candlenut
extratrees.species.dwarfhazel.name=Dwarf Hazel
extratrees.item.food.crabapple=Crab Apple
extratrees.item.food.buddhahand=Buddha’s Hand
extratrees.item.food.manderin=Mandarin
extratrees.item.food.avacado=Avocado
extratrees.butterflies.species.whiteAdmiral=White Admiral
extratrees.butterflies.species.purpleEmperor=Purple Emperor
extratrees.butterflies.species.redAdmiral=Red Admiral
extratrees.butterflies.species.paintedLady=Painted Lady
extratrees.butterflies.species.smallTortoiseshell=Small Tortoiseshell
extratrees.butterflies.species.camberwellBeauty=Camberwell Beauty
extratrees.butterflies.species.peacock=Peacock
extratrees.butterflies.species.wall=Wall
extratrees.butterflies.species.crimsonRose=Crimson Rose
extratrees.butterflies.species.kaiserIHind=Kaiser-i-Hind
extratrees.butterflies.species.goldenBirdwing=Golden Birdwing
extratrees.butterflies.species.marshFritillary=Marsh Fritillary
extratrees.butterflies.species.pearlBorderedFritillary=Pearl-bordered Fritillary
extratrees.butterflies.species.queenOfSpainFritillary=Queen of Spain Fritillary
extratrees.butterflies.species.speckledWood=Speckled Wood
extratrees.butterflies.species.scotchAngus=Scotch Angus
extratrees.butterflies.species.gatekeeper=Gatekeeper
extratrees.butterflies.species.meadowBrown=Meadow Brown
extratrees.butterflies.species.smallHeath=Small Heath
extratrees.butterflies.species.ringlet=Ringlet
extratrees.butterflies.species.monarch=Monarch
extratrees.butterflies.species.marbledWhite=Marbled White
extratrees.genetics.requirements.height=Minimum height from bedrock of %d
extratrees.genetics.unknown=<Unknown>
extratrees.genetics.discoveredBy=Discovered by %s
extratrees.genetics.complexity=Complexity: %d
extratrees.item.carpentryHammer=Master Carpentry Hammer
extratrees.item.masterCarpentryHammer=Carpentry Hammer
extratrees.item.sawdust=Sawdust
extratrees.item.bark=Bark
extratrees.item.provenGear=Proven Gear
extratrees.item.woodWax=Wood Polish
extratrees.item.glassFitting=Glass Fittings
for.extratrees.item.food.apple=Apple
for.extratrees.item.food.crabapple=Crabapple
for.extratrees.item.food.orange=Orange
for.extratrees.item.food.kumquat=Kumquat
for.extratrees.item.food.lime=Lime
for.extratrees.item.food.wildcherry=Wild Cherry
for.extratrees.item.food.sourcherry=Sour Cherry
for.extratrees.item.food.blackcherry=Black Cherry
for.extratrees.item.food.blackthorn=Blackthorn
for.extratrees.item.food.cherryplum=Cherry Plum
for.extratrees.item.food.almond=Almond
for.extratrees.item.food.apricot=Apricot
for.extratrees.item.food.grapefruit=Grapefruit
for.extratrees.item.food.peach=Peach
for.extratrees.item.food.satsuma=Satsuma
for.extratrees.item.food.buddhahand=Buddhas Hand
for.extratrees.item.food.citron=Citron
for.extratrees.item.food.fingerlime=Finger Lime
for.extratrees.item.food.keylime=Key Lime
for.extratrees.item.food.manderin=Manderin
for.extratrees.item.food.nectarine=Nectarine
for.extratrees.item.food.pomelo=Pomelo
for.extratrees.item.food.tangerine=Tangerine
for.extratrees.item.food.pear=Pear
for.extratrees.item.food.sandpear=Sand Pear
for.extratrees.item.food.hazelnut=Hazelnut
for.extratrees.item.food.butternut=Butternut
for.extratrees.item.food.beechnut=Beechnut
for.extratrees.item.food.pecan=Pecan Nut
for.extratrees.item.food.banana=Banana
for.extratrees.item.food.redbanana=Red Banana
for.extratrees.item.food.plantain=Plantain
for.extratrees.item.food.brazilnut=Brazil Nut
for.extratrees.item.food.fig=Fig
for.extratrees.item.food.acorn=Acorn
for.extratrees.item.food.elderberry=Elderberry
for.extratrees.item.food.olive=Olive
for.extratrees.item.food.gingkonut=Gingko Nut
for.extratrees.item.food.coffee=Coffee
for.extratrees.item.food.osangeosange=Osange Orange
for.extratrees.item.food.osangeorange=Osange Orange
for.extratrees.item.food.clove=Clove
for.extratrees.item.food.papayimar=Papayimar
for.extratrees.item.food.blackcurrant=Blackcurrant
for.extratrees.item.food.redcurrant=Redcurrant
for.extratrees.item.food.blackberry=Blackberry
for.extratrees.item.food.raspberry=Raspberry
for.extratrees.item.food.blueberry=Blueberry
for.extratrees.item.food.cranberry=Cranberry
for.extratrees.item.food.juniper=Juniper
for.extratrees.item.food.gooseberry=Gooseberry
for.extratrees.item.food.goldenraspberry=Golden Raspberry
for.extratrees.item.food.coconut=Coconut
for.extratrees.item.food.cashew=Cashew
for.extratrees.item.food.avacado=Avacado
for.extratrees.item.food.nutmeg=Nutmeg
for.extratrees.item.food.allspice=Allspice
for.extratrees.item.food.chilli=Chilli
for.extratrees.item.food.staranise=Star Anise
for.extratrees.item.food.mango=Mango
for.extratrees.item.food.starfruit=Starfruit
for.extratrees.item.food.candlenut=Candlenut
extratrees.item.database=Arborist Database
extratrees.item.masterDatabase=Master Arborist Database
extratrees.item.database.tooltip=Sengir-in-a-can
extratrees.item.mothDatabase=Lepidopterist Database
extratrees.item.mothMasterDatabase=Master Lepidopterist Database
extratrees.item.mothDatabase.tooltip=Binnie's Emporium of Lepidopterans
extratrees.fluid.sap=Sap
extratrees.fluid.resin=Resin
extratrees.fluid.latex=Latex
extratrees.fluid.turpentine=Turpentine
extratrees.gui.database.planks.use=Can make:
extratrees.gui.database.mode.fruit=Fruit
extratrees.gui.database.mode.wood=Wood
extratrees.gui.database.mode.planks=Planks
extratrees.gui.database.tab.species.overview=Overview
extratrees.gui.database.tab.species.genome=Genome
extratrees.gui.database.tab.species.classification=Classification
extratrees.gui.database.tab.species.resultant=Resultant Mutations
extratrees.gui.database.tab.species.further=Further Mutations
extratrees.gui.database.tab.branches.overview=Overview
extratrees.gui.database.tab.branches.species=Species
extratrees.gui.database.tab.breeder.breeder=Breeder
extratrees.gui.database.tab.fruit.natural=Natural Trees
extratrees.gui.database.tab.fruit.natura.help=List of trees that naturally produce this fruit
extratrees.gui.database.tab.fruit.potential=Potential Trees
extratrees.gui.database.tab.fruit.potential.help=List of trees that can produce this fruit if they possess the right allele
extratrees.gui.database.tab.wood.natural=Natural Trees
extratrees.gui.database.tab.wood.natural.help=List of trees that are made of this wood
extratrees.gui.database.tab.planks.overview=Overview
extratrees.gui.database.tab.planks.overview.help=Description and possible uses
extratrees.gui.database.tab.planks.natural=Natural Trees
extratrees.gui.database.tab.planks.natural.help=List of trees that produce logs that can be crafted into this plank
extratrees.gui.database.tab.butterfly.species.overview=Overview
extratrees.gui.database.tab.butterfly.species.classification=Classification
extratrees.gui.database.tab.butterfly.species.specimen=Specimen
extratrees.gui.database.tab.butterfly.species.resultant=Resultant Mutations
extratrees.gui.database.tab.butterfly.species.further=Further Mutations
extratrees.gui.database.tab.butterfly.branches.overview=Overview
extratrees.gui.database.tab.butterfly.branches.species=Species
extratrees.gui.database.tab.butterfly.breeder=Breeder
extratrees.gui.database.log=Log
extratrees.gui.database.leaves=Leaves
@@ -359,6 +359,7 @@ for.extratrees.item.food.elderberry=Elderberry
for.extratrees.item.food.olive=Olive
for.extratrees.item.food.gingkonut=Gingko Nut
for.extratrees.item.food.coffee=Coffee
for.extratrees.item.food.osangeosange=Osange Orange
for.extratrees.item.food.osangeorange=Osange Orange
for.extratrees.item.food.clove=Clove
for.extratrees.item.food.papayimar=Papayimar
@@ -1,5 +1,3 @@
##################################################
## Machines
extratrees.machine.kitchen.bar=Бар
extratrees.machine.kitchen.bottleRack=Стойка для бутылок
@@ -8,9 +6,9 @@ extratrees.machine.machine.brewery=Пивоварня
extratrees.machine.machine.brewery.info=Пивоварня использует дрожжи (Yeast), соки (Juice) и зёрна (Grain), для производства разнообразных видов вина и пива.
extratrees.machine.machine.distillery=Винокурня
extratrees.machine.machine.distillery.info=Винокурня посредством двойной, тройной перегонки спирта производит коньяки, ликеры и другие спиртные напитки.
extratrees.machine.machine.nursery=Питомник
extratrees.machine.machine.press=Фруктовый пресс
extratrees.machine.machine.press.info=Фруктовый пресс выжимает из фруктов различные фруктовые соки. Требуется энергия, но может также работать вручную, по правой кнопке мыши.
extratrees.machine.machine.nursery=Питомник
extratrees.machine.machine.lumbermill=Лесопилка
extratrees.machine.machine.lumbermill.info=Лесопилка разрезает бревна на доски с повышенной скоростью, а также производит побочные продукты - опилки (sawdust) и кору (bark). Требуется энергия и вода.
@@ -37,7 +35,7 @@ extratrees.machine.tileworker.material=Керамический блок
extratrees.machine.worker.error.glueRequired=Требует клей для работы
#ДОСКИ мода EXTRATREES
# ДОСКИ мода EXTRATREES
extratrees.block.planks.fir=пихты
extratrees.block.planks.cedar=кедра
extratrees.block.planks.hemlock=тсуги
@@ -76,8 +74,7 @@ extratrees.block.planks.pinkivory=умнини
extratrees.block.planks.cherry=вишни
extratrees.block.planks.banana=банана
extratrees.block.planks.cinnamon=коричника цейлонского
#ДОСКИ "ВАНИЛЬНОГО" minecraft
# ДОСКИ "ВАНИЛЬНОГО" minecraft
extratrees.block.planks.vanilla.oak=дуба
extratrees.block.planks.vanilla.spruce=ели
extratrees.block.planks.vanilla.birch=берёзы
@@ -85,7 +82,7 @@ extratrees.block.planks.vanilla.jungle=тропического дерева
extratrees.block.planks.vanilla.darkoak=тёмного дуба
extratrees.block.planks.vanilla.acacia=акации
#ДОСКИ мода FORESTRY
# ДОСКИ мода FORESTRY
extratrees.block.planks.forestry.larch=лиственницы
extratrees.block.planks.forestry.teak=тикового дерева
extratrees.block.planks.forestry.acacia=пустынной акации
@@ -160,18 +157,14 @@ extratrees.block.planks.pinkivory.desc=Что я могу сказать, она
extratrees.block.tooltip.twoColors=%s и %s
extratrees.block.tooltip.twoMaterials=Из %s и %s
< %1$s is name of wood used for door >
extratrees.block.door.name=Дверь из %1$s
< %1$s is name of wood used for door, %2$s is type of door >
extratrees.block.door.name.adv=%2$s дверь из %1$s
extratrees.block.door.name.adv=%2$s дверь из %1$s
extratrees.block.door.type.standard=Обычная
extratrees.block.door.type.solid=Solid
extratrees.block.door.type.double=Разделенная
extratrees.block.door.type.full=Плотная
< %1$s is name of the wood>
extratrees.block.woodslab.name2=Составной деревянный забор %1$s
extratrees.block.plank.name=Доски из %1$s
extratrees.block.log.name=Древесина %1$s
extratrees.block.woodslab.name=Плита из %1$s
@@ -179,16 +172,12 @@ extratrees.block.woodstairs.name=Ступени из %1$s
extratrees.block.woodfence.name=Забор из %1$s
extratrees.block.woodgate.name=Калитка из %1$s
< %1$s is the adjective for the fence type, %2$s is the name of the wood >
extratrees.block.multifence.name=%1$s ворота из %2$s
< %3$s is the name of the second wood >
extratrees.block.multifence.name2=%2$s забор из %1$s и $3$s
< %1$s is name of the design >
extratrees.block.woodentile.name=Деревянный блок, дизайн %1$s
extratrees.block.woodenpanel.name=Деревянная панель, дизайн %1$s
extratrees.block.stainedglass.name=Витражное стекло, дизайн %1$s
extratrees.block.ceramicBrick.name=%1$s Керамические кирпичи
# ВИДЫ ДЕРЕВЬЕВ
extratrees.species.orchardapple.name=Яблоня садовая
@@ -317,17 +306,17 @@ extratrees.butterflies.species.marbledWhite=Буддлея Давида
extratrees.genetics.requirements.height=Минимальная высота от бедрока должна быть %d
extratrees.genetics.unknown=<Неизвестно>
extratrees.genetics.discoveredBy=Изучено игроком %s
extratrees.genetics.complexity=Сложность: %d
extratrees.genetics.discoveredBy=Изучено игроком %s
extratrees.genetics.complexity=Сложность: %d
extratrees.item.carpentryHammer=Master Carpentry Hammer
extratrees.item.masterCarpentryHammer=Carpentry Hammer
extratrees.item.sawdust=Опилки
extratrees.item.bark=Кора
extratrees.item.provenGear=Проверенная шестерня
extratrees.item.woodWax=Полироль
extratrees.item.glassFitting=Стеклянные фитинги
# ПРОДУКТЫ САДОВОДСТВА
for.extratrees.item.food.osangeosange=Плод маклюра
for.extratrees.item.food.apple=Яблоко
for.extratrees.item.food.crabapple=Яблоко-дичка
for.extratrees.item.food.orange=Апельсин
@@ -367,7 +356,9 @@ for.extratrees.item.food.elderberry=Бузина
for.extratrees.item.food.olive=Олива
for.extratrees.item.food.gingkonut=Семена Гинкго
for.extratrees.item.food.coffee=Кофейные зёрна
for.extratrees.item.food.osangeorange=Плод маклюра
# ПРОДУКТЫ САДОВОДСТВА
for.extratrees.item.food.osangeosange=Плод маклюра
for.extratrees.item.food.osangeorange=Osange Orange
for.extratrees.item.food.clove=Гвоздика (пряность)
for.extratrees.item.food.papayimar=Папайя
for.extratrees.item.food.blackcurrant=Смородина чёрная
@@ -1,7 +1,7 @@
##################################################
## Machines
extratrees.machine.kitchen.bar=Bar
extratrees.machine.kitchen.bar=酒吧
extratrees.machine.kitchen.bottleRack=瓶架
extratrees.machine.machine.brewery=发酵器
@@ -95,7 +95,7 @@ extratrees.block.planks.forestry.ebony=乌檀树
extratrees.block.planks.forestry.mahogany=桃心树
extratrees.block.planks.forestry.balsa=巴尔杉树
extratrees.block.planks.forestry.willow=柳树
extratrees.block.planks.forestry.walnut=胡桃树
extratrees.block.planks.forestry.walnut=核桃树
extratrees.block.planks.forestry.greenheart=绿樟树
extratrees.block.planks.forestry.cherry=樱树
extratrees.block.planks.forestry.mahoe=高槿树
@@ -284,40 +284,40 @@ extratrees.species.starfruit.name=杨桃
extratrees.species.candlenut.name=石栗
extratrees.species.dwarfhazel.name=矮榛
extratrees.butterflies.species.whiteAdmiral=White Admiral
extratrees.butterflies.species.purpleEmperor=Purple Emperor
extratrees.butterflies.species.redAdmiral=Red Admiral
extratrees.butterflies.species.paintedLady=Painted Lady
extratrees.butterflies.species.smallTortoiseshell=Small Tortoiseshell
extratrees.butterflies.species.camberwellBeauty=Camberwell Beauty
extratrees.butterflies.species.peacock=Peacock
extratrees.butterflies.species.wall=Wall
extratrees.butterflies.species.crimsonRose=Crimson Rose
extratrees.butterflies.species.kaiserIHind=Kaiser-i-Hind
extratrees.butterflies.species.goldenBirdwing=Golden Birdwing
extratrees.butterflies.species.marshFritillary=Marsh Fritillary
extratrees.butterflies.species.pearlBorderedFritillary=Pearl-bordered Fritillary
extratrees.butterflies.species.queenOfSpainFritillary=Queen of Spain Fritillary
extratrees.butterflies.species.speckledWood=Speckled Wood
extratrees.butterflies.species.scotchAngus=Scotch Angus
extratrees.butterflies.species.gatekeeper=Gatekeeper
extratrees.butterflies.species.meadowBrown=Meadow Brown
extratrees.butterflies.species.smallHeath=Small Heath
extratrees.butterflies.species.ringlet=Ringlet
extratrees.butterflies.species.monarch=Monarch
extratrees.butterflies.species.marbledWhite=Marbled White
extratrees.butterflies.species.whiteAdmiral=白蛺蝶
extratrees.butterflies.species.purpleEmperor=紫色帝王蝶
extratrees.butterflies.species.redAdmiral=红蛺蝶
extratrees.butterflies.species.paintedLady=姬红蛱蝶
extratrees.butterflies.species.smallTortoiseshell=小麻蛱蝶
extratrees.butterflies.species.camberwellBeauty=坎伯韦尔美人蝶
extratrees.butterflies.species.peacock=孔雀蝶
extratrees.butterflies.species.wall=棕蛱蝶
extratrees.butterflies.species.crimsonRose=绯红玫瑰蝶
extratrees.butterflies.species.kaiserIHind=喙凤蝶
extratrees.butterflies.species.goldenBirdwing=金裳凤蝶
extratrees.butterflies.species.marshFritillary=沼泽豹纹蝶
extratrees.butterflies.species.pearlBorderedFritillary=珍珠豹纹蝶
extratrees.butterflies.species.queenOfSpainFritillary=西班牙豹纹女王蝶
extratrees.butterflies.species.speckledWood=帕眼蝶
extratrees.butterflies.species.scotchAngus=苏格兰百眼蝶
extratrees.butterflies.species.gatekeeper=链眼蝶
extratrees.butterflies.species.meadowBrown=草地棕眼蝶
extratrees.butterflies.species.smallHeath=潘非珍眼蝶
extratrees.butterflies.species.ringlet=阿芬眼蝶
extratrees.butterflies.species.monarch=黑脉金斑蝶
extratrees.butterflies.species.marbledWhite=加勒白眼蝶
extratrees.genetics.requirements.height=最低海拔要求:%d
extratrees.genetics.unknown=<未知>
extratrees.genetics.discoveredBy=由 %s 发现
extratrees.genetics.complexity=复杂度:%d
extratrees.item.carpentryHammer=木工大师的锤子
extratrees.item.carpentryHammer=木工大师锤
extratrees.item.masterCarpentryHammer=木工锤
extratrees.item.sawdust=锯末
extratrees.item.bark=树皮
extratrees.item.provenGear=标定齿轮
extratrees.item.woodWax=Wood Polish
extratrees.item.woodWax=光泽剂
extratrees.item.glassFitting=玻璃配件
for.extratrees.item.food.apple=苹果
+12 -12
View File
@@ -1,10 +1,10 @@
[
{
"modid": "BinnieCore",
"name": "Binnie Core",
"modid": "${modId}",
"name": "${modName}",
"description": "Base mod for Binnie's Mods, with lots of common code.",
"version": "${version}",
"mcversion": "${mcversion}",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://minecraft.curseforge.com/mc-mods/223525-binnies-mods",
"updateUrl": "",
"authorList": [ "Binnie" ],
@@ -20,8 +20,8 @@
"modid": "ExtraBees",
"name": "Extra Bees",
"description": "Adds new bees and products to expand the bee breeding in Forestry.",
"version": "${version}",
"mcversion": "${mcversion}",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://minecraft.curseforge.com/mc-mods/223525-binnies-mods",
"updateUrl": "",
"authorList": [ "Binnie" ],
@@ -34,8 +34,8 @@
"modid": "ExtraTrees",
"name": "Extra Trees",
"description": "Adds new trees, aesthetic blocks and alcohol production.",
"version": "${version}",
"mcversion": "${mcversion}",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://minecraft.curseforge.com/mc-mods/223525-binnies-mods",
"updateUrl": "",
"authorList": [ "Binnie" ],
@@ -48,8 +48,8 @@
"modid": "Botany",
"name": "Botany",
"description": "Adds breedable flowers.",
"version": "${version}",
"mcversion": "${mcversion}",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://minecraft.curseforge.com/mc-mods/223525-binnies-mods",
"updateUrl": "",
"authorList": [ "Binnie" ],
@@ -62,8 +62,8 @@
"modid": "Genetics",
"name": "Genetics",
"description": "Adds genetic manipulation for bees, trees, butterflies and flowers.",
"version": "${version}",
"mcversion": "${mcversion}",
"version": "${modVersion}",
"mcversion": "${minecraftVersion}",
"url": "http://minecraft.curseforge.com/mc-mods/223525-binnies-mods",
"updateUrl": "",
"authorList": [ "Binnie" ],