mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Merge branch veloren:master into jcoxeye/price-entries
This commit is contained in:
commit
be951e747c
@ -40,6 +40,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
- Added hit_timing to BasicMelee abilities
|
- Added hit_timing to BasicMelee abilities
|
||||||
- A tavern building where npcs go to relax.
|
- A tavern building where npcs go to relax.
|
||||||
- Toggle for walking instead of running (Default: `I`).
|
- Toggle for walking instead of running (Default: `I`).
|
||||||
|
- Added day duration slider configuration on map creation UI.
|
||||||
|
- Potion of Agility
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
@ -73,6 +75,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
- Fixed offset of items carried on backs when wearing cloaks and backpacks
|
- Fixed offset of items carried on backs when wearing cloaks and backpacks
|
||||||
- Linearize light colors on the CPU rather than in shaders on the GPU
|
- Linearize light colors on the CPU rather than in shaders on the GPU
|
||||||
- You can no longer stack self buffs
|
- You can no longer stack self buffs
|
||||||
|
- Renamed "Burning Potion" to "Potion of Combustion"
|
||||||
|
|
||||||
### Removed
|
### Removed
|
||||||
- Medium and large potions from all loot tables
|
- Medium and large potions from all loot tables
|
||||||
@ -91,6 +94,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
- Fixed bug where airship captains would mass generate after using /reload_chunks
|
- Fixed bug where airship captains would mass generate after using /reload_chunks
|
||||||
- Fixed french translation "Énergie Consommée" -> "Regain d'Énergie"
|
- Fixed french translation "Énergie Consommée" -> "Regain d'Énergie"
|
||||||
- Fixed Perforate icon not displaying
|
- Fixed Perforate icon not displaying
|
||||||
|
- Make cave entrances easier to follow
|
||||||
|
- Renamed Twiggy Shoulders to match the Twig Armor set
|
||||||
|
|
||||||
## [0.15.0] - 2023-07-01
|
## [0.15.0] - 2023-07-01
|
||||||
|
|
||||||
|
93
Cargo.lock
generated
93
Cargo.lock
generated
@ -58,14 +58,15 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ahash"
|
name = "ahash"
|
||||||
version = "0.8.3"
|
version = "0.8.7"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
|
checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if 1.0.0",
|
"cfg-if 1.0.0",
|
||||||
"getrandom 0.2.10",
|
"getrandom 0.2.10",
|
||||||
"once_cell",
|
"once_cell",
|
||||||
"version_check",
|
"version_check",
|
||||||
|
"zerocopy",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -320,7 +321,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "f00425f4c1f3349b35daf0a73477249f6574fe89f4b9d76aca0b2a1356886b3b"
|
checksum = "f00425f4c1f3349b35daf0a73477249f6574fe89f4b9d76aca0b2a1356886b3b"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ab_glyph",
|
"ab_glyph",
|
||||||
"ahash 0.8.3",
|
"ahash 0.8.7",
|
||||||
"bincode",
|
"bincode",
|
||||||
"crossbeam-channel",
|
"crossbeam-channel",
|
||||||
"log",
|
"log",
|
||||||
@ -350,7 +351,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -655,7 +656,7 @@ checksum = "fdde5c9cd29ebd706ce1b35600920a33550e402fc998a2e53ad3b42c3c47a192"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -872,7 +873,7 @@ dependencies = [
|
|||||||
"heck 0.4.1",
|
"heck 0.4.1",
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1572,7 +1573,7 @@ dependencies = [
|
|||||||
"ident_case",
|
"ident_case",
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1594,7 +1595,7 @@ checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"darling_core 0.20.3",
|
"darling_core 0.20.3",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1755,7 +1756,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1773,7 +1774,7 @@ version = "5.1.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "dd05cab02d6074145c6f92ddf1b57357e4bc1424f87c790c044de62bdc94c13a"
|
checksum = "dd05cab02d6074145c6f92ddf1b57357e4bc1424f87c790c044de62bdc94c13a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash 0.8.3",
|
"ahash 0.8.7",
|
||||||
"lazy_static",
|
"lazy_static",
|
||||||
"log",
|
"log",
|
||||||
"nom",
|
"nom",
|
||||||
@ -1875,7 +1876,7 @@ checksum = "ccb14d927583dd5c2eac0f2cf264fc4762aefe1ae14c47a8a20fc1939d3a5fc0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -1896,7 +1897,7 @@ dependencies = [
|
|||||||
"darling 0.20.3",
|
"darling 0.20.3",
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -2238,7 +2239,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -2703,7 +2704,7 @@ version = "0.13.2"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
|
checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash 0.8.3",
|
"ahash 0.8.7",
|
||||||
"rayon",
|
"rayon",
|
||||||
"serde",
|
"serde",
|
||||||
]
|
]
|
||||||
@ -2714,7 +2715,7 @@ version = "0.14.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
|
checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash 0.8.3",
|
"ahash 0.8.7",
|
||||||
"allocator-api2",
|
"allocator-api2",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -4005,7 +4006,7 @@ checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -4112,7 +4113,7 @@ dependencies = [
|
|||||||
"proc-macro-crate",
|
"proc-macro-crate",
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -4511,7 +4512,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -4667,7 +4668,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "097bf8b99121dfb8c75eed54dfbdbdb1d53e372c53d2353e8a15aad2a479249d"
|
checksum = "097bf8b99121dfb8c75eed54dfbdbdb1d53e372c53d2353e8a15aad2a479249d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -5047,7 +5048,7 @@ dependencies = [
|
|||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"refinery-core",
|
"refinery-core",
|
||||||
"regex",
|
"regex",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -5486,7 +5487,7 @@ version = "0.2.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "772575a524feeb803e5b0fcbc6dd9f367e579488197c94c6e4023aad2305774d"
|
checksum = "772575a524feeb803e5b0fcbc6dd9f367e579488197c94c6e4023aad2305774d"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash 0.8.3",
|
"ahash 0.8.7",
|
||||||
"cfg-if 1.0.0",
|
"cfg-if 1.0.0",
|
||||||
"hashbrown 0.13.2",
|
"hashbrown 0.13.2",
|
||||||
]
|
]
|
||||||
@ -5633,7 +5634,7 @@ checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -5665,7 +5666,7 @@ checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -5767,10 +5768,9 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "shred"
|
name = "shred"
|
||||||
version = "0.15.0"
|
version = "0.15.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/amethyst/shred.git?rev=5d52c6fc390dd04c12158633e77591f6523d1f85#5d52c6fc390dd04c12158633e77591f6523d1f85"
|
||||||
checksum = "dc6b2cd1ccb08cf2b25d75c936e0cc9c8cb93c39a83814956da32653236338c0"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ahash 0.7.6",
|
"ahash 0.8.7",
|
||||||
"arrayvec 0.7.4",
|
"arrayvec 0.7.4",
|
||||||
"atomic_refcell",
|
"atomic_refcell",
|
||||||
"rayon",
|
"rayon",
|
||||||
@ -5782,8 +5782,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "shred-derive"
|
name = "shred-derive"
|
||||||
version = "0.6.3"
|
version = "0.6.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/amethyst/shred.git?rev=5d52c6fc390dd04c12158633e77591f6523d1f85#5d52c6fc390dd04c12158633e77591f6523d1f85"
|
||||||
checksum = "d5404c36bd155e41a54276ab6aafedad2fb627e5e5849d36ec439c9ddc044a2f"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
@ -6200,9 +6199,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "syn"
|
name = "syn"
|
||||||
version = "2.0.29"
|
version = "2.0.32"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
|
checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
@ -6277,7 +6276,7 @@ checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -6456,7 +6455,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -6597,7 +6596,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -6723,7 +6722,7 @@ version = "1.6.3"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
|
checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if 1.0.0",
|
"cfg-if 0.1.10",
|
||||||
"rand 0.8.5",
|
"rand 0.8.5",
|
||||||
"static_assertions",
|
"static_assertions",
|
||||||
]
|
]
|
||||||
@ -7176,7 +7175,7 @@ version = "0.1.0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -7596,7 +7595,7 @@ dependencies = [
|
|||||||
"once_cell",
|
"once_cell",
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -7653,7 +7652,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2 1.0.66",
|
"proc-macro2 1.0.66",
|
||||||
"quote 1.0.33",
|
"quote 1.0.33",
|
||||||
"syn 2.0.29",
|
"syn 2.0.32",
|
||||||
"wasm-bindgen-backend",
|
"wasm-bindgen-backend",
|
||||||
"wasm-bindgen-shared",
|
"wasm-bindgen-shared",
|
||||||
]
|
]
|
||||||
@ -8499,3 +8498,23 @@ checksum = "e17bb3549cc1321ae1296b9cdc2698e2b6cb1992adfa19a8c72e5b7a738f44cd"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"time 0.3.28",
|
"time 0.3.28",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "zerocopy"
|
||||||
|
version = "0.7.32"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
|
||||||
|
dependencies = [
|
||||||
|
"zerocopy-derive",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "zerocopy-derive"
|
||||||
|
version = "0.7.32"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2 1.0.66",
|
||||||
|
"quote 1.0.33",
|
||||||
|
"syn 2.0.32",
|
||||||
|
]
|
||||||
|
@ -165,6 +165,7 @@ winit = { git = "https://github.com/Imberflur/winit.git", tag = "raw-window-hand
|
|||||||
wgpu = { git = "https://github.com/pythonesque/wgpu.git", rev = "179ea209374a92837cde252f1d9ee01f628cae08" }
|
wgpu = { git = "https://github.com/pythonesque/wgpu.git", rev = "179ea209374a92837cde252f1d9ee01f628cae08" }
|
||||||
# ntapi 3.7 fails to compile under windows due to the bug https://github.com/MSxDOS/ntapi/pull/12
|
# ntapi 3.7 fails to compile under windows due to the bug https://github.com/MSxDOS/ntapi/pull/12
|
||||||
ntapi = { git = "https://github.com/MSxDOS/ntapi.git", rev = "9f56b149c9e25796739157c0fce3e0007a7de6eb" }
|
ntapi = { git = "https://github.com/MSxDOS/ntapi.git", rev = "9f56b149c9e25796739157c0fce3e0007a7de6eb" }
|
||||||
|
shred = { git = "https://github.com/amethyst/shred.git", rev = "5d52c6fc390dd04c12158633e77591f6523d1f85" }
|
||||||
|
|
||||||
[patch."https://github.com/gfx-rs/gfx"]
|
[patch."https://github.com/gfx-rs/gfx"]
|
||||||
gfx-hal = { git = "https://github.com/Imberflur/gfx.git", tag = "veloren-fixes-v1" }
|
gfx-hal = { git = "https://github.com/Imberflur/gfx.git", tag = "veloren-fixes-v1" }
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 8.0,
|
kind: Slash(
|
||||||
damage_increase: 1.0,
|
damage: 8,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 8,
|
||||||
knockback: 8.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.4,
|
|
||||||
base_swing_duration: 0.08,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.5,
|
|
||||||
forward_movement: 2.5,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -22,21 +17,25 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.08,
|
||||||
|
hit_timing: 0.5,
|
||||||
|
recover_duration: 0.5,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(2.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 10.0,
|
kind: Slash(
|
||||||
damage_increase: 1.5,
|
damage: 10,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 12,
|
||||||
knockback: 12.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.7,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.7,
|
|
||||||
forward_movement: 2.0,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -44,12 +43,15 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.7,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 0.7,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(2.0)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.7,
|
ori_modifier: 0.7,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
@ -1,33 +1,31 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 74,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 74,
|
||||||
base_poise_damage: 27.5,
|
poise: 27.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 9,
|
||||||
knockback: 9.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.4,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.8,
|
|
||||||
forward_movement: 1.0,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Ensnared,
|
kind: Ensnared,
|
||||||
dur_secs: 6.0,
|
dur_secs: 6.0,
|
||||||
strength: DamageFraction(0.1),
|
strength: Value(0.5),
|
||||||
chance: 0.6,
|
chance: 0.6,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 1.4,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 0.8,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(1.0)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.8,
|
ori_modifier: 0.8,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 50,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 50,
|
||||||
base_poise_damage: 16,
|
poise: 16,
|
||||||
poise_damage_increase: 0,
|
knockback: 2,
|
||||||
knockback: 2.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.8,
|
|
||||||
forward_movement: 1.0,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Poisoned,
|
kind: Poisoned,
|
||||||
dur_secs: 7.0,
|
dur_secs: 7.0,
|
||||||
@ -22,12 +17,15 @@ ComboMelee(
|
|||||||
chance: 0.4,
|
chance: 0.4,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.8,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 0.8,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(1.0)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.8,
|
ori_modifier: 0.8,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 54,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 54,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.5,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.5,
|
|
||||||
)
|
)
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 60,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 60,
|
||||||
base_poise_damage: 21,
|
poise: 21,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.8,
|
|
||||||
forward_movement: 1.0,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Poisoned,
|
kind: Poisoned,
|
||||||
dur_secs: 9.0,
|
dur_secs: 9.0,
|
||||||
@ -22,12 +17,15 @@ ComboMelee(
|
|||||||
chance: 0.8,
|
chance: 0.8,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.8,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 0.8,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(1.0)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.8,
|
ori_modifier: 0.8,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 44,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 44,
|
||||||
base_poise_damage: 14,
|
poise: 14,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 28,
|
poise: 28,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.2,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 36.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 36,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.8,
|
range: 2.8,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.4,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 1.4,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 36.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 36,
|
||||||
base_poise_damage: 18,
|
poise: 18,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.8,
|
range: 2.8,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 36.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 36,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.8,
|
range: 2.8,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 0.1,
|
||||||
stage: 1,
|
swing_duration: 0.07,
|
||||||
base_damage: 1.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 0.2,
|
||||||
base_poise_damage: 0,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Stab(
|
||||||
knockback: 0.0,
|
damage: 1,
|
||||||
|
poise: 0,
|
||||||
|
knockback: 0,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 150.0,
|
angle: 150.0,
|
||||||
base_buildup_duration: 0.1,
|
|
||||||
base_swing_duration: 0.07,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.2,
|
|
||||||
forward_movement: 0.0,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
ori_modifier: 0.6,
|
||||||
)
|
)
|
||||||
|
@ -1,31 +1,28 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [(
|
strikes: [
|
||||||
stage: 1,
|
(
|
||||||
base_damage: 15.0,
|
melee_constructor: (
|
||||||
damage_increase: 0.75,
|
kind: Bash(
|
||||||
base_poise_damage: 0,
|
damage: 15,
|
||||||
poise_damage_increase: 0,
|
poise: 0,
|
||||||
knockback: 3.5,
|
knockback: 3.5,
|
||||||
|
energy_regen: 5,
|
||||||
|
),
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.7,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.45,
|
|
||||||
forward_movement: 0.0,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Frozen,
|
kind: Frozen,
|
||||||
dur_secs: 2.0,
|
dur_secs: 2.0,
|
||||||
strength: Value(0.3),
|
strength: Value(0.3),
|
||||||
chance: 0.4,
|
chance: 0.4,
|
||||||
))),
|
))),
|
||||||
)],
|
),
|
||||||
initial_energy_gain: 5.0,
|
buildup_duration: 0.7,
|
||||||
max_energy_gain: 12.5,
|
swing_duration: 0.1,
|
||||||
energy_increase: 2.5,
|
hit_timing: 0.5,
|
||||||
speed_increase: 0.1,
|
recover_duration: 0.45,
|
||||||
max_speed_increase: 0.4,
|
|
||||||
scales_from_combo: 2,
|
|
||||||
ori_modifier: 1.0,
|
ori_modifier: 1.0,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
@ -1,36 +1,35 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 32.0,
|
kind: Bash(
|
||||||
damage_increase: 0.0,
|
damage: 32,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0.0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
range: 6,
|
),
|
||||||
|
range: 6.0,
|
||||||
angle: 90.0,
|
angle: 90.0,
|
||||||
base_buildup_duration: 0.5,
|
),
|
||||||
base_swing_duration: 0.4,
|
buildup_duration: 0.5,
|
||||||
|
swing_duration: 0.4,
|
||||||
hit_timing: 0.4,
|
hit_timing: 0.4,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 0.3,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.3)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 36.0,
|
kind: Bash(
|
||||||
damage_increase: 0.0,
|
damage: 36,
|
||||||
base_poise_damage: 40.0,
|
poise: 40,
|
||||||
poise_damage_increase: 0.0,
|
knockback: 10,
|
||||||
knockback: 10.0,
|
energy_regen: 0,
|
||||||
range: 8,
|
),
|
||||||
|
range: 8.0,
|
||||||
angle: 45.0,
|
angle: 45.0,
|
||||||
base_buildup_duration: 0.6,
|
|
||||||
base_swing_duration: 0.6,
|
|
||||||
hit_timing: 0.3,
|
|
||||||
base_recover_duration: 1.2,
|
|
||||||
forward_movement: 0.2,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Crippled,
|
kind: Crippled,
|
||||||
dur_secs: 3.0,
|
dur_secs: 3.0,
|
||||||
@ -38,12 +37,15 @@ ComboMelee(
|
|||||||
chance: 1.0,
|
chance: 1.0,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.6,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.6,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.3,
|
||||||
energy_increase: 0,
|
recover_duration: 1.2,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(0.2)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.65,
|
ori_modifier: 0.65,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 35.5,
|
kind: Slash(
|
||||||
damage_increase: 0.0,
|
damage: 35,
|
||||||
base_poise_damage: 15.0,
|
poise: 15,
|
||||||
poise_damage_increase: 0.0,
|
knockback: 2,
|
||||||
knockback: 2.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 6.0,
|
range: 6.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.4,
|
|
||||||
base_recover_duration: 0.3,
|
|
||||||
forward_movement: 0.8,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 3.0,
|
dur_secs: 3.0,
|
||||||
@ -22,21 +17,25 @@ ComboMelee(
|
|||||||
chance: 0.3,
|
chance: 0.3,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
|
hit_timing: 0.4,
|
||||||
|
recover_duration: 0.3,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(0.8)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 38.5,
|
kind: Slash(
|
||||||
damage_increase: 0.0,
|
damage: 38.5,
|
||||||
base_poise_damage: 20.0,
|
poise: 20,
|
||||||
poise_damage_increase: 0.0,
|
knockback: 8,
|
||||||
knockback: 8.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 6.0,
|
range: 6.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.7,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.4,
|
|
||||||
base_recover_duration: 1.3,
|
|
||||||
forward_movement: 0.2,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 3.0,
|
dur_secs: 3.0,
|
||||||
@ -44,12 +43,15 @@ ComboMelee(
|
|||||||
chance: 0.15,
|
chance: 0.15,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.7,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.4,
|
||||||
energy_increase: 0,
|
recover_duration: 1.3,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(0.2)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.6,
|
ori_modifier: 0.6,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 1.0,
|
||||||
stage: 1,
|
swing_duration: 0.2,
|
||||||
base_damage: 40.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 1.0,
|
||||||
base_poise_damage: 12,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Bash(
|
||||||
knockback: 5.0,
|
damage: 40,
|
||||||
|
poise: 12,
|
||||||
|
knockback: 5,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.0,
|
|
||||||
base_swing_duration: 0.2,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 1.0,
|
|
||||||
forward_movement: 0.5,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
ori_modifier: 0.6,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 40.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 40,
|
||||||
base_poise_damage: 28,
|
poise: 28,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.0,
|
),
|
||||||
base_swing_duration: 0.075,
|
buildup_duration: 1.0,
|
||||||
|
swing_duration: 0.075,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 18.0,
|
kind: Slash(
|
||||||
damage_increase: 1.0,
|
damage: 18,
|
||||||
base_poise_damage: 0,
|
poise: 0,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 1.2,
|
|
||||||
base_swing_duration: 0.12,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 1.2,
|
|
||||||
forward_movement: 3.5,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -22,21 +17,25 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.12,
|
||||||
|
hit_timing: 0.5,
|
||||||
|
recover_duration: 1.2,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(3.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 26.0,
|
kind: Slash(
|
||||||
damage_increase: 1.5,
|
damage: 26,
|
||||||
base_poise_damage: 0,
|
poise: 0,
|
||||||
poise_damage_increase: 0,
|
knockback: 16,
|
||||||
knockback: 16.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 1.0,
|
|
||||||
base_swing_duration: 0.15,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 2.4,
|
|
||||||
forward_movement: 4.5,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -44,12 +43,15 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 1.0,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.15,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 2.4,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(4.5)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.6,
|
ori_modifier: 0.6,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 40.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 40,
|
||||||
base_poise_damage: 28,
|
poise: 28,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.0,
|
range: 2.0,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.2,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 3.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(3.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 18,
|
poise: 18,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 44.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 44,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 44.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 44,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 44.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 44,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,75 +1,85 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 12.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 12,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 1,
|
||||||
knockback: 1.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.2,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.2,
|
recover_duration: 0.2,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 12.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 12,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 1,
|
||||||
knockback: 1.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.3,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.3,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.2,
|
recover_duration: 0.2,
|
||||||
forward_movement: 0.8,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.8)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 12.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 12,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 1,
|
||||||
knockback: 1.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.4,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.2,
|
recover_duration: 0.2,
|
||||||
forward_movement: 0.8,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.8)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 4,
|
melee_constructor: (
|
||||||
base_damage: 12.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 12,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 8,
|
||||||
knockback: 8.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.4,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.2,
|
recover_duration: 0.2,
|
||||||
forward_movement: 0.8,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.8)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.8,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 16.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16,
|
||||||
base_poise_damage: 0,
|
poise: 22,
|
||||||
poise_damage_increase: 22,
|
knockback: 10,
|
||||||
knockback: 10.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 16.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16,
|
||||||
base_poise_damage: 22,
|
poise: 22,
|
||||||
poise_damage_increase: 0,
|
knockback: 10,
|
||||||
knockback: 10.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.4,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 16.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16,
|
||||||
base_poise_damage: 22,
|
poise: 22,
|
||||||
poise_damage_increase: 0,
|
knockback: 10,
|
||||||
knockback: 10.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.2,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.2,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 20.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 20,
|
||||||
base_poise_damage: 28,
|
poise: 28,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.7,
|
range: 2.7,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,62 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 10.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 10,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.9,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.9,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 10.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 10,
|
||||||
base_poise_damage: 18,
|
poise: 18,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 0.0,
|
ori_modifier: 0.7,
|
||||||
damage_kind: Crushing,
|
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 10.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 10,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.4,
|
recover_duration: 0.4,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,43 +1,45 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 50.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 50,
|
||||||
base_poise_damage: 22,
|
poise: 22,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 74.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 74,
|
||||||
base_poise_damage: 0,
|
poise: 22,
|
||||||
poise_damage_increase: 22,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 0.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,43 +1,45 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 16.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16,
|
||||||
base_poise_damage: 30,
|
poise: 30,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 16.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16,
|
||||||
base_poise_damage: 30,
|
poise: 30,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.1,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.1,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 1.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.8,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 20.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 20,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 40.0,
|
angle: 40.0,
|
||||||
base_buildup_duration: 1.2,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 0.3,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.3)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 20.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 20,
|
||||||
base_poise_damage: 17,
|
poise: 17,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 40.0,
|
angle: 40.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 0.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 20.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 20,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 5,
|
||||||
knockback: 5.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.2,
|
range: 2.2,
|
||||||
angle: 40.0,
|
angle: 40.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 0.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(0.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.8,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.8,
|
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 0.6,
|
||||||
stage: 1,
|
swing_duration: 0.15,
|
||||||
base_damage: 6.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 0.6,
|
||||||
base_poise_damage: 10,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Bash(
|
||||||
knockback: 1.0,
|
damage: 6,
|
||||||
|
poise: 10,
|
||||||
|
knockback: 1,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 1.5,
|
range: 1.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.6,
|
|
||||||
base_swing_duration: 0.15,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.6,
|
|
||||||
forward_movement: 1.0,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
ori_modifier: 0.7,
|
||||||
)
|
)
|
||||||
|
@ -1,43 +1,45 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 7.5,
|
poise: 7.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 5,
|
||||||
range: 3,
|
),
|
||||||
|
range: 3.0,
|
||||||
angle: 75.0,
|
angle: 75.0,
|
||||||
base_buildup_duration: 1.2,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 1.2,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 0.25,
|
movement: (
|
||||||
damage_kind: Piercing,
|
swing: Some(Forward(0.25)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.5,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 28.0,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 28,
|
||||||
base_poise_damage: 7.5,
|
poise: 7.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 5,
|
||||||
range: 3,
|
),
|
||||||
|
range: 3.0,
|
||||||
angle: 75.0,
|
angle: 75.0,
|
||||||
base_buildup_duration: 0.2,
|
),
|
||||||
base_swing_duration: 0.07,
|
buildup_duration: 0.2,
|
||||||
|
swing_duration: 0.07,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 0.25,
|
movement: (
|
||||||
damage_kind: Piercing,
|
swing: Some(Forward(0.25)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.5,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 5,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 5,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 0.1,
|
||||||
stage: 1,
|
swing_duration: 0.07,
|
||||||
base_damage: 1.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 0.2,
|
||||||
base_poise_damage: 0,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Stab(
|
||||||
knockback: 0.0,
|
damage: 1,
|
||||||
|
poise: 0,
|
||||||
|
knockback: 0,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 150.0,
|
angle: 150.0,
|
||||||
base_buildup_duration: 0.1,
|
|
||||||
base_swing_duration: 0.07,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.2,
|
|
||||||
forward_movement: 0.0,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
ori_modifier: 0.6,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 1.8,
|
||||||
stage: 1,
|
swing_duration: 0.1,
|
||||||
base_damage: 60.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 1.8,
|
||||||
base_poise_damage: 40,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Bash(
|
||||||
knockback: 3.0,
|
damage: 60,
|
||||||
|
poise: 40,
|
||||||
|
knockback: 3,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 1.8,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 1.8,
|
|
||||||
forward_movement: 3.0,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
ori_modifier: 0.7,
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 54.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 54,
|
||||||
base_poise_damage: 40,
|
poise: 40,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 7.5,
|
range: 7.5,
|
||||||
angle: 60.0,
|
angle: 60.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 3.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(3.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 40.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 40,
|
||||||
base_poise_damage: 32.5,
|
poise: 32.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 7.5,
|
range: 7.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.5,
|
recover_duration: 0.5,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 50.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 50,
|
||||||
base_poise_damage: 32.5,
|
poise: 32.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.2,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.2,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 60.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 60,
|
||||||
base_poise_damage: 32.5,
|
poise: 32.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 25,
|
||||||
knockback: 25.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.4,
|
),
|
||||||
base_swing_duration: 0.125,
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.125,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 1.6,
|
recover_duration: 1.6,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,27 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 22.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 22,
|
||||||
base_poise_damage: 28,
|
poise: 28,
|
||||||
poise_damage_increase: 0,
|
knockback: 2,
|
||||||
knockback: 2.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.8,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.8,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.8,
|
recover_duration: 0.8,
|
||||||
forward_movement: 3.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(3.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 16.5,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 16.5,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.95,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.95,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.50,
|
recover_duration: 0.5,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 30.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 30,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.65,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.65,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.50,
|
recover_duration: 0.5,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 36.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 36,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.0,
|
range: 3.0,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.525,
|
),
|
||||||
base_swing_duration: 0.125,
|
buildup_duration: 0.525,
|
||||||
|
swing_duration: 0.125,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 1.25,
|
recover_duration: 1.25,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.6,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.6,
|
|
||||||
)
|
)
|
||||||
|
@ -1,59 +1,65 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 30.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 30,
|
||||||
base_poise_damage: 17.5,
|
poise: 17.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.3,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 1.3,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.5,
|
recover_duration: 0.5,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 30.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 30,
|
||||||
base_poise_damage: 20.5,
|
poise: 20.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 3,
|
||||||
knockback: 3.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.2,
|
),
|
||||||
base_swing_duration: 0.15,
|
buildup_duration: 0.2,
|
||||||
|
swing_duration: 0.15,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.3,
|
recover_duration: 0.3,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 3,
|
melee_constructor: (
|
||||||
base_damage: 30.0,
|
kind: Bash(
|
||||||
damage_increase: 0,
|
damage: 30,
|
||||||
base_poise_damage: 22.5,
|
poise: 22.5,
|
||||||
poise_damage_increase: 0,
|
knockback: 25,
|
||||||
knockback: 25.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 5.5,
|
range: 5.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.4,
|
),
|
||||||
base_swing_duration: 0.125,
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.125,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 1.6,
|
recover_duration: 1.6,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(1.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
@ -1,27 +1,18 @@
|
|||||||
ComboMelee(
|
BasicMelee(
|
||||||
stage_data: [
|
energy_cost: 0,
|
||||||
(
|
buildup_duration: 1.2,
|
||||||
stage: 1,
|
swing_duration: 0.4,
|
||||||
base_damage: 36.0,
|
hit_timing: 0.5,
|
||||||
damage_increase: 0,
|
recover_duration: 0.8,
|
||||||
base_poise_damage: 40,
|
melee_constructor: (
|
||||||
poise_damage_increase: 0,
|
kind: Bash(
|
||||||
knockback: 3.0,
|
damage: 36,
|
||||||
|
poise: 40,
|
||||||
|
knockback: 3,
|
||||||
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 1.2,
|
|
||||||
base_swing_duration: 0.4,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.8,
|
|
||||||
forward_movement: 5.0,
|
|
||||||
damage_kind: Crushing,
|
|
||||||
),
|
),
|
||||||
],
|
|
||||||
initial_energy_gain: 0,
|
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
ori_modifier: 0.7,
|
||||||
)
|
)
|
||||||
|
@ -1,33 +1,25 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 2.0,
|
kind: Slash(
|
||||||
damage_increase: 1.0,
|
damage: 2,
|
||||||
base_poise_damage: 8,
|
poise: 8,
|
||||||
poise_damage_increase: 0,
|
knockback: 8,
|
||||||
knockback: 8.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.1,
|
),
|
||||||
base_swing_duration: 0.05,
|
buildup_duration: 0.1,
|
||||||
|
swing_duration: 0.05,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.05,
|
recover_duration: 0.05,
|
||||||
forward_movement: 1.0,
|
movement: (
|
||||||
damage_kind: Slashing,
|
swing: Some(Forward(1.0)),
|
||||||
damage_effect: Some(Buff((
|
),
|
||||||
kind: Bleeding,
|
ori_modifier: 0.7,
|
||||||
dur_secs: 10.0,
|
|
||||||
strength: DamageFraction(0.1),
|
|
||||||
chance: 0.1,
|
|
||||||
))),
|
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.7,
|
|
||||||
)
|
)
|
@ -1,4 +1,4 @@
|
|||||||
ComboMelee(
|
ComboMeleeDeprecated(
|
||||||
stage_data: [(
|
stage_data: [(
|
||||||
stage: 1,
|
stage: 1,
|
||||||
base_damage: 15.0,
|
base_damage: 15.0,
|
||||||
|
@ -1,43 +1,45 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 24.0,
|
kind: Bash(
|
||||||
damage_increase: 1.0,
|
damage: 24,
|
||||||
base_poise_damage: 40,
|
poise: 40,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 4.5,
|
range: 4.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.6,
|
),
|
||||||
base_swing_duration: 0.08,
|
buildup_duration: 0.6,
|
||||||
|
swing_duration: 0.08,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 0.6,
|
recover_duration: 0.6,
|
||||||
forward_movement: 3.5,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(3.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 32.0,
|
kind: Bash(
|
||||||
damage_increase: 1.5,
|
damage: 32,
|
||||||
base_poise_damage: 40,
|
poise: 40,
|
||||||
poise_damage_increase: 0,
|
knockback: 16,
|
||||||
knockback: 16.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.6,
|
),
|
||||||
base_swing_duration: 0.25,
|
buildup_duration: 0.6,
|
||||||
|
swing_duration: 0.25,
|
||||||
hit_timing: 0.5,
|
hit_timing: 0.5,
|
||||||
base_recover_duration: 1.2,
|
recover_duration: 1.2,
|
||||||
forward_movement: 2.0,
|
movement: (
|
||||||
damage_kind: Crushing,
|
swing: Some(Forward(2.0)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.65,
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 0,
|
|
||||||
ori_modifier: 0.65,
|
|
||||||
)
|
)
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 6.5,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 6.5,
|
||||||
base_poise_damage: 18,
|
poise: 18,
|
||||||
poise_damage_increase: 0,
|
knockback: 4,
|
||||||
knockback: 4.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.35,
|
|
||||||
base_swing_duration: 0.075,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.4,
|
|
||||||
forward_movement: 0.7,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -22,21 +17,25 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 0.35,
|
||||||
|
swing_duration: 0.075,
|
||||||
|
hit_timing: 0.5,
|
||||||
|
recover_duration: 0.4,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(0.7)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.75,
|
||||||
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 8.0,
|
kind: Stab(
|
||||||
damage_increase: 0,
|
damage: 8,
|
||||||
base_poise_damage: 18,
|
poise: 18,
|
||||||
poise_damage_increase: 0,
|
knockback: 7,
|
||||||
knockback: 7.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 2.5,
|
range: 2.5,
|
||||||
angle: 15.0,
|
angle: 15.0,
|
||||||
base_buildup_duration: 0.5,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.5,
|
|
||||||
forward_movement: 0.7,
|
|
||||||
damage_kind: Piercing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -44,12 +43,15 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 0.5,
|
||||||
|
swing_duration: 0.1,
|
||||||
|
hit_timing: 0.5,
|
||||||
|
recover_duration: 0.5,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(0.7)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.75,
|
||||||
|
),
|
||||||
],
|
],
|
||||||
initial_energy_gain: 0,
|
energy_cost_per_strike: 0,
|
||||||
max_energy_gain: 0,
|
|
||||||
energy_increase: 3.0,
|
|
||||||
speed_increase: 0.0,
|
|
||||||
max_speed_increase: 0.0,
|
|
||||||
scales_from_combo: 2,
|
|
||||||
ori_modifier: 0.75,
|
|
||||||
)
|
)
|
||||||
|
@ -1,20 +1,15 @@
|
|||||||
ComboMelee(
|
ComboMelee2(
|
||||||
stage_data: [
|
strikes: [
|
||||||
(
|
(
|
||||||
stage: 1,
|
melee_constructor: (
|
||||||
base_damage: 8.0,
|
kind: Slash(
|
||||||
damage_increase: 1.0,
|
damage: 8,
|
||||||
base_poise_damage: 15,
|
poise: 15,
|
||||||
poise_damage_increase: 0,
|
knockback: 8,
|
||||||
knockback: 8.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 50.0,
|
angle: 50.0,
|
||||||
base_buildup_duration: 0.4,
|
|
||||||
base_swing_duration: 0.08,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.5,
|
|
||||||
forward_movement: 2.5,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -22,21 +17,25 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
|
buildup_duration: 0.4,
|
||||||
|
swing_duration: 0.08,
|
||||||
|
hit_timing: 0.5,
|
||||||
|
recover_duration: 0.5,
|
||||||
|
movement: (
|
||||||
|
swing: Some(Forward(2.5)),
|
||||||
|
),
|
||||||
|
ori_modifier: 0.7,
|
||||||
|
),
|
||||||
(
|
(
|
||||||
stage: 2,
|
melee_constructor: (
|
||||||
base_damage: 10.0,
|
kind: Slash(
|
||||||
damage_increase: 1.5,
|
damage: 10,
|
||||||
base_poise_damage: 20,
|
poise: 20,
|
||||||
poise_damage_increase: 0,
|
knockback: 12,
|
||||||
knockback: 12.0,
|
energy_regen: 0,
|
||||||
|
),
|
||||||
range: 3.5,
|
range: 3.5,
|
||||||
angle: 30.0,
|
angle: 30.0,
|
||||||
base_buildup_duration: 0.7,
|
|
||||||
base_swing_duration: 0.1,
|
|
||||||
hit_timing: 0.5,
|
|
||||||
base_recover_duration: 0.7,
|
|
||||||
forward_movement: 2.0,
|
|
||||||
damage_kind: Slashing,
|
|
||||||
damage_effect: Some(Buff((
|
damage_effect: Some(Buff((
|
||||||
kind: Bleeding,
|
kind: Bleeding,
|
||||||
dur_secs: 10.0,
|
dur_secs: 10.0,
|
||||||
@ -44,12 +43,15 @@ ComboMelee(
|
|||||||
chance: 0.1,
|
chance: 0.1,
|
||||||
))),
|
))),
|
||||||
),
|
),
|
||||||
],
|
buildup_duration: 0.7,
|
||||||
initial_energy_gain: 0,
|
swing_duration: 0.1,
|
||||||
max_energy_gain: 0,
|
hit_timing: 0.5,
|
||||||
energy_increase: 0,
|
recover_duration: 0.7,
|
||||||
speed_increase: 0.0,
|
movement: (
|
||||||
max_speed_increase: 0.0,
|
swing: Some(Forward(2.0)),
|
||||||
scales_from_combo: 0,
|
),
|
||||||
ori_modifier: 0.7,
|
ori_modifier: 0.7,
|
||||||
|
),
|
||||||
|
],
|
||||||
|
energy_cost_per_strike: 0,
|
||||||
)
|
)
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
ItemDef(
|
ItemDef(
|
||||||
name: "Twiggy Shoulders",
|
name: "Twig Shoulders",
|
||||||
description: "Spaulders made from tightly tied twigs.",
|
description: "Spaulders made from tightly tied twigs.",
|
||||||
kind: Armor((
|
kind: Armor((
|
||||||
kind: Shoulder,
|
kind: Shoulder,
|
||||||
stats: FromSet("Twigs"),
|
stats: FromSet("Twigs"),
|
||||||
)),
|
)),
|
||||||
quality: Common,
|
quality: Moderate,
|
||||||
tags: [
|
tags: [
|
||||||
SalvageInto(Twig, 1),
|
SalvageInto(Twig, 1),
|
||||||
],
|
],
|
||||||
|
27
assets/common/items/consumable/potion_agility.ron
Normal file
27
assets/common/items/consumable/potion_agility.ron
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
ItemDef(
|
||||||
|
name: "Potion of Agility",
|
||||||
|
description: "Fly, you fools!",
|
||||||
|
kind: Consumable(
|
||||||
|
kind: Drink,
|
||||||
|
effects: All([
|
||||||
|
Buff((
|
||||||
|
kind: Agility,
|
||||||
|
data: (
|
||||||
|
strength: 0.55,
|
||||||
|
duration: Some(25),
|
||||||
|
),
|
||||||
|
cat_ids: [Natural],
|
||||||
|
)),
|
||||||
|
Buff((
|
||||||
|
kind: PotionSickness,
|
||||||
|
data: (
|
||||||
|
strength: 0.5,
|
||||||
|
duration: Some(60),
|
||||||
|
),
|
||||||
|
cat_ids: [Natural],
|
||||||
|
)),
|
||||||
|
])
|
||||||
|
),
|
||||||
|
quality: Moderate,
|
||||||
|
tags: [Potion],
|
||||||
|
)
|
@ -1,5 +1,5 @@
|
|||||||
ItemDef(
|
ItemDef(
|
||||||
name: "Burning Potion",
|
name: "Potion of Combustion",
|
||||||
description: "Sets the user ablaze",
|
description: "Sets the user ablaze",
|
||||||
kind: Consumable(
|
kind: Consumable(
|
||||||
kind: Drink,
|
kind: Drink,
|
@ -31,8 +31,8 @@
|
|||||||
],
|
],
|
||||||
craft_sprite: Some(Anvil),
|
craft_sprite: Some(Anvil),
|
||||||
),
|
),
|
||||||
"potion_burning": (
|
"potion_combustion": (
|
||||||
output: ("common.items.consumable.potion_burning", 1),
|
output: ("common.items.consumable.potion_combustion", 1),
|
||||||
inputs: [
|
inputs: [
|
||||||
(Item("common.items.crafting_ing.empty_vial"), 1, false),
|
(Item("common.items.crafting_ing.empty_vial"), 1, false),
|
||||||
(Item("common.items.crafting_ing.living_embers"), 3, false),
|
(Item("common.items.crafting_ing.living_embers"), 3, false),
|
||||||
@ -40,6 +40,16 @@
|
|||||||
],
|
],
|
||||||
craft_sprite: Some(Cauldron),
|
craft_sprite: Some(Cauldron),
|
||||||
),
|
),
|
||||||
|
"potion_agility": (
|
||||||
|
output: ("common.items.consumable.potion_agility", 1),
|
||||||
|
inputs: [
|
||||||
|
(Item("common.items.crafting_ing.empty_vial"), 1, false),
|
||||||
|
(Item("common.items.mineral.ore.veloritefrag"), 2, false),
|
||||||
|
(Item("common.items.crafting_ing.animal_misc.raptor_feather"), 2, false),
|
||||||
|
(Item("common.items.crafting_ing.animal_misc.viscous_ooze"), 3, false),
|
||||||
|
],
|
||||||
|
craft_sprite: Some(Cauldron),
|
||||||
|
),
|
||||||
"potion_s": (
|
"potion_s": (
|
||||||
output: ("common.items.consumable.potion_minor", 1),
|
output: ("common.items.consumable.potion_minor", 1),
|
||||||
inputs: [
|
inputs: [
|
||||||
|
@ -307,6 +307,19 @@
|
|||||||
|
|
||||||
// Dungeon music
|
// Dungeon music
|
||||||
|
|
||||||
|
Individual((
|
||||||
|
title: "A Heart's Ice-Cold Protection",
|
||||||
|
path: "voxygen.audio.soundtrack.dungeon.a_hearts_ice-cold_protection",
|
||||||
|
length: 205.0,
|
||||||
|
timing: None,
|
||||||
|
weather: None,
|
||||||
|
biomes:[],
|
||||||
|
sites: [
|
||||||
|
Dungeon(Adlet),
|
||||||
|
],
|
||||||
|
music_state: Activity(Explore),
|
||||||
|
artist: ("GeekyGami", "https://geekygami.newgrounds.com/audio/"),
|
||||||
|
)),
|
||||||
Individual((
|
Individual((
|
||||||
title: "Mysty Temple",
|
title: "Mysty Temple",
|
||||||
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
||||||
@ -316,6 +329,7 @@
|
|||||||
biomes:[],
|
biomes:[],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Tiny", None),
|
artist: ("Tiny", None),
|
||||||
@ -342,6 +356,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -355,6 +370,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -436,8 +452,8 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 56.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 61.818, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.545, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
@ -451,14 +467,14 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 60.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 61.666, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 4.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 3.666, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
),
|
),
|
||||||
Segmented(
|
Segmented(
|
||||||
title: "Valiant Voxels",
|
title: "Clash",
|
||||||
timing: None,
|
timing: None,
|
||||||
weather: None,
|
weather: None,
|
||||||
biomes: [],
|
biomes: [],
|
||||||
@ -466,11 +482,11 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.valiant_voxels.valiant_voxels-start", 7.846, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.clash.clash-start", 121.5, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.valiant_voxels.valiant_voxels-loop", 59.126, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.clash.clash-loop", 81.0, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.valiant_voxels.valiant_voxels-end", 5.49, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.clash.clash-end", 1.5, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("Seventh Sam", "https://seventhsam.com/"),
|
artist: ("Alfredo Pompa D & Rodriogo Plata", None),
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
@ -165,6 +165,19 @@
|
|||||||
|
|
||||||
// Dungeon music
|
// Dungeon music
|
||||||
|
|
||||||
|
Individual((
|
||||||
|
title: "A Heart's Ice-Cold Protection",
|
||||||
|
path: "voxygen.audio.soundtrack.dungeon.a_hearts_ice-cold_protection",
|
||||||
|
length: 205.0,
|
||||||
|
timing: None,
|
||||||
|
weather: None,
|
||||||
|
biomes:[],
|
||||||
|
sites: [
|
||||||
|
Dungeon(Adlet),
|
||||||
|
],
|
||||||
|
music_state: Activity(Explore),
|
||||||
|
artist: ("GeekyGami", "https://geekygami.newgrounds.com/audio/"),
|
||||||
|
)),
|
||||||
Individual((
|
Individual((
|
||||||
title: "Mysty Temple",
|
title: "Mysty Temple",
|
||||||
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
||||||
@ -174,6 +187,7 @@
|
|||||||
biomes:[],
|
biomes:[],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Tiny", None),
|
artist: ("Tiny", None),
|
||||||
@ -200,6 +214,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -213,6 +228,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -294,8 +310,8 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 56.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 61.818, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.545, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
@ -309,11 +325,26 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 60.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 61.666, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 4.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 3.666, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
),
|
),
|
||||||
|
Segmented(
|
||||||
|
title: "Clash",
|
||||||
|
timing: None,
|
||||||
|
weather: None,
|
||||||
|
biomes: [],
|
||||||
|
sites: [
|
||||||
|
Dungeon(Old),
|
||||||
|
],
|
||||||
|
segments: [
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-start", 121.5, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-loop", 81.0, Activity(Combat(High)), None),
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-end", 1.5, Transition(Combat(High), Explore), None),
|
||||||
|
],
|
||||||
|
artist: ("Alfredo Pompa D & Rodriogo Plata", None),
|
||||||
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
@ -397,27 +397,6 @@
|
|||||||
threshold: 0.7,
|
threshold: 0.7,
|
||||||
subtitle: "subtitle-hammer-attack",
|
subtitle: "subtitle-hammer-attack",
|
||||||
),
|
),
|
||||||
Attack(ComboMelee(Action, 1), Sword): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.swing_sword",
|
|
||||||
],
|
|
||||||
threshold: 0.7,
|
|
||||||
subtitle: "subtitle-sword_attack",
|
|
||||||
),
|
|
||||||
Attack(ComboMelee(Action, 2), Sword): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.separated_second_swing",
|
|
||||||
],
|
|
||||||
threshold: 0.7,
|
|
||||||
subtitle: "subtitle-sword_attack",
|
|
||||||
),
|
|
||||||
Attack(ComboMelee(Action, 3), Sword): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.separated_third_swing",
|
|
||||||
],
|
|
||||||
threshold: 0.7,
|
|
||||||
subtitle: "subtitle-sword_attack",
|
|
||||||
),
|
|
||||||
Inventory(CollectedTool(Sword)): (
|
Inventory(CollectedTool(Sword)): (
|
||||||
files: [
|
files: [
|
||||||
"voxygen.audio.sfx.inventory.pickup_sword",
|
"voxygen.audio.sfx.inventory.pickup_sword",
|
||||||
@ -443,7 +422,7 @@
|
|||||||
threshold: 0.5,
|
threshold: 0.5,
|
||||||
subtitle: "subtitle-unwield_hammer",
|
subtitle: "subtitle-unwield_hammer",
|
||||||
),
|
),
|
||||||
Attack(ComboMelee(Action, 1), Hammer): (
|
Attack(ComboMeleeDeprecated(Action, 1), Hammer): (
|
||||||
files: [
|
files: [
|
||||||
"voxygen.audio.sfx.abilities.swing",
|
"voxygen.audio.sfx.abilities.swing",
|
||||||
],
|
],
|
||||||
@ -489,20 +468,6 @@
|
|||||||
threshold: 0.5,
|
threshold: 0.5,
|
||||||
subtitle: "subtitle-unwield_axe",
|
subtitle: "subtitle-unwield_axe",
|
||||||
),
|
),
|
||||||
Attack(ComboMelee(Action, 1), Axe): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.swing",
|
|
||||||
],
|
|
||||||
threshold: 0.7,
|
|
||||||
subtitle: "subtitle-axe_attack",
|
|
||||||
),
|
|
||||||
Attack(ComboMelee(Action, 2), Axe): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.swing",
|
|
||||||
],
|
|
||||||
threshold: 0.7,
|
|
||||||
subtitle: "subtitle-axe_attack",
|
|
||||||
),
|
|
||||||
Attack(RapidMelee(Action), Axe): (
|
Attack(RapidMelee(Action), Axe): (
|
||||||
files: [
|
files: [
|
||||||
"voxygen.audio.sfx.abilities.swing",
|
"voxygen.audio.sfx.abilities.swing",
|
||||||
@ -549,13 +514,6 @@
|
|||||||
threshold: 0.5,
|
threshold: 0.5,
|
||||||
subtitle: "subtitle-unwield_staff",
|
subtitle: "subtitle-unwield_staff",
|
||||||
),
|
),
|
||||||
Attack(BasicBeam, Staff): (
|
|
||||||
files: [
|
|
||||||
"voxygen.audio.sfx.abilities.flame_thrower",
|
|
||||||
],
|
|
||||||
threshold: 0.2,
|
|
||||||
subtitle: "subtitle-staff_attack",
|
|
||||||
),
|
|
||||||
//Attack(BasicRanged, Staff): (
|
//Attack(BasicRanged, Staff): (
|
||||||
// files: [
|
// files: [
|
||||||
// "voxygen.audio.sfx.abilities.staff_channeling",
|
// "voxygen.audio.sfx.abilities.staff_channeling",
|
||||||
|
@ -16,6 +16,20 @@
|
|||||||
|
|
||||||
// Overworld exploration tracks
|
// Overworld exploration tracks
|
||||||
|
|
||||||
|
Individual((
|
||||||
|
title: "Graceful Journey",
|
||||||
|
path: "voxygen.audio.soundtrack.overworld.graceful_journey",
|
||||||
|
length: 240.0,
|
||||||
|
timing: Day,
|
||||||
|
weather: None,
|
||||||
|
biomes: [
|
||||||
|
(Lake, 1),
|
||||||
|
(Grassland, 1),
|
||||||
|
],
|
||||||
|
sites: [Void],
|
||||||
|
music_state: Activity(Explore),
|
||||||
|
artist: ("Tobias Thy - (Thy SFX)", "https://soundcloud.com/thyofficial"),
|
||||||
|
)),
|
||||||
Individual((
|
Individual((
|
||||||
title: "A Cold Breeze Blows",
|
title: "A Cold Breeze Blows",
|
||||||
path: "voxygen.audio.soundtrack.overworld.a_cold_breeze_blows",
|
path: "voxygen.audio.soundtrack.overworld.a_cold_breeze_blows",
|
||||||
@ -744,6 +758,19 @@
|
|||||||
|
|
||||||
// Dungeon music
|
// Dungeon music
|
||||||
|
|
||||||
|
Individual((
|
||||||
|
title: "A Heart's Ice-Cold Protection",
|
||||||
|
path: "voxygen.audio.soundtrack.dungeon.a_hearts_ice-cold_protection",
|
||||||
|
length: 205.0,
|
||||||
|
timing: None,
|
||||||
|
weather: None,
|
||||||
|
biomes:[],
|
||||||
|
sites: [
|
||||||
|
Dungeon(Adlet),
|
||||||
|
],
|
||||||
|
music_state: Activity(Explore),
|
||||||
|
artist: ("GeekyGami", "https://geekygami.newgrounds.com/audio/"),
|
||||||
|
)),
|
||||||
Individual((
|
Individual((
|
||||||
title: "Mysty Temple",
|
title: "Mysty Temple",
|
||||||
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
path: "voxygen.audio.soundtrack.dungeon.mysty_temple",
|
||||||
@ -753,6 +780,7 @@
|
|||||||
biomes:[],
|
biomes:[],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Tiny", None),
|
artist: ("Tiny", None),
|
||||||
@ -779,6 +807,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -792,6 +821,7 @@
|
|||||||
biomes: [],
|
biomes: [],
|
||||||
sites: [
|
sites: [
|
||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
|
Dungeon(Adlet),
|
||||||
],
|
],
|
||||||
music_state: Activity(Explore),
|
music_state: Activity(Explore),
|
||||||
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
artist: ("Aeronic", "https://soundcloud.com/aeronic"),
|
||||||
@ -873,8 +903,8 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 56.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-start", 61.818, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-loop", 54.545, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.barred_paths.barred_paths-end", 6.0, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
@ -888,11 +918,26 @@
|
|||||||
Dungeon(Old),
|
Dungeon(Old),
|
||||||
],
|
],
|
||||||
segments: [
|
segments: [
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 60.0, Transition(Explore, Combat(High)), Some(Combat(High))),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-start", 61.666, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-loop", 60.0, Activity(Combat(High)), None),
|
||||||
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 4.0, Transition(Combat(High), Explore), None),
|
("voxygen.audio.soundtrack.combat.reversal.reversal-end", 3.666, Transition(Combat(High), Explore), None),
|
||||||
],
|
],
|
||||||
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
artist: ("DaforLynx", "https://daforlynx.neocities.org/"),
|
||||||
),
|
),
|
||||||
|
Segmented(
|
||||||
|
title: "Clash",
|
||||||
|
timing: None,
|
||||||
|
weather: None,
|
||||||
|
biomes: [],
|
||||||
|
sites: [
|
||||||
|
Dungeon(Old),
|
||||||
|
],
|
||||||
|
segments: [
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-start", 121.5, Transition(Explore, Combat(High)), Some(Combat(High))),
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-loop", 81.0, Activity(Combat(High)), None),
|
||||||
|
("voxygen.audio.soundtrack.combat.clash.clash-end", 1.5, Transition(Combat(High), Explore), None),
|
||||||
|
],
|
||||||
|
artist: ("Alfredo Pompa D & Rodriogo Plata", None),
|
||||||
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-end.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-end.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-loop.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-loop.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-start.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/barred_paths/barred_paths-start.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-end.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-end.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-loop.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-loop.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-start.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/soundtrack/combat/clash/clash-start.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-end.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-end.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-loop.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-loop.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-start.ogg
(Stored with Git LFS)
BIN
assets/voxygen/audio/soundtrack/combat/reversal/reversal-start.ogg
(Stored with Git LFS)
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/dungeon/a_hearts_ice-cold_protection.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/soundtrack/dungeon/a_hearts_ice-cold_protection.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/audio/soundtrack/overworld/graceful_journey.ogg
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/audio/soundtrack/overworld/graceful_journey.ogg
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -5,6 +5,14 @@ buff-stat-health = Restores { $str_total } Health
|
|||||||
## Potion
|
## Potion
|
||||||
buff-title-potion = Potion
|
buff-title-potion = Potion
|
||||||
buff-desc-potion = Drinking...
|
buff-desc-potion = Drinking...
|
||||||
|
## Agility
|
||||||
|
buff-title-agility = Agility
|
||||||
|
buff-desc-agility = Your movement is faster, but you deal less damage, and take more damage.
|
||||||
|
buff-stat-agility =
|
||||||
|
Increases movement speed by { $strength }%.
|
||||||
|
but decreases your damage by 100%,
|
||||||
|
and increases your damage vulnerability
|
||||||
|
by 100%.
|
||||||
## Saturation
|
## Saturation
|
||||||
buff-title-saturation = Saturation
|
buff-title-saturation = Saturation
|
||||||
buff-desc-saturation = Gain health over time from consumables.
|
buff-desc-saturation = Gain health over time from consumables.
|
||||||
@ -69,9 +77,9 @@ buff-title-parried = Parried
|
|||||||
buff-desc-parried = You were parried and now are slow to recover.
|
buff-desc-parried = You were parried and now are slow to recover.
|
||||||
## Potion sickness
|
## Potion sickness
|
||||||
buff-title-potionsickness = Potion sickness
|
buff-title-potionsickness = Potion sickness
|
||||||
buff-desc-potionsickness = Potions heal you less after recently consuming a potion.
|
buff-desc-potionsickness = Potions have less positive effect on you after recently consuming a potion.
|
||||||
buff-stat-potionsickness =
|
buff-stat-potionsickness =
|
||||||
Decreases the amount you heal from
|
Decreases the positive effects of
|
||||||
subsequent potions by { $strength }%.
|
subsequent potions by { $strength }%.
|
||||||
## Reckless
|
## Reckless
|
||||||
buff-title-reckless = Reckless
|
buff-title-reckless = Reckless
|
||||||
|
@ -38,6 +38,7 @@ main-singleplayer-regenerate = Regenerate
|
|||||||
main-singleplayer-create_custom = Create Custom
|
main-singleplayer-create_custom = Create Custom
|
||||||
main-singleplayer-invalid_name = Error: Invalid name
|
main-singleplayer-invalid_name = Error: Invalid name
|
||||||
main-singleplayer-seed = Seed
|
main-singleplayer-seed = Seed
|
||||||
|
main-singleplayer-day_length = Day duration
|
||||||
main-singleplayer-random_seed = Random
|
main-singleplayer-random_seed = Random
|
||||||
main-singleplayer-size_lg = Logarithmic size
|
main-singleplayer-size_lg = Logarithmic size
|
||||||
main-singleplayer-map_large_warning = Warning: Large worlds will take a long time to start for the first time
|
main-singleplayer-map_large_warning = Warning: Large worlds will take a long time to start for the first time
|
||||||
|
@ -94,6 +94,10 @@ buff-desc-wet = Земля плутає ваші ноги ускладнючи
|
|||||||
buff-title-ensnared = Пастка
|
buff-title-ensnared = Пастка
|
||||||
buff-desc-ensnared = Ліани опутують ваші ноги, перешкоджаючи ходьбі.
|
buff-desc-ensnared = Ліани опутують ваші ноги, перешкоджаючи ходьбі.
|
||||||
|
|
||||||
|
## Fortitude
|
||||||
|
buff-title-fortitude = Стійкість
|
||||||
|
buff-desc-fortitude = Ви протистоїте дезорієнтації. Коли отримуєте ушкодження вам легше дезорієнтувати інших.
|
||||||
|
|
||||||
## Util
|
## Util
|
||||||
|
|
||||||
buff-text-for_seconds = протягом { $dur_secs } сек.
|
buff-text-for_seconds = протягом { $dur_secs } сек.
|
||||||
@ -143,6 +147,9 @@ buff-desc-bloodfeast = Атаки по ворогам, які кровоточа
|
|||||||
## Berserk
|
## Berserk
|
||||||
buff-title-berserk = Берсерк
|
buff-title-berserk = Берсерк
|
||||||
buff-desc-berserk = Ви перебуваєте в шаленій люті, через що ваші атаки стають сильнішими та стрімкішими, а ваша швидкість збільшується. Однак у результаті ваші захисні можливості зменшуються
|
buff-desc-berserk = Ви перебуваєте в шаленій люті, через що ваші атаки стають сильнішими та стрімкішими, а ваша швидкість збільшується. Однак у результаті ваші захисні можливості зменшуються
|
||||||
|
## Heatstroke
|
||||||
|
buff-title-heatstroke = Тепловий Удар
|
||||||
|
buff-desc-heatstroke = Вам було спекотно і тепер ви страждаєте від теплового удару. Ваші енергетичні винагороди і швидкість руху зменшені. Охолоньте.
|
||||||
## Util
|
## Util
|
||||||
buff-mysterious = Таємничий ефект
|
buff-mysterious = Таємничий ефект
|
||||||
buff-remove = Натисніть, щоб видалити
|
buff-remove = Натисніть, щоб видалити
|
||||||
|
96
assets/voxygen/i18n/uk/command.ftl
Normal file
96
assets/voxygen/i18n/uk/command.ftl
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
command-no-permission = Ви не маєте прав використовувати '/{ $command_name }'
|
||||||
|
command-position-unavailable = Неможливо отримати позицію для { $target }
|
||||||
|
command-player-role-unavailable = Неможливо отримати ролі адміністратора для { $target }
|
||||||
|
command-uid-unavailable = Неможливо отримати uid для { $target }
|
||||||
|
command-area-not-found = Неможливо знайти область '{ $area }'
|
||||||
|
command-player-not-found = Гравець '{ $player }' не знайдений!
|
||||||
|
command-player-uuid-not-found = Гравець з UUID '{ $uuid }' не знайдений!
|
||||||
|
command-username-uuid-unavailable = Неможливо визначити UUID для логіну { $username }
|
||||||
|
command-uuid-username-unavailable = Неможливо визначити логін для UUID { $uuid }
|
||||||
|
command-no-sudo = Вдавати інших гравців неввічливо
|
||||||
|
command-entity-dead = Сутність '{ $entity }' мертва!
|
||||||
|
command-error-while-evaluating-request = При валідації запиту сталася помилка: { $error }
|
||||||
|
command-give-inventory-full = Інвентар гравця повний. Видано { $given ->
|
||||||
|
[1] лише один
|
||||||
|
*[other] { $given }
|
||||||
|
} з { $total } предметів.
|
||||||
|
command-invalid-item = Неправильний предмет: { $item }
|
||||||
|
command-invalid-block-kind = Неправильний тип блока: { $kind }
|
||||||
|
command-nof-entities-at-least = Сутностей має бути щонайменше 1
|
||||||
|
command-nof-entities-less-than = Сутностей має бути менше 50
|
||||||
|
command-entity-load-failed = Не вдалося завантажити конфігурацію сутності: { $config }
|
||||||
|
command-spawned-entities-config = Створено { $n } сутностей з конфігурації: { $config }
|
||||||
|
command-invalid-sprite = Неправильний тип спрайта: { $kind }
|
||||||
|
command-time-parse-too-large = { $n } невалідний, не може мати більше 16 цифр.
|
||||||
|
command-time-parse-negative = { $n } невалідний, не може бути від'ємний.
|
||||||
|
command-time-backwards = { $t } в минулому, час не може йти навпаки.
|
||||||
|
command-time-invalid = { $t } невалідний час.
|
||||||
|
command-rtsim-purge-perms = Ви маєте бути адміністратором (не тимчасовим) щоб видаляти дані rtsim.
|
||||||
|
command-chunk-not-loaded = Чанк { $x }, { $y } не завантажений
|
||||||
|
command-chunk-out-of-bounds = Чанк { $x }, { $y } за межами карти
|
||||||
|
command-spawned-entity = Створено сутність з ID: { $id }
|
||||||
|
command-spawned-dummy = Створено тренувальний манекен
|
||||||
|
command-spawned-airship = Створено повітряний корабель
|
||||||
|
command-spawned-campfire = Створено багаття
|
||||||
|
command-spawned-safezone = Створено безпечну зону
|
||||||
|
command-volume-size-incorrect = Розмір повинен бути від 1 до 127.
|
||||||
|
command-volume-created = Створено об'єм
|
||||||
|
command-permit-build-given = Ви не можете будувати в '{ $area }'
|
||||||
|
command-permit-build-granted = Надано дозвіл на будування в '{ $area }'
|
||||||
|
command-revoke-build-recv = Дозвіл на будування в '{ $area }' відкликано
|
||||||
|
command-revoke-build = Дозвіл будувати в '{ $area }' відкликано
|
||||||
|
command-revoke-build-all = Ваші дозволи на будування відкликано
|
||||||
|
command-revoked-all-build = Всі дозволи на будування відкликано
|
||||||
|
command-no-buid-perms = Ви не маєте дозволу будувати.
|
||||||
|
command-set-build-mode-off = Режим будівництва вимкнено.
|
||||||
|
command-set-build-mode-on-persistent = Режим будівництва увімкнуто. Ввімкнено експериментальне збереження змін ландшафту. Сервер намагатиметься зберегти зміни, але збереження не гарантується.
|
||||||
|
command-set-build-mode-on-unpersistent = Режим будівництва увімкнуто. Зміни пропадуть після перезавантаження чанка.
|
||||||
|
command-invalid-alignment = Неправильне вирівнювання: { $alignment }
|
||||||
|
command-kit-not-enough-slots = Недостатньо слотів в інвентарі
|
||||||
|
command-lantern-unequiped = Будь ласка, спочатку візьміть ліхтар
|
||||||
|
command-lantern-adjusted-strength = Ви змінили силу полум'я.
|
||||||
|
command-lantern-adjusted-strength-color = Ви змінили силу та колір полум'я..
|
||||||
|
command-explosion-power-too-high = Сила вибуху не може перевищувати { $power }
|
||||||
|
command-explosion-power-too-low = Сила вибуху повинна бути більше за { $power }
|
||||||
|
# Note: Do not translate "confirm" here
|
||||||
|
command-disconnectall-confirm = Виконайте, будь ласка, команду ще раз вказавши "confirm" як другий аргумент, щоб відключити всіх гравців.
|
||||||
|
command-invalid-skill-group = { $group } не група вмінь!
|
||||||
|
command-unknown = Невідома команда
|
||||||
|
command-disabled-by-settings = Команда вимкнена в налаштуваннях
|
||||||
|
command-battlemode-intown = Ви повинні бути в місті, щоб змінити бойовий режим!
|
||||||
|
command-battlemode-cooldown = Період очікування активний. Спробуйте ще раз через { $cooldown } секунд.
|
||||||
|
command-battlemode-available-modes = Доступні режими: pvp, pve
|
||||||
|
command-battlemode-same = Спроба встановити той самий бойовий режим.
|
||||||
|
command-battlemode-updated = Новий бойовий режим: { $battlemode }
|
||||||
|
command-buff-unknown = Невідомий баф: { $buff }
|
||||||
|
command-skillpreset-load-error = Помилка при завантаженні пресетів
|
||||||
|
command-skillpreset-broken = Пресет вмінь пошкоджений
|
||||||
|
command-skillpreset-missing = Пресет не існує: { $preset }
|
||||||
|
command-location-invalid = Назва локації '{ $location }' невалідна. Назви можуть містити тільки малі літери ASCII та підкреслення.
|
||||||
|
command-location-duplicate = Локація '{ $location }' вже існує.
|
||||||
|
command-location-not-found = Локація '{ $location }' не існує
|
||||||
|
command-location-created = Свторено локацію '{ $location }'
|
||||||
|
command-location-deleted = Видалено локацію '{ $location }'
|
||||||
|
command-locations-empty = Зараз не має локацій
|
||||||
|
command-locations-list = Доступні локації: { $locations }
|
||||||
|
# Note: Do not translate these weather names
|
||||||
|
command-weather-valid-values = Допустимі значення: 'clear', 'rain', 'wind', 'storm'
|
||||||
|
command-scale-set = Встановити масштаб в { $scale }
|
||||||
|
command-repaired-items = Всі одягнути речі відремонтовано
|
||||||
|
command-message-group-missing = Ви використовуєте чат групи, до якої не належите. Використовуйте /world чи
|
||||||
|
/region щоб змінити чат.
|
||||||
|
command-tell-request = { $sender } хоче говорити з вами.
|
||||||
|
|
||||||
|
# Unreachable/untestable but added for consistency
|
||||||
|
|
||||||
|
command-player-info-unavailable = Неможливо отримати інформацію про гравця для { $target }
|
||||||
|
command-unimplemented-waypoint-spawn = Створення точки шляху не реалізовано
|
||||||
|
command-unimplemented-teleporter-spawn = Створення телепорта не реалізовано
|
||||||
|
command-kit-inventory-unavailable = Неможливо отримати інвентар
|
||||||
|
command-inventory-cant-fit-item = Предмет не вміщується в інвентар
|
||||||
|
# Emitted by /disconnect_all when you dont exist (?)
|
||||||
|
command-you-dont-exist = Ви не існуєте, отже не можете використовувати цю команду
|
||||||
|
command-destroyed-tethers = Всі пута знищено! Тепер ви вільні
|
||||||
|
command-destroyed-no-tethers = Ви не підключені до пут
|
||||||
|
command-dismounted = Ви спішилися
|
||||||
|
command-no-dismount = Ви не їдете верхи і ніхто не їде верхи на вас
|
@ -115,3 +115,4 @@ common-sprite-chest = Скриня
|
|||||||
common-sprite-chair = Стілець
|
common-sprite-chair = Стілець
|
||||||
common-sprite-mud = Грязь
|
common-sprite-mud = Грязь
|
||||||
common-sprite-grave = Могила
|
common-sprite-grave = Могила
|
||||||
|
common-sprite-crate = Ящик
|
||||||
|
@ -75,3 +75,4 @@ gameinput-muteinactivemaster = Вимкнути всі звуки (В неакт
|
|||||||
gameinput-mutemusic = Вимкнути музику
|
gameinput-mutemusic = Вимкнути музику
|
||||||
gameinput-mutesfx = Вимкнути звуки спец. ефектів
|
gameinput-mutesfx = Вимкнути звуки спец. ефектів
|
||||||
gameinput-muteambience = Вимкнути довколишню музику
|
gameinput-muteambience = Вимкнути довколишню музику
|
||||||
|
gameinput-togglewalk = Перемкнути режим ходьби
|
@ -14,6 +14,7 @@ hud-bag-glider = Дельтаплан
|
|||||||
hud-bag-belt = Пояс
|
hud-bag-belt = Пояс
|
||||||
hud-bag-ring = Кільце
|
hud-bag-ring = Кільце
|
||||||
hud-bag-back = Спина
|
hud-bag-back = Спина
|
||||||
|
hud-bag-backpack = Наплічник
|
||||||
hud-bag-legs = Ноги
|
hud-bag-legs = Ноги
|
||||||
hud-bag-feet = Ступні
|
hud-bag-feet = Ступні
|
||||||
hud-bag-mainhand = Основна рука
|
hud-bag-mainhand = Основна рука
|
||||||
|
@ -38,6 +38,7 @@ hud-auto_walk_indicator = Авто Рух
|
|||||||
hud-zoom_lock_indicator-remind = Зум зафіксовано
|
hud-zoom_lock_indicator-remind = Зум зафіксовано
|
||||||
hud-zoom_lock_indicator-enable = Зум камери зафіксовано
|
hud-zoom_lock_indicator-enable = Зум камери зафіксовано
|
||||||
hud-zoom_lock_indicator-disable = Фіксацію зума скасовано
|
hud-zoom_lock_indicator-disable = Фіксацію зума скасовано
|
||||||
|
hud-activate = Активувати
|
||||||
hud-collect = Зібрати
|
hud-collect = Зібрати
|
||||||
hud-pick_up = Підібрати
|
hud-pick_up = Підібрати
|
||||||
hud-open = Відкрити
|
hud-open = Відкрити
|
||||||
@ -57,3 +58,24 @@ hud-follow = Слідувати
|
|||||||
hud-stay = Чекати
|
hud-stay = Чекати
|
||||||
hud-sit = Сидіти
|
hud-sit = Сидіти
|
||||||
hud-steer = Керувати
|
hud-steer = Керувати
|
||||||
|
hud-lay = Лежати
|
||||||
|
hud-portal = Портал
|
||||||
|
|
||||||
|
-server = Server
|
||||||
|
-client = Client
|
||||||
|
hud-init-stage-singleplayer = Старт сервера одиночної гри...
|
||||||
|
hud-init-stage-server-db-migrations = [{ -server }]: Міграція бази даних...
|
||||||
|
hud-init-stage-server-db-vacuum = [{ -server }]: Очистка бази даних...
|
||||||
|
hud-init-stage-server-worldsim-erosion = [{ -server }]: Ерозія { $percentage }%
|
||||||
|
hud-init-stage-server-worldciv-civcreate = [{ -server }]: Згенеровано { $generated } з { $total } цивілізацій
|
||||||
|
hud-init-stage-server-worldciv-site = [{ -server }]: Генерую місця...
|
||||||
|
hud-init-stage-server-economysim = [{ -server }]: Симулюю економіку...
|
||||||
|
hud-init-stage-server-spotgen = [{ -server }]: Генерація точок...
|
||||||
|
hud-init-stage-server-starting = [{ -server }]: Запуск сервера...
|
||||||
|
hud-init-stage-multiplayer = Запуск мультиплеєра
|
||||||
|
hud-init-stage-client-connection-establish = [{ -client }]: Підключення до сервера...
|
||||||
|
hud-init-stage-client-request-server-version = [{ -client }]: Очікування версії сервера...
|
||||||
|
hud-init-stage-client-authentication = [{ -client }]: Автентифікація...
|
||||||
|
hud-init-stage-client-load-init-data = [{ -client }]: Завантаження ініціалізаційних даних...
|
||||||
|
hud-init-stage-client-starting-client = [{ -client }]: Підготовка клієнта...
|
||||||
|
hud-init-stage-render-pipeline = Створення render pipeline ({ $done }/{ $total })
|
||||||
|
@ -16,9 +16,12 @@ hud-settings-custom_scaling = Ручне
|
|||||||
hud-settings-crosshair = Приціл
|
hud-settings-crosshair = Приціл
|
||||||
hud-settings-opacity = Прозорість
|
hud-settings-opacity = Прозорість
|
||||||
hud-settings-hotbar = Панель швидкого доступу
|
hud-settings-hotbar = Панель швидкого доступу
|
||||||
|
hud-settings-slots = Слоти
|
||||||
hud-settings-toggle_shortcuts = Гарячі клавіші
|
hud-settings-toggle_shortcuts = Гарячі клавіші
|
||||||
hud-settings-buffs_skillbar = Бафи біля Панелі Швидкого Доступу
|
hud-settings-buffs_skillbar = Бафи біля Панелі Швидкого Доступу
|
||||||
hud-settings-buffs_mmap = Бафи біля Мінімапи
|
hud-settings-buffs_mmap = Бафи біля Мінімапи
|
||||||
|
hud-settings-use_prefixes = Показувати позначки SI для кількостей
|
||||||
|
hud-settings-prefix_switch_point = Максимальна кількість цифр для переключення позначок SI
|
||||||
hud-settings-toggle_bar_experience = Панель досвіду
|
hud-settings-toggle_bar_experience = Панель досвіду
|
||||||
hud-settings-scrolling_combat_text = Відображення Пошкоджень/Зцілень
|
hud-settings-scrolling_combat_text = Відображення Пошкоджень/Зцілень
|
||||||
hud-settings-damage_accumulation_duration = Тривалість Аккумулювання Шкоди
|
hud-settings-damage_accumulation_duration = Тривалість Аккумулювання Шкоди
|
||||||
@ -54,6 +57,8 @@ hud-settings-enable_mouse_smoothing =
|
|||||||
камери
|
камери
|
||||||
hud-settings-free_look_behavior = Вмикання вільного перегляду
|
hud-settings-free_look_behavior = Вмикання вільного перегляду
|
||||||
hud-settings-auto_walk_behavior = Вмикання авто-ходи
|
hud-settings-auto_walk_behavior = Вмикання авто-ходи
|
||||||
|
hud-settings-walking_speed_behavior = Налаштування швидкості ходи
|
||||||
|
hud-settings-walking_speed = Швидкість ходи
|
||||||
hud-settings-camera_clamp_behavior = Поведінка закріпленої камери
|
hud-settings-camera_clamp_behavior = Поведінка закріпленої камери
|
||||||
hud-settings-zoom_lock_behavior = Функція фіксації віддаленості камери
|
hud-settings-zoom_lock_behavior = Функція фіксації віддаленості камери
|
||||||
hud-settings-player_physics_behavior = Фізика гравця (експериментальнe)
|
hud-settings-player_physics_behavior = Фізика гравця (експериментальнe)
|
||||||
|
@ -4,6 +4,8 @@ subtitle-bees = Дзижчання бджіл
|
|||||||
subtitle-owl = Укання сови
|
subtitle-owl = Укання сови
|
||||||
subtitle-running_water = Булькання води
|
subtitle-running_water = Булькання води
|
||||||
subtitle-lightning = Грім
|
subtitle-lightning = Грім
|
||||||
|
subtitle-portal-activated = Портал активовано
|
||||||
|
subtitle-portal-teleported = Телепортовано
|
||||||
|
|
||||||
subtitle-footsteps_grass = Ходьба по траві
|
subtitle-footsteps_grass = Ходьба по траві
|
||||||
subtitle-footsteps_earth = Ходьба по землі
|
subtitle-footsteps_earth = Ходьба по землі
|
||||||
@ -107,8 +109,9 @@ subtitle-deep_laugh = Глибокий сміх
|
|||||||
subtitle-attack-flash_freeze = Миттєве заморожування
|
subtitle-attack-flash_freeze = Миттєве заморожування
|
||||||
subtitle-attack-icy_spikes = Крижані шипи
|
subtitle-attack-icy_spikes = Крижані шипи
|
||||||
subtitle-attack-ice_crack = Крижана тріщина
|
subtitle-attack-ice_crack = Крижана тріщина
|
||||||
subtitle-attack-steam = Пар
|
subtitle-attack-steam = Пара
|
||||||
subtitle-attack-shovel = Копання Лопатою
|
subtitle-attack-shovel = Копання Лопатою
|
||||||
|
subtitle-attack-from-the-ashes = Звук зцілення
|
||||||
|
|
||||||
subtitle-consume_potion = Пиття зілля
|
subtitle-consume_potion = Пиття зілля
|
||||||
subtitle-consume_apple = Споживання яблука
|
subtitle-consume_apple = Споживання яблука
|
||||||
@ -152,3 +155,5 @@ subtitle-utterance-wolf-angry = Вовк гарчить
|
|||||||
subtitle-utterance-wolf-hurt = Вовк скиглить
|
subtitle-utterance-wolf-hurt = Вовк скиглить
|
||||||
subtitle-utterance-wyvern-angry = Рев Виверни
|
subtitle-utterance-wyvern-angry = Рев Виверни
|
||||||
subtitle-utterance-wyvern-hurt = Виверні боляче
|
subtitle-utterance-wyvern-hurt = Виверні боляче
|
||||||
|
subtitle-utterance-phoenix-angry = Крик Фенікса
|
||||||
|
subtitle-utterance-phoenix-hurt = Феніксу боляче
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
main-username = Ім'я користовуча
|
main-username = Ім'я користувача
|
||||||
main-server = Сервер
|
main-server = Сервер
|
||||||
main-password = Пароль
|
main-password = Пароль
|
||||||
main-connecting = З'єднання
|
main-connecting = З'єднання
|
||||||
@ -32,9 +32,26 @@ main-login_process =
|
|||||||
Створити обліковий запис можна тут:
|
Створити обліковий запис можна тут:
|
||||||
|
|
||||||
https://veloren.net/account/.
|
https://veloren.net/account/.
|
||||||
|
main-singleplayer-new = Нова
|
||||||
|
main-singleplayer-delete = Видалити
|
||||||
|
main-singleplayer-regenerate = Перегенерувати
|
||||||
|
main-singleplayer-create_custom = Налаштувати
|
||||||
|
main-singleplayer-invalid_name = Помилка: неприпустиме ім'я
|
||||||
|
main-singleplayer-seed = Зерно
|
||||||
|
main-singleplayer-random_seed = Випадкова
|
||||||
|
main-singleplayer-size_lg = Логарифмічний розмір
|
||||||
|
main-singleplayer-map_large_warning = Увага: Перший запуск великих світів може зайняти багато часу
|
||||||
|
main-singleplayer-world_name = Назва світу
|
||||||
|
main-singleplayer-map_scale = Вертикальне масштабування
|
||||||
|
main-singleplayer-map_erosion_quality = Якість ерозії
|
||||||
|
main-singleplayer-map_shape = Форма
|
||||||
|
main-singleplayer-play = Грати
|
||||||
|
main-singleplayer-generate_and_play = Згенерувати і Грати
|
||||||
|
menu-singleplayer-confirm_delete = Ви дійсно хочте видалити "{ $world_name }"
|
||||||
|
menu-singleplayer-confirm_regenerate = Ви дійсно хочете перегенерувати "{ $world_name }"
|
||||||
main-login-server_not_found = Сервер не знайдено
|
main-login-server_not_found = Сервер не знайдено
|
||||||
main-login-authentication_error = Помилка авторизації на сервері
|
main-login-authentication_error = Помилка авторизації на сервері
|
||||||
main-login-internal_error = Внутріння помилка у кліента (скоріше за все, персонаж був видалений)
|
main-login-internal_error = Внутрішня помилка у кліента (скоріше за все, персонаж був видалений)
|
||||||
main-login-failed_auth_server_url_invalid = Не вдалося з'єднатися з сервером аутентифікації
|
main-login-failed_auth_server_url_invalid = Не вдалося з'єднатися з сервером аутентифікації
|
||||||
main-login-insecure_auth_scheme = HTTP схема аутентифікації НЕ підтримується. Це небезпечно! Для розробки це дозволено для 'localhost' або дебажних збірок
|
main-login-insecure_auth_scheme = HTTP схема аутентифікації НЕ підтримується. Це небезпечно! Для розробки це дозволено для 'localhost' або дебажних збірок
|
||||||
main-login-server_full = Сервер переповнено
|
main-login-server_full = Сервер переповнено
|
||||||
@ -58,11 +75,11 @@ main-login-username_bad_characters = Ім'я персонажа містить
|
|||||||
main-login-username_too_long = Ім'я персонажа занадто довге! Максимальна довжина: { $max_len }
|
main-login-username_too_long = Ім'я персонажа занадто довге! Максимальна довжина: { $max_len }
|
||||||
main-servers-select_server = Виберіть сервер
|
main-servers-select_server = Виберіть сервер
|
||||||
main-servers-singleplayer_error = Помилка підключення до внутрішьного серверу: { $sp_error }
|
main-servers-singleplayer_error = Помилка підключення до внутрішьного серверу: { $sp_error }
|
||||||
main-servers-network_error = Помилка сокету/мережі серверов: { $raw_error }
|
main-servers-network_error = Помилка сокету/мережі серверів: { $raw_error }
|
||||||
main-servers-participant_error = Від'єднання учасника/помилка протоколу: { $raw_error }
|
main-servers-participant_error = Від'єднання учасника/помилка протоколу: { $raw_error }
|
||||||
main-servers-stream_error = Помилка данних клієнто під час підключення: { $raw_error }
|
main-servers-stream_error = Помилка данних клієнто під час підключення: { $raw_error }
|
||||||
main-servers-database_error = Помилка данних серверу: { $raw_error }
|
main-servers-database_error = Помилка данних серверу: { $raw_error }
|
||||||
main-servers-persistence_error = Помилка постійності сервера (Можливо, пов'язано з ресурсами гри або данними про персонажа): { $raw_error }
|
main-servers-persistence_error = Помилка зберігання (Можливо, пов'язано з ресурсами гри або данними про персонажа): { $raw_error }
|
||||||
main-servers-other_error = Помилка сервера: { $raw_error }
|
main-servers-other_error = Помилка сервера: { $raw_error }
|
||||||
main-credits = Подяки
|
main-credits = Подяки
|
||||||
main-credits-created_by = зроблено
|
main-credits-created_by = зроблено
|
||||||
|
@ -287,3 +287,4 @@ npc-speech-dist_far = далеко
|
|||||||
npc-speech-dist_ahead = трохи подалі
|
npc-speech-dist_ahead = трохи подалі
|
||||||
npc-speech-dist_near = поблизу
|
npc-speech-dist_near = поблизу
|
||||||
npc-speech-dist_near_to = дуже близько
|
npc-speech-dist_near_to = дуже близько
|
||||||
|
npc-speech-arena = Давайте присядемо тут!
|
@ -3199,8 +3199,12 @@
|
|||||||
"voxel.object.curious_potion",
|
"voxel.object.curious_potion",
|
||||||
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.7,
|
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.7,
|
||||||
),
|
),
|
||||||
Simple("common.items.consumable.potion_burning"): VoxTrans(
|
Simple("common.items.consumable.potion_combustion"): VoxTrans(
|
||||||
"voxel.object.potion_burning",
|
"voxel.object.potion_combustion",
|
||||||
|
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.7,
|
||||||
|
),
|
||||||
|
Simple("common.items.consumable.potion_agility"): VoxTrans(
|
||||||
|
"voxel.object.potion_agility",
|
||||||
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.7,
|
(0.0, 0.0, 0.0), (-50.0, 30.0, 20.0), 0.7,
|
||||||
),
|
),
|
||||||
Simple("common.items.charms.burning_charm"): VoxTrans(
|
Simple("common.items.charms.burning_charm"): VoxTrans(
|
||||||
|
@ -13,17 +13,14 @@ layout(push_constant) uniform Params {
|
|||||||
|
|
||||||
layout(location = 0) out vec2 source_coords;
|
layout(location = 0) out vec2 source_coords;
|
||||||
|
|
||||||
uvec2 unpack(uint xy) {
|
vec2 unpack(uint xy) {
|
||||||
return uvec2(
|
return vec2(xy & 0xFFFF, (xy >> 16) & 0xFFFF);
|
||||||
bitfieldExtract(xy, 0, 16),
|
|
||||||
bitfieldExtract(xy, 16, 16)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
vec2 source_size = vec2(unpack(source_size_xy));
|
vec2 source_size = unpack(source_size_xy);
|
||||||
vec2 target_offset = vec2(unpack(target_offset_xy));
|
vec2 target_offset = unpack(target_offset_xy);
|
||||||
vec2 target_size = vec2(unpack(target_size_xy));
|
vec2 target_size = unpack(target_size_xy);
|
||||||
|
|
||||||
// Generate rectangle (counter clockwise triangles)
|
// Generate rectangle (counter clockwise triangles)
|
||||||
//
|
//
|
||||||
|
@ -809,7 +809,8 @@
|
|||||||
Simple("common.items.consumable.potion_minor"): "voxel.object.potion_red",
|
Simple("common.items.consumable.potion_minor"): "voxel.object.potion_red",
|
||||||
Simple("common.items.consumable.potion_big"): "voxel.object.potion_red",
|
Simple("common.items.consumable.potion_big"): "voxel.object.potion_red",
|
||||||
Simple("common.items.consumable.curious_potion"): "voxel.object.curious_potion",
|
Simple("common.items.consumable.curious_potion"): "voxel.object.curious_potion",
|
||||||
Simple("common.items.consumable.potion_burning"): "voxel.object.potion_burning",
|
Simple("common.items.consumable.potion_combustion"): "voxel.object.potion_combustion",
|
||||||
|
Simple("common.items.consumable.potion_agility"): "voxel.object.potion_agility",
|
||||||
Simple("common.items.charms.burning_charm"): "voxel.object.burning_charm",
|
Simple("common.items.charms.burning_charm"): "voxel.object.burning_charm",
|
||||||
Simple("common.items.charms.frozen_charm"): "voxel.object.frozen_charm",
|
Simple("common.items.charms.frozen_charm"): "voxel.object.frozen_charm",
|
||||||
Simple("common.items.charms.lifesteal_charm"): "voxel.object.lifesteal_charm",
|
Simple("common.items.charms.lifesteal_charm"): "voxel.object.lifesteal_charm",
|
||||||
|
BIN
assets/voxygen/voxel/object/potion_agility.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/object/potion_agility.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -65,6 +65,7 @@ fn main() {
|
|||||||
&password,
|
&password,
|
||||||
|provider| provider == "https://auth.veloren.net",
|
|provider| provider == "https://auth.veloren.net",
|
||||||
&|_| {},
|
&|_| {},
|
||||||
|
|_| {},
|
||||||
))
|
))
|
||||||
.expect("Failed to create client instance");
|
.expect("Failed to create client instance");
|
||||||
|
|
||||||
@ -85,7 +86,7 @@ fn main() {
|
|||||||
client.send_chat(msg)
|
client.send_chat(msg)
|
||||||
}
|
}
|
||||||
|
|
||||||
let events = match client.tick(comp::ControllerInputs::default(), clock.dt(), |_| {}) {
|
let events = match client.tick(comp::ControllerInputs::default(), clock.dt()) {
|
||||||
Ok(events) => events,
|
Ok(events) => events,
|
||||||
Err(err) => {
|
Err(err) => {
|
||||||
error!("Error: {:?}", err);
|
error!("Error: {:?}", err);
|
||||||
|
@ -73,6 +73,7 @@ pub fn make_client(
|
|||||||
password,
|
password,
|
||||||
|_| true,
|
|_| true,
|
||||||
&|_| {},
|
&|_| {},
|
||||||
|
|_| {},
|
||||||
))
|
))
|
||||||
.ok()
|
.ok()
|
||||||
}
|
}
|
||||||
@ -99,7 +100,7 @@ impl BotClient {
|
|||||||
for (username, client) in self.bot_clients.iter_mut() {
|
for (username, client) in self.bot_clients.iter_mut() {
|
||||||
trace!(?username, "tick");
|
trace!(?username, "tick");
|
||||||
let _msgs: Result<Vec<veloren_client::Event>, veloren_client::Error> =
|
let _msgs: Result<Vec<veloren_client::Event>, veloren_client::Error> =
|
||||||
client.tick(comp::ControllerInputs::default(), self.clock.dt(), |_| {});
|
client.tick(comp::ControllerInputs::default(), self.clock.dt());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -123,6 +123,7 @@ fn run_client(
|
|||||||
&username,
|
&username,
|
||||||
"",
|
"",
|
||||||
|_| false,
|
|_| false,
|
||||||
|
|_| {},
|
||||||
)) {
|
)) {
|
||||||
Err(e) => tracing::warn!(?e, "Client {} disconnected", index),
|
Err(e) => tracing::warn!(?e, "Client {} disconnected", index),
|
||||||
Ok(client) => break client,
|
Ok(client) => break client,
|
||||||
|
@ -307,6 +307,7 @@ impl Client {
|
|||||||
password: &str,
|
password: &str,
|
||||||
auth_trusted: impl FnMut(&str) -> bool,
|
auth_trusted: impl FnMut(&str) -> bool,
|
||||||
init_stage_update: &(dyn Fn(ClientInitStage) + Send + Sync),
|
init_stage_update: &(dyn Fn(ClientInitStage) + Send + Sync),
|
||||||
|
add_foreign_systems: impl Fn(&mut DispatcherBuilder) + Send + 'static,
|
||||||
) -> Result<Self, Error> {
|
) -> Result<Self, Error> {
|
||||||
let network = Network::new(Pid::new(), &runtime);
|
let network = Network::new(Pid::new(), &runtime);
|
||||||
|
|
||||||
@ -409,7 +410,16 @@ impl Client {
|
|||||||
|
|
||||||
// Initialize `State`
|
// Initialize `State`
|
||||||
let pools = State::pools(GameMode::Client);
|
let pools = State::pools(GameMode::Client);
|
||||||
let mut state = State::client(pools, map_size_lg, world_map.default_chunk);
|
let mut state = State::client(
|
||||||
|
pools,
|
||||||
|
map_size_lg,
|
||||||
|
world_map.default_chunk,
|
||||||
|
// TODO: Add frontend systems
|
||||||
|
|dispatch_builder| {
|
||||||
|
add_local_systems(dispatch_builder);
|
||||||
|
add_foreign_systems(dispatch_builder);
|
||||||
|
},
|
||||||
|
);
|
||||||
// Client-only components
|
// Client-only components
|
||||||
state.ecs_mut().register::<comp::Last<CharacterState>>();
|
state.ecs_mut().register::<comp::Last<CharacterState>>();
|
||||||
let entity = state.ecs_mut().apply_entity_package(entity_package);
|
let entity = state.ecs_mut().apply_entity_package(entity_package);
|
||||||
@ -1796,12 +1806,7 @@ impl Client {
|
|||||||
|
|
||||||
/// Execute a single client tick, handle input and update the game state by
|
/// Execute a single client tick, handle input and update the game state by
|
||||||
/// the given duration.
|
/// the given duration.
|
||||||
pub fn tick(
|
pub fn tick(&mut self, inputs: ControllerInputs, dt: Duration) -> Result<Vec<Event>, Error> {
|
||||||
&mut self,
|
|
||||||
inputs: ControllerInputs,
|
|
||||||
dt: Duration,
|
|
||||||
add_foreign_systems: impl Fn(&mut DispatcherBuilder),
|
|
||||||
) -> Result<Vec<Event>, Error> {
|
|
||||||
span!(_guard, "tick", "Client::tick");
|
span!(_guard, "tick", "Client::tick");
|
||||||
// This tick function is the centre of the Veloren universe. Most client-side
|
// This tick function is the centre of the Veloren universe. Most client-side
|
||||||
// things are managed from here, and as such it's important that it
|
// things are managed from here, and as such it's important that it
|
||||||
@ -1902,10 +1907,6 @@ impl Client {
|
|||||||
// 4) Tick the client's LocalState
|
// 4) Tick the client's LocalState
|
||||||
self.state.tick(
|
self.state.tick(
|
||||||
Duration::from_secs_f64(dt.as_secs_f64() * self.dt_adjustment),
|
Duration::from_secs_f64(dt.as_secs_f64() * self.dt_adjustment),
|
||||||
|dispatch_builder| {
|
|
||||||
add_local_systems(dispatch_builder);
|
|
||||||
add_foreign_systems(dispatch_builder);
|
|
||||||
},
|
|
||||||
true,
|
true,
|
||||||
None,
|
None,
|
||||||
&self.connected_server_constants,
|
&self.connected_server_constants,
|
||||||
@ -3011,6 +3012,7 @@ mod tests {
|
|||||||
password,
|
password,
|
||||||
|suggestion: &str| suggestion == auth_server,
|
|suggestion: &str| suggestion == auth_server,
|
||||||
&|_| {},
|
&|_| {},
|
||||||
|
|_| {},
|
||||||
));
|
));
|
||||||
let localisation = LocalizationHandle::load_expect("en");
|
let localisation = LocalizationHandle::load_expect("en");
|
||||||
|
|
||||||
@ -3020,7 +3022,7 @@ mod tests {
|
|||||||
|
|
||||||
//tick
|
//tick
|
||||||
let events_result: Result<Vec<Event>, Error> =
|
let events_result: Result<Vec<Event>, Error> =
|
||||||
client.tick(ControllerInputs::default(), clock.dt(), |_| {});
|
client.tick(ControllerInputs::default(), clock.dt());
|
||||||
|
|
||||||
//chat functionality
|
//chat functionality
|
||||||
client.send_chat("foobar".to_string());
|
client.send_chat("foobar".to_string());
|
||||||
|
@ -155,6 +155,7 @@ lazy_static! {
|
|||||||
BuffKind::Bleeding => "bleeding",
|
BuffKind::Bleeding => "bleeding",
|
||||||
BuffKind::Cursed => "cursed",
|
BuffKind::Cursed => "cursed",
|
||||||
BuffKind::Potion => "potion",
|
BuffKind::Potion => "potion",
|
||||||
|
BuffKind::Agility => "agility",
|
||||||
BuffKind::CampfireHeal => "campfire_heal",
|
BuffKind::CampfireHeal => "campfire_heal",
|
||||||
BuffKind::EnergyRegen => "energy_regen",
|
BuffKind::EnergyRegen => "energy_regen",
|
||||||
BuffKind::IncreaseMaxEnergy => "increase_max_energy",
|
BuffKind::IncreaseMaxEnergy => "increase_max_energy",
|
||||||
|
@ -615,7 +615,7 @@ pub enum CharacterAbilityType {
|
|||||||
ChargedRanged,
|
ChargedRanged,
|
||||||
DashMelee(StageSection),
|
DashMelee(StageSection),
|
||||||
BasicBlock,
|
BasicBlock,
|
||||||
ComboMelee(StageSection, u32),
|
ComboMeleeDeprecated(StageSection, u32),
|
||||||
ComboMelee2(StageSection),
|
ComboMelee2(StageSection),
|
||||||
FinisherMelee(StageSection),
|
FinisherMelee(StageSection),
|
||||||
DiveMelee(StageSection),
|
DiveMelee(StageSection),
|
||||||
@ -642,7 +642,9 @@ impl From<&CharacterState> for CharacterAbilityType {
|
|||||||
CharacterState::BasicBlock(_) => Self::BasicBlock,
|
CharacterState::BasicBlock(_) => Self::BasicBlock,
|
||||||
CharacterState::LeapMelee(data) => Self::LeapMelee(data.stage_section),
|
CharacterState::LeapMelee(data) => Self::LeapMelee(data.stage_section),
|
||||||
CharacterState::LeapShockwave(data) => Self::LeapShockwave(data.stage_section),
|
CharacterState::LeapShockwave(data) => Self::LeapShockwave(data.stage_section),
|
||||||
CharacterState::ComboMelee(data) => Self::ComboMelee(data.stage_section, data.stage),
|
CharacterState::ComboMeleeDeprecated(data) => {
|
||||||
|
Self::ComboMeleeDeprecated(data.stage_section, data.stage)
|
||||||
|
},
|
||||||
CharacterState::ComboMelee2(data) => Self::ComboMelee2(data.stage_section),
|
CharacterState::ComboMelee2(data) => Self::ComboMelee2(data.stage_section),
|
||||||
CharacterState::FinisherMelee(data) => Self::FinisherMelee(data.stage_section),
|
CharacterState::FinisherMelee(data) => Self::FinisherMelee(data.stage_section),
|
||||||
CharacterState::DiveMelee(data) => Self::DiveMelee(data.stage_section),
|
CharacterState::DiveMelee(data) => Self::DiveMelee(data.stage_section),
|
||||||
@ -771,7 +773,7 @@ pub enum CharacterAbility {
|
|||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
meta: AbilityMeta,
|
meta: AbilityMeta,
|
||||||
},
|
},
|
||||||
ComboMelee {
|
ComboMeleeDeprecated {
|
||||||
stage_data: Vec<combo_melee::Stage<f32>>,
|
stage_data: Vec<combo_melee::Stage<f32>>,
|
||||||
initial_energy_gain: f32,
|
initial_energy_gain: f32,
|
||||||
max_energy_gain: f32,
|
max_energy_gain: f32,
|
||||||
@ -1134,7 +1136,7 @@ impl CharacterAbility {
|
|||||||
(data.physics.on_ground.is_none() || buildup_duration.is_some())
|
(data.physics.on_ground.is_none() || buildup_duration.is_some())
|
||||||
&& update.energy.try_change_by(-*energy_cost).is_ok()
|
&& update.energy.try_change_by(-*energy_cost).is_ok()
|
||||||
},
|
},
|
||||||
CharacterAbility::ComboMelee { .. }
|
CharacterAbility::ComboMeleeDeprecated { .. }
|
||||||
| CharacterAbility::Boost { .. }
|
| CharacterAbility::Boost { .. }
|
||||||
| CharacterAbility::BasicBeam { .. }
|
| CharacterAbility::BasicBeam { .. }
|
||||||
| CharacterAbility::Blink { .. }
|
| CharacterAbility::Blink { .. }
|
||||||
@ -1303,7 +1305,7 @@ impl CharacterAbility {
|
|||||||
*recover_duration /= stats.speed;
|
*recover_duration /= stats.speed;
|
||||||
*energy_cost /= stats.energy_efficiency;
|
*energy_cost /= stats.energy_efficiency;
|
||||||
},
|
},
|
||||||
ComboMelee {
|
ComboMeleeDeprecated {
|
||||||
ref mut stage_data,
|
ref mut stage_data,
|
||||||
initial_energy_gain: _,
|
initial_energy_gain: _,
|
||||||
max_energy_gain: _,
|
max_energy_gain: _,
|
||||||
@ -1720,7 +1722,7 @@ impl CharacterAbility {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
Boost { .. }
|
Boost { .. }
|
||||||
| ComboMelee { .. }
|
| ComboMeleeDeprecated { .. }
|
||||||
| Blink { .. }
|
| Blink { .. }
|
||||||
| Music { .. }
|
| Music { .. }
|
||||||
| BasicSummon { .. }
|
| BasicSummon { .. }
|
||||||
@ -1768,7 +1770,7 @@ impl CharacterAbility {
|
|||||||
| RiposteMelee { .. }
|
| RiposteMelee { .. }
|
||||||
| BasicBeam { .. }
|
| BasicBeam { .. }
|
||||||
| Boost { .. }
|
| Boost { .. }
|
||||||
| ComboMelee { .. }
|
| ComboMeleeDeprecated { .. }
|
||||||
| Blink { .. }
|
| Blink { .. }
|
||||||
| Music { .. }
|
| Music { .. }
|
||||||
| BasicSummon { .. }
|
| BasicSummon { .. }
|
||||||
@ -1795,7 +1797,7 @@ impl CharacterAbility {
|
|||||||
| SelfBuff { meta, .. }
|
| SelfBuff { meta, .. }
|
||||||
| BasicBeam { meta, .. }
|
| BasicBeam { meta, .. }
|
||||||
| Boost { meta, .. }
|
| Boost { meta, .. }
|
||||||
| ComboMelee { meta, .. }
|
| ComboMeleeDeprecated { meta, .. }
|
||||||
| ComboMelee2 { meta, .. }
|
| ComboMelee2 { meta, .. }
|
||||||
| Blink { meta, .. }
|
| Blink { meta, .. }
|
||||||
| BasicSummon { meta, .. }
|
| BasicSummon { meta, .. }
|
||||||
@ -1872,7 +1874,7 @@ impl CharacterAbility {
|
|||||||
use skills::{HammerSkill::*, Skill::Hammer};
|
use skills::{HammerSkill::*, Skill::Hammer};
|
||||||
|
|
||||||
match self {
|
match self {
|
||||||
CharacterAbility::ComboMelee {
|
CharacterAbility::ComboMeleeDeprecated {
|
||||||
ref mut speed_increase,
|
ref mut speed_increase,
|
||||||
ref mut max_speed_increase,
|
ref mut max_speed_increase,
|
||||||
ref mut stage_data,
|
ref mut stage_data,
|
||||||
@ -2385,9 +2387,8 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
|||||||
was_wielded: false, // false by default. utils might set it to true
|
was_wielded: false, // false by default. utils might set it to true
|
||||||
prev_aimed_dir: None,
|
prev_aimed_dir: None,
|
||||||
is_sneaking: false,
|
is_sneaking: false,
|
||||||
was_combo: None,
|
|
||||||
}),
|
}),
|
||||||
CharacterAbility::ComboMelee {
|
CharacterAbility::ComboMeleeDeprecated {
|
||||||
stage_data,
|
stage_data,
|
||||||
initial_energy_gain,
|
initial_energy_gain,
|
||||||
max_energy_gain,
|
max_energy_gain,
|
||||||
@ -2397,7 +2398,7 @@ impl From<(&CharacterAbility, AbilityInfo, &JoinData<'_>)> for CharacterState {
|
|||||||
scales_from_combo,
|
scales_from_combo,
|
||||||
ori_modifier,
|
ori_modifier,
|
||||||
meta: _,
|
meta: _,
|
||||||
} => CharacterState::ComboMelee(combo_melee::Data {
|
} => CharacterState::ComboMeleeDeprecated(combo_melee::Data {
|
||||||
static_data: combo_melee::StaticData {
|
static_data: combo_melee::StaticData {
|
||||||
num_stages: stage_data.len() as u32,
|
num_stages: stage_data.len() as u32,
|
||||||
stage_data: stage_data.iter().map(|stage| stage.to_duration()).collect(),
|
stage_data: stage_data.iter().map(|stage| stage.to_duration()).collect(),
|
||||||
|
@ -37,6 +37,11 @@ pub enum BuffKind {
|
|||||||
/// Applied when drinking a potion.
|
/// Applied when drinking a potion.
|
||||||
/// Strength should be the healing per second.
|
/// Strength should be the healing per second.
|
||||||
Potion,
|
Potion,
|
||||||
|
/// Increases movement speed and vulnerability to damage as well as
|
||||||
|
/// decreases the amount of damage dealt.
|
||||||
|
/// Movement speed increases linearly with strength 1.0 is an 100% increase
|
||||||
|
/// Damage vulnerability and damage reduction are both hard set to 100%
|
||||||
|
Agility,
|
||||||
/// Applied when sitting at a campfire.
|
/// Applied when sitting at a campfire.
|
||||||
/// Strength is fraction of health restored per second.
|
/// Strength is fraction of health restored per second.
|
||||||
CampfireHeal,
|
CampfireHeal,
|
||||||
@ -177,6 +182,7 @@ impl BuffKind {
|
|||||||
BuffKind::Regeneration
|
BuffKind::Regeneration
|
||||||
| BuffKind::Saturation
|
| BuffKind::Saturation
|
||||||
| BuffKind::Potion
|
| BuffKind::Potion
|
||||||
|
| BuffKind::Agility
|
||||||
| BuffKind::CampfireHeal
|
| BuffKind::CampfireHeal
|
||||||
| BuffKind::Frenzied
|
| BuffKind::Frenzied
|
||||||
| BuffKind::EnergyRegen
|
| BuffKind::EnergyRegen
|
||||||
@ -264,6 +270,13 @@ impl BuffKind {
|
|||||||
tick_dur: Secs(0.1),
|
tick_dur: Secs(0.1),
|
||||||
}]
|
}]
|
||||||
},
|
},
|
||||||
|
BuffKind::Agility => vec![
|
||||||
|
BuffEffect::MovementSpeed(
|
||||||
|
1.0 + data.strength * stats.map_or(1.0, |s| s.move_speed_multiplier),
|
||||||
|
),
|
||||||
|
BuffEffect::DamageReduction(-1.0),
|
||||||
|
BuffEffect::AttackDamage(0.0),
|
||||||
|
],
|
||||||
BuffKind::CampfireHeal => vec![BuffEffect::HealthChangeOverTime {
|
BuffKind::CampfireHeal => vec![BuffEffect::HealthChangeOverTime {
|
||||||
rate: data.strength,
|
rate: data.strength,
|
||||||
kind: ModifierKind::Multiplicative,
|
kind: ModifierKind::Multiplicative,
|
||||||
@ -351,7 +364,11 @@ impl BuffKind {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
BuffKind::Parried => vec![BuffEffect::AttackSpeed(0.5)],
|
BuffKind::Parried => vec![BuffEffect::AttackSpeed(0.5)],
|
||||||
BuffKind::PotionSickness => vec![BuffEffect::HealReduction(data.strength)],
|
//TODO: Handle potion sickness in a more general way.
|
||||||
|
BuffKind::PotionSickness => vec![
|
||||||
|
BuffEffect::HealReduction(data.strength),
|
||||||
|
BuffEffect::MoveSpeedReduction(data.strength),
|
||||||
|
],
|
||||||
BuffKind::Reckless => vec![
|
BuffKind::Reckless => vec![
|
||||||
BuffEffect::DamageReduction(-data.strength),
|
BuffEffect::DamageReduction(-data.strength),
|
||||||
BuffEffect::AttackDamage(1.0 + data.strength),
|
BuffEffect::AttackDamage(1.0 + data.strength),
|
||||||
@ -557,6 +574,8 @@ pub enum BuffEffect {
|
|||||||
PoiseReduction(f32),
|
PoiseReduction(f32),
|
||||||
/// Reduces amount healed by consumables
|
/// Reduces amount healed by consumables
|
||||||
HealReduction(f32),
|
HealReduction(f32),
|
||||||
|
/// Reduces amount of speed increase by consumables
|
||||||
|
MoveSpeedReduction(f32),
|
||||||
/// Increases poise damage dealt when health is lost
|
/// Increases poise damage dealt when health is lost
|
||||||
PoiseDamageFromLostHealth {
|
PoiseDamageFromLostHealth {
|
||||||
initial_health: f32,
|
initial_health: f32,
|
||||||
|
@ -95,7 +95,7 @@ pub enum CharacterState {
|
|||||||
DashMelee(dash_melee::Data),
|
DashMelee(dash_melee::Data),
|
||||||
/// A three-stage attack where each attack pushes player forward
|
/// A three-stage attack where each attack pushes player forward
|
||||||
/// and successive attacks increase in damage, while player holds button.
|
/// and successive attacks increase in damage, while player holds button.
|
||||||
ComboMelee(combo_melee::Data),
|
ComboMeleeDeprecated(combo_melee::Data),
|
||||||
/// A state where you progress through multiple melee attacks
|
/// A state where you progress through multiple melee attacks
|
||||||
ComboMelee2(combo_melee2::Data),
|
ComboMelee2(combo_melee2::Data),
|
||||||
/// A leap followed by a small aoe ground attack
|
/// A leap followed by a small aoe ground attack
|
||||||
@ -154,7 +154,7 @@ impl CharacterState {
|
|||||||
| CharacterState::BasicMelee(_)
|
| CharacterState::BasicMelee(_)
|
||||||
| CharacterState::BasicRanged(_)
|
| CharacterState::BasicRanged(_)
|
||||||
| CharacterState::DashMelee(_)
|
| CharacterState::DashMelee(_)
|
||||||
| CharacterState::ComboMelee(_)
|
| CharacterState::ComboMeleeDeprecated(_)
|
||||||
| CharacterState::ComboMelee2(_)
|
| CharacterState::ComboMelee2(_)
|
||||||
| CharacterState::BasicBlock(_)
|
| CharacterState::BasicBlock(_)
|
||||||
| CharacterState::LeapMelee(_)
|
| CharacterState::LeapMelee(_)
|
||||||
@ -220,7 +220,7 @@ impl CharacterState {
|
|||||||
CharacterState::BasicMelee(_)
|
CharacterState::BasicMelee(_)
|
||||||
| CharacterState::BasicRanged(_)
|
| CharacterState::BasicRanged(_)
|
||||||
| CharacterState::DashMelee(_)
|
| CharacterState::DashMelee(_)
|
||||||
| CharacterState::ComboMelee(_)
|
| CharacterState::ComboMeleeDeprecated(_)
|
||||||
| CharacterState::ComboMelee2(_)
|
| CharacterState::ComboMelee2(_)
|
||||||
| CharacterState::LeapMelee(_)
|
| CharacterState::LeapMelee(_)
|
||||||
| CharacterState::LeapShockwave(_)
|
| CharacterState::LeapShockwave(_)
|
||||||
@ -247,7 +247,7 @@ impl CharacterState {
|
|||||||
CharacterState::BasicMelee(_)
|
CharacterState::BasicMelee(_)
|
||||||
| CharacterState::BasicRanged(_)
|
| CharacterState::BasicRanged(_)
|
||||||
| CharacterState::DashMelee(_)
|
| CharacterState::DashMelee(_)
|
||||||
| CharacterState::ComboMelee(_)
|
| CharacterState::ComboMeleeDeprecated(_)
|
||||||
| CharacterState::ComboMelee2(_)
|
| CharacterState::ComboMelee2(_)
|
||||||
| CharacterState::BasicBlock(_)
|
| CharacterState::BasicBlock(_)
|
||||||
| CharacterState::LeapMelee(_)
|
| CharacterState::LeapMelee(_)
|
||||||
@ -377,7 +377,7 @@ impl CharacterState {
|
|||||||
|
|
||||||
pub fn is_forced_movement(&self) -> bool {
|
pub fn is_forced_movement(&self) -> bool {
|
||||||
matches!(self,
|
matches!(self,
|
||||||
CharacterState::ComboMelee(s) if s.stage_section == StageSection::Action)
|
CharacterState::ComboMeleeDeprecated(s) if s.stage_section == StageSection::Action)
|
||||||
|| matches!(self, CharacterState::ComboMelee2(s) if s.stage_section == StageSection::Action)
|
|| matches!(self, CharacterState::ComboMelee2(s) if s.stage_section == StageSection::Action)
|
||||||
|| matches!(self, CharacterState::DashMelee(s) if s.stage_section == StageSection::Charge)
|
|| matches!(self, CharacterState::DashMelee(s) if s.stage_section == StageSection::Charge)
|
||||||
|| matches!(self, CharacterState::LeapMelee(s) if s.stage_section == StageSection::Movement)
|
|| matches!(self, CharacterState::LeapMelee(s) if s.stage_section == StageSection::Movement)
|
||||||
@ -403,7 +403,7 @@ impl CharacterState {
|
|||||||
| CharacterState::Wielding(_)
|
| CharacterState::Wielding(_)
|
||||||
| CharacterState::BasicMelee(_)
|
| CharacterState::BasicMelee(_)
|
||||||
| CharacterState::BasicRanged(_)
|
| CharacterState::BasicRanged(_)
|
||||||
| CharacterState::ComboMelee(_)
|
| CharacterState::ComboMeleeDeprecated(_)
|
||||||
| CharacterState::ComboMelee2(_)
|
| CharacterState::ComboMelee2(_)
|
||||||
| CharacterState::ChargedRanged(_)
|
| CharacterState::ChargedRanged(_)
|
||||||
| CharacterState::RepeaterRanged(_)
|
| CharacterState::RepeaterRanged(_)
|
||||||
@ -458,7 +458,7 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(data) => data.behavior(j, output_events),
|
CharacterState::Roll(data) => data.behavior(j, output_events),
|
||||||
CharacterState::Wielding(data) => data.behavior(j, output_events),
|
CharacterState::Wielding(data) => data.behavior(j, output_events),
|
||||||
CharacterState::Equipping(data) => data.behavior(j, output_events),
|
CharacterState::Equipping(data) => data.behavior(j, output_events),
|
||||||
CharacterState::ComboMelee(data) => data.behavior(j, output_events),
|
CharacterState::ComboMeleeDeprecated(data) => data.behavior(j, output_events),
|
||||||
CharacterState::ComboMelee2(data) => data.behavior(j, output_events),
|
CharacterState::ComboMelee2(data) => data.behavior(j, output_events),
|
||||||
CharacterState::BasicMelee(data) => data.behavior(j, output_events),
|
CharacterState::BasicMelee(data) => data.behavior(j, output_events),
|
||||||
CharacterState::BasicRanged(data) => data.behavior(j, output_events),
|
CharacterState::BasicRanged(data) => data.behavior(j, output_events),
|
||||||
@ -511,7 +511,9 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(data) => data.handle_event(j, output_events, action),
|
CharacterState::Roll(data) => data.handle_event(j, output_events, action),
|
||||||
CharacterState::Wielding(data) => data.handle_event(j, output_events, action),
|
CharacterState::Wielding(data) => data.handle_event(j, output_events, action),
|
||||||
CharacterState::Equipping(data) => data.handle_event(j, output_events, action),
|
CharacterState::Equipping(data) => data.handle_event(j, output_events, action),
|
||||||
CharacterState::ComboMelee(data) => data.handle_event(j, output_events, action),
|
CharacterState::ComboMeleeDeprecated(data) => {
|
||||||
|
data.handle_event(j, output_events, action)
|
||||||
|
},
|
||||||
CharacterState::ComboMelee2(data) => data.handle_event(j, output_events, action),
|
CharacterState::ComboMelee2(data) => data.handle_event(j, output_events, action),
|
||||||
CharacterState::BasicMelee(data) => data.handle_event(j, output_events, action),
|
CharacterState::BasicMelee(data) => data.handle_event(j, output_events, action),
|
||||||
CharacterState::BasicRanged(data) => data.handle_event(j, output_events, action),
|
CharacterState::BasicRanged(data) => data.handle_event(j, output_events, action),
|
||||||
@ -564,7 +566,7 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(data) => Some(data.static_data.ability_info),
|
CharacterState::Roll(data) => Some(data.static_data.ability_info),
|
||||||
CharacterState::Wielding(_) => None,
|
CharacterState::Wielding(_) => None,
|
||||||
CharacterState::Equipping(_) => None,
|
CharacterState::Equipping(_) => None,
|
||||||
CharacterState::ComboMelee(data) => Some(data.static_data.ability_info),
|
CharacterState::ComboMeleeDeprecated(data) => Some(data.static_data.ability_info),
|
||||||
CharacterState::ComboMelee2(data) => Some(data.static_data.ability_info),
|
CharacterState::ComboMelee2(data) => Some(data.static_data.ability_info),
|
||||||
CharacterState::BasicMelee(data) => Some(data.static_data.ability_info),
|
CharacterState::BasicMelee(data) => Some(data.static_data.ability_info),
|
||||||
CharacterState::BasicRanged(data) => Some(data.static_data.ability_info),
|
CharacterState::BasicRanged(data) => Some(data.static_data.ability_info),
|
||||||
@ -608,7 +610,7 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(data) => Some(data.stage_section),
|
CharacterState::Roll(data) => Some(data.stage_section),
|
||||||
CharacterState::Equipping(_) => Some(StageSection::Buildup),
|
CharacterState::Equipping(_) => Some(StageSection::Buildup),
|
||||||
CharacterState::Wielding(_) => None,
|
CharacterState::Wielding(_) => None,
|
||||||
CharacterState::ComboMelee(data) => Some(data.stage_section),
|
CharacterState::ComboMeleeDeprecated(data) => Some(data.stage_section),
|
||||||
CharacterState::ComboMelee2(data) => Some(data.stage_section),
|
CharacterState::ComboMelee2(data) => Some(data.stage_section),
|
||||||
CharacterState::BasicMelee(data) => Some(data.stage_section),
|
CharacterState::BasicMelee(data) => Some(data.stage_section),
|
||||||
CharacterState::BasicRanged(data) => Some(data.stage_section),
|
CharacterState::BasicRanged(data) => Some(data.stage_section),
|
||||||
@ -668,7 +670,7 @@ impl CharacterState {
|
|||||||
buildup: Some(data.static_data.buildup_duration),
|
buildup: Some(data.static_data.buildup_duration),
|
||||||
..Default::default()
|
..Default::default()
|
||||||
}),
|
}),
|
||||||
CharacterState::ComboMelee(data) => {
|
CharacterState::ComboMeleeDeprecated(data) => {
|
||||||
let stage_index = data.stage_index();
|
let stage_index = data.stage_index();
|
||||||
let stage = data.static_data.stage_data[stage_index];
|
let stage = data.static_data.stage_data[stage_index];
|
||||||
Some(DurationsInfo {
|
Some(DurationsInfo {
|
||||||
@ -840,7 +842,7 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(data) => Some(data.timer),
|
CharacterState::Roll(data) => Some(data.timer),
|
||||||
CharacterState::Wielding(_) => None,
|
CharacterState::Wielding(_) => None,
|
||||||
CharacterState::Equipping(data) => Some(data.timer),
|
CharacterState::Equipping(data) => Some(data.timer),
|
||||||
CharacterState::ComboMelee(data) => Some(data.timer),
|
CharacterState::ComboMeleeDeprecated(data) => Some(data.timer),
|
||||||
CharacterState::ComboMelee2(data) => Some(data.timer),
|
CharacterState::ComboMelee2(data) => Some(data.timer),
|
||||||
CharacterState::BasicMelee(data) => Some(data.timer),
|
CharacterState::BasicMelee(data) => Some(data.timer),
|
||||||
CharacterState::BasicRanged(data) => Some(data.timer),
|
CharacterState::BasicRanged(data) => Some(data.timer),
|
||||||
@ -884,7 +886,7 @@ impl CharacterState {
|
|||||||
CharacterState::Roll(_) => None,
|
CharacterState::Roll(_) => None,
|
||||||
CharacterState::Wielding(_) => None,
|
CharacterState::Wielding(_) => None,
|
||||||
CharacterState::Equipping(_) => None,
|
CharacterState::Equipping(_) => None,
|
||||||
CharacterState::ComboMelee(_) => Some(AttackSource::Melee),
|
CharacterState::ComboMeleeDeprecated(_) => Some(AttackSource::Melee),
|
||||||
CharacterState::ComboMelee2(_) => Some(AttackSource::Melee),
|
CharacterState::ComboMelee2(_) => Some(AttackSource::Melee),
|
||||||
CharacterState::BasicMelee(_) => Some(AttackSource::Melee),
|
CharacterState::BasicMelee(_) => Some(AttackSource::Melee),
|
||||||
CharacterState::BasicRanged(data) => {
|
CharacterState::BasicRanged(data) => {
|
||||||
|
@ -705,7 +705,7 @@ fn default_main_tool(body: &Body) -> Item {
|
|||||||
arthropod::Species::Dagonite => Some(Item::new_from_asset_expect(
|
arthropod::Species::Dagonite => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.unique.arthropods.dagonite",
|
"common.items.npc_weapons.unique.arthropods.dagonite",
|
||||||
)),
|
)),
|
||||||
_ => Some(Item::new_from_asset_expect(
|
arthropod::Species::Leafbeetle => Some(Item::new_from_asset_expect(
|
||||||
"common.items.npc_weapons.unique.arthropods.leafbeetle",
|
"common.items.npc_weapons.unique.arthropods.leafbeetle",
|
||||||
)),
|
)),
|
||||||
},
|
},
|
||||||
|
@ -56,8 +56,10 @@ pub struct Stats {
|
|||||||
pub damage_reduction: f32,
|
pub damage_reduction: f32,
|
||||||
pub poise_reduction: f32,
|
pub poise_reduction: f32,
|
||||||
pub heal_multiplier: f32,
|
pub heal_multiplier: f32,
|
||||||
|
pub move_speed_multiplier: f32,
|
||||||
pub max_health_modifiers: StatsModifier,
|
pub max_health_modifiers: StatsModifier,
|
||||||
pub move_speed_modifier: f32,
|
pub move_speed_modifier: f32,
|
||||||
|
pub jump_modifier: f32,
|
||||||
pub attack_speed_modifier: f32,
|
pub attack_speed_modifier: f32,
|
||||||
pub friction_modifier: f32,
|
pub friction_modifier: f32,
|
||||||
pub max_energy_modifiers: StatsModifier,
|
pub max_energy_modifiers: StatsModifier,
|
||||||
@ -83,8 +85,10 @@ impl Stats {
|
|||||||
damage_reduction: 0.0,
|
damage_reduction: 0.0,
|
||||||
poise_reduction: 0.0,
|
poise_reduction: 0.0,
|
||||||
heal_multiplier: 1.0,
|
heal_multiplier: 1.0,
|
||||||
|
move_speed_multiplier: 1.0,
|
||||||
max_health_modifiers: StatsModifier::default(),
|
max_health_modifiers: StatsModifier::default(),
|
||||||
move_speed_modifier: 1.0,
|
move_speed_modifier: 1.0,
|
||||||
|
jump_modifier: 1.0,
|
||||||
attack_speed_modifier: 1.0,
|
attack_speed_modifier: 1.0,
|
||||||
friction_modifier: 1.0,
|
friction_modifier: 1.0,
|
||||||
max_energy_modifiers: StatsModifier::default(),
|
max_energy_modifiers: StatsModifier::default(),
|
||||||
|
@ -35,3 +35,6 @@ pub const ENERGY_PER_LEVEL: u16 = 5;
|
|||||||
pub const HP_PER_LEVEL: u16 = 5;
|
pub const HP_PER_LEVEL: u16 = 5;
|
||||||
|
|
||||||
pub const TELEPORTER_RADIUS: f32 = 3.;
|
pub const TELEPORTER_RADIUS: f32 = 3.;
|
||||||
|
|
||||||
|
// Map settings
|
||||||
|
pub const DAY_LENGTH_DEFAULT: f64 = 30.0;
|
||||||
|
@ -170,14 +170,14 @@ impl CharacterBehavior for Data {
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Build up
|
// Build up
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
||||||
..*self
|
..*self
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// Transitions to swing section of stage
|
// Transitions to swing section of stage
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: Duration::default(),
|
timer: Duration::default(),
|
||||||
stage_section: StageSection::Action,
|
stage_section: StageSection::Action,
|
||||||
@ -194,7 +194,7 @@ impl CharacterBehavior for Data {
|
|||||||
&& !self.exhausted
|
&& !self.exhausted
|
||||||
{
|
{
|
||||||
// Swing
|
// Swing
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: tick_attack_or_default(data, self.timer, None),
|
timer: tick_attack_or_default(data, self.timer, None),
|
||||||
exhausted: true,
|
exhausted: true,
|
||||||
@ -304,14 +304,14 @@ impl CharacterBehavior for Data {
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Swings
|
// Swings
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
||||||
..*self
|
..*self
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// Transitions to recover section of stage
|
// Transitions to recover section of stage
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: Duration::default(),
|
timer: Duration::default(),
|
||||||
stage_section: StageSection::Recover,
|
stage_section: StageSection::Recover,
|
||||||
@ -328,7 +328,7 @@ impl CharacterBehavior for Data {
|
|||||||
None,
|
None,
|
||||||
);
|
);
|
||||||
// Recovers
|
// Recovers
|
||||||
update.character = CharacterState::ComboMelee(Data {
|
update.character = CharacterState::ComboMeleeDeprecated(Data {
|
||||||
static_data: self.static_data.clone(),
|
static_data: self.static_data.clone(),
|
||||||
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
timer: tick_attack_or_default(data, self.timer, Some(speed_modifier)),
|
||||||
..*self
|
..*self
|
||||||
@ -380,7 +380,7 @@ fn reset_state(
|
|||||||
data.static_data.ability_info.input,
|
data.static_data.ability_info.input,
|
||||||
);
|
);
|
||||||
|
|
||||||
if let CharacterState::ComboMelee(c) = &mut update.character {
|
if let CharacterState::ComboMeleeDeprecated(c) = &mut update.character {
|
||||||
c.stage = (data.stage % data.static_data.num_stages) + 1;
|
c.stage = (data.stage % data.static_data.num_stages) + 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,7 @@ use crate::{
|
|||||||
comp::{
|
comp::{
|
||||||
buff::{BuffChange, BuffKind},
|
buff::{BuffChange, BuffKind},
|
||||||
character_state::{AttackFilters, OutputEvents},
|
character_state::{AttackFilters, OutputEvents},
|
||||||
CharacterState, InputKind, StateUpdate,
|
CharacterState, StateUpdate,
|
||||||
},
|
},
|
||||||
event::ServerEvent,
|
event::ServerEvent,
|
||||||
states::{
|
states::{
|
||||||
@ -46,8 +46,6 @@ pub struct Data {
|
|||||||
pub prev_aimed_dir: Option<Dir>,
|
pub prev_aimed_dir: Option<Dir>,
|
||||||
/// Is sneaking, true if previous state was also considered sneaking
|
/// Is sneaking, true if previous state was also considered sneaking
|
||||||
pub is_sneaking: bool,
|
pub is_sneaking: bool,
|
||||||
/// Was in state with combo
|
|
||||||
pub was_combo: Option<(InputKind, u32)>,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl CharacterBehavior for Data {
|
impl CharacterBehavior for Data {
|
||||||
@ -126,21 +124,8 @@ impl CharacterBehavior for Data {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// Done
|
// Done
|
||||||
if let Some((input, stage)) = self.was_combo {
|
|
||||||
if input_is_pressed(data, input) {
|
|
||||||
handle_input(data, output_events, &mut update, input);
|
|
||||||
// If other states are introduced that progress through stages, add them
|
|
||||||
// here
|
|
||||||
if let CharacterState::ComboMelee(c) = &mut update.character {
|
|
||||||
c.stage = stage;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
end_ability(data, &mut update);
|
end_ability(data, &mut update);
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
end_ability(data, &mut update);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
_ => {
|
_ => {
|
||||||
// If it somehow ends up in an incorrect stage section
|
// If it somehow ends up in an incorrect stage section
|
||||||
|
@ -1193,7 +1193,7 @@ pub fn handle_jump(
|
|||||||
data.entity,
|
data.entity,
|
||||||
strength * impulse / data.mass.0
|
strength * impulse / data.mass.0
|
||||||
* data.scale.map_or(1.0, |s| s.0.powf(13.0).powf(0.25))
|
* data.scale.map_or(1.0, |s| s.0.powf(13.0).powf(0.25))
|
||||||
* data.stats.move_speed_modifier,
|
* data.stats.jump_modifier,
|
||||||
));
|
));
|
||||||
})
|
})
|
||||||
.is_some()
|
.is_some()
|
||||||
@ -1243,17 +1243,12 @@ fn handle_ability(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if let CharacterState::Roll(roll) = &mut update.character {
|
if let CharacterState::Roll(roll) = &mut update.character {
|
||||||
if let CharacterState::ComboMelee(c) = data.character {
|
|
||||||
roll.was_combo = Some((c.static_data.ability_info.input, c.stage));
|
|
||||||
roll.was_wielded = true;
|
|
||||||
} else {
|
|
||||||
if data.character.is_wield() || data.character.was_wielded() {
|
if data.character.is_wield() || data.character.was_wielded() {
|
||||||
roll.was_wielded = true;
|
roll.was_wielded = true;
|
||||||
}
|
}
|
||||||
if data.character.is_stealthy() {
|
if data.character.is_stealthy() {
|
||||||
roll.is_sneaking = true;
|
roll.is_sneaking = true;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
if data.character.is_aimed() {
|
if data.character.is_aimed() {
|
||||||
roll.prev_aimed_dir = Some(data.controller.inputs.look_dir);
|
roll.prev_aimed_dir = Some(data.controller.inputs.look_dir);
|
||||||
}
|
}
|
||||||
|
@ -14,6 +14,7 @@ pub enum SiteKindMeta {
|
|||||||
pub enum DungeonKindMeta {
|
pub enum DungeonKindMeta {
|
||||||
Old,
|
Old,
|
||||||
Gnarling,
|
Gnarling,
|
||||||
|
Adlet,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Copy, Clone, Serialize, Deserialize, PartialEq, Eq)]
|
#[derive(Debug, Copy, Clone, Serialize, Deserialize, PartialEq, Eq)]
|
||||||
|
@ -33,7 +33,7 @@ use hashbrown::{HashMap, HashSet};
|
|||||||
use rayon::{ThreadPool, ThreadPoolBuilder};
|
use rayon::{ThreadPool, ThreadPoolBuilder};
|
||||||
use specs::{
|
use specs::{
|
||||||
prelude::Resource,
|
prelude::Resource,
|
||||||
shred::{Fetch, FetchMut},
|
shred::{Fetch, FetchMut, SendDispatcher},
|
||||||
storage::{MaskedStorage as EcsMaskedStorage, Storage as EcsStorage},
|
storage::{MaskedStorage as EcsMaskedStorage, Storage as EcsStorage},
|
||||||
Component, DispatcherBuilder, Entity as EcsEntity, WorldExt,
|
Component, DispatcherBuilder, Entity as EcsEntity, WorldExt,
|
||||||
};
|
};
|
||||||
@ -128,6 +128,7 @@ pub struct State {
|
|||||||
ecs: specs::World,
|
ecs: specs::World,
|
||||||
// Avoid lifetime annotation by storing a thread pool instead of the whole dispatcher
|
// Avoid lifetime annotation by storing a thread pool instead of the whole dispatcher
|
||||||
thread_pool: Arc<ThreadPool>,
|
thread_pool: Arc<ThreadPool>,
|
||||||
|
dispatcher: SendDispatcher<'static>,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub type Pools = Arc<ThreadPool>;
|
pub type Pools = Arc<ThreadPool>;
|
||||||
@ -150,13 +151,35 @@ impl State {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new `State` in client mode.
|
/// Create a new `State` in client mode.
|
||||||
pub fn client(pools: Pools, map_size_lg: MapSizeLg, default_chunk: Arc<TerrainChunk>) -> Self {
|
pub fn client(
|
||||||
Self::new(GameMode::Client, pools, map_size_lg, default_chunk)
|
pools: Pools,
|
||||||
|
map_size_lg: MapSizeLg,
|
||||||
|
default_chunk: Arc<TerrainChunk>,
|
||||||
|
add_systems: impl Fn(&mut DispatcherBuilder),
|
||||||
|
) -> Self {
|
||||||
|
Self::new(
|
||||||
|
GameMode::Client,
|
||||||
|
pools,
|
||||||
|
map_size_lg,
|
||||||
|
default_chunk,
|
||||||
|
add_systems,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new `State` in server mode.
|
/// Create a new `State` in server mode.
|
||||||
pub fn server(pools: Pools, map_size_lg: MapSizeLg, default_chunk: Arc<TerrainChunk>) -> Self {
|
pub fn server(
|
||||||
Self::new(GameMode::Server, pools, map_size_lg, default_chunk)
|
pools: Pools,
|
||||||
|
map_size_lg: MapSizeLg,
|
||||||
|
default_chunk: Arc<TerrainChunk>,
|
||||||
|
add_systems: impl Fn(&mut DispatcherBuilder),
|
||||||
|
) -> Self {
|
||||||
|
Self::new(
|
||||||
|
GameMode::Server,
|
||||||
|
pools,
|
||||||
|
map_size_lg,
|
||||||
|
default_chunk,
|
||||||
|
add_systems,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn new(
|
pub fn new(
|
||||||
@ -164,10 +187,23 @@ impl State {
|
|||||||
pools: Pools,
|
pools: Pools,
|
||||||
map_size_lg: MapSizeLg,
|
map_size_lg: MapSizeLg,
|
||||||
default_chunk: Arc<TerrainChunk>,
|
default_chunk: Arc<TerrainChunk>,
|
||||||
|
add_systems: impl Fn(&mut DispatcherBuilder),
|
||||||
) -> Self {
|
) -> Self {
|
||||||
|
prof_span!(guard, "create dispatcher");
|
||||||
|
let mut dispatch_builder =
|
||||||
|
DispatcherBuilder::<'static, 'static>::new().with_pool(Arc::clone(&pools));
|
||||||
|
// TODO: Consider alternative ways to do this
|
||||||
|
add_systems(&mut dispatch_builder);
|
||||||
|
let dispatcher = dispatch_builder
|
||||||
|
.build()
|
||||||
|
.try_into_sendable()
|
||||||
|
.unwrap_or_else(|_| panic!("Thread local systems not allowed"));
|
||||||
|
drop(guard);
|
||||||
|
|
||||||
Self {
|
Self {
|
||||||
ecs: Self::setup_ecs_world(game_mode, Arc::clone(&pools), map_size_lg, default_chunk),
|
ecs: Self::setup_ecs_world(game_mode, Arc::clone(&pools), map_size_lg, default_chunk),
|
||||||
thread_pool: pools,
|
thread_pool: pools,
|
||||||
|
dispatcher,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -615,7 +651,6 @@ impl State {
|
|||||||
pub fn tick(
|
pub fn tick(
|
||||||
&mut self,
|
&mut self,
|
||||||
dt: Duration,
|
dt: Duration,
|
||||||
add_systems: impl Fn(&mut DispatcherBuilder),
|
|
||||||
update_terrain: bool,
|
update_terrain: bool,
|
||||||
mut metrics: Option<&mut StateTickMetrics>,
|
mut metrics: Option<&mut StateTickMetrics>,
|
||||||
server_constants: &ServerConstants,
|
server_constants: &ServerConstants,
|
||||||
@ -645,19 +680,9 @@ impl State {
|
|||||||
self.ecs.write_resource::<DeltaTime>().0 =
|
self.ecs.write_resource::<DeltaTime>().0 =
|
||||||
(dt.as_secs_f32() * time_scale as f32).min(MAX_DELTA_TIME);
|
(dt.as_secs_f32() * time_scale as f32).min(MAX_DELTA_TIME);
|
||||||
|
|
||||||
section_span!(guard, "create dispatcher");
|
|
||||||
// Run systems to update the world.
|
|
||||||
// Create and run a dispatcher for ecs systems.
|
|
||||||
let mut dispatch_builder =
|
|
||||||
DispatcherBuilder::new().with_pool(Arc::clone(&self.thread_pool));
|
|
||||||
// TODO: Consider alternative ways to do this
|
|
||||||
add_systems(&mut dispatch_builder);
|
|
||||||
// This dispatches all the systems in parallel.
|
|
||||||
let mut dispatcher = dispatch_builder.build();
|
|
||||||
drop(guard);
|
|
||||||
|
|
||||||
section_span!(guard, "run systems");
|
section_span!(guard, "run systems");
|
||||||
dispatcher.dispatch(&self.ecs);
|
// This dispatches all the systems in parallel.
|
||||||
|
self.dispatcher.dispatch(&self.ecs);
|
||||||
drop(guard);
|
drop(guard);
|
||||||
|
|
||||||
section_span!(guard, "maintain ecs");
|
section_span!(guard, "maintain ecs");
|
||||||
|
@ -11,9 +11,7 @@ use common::{
|
|||||||
uid::{IdMaps, Uid},
|
uid::{IdMaps, Uid},
|
||||||
};
|
};
|
||||||
use common_ecs::{Job, Origin, Phase, System};
|
use common_ecs::{Job, Origin, Phase, System};
|
||||||
use specs::{
|
use specs::{shred, Entities, Entity as EcsEntity, Join, Read, ReadStorage, SystemData};
|
||||||
shred::ResourceId, Entities, Entity as EcsEntity, Join, Read, ReadStorage, SystemData, World,
|
|
||||||
};
|
|
||||||
|
|
||||||
#[derive(SystemData)]
|
#[derive(SystemData)]
|
||||||
pub struct ReadData<'a> {
|
pub struct ReadData<'a> {
|
||||||
|
@ -17,8 +17,7 @@ use common_ecs::{Job, Origin, ParMode, Phase, System};
|
|||||||
use rand::Rng;
|
use rand::Rng;
|
||||||
use rayon::iter::ParallelIterator;
|
use rayon::iter::ParallelIterator;
|
||||||
use specs::{
|
use specs::{
|
||||||
shred::ResourceId, Entities, LendJoin, ParJoin, Read, ReadExpect, ReadStorage, SystemData,
|
shred, Entities, LendJoin, ParJoin, Read, ReadExpect, ReadStorage, SystemData, WriteStorage,
|
||||||
World, WriteStorage,
|
|
||||||
};
|
};
|
||||||
use vek::*;
|
use vek::*;
|
||||||
|
|
||||||
@ -121,6 +120,10 @@ impl<'a> System<'a> for Sys {
|
|||||||
sound: Sound::new(SoundKind::Beam, pos.0, 13.0, read_data.time.0),
|
sound: Sound::new(SoundKind::Beam, pos.0, 13.0, read_data.time.0),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
outcomes.push(Outcome::Beam {
|
||||||
|
pos: pos.0,
|
||||||
|
specifier: beam.specifier,
|
||||||
|
});
|
||||||
|
|
||||||
// Group to ignore collisions with
|
// Group to ignore collisions with
|
||||||
// Might make this more nuanced if beams are used for non damage effects
|
// Might make this more nuanced if beams are used for non damage effects
|
||||||
|
@ -22,8 +22,8 @@ use common_base::prof_span;
|
|||||||
use common_ecs::{Job, Origin, ParMode, Phase, System};
|
use common_ecs::{Job, Origin, ParMode, Phase, System};
|
||||||
use rayon::iter::ParallelIterator;
|
use rayon::iter::ParallelIterator;
|
||||||
use specs::{
|
use specs::{
|
||||||
shred::ResourceId, Entities, Entity, LendJoin, ParJoin, Read, ReadExpect, ReadStorage,
|
shred, Entities, Entity, LendJoin, ParJoin, Read, ReadExpect, ReadStorage, SystemData,
|
||||||
SystemData, World, WriteStorage,
|
WriteStorage,
|
||||||
};
|
};
|
||||||
|
|
||||||
#[derive(SystemData)]
|
#[derive(SystemData)]
|
||||||
@ -664,6 +664,9 @@ fn execute_effect(
|
|||||||
BuffEffect::HealReduction(red) => {
|
BuffEffect::HealReduction(red) => {
|
||||||
stat.heal_multiplier *= 1.0 - *red;
|
stat.heal_multiplier *= 1.0 - *red;
|
||||||
},
|
},
|
||||||
|
BuffEffect::MoveSpeedReduction(red) => {
|
||||||
|
stat.move_speed_multiplier *= 1.0 - *red;
|
||||||
|
},
|
||||||
BuffEffect::PoiseDamageFromLostHealth {
|
BuffEffect::PoiseDamageFromLostHealth {
|
||||||
initial_health,
|
initial_health,
|
||||||
strength,
|
strength,
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
use specs::{
|
use specs::{
|
||||||
shred::ResourceId, Entities, LazyUpdate, LendJoin, Read, ReadExpect, ReadStorage, SystemData,
|
shred, Entities, LazyUpdate, LendJoin, Read, ReadExpect, ReadStorage, SystemData, WriteStorage,
|
||||||
World, WriteStorage,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
use common::{
|
use common::{
|
||||||
|
@ -9,10 +9,7 @@ use common::{
|
|||||||
uid::IdMaps,
|
uid::IdMaps,
|
||||||
};
|
};
|
||||||
use common_ecs::{Job, Origin, Phase, System};
|
use common_ecs::{Job, Origin, Phase, System};
|
||||||
use specs::{
|
use specs::{shred, Entities, Join, Read, ReadExpect, ReadStorage, SystemData, WriteStorage};
|
||||||
shred::ResourceId, Entities, Join, Read, ReadExpect, ReadStorage, SystemData, World,
|
|
||||||
WriteStorage,
|
|
||||||
};
|
|
||||||
use vek::*;
|
use vek::*;
|
||||||
|
|
||||||
#[derive(SystemData)]
|
#[derive(SystemData)]
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user