Compare commits
25 Commits
BOP-1.16.4
...
BOP-public
Author | SHA1 | Date |
---|---|---|
feliixpe | b4bee83ec6 | |
ppblitto | a1dbccbed7 | |
E. Kim | 424ce5493c | |
feliixpe | 9eb127f954 | |
Adubbz | 22dd90c963 | |
E. Kim | 50ec0fd16e | |
Adubbz | 8455baaa5a | |
Adubbz | 59ce779cd9 | |
Adubbz | 343313866a | |
Adubbz | e5832ca35e | |
Adubbz | 68ece123ec | |
Adubbz | 3ebc6bee5d | |
Adubbz | 1ae9e6807a | |
Forstride | 3f7663c416 | |
Forstride | bcdb27f2a1 | |
Forstride | 6e16e044ee | |
Forstride | ee7bceb2ff | |
Adubbz | 0bfe3c1e05 | |
Forstride | 3f2d6ac023 | |
E. Kim | d54666a0ed | |
E. Kim | 316b030ac9 | |
E. Kim | c900619c7c | |
ph0elyx | e3af2b817b | |
Adubbz | 7d8d5a11ce | |
Adubbz | ddc6e1621a |
|
@ -0,0 +1,46 @@
|
|||
name: 1.18.1 Bug Report
|
||||
description: File a bug report
|
||||
labels: [bug]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
For bugs experienced with Minecraft 1.18.1. Older versions are not supported.
|
||||
If any section does not apply, replace its content with "N/A".
|
||||
|
||||
Please search for existing bug reports before making your own report.
|
||||
Duplicate reports will be marked as such and you will be referred to the original report.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What's the issue you encountered?
|
||||
description: |
|
||||
Describe the issue in detail and what you were doing beforehand.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: How can the issue be reproduced?
|
||||
description: Include a detailed step by step process for recreating your issue.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Logs
|
||||
description: |
|
||||
Logs can be found in your Minecraft directory under `/logs/latest.log`.
|
||||
If your issue caused Minecraft to crash, include the crash report by creating a [gist](https://gist.github.com/) and pasting the link here.
|
||||
If your don't include logs in instances of crash related issues, we will ask you to provide one.
|
||||
- type: input
|
||||
attributes:
|
||||
label: Mod Version
|
||||
description: |
|
||||
Replace ×'s with the mod version you are using.
|
||||
You can find your mod version by checking the ``Mods`` menu on the title screen.
|
||||
placeholder: ×.×.×.×
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional information
|
||||
description: |
|
||||
Any other information relevant to your issue.
|
|
@ -1,27 +0,0 @@
|
|||
---
|
||||
name: 1.16.3 Standalone Bug
|
||||
about: For bugs that occur with Biomes O' Plenty for 1.16.3. We do not support older versions!
|
||||
title: ''
|
||||
labels: bug-minor
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Bug Report
|
||||
|
||||
[ Lines between [ ] (square brackets) should be removed before posting. ]</br>
|
||||
|
||||
### What's the issue you encountered?
|
||||
|
||||
[ Describe the issue in detail and what you were doing beforehand. ]</br>
|
||||
|
||||
### How can the issue be reproduced?
|
||||
|
||||
[ Include a detailed step by step process for recreating your issue with only Biomes O' Plenty installed. ]</br>
|
||||
|
||||
### Logs
|
||||
|
||||
[ Please include any relevant logs here. This can be done by dragging and dropping your log files into the issue. ]</br>
|
||||
|
||||
### Mod Version
|
||||
[ Please put the version of the mod you were using here. ]</br>
|
|
@ -0,0 +1,48 @@
|
|||
name: 1.18.1 Crash Report
|
||||
description: File a crash report
|
||||
labels: [crash]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
For crashes experienced with Minecraft 1.18.1. Older versions are not supported.
|
||||
If any section does not apply, replace its content with "N/A".
|
||||
|
||||
Please search for existing crash reports before making your own report.
|
||||
Duplicate reports will be marked as such and you will be referred to the original report.
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: What's the issue you encountered?
|
||||
description: |
|
||||
Describe the issue in detail and what you were doing beforehand.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: How can the issue be reproduced?
|
||||
description: Include a detailed step by step process for recreating your issue.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Logs
|
||||
description: |
|
||||
Logs can be found in your Minecraft directory under `/logs/latest.log`.
|
||||
If your issue caused Minecraft to crash, include the crash report by creating a [gist](https://gist.github.com/) and pasting the link here.
|
||||
If your don't include logs in instances of crash related issues, we will ask you to provide one.
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
attributes:
|
||||
label: Mod Version
|
||||
description: |
|
||||
Replace ×'s with the mod version you are using.
|
||||
You can find your mod version by checking the ``Mods`` menu on the title screen.
|
||||
placeholder: ×.×.×.×
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Additional information
|
||||
description: |
|
||||
Any other information relevant to your issue.
|
|
@ -1,23 +0,0 @@
|
|||
---
|
||||
name: 1.16.3 Standalone Crash
|
||||
about: For crashes that occur with Biomes O' Plenty for 1.16.3. We do not support older versions!
|
||||
title: ''
|
||||
labels: crash
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Bug Report
|
||||
|
||||
[ Lines between [ ] (square brackets) should be removed before posting. ]</br>
|
||||
|
||||
### How can the crash be reproduced?
|
||||
|
||||
[ Include a detailed step by step process for recreating your crash with only Biomes O' Plenty installed. ]</br>
|
||||
|
||||
### Crash Report and Logs
|
||||
|
||||
[ Please include your crash report and logs here. This can be done by dragging and dropping your log files and crash report files into the issue. ]</br>
|
||||
|
||||
### Mod Version
|
||||
[ Please put the version of the mod you were using here. ]</br>
|
|
@ -1,20 +0,0 @@
|
|||
---
|
||||
name: 1.16.3 Feature Request
|
||||
about: Feature requests for Biomes O' Plenty for 1.16.3. We do not support older versions!
|
||||
title: ''
|
||||
labels: feature
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Feature Request
|
||||
|
||||
[ Lines between [ ] (square brackets) should be removed before posting. ]</br>
|
||||
|
||||
### What feature are you suggesting?
|
||||
|
||||
[ Provide an overview of the feature being suggested. ]</br>
|
||||
|
||||
### Why should it be added?
|
||||
|
||||
[ Describe the benefits of implementing this feature. ]</br>
|
|
@ -0,0 +1,28 @@
|
|||
name: 1.18.1 Feature Request
|
||||
description: Request a new feature
|
||||
labels: [feature]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Feature requests for Minecraft 1.18.1. Older versions are not supported.
|
||||
If any section does not apply, replace its contents with "N/A".
|
||||
|
||||
Please search for existing feature requests before you make your own request.
|
||||
Duplicate requests will be marked as such and you will be referred to the original request.
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: "## What feature are you suggesting?"
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Overview
|
||||
description: Provide an overview of the feature being suggested.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Why would this feature be useful?
|
||||
description: |
|
||||
Describe the benefits of implementing this feature.
|
||||
validations:
|
||||
required: true
|
|
@ -1,28 +0,0 @@
|
|||
/build/
|
||||
/bin/
|
||||
/out/
|
||||
/Mixin/
|
||||
/repo/
|
||||
/run/
|
||||
/logs/
|
||||
.idea/*
|
||||
/.gradle/
|
||||
/.settings/
|
||||
/.classpath
|
||||
/.project
|
||||
|
||||
# OS generated files
|
||||
*.DS_Store
|
||||
|
||||
# IntelliJ project files
|
||||
*.iml
|
||||
*.ipr
|
||||
*.iws
|
||||
|
||||
*.launch
|
||||
mappings/.gradle/
|
||||
#mappings/mcp/
|
||||
mappings/build/
|
||||
mappings/*.csv
|
||||
mappings/.project
|
||||
mappings/last_updated.json
|
|
@ -1,60 +0,0 @@
|
|||
@Library('forge-shared-library')_
|
||||
|
||||
pipeline {
|
||||
options {
|
||||
disableConcurrentBuilds()
|
||||
}
|
||||
agent {
|
||||
docker {
|
||||
image 'gradle:jdk8'
|
||||
args '-v forgegc:/home/gradle/.gradle/'
|
||||
}
|
||||
}
|
||||
environment {
|
||||
GRADLE_ARGS = '--no-daemon --console=plain' // No daemon for now as FG3 kinda derps. //'-Dorg.gradle.daemon.idletimeout=5000'
|
||||
JENKINS_HEAD = 'https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png'
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('fetch') {
|
||||
steps {
|
||||
checkout scm
|
||||
}
|
||||
}
|
||||
stage('setup') {
|
||||
steps {
|
||||
withGradle {
|
||||
sh './gradlew ${GRADLE_ARGS} --refresh-dependencies'
|
||||
}
|
||||
script {
|
||||
env.MYVERSION = sh(returnStdout: true, script: './gradlew :properties -q | grep "^version:" | awk \'{print $2}\'').trim()
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('changelog') {
|
||||
when {
|
||||
not {
|
||||
changeRequest()
|
||||
}
|
||||
}
|
||||
steps {
|
||||
writeChangelog(currentBuild, "build/BiomesOPlenty-${env.MYVERSION}-changelog.txt")
|
||||
}
|
||||
}
|
||||
stage('publish') {
|
||||
when {
|
||||
not {
|
||||
changeRequest()
|
||||
}
|
||||
}
|
||||
environment {
|
||||
CURSE_API_KEY = credentials('curse-api-key')
|
||||
}
|
||||
steps {
|
||||
withGradle {
|
||||
sh './gradlew ${GRADLE_ARGS} :uploadArchives curseforge -PcurseApiKey=${CURSE_API_KEY}'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
325
LICENSE.txt
325
LICENSE.txt
|
@ -1,325 +0,0 @@
|
|||
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0
|
||||
International Public License
|
||||
|
||||
By exercising the Licensed Rights (defined below), You accept and agree
|
||||
to be bound by the terms and conditions of this Creative Commons
|
||||
Attribution-NonCommercial-NoDerivatives 4.0 International Public
|
||||
License ("Public License"). To the extent this Public License may be
|
||||
interpreted as a contract, You are granted the Licensed Rights in
|
||||
consideration of Your acceptance of these terms and conditions, and the
|
||||
Licensor grants You such rights in consideration of benefits the
|
||||
Licensor receives from making the Licensed Material available under
|
||||
these terms and conditions.
|
||||
|
||||
|
||||
Section 1 -- Definitions.
|
||||
|
||||
a. Adapted Material means material subject to Copyright and Similar
|
||||
Rights that is derived from or based upon the Licensed Material
|
||||
and in which the Licensed Material is translated, altered,
|
||||
arranged, transformed, or otherwise modified in a manner requiring
|
||||
permission under the Copyright and Similar Rights held by the
|
||||
Licensor. For purposes of this Public License, where the Licensed
|
||||
Material is a musical work, performance, or sound recording,
|
||||
Adapted Material is always produced where the Licensed Material is
|
||||
synched in timed relation with a moving image.
|
||||
|
||||
b. Copyright and Similar Rights means copyright and/or similar rights
|
||||
closely related to copyright including, without limitation,
|
||||
performance, broadcast, sound recording, and Sui Generis Database
|
||||
Rights, without regard to how the rights are labeled or
|
||||
categorized. For purposes of this Public License, the rights
|
||||
specified in Section 2(b)(1)-(2) are not Copyright and Similar
|
||||
Rights.
|
||||
|
||||
c. Effective Technological Measures means those measures that, in the
|
||||
absence of proper authority, may not be circumvented under laws
|
||||
fulfilling obligations under Article 11 of the WIPO Copyright
|
||||
Treaty adopted on December 20, 1996, and/or similar international
|
||||
agreements.
|
||||
|
||||
d. Exceptions and Limitations means fair use, fair dealing, and/or
|
||||
any other exception or limitation to Copyright and Similar Rights
|
||||
that applies to Your use of the Licensed Material.
|
||||
|
||||
e. Licensed Material means the artistic or literary work, database,
|
||||
or other material to which the Licensor applied this Public
|
||||
License.
|
||||
|
||||
f. Licensed Rights means the rights granted to You subject to the
|
||||
terms and conditions of this Public License, which are limited to
|
||||
all Copyright and Similar Rights that apply to Your use of the
|
||||
Licensed Material and that the Licensor has authority to license.
|
||||
|
||||
g. Licensor means the individual(s) or entity(ies) granting rights
|
||||
under this Public License.
|
||||
|
||||
h. NonCommercial means not primarily intended for or directed towards
|
||||
commercial advantage or monetary compensation. For purposes of
|
||||
this Public License, the exchange of the Licensed Material for
|
||||
other material subject to Copyright and Similar Rights by digital
|
||||
file-sharing or similar means is NonCommercial provided there is
|
||||
no payment of monetary compensation in connection with the
|
||||
exchange.
|
||||
|
||||
i. Share means to provide material to the public by any means or
|
||||
process that requires permission under the Licensed Rights, such
|
||||
as reproduction, public display, public performance, distribution,
|
||||
dissemination, communication, or importation, and to make material
|
||||
available to the public including in ways that members of the
|
||||
public may access the material from a place and at a time
|
||||
individually chosen by them.
|
||||
|
||||
j. Sui Generis Database Rights means rights other than copyright
|
||||
resulting from Directive 96/9/EC of the European Parliament and of
|
||||
the Council of 11 March 1996 on the legal protection of databases,
|
||||
as amended and/or succeeded, as well as other essentially
|
||||
equivalent rights anywhere in the world.
|
||||
|
||||
k. You means the individual or entity exercising the Licensed Rights
|
||||
under this Public License. Your has a corresponding meaning.
|
||||
|
||||
|
||||
Section 2 -- Scope.
|
||||
|
||||
a. License grant.
|
||||
|
||||
1. Subject to the terms and conditions of this Public License,
|
||||
the Licensor hereby grants You a worldwide, royalty-free,
|
||||
non-sublicensable, non-exclusive, irrevocable license to
|
||||
exercise the Licensed Rights in the Licensed Material to:
|
||||
|
||||
a. reproduce and Share the Licensed Material, in whole or
|
||||
in part, for NonCommercial purposes only; and
|
||||
|
||||
b. produce and reproduce, but not Share, Adapted Material
|
||||
for NonCommercial purposes only.
|
||||
|
||||
2. Exceptions and Limitations. For the avoidance of doubt, where
|
||||
Exceptions and Limitations apply to Your use, this Public
|
||||
License does not apply, and You do not need to comply with
|
||||
its terms and conditions.
|
||||
|
||||
3. Term. The term of this Public License is specified in Section
|
||||
6(a).
|
||||
|
||||
4. Media and formats; technical modifications allowed. The
|
||||
Licensor authorizes You to exercise the Licensed Rights in
|
||||
all media and formats whether now known or hereafter created,
|
||||
and to make technical modifications necessary to do so. The
|
||||
Licensor waives and/or agrees not to assert any right or
|
||||
authority to forbid You from making technical modifications
|
||||
necessary to exercise the Licensed Rights, including
|
||||
technical modifications necessary to circumvent Effective
|
||||
Technological Measures. For purposes of this Public License,
|
||||
simply making modifications authorized by this Section 2(a)
|
||||
(4) never produces Adapted Material.
|
||||
|
||||
5. Downstream recipients.
|
||||
|
||||
a. Offer from the Licensor -- Licensed Material. Every
|
||||
recipient of the Licensed Material automatically
|
||||
receives an offer from the Licensor to exercise the
|
||||
Licensed Rights under the terms and conditions of this
|
||||
Public License.
|
||||
|
||||
b. No downstream restrictions. You may not offer or impose
|
||||
any additional or different terms or conditions on, or
|
||||
apply any Effective Technological Measures to, the
|
||||
Licensed Material if doing so restricts exercise of the
|
||||
Licensed Rights by any recipient of the Licensed
|
||||
Material.
|
||||
|
||||
6. No endorsement. Nothing in this Public License constitutes or
|
||||
may be construed as permission to assert or imply that You
|
||||
are, or that Your use of the Licensed Material is, connected
|
||||
with, or sponsored, endorsed, or granted official status by,
|
||||
the Licensor or others designated to receive attribution as
|
||||
provided in Section 3(a)(1)(A)(i).
|
||||
|
||||
b. Other rights.
|
||||
|
||||
1. Moral rights, such as the right of integrity, are not
|
||||
licensed under this Public License, nor are publicity,
|
||||
privacy, and/or other similar personality rights; however, to
|
||||
the extent possible, the Licensor waives and/or agrees not to
|
||||
assert any such rights held by the Licensor to the limited
|
||||
extent necessary to allow You to exercise the Licensed
|
||||
Rights, but not otherwise.
|
||||
|
||||
2. Patent and trademark rights are not licensed under this
|
||||
Public License.
|
||||
|
||||
3. To the extent possible, the Licensor waives any right to
|
||||
collect royalties from You for the exercise of the Licensed
|
||||
Rights, whether directly or through a collecting society
|
||||
under any voluntary or waivable statutory or compulsory
|
||||
licensing scheme. In all other cases the Licensor expressly
|
||||
reserves any right to collect such royalties, including when
|
||||
the Licensed Material is used other than for NonCommercial
|
||||
purposes.
|
||||
|
||||
|
||||
Section 3 -- License Conditions.
|
||||
|
||||
Your exercise of the Licensed Rights is expressly made subject to the
|
||||
following conditions.
|
||||
|
||||
a. Attribution.
|
||||
|
||||
1. If You Share the Licensed Material, You must:
|
||||
|
||||
a. retain the following if it is supplied by the Licensor
|
||||
with the Licensed Material:
|
||||
|
||||
i. identification of the creator(s) of the Licensed
|
||||
Material and any others designated to receive
|
||||
attribution, in any reasonable manner requested by
|
||||
the Licensor (including by pseudonym if
|
||||
designated);
|
||||
|
||||
ii. a copyright notice;
|
||||
|
||||
iii. a notice that refers to this Public License;
|
||||
|
||||
iv. a notice that refers to the disclaimer of
|
||||
warranties;
|
||||
|
||||
v. a URI or hyperlink to the Licensed Material to the
|
||||
extent reasonably practicable;
|
||||
|
||||
b. indicate if You modified the Licensed Material and
|
||||
retain an indication of any previous modifications; and
|
||||
|
||||
c. indicate the Licensed Material is licensed under this
|
||||
Public License, and include the text of, or the URI or
|
||||
hyperlink to, this Public License.
|
||||
|
||||
For the avoidance of doubt, You do not have permission under
|
||||
this Public License to Share Adapted Material.
|
||||
|
||||
2. You may satisfy the conditions in Section 3(a)(1) in any
|
||||
reasonable manner based on the medium, means, and context in
|
||||
which You Share the Licensed Material. For example, it may be
|
||||
reasonable to satisfy the conditions by providing a URI or
|
||||
hyperlink to a resource that includes the required
|
||||
information.
|
||||
|
||||
3. If requested by the Licensor, You must remove any of the
|
||||
information required by Section 3(a)(1)(A) to the extent
|
||||
reasonably practicable.
|
||||
|
||||
|
||||
Section 4 -- Sui Generis Database Rights.
|
||||
|
||||
Where the Licensed Rights include Sui Generis Database Rights that
|
||||
apply to Your use of the Licensed Material:
|
||||
|
||||
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
|
||||
to extract, reuse, reproduce, and Share all or a substantial
|
||||
portion of the contents of the database for NonCommercial purposes
|
||||
only and provided You do not Share Adapted Material;
|
||||
|
||||
b. if You include all or a substantial portion of the database
|
||||
contents in a database in which You have Sui Generis Database
|
||||
Rights, then the database in which You have Sui Generis Database
|
||||
Rights (but not its individual contents) is Adapted Material; and
|
||||
|
||||
c. You must comply with the conditions in Section 3(a) if You Share
|
||||
all or a substantial portion of the contents of the database.
|
||||
|
||||
For the avoidance of doubt, this Section 4 supplements and does not
|
||||
replace Your obligations under this Public License where the Licensed
|
||||
Rights include other Copyright and Similar Rights.
|
||||
|
||||
|
||||
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
|
||||
|
||||
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
|
||||
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
|
||||
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
|
||||
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
|
||||
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
|
||||
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
||||
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
|
||||
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
|
||||
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
|
||||
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
|
||||
|
||||
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
|
||||
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
|
||||
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
|
||||
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
|
||||
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
|
||||
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
|
||||
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
|
||||
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
|
||||
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
|
||||
|
||||
c. The disclaimer of warranties and limitation of liability provided
|
||||
above shall be interpreted in a manner that, to the extent
|
||||
possible, most closely approximates an absolute disclaimer and
|
||||
waiver of all liability.
|
||||
|
||||
|
||||
Section 6 -- Term and Termination.
|
||||
|
||||
a. This Public License applies for the term of the Copyright and
|
||||
Similar Rights licensed here. However, if You fail to comply with
|
||||
this Public License, then Your rights under this Public License
|
||||
terminate automatically.
|
||||
|
||||
b. Where Your right to use the Licensed Material has terminated under
|
||||
Section 6(a), it reinstates:
|
||||
|
||||
1. automatically as of the date the violation is cured, provided
|
||||
it is cured within 30 days of Your discovery of the
|
||||
violation; or
|
||||
|
||||
2. upon express reinstatement by the Licensor.
|
||||
|
||||
For the avoidance of doubt, this Section 6(b) does not affect any
|
||||
right the Licensor may have to seek remedies for Your violations
|
||||
of this Public License.
|
||||
|
||||
c. For the avoidance of doubt, the Licensor may also offer the
|
||||
Licensed Material under separate terms or conditions or stop
|
||||
distributing the Licensed Material at any time; however, doing so
|
||||
will not terminate this Public License.
|
||||
|
||||
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
|
||||
License.
|
||||
|
||||
|
||||
Section 7 -- Other Terms and Conditions.
|
||||
|
||||
a. The Licensor shall not be bound by any additional or different
|
||||
terms or conditions communicated by You unless expressly agreed.
|
||||
|
||||
b. Any arrangements, understandings, or agreements regarding the
|
||||
Licensed Material not stated herein are separate from and
|
||||
independent of the terms and conditions of this Public License.
|
||||
|
||||
|
||||
Section 8 -- Interpretation.
|
||||
|
||||
a. For the avoidance of doubt, this Public License does not, and
|
||||
shall not be interpreted to, reduce, limit, restrict, or impose
|
||||
conditions on any use of the Licensed Material that could lawfully
|
||||
be made without permission under this Public License.
|
||||
|
||||
b. To the extent possible, if any provision of this Public License is
|
||||
deemed unenforceable, it shall be automatically reformed to the
|
||||
minimum extent necessary to make it enforceable. If the provision
|
||||
cannot be reformed, it shall be severed from this Public License
|
||||
without affecting the enforceability of the remaining terms and
|
||||
conditions.
|
||||
|
||||
c. No term or condition of this Public License will be waived and no
|
||||
failure to comply consented to unless expressly agreed to by the
|
||||
Licensor.
|
||||
|
||||
d. Nothing in this Public License constitutes or may be interpreted
|
||||
as a limitation upon, or waiver of, any privileges and immunities
|
||||
that apply to the Licensor or You, including from the legal
|
||||
processes of any jurisdiction or authority.
|
10
README.md
10
README.md
|
@ -6,12 +6,18 @@
|
|||
|
||||
**Biomes O' Plenty** is a **Minecraft mod** that adds **over 50 new biomes** to the Overworld, Nether, and End. From Lavender Fields to Redwood Forests and many more, all of our biomes are decorated with a variety of **new trees, flowers, and plants!**
|
||||
|
||||
This repository contains the mod's API and language files. Issues can also be reported on the issue tracker.
|
||||
|
||||
-----------------
|
||||
|
||||
**Note:** To use the mod on a **server**, you must set the **level-type** setting in your server's config file to **biomesoplenty**
|
||||
|
||||
-----------------
|
||||
|
||||
[<img src="http://i.creativecommons.org/l/by-nc-nd/3.0/88x31.png">](http://creativecommons.org/licenses/by-nc-nd/4.0/deed.en_US)
|
||||
## Source access
|
||||
|
||||
Biomes O' Plenty is licensed under a [Creative Commons Attribution-NonCommercial-NoDerivs 4.0 Unported License](http://creativecommons.org/licenses/by-nc-nd/4.0/deed.en_US).
|
||||
If you are a reputable modder, or we know you well, please reach out to us on Discord if you require source access.
|
||||
|
||||
-----------------
|
||||
|
||||
© 2021 Glitchfiend. All rights reserved.
|
188
build.gradle
188
build.gradle
|
@ -1,188 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
mavenLocal()
|
||||
maven { url = 'https://files.minecraftforge.net/maven' }
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
dependencies {
|
||||
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '3.+', changing: true
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id "com.matthewprenger.cursegradle" version "1.4.0"
|
||||
}
|
||||
|
||||
apply plugin: 'net.minecraftforge.gradle'
|
||||
apply plugin: 'eclipse'
|
||||
apply plugin: 'idea'
|
||||
apply plugin: 'maven'
|
||||
|
||||
repositories { mavenLocal() }
|
||||
|
||||
group = "com.github.glitchfiend.biomesoplenty"
|
||||
archivesBaseName = "BiomesOPlenty"
|
||||
|
||||
def getGitHash = {
|
||||
def stdout = new ByteArrayOutputStream()
|
||||
exec {
|
||||
commandLine 'git', 'rev-parse', '--short', 'HEAD'
|
||||
standardOutput = stdout
|
||||
}
|
||||
return stdout.toString().trim()
|
||||
}
|
||||
|
||||
version = "${minecraft_version}-${mod_version}.${System.getenv().BUILD_NUMBER}"
|
||||
|
||||
minecraft {
|
||||
mappings channel: 'official', version: minecraft_version
|
||||
|
||||
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
|
||||
|
||||
runs {
|
||||
client = {
|
||||
workingDirectory = project.file("run").canonicalPath
|
||||
source sourceSets.main
|
||||
}
|
||||
server = {
|
||||
workingDirectory = project.file("run").canonicalPath
|
||||
source sourceSets.main
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
processResources {
|
||||
from (sourceSets.main.resources.srcDirs) {
|
||||
include 'META-INF/mods.toml'
|
||||
expand 'version': project.version
|
||||
}
|
||||
}
|
||||
|
||||
jar {
|
||||
classifier = 'universal'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
minecraft 'net.minecraftforge:forge:' + minecraft_version + '-' + forge_version
|
||||
}
|
||||
|
||||
task sourcesJar(type: Jar) {
|
||||
from sourceSets.main.allJava
|
||||
from (sourceSets.main.output) {
|
||||
include 'LICENSE.txt'
|
||||
}
|
||||
|
||||
classifier = 'sources'
|
||||
}
|
||||
|
||||
task deobfJar(type: Jar) {
|
||||
from sourceSets.main.output
|
||||
classifier = 'deobf'
|
||||
}
|
||||
|
||||
task apiJar(type: Jar) {
|
||||
from(sourceSets.main.allJava) {
|
||||
include 'biomesoplenty/api/**'
|
||||
}
|
||||
from (sourceSets.main.output) {
|
||||
include 'LICENSE.txt'
|
||||
include 'biomesoplenty/api/**'
|
||||
}
|
||||
|
||||
classifier = 'api'
|
||||
}
|
||||
|
||||
def changelog_file = rootProject.file("build/BiomesOPlenty-${version}-changelog.txt")
|
||||
|
||||
curseforge {
|
||||
if (project.hasProperty('curseApiKey')) {
|
||||
apiKey = project.getProperty('curseApiKey')
|
||||
project {
|
||||
id = '220318'
|
||||
|
||||
if (changelog_file.exists()) {
|
||||
changelog = changelog_file
|
||||
}
|
||||
|
||||
releaseType = 'beta'
|
||||
|
||||
mainArtifact(jar) {
|
||||
displayName = "Biomes O' Plenty ${version}"
|
||||
}
|
||||
addArtifact sourcesJar
|
||||
addArtifact deobfJar
|
||||
addArtifact apiJar
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
artifacts {
|
||||
if (changelog_file.exists()) {
|
||||
archives changelog_file
|
||||
}
|
||||
archives jar
|
||||
archives sourcesJar
|
||||
archives deobfJar
|
||||
archives apiJar
|
||||
}
|
||||
|
||||
uploadArchives {
|
||||
repositories {
|
||||
mavenDeployer {
|
||||
if (project.hasProperty('forgeMavenPassword')) {
|
||||
repository(url: "https://files.minecraftforge.net/maven/manage/upload") {
|
||||
authentication(userName: project.getProperty('forgeMavenUsername'), password: project.getProperty('forgeMavenPassword'))
|
||||
}
|
||||
}
|
||||
else {
|
||||
// local repo folder. Might wanna juset use gradle install if you wanans end it to maven-local
|
||||
repository(url: 'file://localhost/' + project.file('repo').getAbsolutePath())
|
||||
}
|
||||
|
||||
pom {
|
||||
groupId = project.group
|
||||
version = project.version
|
||||
artifactId = project.archivesBaseName
|
||||
project {
|
||||
name project.archivesBaseName
|
||||
packaging 'jar'
|
||||
description 'Biomes O Plenty'
|
||||
url 'https://github.com/Glitchfiend/BiomesOPlenty'
|
||||
|
||||
scm {
|
||||
url 'https://github.com/Glitchfiend/BiomesOPlenty'
|
||||
connection 'scm:git:git://github.com/Glitchfiend/BiomesOPlenty.git'
|
||||
developerConnection 'scm:git:git@github.com:Glitchfiend/BiomesOPlenty.git'
|
||||
}
|
||||
|
||||
issueManagement {
|
||||
system 'github'
|
||||
url 'https://github.com/Glitchfiend/BiomesOPlenty/issues'
|
||||
}
|
||||
|
||||
licenses {
|
||||
license {
|
||||
name 'Creative Commons Attribution-NonCommercial-NoDerivs 4.0 International Public License'
|
||||
url 'http://creativecommons.org/licenses/by-nc-nd/4.0/'
|
||||
distribution 'repo'
|
||||
}
|
||||
}
|
||||
|
||||
developers {
|
||||
developer {
|
||||
id 'Adubbz'
|
||||
name 'Adubbz'
|
||||
roles { role 'developer' }
|
||||
}
|
||||
developer {
|
||||
id 'Forstride'
|
||||
name 'Forstride'
|
||||
roles { role 'developer' }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
# Sets default memory used for gradle commands. Can be overridden by user or command line properties.
|
||||
# This is required to provide enough memory for the Minecraft decompilation process.
|
||||
org.gradle.jvmargs=-Xmx3G
|
||||
org.gradle.daemon=false
|
||||
|
||||
mod_version=13.1.0
|
||||
|
||||
minecraft_version=1.16.5
|
||||
minecraft_version_toml=16
|
||||
forge_version=36.1.0
|
||||
forge_version_toml=36
|
||||
forge_group=net.minecraftforge
|
Binary file not shown.
|
@ -1,5 +0,0 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-bin.zip
|
|
@ -1,172 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
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
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
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
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
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
|
||||
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`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Escape application args
|
||||
save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=$(save "$@")
|
||||
|
||||
# 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" "$@"
|
|
@ -1,90 +0,0 @@
|
|||
@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
|
|
@ -1,104 +1,113 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
* Copyright 2021, the Glitchfiend Team.
|
||||
* All rights reserved.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.biome;
|
||||
|
||||
import biomesoplenty.core.BiomesOPlenty;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.Lists;
|
||||
import net.minecraft.core.Registry;
|
||||
import net.minecraft.resources.ResourceKey;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.level.biome.Biome;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class BOPBiomes
|
||||
{
|
||||
public static RegistryKey<Biome> alps = register("alps");
|
||||
public static RegistryKey<Biome> alps_foothills = register("alps_foothills");
|
||||
public static RegistryKey<Biome> bamboo_blossom_grove = register("bamboo_blossom_grove");
|
||||
public static RegistryKey<Biome> bayou = register("bayou");
|
||||
public static RegistryKey<Biome> bayou_mangrove = register("bayou_mangrove");
|
||||
public static RegistryKey<Biome> burnt_forest = register("burnt_forest");
|
||||
public static RegistryKey<Biome> cherry_blossom_grove = register("cherry_blossom_grove");
|
||||
public static RegistryKey<Biome> cold_desert = register("cold_desert");
|
||||
public static RegistryKey<Biome> coniferous_forest = register("coniferous_forest");
|
||||
public static RegistryKey<Biome> coniferous_lakes = register("coniferous_lakes");
|
||||
public static RegistryKey<Biome> dead_forest = register("dead_forest");
|
||||
public static RegistryKey<Biome> deep_bayou = register("deep_bayou");
|
||||
public static RegistryKey<Biome> dense_marsh = register("dense_marsh");
|
||||
public static RegistryKey<Biome> dense_woodland = register("dense_woodland");
|
||||
public static RegistryKey<Biome> dryland = register("dryland");
|
||||
public static RegistryKey<Biome> dry_boneyard = register("dry_boneyard");
|
||||
public static RegistryKey<Biome> fir_clearing = register("fir_clearing");
|
||||
public static RegistryKey<Biome> flower_meadow = register("flower_meadow");
|
||||
public static RegistryKey<Biome> fungal_field = register("fungal_field");
|
||||
public static RegistryKey<Biome> fungal_jungle = register("fungal_jungle");
|
||||
public static RegistryKey<Biome> golden_prairie = register("golden_prairie");
|
||||
public static RegistryKey<Biome> grassland = register("grassland");
|
||||
public static RegistryKey<Biome> grassland_clover_patch = register("grassland_clover_patch");
|
||||
public static RegistryKey<Biome> gravel_beach = register("gravel_beach");
|
||||
public static RegistryKey<Biome> grove = register("grove");
|
||||
public static RegistryKey<Biome> grove_clearing = register("grove_clearing");
|
||||
public static RegistryKey<Biome> grove_lakes = register("grove_lakes");
|
||||
public static RegistryKey<Biome> highland = register("highland");
|
||||
public static RegistryKey<Biome> highland_crag = register("highland_crag");
|
||||
public static RegistryKey<Biome> highland_moor = register("highland_moor");
|
||||
public static RegistryKey<Biome> jade_cliffs = register("jade_cliffs");
|
||||
public static RegistryKey<Biome> lavender_field = register("lavender_field");
|
||||
public static RegistryKey<Biome> lavender_forest = register("lavender_forest");
|
||||
public static RegistryKey<Biome> lush_desert = register("lush_desert");
|
||||
public static RegistryKey<Biome> lush_savanna = register("lush_savanna");
|
||||
public static RegistryKey<Biome> marsh = register("marsh");
|
||||
public static RegistryKey<Biome> meadow = register("meadow");
|
||||
public static RegistryKey<Biome> meadow_forest = register("meadow_forest");
|
||||
public static RegistryKey<Biome> muskeg = register("muskeg");
|
||||
public static RegistryKey<Biome> mystic_grove = register("mystic_grove");
|
||||
public static RegistryKey<Biome> mystic_plains = register("mystic_plains");
|
||||
public static RegistryKey<Biome> ominous_woods = register("ominous_woods");
|
||||
public static RegistryKey<Biome> ominous_mire = register("ominous_mire");
|
||||
public static RegistryKey<Biome> orchard = register("orchard");
|
||||
public static RegistryKey<Biome> origin_valley = register("origin_valley");
|
||||
public static RegistryKey<Biome> prairie = register("prairie");
|
||||
public static RegistryKey<Biome> rainbow_hills = register("rainbow_hills");
|
||||
public static RegistryKey<Biome> rainforest = register("rainforest");
|
||||
public static RegistryKey<Biome> rainforest_cliffs = register("rainforest_cliffs");
|
||||
public static RegistryKey<Biome> rainforest_floodplain = register("rainforest_floodplain");
|
||||
public static RegistryKey<Biome> redwood_forest = register("redwood_forest");
|
||||
public static RegistryKey<Biome> redwood_forest_edge = register("redwood_forest_edge");
|
||||
public static RegistryKey<Biome> redwood_hills = register("redwood_hills");
|
||||
public static RegistryKey<Biome> scrubland = register("scrubland");
|
||||
public static RegistryKey<Biome> seasonal_forest = register("seasonal_forest");
|
||||
public static RegistryKey<Biome> seasonal_orchard = register("seasonal_orchard");
|
||||
public static RegistryKey<Biome> seasonal_pumpkin_patch = register("seasonal_pumpkin_patch");
|
||||
public static RegistryKey<Biome> shroomy_wetland = register("shroomy_wetland");
|
||||
public static RegistryKey<Biome> shrubland = register("shrubland");
|
||||
public static RegistryKey<Biome> shrubland_hills = register("shrubland_hills");
|
||||
public static RegistryKey<Biome> snowy_coniferous_forest = register("snowy_coniferous_forest");
|
||||
public static RegistryKey<Biome> snowy_fir_clearing = register("snowy_fir_clearing");
|
||||
public static RegistryKey<Biome> snowy_maple_forest = register("snowy_maple_forest");
|
||||
public static RegistryKey<Biome> tall_dead_forest = register("tall_dead_forest");
|
||||
public static RegistryKey<Biome> tropic_beach = register("tropic_beach");
|
||||
public static RegistryKey<Biome> tropics = register("tropics");
|
||||
public static RegistryKey<Biome> tundra = register("tundra");
|
||||
public static RegistryKey<Biome> tundra_basin = register("tundra_basin");
|
||||
public static RegistryKey<Biome> tundra_bog = register("tundra_bog");
|
||||
public static RegistryKey<Biome> volcanic_plains = register("volcanic_plains");
|
||||
public static RegistryKey<Biome> volcano = register("volcano");
|
||||
public static RegistryKey<Biome> wasteland = register("wasteland");
|
||||
public static RegistryKey<Biome> wetland = register("wetland");
|
||||
public static RegistryKey<Biome> wetland_forest = register("wetland_forest");
|
||||
public static RegistryKey<Biome> wooded_scrubland = register("wooded_scrubland");
|
||||
public static RegistryKey<Biome> woodland = register("woodland");
|
||||
private static List<ResourceKey<Biome>> overworldBiomes = Lists.newArrayList();
|
||||
private static List<ResourceKey<Biome>> allBiomes = Lists.newArrayList();
|
||||
|
||||
public static RegistryKey<Biome> crystalline_chasm = register("crystalline_chasm");
|
||||
public static RegistryKey<Biome> undergrowth = register("undergrowth");
|
||||
public static RegistryKey<Biome> visceral_heap = register("visceral_heap");
|
||||
public static RegistryKey<Biome> withered_abyss = register("withered_abyss");
|
||||
public static final ResourceKey<Biome> BAMBOO_GROVE = registerOverworld("bamboo_grove");
|
||||
public static final ResourceKey<Biome> BAYOU = registerOverworld("bayou");
|
||||
public static final ResourceKey<Biome> BOG = registerOverworld("bog");
|
||||
public static final ResourceKey<Biome> BOREAL_FOREST = registerOverworld("boreal_forest");
|
||||
public static final ResourceKey<Biome> CHERRY_BLOSSOM_GROVE = registerOverworld("cherry_blossom_grove");
|
||||
public static final ResourceKey<Biome> CLOVER_PATCH = registerOverworld("clover_patch");
|
||||
public static final ResourceKey<Biome> COLD_DESERT = registerOverworld("cold_desert");
|
||||
public static final ResourceKey<Biome> CONIFEROUS_FOREST = registerOverworld("coniferous_forest");
|
||||
public static final ResourceKey<Biome> CRAG = registerOverworld("crag");
|
||||
public static final ResourceKey<Biome> CRYSTALLINE_CHASM = register("crystalline_chasm");
|
||||
public static final ResourceKey<Biome> DEAD_FOREST = registerOverworld("dead_forest");
|
||||
public static final ResourceKey<Biome> DRYLAND = registerOverworld("dryland");
|
||||
public static final ResourceKey<Biome> DUNE_BEACH = registerOverworld("dune_beach");
|
||||
public static final ResourceKey<Biome> ERUPTING_INFERNO = register("erupting_inferno");
|
||||
public static final ResourceKey<Biome> FIELD = registerOverworld("field");
|
||||
public static final ResourceKey<Biome> FIR_CLEARING = registerOverworld("fir_clearing");
|
||||
public static final ResourceKey<Biome> FLOODPLAIN = registerOverworld("floodplain");
|
||||
public static final ResourceKey<Biome> FORESTED_FIELD = registerOverworld("forested_field");
|
||||
public static final ResourceKey<Biome> FUNGAL_JUNGLE = registerOverworld("fungal_jungle");
|
||||
public static final ResourceKey<Biome> GLOWING_GROTTO = register("glowing_grotto");
|
||||
public static final ResourceKey<Biome> GRASSLAND = registerOverworld("grassland");
|
||||
public static final ResourceKey<Biome> HIGHLAND = registerOverworld("highland");
|
||||
public static final ResourceKey<Biome> HIGHLAND_MOOR = registerOverworld("highland_moor");
|
||||
public static final ResourceKey<Biome> JADE_CLIFFS = registerOverworld("jade_cliffs");
|
||||
public static final ResourceKey<Biome> LAVENDER_FIELD = registerOverworld("lavender_field");
|
||||
public static final ResourceKey<Biome> LAVENDER_FOREST = registerOverworld("lavender_forest");
|
||||
public static final ResourceKey<Biome> LUSH_DESERT = registerOverworld("lush_desert");
|
||||
public static final ResourceKey<Biome> LUSH_SAVANNA = registerOverworld("lush_savanna");
|
||||
public static final ResourceKey<Biome> MAPLE_WOODS = registerOverworld("maple_woods");
|
||||
public static final ResourceKey<Biome> MARSH = registerOverworld("marsh");
|
||||
public static final ResourceKey<Biome> MEDITERRANEAN_FOREST = registerOverworld("mediterranean_forest");
|
||||
public static final ResourceKey<Biome> MEDITERRANEAN_LAKES = registerOverworld("mediterranean_lakes");
|
||||
public static final ResourceKey<Biome> MUSKEG = registerOverworld("muskeg");
|
||||
public static final ResourceKey<Biome> MYSTIC_GROVE = registerOverworld("mystic_grove");
|
||||
public static final ResourceKey<Biome> OLD_GROWTH_DEAD_FOREST = registerOverworld("old_growth_dead_forest");
|
||||
public static final ResourceKey<Biome> OLD_GROWTH_WOODLAND = registerOverworld("old_growth_woodland");
|
||||
public static final ResourceKey<Biome> OMINOUS_WOODS = registerOverworld("ominous_woods");
|
||||
public static final ResourceKey<Biome> ORCHARD = registerOverworld("orchard");
|
||||
public static final ResourceKey<Biome> ORIGIN_VALLEY = registerOverworld("origin_valley");
|
||||
public static final ResourceKey<Biome> PASTURE = registerOverworld("pasture");
|
||||
public static final ResourceKey<Biome> PRAIRIE = registerOverworld("prairie");
|
||||
public static final ResourceKey<Biome> PUMPKIN_PATCH = registerOverworld("pumpkin_patch");
|
||||
public static final ResourceKey<Biome> RAINBOW_HILLS = registerOverworld("rainbow_hills");
|
||||
public static final ResourceKey<Biome> RAINFOREST = registerOverworld("rainforest");
|
||||
public static final ResourceKey<Biome> RAINFOREST_CLIFFS = registerOverworld("rainforest_cliffs");
|
||||
public static final ResourceKey<Biome> REDWOOD_FOREST = registerOverworld("redwood_forest");
|
||||
public static final ResourceKey<Biome> ROCKY_SHRUBLAND = registerOverworld("rocky_shrubland");
|
||||
public static final ResourceKey<Biome> SCRUBLAND = registerOverworld("scrubland");
|
||||
public static final ResourceKey<Biome> SEASONAL_FOREST = registerOverworld("seasonal_forest");
|
||||
public static final ResourceKey<Biome> SHRUBLAND = registerOverworld("shrubland");
|
||||
public static final ResourceKey<Biome> SNOWY_CONIFEROUS_FOREST = registerOverworld("snowy_coniferous_forest");
|
||||
public static final ResourceKey<Biome> SNOWY_FIR_CLEARING = registerOverworld("snowy_fir_clearing");
|
||||
public static final ResourceKey<Biome> SNOWY_MAPLE_WOODS = registerOverworld("snowy_maple_woods");
|
||||
public static final ResourceKey<Biome> SPIDER_NEST = register("spider_nest");
|
||||
public static final ResourceKey<Biome> TROPICS = registerOverworld("tropics");
|
||||
public static final ResourceKey<Biome> TUNDRA = registerOverworld("tundra");
|
||||
public static final ResourceKey<Biome> UNDERGROWTH = register("undergrowth");
|
||||
public static final ResourceKey<Biome> VISCERAL_HEAP = register("visceral_heap");
|
||||
public static final ResourceKey<Biome> VOLCANO = registerOverworld("volcano");
|
||||
public static final ResourceKey<Biome> VOLCANIC_PLAINS = registerOverworld("volcanic_plains");
|
||||
public static final ResourceKey<Biome> WASTELAND = registerOverworld("wasteland");
|
||||
public static final ResourceKey<Biome> WETLAND = registerOverworld("wetland");
|
||||
public static final ResourceKey<Biome> WITHERED_ABYSS = register("withered_abyss");
|
||||
public static final ResourceKey<Biome> WOODED_SCRUBLAND = registerOverworld("wooded_scrubland");
|
||||
public static final ResourceKey<Biome> WOODED_WASTELAND = registerOverworld("wooded_wasteland");
|
||||
public static final ResourceKey<Biome> WOODLAND = registerOverworld("woodland");
|
||||
|
||||
private static RegistryKey<Biome> register(String name)
|
||||
public static List<ResourceKey<Biome>> getOverworldBiomes()
|
||||
{
|
||||
return RegistryKey.create(Registry.BIOME_REGISTRY, new ResourceLocation(BiomesOPlenty.MOD_ID, name));
|
||||
return ImmutableList.copyOf(overworldBiomes);
|
||||
}
|
||||
|
||||
public static List<ResourceKey<Biome>> getAllBiomes()
|
||||
{
|
||||
return ImmutableList.copyOf(allBiomes);
|
||||
}
|
||||
|
||||
private static ResourceKey<Biome> registerOverworld(String name)
|
||||
{
|
||||
ResourceKey<Biome> key = ResourceKey.create(Registry.BIOME_REGISTRY, new ResourceLocation(BiomesOPlenty.MOD_ID, name));
|
||||
overworldBiomes.add(key);
|
||||
allBiomes.add(key);
|
||||
return key;
|
||||
}
|
||||
|
||||
private static ResourceKey<Biome> register(String name)
|
||||
{
|
||||
ResourceKey<Biome> key = ResourceKey.create(Registry.BIOME_REGISTRY, new ResourceLocation(BiomesOPlenty.MOD_ID, name));
|
||||
allBiomes.add(key);
|
||||
return key;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,346 +1,349 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
* Copyright 2021, the Glitchfiend Team.
|
||||
* All rights reserved.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.block;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.world.level.material.FlowingFluid;
|
||||
|
||||
public class BOPBlocks
|
||||
{
|
||||
public static Block white_sand;
|
||||
public static Block white_sandstone;
|
||||
public static Block cut_white_sandstone;
|
||||
public static Block cut_white_sandstone_slab;
|
||||
public static Block chiseled_white_sandstone;
|
||||
public static Block smooth_white_sandstone;
|
||||
public static Block smooth_white_sandstone_slab;
|
||||
public static Block smooth_white_sandstone_stairs;
|
||||
public static Block white_sandstone_slab;
|
||||
public static Block white_sandstone_stairs;
|
||||
public static Block white_sandstone_wall;
|
||||
public static Block WHITE_SAND;
|
||||
public static Block WHITE_SANDSTONE;
|
||||
public static Block CUT_WHITE_SANDSTONE;
|
||||
public static Block CUT_WHITE_SANDSTONE_SLAB;
|
||||
public static Block CHISELED_WHITE_SANDSTONE;
|
||||
public static Block SMOOTH_WHITE_SANDSTONE;
|
||||
public static Block SMOOTH_WHITE_SANDSTONE_SLAB;
|
||||
public static Block SMOOTH_WHITE_SANDSTONE_STAIRS;
|
||||
public static Block WHITE_SANDSTONE_SLAB;
|
||||
public static Block WHITE_SANDSTONE_STAIRS;
|
||||
public static Block WHITE_SANDSTONE_WALL;
|
||||
public static Block ORANGE_SAND;
|
||||
public static Block ORANGE_SANDSTONE;
|
||||
public static Block CUT_ORANGE_SANDSTONE;
|
||||
public static Block CUT_ORANGE_SANDSTONE_SLAB;
|
||||
public static Block CHISELED_ORANGE_SANDSTONE;
|
||||
public static Block SMOOTH_ORANGE_SANDSTONE;
|
||||
public static Block SMOOTH_ORANGE_SANDSTONE_SLAB;
|
||||
public static Block SMOOTH_ORANGE_SANDSTONE_STAIRS;
|
||||
public static Block ORANGE_SANDSTONE_SLAB;
|
||||
public static Block ORANGE_SANDSTONE_STAIRS;
|
||||
public static Block ORANGE_SANDSTONE_WALL;
|
||||
public static Block BLACK_SAND;
|
||||
public static Block BLACK_SANDSTONE;
|
||||
public static Block CUT_BLACK_SANDSTONE;
|
||||
public static Block CUT_BLACK_SANDSTONE_SLAB;
|
||||
public static Block CHISELED_BLACK_SANDSTONE;
|
||||
public static Block SMOOTH_BLACK_SANDSTONE;
|
||||
public static Block SMOOTH_BLACK_SANDSTONE_SLAB;
|
||||
public static Block SMOOTH_BLACK_SANDSTONE_STAIRS;
|
||||
public static Block BLACK_SANDSTONE_SLAB;
|
||||
public static Block BLACK_SANDSTONE_STAIRS;
|
||||
public static Block BLACK_SANDSTONE_WALL;
|
||||
public static Block MUD;
|
||||
public static Block MUD_BRICKS;
|
||||
public static Block MUD_BRICK_SLAB;
|
||||
public static Block MUD_BRICK_STAIRS;
|
||||
public static Block MUD_BRICK_WALL;
|
||||
public static Block ORIGIN_GRASS_BLOCK;
|
||||
public static Block ROOTED_SAND;
|
||||
public static Block DRIED_SALT;
|
||||
public static Block FLESH;
|
||||
public static Block POROUS_FLESH;
|
||||
public static Block BRIMSTONE;
|
||||
public static Block BRIMSTONE_FUMAROLE;
|
||||
public static Block ROSE_QUARTZ_BLOCK;
|
||||
public static Block TOADSTOOL_BLOCK;
|
||||
public static Block GLOWSHROOM_BLOCK;
|
||||
public static Block GLOWING_MOSS_CARPET;
|
||||
public static Block GLOWING_MOSS_BLOCK;
|
||||
public static Block SPIDER_EGG;
|
||||
public static Block ORIGIN_SAPLING;
|
||||
public static Block ORIGIN_LEAVES;
|
||||
public static Block FLOWERING_OAK_SAPLING;
|
||||
public static Block FLOWERING_OAK_LEAVES;
|
||||
public static Block RAINBOW_BIRCH_SAPLING;
|
||||
public static Block RAINBOW_BIRCH_LEAVES;
|
||||
public static Block YELLOW_AUTUMN_SAPLING;
|
||||
public static Block YELLOW_AUTUMN_LEAVES;
|
||||
public static Block ORANGE_AUTUMN_SAPLING;
|
||||
public static Block ORANGE_AUTUMN_LEAVES;
|
||||
public static Block MAPLE_SAPLING;
|
||||
public static Block MAPLE_LEAVES;
|
||||
public static Block FIR_SAPLING;
|
||||
public static Block FIR_LEAVES;
|
||||
public static Block FIR_LOG;
|
||||
public static Block STRIPPED_FIR_LOG;
|
||||
public static Block FIR_WOOD;
|
||||
public static Block STRIPPED_FIR_WOOD;
|
||||
public static Block FIR_PLANKS;
|
||||
public static Block FIR_SLAB;
|
||||
public static Block FIR_STAIRS;
|
||||
public static Block FIR_FENCE;
|
||||
public static Block FIR_FENCE_GATE;
|
||||
public static Block FIR_DOOR;
|
||||
public static Block FIR_TRAPDOOR;
|
||||
public static Block FIR_PRESSURE_PLATE;
|
||||
public static Block FIR_BUTTON;
|
||||
public static Block FIR_SIGN;
|
||||
public static Block FIR_WALL_SIGN;
|
||||
public static Block REDWOOD_SAPLING;
|
||||
public static Block REDWOOD_LEAVES;
|
||||
public static Block REDWOOD_LOG;
|
||||
public static Block STRIPPED_REDWOOD_LOG;
|
||||
public static Block REDWOOD_WOOD;
|
||||
public static Block STRIPPED_REDWOOD_WOOD;
|
||||
public static Block REDWOOD_PLANKS;
|
||||
public static Block REDWOOD_SLAB;
|
||||
public static Block REDWOOD_STAIRS;
|
||||
public static Block REDWOOD_FENCE;
|
||||
public static Block REDWOOD_FENCE_GATE;
|
||||
public static Block REDWOOD_DOOR;
|
||||
public static Block REDWOOD_TRAPDOOR;
|
||||
public static Block REDWOOD_PRESSURE_PLATE;
|
||||
public static Block REDWOOD_BUTTON;
|
||||
public static Block REDWOOD_SIGN;
|
||||
public static Block REDWOOD_WALL_SIGN;
|
||||
public static Block WHITE_CHERRY_SAPLING;
|
||||
public static Block WHITE_CHERRY_LEAVES;
|
||||
public static Block PINK_CHERRY_SAPLING;
|
||||
public static Block PINK_CHERRY_LEAVES;
|
||||
public static Block CHERRY_LOG;
|
||||
public static Block STRIPPED_CHERRY_LOG;
|
||||
public static Block CHERRY_WOOD;
|
||||
public static Block STRIPPED_CHERRY_WOOD;
|
||||
public static Block CHERRY_PLANKS;
|
||||
public static Block CHERRY_SLAB;
|
||||
public static Block CHERRY_STAIRS;
|
||||
public static Block CHERRY_FENCE;
|
||||
public static Block CHERRY_FENCE_GATE;
|
||||
public static Block CHERRY_DOOR;
|
||||
public static Block CHERRY_TRAPDOOR;
|
||||
public static Block CHERRY_PRESSURE_PLATE;
|
||||
public static Block CHERRY_BUTTON;
|
||||
public static Block CHERRY_SIGN;
|
||||
public static Block CHERRY_WALL_SIGN;
|
||||
public static Block MAHOGANY_SAPLING;
|
||||
public static Block MAHOGANY_LEAVES;
|
||||
public static Block MAHOGANY_LOG;
|
||||
public static Block STRIPPED_MAHOGANY_LOG;
|
||||
public static Block MAHOGANY_WOOD;
|
||||
public static Block STRIPPED_MAHOGANY_WOOD;
|
||||
public static Block MAHOGANY_PLANKS;
|
||||
public static Block MAHOGANY_SLAB;
|
||||
public static Block MAHOGANY_STAIRS;
|
||||
public static Block MAHOGANY_FENCE;
|
||||
public static Block MAHOGANY_FENCE_GATE;
|
||||
public static Block MAHOGANY_DOOR;
|
||||
public static Block MAHOGANY_TRAPDOOR;
|
||||
public static Block MAHOGANY_PRESSURE_PLATE;
|
||||
public static Block MAHOGANY_BUTTON;
|
||||
public static Block MAHOGANY_SIGN;
|
||||
public static Block MAHOGANY_WALL_SIGN;
|
||||
public static Block JACARANDA_SAPLING;
|
||||
public static Block JACARANDA_LEAVES;
|
||||
public static Block JACARANDA_LOG;
|
||||
public static Block STRIPPED_JACARANDA_LOG;
|
||||
public static Block JACARANDA_WOOD;
|
||||
public static Block STRIPPED_JACARANDA_WOOD;
|
||||
public static Block JACARANDA_PLANKS;
|
||||
public static Block JACARANDA_SLAB;
|
||||
public static Block JACARANDA_STAIRS;
|
||||
public static Block JACARANDA_FENCE;
|
||||
public static Block JACARANDA_FENCE_GATE;
|
||||
public static Block JACARANDA_DOOR;
|
||||
public static Block JACARANDA_TRAPDOOR;
|
||||
public static Block JACARANDA_PRESSURE_PLATE;
|
||||
public static Block JACARANDA_BUTTON;
|
||||
public static Block JACARANDA_SIGN;
|
||||
public static Block JACARANDA_WALL_SIGN;
|
||||
public static Block PALM_SAPLING;
|
||||
public static Block PALM_LEAVES;
|
||||
public static Block PALM_LOG;
|
||||
public static Block STRIPPED_PALM_LOG;
|
||||
public static Block PALM_WOOD;
|
||||
public static Block STRIPPED_PALM_WOOD;
|
||||
public static Block PALM_PLANKS;
|
||||
public static Block PALM_SLAB;
|
||||
public static Block PALM_STAIRS;
|
||||
public static Block PALM_FENCE;
|
||||
public static Block PALM_FENCE_GATE;
|
||||
public static Block PALM_DOOR;
|
||||
public static Block PALM_TRAPDOOR;
|
||||
public static Block PALM_PRESSURE_PLATE;
|
||||
public static Block PALM_BUTTON;
|
||||
public static Block PALM_SIGN;
|
||||
public static Block PALM_WALL_SIGN;
|
||||
public static Block WILLOW_SAPLING;
|
||||
public static Block WILLOW_LEAVES;
|
||||
public static Block WILLOW_LOG;
|
||||
public static Block STRIPPED_WILLOW_LOG;
|
||||
public static Block WILLOW_WOOD;
|
||||
public static Block STRIPPED_WILLOW_WOOD;
|
||||
public static Block WILLOW_PLANKS;
|
||||
public static Block WILLOW_SLAB;
|
||||
public static Block WILLOW_STAIRS;
|
||||
public static Block WILLOW_FENCE;
|
||||
public static Block WILLOW_FENCE_GATE;
|
||||
public static Block WILLOW_DOOR;
|
||||
public static Block WILLOW_TRAPDOOR;
|
||||
public static Block WILLOW_PRESSURE_PLATE;
|
||||
public static Block WILLOW_BUTTON;
|
||||
public static Block WILLOW_SIGN;
|
||||
public static Block WILLOW_WALL_SIGN;
|
||||
public static Block DEAD_SAPLING;
|
||||
public static Block DEAD_LEAVES;
|
||||
public static Block DEAD_LOG;
|
||||
public static Block STRIPPED_DEAD_LOG;
|
||||
public static Block DEAD_WOOD;
|
||||
public static Block STRIPPED_DEAD_WOOD;
|
||||
public static Block DEAD_PLANKS;
|
||||
public static Block DEAD_SLAB;
|
||||
public static Block DEAD_STAIRS;
|
||||
public static Block DEAD_FENCE;
|
||||
public static Block DEAD_FENCE_GATE;
|
||||
public static Block DEAD_DOOR;
|
||||
public static Block DEAD_TRAPDOOR;
|
||||
public static Block DEAD_PRESSURE_PLATE;
|
||||
public static Block DEAD_BUTTON;
|
||||
public static Block DEAD_SIGN;
|
||||
public static Block DEAD_WALL_SIGN;
|
||||
public static Block MAGIC_SAPLING;
|
||||
public static Block MAGIC_LEAVES;
|
||||
public static Block MAGIC_LOG;
|
||||
public static Block STRIPPED_MAGIC_LOG;
|
||||
public static Block MAGIC_WOOD;
|
||||
public static Block STRIPPED_MAGIC_WOOD;
|
||||
public static Block MAGIC_PLANKS;
|
||||
public static Block MAGIC_SLAB;
|
||||
public static Block MAGIC_STAIRS;
|
||||
public static Block MAGIC_FENCE;
|
||||
public static Block MAGIC_FENCE_GATE;
|
||||
public static Block MAGIC_DOOR;
|
||||
public static Block MAGIC_TRAPDOOR;
|
||||
public static Block MAGIC_PRESSURE_PLATE;
|
||||
public static Block MAGIC_BUTTON;
|
||||
public static Block MAGIC_SIGN;
|
||||
public static Block MAGIC_WALL_SIGN;
|
||||
public static Block UMBRAN_SAPLING;
|
||||
public static Block UMBRAN_LEAVES;
|
||||
public static Block UMBRAN_LOG;
|
||||
public static Block STRIPPED_UMBRAN_LOG;
|
||||
public static Block UMBRAN_WOOD;
|
||||
public static Block STRIPPED_UMBRAN_WOOD;
|
||||
public static Block UMBRAN_PLANKS;
|
||||
public static Block UMBRAN_SLAB;
|
||||
public static Block UMBRAN_STAIRS;
|
||||
public static Block UMBRAN_FENCE;
|
||||
public static Block UMBRAN_FENCE_GATE;
|
||||
public static Block UMBRAN_DOOR;
|
||||
public static Block UMBRAN_TRAPDOOR;
|
||||
public static Block UMBRAN_PRESSURE_PLATE;
|
||||
public static Block UMBRAN_BUTTON;
|
||||
public static Block UMBRAN_SIGN;
|
||||
public static Block UMBRAN_WALL_SIGN;
|
||||
public static Block HELLBARK_SAPLING;
|
||||
public static Block HELLBARK_LEAVES;
|
||||
public static Block HELLBARK_LOG;
|
||||
public static Block STRIPPED_HELLBARK_LOG;
|
||||
public static Block HELLBARK_WOOD;
|
||||
public static Block STRIPPED_HELLBARK_WOOD;
|
||||
public static Block HELLBARK_PLANKS;
|
||||
public static Block HELLBARK_SLAB;
|
||||
public static Block HELLBARK_STAIRS;
|
||||
public static Block HELLBARK_FENCE;
|
||||
public static Block HELLBARK_FENCE_GATE;
|
||||
public static Block HELLBARK_DOOR;
|
||||
public static Block HELLBARK_TRAPDOOR;
|
||||
public static Block HELLBARK_PRESSURE_PLATE;
|
||||
public static Block HELLBARK_BUTTON;
|
||||
public static Block HELLBARK_SIGN;
|
||||
public static Block HELLBARK_WALL_SIGN;
|
||||
public static Block ROSE;
|
||||
public static Block VIOLET;
|
||||
public static Block LAVENDER;
|
||||
public static Block WILDFLOWER;
|
||||
public static Block ORANGE_COSMOS;
|
||||
public static Block PINK_DAFFODIL;
|
||||
public static Block PINK_HIBISCUS;
|
||||
public static Block GLOWFLOWER;
|
||||
public static Block WILTED_LILY;
|
||||
public static Block BURNING_BLOSSOM;
|
||||
public static Block BLUE_HYDRANGEA;
|
||||
public static Block GOLDENROD;
|
||||
public static Block WILLOW_VINE;
|
||||
public static Block SPANISH_MOSS;
|
||||
public static Block SPANISH_MOSS_PLANT;
|
||||
public static Block TREE_ROOTS;
|
||||
public static Block TREE_ROOTS_STEM;
|
||||
public static Block GLOWWORM_SILK;
|
||||
public static Block GLOWWORM_SILK_STRAND;
|
||||
public static Block HANGING_COBWEB;
|
||||
public static Block HANGING_COBWEB_STRAND;
|
||||
public static Block STRINGY_COBWEB;
|
||||
public static Block WEBBING;
|
||||
public static Block SPROUT;
|
||||
public static Block BUSH;
|
||||
public static Block CLOVER;
|
||||
public static Block HUGE_CLOVER_PETAL;
|
||||
public static Block DUNE_GRASS;
|
||||
public static Block DESERT_GRASS;
|
||||
public static Block DEAD_GRASS;
|
||||
public static Block CATTAIL;
|
||||
public static Block BARLEY;
|
||||
public static Block SEA_OATS;
|
||||
public static Block REED;
|
||||
public static Block WATERGRASS;
|
||||
public static Block DEAD_BRANCH;
|
||||
public static Block BRAMBLE;
|
||||
public static Block TOADSTOOL;
|
||||
public static Block GLOWSHROOM;
|
||||
public static Block PUS_BUBBLE;
|
||||
public static Block FLESH_TENDONS;
|
||||
public static Block FLESH_TENDONS_STRAND;
|
||||
public static Block HAIR;
|
||||
public static Block BRIMSTONE_BUD;
|
||||
public static Block BRIMSTONE_CLUSTER;
|
||||
public static Block ROSE_QUARTZ_CLUSTER;
|
||||
public static Block LARGE_ROSE_QUARTZ_BUD;
|
||||
public static Block MEDIUM_ROSE_QUARTZ_BUD;
|
||||
public static Block SMALL_ROSE_QUARTZ_BUD;
|
||||
public static Block BLACKSTONE_SPINES;
|
||||
public static Block BLACKSTONE_BULB;
|
||||
public static Block BLOOD;
|
||||
|
||||
public static Block orange_sand;
|
||||
public static Block orange_sandstone;
|
||||
public static Block cut_orange_sandstone;
|
||||
public static Block cut_orange_sandstone_slab;
|
||||
public static Block chiseled_orange_sandstone;
|
||||
public static Block smooth_orange_sandstone;
|
||||
public static Block smooth_orange_sandstone_slab;
|
||||
public static Block smooth_orange_sandstone_stairs;
|
||||
public static Block orange_sandstone_slab;
|
||||
public static Block orange_sandstone_stairs;
|
||||
public static Block orange_sandstone_wall;
|
||||
|
||||
public static Block black_sand;
|
||||
public static Block black_sandstone;
|
||||
public static Block cut_black_sandstone;
|
||||
public static Block cut_black_sandstone_slab;
|
||||
public static Block chiseled_black_sandstone;
|
||||
public static Block smooth_black_sandstone;
|
||||
public static Block smooth_black_sandstone_slab;
|
||||
public static Block smooth_black_sandstone_stairs;
|
||||
public static Block black_sandstone_slab;
|
||||
public static Block black_sandstone_stairs;
|
||||
public static Block black_sandstone_wall;
|
||||
|
||||
public static Block mud;
|
||||
public static Block mud_bricks;
|
||||
public static Block mud_brick_slab;
|
||||
public static Block mud_brick_stairs;
|
||||
public static Block mud_brick_wall;
|
||||
|
||||
public static Block origin_grass_block;
|
||||
public static Block dried_salt;
|
||||
public static Block flesh;
|
||||
public static Block nether_crystal_block;
|
||||
public static Block nether_crystal;
|
||||
|
||||
public static Block toadstool_block;
|
||||
public static Block glowshroom_block;
|
||||
|
||||
public static Block origin_sapling;
|
||||
public static Block origin_leaves;
|
||||
public static Block flowering_oak_sapling;
|
||||
public static Block flowering_oak_leaves;
|
||||
public static Block rainbow_birch_sapling;
|
||||
public static Block rainbow_birch_leaves;
|
||||
public static Block yellow_autumn_sapling;
|
||||
public static Block yellow_autumn_leaves;
|
||||
public static Block orange_autumn_sapling;
|
||||
public static Block orange_autumn_leaves;
|
||||
public static Block maple_sapling;
|
||||
public static Block maple_leaves;
|
||||
|
||||
public static Block fir_sapling;
|
||||
public static Block fir_leaves;
|
||||
public static Block fir_log;
|
||||
public static Block stripped_fir_log;
|
||||
public static Block fir_wood;
|
||||
public static Block stripped_fir_wood;
|
||||
public static Block fir_planks;
|
||||
public static Block fir_slab;
|
||||
public static Block fir_stairs;
|
||||
public static Block fir_fence;
|
||||
public static Block fir_fence_gate;
|
||||
public static Block fir_door;
|
||||
public static Block fir_trapdoor;
|
||||
public static Block fir_pressure_plate;
|
||||
public static Block fir_button;
|
||||
public static Block fir_sign;
|
||||
public static Block fir_wall_sign;
|
||||
|
||||
public static Block redwood_sapling;
|
||||
public static Block redwood_leaves;
|
||||
public static Block redwood_log;
|
||||
public static Block stripped_redwood_log;
|
||||
public static Block redwood_wood;
|
||||
public static Block stripped_redwood_wood;
|
||||
public static Block redwood_planks;
|
||||
public static Block redwood_slab;
|
||||
public static Block redwood_stairs;
|
||||
public static Block redwood_fence;
|
||||
public static Block redwood_fence_gate;
|
||||
public static Block redwood_door;
|
||||
public static Block redwood_trapdoor;
|
||||
public static Block redwood_pressure_plate;
|
||||
public static Block redwood_button;
|
||||
public static Block redwood_sign;
|
||||
public static Block redwood_wall_sign;
|
||||
|
||||
public static Block white_cherry_sapling;
|
||||
public static Block white_cherry_leaves;
|
||||
public static Block pink_cherry_sapling;
|
||||
public static Block pink_cherry_leaves;
|
||||
public static Block cherry_log;
|
||||
public static Block stripped_cherry_log;
|
||||
public static Block cherry_wood;
|
||||
public static Block stripped_cherry_wood;
|
||||
public static Block cherry_planks;
|
||||
public static Block cherry_slab;
|
||||
public static Block cherry_stairs;
|
||||
public static Block cherry_fence;
|
||||
public static Block cherry_fence_gate;
|
||||
public static Block cherry_door;
|
||||
public static Block cherry_trapdoor;
|
||||
public static Block cherry_pressure_plate;
|
||||
public static Block cherry_button;
|
||||
public static Block cherry_sign;
|
||||
public static Block cherry_wall_sign;
|
||||
|
||||
public static Block mahogany_sapling;
|
||||
public static Block mahogany_leaves;
|
||||
public static Block mahogany_log;
|
||||
public static Block stripped_mahogany_log;
|
||||
public static Block mahogany_wood;
|
||||
public static Block stripped_mahogany_wood;
|
||||
public static Block mahogany_planks;
|
||||
public static Block mahogany_slab;
|
||||
public static Block mahogany_stairs;
|
||||
public static Block mahogany_fence;
|
||||
public static Block mahogany_fence_gate;
|
||||
public static Block mahogany_door;
|
||||
public static Block mahogany_trapdoor;
|
||||
public static Block mahogany_pressure_plate;
|
||||
public static Block mahogany_button;
|
||||
public static Block mahogany_sign;
|
||||
public static Block mahogany_wall_sign;
|
||||
|
||||
public static Block jacaranda_sapling;
|
||||
public static Block jacaranda_leaves;
|
||||
public static Block jacaranda_log;
|
||||
public static Block stripped_jacaranda_log;
|
||||
public static Block jacaranda_wood;
|
||||
public static Block stripped_jacaranda_wood;
|
||||
public static Block jacaranda_planks;
|
||||
public static Block jacaranda_slab;
|
||||
public static Block jacaranda_stairs;
|
||||
public static Block jacaranda_fence;
|
||||
public static Block jacaranda_fence_gate;
|
||||
public static Block jacaranda_door;
|
||||
public static Block jacaranda_trapdoor;
|
||||
public static Block jacaranda_pressure_plate;
|
||||
public static Block jacaranda_button;
|
||||
public static Block jacaranda_sign;
|
||||
public static Block jacaranda_wall_sign;
|
||||
|
||||
public static Block palm_sapling;
|
||||
public static Block palm_leaves;
|
||||
public static Block palm_log;
|
||||
public static Block stripped_palm_log;
|
||||
public static Block palm_wood;
|
||||
public static Block stripped_palm_wood;
|
||||
public static Block palm_planks;
|
||||
public static Block palm_slab;
|
||||
public static Block palm_stairs;
|
||||
public static Block palm_fence;
|
||||
public static Block palm_fence_gate;
|
||||
public static Block palm_door;
|
||||
public static Block palm_trapdoor;
|
||||
public static Block palm_pressure_plate;
|
||||
public static Block palm_button;
|
||||
public static Block palm_sign;
|
||||
public static Block palm_wall_sign;
|
||||
|
||||
public static Block willow_sapling;
|
||||
public static Block willow_leaves;
|
||||
public static Block willow_log;
|
||||
public static Block stripped_willow_log;
|
||||
public static Block willow_wood;
|
||||
public static Block stripped_willow_wood;
|
||||
public static Block willow_planks;
|
||||
public static Block willow_slab;
|
||||
public static Block willow_stairs;
|
||||
public static Block willow_fence;
|
||||
public static Block willow_fence_gate;
|
||||
public static Block willow_door;
|
||||
public static Block willow_trapdoor;
|
||||
public static Block willow_pressure_plate;
|
||||
public static Block willow_button;
|
||||
public static Block willow_sign;
|
||||
public static Block willow_wall_sign;
|
||||
|
||||
public static Block dead_sapling;
|
||||
public static Block dead_leaves;
|
||||
public static Block dead_log;
|
||||
public static Block stripped_dead_log;
|
||||
public static Block dead_wood;
|
||||
public static Block stripped_dead_wood;
|
||||
public static Block dead_planks;
|
||||
public static Block dead_slab;
|
||||
public static Block dead_stairs;
|
||||
public static Block dead_fence;
|
||||
public static Block dead_fence_gate;
|
||||
public static Block dead_door;
|
||||
public static Block dead_trapdoor;
|
||||
public static Block dead_pressure_plate;
|
||||
public static Block dead_button;
|
||||
public static Block dead_sign;
|
||||
public static Block dead_wall_sign;
|
||||
|
||||
public static Block magic_sapling;
|
||||
public static Block magic_leaves;
|
||||
public static Block magic_log;
|
||||
public static Block stripped_magic_log;
|
||||
public static Block magic_wood;
|
||||
public static Block stripped_magic_wood;
|
||||
public static Block magic_planks;
|
||||
public static Block magic_slab;
|
||||
public static Block magic_stairs;
|
||||
public static Block magic_fence;
|
||||
public static Block magic_fence_gate;
|
||||
public static Block magic_door;
|
||||
public static Block magic_trapdoor;
|
||||
public static Block magic_pressure_plate;
|
||||
public static Block magic_button;
|
||||
public static Block magic_sign;
|
||||
public static Block magic_wall_sign;
|
||||
|
||||
public static Block umbran_sapling;
|
||||
public static Block umbran_leaves;
|
||||
public static Block umbran_log;
|
||||
public static Block stripped_umbran_log;
|
||||
public static Block umbran_wood;
|
||||
public static Block stripped_umbran_wood;
|
||||
public static Block umbran_planks;
|
||||
public static Block umbran_slab;
|
||||
public static Block umbran_stairs;
|
||||
public static Block umbran_fence;
|
||||
public static Block umbran_fence_gate;
|
||||
public static Block umbran_door;
|
||||
public static Block umbran_trapdoor;
|
||||
public static Block umbran_pressure_plate;
|
||||
public static Block umbran_button;
|
||||
public static Block umbran_sign;
|
||||
public static Block umbran_wall_sign;
|
||||
|
||||
public static Block hellbark_sapling;
|
||||
public static Block hellbark_leaves;
|
||||
public static Block hellbark_log;
|
||||
public static Block stripped_hellbark_log;
|
||||
public static Block hellbark_wood;
|
||||
public static Block stripped_hellbark_wood;
|
||||
public static Block hellbark_planks;
|
||||
public static Block hellbark_slab;
|
||||
public static Block hellbark_stairs;
|
||||
public static Block hellbark_fence;
|
||||
public static Block hellbark_fence_gate;
|
||||
public static Block hellbark_door;
|
||||
public static Block hellbark_trapdoor;
|
||||
public static Block hellbark_pressure_plate;
|
||||
public static Block hellbark_button;
|
||||
public static Block hellbark_sign;
|
||||
public static Block hellbark_wall_sign;
|
||||
|
||||
public static Block rose;
|
||||
public static Block violet;
|
||||
public static Block lavender;
|
||||
public static Block wildflower;
|
||||
public static Block orange_cosmos;
|
||||
public static Block pink_daffodil;
|
||||
public static Block pink_hibiscus;
|
||||
public static Block glowflower;
|
||||
public static Block wilted_lily;
|
||||
public static Block burning_blossom;
|
||||
|
||||
public static Block blue_hydrangea;
|
||||
public static Block goldenrod;
|
||||
|
||||
public static Block willow_vine;
|
||||
public static Block spanish_moss;
|
||||
public static Block spanish_moss_plant;
|
||||
|
||||
public static Block sprout;
|
||||
public static Block bush;
|
||||
public static Block clover;
|
||||
public static Block huge_clover_petal;
|
||||
public static Block dune_grass;
|
||||
public static Block desert_grass;
|
||||
public static Block dead_grass;
|
||||
public static Block cattail;
|
||||
public static Block barley;
|
||||
public static Block reed;
|
||||
public static Block watergrass;
|
||||
public static Block mangrove_root;
|
||||
public static Block dead_branch;
|
||||
public static Block bramble;
|
||||
|
||||
public static Block toadstool;
|
||||
public static Block glowshroom;
|
||||
|
||||
public static Block potted_origin_sapling;
|
||||
public static Block potted_flowering_oak_sapling;
|
||||
public static Block potted_rainbow_birch_sapling;
|
||||
public static Block potted_yellow_autumn_sapling;
|
||||
public static Block potted_orange_autumn_sapling;
|
||||
public static Block potted_maple_sapling;
|
||||
public static Block potted_fir_sapling;
|
||||
public static Block potted_redwood_sapling;
|
||||
public static Block potted_white_cherry_sapling;
|
||||
public static Block potted_pink_cherry_sapling;
|
||||
public static Block potted_mahogany_sapling;
|
||||
public static Block potted_jacaranda_sapling;
|
||||
public static Block potted_palm_sapling;
|
||||
public static Block potted_willow_sapling;
|
||||
public static Block potted_dead_sapling;
|
||||
public static Block potted_magic_sapling;
|
||||
public static Block potted_umbran_sapling;
|
||||
public static Block potted_hellbark_sapling;
|
||||
public static Block potted_rose;
|
||||
public static Block potted_violet;
|
||||
public static Block potted_lavender;
|
||||
public static Block potted_wildflower;
|
||||
public static Block potted_orange_cosmos;
|
||||
public static Block potted_pink_daffodil;
|
||||
public static Block potted_pink_hibiscus;
|
||||
public static Block potted_glowflower;
|
||||
public static Block potted_wilted_lily;
|
||||
public static Block potted_burning_blossom;
|
||||
public static Block potted_sprout;
|
||||
public static Block potted_clover;
|
||||
public static Block potted_toadstool;
|
||||
public static Block potted_glowshroom;
|
||||
public static Block POTTED_ORIGIN_SAPLING;
|
||||
public static Block POTTED_FLOWERING_OAK_SAPLING;
|
||||
public static Block POTTED_RAINBOW_BIRCH_SAPLING;
|
||||
public static Block POTTED_YELLOW_AUTUMN_SAPLING;
|
||||
public static Block POTTED_ORANGE_AUTUMN_SAPLING;
|
||||
public static Block POTTED_MAPLE_SAPLING;
|
||||
public static Block POTTED_FIR_SAPLING;
|
||||
public static Block POTTED_REDWOOD_SAPLING;
|
||||
public static Block POTTED_WHITE_CHERRY_SAPLING;
|
||||
public static Block POTTED_PINK_CHERRY_SAPLING;
|
||||
public static Block POTTED_MAHOGANY_SAPLING;
|
||||
public static Block POTTED_JACARANDA_SAPLING;
|
||||
public static Block POTTED_PALM_SAPLING;
|
||||
public static Block POTTED_WILLOW_SAPLING;
|
||||
public static Block POTTED_DEAD_SAPLING;
|
||||
public static Block POTTED_MAGIC_SAPLING;
|
||||
public static Block POTTED_UMBRAN_SAPLING;
|
||||
public static Block POTTED_HELLBARK_SAPLING;
|
||||
public static Block POTTED_ROSE;
|
||||
public static Block POTTED_VIOLET;
|
||||
public static Block POTTED_LAVENDER;
|
||||
public static Block POTTED_WILDFLOWER;
|
||||
public static Block POTTED_ORANGE_COSMOS;
|
||||
public static Block POTTED_PINK_DAFFODIL;
|
||||
public static Block POTTED_PINK_HIBISCUS;
|
||||
public static Block POTTED_GLOWFLOWER;
|
||||
public static Block POTTED_WILTED_LILY;
|
||||
public static Block POTTED_BURNING_BLOSSOM;
|
||||
public static Block POTTED_SPROUT;
|
||||
public static Block POTTED_CLOVER;
|
||||
public static Block POTTED_TOADSTOOL;
|
||||
public static Block POTTED_GLOWSHROOM;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
package biomesoplenty.api.block;
|
||||
|
||||
import net.minecraft.world.level.material.FlowingFluid;
|
||||
|
||||
public class BOPFluids
|
||||
{
|
||||
public static FlowingFluid FLOWING_BLOOD;
|
||||
public static FlowingFluid BLOOD;
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.entity;
|
||||
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.entity.item.BoatEntity;
|
||||
|
||||
public class BOPEntities
|
||||
{
|
||||
public static EntityType<? extends BoatEntity> boat_bop;
|
||||
}
|
|
@ -1,211 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.enums;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.common.util.biome.BiomeUtil;
|
||||
import biomesoplenty.init.ModBiomes;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Sets;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.biome.Biomes;
|
||||
import net.minecraft.world.gen.INoiseRandom;
|
||||
import net.minecraftforge.common.BiomeManager;
|
||||
import net.minecraftforge.common.BiomeManager.BiomeType;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public enum BOPClimates
|
||||
{
|
||||
ICE_CAP (BiomeType.ICY),
|
||||
TUNDRA (BiomeType.ICY),
|
||||
WET_BOREAL (BiomeType.COOL),
|
||||
DRY_BOREAL (BiomeType.COOL),
|
||||
WET_TEMPERATE (BiomeType.COOL),
|
||||
DRY_TEMPERATE (BiomeType.WARM),
|
||||
COOL_TEMPERATE (BiomeType.COOL),
|
||||
WARM_TEMPERATE (BiomeType.WARM),
|
||||
SUBTROPICAL (BiomeType.WARM),
|
||||
TROPICAL (BiomeType.DESERT),
|
||||
MEDITERRANEAN (BiomeType.WARM),
|
||||
SAVANNA (BiomeType.DESERT),
|
||||
HOT_DESERT (BiomeType.DESERT),
|
||||
WASTELAND (null),
|
||||
NETHER (null);
|
||||
|
||||
public final BiomeType biomeType;
|
||||
private int totalBiomesWeight;
|
||||
private int totalIslandBiomesWeight;
|
||||
|
||||
private ArrayList<WeightedBiomeEntry> landBiomes = Lists.newArrayList();
|
||||
private ArrayList<WeightedBiomeEntry> islandBiomes = Lists.newArrayList();
|
||||
|
||||
BOPClimates(BiomeType biomeType)
|
||||
{
|
||||
this.biomeType = biomeType;
|
||||
}
|
||||
|
||||
public BOPClimates addBiome(int weight, RegistryKey<Biome> biome)
|
||||
{
|
||||
return this.addBiome(new WeightedBiomeEntry(weight, biome));
|
||||
}
|
||||
|
||||
public BOPClimates addBiome(WeightedBiomeEntry biomeEntry)
|
||||
{
|
||||
this.totalBiomesWeight += biomeEntry.weight;
|
||||
this.landBiomes.add(biomeEntry);
|
||||
return this;
|
||||
}
|
||||
|
||||
public BOPClimates addIslandBiome(int weight, RegistryKey<Biome> biome)
|
||||
{
|
||||
return this.addIslandBiome(new WeightedBiomeEntry(weight, biome));
|
||||
}
|
||||
|
||||
public BOPClimates addIslandBiome(WeightedBiomeEntry biomeEntry)
|
||||
{
|
||||
this.totalIslandBiomesWeight += biomeEntry.weight;
|
||||
this.islandBiomes.add(biomeEntry);
|
||||
return this;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getRandomBiome(INoiseRandom context, RegistryKey<Biome> fallback)
|
||||
{
|
||||
if (this.totalBiomesWeight == 0)
|
||||
return fallback;
|
||||
|
||||
int weight = context.nextRandom(this.totalBiomesWeight);
|
||||
Iterator<WeightedBiomeEntry> iterator = this.landBiomes.iterator();
|
||||
WeightedBiomeEntry item;
|
||||
do
|
||||
{
|
||||
item = iterator.next();
|
||||
weight -= item.weight;
|
||||
}
|
||||
while (weight >= 0);
|
||||
return item.biome;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getRandomIslandBiome(INoiseRandom context, RegistryKey<Biome> fallback)
|
||||
{
|
||||
if (this.totalIslandBiomesWeight == 0)
|
||||
return fallback;
|
||||
|
||||
int weight = context.nextRandom(this.totalIslandBiomesWeight);
|
||||
Iterator<WeightedBiomeEntry> iterator = this.islandBiomes.iterator();
|
||||
WeightedBiomeEntry item;
|
||||
do
|
||||
{
|
||||
item = iterator.next();
|
||||
weight -= item.weight;
|
||||
}
|
||||
while (weight >= 0);
|
||||
return item.biome;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getRandomOceanBiome(INoiseRandom context, boolean deep)
|
||||
{
|
||||
return (deep ? Biomes.DEEP_OCEAN : Biomes.OCEAN);
|
||||
}
|
||||
|
||||
public ImmutableList<WeightedBiomeEntry> getLandBiomes()
|
||||
{
|
||||
return this.landBiomes.isEmpty() ? ImmutableList.of(this.getDefaultWeightedBiomeEntry()) : ImmutableList.copyOf(this.landBiomes);
|
||||
}
|
||||
|
||||
public ImmutableList<WeightedBiomeEntry> getIslandBiomes()
|
||||
{
|
||||
return this.islandBiomes.isEmpty() ? ImmutableList.of(this.getDefaultWeightedBiomeEntry()) : ImmutableList.copyOf(this.islandBiomes);
|
||||
}
|
||||
|
||||
private WeightedBiomeEntry getDefaultWeightedBiomeEntry()
|
||||
{
|
||||
return new WeightedBiomeEntry(100, Biomes.OCEAN);
|
||||
}
|
||||
|
||||
private static BOPClimates[] values = BOPClimates.values();
|
||||
|
||||
public static BOPClimates lookup(int i) {return values[i];}
|
||||
|
||||
// map temperature and rainfall to climates
|
||||
// temperature values from 0 (cold) to 8 (hot) and rainfall values from 0 (wet) to 11 (dry), index is (temperatureValue * 12) + rainfallValue
|
||||
// we will contrive to make any combination equally likely, so the overall rarity of each climate is in proportion to the number of times it appears in the array
|
||||
private static final BOPClimates[] climateMapping = new BOPClimates[]
|
||||
{
|
||||
TUNDRA, TUNDRA, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, TUNDRA, TUNDRA,
|
||||
WET_BOREAL, WET_BOREAL, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, DRY_BOREAL, DRY_BOREAL,
|
||||
WET_BOREAL, WET_BOREAL, WET_BOREAL, WET_BOREAL, WET_BOREAL, WET_BOREAL, DRY_BOREAL, DRY_BOREAL, DRY_BOREAL, DRY_BOREAL, DRY_BOREAL, DRY_BOREAL,
|
||||
WET_TEMPERATE, WET_TEMPERATE, WET_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE,
|
||||
WET_TEMPERATE, WET_TEMPERATE, WET_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE,
|
||||
SUBTROPICAL, SUBTROPICAL, WET_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, DRY_TEMPERATE, SAVANNA, SAVANNA,
|
||||
SUBTROPICAL, SUBTROPICAL, SUBTROPICAL, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, SAVANNA, SAVANNA, SAVANNA,
|
||||
TROPICAL, TROPICAL, SUBTROPICAL, SUBTROPICAL, MEDITERRANEAN, MEDITERRANEAN, MEDITERRANEAN, MEDITERRANEAN, SAVANNA, SAVANNA, HOT_DESERT, HOT_DESERT,
|
||||
TROPICAL, TROPICAL, SUBTROPICAL, SUBTROPICAL, MEDITERRANEAN, MEDITERRANEAN, MEDITERRANEAN, MEDITERRANEAN, SAVANNA, SAVANNA, HOT_DESERT, HOT_DESERT
|
||||
};
|
||||
|
||||
public static int[] getClimateMappingInts()
|
||||
{
|
||||
// 9 temperature values, 12 rainfall values, 12 * 9 = 108
|
||||
int[] out = new int[108];
|
||||
for (int i = 0; i < 108; i++)
|
||||
{
|
||||
out[i] = climateMapping[i].ordinal();
|
||||
}
|
||||
return out;
|
||||
}
|
||||
|
||||
public static ImmutableSet<RegistryKey<Biome>> getOverworldBiomes()
|
||||
{
|
||||
Set<RegistryKey<Biome>> set = Sets.newHashSet();
|
||||
|
||||
for (BOPClimates climate : BOPClimates.values())
|
||||
{
|
||||
if (climate == BOPClimates.NETHER)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
set.addAll(climate.getLandBiomes().stream().map(weightedBiomeEntry -> weightedBiomeEntry.biome).collect(Collectors.toSet()));
|
||||
set.addAll(climate.getIslandBiomes().stream().map(weightedBiomeEntry -> weightedBiomeEntry.biome).collect(Collectors.toSet()));
|
||||
}
|
||||
|
||||
ModBiomes.subBiomes.values().forEach(weightedSubBiome -> set.add(weightedSubBiome.biome));
|
||||
return ImmutableSet.copyOf(set);
|
||||
}
|
||||
|
||||
public static class WeightedBiomeEntry
|
||||
{
|
||||
public final int weight;
|
||||
public final RegistryKey<Biome> biome;
|
||||
|
||||
public WeightedBiomeEntry(int weight, RegistryKey<Biome> biome)
|
||||
{
|
||||
this.weight = weight;
|
||||
this.biome = biome;
|
||||
}
|
||||
}
|
||||
|
||||
// for debugging purposes
|
||||
public static void printWeights()
|
||||
{
|
||||
for (BOPClimates climate : BOPClimates.values())
|
||||
{
|
||||
for (WeightedBiomeEntry entry : climate.landBiomes)
|
||||
{
|
||||
System.out.println(climate.name()+" "+entry.biome.location()+" "+entry.weight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -1,32 +1,33 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
* Copyright 2021, the Glitchfiend Team.
|
||||
* All rights reserved.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.item;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.world.item.Item;
|
||||
|
||||
public class BOPItems
|
||||
public class BOPItems
|
||||
{
|
||||
public static Item bop_icon;
|
||||
public static Item BOP_ICON;
|
||||
|
||||
public static Item mud_ball;
|
||||
public static Item mud_brick;
|
||||
public static Item MUD_BALL;
|
||||
public static Item MUD_BRICK;
|
||||
|
||||
public static Item fir_boat;
|
||||
public static Item redwood_boat;
|
||||
public static Item cherry_boat;
|
||||
public static Item mahogany_boat;
|
||||
public static Item jacaranda_boat;
|
||||
public static Item palm_boat;
|
||||
public static Item willow_boat;
|
||||
public static Item dead_boat;
|
||||
public static Item magic_boat;
|
||||
public static Item umbran_boat;
|
||||
public static Item hellbark_boat;
|
||||
public static Item ROSE_QUARTZ_SHARD;
|
||||
|
||||
public static Item music_disc_wanderer;
|
||||
public static Item FIR_BOAT;
|
||||
public static Item REDWOOD_BOAT;
|
||||
public static Item CHERRY_BOAT;
|
||||
public static Item MAHOGANY_BOAT;
|
||||
public static Item JACARANDA_BOAT;
|
||||
public static Item PALM_BOAT;
|
||||
public static Item WILLOW_BOAT;
|
||||
public static Item DEAD_BOAT;
|
||||
public static Item MAGIC_BOAT;
|
||||
public static Item UMBRAN_BOAT;
|
||||
public static Item HELLBARK_BOAT;
|
||||
|
||||
public static Item MUSIC_DISC_WANDERER;
|
||||
|
||||
public static Item BLOOD_BUCKET;
|
||||
}
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.particle;
|
||||
|
||||
public enum BOPParticleTypes
|
||||
{
|
||||
MUD
|
||||
}
|
|
@ -1,15 +1,17 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
* Copyright 2021, the Glitchfiend Team.
|
||||
* All rights reserved.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.api.sound;
|
||||
|
||||
import net.minecraft.util.SoundEvent;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
|
||||
public class BOPSounds
|
||||
{
|
||||
public static SoundEvent music_disc_wanderer;
|
||||
public static SoundEvent MUSIC_DISC_WANDERER;
|
||||
public static SoundEvent MUSIC_BIOME_CRYSTALLINE_CHASM;
|
||||
public static SoundEvent MUSIC_BIOME_ERUPTING_INFERNO;
|
||||
public static SoundEvent MUSIC_BIOME_UNDERGROWTH;
|
||||
public static SoundEvent MUSIC_BIOME_VISCERAL_HEAP;
|
||||
public static SoundEvent MUSIC_BIOME_WITHERED_ABYSS;
|
||||
}
|
||||
|
|
|
@ -1,141 +0,0 @@
|
|||
/**Copied from Twilight Forest and modified with permission**/
|
||||
|
||||
package biomesoplenty.client;
|
||||
|
||||
import biomesoplenty.core.BiomesOPlenty;
|
||||
import com.google.common.base.Joiner;
|
||||
import net.minecraft.resources.ResourcePack;
|
||||
import net.minecraft.resources.ResourcePackFileNotFoundException;
|
||||
import net.minecraft.resources.ResourcePackType;
|
||||
import net.minecraft.resources.data.IMetadataSectionSerializer;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.fml.loading.moddiscovery.ModFile;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.StandardOpenOption;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Set;
|
||||
import java.util.function.Predicate;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public class BOPClassicPack extends ResourcePack
|
||||
{
|
||||
private final ModFile modFile;
|
||||
private static final String subDir = "classic/";
|
||||
|
||||
public BOPClassicPack(ModFile modFile)
|
||||
{
|
||||
super(modFile.getFilePath().toFile());
|
||||
this.modFile = modFile;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<String> getNamespaces(ResourcePackType type)
|
||||
{
|
||||
try
|
||||
{
|
||||
Path root = modFile.getLocator().findPath(modFile, subDir + type.getDirectory()).toAbsolutePath();
|
||||
return Files.walk(root,1).map(path -> root.relativize(path.toAbsolutePath())).filter(path -> path.getNameCount() > 0).map(p->p.toString().replaceAll("/$","")).filter(s -> !s.isEmpty()).collect(Collectors.toSet());
|
||||
}
|
||||
catch (Throwable t)
|
||||
{
|
||||
BiomesOPlenty.logger.error("BOPClassicPack failed to collect resource namespaces!", t);
|
||||
return Collections.emptySet();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected InputStream getResource(String location) throws IOException
|
||||
{
|
||||
final Path path = modFile.getLocator().findPath(modFile, subDir + location);
|
||||
|
||||
if (!Files.exists(path))
|
||||
{
|
||||
BiomesOPlenty.logger.error("File does not exist!");
|
||||
throw new ResourcePackFileNotFoundException(path.toFile(), location);
|
||||
}
|
||||
|
||||
return Files.newInputStream(path, StandardOpenOption.READ);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean hasResource(String resourcePath)
|
||||
{
|
||||
return Files.exists(modFile.getLocator().findPath(modFile, subDir + resourcePath));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<ResourceLocation> getResources(ResourcePackType type, String namespaceIn, String pathIn, int maxDepthIn, Predicate<String> filterIn)
|
||||
{
|
||||
try
|
||||
{
|
||||
Path root = modFile.getLocator().findPath(modFile, subDir + type.getDirectory()).toAbsolutePath();
|
||||
Path inputPath = root.getFileSystem().getPath(pathIn);
|
||||
|
||||
return Files.walk(root).map(path -> root.relativize(path.toAbsolutePath())).filter(path -> path.getNameCount() > 1 && path.getNameCount() - 1 <= maxDepthIn).filter(path -> !path.toString().endsWith(".mcmeta")).filter(path -> path.subpath(1, path.getNameCount()).startsWith(inputPath)).filter(path -> filterIn.test(path.getFileName().toString())).map(path -> new ResourceLocation(path.getName(0).toString(), Joiner.on('/').join(path.subpath(1, Math.min(maxDepthIn, path.getNameCount()))))).collect(Collectors.toList());
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
return Collections.emptyList();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() { }
|
||||
|
||||
@Override
|
||||
public String getName()
|
||||
{
|
||||
return "BOP Programmer Art";
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public <T> T getMetadataSection(IMetadataSectionSerializer<T> serializer) throws IOException
|
||||
{
|
||||
InputStream inputStream = getResource("pack.mcmeta");
|
||||
Throwable throwable = null;
|
||||
T resourceMetaData;
|
||||
|
||||
try
|
||||
{
|
||||
resourceMetaData = getMetadataFromStream(serializer, inputStream);
|
||||
}
|
||||
catch (Throwable t)
|
||||
{
|
||||
throwable = t;
|
||||
throw t;
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (inputStream != null)
|
||||
{
|
||||
if (throwable != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
inputStream.close();
|
||||
}
|
||||
catch (Throwable t)
|
||||
{
|
||||
throwable.addSuppressed(t);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
inputStream.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return resourceMetaData;
|
||||
}
|
||||
}
|
|
@ -1,54 +0,0 @@
|
|||
package biomesoplenty.client.handler;
|
||||
|
||||
import biomesoplenty.init.ModBiomes;
|
||||
import biomesoplenty.init.ModConfig;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.screen.*;
|
||||
import net.minecraft.util.text.TranslationTextComponent;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.client.event.GuiOpenEvent;
|
||||
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.FORGE)
|
||||
public class GuiEventHandler
|
||||
{
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
@SubscribeEvent
|
||||
public static void onGuiOpened(GuiOpenEvent event)
|
||||
{
|
||||
Screen gui = event.getGui();
|
||||
Minecraft mc = Minecraft.getInstance();
|
||||
Screen prevScreen = mc.screen;
|
||||
|
||||
// Default to the bop worldtype
|
||||
if (ModConfig.ClientConfig.useWorldType.get() && gui instanceof CreateWorldScreen && prevScreen instanceof WorldSelectionScreen)
|
||||
{
|
||||
WorldOptionsScreen optionsScreen = ((CreateWorldScreen)gui).worldGenSettingsComponent;
|
||||
optionsScreen.preset = Optional.of(findBopBiomeGeneratorTypeScreen());
|
||||
optionsScreen.settings = optionsScreen.preset.get().create(optionsScreen.registryHolder, optionsScreen.settings.seed(), optionsScreen.settings.generateFeatures(), optionsScreen.settings.generateBonusChest());
|
||||
}
|
||||
}
|
||||
|
||||
private static BiomeGeneratorTypeScreens findBopBiomeGeneratorTypeScreen()
|
||||
{
|
||||
for (BiomeGeneratorTypeScreens screen : BiomeGeneratorTypeScreens.PRESETS)
|
||||
{
|
||||
// Skip screens that don't use a TranslationTextComponent because definitely they're not ours
|
||||
if (!(screen.description instanceof TranslationTextComponent))
|
||||
continue;
|
||||
|
||||
TranslationTextComponent desc = (TranslationTextComponent)screen.description;
|
||||
|
||||
if (desc.getKey().equals("generator.minecraft.biomesoplenty"))
|
||||
{
|
||||
return screen;
|
||||
}
|
||||
}
|
||||
|
||||
throw new RuntimeException("Failed to locate biomesoplenty biome generator type screen!");
|
||||
}
|
||||
}
|
|
@ -1,78 +0,0 @@
|
|||
package biomesoplenty.client.renderer;
|
||||
|
||||
import biomesoplenty.common.entity.item.BoatEntityBOP;
|
||||
import com.mojang.blaze3d.matrix.MatrixStack;
|
||||
import com.mojang.blaze3d.vertex.IVertexBuilder;
|
||||
import net.minecraft.client.renderer.IRenderTypeBuffer;
|
||||
import net.minecraft.client.renderer.RenderType;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderer;
|
||||
import net.minecraft.client.renderer.entity.EntityRendererManager;
|
||||
import net.minecraft.client.renderer.entity.model.BoatModel;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.util.math.vector.Quaternion;
|
||||
import net.minecraft.util.math.vector.Vector3f;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
|
||||
import static biomesoplenty.core.BiomesOPlenty.MOD_ID;
|
||||
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public class BoatRendererBOP extends EntityRenderer<BoatEntityBOP> {
|
||||
protected final BoatModel model = new BoatModel();
|
||||
|
||||
public BoatRendererBOP(EntityRendererManager renderer) {
|
||||
super(renderer);
|
||||
this.shadowRadius = 0.8f;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(BoatEntityBOP entity, float entityYaw, float partialTicks, MatrixStack matrixStack, IRenderTypeBuffer renderTypeBuffer, int light) {
|
||||
matrixStack.pushPose();
|
||||
matrixStack.translate(0d, 0.375d, 0d);
|
||||
matrixStack.mulPose(Vector3f.YP.rotationDegrees(180f - entityYaw));
|
||||
float f = (float) entity.getHurtTime() - partialTicks;
|
||||
float f1 = entity.getDamage() - partialTicks;
|
||||
if (f1 < 0f) {
|
||||
f1 = 0f;
|
||||
}
|
||||
if (f > 0f) {
|
||||
matrixStack.mulPose(Vector3f.XP.rotationDegrees(MathHelper.sin(f) * f * f1 / 10f * (float) entity.getHurtDir()));
|
||||
}
|
||||
float f2 = entity.getBubbleAngle(partialTicks);
|
||||
if (!MathHelper.equal(f2, 0f)) {
|
||||
matrixStack.mulPose(new Quaternion(new Vector3f(1f, 0f, 1f), entity.getBubbleAngle(partialTicks), true));
|
||||
}
|
||||
matrixStack.scale(-1f, -1f, 1f);
|
||||
matrixStack.mulPose(Vector3f.YP.rotationDegrees(90.0F));
|
||||
this.model.setupAnim(entity, partialTicks, 0f, -0.1f, 0f, 0f);
|
||||
IVertexBuilder ivertexbuilder = renderTypeBuffer.getBuffer(this.model.renderType(this.getTextureLocation(entity)));
|
||||
this.model.renderToBuffer(matrixStack, ivertexbuilder, light, OverlayTexture.NO_OVERLAY, 1f, 1f, 1f, 1f);
|
||||
if (!entity.isUnderWater()) {
|
||||
IVertexBuilder ivertexbuilder1 = renderTypeBuffer.getBuffer(RenderType.waterMask());
|
||||
this.model.waterPatch().render(matrixStack, ivertexbuilder1, light, OverlayTexture.NO_OVERLAY);
|
||||
}
|
||||
matrixStack.popPose();
|
||||
super.render(entity, entityYaw, partialTicks, matrixStack, renderTypeBuffer, light);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResourceLocation getTextureLocation(BoatEntityBOP entity) {
|
||||
return BOAT_TEXTURE_LOCATIONS[entity.getModel().ordinal()];
|
||||
}
|
||||
|
||||
private static final ResourceLocation[] BOAT_TEXTURE_LOCATIONS = new ResourceLocation[] {
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/fir.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/redwood.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/cherry.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/mahogany.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/jacaranda.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/palm.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/willow.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/dead.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/magic.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/umbran.png"),
|
||||
new ResourceLocation(MOD_ID, "textures/entity/boat/hellbark.png")
|
||||
};
|
||||
}
|
|
@ -1,64 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome;
|
||||
|
||||
import com.google.common.collect.Maps;
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.TreeMap;
|
||||
|
||||
public class BiomeConfigData
|
||||
{
|
||||
@SerializedName("standard_weights")
|
||||
public TreeMap<String, WeightedBiomeEntry> standardBiomeWeights = Maps.newTreeMap();
|
||||
|
||||
@SerializedName("technical_biome_toggles")
|
||||
public TreeMap<String, ToggleableBiomeEntry> technicalBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
@SerializedName("sub_biome_weights")
|
||||
public TreeMap<String, SubBiomeEntry> subBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
@SerializedName("island_biome_toggles")
|
||||
public TreeMap<String, ToggleableBiomeEntry> islandBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
@SerializedName("vanilla_biome_weights")
|
||||
public TreeMap<String, WeightedBiomeEntry> vanillaBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
public static class WeightedBiomeEntry
|
||||
{
|
||||
public int weight;
|
||||
|
||||
public WeightedBiomeEntry(int weight)
|
||||
{
|
||||
this.weight = weight;
|
||||
}
|
||||
}
|
||||
|
||||
public static class ToggleableBiomeEntry
|
||||
{
|
||||
public boolean enabled;
|
||||
|
||||
public ToggleableBiomeEntry(boolean enabled)
|
||||
{
|
||||
this.enabled = enabled;
|
||||
}
|
||||
}
|
||||
|
||||
public static class SubBiomeEntry
|
||||
{
|
||||
public int weight;
|
||||
public float rarity;
|
||||
|
||||
public SubBiomeEntry(int weight, float rarity)
|
||||
{
|
||||
this.weight = weight;
|
||||
this.rarity = rarity;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2020, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.util.biome.BiomeUtil;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.biome.Biomes;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.BiFunction;
|
||||
|
||||
public class BiomeMetadata
|
||||
{
|
||||
private final ImmutableMap<BOPClimates, Integer> weightMap;
|
||||
|
||||
@Nullable
|
||||
private final RegistryKey<Biome> beachBiome;
|
||||
|
||||
@Nullable
|
||||
private final RegistryKey<Biome> riverBiome;
|
||||
|
||||
@Nullable
|
||||
private final BiFunction<Double, Double, Integer> foliageColorFunction;
|
||||
|
||||
@Nullable
|
||||
private final BiFunction<Double, Double, Integer> grassColorFunction;
|
||||
|
||||
@Nullable
|
||||
private final BiFunction<Double, Double, Integer> waterColorFunction;
|
||||
|
||||
protected BiomeMetadata(Map<BOPClimates, Integer> weights, @Nullable RegistryKey<Biome> beachBiome, @Nullable RegistryKey<Biome> riverBiome, BiFunction<Double, Double, Integer> foliageColorFunction, BiFunction<Double, Double, Integer> grassColorFunction, BiFunction<Double, Double, Integer> waterColorFunction)
|
||||
{
|
||||
this.weightMap = ImmutableMap.copyOf(weights);
|
||||
this.beachBiome = beachBiome;
|
||||
this.riverBiome = riverBiome;
|
||||
this.foliageColorFunction = foliageColorFunction;
|
||||
this.grassColorFunction = grassColorFunction;
|
||||
this.waterColorFunction = waterColorFunction;
|
||||
}
|
||||
|
||||
public Map<BOPClimates, Integer> getWeightMap()
|
||||
{
|
||||
return this.weightMap;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public RegistryKey<Biome> getBeachBiome()
|
||||
{
|
||||
return this.beachBiome;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public RegistryKey<Biome> getRiverBiome()
|
||||
{
|
||||
return this.riverBiome;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public BiFunction<Double, Double, Integer> getFoliageColorFunction()
|
||||
{
|
||||
return this.foliageColorFunction;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public BiFunction<Double, Double, Integer> getGrassColorFunction()
|
||||
{
|
||||
return this.grassColorFunction;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public BiFunction<Double, Double, Integer> getWaterColorFunction()
|
||||
{
|
||||
return this.waterColorFunction;
|
||||
}
|
||||
|
||||
public boolean hasWeights()
|
||||
{
|
||||
return !this.weightMap.isEmpty() && !this.weightMap.entrySet().stream().allMatch((entry) -> entry.getValue().equals(0));
|
||||
}
|
||||
}
|
|
@ -1,680 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.util.biome.BiomeUtil;
|
||||
import biomesoplenty.common.util.config.JsonUtil;
|
||||
import biomesoplenty.core.BiomesOPlenty;
|
||||
import biomesoplenty.init.ModBiomes;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.google.common.collect.Sets;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraftforge.fml.loading.FMLPaths;
|
||||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.io.File;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.*;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class BiomeRegistry
|
||||
{
|
||||
private static final String CONFIG_FILE_NAME = "biomes.json";
|
||||
|
||||
private static Map<RegistrationType, List<DeferredRegistration>> deferrances = Maps.newHashMap();
|
||||
|
||||
public static void deferStandardRegistration(BiomeTemplate biome, String name)
|
||||
{
|
||||
defer(RegistrationType.STANDARD_BIOME, new StandardBiomeRegistrationData(biome, name));
|
||||
}
|
||||
|
||||
public static void deferTechnicalBiomeRegistration(BiomeTemplate biome, String name)
|
||||
{
|
||||
defer(RegistrationType.TECHNICAL_BIOME, new ToggleableStandardBiomeRegistrationData(biome, name, true));
|
||||
}
|
||||
|
||||
public static void deferSubBiomeRegistration(RegistryKey<Biome> parent, RegistryKey<Biome> child, int weight, float rarity)
|
||||
{
|
||||
// Don't register sub biome if the parent or child don't exist
|
||||
if (!BiomeUtil.exists(parent) || !BiomeUtil.exists(child)) {
|
||||
return;
|
||||
}
|
||||
|
||||
defer(RegistrationType.SUB_BIOME, new SubBiomeRegistrationData(parent, child, weight, rarity));
|
||||
}
|
||||
|
||||
public static void deferIslandBiomeRegistration(RegistryKey<Biome> key, BOPClimates climate, int weight)
|
||||
{
|
||||
if (!BiomeUtil.exists(key))
|
||||
return;
|
||||
|
||||
defer(RegistrationType.ISLAND_BIOME, new SingleClimateRegistrationData(key, climate, weight));
|
||||
}
|
||||
|
||||
public static void deferVanillaBiomeRegistration(RegistryKey<Biome> key, BOPClimates climate, int weight)
|
||||
{
|
||||
if (!BiomeUtil.exists(key))
|
||||
return;
|
||||
|
||||
defer(RegistrationType.VANILLA_BIOME, new SingleClimateRegistrationData(key, climate, weight));
|
||||
}
|
||||
|
||||
public static void configureStandardBiomes()
|
||||
{
|
||||
List<DeferredRegistration> standardRegistrations = deferrances.get(RegistrationType.STANDARD_BIOME);
|
||||
TreeMap<String, BiomeConfigData.WeightedBiomeEntry> defaultEntries = Maps.newTreeMap();
|
||||
Map<String, StandardBiomeRegistrationData> regDataMap = Maps.newHashMap();
|
||||
|
||||
for (DeferredRegistration<StandardBiomeRegistrationData> registration : standardRegistrations)
|
||||
{
|
||||
StandardBiomeRegistrationData regData = registration.regData;
|
||||
|
||||
// Ignore biomes which don't have any weights set by default
|
||||
if (regData.getMetadata().hasWeights())
|
||||
{
|
||||
String biomeName = new ResourceLocation(BiomesOPlenty.MOD_ID, regData.getName()).toString();
|
||||
Pair<BOPClimates, Integer> primaryWeight = regData.getPrimaryWeight();
|
||||
defaultEntries.put(biomeName, new BiomeConfigData.WeightedBiomeEntry(primaryWeight.getValue()));
|
||||
regDataMap.put(biomeName, registration.regData);
|
||||
}
|
||||
}
|
||||
|
||||
BiomeConfigData defaultConfigData = new BiomeConfigData();
|
||||
defaultConfigData.standardBiomeWeights = defaultEntries;
|
||||
BiomeConfigData configData = getConfigData(defaultConfigData);
|
||||
|
||||
TreeMap<String, BiomeConfigData.WeightedBiomeEntry> revisedStandardBiomeWeights = Maps.newTreeMap(defaultEntries);
|
||||
|
||||
// Merge the config file with the default values
|
||||
for (Map.Entry<String, BiomeConfigData.WeightedBiomeEntry> biomeEntry : configData.standardBiomeWeights.entrySet())
|
||||
{
|
||||
if (revisedStandardBiomeWeights.containsKey(biomeEntry.getKey()))
|
||||
{
|
||||
revisedStandardBiomeWeights.put(biomeEntry.getKey(), biomeEntry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// Write back to the config file
|
||||
configData.standardBiomeWeights = revisedStandardBiomeWeights;
|
||||
JsonUtil.writeFile(getConfigFile(), configData);
|
||||
|
||||
for (Map.Entry<String, BiomeConfigData.WeightedBiomeEntry> biomeEntry : configData.standardBiomeWeights.entrySet())
|
||||
{
|
||||
String name = biomeEntry.getKey();
|
||||
BiomeConfigData.WeightedBiomeEntry weight = biomeEntry.getValue();
|
||||
|
||||
// Replace the default weight map for this biome with those from the config file
|
||||
if (regDataMap.containsKey(name))
|
||||
{
|
||||
StandardBiomeRegistrationData registrationData = regDataMap.get(name);
|
||||
registrationData.setPrimaryWeight(weight.weight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void configureTechnicalBiomes()
|
||||
{
|
||||
List<DeferredRegistration> biomeRegistrations = deferrances.get(RegistrationType.TECHNICAL_BIOME);
|
||||
TreeMap<String, BiomeConfigData.ToggleableBiomeEntry> defaultBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
for (DeferredRegistration<ToggleableStandardBiomeRegistrationData> registration : biomeRegistrations)
|
||||
{
|
||||
ToggleableStandardBiomeRegistrationData regData = registration.regData;
|
||||
String biomeName = new ResourceLocation(BiomesOPlenty.MOD_ID, regData.getName()).toString();
|
||||
defaultBiomeEntries.put(biomeName, new BiomeConfigData.ToggleableBiomeEntry(true));
|
||||
}
|
||||
|
||||
BiomeConfigData defaultConfigData = new BiomeConfigData();
|
||||
defaultConfigData.technicalBiomeEntries = defaultBiomeEntries;
|
||||
BiomeConfigData configData = getConfigData(defaultConfigData);
|
||||
|
||||
TreeMap<String, BiomeConfigData.ToggleableBiomeEntry> revisedBiomeEntries = Maps.newTreeMap(defaultBiomeEntries);
|
||||
|
||||
// Merge the config file with the default values
|
||||
for (Map.Entry<String, BiomeConfigData.ToggleableBiomeEntry> biomeEntry : configData.technicalBiomeEntries.entrySet())
|
||||
{
|
||||
if (revisedBiomeEntries.containsKey(biomeEntry.getKey()))
|
||||
{
|
||||
revisedBiomeEntries.put(biomeEntry.getKey(), biomeEntry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// Write back to the config file
|
||||
configData.technicalBiomeEntries = revisedBiomeEntries;
|
||||
JsonUtil.writeFile(getConfigFile(), configData);
|
||||
|
||||
for (DeferredRegistration<ToggleableStandardBiomeRegistrationData> registration : biomeRegistrations)
|
||||
{
|
||||
ToggleableStandardBiomeRegistrationData regData = registration.regData;
|
||||
String biomeName = new ResourceLocation(BiomesOPlenty.MOD_ID, regData.getName()).toString();
|
||||
|
||||
if (revisedBiomeEntries.containsKey(biomeName))
|
||||
{
|
||||
BiomeConfigData.ToggleableBiomeEntry entry = revisedBiomeEntries.get(biomeName);
|
||||
|
||||
if (!entry.enabled)
|
||||
{
|
||||
registration.regData.setEnabled(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void configureSubBiomes()
|
||||
{
|
||||
List<DeferredRegistration> subBiomeRegistrations = deferrances.get(RegistrationType.SUB_BIOME);
|
||||
TreeMap<String, BiomeConfigData.SubBiomeEntry> defaultSubBiomeEntries = Maps.newTreeMap();
|
||||
Map<String, SubBiomeRegistrationData> regDataMap = Maps.newHashMap();
|
||||
|
||||
for (DeferredRegistration<SubBiomeRegistrationData> registration : subBiomeRegistrations)
|
||||
{
|
||||
SubBiomeRegistrationData regData = registration.regData;
|
||||
String biomeName = registration.regData.getChild().location().toString();
|
||||
defaultSubBiomeEntries.put(biomeName, new BiomeConfigData.SubBiomeEntry(regData.getWeight(), regData.getRarity()));
|
||||
regDataMap.put(biomeName, registration.regData);
|
||||
}
|
||||
|
||||
BiomeConfigData defaultConfigData = new BiomeConfigData();
|
||||
defaultConfigData.subBiomeEntries = defaultSubBiomeEntries;
|
||||
BiomeConfigData configData = getConfigData(defaultConfigData);
|
||||
|
||||
TreeMap<String, BiomeConfigData.SubBiomeEntry> revisedSubBiomeEntries = Maps.newTreeMap(defaultSubBiomeEntries);
|
||||
|
||||
// Merge the config file with the default values
|
||||
for (Map.Entry<String, BiomeConfigData.SubBiomeEntry> biomeEntry : configData.subBiomeEntries.entrySet())
|
||||
{
|
||||
if (revisedSubBiomeEntries.containsKey(biomeEntry.getKey()))
|
||||
{
|
||||
revisedSubBiomeEntries.put(biomeEntry.getKey(), biomeEntry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// Write back to the config file
|
||||
configData.subBiomeEntries = revisedSubBiomeEntries;
|
||||
JsonUtil.writeFile(getConfigFile(), configData);
|
||||
|
||||
for (Map.Entry<String, BiomeConfigData.SubBiomeEntry> biomeEntry : configData.subBiomeEntries.entrySet())
|
||||
{
|
||||
String name = biomeEntry.getKey();
|
||||
BiomeConfigData.SubBiomeEntry subBiomeEntry = biomeEntry.getValue();
|
||||
|
||||
// Replace the default values for this biome with those from the config file
|
||||
if (regDataMap.containsKey(name))
|
||||
{
|
||||
SubBiomeRegistrationData registrationData = regDataMap.get(name);
|
||||
registrationData.setWeight(subBiomeEntry.weight);
|
||||
registrationData.setRarity(subBiomeEntry.rarity);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void configureIslandBiomes()
|
||||
{
|
||||
List<DeferredRegistration> biomeRegistrations = deferrances.get(RegistrationType.ISLAND_BIOME);
|
||||
TreeMap<String, BiomeConfigData.ToggleableBiomeEntry> defaultBiomeEntries = Maps.newTreeMap();
|
||||
|
||||
for (DeferredRegistration<SingleClimateRegistrationData> registration : biomeRegistrations)
|
||||
{
|
||||
SingleClimateRegistrationData regData = registration.regData;
|
||||
String biomeName = regData.getBiome().location().toString();
|
||||
defaultBiomeEntries.put(biomeName, new BiomeConfigData.ToggleableBiomeEntry(true));
|
||||
}
|
||||
|
||||
BiomeConfigData defaultConfigData = new BiomeConfigData();
|
||||
defaultConfigData.islandBiomeEntries = defaultBiomeEntries;
|
||||
BiomeConfigData configData = getConfigData(defaultConfigData);
|
||||
|
||||
TreeMap<String, BiomeConfigData.ToggleableBiomeEntry> revisedBiomeEntries = Maps.newTreeMap(defaultBiomeEntries);
|
||||
|
||||
// Merge the config file with the default values
|
||||
for (Map.Entry<String, BiomeConfigData.ToggleableBiomeEntry> biomeEntry : configData.islandBiomeEntries.entrySet())
|
||||
{
|
||||
if (revisedBiomeEntries.containsKey(biomeEntry.getKey()))
|
||||
{
|
||||
revisedBiomeEntries.put(biomeEntry.getKey(), biomeEntry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// Write back to the config file
|
||||
configData.islandBiomeEntries = revisedBiomeEntries;
|
||||
JsonUtil.writeFile(getConfigFile(), configData);
|
||||
|
||||
for (DeferredRegistration<SingleClimateRegistrationData> registration : biomeRegistrations)
|
||||
{
|
||||
SingleClimateRegistrationData regData = registration.regData;
|
||||
String biomeName = regData.getBiome().location().toString();
|
||||
|
||||
if (revisedBiomeEntries.containsKey(biomeName))
|
||||
{
|
||||
BiomeConfigData.ToggleableBiomeEntry entry = revisedBiomeEntries.get(biomeName);
|
||||
|
||||
if (!entry.enabled)
|
||||
{
|
||||
registration.regData.setWeight(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void configureVanillaBiomes()
|
||||
{
|
||||
List<DeferredRegistration> biomeRegistrations = deferrances.get(RegistrationType.VANILLA_BIOME);
|
||||
TreeMap<String, BiomeConfigData.WeightedBiomeEntry> defaultBiomeEntries = Maps.newTreeMap();
|
||||
Map<String, SingleClimateRegistrationData> regDataMap = Maps.newHashMap();
|
||||
|
||||
for (DeferredRegistration<SingleClimateRegistrationData> registration : biomeRegistrations)
|
||||
{
|
||||
SingleClimateRegistrationData regData = registration.regData;
|
||||
String biomeName = registration.regData.getBiome().location().toString();
|
||||
defaultBiomeEntries.put(biomeName, new BiomeConfigData.WeightedBiomeEntry(regData.getWeight()));
|
||||
regDataMap.put(biomeName, registration.regData);
|
||||
}
|
||||
|
||||
BiomeConfigData defaultConfigData = new BiomeConfigData();
|
||||
defaultConfigData.vanillaBiomeEntries = defaultBiomeEntries;
|
||||
BiomeConfigData configData = getConfigData(defaultConfigData);
|
||||
|
||||
TreeMap<String, BiomeConfigData.WeightedBiomeEntry> revisedBiomeEntries = Maps.newTreeMap(defaultBiomeEntries);
|
||||
|
||||
// Merge the config file with the default values
|
||||
for (Map.Entry<String, BiomeConfigData.WeightedBiomeEntry> biomeEntry : configData.vanillaBiomeEntries.entrySet())
|
||||
{
|
||||
if (revisedBiomeEntries.containsKey(biomeEntry.getKey()))
|
||||
{
|
||||
revisedBiomeEntries.put(biomeEntry.getKey(), biomeEntry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
// Write back to the config file
|
||||
configData.vanillaBiomeEntries = revisedBiomeEntries;
|
||||
JsonUtil.writeFile(getConfigFile(), configData);
|
||||
|
||||
for (Map.Entry<String, BiomeConfigData.WeightedBiomeEntry> biomeEntry : configData.vanillaBiomeEntries.entrySet())
|
||||
{
|
||||
String name = biomeEntry.getKey();
|
||||
BiomeConfigData.WeightedBiomeEntry islandBiomeEntry = biomeEntry.getValue();
|
||||
|
||||
// Replace the default values for this biome with those from the config file
|
||||
if (regDataMap.containsKey(name))
|
||||
{
|
||||
SingleClimateRegistrationData registrationData = regDataMap.get(name);
|
||||
registrationData.setWeight(islandBiomeEntry.weight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static File getConfigDirFile()
|
||||
{
|
||||
Path configPath = FMLPaths.CONFIGDIR.get();
|
||||
Path bopConfigPath = Paths.get(configPath.toAbsolutePath().toString(), "biomesoplenty");
|
||||
return bopConfigPath.toFile();
|
||||
}
|
||||
|
||||
private static File getConfigFile()
|
||||
{
|
||||
return new File(getConfigDirFile(), CONFIG_FILE_NAME);
|
||||
}
|
||||
|
||||
private static BiomeConfigData getConfigData(BiomeConfigData defaultConfigData)
|
||||
{
|
||||
BiomeConfigData configData = JsonUtil.getOrCreateConfigFile(getConfigDirFile(), CONFIG_FILE_NAME, defaultConfigData, new TypeToken<BiomeConfigData>(){}.getType());
|
||||
return configData;
|
||||
}
|
||||
|
||||
private static <T extends IRegistrationData> void defer(RegistrationType type, T data)
|
||||
{
|
||||
if (!deferrances.containsKey(type))
|
||||
deferrances.put(type, Lists.newArrayList());
|
||||
|
||||
List<DeferredRegistration> list = deferrances.get(type);
|
||||
list.add(new DeferredRegistration(type.regFunc, data));
|
||||
}
|
||||
|
||||
public static void finalizeRegistrations(RegistrationType type)
|
||||
{
|
||||
if (!deferrances.containsKey(type))
|
||||
return;
|
||||
|
||||
if (type == RegistrationType.SUB_BIOME)
|
||||
{
|
||||
Set<RegistryKey<Biome>> children = Sets.newHashSet();
|
||||
deferrances.get(RegistrationType.SUB_BIOME).forEach((reg) -> {
|
||||
RegistryKey<Biome> biome = ((SubBiomeRegistrationData)reg.regData).getChild();
|
||||
if (children.contains(biome))
|
||||
{
|
||||
throw new RuntimeException(String.format("Sub biome %s cannot be added to multiple parents", biome.location().toString()));
|
||||
}
|
||||
children.add(biome);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
for (DeferredRegistration reg : deferrances.get(type))
|
||||
{
|
||||
reg.register();
|
||||
}
|
||||
}
|
||||
|
||||
public enum RegistrationType
|
||||
{
|
||||
STANDARD_BIOME((StandardBiomeRegistrationData data) -> {
|
||||
Biome biome = data.getBiome();
|
||||
BiomeMetadata metadata = data.getMetadata();
|
||||
String name = data.getName();
|
||||
|
||||
// Don't register biomes with their weight set to 0, that normally have weights that are non-zero
|
||||
if (!metadata.getWeightMap().isEmpty() && (data.weightMap.isEmpty() || data.weightMap.entrySet().stream().allMatch((entry) -> entry.getValue().equals(0))))
|
||||
{
|
||||
BiomesOPlenty.logger.debug("Weights absent for " + data.getName() + ", disabling...");
|
||||
return;
|
||||
}
|
||||
|
||||
biome.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, name));
|
||||
ForgeRegistries.BIOMES.register(biome);
|
||||
|
||||
for (Map.Entry<BOPClimates, Integer> entry : data.getWeights().entrySet())
|
||||
{
|
||||
if (entry != null && entry.getValue() > 0)
|
||||
{
|
||||
BOPClimates climate = entry.getKey();
|
||||
int weight = entry.getValue();
|
||||
BiomesOPlenty.logger.debug(String.format("%s weight set to %d for climate %s", name, weight, climate.name()));
|
||||
climate.addBiome(weight, BiomeUtil.createKey(data.getBiome()));
|
||||
}
|
||||
}
|
||||
|
||||
if (data.getMetadata() != null)
|
||||
{
|
||||
ModBiomes.biomeMetadata.put(BiomeUtil.createKey(data.getBiome()), data.getMetadata());
|
||||
}
|
||||
}),
|
||||
TECHNICAL_BIOME((ToggleableStandardBiomeRegistrationData data) -> {
|
||||
Biome biome = data.getBiome();
|
||||
String name = data.getName();
|
||||
|
||||
if (!data.getEnabled())
|
||||
{
|
||||
BiomesOPlenty.logger.debug("Technical biome " + data.getName() + " is disabled.");
|
||||
return;
|
||||
}
|
||||
|
||||
biome.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, name));
|
||||
ForgeRegistries.BIOMES.register(biome);
|
||||
|
||||
if (data.getMetadata() != null)
|
||||
{
|
||||
ModBiomes.biomeMetadata.put(BiomeUtil.createKey(data.getBiome()), data.getMetadata());
|
||||
}
|
||||
}),
|
||||
SUB_BIOME((SubBiomeRegistrationData data) -> {
|
||||
if (data.getWeight() == 0)
|
||||
{
|
||||
BiomesOPlenty.logger.debug("Weights absent for sub biome" + data.getChild().location().toString() + ", disabling...");
|
||||
return;
|
||||
}
|
||||
|
||||
String childName = data.getChild().location().toString();
|
||||
BiomesOPlenty.logger.debug(String.format("Sub biome %s weight set to %d", childName, data.getWeight()));
|
||||
ModBiomes.subBiomes.put(BiomeUtil.getBiomeId(data.getParent()), new ModBiomes.WeightedSubBiome(data.getChild(), data.getRarity(), data.getWeight()));
|
||||
}),
|
||||
ISLAND_BIOME((SingleClimateRegistrationData data) -> {
|
||||
if (data.getWeight() == 0)
|
||||
{
|
||||
BiomesOPlenty.logger.debug("Weights absent for island biome" + data.getBiome().location().toString() + ", disabling...");
|
||||
return;
|
||||
}
|
||||
|
||||
String biomeName = data.getBiome().location().toString();
|
||||
BiomesOPlenty.logger.debug(String.format("Island biome %s weight set to %d for climate %s", biomeName, data.getWeight(), data.getClimate().name()));
|
||||
ModBiomes.islandBiomeIds.add(BiomeUtil.getBiomeId(data.getBiome()));
|
||||
data.getClimate().addIslandBiome(data.getWeight(), data.getBiome());
|
||||
}),
|
||||
VANILLA_BIOME((SingleClimateRegistrationData data) -> {
|
||||
if (data.getWeight() == 0)
|
||||
{
|
||||
BiomesOPlenty.logger.debug("Weights absent for vanilla biome" + data.getBiome().location().toString() + ", disabling...");
|
||||
return;
|
||||
}
|
||||
|
||||
data.getClimate().addBiome(data.getWeight(), data.getBiome());
|
||||
});
|
||||
|
||||
public final Consumer<? extends IRegistrationData> regFunc;
|
||||
|
||||
RegistrationType(Consumer<? extends IRegistrationData> regFunc)
|
||||
{
|
||||
this.regFunc = regFunc;
|
||||
}
|
||||
}
|
||||
|
||||
private interface IRegistrationData
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private static abstract class TemplateRegistrationData implements IRegistrationData
|
||||
{
|
||||
private final Biome biome;
|
||||
private final BiomeMetadata metadata;
|
||||
|
||||
public TemplateRegistrationData(BiomeTemplate template)
|
||||
{
|
||||
this.biome = template.build();
|
||||
this.metadata = template.buildMetadata();
|
||||
}
|
||||
|
||||
public TemplateRegistrationData(Biome biome)
|
||||
{
|
||||
this.biome = biome;
|
||||
this.metadata = null;
|
||||
}
|
||||
|
||||
public Biome getBiome()
|
||||
{
|
||||
return this.biome;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public BiomeMetadata getMetadata()
|
||||
{
|
||||
return this.metadata;
|
||||
}
|
||||
}
|
||||
|
||||
private static class StandardBiomeRegistrationData extends TemplateRegistrationData
|
||||
{
|
||||
private final String name;
|
||||
private Map<BOPClimates, Integer> weightMap;
|
||||
|
||||
public StandardBiomeRegistrationData(BiomeTemplate biome, String name)
|
||||
{
|
||||
super(biome);
|
||||
this.name = name;
|
||||
this.weightMap = Maps.newHashMap(this.getMetadata().getWeightMap());
|
||||
this.ensureSingleWeight();
|
||||
}
|
||||
|
||||
public String getName()
|
||||
{
|
||||
return this.name;
|
||||
}
|
||||
|
||||
public ImmutableMap<BOPClimates, Integer> getWeights()
|
||||
{
|
||||
return ImmutableMap.copyOf(this.weightMap);
|
||||
}
|
||||
|
||||
public int getWeight(BOPClimates climate)
|
||||
{
|
||||
return this.weightMap.get(climate);
|
||||
}
|
||||
|
||||
public void setWeight(BOPClimates climate, int weight)
|
||||
{
|
||||
this.weightMap.put(climate, weight);
|
||||
this.ensureSingleWeight();
|
||||
}
|
||||
|
||||
public Pair<BOPClimates, Integer> getPrimaryWeight()
|
||||
{
|
||||
List<Pair<BOPClimates, Integer>> pairs = Lists.newArrayList();
|
||||
this.weightMap.entrySet().forEach((entry) -> pairs.add(Pair.of(entry.getKey(), entry.getValue())));
|
||||
return pairs.get(0);
|
||||
}
|
||||
|
||||
public void setPrimaryWeight(int value)
|
||||
{
|
||||
BOPClimates climate = this.getPrimaryWeight().getKey();
|
||||
this.setWeight(climate, value);
|
||||
}
|
||||
|
||||
// This limitation is enforced for config file simplicity, and because we don't need it at this time
|
||||
private void ensureSingleWeight()
|
||||
{
|
||||
if (this.weightMap.size() > 1)
|
||||
{
|
||||
throw new RuntimeException(String.format("%s cannot be assigned to multiple climates!\n%s", new ResourceLocation(BiomesOPlenty.MOD_ID, name).toString(), this.weightMap));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static class SubBiomeRegistrationData implements IRegistrationData
|
||||
{
|
||||
private final RegistryKey<Biome> parent;
|
||||
private final RegistryKey<Biome> child;
|
||||
private int weight;
|
||||
private float rarity;
|
||||
|
||||
public SubBiomeRegistrationData(RegistryKey<Biome> parent, RegistryKey<Biome> child, int weight, float rarity)
|
||||
{
|
||||
this.parent = parent;
|
||||
this.child = child;
|
||||
this.weight = weight;
|
||||
this.rarity = rarity;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getParent()
|
||||
{
|
||||
return this.parent;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getChild()
|
||||
{
|
||||
return this.child;
|
||||
}
|
||||
|
||||
public int getWeight()
|
||||
{
|
||||
return this.weight;
|
||||
}
|
||||
|
||||
public void setWeight(int weight)
|
||||
{
|
||||
this.weight = weight;
|
||||
}
|
||||
|
||||
public float getRarity()
|
||||
{
|
||||
return this.rarity;
|
||||
}
|
||||
|
||||
public void setRarity(float rarity)
|
||||
{
|
||||
this.rarity = rarity;
|
||||
}
|
||||
}
|
||||
|
||||
private static class SingleClimateRegistrationData implements IRegistrationData
|
||||
{
|
||||
private final BOPClimates climate;
|
||||
private final RegistryKey<Biome> biome;
|
||||
private int weight;
|
||||
|
||||
public SingleClimateRegistrationData(RegistryKey<Biome> biome, BOPClimates climate, int weight)
|
||||
{
|
||||
this.biome = biome;
|
||||
this.climate = climate;
|
||||
this.weight = weight;
|
||||
}
|
||||
|
||||
public RegistryKey<Biome> getBiome()
|
||||
{
|
||||
return this.biome;
|
||||
}
|
||||
|
||||
public BOPClimates getClimate()
|
||||
{
|
||||
return this.climate;
|
||||
}
|
||||
|
||||
public int getWeight()
|
||||
{
|
||||
return this.weight;
|
||||
}
|
||||
|
||||
public void setWeight(int weight)
|
||||
{
|
||||
this.weight = weight;
|
||||
}
|
||||
}
|
||||
|
||||
private static class ToggleableStandardBiomeRegistrationData extends TemplateRegistrationData
|
||||
{
|
||||
private final String name;
|
||||
private boolean enabled;
|
||||
|
||||
public ToggleableStandardBiomeRegistrationData(BiomeTemplate biome, String name, boolean enabled)
|
||||
{
|
||||
super(biome);
|
||||
this.name = name;
|
||||
this.enabled = enabled;
|
||||
}
|
||||
|
||||
public String getName()
|
||||
{
|
||||
return this.name;
|
||||
}
|
||||
|
||||
public boolean getEnabled()
|
||||
{
|
||||
return this.enabled;
|
||||
}
|
||||
|
||||
public void setEnabled(boolean enabled)
|
||||
{
|
||||
this.enabled = enabled;
|
||||
}
|
||||
}
|
||||
|
||||
private static class DeferredRegistration<T extends IRegistrationData>
|
||||
{
|
||||
private final Consumer<T> regFunc;
|
||||
private final T regData;
|
||||
|
||||
public DeferredRegistration(Consumer<T> regFunc, T regData)
|
||||
{
|
||||
this.regFunc = regFunc;
|
||||
this.regData = regData;
|
||||
}
|
||||
|
||||
public void register()
|
||||
{
|
||||
this.regFunc.accept(this.regData);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,101 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import net.minecraft.util.RegistryKey;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.biome.BiomeGenerationSettings;
|
||||
import net.minecraft.world.biome.Biomes;
|
||||
import net.minecraft.world.biome.MobSpawnInfo;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.BiFunction;
|
||||
|
||||
public class BiomeTemplate
|
||||
{
|
||||
private Map<BOPClimates, Integer> weightMap = new HashMap<BOPClimates, Integer>();
|
||||
private RegistryKey<Biome> beachBiome = Biomes.BEACH;
|
||||
private RegistryKey<Biome> riverBiome = Biomes.RIVER;
|
||||
private BiFunction<Double, Double, Integer> foliageColorFunction;
|
||||
private BiFunction<Double, Double, Integer> grassColorFunction;
|
||||
private BiFunction<Double, Double, Integer> waterColorFunction;
|
||||
|
||||
protected void configureBiome(Biome.Builder builder) {}
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder) {}
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder) {}
|
||||
|
||||
protected void configureDefaultMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
builder.setPlayerCanSpawn();
|
||||
}
|
||||
|
||||
public final Biome build()
|
||||
{
|
||||
Biome.Builder biomeBuilder = new Biome.Builder();
|
||||
|
||||
// Configure the biome generation
|
||||
BiomeGenerationSettings.Builder biomeGenBuilder = new BiomeGenerationSettings.Builder();
|
||||
this.configureGeneration(biomeGenBuilder);
|
||||
biomeBuilder.generationSettings(biomeGenBuilder.build());
|
||||
|
||||
// Configure mob spawning
|
||||
MobSpawnInfo.Builder mobSpawnBuilder = new MobSpawnInfo.Builder();
|
||||
this.configureDefaultMobSpawns(mobSpawnBuilder);
|
||||
this.configureMobSpawns(mobSpawnBuilder);
|
||||
biomeBuilder.mobSpawnSettings(mobSpawnBuilder.build());
|
||||
|
||||
// Configure and build the biome
|
||||
this.configureBiome(biomeBuilder);
|
||||
return biomeBuilder.build();
|
||||
}
|
||||
|
||||
public final BiomeMetadata buildMetadata()
|
||||
{
|
||||
return new BiomeMetadata(this.weightMap, this.beachBiome, this.riverBiome, this.foliageColorFunction, this.grassColorFunction, this.waterColorFunction);
|
||||
}
|
||||
|
||||
public void addWeight(BOPClimates climate, int weight)
|
||||
{
|
||||
this.weightMap.put(climate, weight);
|
||||
}
|
||||
|
||||
public void setBeachBiome(RegistryKey<Biome> biome)
|
||||
{
|
||||
this.beachBiome = biome;
|
||||
}
|
||||
|
||||
public void setRiverBiome(RegistryKey<Biome> biome)
|
||||
{
|
||||
this.riverBiome = biome;
|
||||
}
|
||||
|
||||
public void setFoliageColorFunction(BiFunction<Double, Double, Integer> func)
|
||||
{
|
||||
this.foliageColorFunction = func;
|
||||
}
|
||||
|
||||
public void setGrassColorFunction(BiFunction<Double, Double, Integer> func)
|
||||
{
|
||||
this.grassColorFunction = func;
|
||||
}
|
||||
|
||||
public void setWaterColorFunction(BiFunction<Double, Double, Integer> func)
|
||||
{
|
||||
this.waterColorFunction = func;
|
||||
}
|
||||
|
||||
public static int calculateSkyColor(float temperature)
|
||||
{
|
||||
float lvt_1_1_ = temperature / 3.0F;
|
||||
lvt_1_1_ = MathHelper.clamp(lvt_1_1_, -1.0F, 1.0F);
|
||||
return MathHelper.hsvToRgb(0.62222224F - lvt_1_1_ * 0.05F, 0.5F + lvt_1_1_ * 0.1F, 1.0F);
|
||||
}
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome;
|
||||
|
||||
import net.minecraft.world.biome.MobSpawnInfo;
|
||||
|
||||
public class NetherBiomeTemplate extends BiomeTemplate
|
||||
{
|
||||
protected void configureDefaultMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Do nothing
|
||||
}
|
||||
}
|
|
@ -1,69 +0,0 @@
|
|||
package biomesoplenty.common.biome.nether;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.NetherBiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.client.audio.BackgroundMusicTracks;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.util.SoundEvents;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.carver.ConfiguredCarvers;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class CrystallineChasmBiome extends NetherBiomeTemplate
|
||||
{
|
||||
public CrystallineChasmBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.NETHER, 5);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.NETHER).depth(0.1F).scale(0.2F).temperature(2.0F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(0x59002C).skyColor(calculateSkyColor(2.0F)).ambientParticle(new ParticleEffectAmbience(ParticleTypes.INSTANT_EFFECT, 0.001785F)).ambientLoopSound(SoundEvents.AMBIENT_CRIMSON_FOREST_LOOP).ambientMoodSound(new MoodSoundAmbience(SoundEvents.AMBIENT_BASALT_DELTAS_MOOD, 6000, 8, 2.0D)).ambientAdditionsSound(new SoundAdditionsAmbience(SoundEvents.AMBIENT_BASALT_DELTAS_ADDITIONS, 0.0111D)).backgroundMusic(BackgroundMusicTracks.createGameMusic(SoundEvents.MUSIC_BIOME_NETHER_WASTES)).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.NETHER);
|
||||
|
||||
//Terrain
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_BRIDGE);
|
||||
builder.addStructureStart(StructureFeatures.BASTION_REMNANT);
|
||||
builder.addCarver(GenerationStage.Carving.AIR, ConfiguredCarvers.NETHER_CAVE);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_OPEN);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_FIRE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_SOUL_FIRE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.BROWN_MUSHROOM_NETHER);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.RED_MUSHROOM_NETHER);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.ORE_MAGMA);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_CLOSED);
|
||||
|
||||
//Decoration
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.LARGE_CRYSTAL);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.SMALL_CRYSTAL);
|
||||
|
||||
DefaultBiomeFeatures.addNetherDefaultOres(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
//Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.STRIDER, 60, 1, 2));
|
||||
}
|
||||
}
|
|
@ -1,77 +0,0 @@
|
|||
package biomesoplenty.common.biome.nether;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.NetherBiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.client.audio.BackgroundMusicTracks;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.util.SoundEvents;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.carver.ConfiguredCarvers;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class UndergrowthBiome extends NetherBiomeTemplate
|
||||
{
|
||||
public UndergrowthBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.NETHER, 10);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.NETHER).depth(0.1F).scale(0.2F).temperature(2.0F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(0x1C2109).skyColor(calculateSkyColor(2.0F)).ambientParticle(new ParticleEffectAmbience(ParticleTypes.MYCELIUM, 0.00714F)).ambientLoopSound(SoundEvents.AMBIENT_WARPED_FOREST_LOOP).ambientMoodSound(new MoodSoundAmbience(SoundEvents.AMBIENT_CRIMSON_FOREST_MOOD, 6000, 8, 2.0D)).ambientAdditionsSound(new SoundAdditionsAmbience(SoundEvents.AMBIENT_NETHER_WASTES_ADDITIONS, 0.0111D)).backgroundMusic(BackgroundMusicTracks.createGameMusic(SoundEvents.MUSIC_BIOME_NETHER_WASTES)).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.NETHER);
|
||||
|
||||
//Terrain
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_BRIDGE);
|
||||
builder.addStructureStart(StructureFeatures.BASTION_REMNANT);
|
||||
builder.addCarver(GenerationStage.Carving.AIR, ConfiguredCarvers.NETHER_CAVE);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_OPEN);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_FIRE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.PATCH_SOUL_FIRE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.GLOWSTONE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.BROWN_MUSHROOM_NETHER);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.RED_MUSHROOM_NETHER);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.ORE_MAGMA);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_CLOSED);
|
||||
|
||||
//Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.UNDERGROWTH_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.NETHER_BRAMBLE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.UNDERGROWTH_FLOWERS);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.SPROUTS_UNDERGROWTH);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_45);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.NETHER_VINES);
|
||||
|
||||
DefaultBiomeFeatures.addNetherDefaultOres(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
//Entities
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.GHAST, 50, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.MAGMA_CUBE, 2, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.HOGLIN, 9, 3, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.STRIDER, 60, 1, 2));
|
||||
}
|
||||
}
|
|
@ -1,65 +0,0 @@
|
|||
package biomesoplenty.common.biome.nether;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.NetherBiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.client.audio.BackgroundMusicTracks;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.util.SoundEvents;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.carver.ConfiguredCarvers;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class VisceralHeapBiome extends NetherBiomeTemplate
|
||||
{
|
||||
public VisceralHeapBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.NETHER, 7);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.NETHER).depth(0.1F).scale(0.2F).temperature(2.0F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(0x601F18).skyColor(calculateSkyColor(2.0F)).ambientParticle(new ParticleEffectAmbience(ParticleTypes.FALLING_LAVA, 0.001785F)).ambientLoopSound(SoundEvents.AMBIENT_NETHER_WASTES_LOOP).ambientMoodSound(new MoodSoundAmbience(SoundEvents.AMBIENT_SOUL_SAND_VALLEY_MOOD, 6000, 8, 2.0D)).ambientAdditionsSound(new SoundAdditionsAmbience(SoundEvents.AMBIENT_CRIMSON_FOREST_ADDITIONS, 0.0111D)).backgroundMusic(BackgroundMusicTracks.createGameMusic(SoundEvents.MUSIC_BIOME_CRIMSON_FOREST)).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.VISCERAL_HEAP);
|
||||
|
||||
//Terrain
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_BRIDGE);
|
||||
builder.addStructureStart(StructureFeatures.BASTION_REMNANT);
|
||||
builder.addCarver(GenerationStage.Carving.AIR, ConfiguredCarvers.NETHER_CAVE);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_OPEN);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.ORE_MAGMA);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, Features.SPRING_CLOSED);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.FLESH_TENDON);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.BONE_SPINE);
|
||||
|
||||
DefaultBiomeFeatures.addNetherDefaultOres(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
//Entities
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.GHAST, 50, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIFIED_PIGLIN, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.STRIDER, 60, 1, 2));
|
||||
}
|
||||
}
|
|
@ -1,57 +0,0 @@
|
|||
package biomesoplenty.common.biome.nether;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.NetherBiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.client.audio.BackgroundMusicTracks;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.util.SoundEvents;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.carver.ConfiguredCarvers;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
|
||||
public class WitheredAbyssBiome extends NetherBiomeTemplate
|
||||
{
|
||||
public WitheredAbyssBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.NETHER, 3);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.NETHER).depth(0.1F).scale(0.2F).temperature(2.0F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(0x09060F).skyColor(calculateSkyColor(2.0F)).ambientParticle(new ParticleEffectAmbience(ParticleTypes.SMOKE, 0.00357F)).ambientLoopSound(SoundEvents.AMBIENT_SOUL_SAND_VALLEY_LOOP).ambientMoodSound(new MoodSoundAmbience(SoundEvents.AMBIENT_SOUL_SAND_VALLEY_MOOD, 6000, 8, 2.0D)).backgroundMusic(BackgroundMusicTracks.createGameMusic(SoundEvents.MUSIC_BIOME_BASALT_DELTAS)).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.WITHERED_ABYSS);
|
||||
|
||||
//Terrain
|
||||
builder.addStructureStart(StructureFeatures.NETHER_BRIDGE);
|
||||
builder.addStructureStart(StructureFeatures.BASTION_REMNANT);
|
||||
builder.addCarver(GenerationStage.Carving.AIR, ConfiguredCarvers.NETHER_CAVE);
|
||||
|
||||
//Decoration
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_DECORATION, BOPConfiguredFeatures.OBSIDIAN_SPLATTER);
|
||||
|
||||
DefaultBiomeFeatures.addNetherDefaultOres(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
//Entities
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 1, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITHER_SKELETON, 1, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,71 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
|
||||
public class AlpsBiome extends BiomeTemplate
|
||||
{
|
||||
public AlpsBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.ICE_CAP, 5);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(7.5F).scale(0.2F).temperature(-0.25F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DEEP_SNOW);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 80, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,83 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class AlpsFoothillsBiome extends BiomeTemplate
|
||||
{
|
||||
public AlpsFoothillsBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(3.0F).scale(0.3F).temperature(-0.25F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.ALPS_FOOTHILLS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ALPS_FOOTHILLS_TREES);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 80, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class BambooBlossomGroveBiome extends BiomeTemplate
|
||||
{
|
||||
public BambooBlossomGroveBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.05F).scale(0.05F).temperature(0.6F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x85CE71).foliageColorOverride(0x63BF66).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BAMBOO_BLOSSOM_GROVE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHORT_BAMBOO_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_COLD);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PANDA, 80, 1, 2));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,96 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class BayouBiome extends BiomeTemplate
|
||||
{
|
||||
public BayouBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SUBTROPICAL, 10);
|
||||
this.setBeachBiome(BOPBiomes.bayou_mangrove);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.3F).scale(0.0F).temperature(0.95F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x62AF84).waterFogColor(0x0C211C).fogColor(12638463).skyColor(calculateSkyColor(0.95F)).grassColorOverride(0x6FAA50).foliageColorOverride(0x8BDB67).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addSwampClayDisk(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BAYOU_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 1, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
|
||||
public class BayouMangroveBiome extends BiomeTemplate
|
||||
{
|
||||
public BayouMangroveBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.175F).scale(-0.075F).temperature(0.95F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x62AF84).waterFogColor(0x0C211C).fogColor(12638463).skyColor(calculateSkyColor(0.95F)).grassColorOverride(0x6FAA50).foliageColorOverride(0x8BDB67).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MANGROVE);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MANGROVE_ROOTS);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_75);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_RIVER);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.COD, 10, 3, 6));
|
||||
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.TROPICAL_FISH, 5, 8, 8));
|
||||
builder.addSpawn(EntityClassification.WATER_CREATURE, new MobSpawnInfo.Spawners(EntityType.SQUID, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class BurntForestBiome extends BiomeTemplate
|
||||
{
|
||||
public BurntForestBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.1F).scale(0.1F).temperature(0.3F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.3F)).grassColorOverride(0x514F46).foliageColorOverride(0xB7B763).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_LAVA);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BURNT_FOREST_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLACK_SAND_SPLATTER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class CherryBlossomGroveBiome extends BiomeTemplate
|
||||
{
|
||||
public CherryBlossomGroveBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.COOL_TEMPERATE, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(-0.1F).scale(0.1F).temperature(0.6F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x85CE71).foliageColorOverride(0x63BF66).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHERRY_BLOSSOM_GROVE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_COLD);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
|
||||
public class ColdDesertBiome extends BiomeTemplate
|
||||
{
|
||||
public ColdDesertBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.ICE_CAP, 7);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.ICY).depth(0.0F).scale(-0.075F).temperature(0.25F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.25F)).grassColorOverride(0xAD9364).foliageColorOverride(0xB5A76C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.COLD_DESERT);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_SNOWY);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_LAVA);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_GRASS_1);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.POLAR_BEAR, 1, 1, 2));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 80, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,101 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ConiferousForestBiome extends BiomeTemplate
|
||||
{
|
||||
public ConiferousForestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WET_BOREAL, 10);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.2F).scale(0.1F).temperature(0.45F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.45F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,102 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ConiferousLakesBiome extends BiomeTemplate
|
||||
{
|
||||
public ConiferousLakesBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(-0.3F).scale(0.2F).temperature(0.45F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.45F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.EXPOSED_STONE);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.GRAVEL_DISK_EXTRA);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_LAKES_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_RIVER);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.SALMON, 5, 1, 5));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DeadForestBiome extends BiomeTemplate
|
||||
{
|
||||
public DeadForestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.DRY_BOREAL, 3);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.2F).scale(0.2F).temperature(0.3F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.3F)).grassColorOverride(0xBAAD64).foliageColorOverride(0xB7B763).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_FOREST_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,99 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DeepBayouBiome extends BiomeTemplate
|
||||
{
|
||||
public DeepBayouBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.bayou_mangrove);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.315F).scale(-0.05F).temperature(0.95F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x62AF84).waterFogColor(0x0C211C).fogColor(12638463).skyColor(calculateSkyColor(0.95F)).grassColorOverride(0x6FAA50).foliageColorOverride(0x8BDB67).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addSwampClayDisk(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEEP_BAYOU_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEEP_BAYOU_VINES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 1, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
|
||||
public class DenseMarshBiome extends BiomeTemplate
|
||||
{
|
||||
public DenseMarshBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.15F).scale(-0.05F).temperature(0.65F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.65F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MARSH);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_100);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_250);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_250);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entity spawning
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class DenseWoodlandBiome extends BiomeTemplate
|
||||
{
|
||||
public DenseWoodlandBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.2F).scale(0.15F).temperature(0.8F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA7C047).foliageColorOverride(0x92AF1A).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DENSE_WOODLAND_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_TOADSTOOL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_TOADSTOOL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DryBoneyardBiome extends BiomeTemplate
|
||||
{
|
||||
public DryBoneyardBiome()
|
||||
{
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.1F).scale(0.1F).temperature(0.85F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xE5DFA9).foliageColorOverride(0xDAE0B3).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DRYLAND);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_FOSSIL);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DRY_BONEYARD_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BONE_SPINE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,84 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DrylandBiome extends BiomeTemplate
|
||||
{
|
||||
public DrylandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SAVANNA, 3);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.1F).scale(0.1F).temperature(0.85F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xE5DFA9).foliageColorOverride(0xDAE0B3).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DRYLAND);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DRYLAND_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class FirClearingBiome extends BiomeTemplate
|
||||
{
|
||||
public FirClearingBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.2F).scale(0.1F).temperature(0.45F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.45F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FIR_CLEARING_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class FlowerMeadowBiome extends BiomeTemplate
|
||||
{
|
||||
public FlowerMeadowBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.0F).scale(0.0F).temperature(0.4F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0x63B26D).foliageColorOverride(0x63B26D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FLOWER_MEADOW_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FLOWER_MEADOW_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SUNFLOWER_1);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class FungalFieldBiome extends BiomeTemplate
|
||||
{
|
||||
public FungalFieldBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setGrassColorFunction(this::getGrassColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(0.1F).scale(0.0F).temperature(0.9F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4445678).waterFogColor(270131).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0x4AA2F9).foliageColorOverride(0x4ADCF9).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GLOWSHROOM_UNCOMMON);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_GLOWSHROOM_UNCOMMON);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_64);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.MOOSHROOM, 8, 4, 8));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
|
||||
public int getGrassColor(double x, double z)
|
||||
{
|
||||
double d0 = Biome.BIOME_INFO_NOISE.getValue(x * 0.0225D, z * 0.0225D, false);
|
||||
return d0 < -0.1D ? 0x4AA2F9 : 0x4DD6CA;
|
||||
}
|
||||
}
|
|
@ -1,99 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class FungalJungleBiome extends BiomeTemplate
|
||||
{
|
||||
public FungalJungleBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.TROPICAL, 1);
|
||||
this.setBeachBiome(null);
|
||||
this.setGrassColorFunction(this::getGrassColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(0.15F).scale(0.1F).temperature(0.9F).downfall(0.9F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4445678).waterFogColor(270131).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0x4AA2F9).foliageColorOverride(0x4ADCF9).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FUNGAL_JUNGLE_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GLOWSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_GLOWSHROOM);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYCELIUM_SPLATTER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_GLOWSHROOM);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.MOOSHROOM, 8, 4, 8));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
|
||||
public int getGrassColor(double x, double z)
|
||||
{
|
||||
double d0 = Biome.BIOME_INFO_NOISE.getValue(x * 0.0225D, z * 0.0225D, false);
|
||||
return d0 < -0.1D ? 0x4AA2F9 : 0x4DD6CA;
|
||||
}
|
||||
}
|
|
@ -1,75 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class GoldenPrairieBiome extends BiomeTemplate
|
||||
{
|
||||
public GoldenPrairieBiome() {}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.0F).scale(-0.1F).temperature(0.8F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xE4EA77).foliageColorOverride(0xC7E672).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BARLEY);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_64);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class GrasslandBiome extends BiomeTemplate
|
||||
{
|
||||
public GrasslandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.COOL_TEMPERATE, 3);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.1F).scale(0.2F).temperature(0.6F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x88C57F).foliageColorOverride(0x6AB66F).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE_DESERT);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,88 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class GrasslandCloverPatchBiome extends BiomeTemplate
|
||||
{
|
||||
public GrasslandCloverPatchBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.0F).scale(0.1F).temperature(0.6F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x88C57F).foliageColorOverride(0x6AB66F).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_PATCH_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_250);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_CLOVER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class GravelBeachBiome extends BiomeTemplate
|
||||
{
|
||||
public GravelBeachBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.BEACH).depth(0.0F).scale(0.025F).temperature(0.6F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.GRAVEL_FULL);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.MINESHAFT);
|
||||
builder.addStructureStart(StructureFeatures.BURIED_TREASURE);
|
||||
builder.addStructureStart(StructureFeatures.SHIPWRECH_BEACHED);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class GroveBiome extends BiomeTemplate
|
||||
{
|
||||
public GroveBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.MEDITERRANEAN, 10);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.5F).scale(0.3F).temperature(0.8F).downfall(0.275F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_MIXED);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class GroveClearingBiome extends BiomeTemplate
|
||||
{
|
||||
public GroveClearingBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.2F).scale(0.1F).temperature(0.8F).downfall(0.275F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_CLEARING_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class GroveLakesBiome extends BiomeTemplate
|
||||
{
|
||||
public GroveLakesBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(-0.5F).scale(0.0F).temperature(0.8F).downfall(0.275F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.GROVE_LAKES);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_OCEAN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_DIORITE);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.DIORITE_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,89 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class HighlandBiome extends BiomeTemplate
|
||||
{
|
||||
public HighlandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.COOL_TEMPERATE, 5);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.EXTREME_HILLS).depth(2.3F).scale(0.2F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class HighlandCragBiome extends BiomeTemplate
|
||||
{
|
||||
public HighlandCragBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.EXTREME_HILLS).depth(3.0F).scale(0.7F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.HIGHLAND_CRAG);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CRAG_SPLATTER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,97 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class HighlandMoorBiome extends BiomeTemplate
|
||||
{
|
||||
public HighlandMoorBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.8F).scale(-0.05F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addSwampClayDisk(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MOOR_FLOWERS);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MOOR_FLOWERS_2);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_RIVER);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class JadeCliffsBiome extends BiomeTemplate
|
||||
{
|
||||
public JadeCliffsBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WARM_TEMPERATE, 1);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(2.0F).scale(1.15F).temperature(0.8F).downfall(0.85F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(0xBBD1D5).skyColor(0xB7CCAD).grassColorOverride(0x7CA568).foliageColorOverride(0x8BB76E).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DEEP_GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.JADE_CLIFFS_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class LavenderFieldBiome extends BiomeTemplate
|
||||
{
|
||||
public LavenderFieldBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.MEDITERRANEAN, 3);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.0F).scale(0.05F).temperature(0.8F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA1C36D).foliageColorOverride(0xA1C36D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FIELD_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class LavenderForestBiome extends BiomeTemplate
|
||||
{
|
||||
public LavenderForestBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.1F).scale(0.1F).temperature(0.8F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA1C36D).foliageColorOverride(0xA1C36D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,97 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class LushDesertBiome extends BiomeTemplate
|
||||
{
|
||||
public LushDesertBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SAVANNA, 1);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.DESERT).depth(0.6F).scale(0.6F).temperature(0.9F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0xEFE182).foliageColorOverride(0xD3D156).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.LUSH_DESERT);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_DESERT);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_DESERT_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LUSH_DESERT_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DUNE_GRASS_128);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_DEAD_BUSH_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATER_SPRING_EXTRA);
|
||||
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.HUSK, 80, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class LushSavannaBiome extends BiomeTemplate
|
||||
{
|
||||
public LushSavannaBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.DESERT).depth(0.25F).scale(0.1F).temperature(0.9F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0xEFE182).foliageColorOverride(0xD3D156).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.LUSH_SAVANNA);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.POPPY_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_50);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATER_SPRING_EXTRA);
|
||||
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.HUSK, 80, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MarshBiome extends BiomeTemplate
|
||||
{
|
||||
public MarshBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.COOL_TEMPERATE, 7);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.15F).scale(-0.05F).temperature(0.65F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.65F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MARSH);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_250);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_50);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entity spawning
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,103 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MeadowBiome extends BiomeTemplate
|
||||
{
|
||||
public MeadowBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WET_BOREAL, 7);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.0F).scale(0.05F).temperature(0.4F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0x63B26D).foliageColorOverride(0x63B26D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FLOWERS);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FLOWERS_2);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SUNFLOWER_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,100 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MeadowForestBiome extends BiomeTemplate
|
||||
{
|
||||
public MeadowForestBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.0F).scale(0.05F).temperature(0.4F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0x63B26D).foliageColorOverride(0x63B26D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MEADOW_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MuskegBiome extends BiomeTemplate
|
||||
{
|
||||
public MuskegBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.ICE_CAP, 1);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(-0.175F).scale(-0.05F).temperature(-0.25F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).grassColorOverride(0x94966E).foliageColorOverride(0x8D9B6B).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_GRAVEL);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MUSKEG_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_1);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 1, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,96 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MysticGroveBiome extends BiomeTemplate
|
||||
{
|
||||
public MysticGroveBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WET_TEMPERATE, 1);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.1F).scale(0.1F).temperature(0.7F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0xAAEFFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientParticle(new ParticleEffectAmbience(ParticleTypes.END_ROD, 0.00011532552F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.WHITE_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_GROVE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_GROVE_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_RED_MUSHROOM_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_RED_MUSHROOM);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 20, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class MysticPlainsBiome extends BiomeTemplate
|
||||
{
|
||||
public MysticPlainsBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(-0.05F).temperature(0.7F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0xAAEFFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientParticle(new ParticleEffectAmbience(ParticleTypes.END_ROD, 0.00011532552F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.WHITE_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_PLAINS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYSTIC_PLAINS_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 20, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class OminousMireBiome extends BiomeTemplate
|
||||
{
|
||||
public OminousMireBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(-0.215F).scale(-0.05F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x312346).waterFogColor(0x0A030C).fogColor(0x7881A5).skyColor(0x84A1CC).grassColorOverride(0x4C4A70).foliageColorOverride(0x6B487C).ambientParticle(new ParticleEffectAmbience(ParticleTypes.SMOKE, 0.00023065104F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MARSH);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.BLACK_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_MIRE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_WOODS_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BRAMBLE_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 50, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 25, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.particles.ParticleTypes;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class OminousWoodsBiome extends BiomeTemplate
|
||||
{
|
||||
public OminousWoodsBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WET_BOREAL, 1);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.25F).scale(0.15F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x312346).waterFogColor(0x0A030C).fogColor(0x7881A5).skyColor(0x84A1CC).grassColorOverride(0x4C4A70).foliageColorOverride(0x6B487C).ambientParticle(new ParticleEffectAmbience(ParticleTypes.SMOKE, 0.00023065104F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.BLACK_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_WOODS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.OMINOUS_WOODS_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BRAMBLE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ILLUSIONER, 50, 2, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 50, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 25, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class OrchardBiome extends BiomeTemplate
|
||||
{
|
||||
public OrchardBiome() { }
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(0.0F).temperature(0.8F).downfall(0.4F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA9DB69).foliageColorOverride(0xC9F75D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORCHARD_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORCHARD_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entity spawning
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,88 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.carver.BOPConfiguredCarvers;
|
||||
import biomesoplenty.common.world.gen.carver.BOPWorldCarvers;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.feature.BOPFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
|
||||
public class OriginValleyBiome extends BiomeTemplate
|
||||
{
|
||||
public OriginValleyBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.NONE).depth(0.1F).scale(0.2F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x0E31FF).waterFogColor(0x070059).fogColor(0xB0CFFF).skyColor(0x8CBDFF).grassColorOverride(0x9AFF5F).foliageColorOverride(0x3AFF00).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.ORIGIN_VALLEY);
|
||||
|
||||
// Underground
|
||||
builder.addCarver(GenerationStage.Carving.AIR, BOPConfiguredCarvers.ORIGIN_CAVE);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_DIRT);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_GRAVEL);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_COAL);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_IRON);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_GOLD);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_REDSTONE);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_DIAMOND);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORIGIN_VALLEY_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORIGIN_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
}
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class PrairieBiome extends BiomeTemplate
|
||||
{
|
||||
public PrairieBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.MEDITERRANEAN, 7);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.05F).scale(0.0F).temperature(0.8F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xE4EA77).foliageColorOverride(0xC7E672).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PRAIRIE_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CONIFEROUS_FOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,100 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.core.ClientProxy;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RainbowHillsBiome extends BiomeTemplate
|
||||
{
|
||||
public RainbowHillsBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setGrassColorFunction(this::getGrassColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.5F).scale(0.5F).temperature(0.55F).downfall(1.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.55F)).grassColorOverride(0x75CE8D).foliageColorOverride(getFoliageColor()).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINBOW_HILLS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINBOW_HILLS_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BLUE_HYDRANGEA_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CLOVER_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDENROD_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PEONY_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ROSE_BUSH_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
}
|
||||
|
||||
public int getGrassColor(double x, double z)
|
||||
{
|
||||
double d0 = Biome.BIOME_INFO_NOISE.getValue(x * 0.0225D, z * 0.0225D, false);
|
||||
return d0 < -0.1D ? 0x77CE7F : 0x75CE8D;
|
||||
}
|
||||
|
||||
public int getFoliageColor()
|
||||
{
|
||||
return 0x75CE8D;
|
||||
}
|
||||
}
|
|
@ -1,101 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RainforestBiome extends BiomeTemplate
|
||||
{
|
||||
public RainforestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.TROPICAL, 7);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(0.15F).scale(0.35F).temperature(1.2F).downfall(2.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x3FDF99).waterFogColor(0x042F26).fogColor(12638463).skyColor(calculateSkyColor(1.2F)).grassColorOverride(0xA7E140).foliageColorOverride(0x88E140).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_JUNGLE);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.ORANGE_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_MELON);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PARROT, 40, 1, 2));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.OCELOT, 2, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,102 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RainforestCliffsBiome extends BiomeTemplate
|
||||
{
|
||||
public RainforestCliffsBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(2.9F).scale(0.6F).temperature(1.2F).downfall(2.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x3FDF99).waterFogColor(0x042F26).fogColor(12638463).skyColor(calculateSkyColor(1.2F)).grassColorOverride(0xA7E140).foliageColorOverride(0x88E140).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.RAINFOREST_CLIFFS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.ORANGE_SAND_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_CLIFFS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_CLIFFS_VINES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATER_SPRING_EXTRA);
|
||||
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PARROT, 40, 1, 2));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.OCELOT, 2, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,91 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RainforestFloodplainBiome extends BiomeTemplate
|
||||
{
|
||||
public RainforestFloodplainBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(-0.125F).scale(-0.05F).temperature(1.2F).downfall(2.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x3FDF99).waterFogColor(0x042F26).fogColor(12638463).skyColor(calculateSkyColor(1.2F)).grassColorOverride(0xA7E140).foliageColorOverride(0x88E140).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.SWAMP);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOODPLAIN_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_250);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,92 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RedwoodForestBiome extends BiomeTemplate
|
||||
{
|
||||
public RedwoodForestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.WARM_TEMPERATE, 5);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_FULL);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_FOREST_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,89 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RedwoodForestEdgeBiome extends BiomeTemplate
|
||||
{
|
||||
public RedwoodForestEdgeBiome() {}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_MIXED);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_FOREST_EDGE_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,88 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class RedwoodHillsBiome extends BiomeTemplate
|
||||
{
|
||||
public RedwoodHillsBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(1.5F).scale(0.2F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_FULL);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_HILLS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ScrublandBiome extends BiomeTemplate
|
||||
{
|
||||
public ScrublandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SAVANNA, 7);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.0F).scale(0.0F).temperature(1.1F).downfall(0.15F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(1.1F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_SAVANNA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUBLAND_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SeasonalForestBiome extends BiomeTemplate
|
||||
{
|
||||
public SeasonalForestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.DRY_BOREAL, 7);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.2F).scale(0.2F).temperature(0.4F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0xDD9A4A).foliageColorOverride(0xD1B24A).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SEASONAL_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,93 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SeasonalOrchardBiome extends BiomeTemplate
|
||||
{
|
||||
public SeasonalOrchardBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(0.0F).temperature(0.4F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0xDD9A4A).foliageColorOverride(0xD1B24A).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SEASONAL_ORCHARD_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SeasonalPumpkinPatchBiome extends BiomeTemplate
|
||||
{
|
||||
public SeasonalPumpkinPatchBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(-0.025F).temperature(0.4F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0xDD9A4A).foliageColorOverride(0xD1B24A).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SEASONAL_PUMPKIN_PATCH_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BIG_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PUMPKIN_PATCH);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,99 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
|
||||
public class ShroomyWetlandBiome extends BiomeTemplate
|
||||
{
|
||||
public ShroomyWetlandBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(0.0F).scale(0.0F).temperature(0.6F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x272179).waterFogColor(0x0C031B).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x5A935F).foliageColorOverride(0x4F9657).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addSwampClayDisk(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHROOMY_WETLAND_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_BROWN_MUSHROOM_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PODZOL_SPLATTER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_BROWN_MUSHROOM);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 1, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,96 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ShrublandBiome extends BiomeTemplate
|
||||
{
|
||||
public ShrublandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.DRY_TEMPERATE, 7);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.05F).scale(0.05F).temperature(0.6F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILAC_1);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,92 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ShrublandHillsBiome extends BiomeTemplate
|
||||
{
|
||||
public ShrublandHillsBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.0F).scale(0.2F).temperature(0.6F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.EXPOSED_STONE);
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_MOUNTAIN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_HILLS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHRUBLAND_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,95 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SnowyConiferousForestBiome extends BiomeTemplate
|
||||
{
|
||||
public SnowyConiferousForestBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.TUNDRA, 5);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(0.2F).scale(0.1F).temperature(-0.25F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.IGLOO);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_CONIFEROUS_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,89 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.*;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SnowyFirClearingBiome extends BiomeTemplate
|
||||
{
|
||||
public SnowyFirClearingBiome() {}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(0.2F).scale(0.1F).temperature(-0.25F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.IGLOO);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FIR_CLEARING_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeTemplate;
|
||||
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
|
||||
import biomesoplenty.init.ModEntities;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.*;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Features;
|
||||
import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class SnowyMapleForestBiome extends BiomeTemplate
|
||||
{
|
||||
public SnowyMapleForestBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(0.2F).scale(0.2F).temperature(-0.25F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.IGLOO);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_WATER);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_MAPLE_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SNOWY_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_4);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_BERRY_SPARSE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 4));
|
||||
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue