Skip to content

Commit

Permalink
Merged changes from 1.19.2/main
Browse files Browse the repository at this point in the history
  • Loading branch information
StewStrong committed Jan 1, 2024
2 parents 529e41f + e42f936 commit 26276be
Show file tree
Hide file tree
Showing 95 changed files with 1,385 additions and 504 deletions.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ body:
- 1.16
- 1.18
- 1.19
- 1.20​
validations:
required: true
- type: dropdown
Expand Down
13 changes: 8 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
plugins {
// Needed for Forge+Fabric
id "architectury-plugin" version "3.4.143"
id "dev.architectury.loom" version "1.0.306" apply false
id "architectury-plugin" version "3.4.146"
id "dev.architectury.loom" version "1.3.355" apply false
// Kotlin
id "org.jetbrains.kotlin.jvm" version "1.7.21" apply false
id "org.jetbrains.kotlin.jvm" version "1.9.10" apply false
// Kotlin linter
id "org.jlleitschuh.gradle.ktlint" version "10.3.0"
// Java linter
Expand Down Expand Up @@ -53,6 +53,9 @@ subprojects {
minecraft "com.mojang:minecraft:${rootProject.minecraft_version}"
// The following line declares the mojmap mappings, you may use other mappings as well
mappings loom.officialMojangMappings()

implementation("org.joml:joml:1.10.4") { transitive = false }
implementation("org.joml:joml-primitives:1.10.0") { transitive = false }
}

checkstyle {
Expand All @@ -69,9 +72,9 @@ subprojects {
tasks.withType(Checkstyle) {
reports {
// Do not output html reports
html.enabled = false
html.required = false
// Output xml reports
xml.enabled = true
xml.required = true
}
}

Expand Down
31 changes: 31 additions & 0 deletions changelogs/1.1.0-beta.10.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Blacklist changes
* added `minecraft:tall_seagrass`
* added `minecraft:oak_sapling`
* added `minecraft:spruce_sapling`
* added `minecraft:birch_sapling`
* added `minecraft:jungle_sapling`
* added `minecraft:acacia_sapling`
* added `minecraft:dark_oak_sapling`
* added `minecraft:oak_leaves`
* added `minecraft:spruce_leaves`
* added `minecraft:birch_leaves`
* added `minecraft:jungle_leaves`
* added `minecraft:acacia_leaves`
* added `minecraft:dark_oak_leaves`
# Config Changes
* `engineTurnPower`
* `engineHeatChangeExponent`
* `engineFuelSaving`
* `engineMinCapacity`
# Changes
* Updated balloon crafting recipes
* Having extra balloons now increases elevation speed
* Updated mass info for engine and anchor
* Added a more intense animation for when the engine is fully heated
* Made engines affect turn speed
* Redstone will now stop fuel consumption on engines instead of pausing it
# bugfixes
* Fixed bug that caused engine heat to not work properly
* Fixed engine not dropping inventory when broken
* Fixed issues where the player became soft-locked when the helm was destroyed
* Fixed engine not returning bucket
9 changes: 9 additions & 0 deletions changelogs/1.1.1-beta.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Blacklist changes
* added `minecraft:snow_block`
# Config Changes
* added `engineRedstoneBehaviorPause`
* added `enginePowerAngularMin`
* renamed `enginePower` to `enginePowerLinear`
* renamed `minEnginePower` to `enginePowerLinearMin`
* renamed `engineTurnPower` to `enginePowerAngular`
* Updated Kotlin and VS2.
11 changes: 11 additions & 0 deletions changelogs/1.4.0-beta.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Blacklist changes
* added `minecraft:deepslate`
* added `minecraft:tuff`
# Recipe Changes
* Grouped balloon color recipes.
* Grouped helm recipes.
* Grouped balloon recipes.
* Added recipe unlock conditions.
* Updated some recipes to use tags instead of specific items
# Changes
* Increased break time for balloons.
14 changes: 10 additions & 4 deletions common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,22 @@ loom {
}

dependencies {
implementation(annotationProcessor("io.github.llamalad7:mixinextras-common:$mixin_extras_version"))

// We depend on fabric loader here to use the fabric @Environment annotations and get the mixin dependencies
// Do NOT use other classes from fabric loader
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}"
// Remove the next line if you don't want to depend on the API
// modApi "me.shedaniel:architectury:${rootProject.architectury_version}"
modApi("org.valkyrienskies:valkyrienskies-1201-common:${rootProject.vs2_version}")
implementation("org.valkyrienskies.core:api:1.1.0+ead972f384") { transitive = false }
modApi("org.valkyrienskies:valkyrienskies-120-common:${rootProject.vs2_version}")

compileOnly("org.valkyrienskies.core:api:${rootProject.vs_core_version}")
compileOnly("org.valkyrienskies.core:api-game:${rootProject.vs_core_version}")
compileOnly("org.valkyrienskies.core:util:${rootProject.vs_core_version}")
compileOnly("org.valkyrienskies.core:impl:${rootProject.vs_core_version}")

api "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.21"
api "org.jetbrains.kotlin:kotlin-reflect:1.7.21"
api "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.10"
api "org.jetbrains.kotlin:kotlin-reflect:1.9.10"
}

publishing {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
@Mixin(PlayerModel.class)
public abstract class PlayerEntityModelMixin<T extends LivingEntity> extends HumanoidModel<T> {

public PlayerEntityModelMixin(ModelPart $$0) {
super($$0);
public PlayerEntityModelMixin(final ModelPart model) {
super(model);
}

@SuppressWarnings("unchecked")
Expand Down
39 changes: 19 additions & 20 deletions common/src/main/kotlin/org/valkyrienskies/eureka/EurekaBlocks.kt
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import org.valkyrienskies.mod.common.hooks.VSGameEvents

@Suppress("unused")
object EurekaBlocks {
private val BLOCKS = DeferredRegister.create(EurekaMod.MOD_ID, Registries.BLOCK)
internal val BLOCKS = DeferredRegister.create(EurekaMod.MOD_ID, Registries.BLOCK)

val ANCHOR = BLOCKS.register("anchor", ::AnchorBlock)
val ENGINE = BLOCKS.register("engine", ::EngineBlock)
Expand Down Expand Up @@ -82,87 +82,87 @@ object EurekaBlocks {
// region Balloons
val BALLOON = BLOCKS.register("balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.SNOW).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.WOOL).strength(0.8F).sound(SoundType.WOOL)
)
}
val WHITE_BALLOON = BLOCKS.register("white_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.SNOW).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.SNOW).strength(0.8F).sound(SoundType.WOOL)
)
}
val LIGHT_GRAY_BALLOON = BLOCKS.register("light_gray_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_GRAY).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_GRAY).strength(0.8F).sound(SoundType.WOOL)
)
}
val GRAY_BALLOON = BLOCKS.register("gray_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GRAY).strength(0.8F).sound(SoundType.WOOL)
)
}
val BLACK_BALLOON = BLOCKS.register("black_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BLACK).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BLACK).strength(0.8F).sound(SoundType.WOOL)
)
}
val RED_BALLOON = BLOCKS.register("red_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_RED).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_RED).strength(0.8F).sound(SoundType.WOOL)
)
}
val ORANGE_BALLOON = BLOCKS.register("orange_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_ORANGE).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_ORANGE).strength(0.8F).sound(SoundType.WOOL)
)
}
val YELLOW_BALLOON = BLOCKS.register("yellow_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_YELLOW).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_YELLOW).strength(0.8F).sound(SoundType.WOOL)
)
}
val LIME_BALLOON = BLOCKS.register("lime_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_GREEN).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_GREEN).strength(0.8F).sound(SoundType.WOOL)
)
}
val GREEN_BALLOON = BLOCKS.register("green_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GREEN).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GREEN).strength(0.8F).sound(SoundType.WOOL)
)
}
val LIGHT_BLUE_BALLOON = BLOCKS.register("light_blue_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_BLUE).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_LIGHT_BLUE).strength(0.8F).sound(SoundType.WOOL)
)
}
val CYAN_BALLOON = BLOCKS.register("cyan_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_CYAN).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_CYAN).strength(0.8F).sound(SoundType.WOOL)
)
}
val BLUE_BALLOON = BLOCKS.register("blue_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BLUE).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BLUE).strength(0.8F).sound(SoundType.WOOL)
)
}
val PURPLE_BALLOON = BLOCKS.register("purple_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_PURPLE).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_PURPLE).strength(0.8F).sound(SoundType.WOOL)
)
}
val MAGENTA_BALLOON = BLOCKS.register("magenta_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_MAGENTA).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_MAGENTA).strength(0.8F).sound(SoundType.WOOL)
)
}
val PINK_BALLOON = BLOCKS.register("pink_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_PINK).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_PINK).strength(0.8F).sound(SoundType.WOOL)
)
}
val BROWN_BALLOON = BLOCKS.register("brown_balloon") {
BalloonBlock(
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BROWN).sound(SoundType.WOOL)
BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_BROWN).strength(0.8F).sound(SoundType.WOOL)
)
}
// endregion
Expand All @@ -177,7 +177,7 @@ object EurekaBlocks {

// region Flammables
// TODO make this part of the registration sequence
fun flammableBlock(block: Block?, flameOdds: Int, burnOdds: Int) {
fun flammableBlock(block: Block, flameOdds: Int, burnOdds: Int) {
val fire = Blocks.FIRE as FireBlock
fire.setFlammable(block, flameOdds, burnOdds)
}
Expand Down Expand Up @@ -217,5 +217,4 @@ object EurekaBlocks {
items.register(it.name) { BlockItem(it.get(), Item.Properties()) }
}
}

}
65 changes: 57 additions & 8 deletions common/src/main/kotlin/org/valkyrienskies/eureka/EurekaConfig.kt
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,41 @@ object EurekaConfig {

class Server {

@JsonSchema(description = "Movement power per engine heated fully")
val enginePower: Float = 2000000f
@JsonSchema(description = "Movement power per engine when heated fully")
val enginePowerLinear: Float = 2000000f

@JsonSchema(description = "Movement power per engine with minimal heat")
val minEnginePower: Float = 700000f
val enginePowerLinearMin: Float = 10000f

@JsonSchema(description = "Turning power per engine when heated fully")
val enginePowerAngular = 1.0f

@JsonSchema(description = "Turning power per engine when minimal heat")
val enginePowerAngularMin = 0.0f

@JsonSchema(description = "The amount of heat a engine loses per tick")
val engineHeatLoss = 0.01f

@JsonSchema(description = "The amount of heat a gain per tick (when burning)")
val engineHeatGain = 0.03f

@JsonSchema(description = "Increases heat gained at low heat level, and increased heat decreases when at high heat and not consuming fuel")
val engineHeatChangeExponent = 0.1f

@JsonSchema(description = "Pause fuel consumption and power when block is powered")
val engineRedstoneBehaviorPause = false

@JsonSchema(description = "Avoids consuming fuel when heat is 100%")
val engineFuelSaving = false

@JsonSchema(description = "Increasing this value will result in more items being able to converted to fuel")
val engineMinCapacity = 2000

@JsonSchema(description = "Fuel burn time multiplier")
val engineFuelMultiplier = 2f

@JsonSchema(description = "Max speed of a ship without boosting")
val maxCasualSpeed = 20f
val maxCasualSpeed = 15.0

@JsonSchema(description = "The speed at which the ship stabilizes")
var stabilizationSpeed = 10.0
Expand All @@ -44,7 +65,14 @@ object EurekaConfig {
// Sensitivity of the up/down impulse buttons.
// TODO maybe should be moved to VS2 client-side config?
@JsonSchema(description = "Vertical sensitivity up ascend/descend")
var impulseElevationRate = 7
var baseImpulseElevationRate = 2.0

@JsonSchema(description = "The max elevation speed boost gained by having extra extra balloons")
var balloonElevationMaxSpeed = 5.5

// Higher numbers make the ship accelerate to max speed faster
@JsonSchema(description = "Ascend and descend acceleration")
var elevationSnappiness = 1.0

// Allow Eureka controlled ships to be affected by fluid drag
@JsonSchema(description = "Allow Eureka controlled ships to be affected by fluid drag")
Expand All @@ -61,10 +89,12 @@ object EurekaConfig {
@JsonSchema(description = "The maximum linear acceleration at any point on the ship caused by helm torque")
var turnAcceleration = 10.0

@JsonSchema(description = "The maximum distance from center of mass to one end of the ship considered by " +
@JsonSchema(
description = "The maximum distance from center of mass to one end of the ship considered by " +
"the turn speed. At it's default of 16, it ensures that really large ships will turn at the same " +
"speed as a ship with a center of mass only 16 blocks away from the farthest point in the ship. " +
"That way, large ships do not turn painfully slowly")
"That way, large ships do not turn painfully slowly"
)
var maxSizeForTurnSpeedPenalty = 16.0

// The strength used when trying to level the ship
Expand Down Expand Up @@ -105,6 +135,8 @@ object EurekaConfig {
"minecraft:granite",
"minecraft:diorite",
"minecraft:andesite",
"minecraft:deepslate",
"minecraft:tuff",
"minecraft:crimson_nylium",
"minecraft:warped_nylium",
"minecraft:red_sand",
Expand All @@ -119,6 +151,7 @@ object EurekaConfig {
"minecraft:fern",
"minecraft:dead_bush",
"minecraft:seagrass",
"minecraft:tall_seagrass",
"minecraft:sea_pickle",
"minecraft:kelp",
"minecraft:bamboo",
Expand Down Expand Up @@ -146,6 +179,7 @@ object EurekaConfig {
"minecraft:chorus_plant",
"minecraft:chorus_flower",
"minecraft:snow",
"minecraft:snow_block",
"minecraft:cactus",
"minecraft:vine",
"minecraft:sunflower",
Expand All @@ -163,7 +197,19 @@ object EurekaConfig {
"minecraft:end_portal_frame",
"minecraft:end_portal",
"minecraft:end_gateway",
"minecraft:portal"
"minecraft:portal",
"minecraft:oak_sapling",
"minecraft:spruce_sapling",
"minecraft:birch_sapling",
"minecraft:jungle_sapling",
"minecraft:acacia_sapling",
"minecraft:dark_oak_sapling",
"minecraft:oak_leaves",
"minecraft:spruce_leaves",
"minecraft:birch_leaves",
"minecraft:jungle_leaves",
"minecraft:acacia_leaves",
"minecraft:dark_oak_leaves"
)

@JsonSchema(description = "Whether the ship helm assembles diagonally connected blocks or not")
Expand All @@ -177,5 +223,8 @@ object EurekaConfig {

@JsonSchema(description = "Whether or not disassembly is permitted")
val allowDisassembly = true

@JsonSchema(description = "Maximum number of blocks allowed in a ship. Set to 0 for no limit")
val maxShipBlocks = 32 * 32 * 32
}
}
Loading

0 comments on commit 26276be

Please sign in to comment.