diff --git a/.all-contributorsrc b/.all-contributorsrc
index 55ff294842..c01e94a8fc 100644
--- a/.all-contributorsrc
+++ b/.all-contributorsrc
@@ -505,6 +505,15 @@
"contributions": [
"data"
]
+ },
+ {
+ "login": "mrdollsteak",
+ "name": "mrdollsteak",
+ "avatar_url": "https://avatars.githubusercontent.com/u/5975698?v=4",
+ "profile": "https://github.com/mrdollsteak",
+ "contributions": [
+ "data"
+ ]
}
],
"contributorsPerLine": 7,
diff --git a/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml b/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml
index 2f25421ea0..a8e9c9326a 100644
--- a/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml
+++ b/.github/ISSUE_TEMPLATE/01_battle_engine_bugs.yaml
@@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- - 1.14.1 (Latest release)
+ - 1.14.2 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
+ - 1.14.1
- 1.14.0
- 1.13.4
- 1.13.3
diff --git a/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml b/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml
index b0ee167021..e6762925b4 100644
--- a/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml
+++ b/.github/ISSUE_TEMPLATE/02_battle_ai_issues.yaml
@@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- - 1.14.1 (Latest release)
+ - 1.14.2 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
+ - 1.14.1
- 1.14.0
- 1.13.4
- 1.13.3
diff --git a/.github/ISSUE_TEMPLATE/04_other_errors.yaml b/.github/ISSUE_TEMPLATE/04_other_errors.yaml
index 4dcb2b3093..8fa4e94564 100644
--- a/.github/ISSUE_TEMPLATE/04_other_errors.yaml
+++ b/.github/ISSUE_TEMPLATE/04_other_errors.yaml
@@ -43,9 +43,10 @@ body:
label: Version
description: What version of pokeemerald-expansion are you using?
options:
- - 1.14.1 (Latest release)
+ - 1.14.2 (Latest release)
- master (default, unreleased bugfixes)
- upcoming (Edge)
+ - 1.14.1
- 1.14.0
- 1.13.4
- 1.13.3
diff --git a/CREDITS.md b/CREDITS.md
index dfec2d747c..98edf01b00 100644
--- a/CREDITS.md
+++ b/CREDITS.md
@@ -83,6 +83,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
 Eva π¨ |
 amiosi π£ |
+  mrdollsteak π£ |
diff --git a/README.md b/README.md
index 8094c29e85..c74b22fa29 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@
If you use **`pokeemerald-expansion`**, please credit **RHH (Rom Hacking Hideout)**. Optionally, include the version number for clarity.
```
-Based off RHH's pokeemerald-expansion 1.14.1 https://github.com/rh-hideout/pokeemerald-expansion/
+Based off RHH's pokeemerald-expansion 1.14.2 https://github.com/rh-hideout/pokeemerald-expansion/
```
Please consider [crediting all contributors](CREDITS.md) involved in the project!
diff --git a/asm/macros/map.inc b/asm/macros/map.inc
index 56d7387238..04a749026a 100644
--- a/asm/macros/map.inc
+++ b/asm/macros/map.inc
@@ -112,6 +112,9 @@
@ Defines a background hidden item event for map data
.macro bg_hidden_item_event x:req, y:req, elevation:req, item:req, flag:req
+ .if \flag < FLAG_HIDDEN_ITEMS_START
+ .error "Hidden Item flag \flag is too small. Must be >= FLAG_HIDDEN_ITEMS_START."
+ .endif
bg_event \x, \y, \elevation, BG_EVENT_HIDDEN_ITEM, \item, ((\flag) - FLAG_HIDDEN_ITEMS_START)
.endm
diff --git a/constants/m4a_constants.inc b/constants/m4a_constants.inc
index 2599b6c4aa..73f98f31f7 100644
--- a/constants/m4a_constants.inc
+++ b/constants/m4a_constants.inc
@@ -181,7 +181,7 @@
struct_field o_MusicPlayerTrack_ToneData_sustain, 1
struct_field o_MusicPlayerTrack_ToneData_release, 1
struct_field o_MusicPlayerTrack_gap, 10
- struct_field o_MusicPlayerTrack_unk_3A, 2
+ struct_field o_MusicPlayerTrack_timer, 2
struct_field o_MusicPlayerTrack_unk_3C, 4
struct_field o_MusicPlayerTrack_cmdPtr, 4
struct_field o_MusicPlayerTrack_patternStack, 12
diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md
index 1c9235d741..74cf376fbe 100644
--- a/docs/SUMMARY.md
+++ b/docs/SUMMARY.md
@@ -46,6 +46,7 @@
- [Teachable Learnsets Explanations](tutorials/teachable_learnsets.md)
- [Changelog](./CHANGELOG.md)
- [1.14.x]()
+ - [Version 1.14.2](changelogs/1.14.x/1.14.2.md)
- [Version 1.14.1](changelogs/1.14.x/1.14.1.md)
- [Version 1.14.0](changelogs/1.14.x/1.14.0.md)
- [1.13.x]()
diff --git a/docs/changelogs/1.14.x/1.14.2.md b/docs/changelogs/1.14.x/1.14.2.md
new file mode 100644
index 0000000000..e4807b88cd
--- /dev/null
+++ b/docs/changelogs/1.14.x/1.14.2.md
@@ -0,0 +1,209 @@
+```md
+## How to update
+- If you haven't set up a remote, run the command `git remote add RHH https://github.com/rh-hideout/pokeemerald-expansion`.
+- Once you have your remote set up, run the command `git pull RHH expansion/1.14.2
+`.
+```
+
+## π *REFACTORS* π
+π = Uses a migration script.
+* Renamed Config Test system to more general names by @AsparagusEduardo in [#7283](https://github.com/rh-hideout/pokeemerald-expansion/pull/7283)
+
+## 𧬠General π§¬
+### Changed
+* Fix docs not compiling by @hedara90 in [#8407](https://github.com/rh-hideout/pokeemerald-expansion/pull/8407)
+* Update mdbook to v0.5.1 by @rayrobdod in [#8437](https://github.com/rh-hideout/pokeemerald-expansion/pull/8437)
+* Add a ci step that checks that documentation md files are mentioned in `docs/SUMMARY.md` by @rayrobdod in [#8439](https://github.com/rh-hideout/pokeemerald-expansion/pull/8439)
+* Fix `GEN_6_ORAS` definition by @AsparagusEduardo in [#8537](https://github.com/rh-hideout/pokeemerald-expansion/pull/8537)
+* Add different Poke Balls to more Trainers by @amiosi in [#8467](https://github.com/rh-hideout/pokeemerald-expansion/pull/8467)
+* Remove another unused deoxys function by @FosterProgramming in [#8576](https://github.com/rh-hideout/pokeemerald-expansion/pull/8576)
+* Gorilla Tactics and Test typos fix by @bassforte123 in [#8653](https://github.com/rh-hideout/pokeemerald-expansion/pull/8653)
+* Use release instead of LTO in CI by @hedara90 in [#8706](https://github.com/rh-hideout/pokeemerald-expansion/pull/8706)
+
+### Fixed
+* Fix merge error that broke some hgss palette by @FosterProgramming in [#8411](https://github.com/rh-hideout/pokeemerald-expansion/pull/8411)
+* Make TRUE and 1 behave the same in config/species_enabled.h by @hedara90 in [#8421](https://github.com/rh-hideout/pokeemerald-expansion/pull/8421)
+* Do not add padding to end of smol file when smol is natually word-sized by @rayrobdod in [#8522](https://github.com/rh-hideout/pokeemerald-expansion/pull/8522)
+* Align gSpecialVars by @Stevebel in [#8541](https://github.com/rh-hideout/pokeemerald-expansion/pull/8541)
+* Fix Safari and Wally backsprites when reshowing battle screen by @AsparagusEduardo in [#8561](https://github.com/rh-hideout/pokeemerald-expansion/pull/8561)
+* Fix party pool oob by @hedara90 in [#8581](https://github.com/rh-hideout/pokeemerald-expansion/pull/8581)
+* Fix progbits flags for iwram asm functions by @DizzyEggg in [#8627](https://github.com/rh-hideout/pokeemerald-expansion/pull/8627)
+
+## πΊοΈ Overworld πΊοΈ
+### Fixed
+* Fix bug with enterCode default value by @FosterProgramming in [#8438](https://github.com/rh-hideout/pokeemerald-expansion/pull/8438)
+* Free the allocated buffer before the second decompression call (hopefully helps) by @FosterProgramming in [#8301](https://github.com/rh-hideout/pokeemerald-expansion/pull/8301)
+* Fix truck fade being cancelled by @FosterProgramming in [#8617](https://github.com/rh-hideout/pokeemerald-expansion/pull/8617)
+* Refactor dexnav to not use overworld task by @FosterProgramming in [#8602](https://github.com/rh-hideout/pokeemerald-expansion/pull/8602)
+
+## π PokΓ©mon π
+### Changed
+* GBA Asset Fixes by @amiosi in [#8382](https://github.com/rh-hideout/pokeemerald-expansion/pull/8382)
+* Fix FlabΓ©bΓ© and Floette overworld sprites by @estellarc in [#8511](https://github.com/rh-hideout/pokeemerald-expansion/pull/8511)
+* Fix Naclstack and Garganacl shadows by @kittenchilly in [#8698](https://github.com/rh-hideout/pokeemerald-expansion/pull/8698)
+
+### Fixed
+* Fix Summary screen lag with move relearner when there's a lot of TMs by @PCG06 in [#8503](https://github.com/rh-hideout/pokeemerald-expansion/pull/8503)
+* Small fix that prevented TM relearner if `P_ENABLE_ALL_TM_MOVES` was `TRUE` by @PCG06 in [#8525](https://github.com/rh-hideout/pokeemerald-expansion/pull/8525)
+* Re-colored Gliscor's anim_front.png by @DaniRainbow in [#8341](https://github.com/rh-hideout/pokeemerald-expansion/pull/8341)
+* Allow Floette Eternal to mega evolve by @PhallenTree in [#8558](https://github.com/rh-hideout/pokeemerald-expansion/pull/8558)
+* Redraw Gurdurr's overworld sprite by @artsquirrelb in [#8625](https://github.com/rh-hideout/pokeemerald-expansion/pull/8625)
+* Expansion OW sprites fix by @artsquirrelb in [#8633](https://github.com/rh-hideout/pokeemerald-expansion/pull/8633)
+* Fix the game not building with OW_POKEMON_OBJECT_EVENTS disabled by @kittenchilly in [#8654](https://github.com/rh-hideout/pokeemerald-expansion/pull/8654)
+* Fix the sprite visualizer not showing asymmetrical follower sprites by @kittenchilly in [#8643](https://github.com/rh-hideout/pokeemerald-expansion/pull/8643)
+* Fixes Kingambit evolution conditions by @PhallenTree in [#8689](https://github.com/rh-hideout/pokeemerald-expansion/pull/8689)
+
+## βοΈ Battle General βοΈ
+### Changed
+* Generational Move Changes by @amiosi in [#8405](https://github.com/rh-hideout/pokeemerald-expansion/pull/8405)
+* Fix Lunar Dance not checking PP by @AsparagusEduardo in [#8364](https://github.com/rh-hideout/pokeemerald-expansion/pull/8364)
+ - Added `EFFECT_LUNAR_DANCE`, which is the same as `EFFECT_HEALING_WISH` but also heals PP.
+* Fixes Instruct's message by @PhallenTree in [#8543](https://github.com/rh-hideout/pokeemerald-expansion/pull/8543)
+* Adds tests for Beak Blast not burning when the target is protected by @PhallenTree in [#8713](https://github.com/rh-hideout/pokeemerald-expansion/pull/8713)
+
+### Fixed
+* Multiple bugfixes (mostly Dancer/called moves) by @PhallenTree in [#8401](https://github.com/rh-hideout/pokeemerald-expansion/pull/8401)
+* Fix Costar not copying partner's critical hit boosts by @moostoet in [#8386](https://github.com/rh-hideout/pokeemerald-expansion/pull/8386)
+* Fix transform tint applying to every from change on reload by @FosterProgramming in [#8417](https://github.com/rh-hideout/pokeemerald-expansion/pull/8417)
+* Fix illusion not breaking properly when behind substitute by @FosterProgramming in [#8423](https://github.com/rh-hideout/pokeemerald-expansion/pull/8423)
+* Fix substitute/defog interactions by @FosterProgramming in [#8418](https://github.com/rh-hideout/pokeemerald-expansion/pull/8418)
+* Fixes Wind Power/Electromorphosis potentially boosting 2 electric attacks by @PhallenTree in [#8431](https://github.com/rh-hideout/pokeemerald-expansion/pull/8431)
+* Add missing breakable flags by @AlexOn1ine in [#8454](https://github.com/rh-hideout/pokeemerald-expansion/pull/8454)
+* Adds missing cases for Revenge and Assurance doubling power by @AlexOn1ine in [#8453](https://github.com/rh-hideout/pokeemerald-expansion/pull/8453)
+* Fix potential issue when destiny knot fail after proccing from cute charm by @FosterProgramming in [#8459](https://github.com/rh-hideout/pokeemerald-expansion/pull/8459)
+* Fix bug when changing forms multiple times by @FosterProgramming in [#8458](https://github.com/rh-hideout/pokeemerald-expansion/pull/8458)
+* Fix gimmick icon not appearing correctly in 1v2 by @FosterProgramming in [#8474](https://github.com/rh-hideout/pokeemerald-expansion/pull/8474)
+* Give dead mons priority over eggs when assigning battlers by @FosterProgramming in [#8473](https://github.com/rh-hideout/pokeemerald-expansion/pull/8473)
+* Environment Fixes by @amiosi in [#8471](https://github.com/rh-hideout/pokeemerald-expansion/pull/8471)
+* Fixes Disguise + Counter/Mirror Coat/Metal Burst + Disguise tests by @PhallenTree in [#8495](https://github.com/rh-hideout/pokeemerald-expansion/pull/8495)
+* Fix battler side status check in CalcCritChanceStage by @AlexOn1ine in [#8524](https://github.com/rh-hideout/pokeemerald-expansion/pull/8524)
+* Fix AI handling of Trick/Bestow and add comprehensive tests by @Cle-bit in [#8516](https://github.com/rh-hideout/pokeemerald-expansion/pull/8516)
+* Fix incorrect "last to move" check for Analytic, Snatch, and Magic Coat by @moostoet in [#8536](https://github.com/rh-hideout/pokeemerald-expansion/pull/8536)
+* Fix species gfx change in link battles by @AsparagusEduardo in [#8552](https://github.com/rh-hideout/pokeemerald-expansion/pull/8552)
+* Fixes Water Sport/Mud Sport when B_SPORT_TURNS < GEN_6 by @PhallenTree in [#8613](https://github.com/rh-hideout/pokeemerald-expansion/pull/8613)
+* fix poisons absorbing toxic spikes when fainting from other hazards by @spindrift64 in [#8644](https://github.com/rh-hideout/pokeemerald-expansion/pull/8644)
+* Fix incorrectly applied change in atkcanceler by @AlexOn1ine in [#8641](https://github.com/rh-hideout/pokeemerald-expansion/pull/8641)
+* Fix transform shininess in link battles by @AlexOn1ine in [#8554](https://github.com/rh-hideout/pokeemerald-expansion/pull/8554)
+* Fix Mimic trying to access MOVE_UNAVAILABLE in an incredibly small amount of possible scenarios by @hedara90 in [#8685](https://github.com/rh-hideout/pokeemerald-expansion/pull/8685)
+* Fix stat access for stats other than Attack in BS_GetStatValue by @hedara90 in [#8684](https://github.com/rh-hideout/pokeemerald-expansion/pull/8684)
+* Add tests for abilities that affect weather by @Cle-bit in [#8709](https://github.com/rh-hideout/pokeemerald-expansion/pull/8709)
+
+## π€Ή Moves π€Ή
+### Fixed
+* Fixes incorrect battler used in STRINGID_USEDINSTRUCTEDMOVE by @grintoul1 in [#8704](https://github.com/rh-hideout/pokeemerald-expansion/pull/8704)
+
+## π Abilities π
+### Fixed
+* Fix some bugs related to abilities by @Cle-bit in [#8695](https://github.com/rh-hideout/pokeemerald-expansion/pull/8695)
+
+## π€ Battle AI π€
+### Added
+* Respect beneficial status in healing moves and add tests by @Cle-bit in [#8478](https://github.com/rh-hideout/pokeemerald-expansion/pull/8478)
+
+### Fixed
+* fix (setup): ignore self-speed drop when checking speed control on KO threshold change by @ghostyboyy97 in [#8409](https://github.com/rh-hideout/pokeemerald-expansion/pull/8409)
+ - AI now correctly sees that moves like Hammer Arm are self-targeted speed drops on the player when evaluating speed control in setup scenarios.
+* fix (hazards): ghosty used rapid spin! ghosty blew the semicolon away! by @ghostyboyy97 in [#8433](https://github.com/rh-hideout/pokeemerald-expansion/pull/8433)
+ - The AI will now correctly see if the player can prevent hazards on moves with a secondary Stealth Rock effect.
+* Fix incorrect Spikes reference in switch AI by @Pawkkie in [#8510](https://github.com/rh-hideout/pokeemerald-expansion/pull/8510)
+* Fix AI handling of Trick/Bestow and add comprehensive tests by @Cle-bit in [#8516](https://github.com/rh-hideout/pokeemerald-expansion/pull/8516)
+* Fix: AI should not use Helping Hand on a partner with ABILITY_GOOD_AS_GOLD by @Cle-bit in [#8560](https://github.com/rh-hideout/pokeemerald-expansion/pull/8560)
+* Fixing crash from Last Resort with Normalium Z in certain damage thresholds by @surskitty in [#8583](https://github.com/rh-hideout/pokeemerald-expansion/pull/8583)
+* fix (scoring): AI_IsMoveEffectInPlus - AI should not see secondary effect of Sheer Force boosted moves as beneficial by @ghostyboyy97 in [#8579](https://github.com/rh-hideout/pokeemerald-expansion/pull/8579)
+ - The AI is now aware if its positive move effects are removed by Sheer Force when evaluating both guaranteed and secondary effects.
+* Fix type check in Magnet Rise AI by @grintoul1 in [#8609](https://github.com/rh-hideout/pokeemerald-expansion/pull/8609)
+* Fix Commander Dondozo Switching by @Pawkkie in [#8624](https://github.com/rh-hideout/pokeemerald-expansion/pull/8624)
+* Prevent AI seeing Pollen Puff damage on its ally by @grintoul1 in [#8693](https://github.com/rh-hideout/pokeemerald-expansion/pull/8693)
+
+## π§Ή Other Cleanup π§Ή
+* Include FEATURES.md in documentation by @AsparagusEduardo in [#8464](https://github.com/rh-hideout/pokeemerald-expansion/pull/8464)
+* Fix Lunar Dance not checking PP by @AsparagusEduardo in [#8364](https://github.com/rh-hideout/pokeemerald-expansion/pull/8364)
+ - Added `EFFECT_LUNAR_DANCE`, which is the same as `EFFECT_HEALING_WISH` but also heals PP.
+* Fixes Instruct's message by @PhallenTree in [#8543](https://github.com/rh-hideout/pokeemerald-expansion/pull/8543)
+* Fix `GEN_6_ORAS` definition by @AsparagusEduardo in [#8537](https://github.com/rh-hideout/pokeemerald-expansion/pull/8537)
+* Automatically fix TM numbers over 100 in Bag menu by @AsparagusEduardo in [#8531](https://github.com/rh-hideout/pokeemerald-expansion/pull/8531)
+* Add different Poke Balls to more Trainers by @amiosi in [#8467](https://github.com/rh-hideout/pokeemerald-expansion/pull/8467)
+* Remove another unused deoxys function by @FosterProgramming in [#8576](https://github.com/rh-hideout/pokeemerald-expansion/pull/8576)
+* Update maintainer list by @pkmnsnfrn in [#8638](https://github.com/rh-hideout/pokeemerald-expansion/pull/8638)
+
+## π§ͺ Test Runner π§ͺ
+### Changed
+* Renamed Config Test system to more general names by @AsparagusEduardo in [#7283](https://github.com/rh-hideout/pokeemerald-expansion/pull/7283)
+* Create missing hold effect test files by @AsparagusEduardo in [#8397](https://github.com/rh-hideout/pokeemerald-expansion/pull/8397)
+* `WITH_CONFIG` Refactor by @AsparagusEduardo in [#7584](https://github.com/rh-hideout/pokeemerald-expansion/pull/7584)
+ - Changed the way configs into the testing system to occupy less memory and make it easier to add more.
+ - Fixes inconsistency in enum names.
+ - Starts reserving the memory necessary to allow testing for all configs.
+* Add test for lum berry multi status by @FosterProgramming in [#8430](https://github.com/rh-hideout/pokeemerald-expansion/pull/8430)
+* Added missing Move Effect TODO tests - Volume G by @AsparagusEduardo in [#8428](https://github.com/rh-hideout/pokeemerald-expansion/pull/8428)
+* Fixed KNOWN_FAILING Dire Claw test by @AsparagusEduardo in [#8442](https://github.com/rh-hideout/pokeemerald-expansion/pull/8442)
+* Finished Defog tests by @AsparagusEduardo in [#8424](https://github.com/rh-hideout/pokeemerald-expansion/pull/8424)
+* Fix move anim tests sometimes leaking tasks by @hedara90 in [#8493](https://github.com/rh-hideout/pokeemerald-expansion/pull/8493)
+* Added tests for stat-changing moves by @AsparagusEduardo in [#8278](https://github.com/rh-hideout/pokeemerald-expansion/pull/8278)
+* Expanded `B_EXP_CATCH` test by @AsparagusEduardo in [#8527](https://github.com/rh-hideout/pokeemerald-expansion/pull/8527)
+* Fixed `AI_GetSwitchinWeather` not considering `CONFIG_SNOW_WARNING` by @AsparagusEduardo in [#8533](https://github.com/rh-hideout/pokeemerald-expansion/pull/8533)
+* Expanded `B_SANDSTORM_SPDEF_BOOST` test by @AsparagusEduardo in [#8532](https://github.com/rh-hideout/pokeemerald-expansion/pull/8532)
+* `B_SYMBIOSIS_GEMS` tests by @AsparagusEduardo in [#8534](https://github.com/rh-hideout/pokeemerald-expansion/pull/8534)
+* Added Ability TODO tests - Volume D by @AsparagusEduardo in [#8538](https://github.com/rh-hideout/pokeemerald-expansion/pull/8538)
+* Finished Wish tests by @AsparagusEduardo in [#8530](https://github.com/rh-hideout/pokeemerald-expansion/pull/8530)
+* Add SUB_HIT check to tests by @hedara90 in [#8413](https://github.com/rh-hideout/pokeemerald-expansion/pull/8413)
+* Added Light Ball tests by @AsparagusEduardo in [#8526](https://github.com/rh-hideout/pokeemerald-expansion/pull/8526)
+* Add debug print to show what move failed in Sheer Force tests by @hedara90 in [#8523](https://github.com/rh-hideout/pokeemerald-expansion/pull/8523)
+* `B_STURDY` config test by @AsparagusEduardo in [#8565](https://github.com/rh-hideout/pokeemerald-expansion/pull/8565)
+* `B_KLUTZ_FLING_INTERACTION` config test by @AsparagusEduardo in [#8568](https://github.com/rh-hideout/pokeemerald-expansion/pull/8568)
+* `B_IRON_BALL` config test by @AsparagusEduardo in [#8569](https://github.com/rh-hideout/pokeemerald-expansion/pull/8569)
+* `B_SYNCHRONIZE_TOXIC` config test by @AsparagusEduardo in [#8572](https://github.com/rh-hideout/pokeemerald-expansion/pull/8572)
+* `B_BURN_DAMAGE` config tests by @AsparagusEduardo in [#8574](https://github.com/rh-hideout/pokeemerald-expansion/pull/8574)
+* `B_REDIRECT_ABILITY_IMMUNITY` config tests by @AsparagusEduardo in [#8571](https://github.com/rh-hideout/pokeemerald-expansion/pull/8571)
+* `B_UPDATED_CONVERSION_2` config tests by @AsparagusEduardo in [#8573](https://github.com/rh-hideout/pokeemerald-expansion/pull/8573)
+* `B_TAILWIND_TURNS` config tests by @AsparagusEduardo in [#8592](https://github.com/rh-hideout/pokeemerald-expansion/pull/8592)
+* `B_BINDING_TURNS` config tests by @AsparagusEduardo in [#8595](https://github.com/rh-hideout/pokeemerald-expansion/pull/8595)
+* `B_SPORT_DMG_REDUCTION` config tests by @AsparagusEduardo in [#8593](https://github.com/rh-hideout/pokeemerald-expansion/pull/8593)
+* Add tests for Intrepid Sword and Dauntless Shield at max stages by @FosterProgramming in [#8610](https://github.com/rh-hideout/pokeemerald-expansion/pull/8610)
+* Add some missing tests for heatproof, thick fat and grudge by @izrofid in [#8705](https://github.com/rh-hideout/pokeemerald-expansion/pull/8705)
+* Adds tests for Beak Blast not burning when the target is protected by @PhallenTree in [#8713](https://github.com/rh-hideout/pokeemerald-expansion/pull/8713)
+
+### Fixed
+* Fix random function in testing trying to run trials when rng tag is 0/RNG_NONE by @FosterProgramming in [#8460](https://github.com/rh-hideout/pokeemerald-expansion/pull/8460)
+* Fix AI handling of Trick/Bestow and add comprehensive tests by @Cle-bit in [#8516](https://github.com/rh-hideout/pokeemerald-expansion/pull/8516)
+* Corrects test system Forced Ability handing for multi battles by @grintoul1 in [#8611](https://github.com/rh-hideout/pokeemerald-expansion/pull/8611)
+* Fix Status1 icon not being registered for recorded partner in tests by @AsparagusEduardo in [#8520](https://github.com/rh-hideout/pokeemerald-expansion/pull/8520)
+* Prevent AI seeing Pollen Puff damage on its ally by @grintoul1 in [#8693](https://github.com/rh-hideout/pokeemerald-expansion/pull/8693)
+* Fix some bugs related to abilities by @Cle-bit in [#8695](https://github.com/rh-hideout/pokeemerald-expansion/pull/8695)
+* Add tests for abilities that affect weather by @Cle-bit in [#8709](https://github.com/rh-hideout/pokeemerald-expansion/pull/8709)
+
+## π Documentation π
+* Fix docs not compiling by @hedara90 in [#8407](https://github.com/rh-hideout/pokeemerald-expansion/pull/8407)
+* Add a ci step that checks that documentation md files are mentioned in `docs/SUMMARY.md` by @rayrobdod in [#8439](https://github.com/rh-hideout/pokeemerald-expansion/pull/8439)
+* Include FEATURES.md in documentation by @AsparagusEduardo in [#8464](https://github.com/rh-hideout/pokeemerald-expansion/pull/8464)
+* Document magic number in `createspriteontargets` by @AsparagusEduardo in [#8551](https://github.com/rh-hideout/pokeemerald-expansion/pull/8551)
+* fix CONTRIBUTING.md by @u8-Salem in [#8577](https://github.com/rh-hideout/pokeemerald-expansion/pull/8577)
+* Update maintainer list by @pkmnsnfrn in [#8638](https://github.com/rh-hideout/pokeemerald-expansion/pull/8638)
+
+## π¦ Branch Synchronisation π¦
+### pret
+* 1st of January, 2026 in [#8737](https://github.com/rh-hideout/pokeemerald-expansion/pull/8737)
+ * Document UpdateLegendaryMarkingColor by @mrgriffin in [pret#2221](https://github.com/pret/pokeemerald/pull/2221)
+ * Fix some typos by @Jaizu in [pret#2219](https://github.com/pret/pokeemerald/pull/2219)
+ * Document m4a xcmd_0C by @ShinyDragonHunter in [pret#2218](https://github.com/pret/pokeemerald/pull/2218)
+ * Fixed pokenav glow issue by @shachar700 in [pret#2215](https://github.com/pret/pokeemerald/pull/2215)
+ * Added bugfix for missing no weather case in Cmd_weather_get by @Mitsunee in [pret#2203](https://github.com/pret/pokeemerald/pull/2203)
+ * Label unused functions in siirtc.c, m4a.c & rtc.c with the "UNUSED" attribute by @ShinyDragonHunter in [pret#2171](https://github.com/pret/pokeemerald/pull/2171)
+ * Add fix for possible crash when decompressing trainer back pics by @GriffinRichards in [pret#2074](https://github.com/pret/pokeemerald/pull/2074)
+ * Change rangeX and rangeY to u8 in ObjectEvent struct by @NTx86 in [pret#2176](https://github.com/pret/pokeemerald/pull/2176)
+ * Fix sScrollableMultichoice_ListMenuItem allocation size magic number by @NTx86 in [pret#2177](https://github.com/pret/pokeemerald/pull/2177)
+ * Name pokemon summary screen remaining unnamed symbols by @FosterProgramming in [pret#2178](https://github.com/pret/pokeemerald/pull/2178)
+ * Fix FLAG_REGISTERED_WALLY by @mrgriffin in [pret#2201](https://github.com/pret/pokeemerald/pull/2201)
+ * Display error for invalid hidden item flags by @GriffinRichards in [pret#2214](https://github.com/pret/pokeemerald/pull/2214)
+
+## New Contributors
+* @Stevebel made their first contribution in [#8541](https://github.com/rh-hideout/pokeemerald-expansion/pull/8541)
+* @DaniRainbow made their first contribution in [#8341](https://github.com/rh-hideout/pokeemerald-expansion/pull/8341)
+* @artsquirrelb made their first contribution in [#8625](https://github.com/rh-hideout/pokeemerald-expansion/pull/8625)
+* @izrofid made their first contribution in [#8705](https://github.com/rh-hideout/pokeemerald-expansion/pull/8705)
+
+**Full Changelog**: https://github.com/rh-hideout/pokeemerald-expansion/compare/expansion/1.14.1...expansion/1.14.2
+
+
+
+
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 11fc817a88..d067a608a9 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -445,7 +445,7 @@
#define FLAG_REGISTERED_TRENT (TRAINER_REGISTERED_FLAGS_START + REMATCH_TRENT)
#define FLAG_REGISTERED_SAWYER (TRAINER_REGISTERED_FLAGS_START + REMATCH_SAWYER)
#define FLAG_REGISTERED_KIRA_AND_DAN (TRAINER_REGISTERED_FLAGS_START + REMATCH_KIRA_AND_DAN)
-#define FLAG_REGISTERED_WALLY (TRAINER_REGISTERED_FLAGS_START + REMATCH_WALLY)
+#define FLAG_REGISTERED_WALLY (TRAINER_REGISTERED_FLAGS_START + REMATCH_WALLY_VR)
#define FLAG_REGISTERED_ROXANNE (TRAINER_REGISTERED_FLAGS_START + REMATCH_ROXANNE)
#define FLAG_REGISTERED_BRAWLY (TRAINER_REGISTERED_FLAGS_START + REMATCH_BRAWLY)
#define FLAG_REGISTERED_WATTSON (TRAINER_REGISTERED_FLAGS_START + REMATCH_WATTSON)
diff --git a/include/dexnav.h b/include/dexnav.h
index b1956349b3..82350f665a 100644
--- a/include/dexnav.h
+++ b/include/dexnav.h
@@ -69,14 +69,15 @@ enum EncounterType
#define DEXNAV_MASK_SPECIES 0x3FFF // First 14 bits
#define DEXNAV_MASK_ENVIRONMENT 0xC000 // Last two bit
-void EndDexNavSearch(u8 taskId);
+void EndDexNavSearch(void);
void Task_OpenDexNavFromStartMenu(u8 taskId);
-bool8 TryStartDexNavSearch(void);
+bool32 TryStartDexNavSearch(void);
void TryIncrementSpeciesSearchLevel(void);
void ResetDexNavSearch(void);
-bool8 TryFindHiddenPokemon(void);
+bool32 TryFindHiddenPokemon(void);
u32 CalculateDexNavShinyRolls(void);
void IncrementDexNavChain(void);
+bool32 OnStep_DexNavSearch(void);
extern u16 gDexNavSpecies;
diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h
index 5c3a0872ce..90e5e421a8 100644
--- a/include/gba/m4a_internal.h
+++ b/include/gba/m4a_internal.h
@@ -257,8 +257,8 @@ struct PokemonCrySong
u8 tieCmd; // 0x29
u8 tieKeyValue; // 0x2A
u8 tieVelocityValue; // 0x2B
- u8 unkCmd0C[2]; // 0x2C
- u16 unkCmd0CParam; // 0x2E
+ u8 xwaitCmd[2]; // 0x2C
+ u16 length; // 0x2E
u8 end[2]; // 0x30
};
@@ -306,7 +306,7 @@ struct MusicPlayerTrack
struct SoundChannel *chan;
struct ToneData tone;
u8 gap[10];
- u16 unk_3A;
+ u16 timer;
u32 unk_3C;
u8 *cmdPtr;
u8 *patternStack[3];
@@ -495,7 +495,7 @@ void ply_xiecv(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
void ply_xiecl(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
void ply_xleng(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
void ply_xswee(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
-void ply_xcmd_0C(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
+void ply_xwait(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
void ply_xcmd_0D(struct MusicPlayerInfo *, struct MusicPlayerTrack *);
#endif // GUARD_GBA_M4A_INTERNAL_H
diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h
index 5e0f99031d..2e162f2df9 100644
--- a/include/global.fieldmap.h
+++ b/include/global.fieldmap.h
@@ -232,8 +232,8 @@ struct ObjectEvent
u16 movementDirection:4;
struct __attribute__((packed))
{
- u16 rangeX:4;
- u16 rangeY:4;
+ u8 rangeX:4;
+ u8 rangeY:4;
} range;
/*0x1A*/ u8 fieldEffectSpriteId;
/*0x1B*/ u8 warpArrowSpriteId;
diff --git a/include/rtc.h b/include/rtc.h
index d0bb6a43de..56c30735e9 100644
--- a/include/rtc.h
+++ b/include/rtc.h
@@ -23,11 +23,6 @@ void RtcGetStatus(struct SiiRtcInfo *rtc);
void RtcGetRawInfo(struct SiiRtcInfo *rtc);
u16 RtcCheckInfo(struct SiiRtcInfo *rtc);
void RtcReset(void);
-void FormatDecimalTime(u8 *dest, s32 hour, s32 minute, s32 second);
-void FormatHexTime(u8 *dest, s32 hour, s32 minute, s32 second);
-void FormatHexRtcTime(u8 *dest);
-void FormatDecimalDate(u8 *dest, s32 year, s32 month, s32 day);
-void FormatHexDate(u8 *dest, s32 year, s32 month, s32 day);
void RtcCalcTimeDifference(struct SiiRtcInfo *rtc, struct Time *result, struct Time *t);
void RtcCalcLocalTime(void);
bool8 IsBetweenHours(s32 hours, s32 begin, s32 end);
diff --git a/include/siirtc.h b/include/siirtc.h
index 44dabfd11d..998f5b9623 100644
--- a/include/siirtc.h
+++ b/include/siirtc.h
@@ -28,6 +28,5 @@ bool8 SiiRtcGetDateTime(struct SiiRtcInfo *rtc);
bool8 SiiRtcSetDateTime(struct SiiRtcInfo *rtc);
bool8 SiiRtcGetTime(struct SiiRtcInfo *rtc);
bool8 SiiRtcSetTime(struct SiiRtcInfo *rtc);
-bool8 SiiRtcSetAlarm(struct SiiRtcInfo *rtc);
#endif // GUARD_RTC_H
diff --git a/sound/direct_sound_samples/bicycle_bell.wav b/sound/direct_sound_samples/bicycle_bell.wav
index 92f9634069..d07fcceecb 100644
Binary files a/sound/direct_sound_samples/bicycle_bell.wav and b/sound/direct_sound_samples/bicycle_bell.wav differ
diff --git a/sound/direct_sound_samples/classical_choir_voice_ahhs.wav b/sound/direct_sound_samples/classical_choir_voice_ahhs.wav
index 7e38d3a3f7..51f5656cc4 100644
Binary files a/sound/direct_sound_samples/classical_choir_voice_ahhs.wav and b/sound/direct_sound_samples/classical_choir_voice_ahhs.wav differ
diff --git a/sound/direct_sound_samples/cries/abra.wav b/sound/direct_sound_samples/cries/abra.wav
index 14aba2d7a5..34d645d9d3 100644
Binary files a/sound/direct_sound_samples/cries/abra.wav and b/sound/direct_sound_samples/cries/abra.wav differ
diff --git a/sound/direct_sound_samples/cries/absol.wav b/sound/direct_sound_samples/cries/absol.wav
index 4a90ec5c01..2da72c44a5 100644
Binary files a/sound/direct_sound_samples/cries/absol.wav and b/sound/direct_sound_samples/cries/absol.wav differ
diff --git a/sound/direct_sound_samples/cries/aerodactyl.wav b/sound/direct_sound_samples/cries/aerodactyl.wav
index 95518884b9..23479e7448 100644
Binary files a/sound/direct_sound_samples/cries/aerodactyl.wav and b/sound/direct_sound_samples/cries/aerodactyl.wav differ
diff --git a/sound/direct_sound_samples/cries/aggron.wav b/sound/direct_sound_samples/cries/aggron.wav
index bc75b2dbdd..1d22470368 100644
Binary files a/sound/direct_sound_samples/cries/aggron.wav and b/sound/direct_sound_samples/cries/aggron.wav differ
diff --git a/sound/direct_sound_samples/cries/aipom.wav b/sound/direct_sound_samples/cries/aipom.wav
index 4d7bc829cd..2fe15f8756 100644
Binary files a/sound/direct_sound_samples/cries/aipom.wav and b/sound/direct_sound_samples/cries/aipom.wav differ
diff --git a/sound/direct_sound_samples/cries/alakazam.wav b/sound/direct_sound_samples/cries/alakazam.wav
index f397363d15..911472dece 100644
Binary files a/sound/direct_sound_samples/cries/alakazam.wav and b/sound/direct_sound_samples/cries/alakazam.wav differ
diff --git a/sound/direct_sound_samples/cries/altaria.wav b/sound/direct_sound_samples/cries/altaria.wav
index ca35cbf519..08395d0d64 100644
Binary files a/sound/direct_sound_samples/cries/altaria.wav and b/sound/direct_sound_samples/cries/altaria.wav differ
diff --git a/sound/direct_sound_samples/cries/ampharos.wav b/sound/direct_sound_samples/cries/ampharos.wav
index 346b2aa48b..da0bd761ca 100644
Binary files a/sound/direct_sound_samples/cries/ampharos.wav and b/sound/direct_sound_samples/cries/ampharos.wav differ
diff --git a/sound/direct_sound_samples/cries/anorith.wav b/sound/direct_sound_samples/cries/anorith.wav
index 349ffacf04..5840c57697 100644
Binary files a/sound/direct_sound_samples/cries/anorith.wav and b/sound/direct_sound_samples/cries/anorith.wav differ
diff --git a/sound/direct_sound_samples/cries/arbok.wav b/sound/direct_sound_samples/cries/arbok.wav
index cebc9e3e56..a7b9de89e3 100644
Binary files a/sound/direct_sound_samples/cries/arbok.wav and b/sound/direct_sound_samples/cries/arbok.wav differ
diff --git a/sound/direct_sound_samples/cries/arcanine.wav b/sound/direct_sound_samples/cries/arcanine.wav
index f6e3e36801..65aa4e21fa 100644
Binary files a/sound/direct_sound_samples/cries/arcanine.wav and b/sound/direct_sound_samples/cries/arcanine.wav differ
diff --git a/sound/direct_sound_samples/cries/ariados.wav b/sound/direct_sound_samples/cries/ariados.wav
index f059bcfc93..168f97552f 100644
Binary files a/sound/direct_sound_samples/cries/ariados.wav and b/sound/direct_sound_samples/cries/ariados.wav differ
diff --git a/sound/direct_sound_samples/cries/armaldo.wav b/sound/direct_sound_samples/cries/armaldo.wav
index de11795664..aecebd18e9 100644
Binary files a/sound/direct_sound_samples/cries/armaldo.wav and b/sound/direct_sound_samples/cries/armaldo.wav differ
diff --git a/sound/direct_sound_samples/cries/aron.wav b/sound/direct_sound_samples/cries/aron.wav
index 35c69f8dc4..42860d46b3 100644
Binary files a/sound/direct_sound_samples/cries/aron.wav and b/sound/direct_sound_samples/cries/aron.wav differ
diff --git a/sound/direct_sound_samples/cries/articuno.wav b/sound/direct_sound_samples/cries/articuno.wav
index 348fbcd2f0..7ad8dfcd09 100644
Binary files a/sound/direct_sound_samples/cries/articuno.wav and b/sound/direct_sound_samples/cries/articuno.wav differ
diff --git a/sound/direct_sound_samples/cries/azumarill.wav b/sound/direct_sound_samples/cries/azumarill.wav
index f9e9ed89a1..331da9d90e 100644
Binary files a/sound/direct_sound_samples/cries/azumarill.wav and b/sound/direct_sound_samples/cries/azumarill.wav differ
diff --git a/sound/direct_sound_samples/cries/azurill.wav b/sound/direct_sound_samples/cries/azurill.wav
index 65fa56e65b..b3eda262b7 100644
Binary files a/sound/direct_sound_samples/cries/azurill.wav and b/sound/direct_sound_samples/cries/azurill.wav differ
diff --git a/sound/direct_sound_samples/cries/bagon.wav b/sound/direct_sound_samples/cries/bagon.wav
index af36a96eb8..2f36926eed 100644
Binary files a/sound/direct_sound_samples/cries/bagon.wav and b/sound/direct_sound_samples/cries/bagon.wav differ
diff --git a/sound/direct_sound_samples/cries/baltoy.wav b/sound/direct_sound_samples/cries/baltoy.wav
index 395954b565..59867a0ed5 100644
Binary files a/sound/direct_sound_samples/cries/baltoy.wav and b/sound/direct_sound_samples/cries/baltoy.wav differ
diff --git a/sound/direct_sound_samples/cries/banette.wav b/sound/direct_sound_samples/cries/banette.wav
index f030fb66c2..b2af33b685 100644
Binary files a/sound/direct_sound_samples/cries/banette.wav and b/sound/direct_sound_samples/cries/banette.wav differ
diff --git a/sound/direct_sound_samples/cries/barboach.wav b/sound/direct_sound_samples/cries/barboach.wav
index 40539ce514..a955c76c21 100644
Binary files a/sound/direct_sound_samples/cries/barboach.wav and b/sound/direct_sound_samples/cries/barboach.wav differ
diff --git a/sound/direct_sound_samples/cries/bayleef.wav b/sound/direct_sound_samples/cries/bayleef.wav
index 754e6e6e6e..6dbcaf918d 100644
Binary files a/sound/direct_sound_samples/cries/bayleef.wav and b/sound/direct_sound_samples/cries/bayleef.wav differ
diff --git a/sound/direct_sound_samples/cries/beautifly.wav b/sound/direct_sound_samples/cries/beautifly.wav
index f9c3f26a5b..248428abc5 100644
Binary files a/sound/direct_sound_samples/cries/beautifly.wav and b/sound/direct_sound_samples/cries/beautifly.wav differ
diff --git a/sound/direct_sound_samples/cries/beedrill.wav b/sound/direct_sound_samples/cries/beedrill.wav
index 6ba426baea..a3fa107ac1 100644
Binary files a/sound/direct_sound_samples/cries/beedrill.wav and b/sound/direct_sound_samples/cries/beedrill.wav differ
diff --git a/sound/direct_sound_samples/cries/beldum.wav b/sound/direct_sound_samples/cries/beldum.wav
index 5d6514af4c..427bb24771 100644
Binary files a/sound/direct_sound_samples/cries/beldum.wav and b/sound/direct_sound_samples/cries/beldum.wav differ
diff --git a/sound/direct_sound_samples/cries/bellossom.wav b/sound/direct_sound_samples/cries/bellossom.wav
index 71680c16b2..7d47d8a78f 100644
Binary files a/sound/direct_sound_samples/cries/bellossom.wav and b/sound/direct_sound_samples/cries/bellossom.wav differ
diff --git a/sound/direct_sound_samples/cries/bellsprout.wav b/sound/direct_sound_samples/cries/bellsprout.wav
index dc7da2e277..0f7a8ed63c 100644
Binary files a/sound/direct_sound_samples/cries/bellsprout.wav and b/sound/direct_sound_samples/cries/bellsprout.wav differ
diff --git a/sound/direct_sound_samples/cries/blastoise.wav b/sound/direct_sound_samples/cries/blastoise.wav
index fecb7733b4..bcd068dd87 100644
Binary files a/sound/direct_sound_samples/cries/blastoise.wav and b/sound/direct_sound_samples/cries/blastoise.wav differ
diff --git a/sound/direct_sound_samples/cries/blaziken.wav b/sound/direct_sound_samples/cries/blaziken.wav
index b7b663d8ec..dd570e0bb0 100644
Binary files a/sound/direct_sound_samples/cries/blaziken.wav and b/sound/direct_sound_samples/cries/blaziken.wav differ
diff --git a/sound/direct_sound_samples/cries/blissey.wav b/sound/direct_sound_samples/cries/blissey.wav
index a5012768c1..5cd44825d6 100644
Binary files a/sound/direct_sound_samples/cries/blissey.wav and b/sound/direct_sound_samples/cries/blissey.wav differ
diff --git a/sound/direct_sound_samples/cries/breloom.wav b/sound/direct_sound_samples/cries/breloom.wav
index 49f57f53ec..226a65193f 100644
Binary files a/sound/direct_sound_samples/cries/breloom.wav and b/sound/direct_sound_samples/cries/breloom.wav differ
diff --git a/sound/direct_sound_samples/cries/bulbasaur.wav b/sound/direct_sound_samples/cries/bulbasaur.wav
index 77a2d1bd1c..d081218bae 100644
Binary files a/sound/direct_sound_samples/cries/bulbasaur.wav and b/sound/direct_sound_samples/cries/bulbasaur.wav differ
diff --git a/sound/direct_sound_samples/cries/butterfree.wav b/sound/direct_sound_samples/cries/butterfree.wav
index 796a1afa9a..19e781569c 100644
Binary files a/sound/direct_sound_samples/cries/butterfree.wav and b/sound/direct_sound_samples/cries/butterfree.wav differ
diff --git a/sound/direct_sound_samples/cries/cacnea.wav b/sound/direct_sound_samples/cries/cacnea.wav
index b2786069b6..dcf4323c4b 100644
Binary files a/sound/direct_sound_samples/cries/cacnea.wav and b/sound/direct_sound_samples/cries/cacnea.wav differ
diff --git a/sound/direct_sound_samples/cries/cacturne.wav b/sound/direct_sound_samples/cries/cacturne.wav
index 34c4525227..bc54463170 100644
Binary files a/sound/direct_sound_samples/cries/cacturne.wav and b/sound/direct_sound_samples/cries/cacturne.wav differ
diff --git a/sound/direct_sound_samples/cries/camerupt.wav b/sound/direct_sound_samples/cries/camerupt.wav
index 95fdce3575..bef89f41d0 100644
Binary files a/sound/direct_sound_samples/cries/camerupt.wav and b/sound/direct_sound_samples/cries/camerupt.wav differ
diff --git a/sound/direct_sound_samples/cries/carvanha.wav b/sound/direct_sound_samples/cries/carvanha.wav
index ae10c3b10c..07a2f9d455 100644
Binary files a/sound/direct_sound_samples/cries/carvanha.wav and b/sound/direct_sound_samples/cries/carvanha.wav differ
diff --git a/sound/direct_sound_samples/cries/cascoon.wav b/sound/direct_sound_samples/cries/cascoon.wav
index fff0be6815..3e3daf6260 100644
Binary files a/sound/direct_sound_samples/cries/cascoon.wav and b/sound/direct_sound_samples/cries/cascoon.wav differ
diff --git a/sound/direct_sound_samples/cries/castform.wav b/sound/direct_sound_samples/cries/castform.wav
index 83748d45b8..8b50b35d98 100644
Binary files a/sound/direct_sound_samples/cries/castform.wav and b/sound/direct_sound_samples/cries/castform.wav differ
diff --git a/sound/direct_sound_samples/cries/caterpie.wav b/sound/direct_sound_samples/cries/caterpie.wav
index ccdf1ba1ac..c507364462 100644
Binary files a/sound/direct_sound_samples/cries/caterpie.wav and b/sound/direct_sound_samples/cries/caterpie.wav differ
diff --git a/sound/direct_sound_samples/cries/celebi.wav b/sound/direct_sound_samples/cries/celebi.wav
index e217a99e81..c5a560e4b2 100644
Binary files a/sound/direct_sound_samples/cries/celebi.wav and b/sound/direct_sound_samples/cries/celebi.wav differ
diff --git a/sound/direct_sound_samples/cries/chansey.wav b/sound/direct_sound_samples/cries/chansey.wav
index 62d8e6cd9f..418acc387e 100644
Binary files a/sound/direct_sound_samples/cries/chansey.wav and b/sound/direct_sound_samples/cries/chansey.wav differ
diff --git a/sound/direct_sound_samples/cries/charizard.wav b/sound/direct_sound_samples/cries/charizard.wav
index fbbf3c555d..fd748e8ee7 100644
Binary files a/sound/direct_sound_samples/cries/charizard.wav and b/sound/direct_sound_samples/cries/charizard.wav differ
diff --git a/sound/direct_sound_samples/cries/charmander.wav b/sound/direct_sound_samples/cries/charmander.wav
index 3d82aca2fa..09762f2103 100644
Binary files a/sound/direct_sound_samples/cries/charmander.wav and b/sound/direct_sound_samples/cries/charmander.wav differ
diff --git a/sound/direct_sound_samples/cries/charmeleon.wav b/sound/direct_sound_samples/cries/charmeleon.wav
index a491f0586e..a5289e2b01 100644
Binary files a/sound/direct_sound_samples/cries/charmeleon.wav and b/sound/direct_sound_samples/cries/charmeleon.wav differ
diff --git a/sound/direct_sound_samples/cries/chikorita.wav b/sound/direct_sound_samples/cries/chikorita.wav
index 65cb0c1765..485f364e72 100644
Binary files a/sound/direct_sound_samples/cries/chikorita.wav and b/sound/direct_sound_samples/cries/chikorita.wav differ
diff --git a/sound/direct_sound_samples/cries/chimecho.wav b/sound/direct_sound_samples/cries/chimecho.wav
index a063bf739e..2ffa593507 100644
Binary files a/sound/direct_sound_samples/cries/chimecho.wav and b/sound/direct_sound_samples/cries/chimecho.wav differ
diff --git a/sound/direct_sound_samples/cries/chinchou.wav b/sound/direct_sound_samples/cries/chinchou.wav
index 8822996828..4fe6c6a772 100644
Binary files a/sound/direct_sound_samples/cries/chinchou.wav and b/sound/direct_sound_samples/cries/chinchou.wav differ
diff --git a/sound/direct_sound_samples/cries/clamperl.wav b/sound/direct_sound_samples/cries/clamperl.wav
index 6615de8779..5e80ebab66 100644
Binary files a/sound/direct_sound_samples/cries/clamperl.wav and b/sound/direct_sound_samples/cries/clamperl.wav differ
diff --git a/sound/direct_sound_samples/cries/claydol.wav b/sound/direct_sound_samples/cries/claydol.wav
index 037a9a4063..27b7ed5765 100644
Binary files a/sound/direct_sound_samples/cries/claydol.wav and b/sound/direct_sound_samples/cries/claydol.wav differ
diff --git a/sound/direct_sound_samples/cries/clefable.wav b/sound/direct_sound_samples/cries/clefable.wav
index 09b0d19b86..602577cab0 100644
Binary files a/sound/direct_sound_samples/cries/clefable.wav and b/sound/direct_sound_samples/cries/clefable.wav differ
diff --git a/sound/direct_sound_samples/cries/clefairy.wav b/sound/direct_sound_samples/cries/clefairy.wav
index b447b700cd..2214cb445b 100644
Binary files a/sound/direct_sound_samples/cries/clefairy.wav and b/sound/direct_sound_samples/cries/clefairy.wav differ
diff --git a/sound/direct_sound_samples/cries/cleffa.wav b/sound/direct_sound_samples/cries/cleffa.wav
index 53d18df415..946a75959e 100644
Binary files a/sound/direct_sound_samples/cries/cleffa.wav and b/sound/direct_sound_samples/cries/cleffa.wav differ
diff --git a/sound/direct_sound_samples/cries/cloyster.wav b/sound/direct_sound_samples/cries/cloyster.wav
index 4fc766ae19..acd5f7fc30 100644
Binary files a/sound/direct_sound_samples/cries/cloyster.wav and b/sound/direct_sound_samples/cries/cloyster.wav differ
diff --git a/sound/direct_sound_samples/cries/combusken.wav b/sound/direct_sound_samples/cries/combusken.wav
index 8da9de64a1..6c23eb499c 100644
Binary files a/sound/direct_sound_samples/cries/combusken.wav and b/sound/direct_sound_samples/cries/combusken.wav differ
diff --git a/sound/direct_sound_samples/cries/corphish.wav b/sound/direct_sound_samples/cries/corphish.wav
index 990029d333..72af4a9e0c 100644
Binary files a/sound/direct_sound_samples/cries/corphish.wav and b/sound/direct_sound_samples/cries/corphish.wav differ
diff --git a/sound/direct_sound_samples/cries/corsola.wav b/sound/direct_sound_samples/cries/corsola.wav
index 890208bc73..c40b570a14 100644
Binary files a/sound/direct_sound_samples/cries/corsola.wav and b/sound/direct_sound_samples/cries/corsola.wav differ
diff --git a/sound/direct_sound_samples/cries/cradily.wav b/sound/direct_sound_samples/cries/cradily.wav
index bb9d5bd425..ba4f755c7f 100644
Binary files a/sound/direct_sound_samples/cries/cradily.wav and b/sound/direct_sound_samples/cries/cradily.wav differ
diff --git a/sound/direct_sound_samples/cries/crawdaunt.wav b/sound/direct_sound_samples/cries/crawdaunt.wav
index e270a31791..2ce6659a3f 100644
Binary files a/sound/direct_sound_samples/cries/crawdaunt.wav and b/sound/direct_sound_samples/cries/crawdaunt.wav differ
diff --git a/sound/direct_sound_samples/cries/crobat.wav b/sound/direct_sound_samples/cries/crobat.wav
index fdad8d4a63..9000b8c299 100644
Binary files a/sound/direct_sound_samples/cries/crobat.wav and b/sound/direct_sound_samples/cries/crobat.wav differ
diff --git a/sound/direct_sound_samples/cries/croconaw.wav b/sound/direct_sound_samples/cries/croconaw.wav
index deb2a70035..9fd775fc0c 100644
Binary files a/sound/direct_sound_samples/cries/croconaw.wav and b/sound/direct_sound_samples/cries/croconaw.wav differ
diff --git a/sound/direct_sound_samples/cries/cubone.wav b/sound/direct_sound_samples/cries/cubone.wav
index b198c25403..44b97c4bb2 100644
Binary files a/sound/direct_sound_samples/cries/cubone.wav and b/sound/direct_sound_samples/cries/cubone.wav differ
diff --git a/sound/direct_sound_samples/cries/cyndaquil.wav b/sound/direct_sound_samples/cries/cyndaquil.wav
index 87921c52eb..23e9b3273e 100644
Binary files a/sound/direct_sound_samples/cries/cyndaquil.wav and b/sound/direct_sound_samples/cries/cyndaquil.wav differ
diff --git a/sound/direct_sound_samples/cries/delcatty.wav b/sound/direct_sound_samples/cries/delcatty.wav
index dce5e73b7a..7807052669 100644
Binary files a/sound/direct_sound_samples/cries/delcatty.wav and b/sound/direct_sound_samples/cries/delcatty.wav differ
diff --git a/sound/direct_sound_samples/cries/delibird.wav b/sound/direct_sound_samples/cries/delibird.wav
index 7ccf645de6..f4b27e7326 100644
Binary files a/sound/direct_sound_samples/cries/delibird.wav and b/sound/direct_sound_samples/cries/delibird.wav differ
diff --git a/sound/direct_sound_samples/cries/deoxys.wav b/sound/direct_sound_samples/cries/deoxys.wav
index 7ed0f65cc1..c5943318db 100644
Binary files a/sound/direct_sound_samples/cries/deoxys.wav and b/sound/direct_sound_samples/cries/deoxys.wav differ
diff --git a/sound/direct_sound_samples/cries/dewgong.wav b/sound/direct_sound_samples/cries/dewgong.wav
index 24af04411a..c99284027e 100644
Binary files a/sound/direct_sound_samples/cries/dewgong.wav and b/sound/direct_sound_samples/cries/dewgong.wav differ
diff --git a/sound/direct_sound_samples/cries/diglett.wav b/sound/direct_sound_samples/cries/diglett.wav
index 8eecd3bedb..ba098f64a6 100644
Binary files a/sound/direct_sound_samples/cries/diglett.wav and b/sound/direct_sound_samples/cries/diglett.wav differ
diff --git a/sound/direct_sound_samples/cries/ditto.wav b/sound/direct_sound_samples/cries/ditto.wav
index bbd9d02804..b26b2d56ca 100644
Binary files a/sound/direct_sound_samples/cries/ditto.wav and b/sound/direct_sound_samples/cries/ditto.wav differ
diff --git a/sound/direct_sound_samples/cries/dodrio.wav b/sound/direct_sound_samples/cries/dodrio.wav
index e43a8a9770..c23d097d82 100644
Binary files a/sound/direct_sound_samples/cries/dodrio.wav and b/sound/direct_sound_samples/cries/dodrio.wav differ
diff --git a/sound/direct_sound_samples/cries/doduo.wav b/sound/direct_sound_samples/cries/doduo.wav
index 065e9fd62f..3d7bad39e7 100644
Binary files a/sound/direct_sound_samples/cries/doduo.wav and b/sound/direct_sound_samples/cries/doduo.wav differ
diff --git a/sound/direct_sound_samples/cries/donphan.wav b/sound/direct_sound_samples/cries/donphan.wav
index ba6caf5bd8..64a69a34f6 100644
Binary files a/sound/direct_sound_samples/cries/donphan.wav and b/sound/direct_sound_samples/cries/donphan.wav differ
diff --git a/sound/direct_sound_samples/cries/dragonair.wav b/sound/direct_sound_samples/cries/dragonair.wav
index 3fd2efee29..ab902f69d5 100644
Binary files a/sound/direct_sound_samples/cries/dragonair.wav and b/sound/direct_sound_samples/cries/dragonair.wav differ
diff --git a/sound/direct_sound_samples/cries/dragonite.wav b/sound/direct_sound_samples/cries/dragonite.wav
index 8517e0da0f..98f044cc37 100644
Binary files a/sound/direct_sound_samples/cries/dragonite.wav and b/sound/direct_sound_samples/cries/dragonite.wav differ
diff --git a/sound/direct_sound_samples/cries/dratini.wav b/sound/direct_sound_samples/cries/dratini.wav
index 711c6b9a30..ab59d4c180 100644
Binary files a/sound/direct_sound_samples/cries/dratini.wav and b/sound/direct_sound_samples/cries/dratini.wav differ
diff --git a/sound/direct_sound_samples/cries/drowzee.wav b/sound/direct_sound_samples/cries/drowzee.wav
index 4132109663..3294d5f83d 100644
Binary files a/sound/direct_sound_samples/cries/drowzee.wav and b/sound/direct_sound_samples/cries/drowzee.wav differ
diff --git a/sound/direct_sound_samples/cries/dugtrio.wav b/sound/direct_sound_samples/cries/dugtrio.wav
index d159a2fae0..59be4c5a7f 100644
Binary files a/sound/direct_sound_samples/cries/dugtrio.wav and b/sound/direct_sound_samples/cries/dugtrio.wav differ
diff --git a/sound/direct_sound_samples/cries/dunsparce.wav b/sound/direct_sound_samples/cries/dunsparce.wav
index 5154546d10..b3bc21a042 100644
Binary files a/sound/direct_sound_samples/cries/dunsparce.wav and b/sound/direct_sound_samples/cries/dunsparce.wav differ
diff --git a/sound/direct_sound_samples/cries/dusclops.wav b/sound/direct_sound_samples/cries/dusclops.wav
index 81353887b9..0ae486972e 100644
Binary files a/sound/direct_sound_samples/cries/dusclops.wav and b/sound/direct_sound_samples/cries/dusclops.wav differ
diff --git a/sound/direct_sound_samples/cries/duskull.wav b/sound/direct_sound_samples/cries/duskull.wav
index eba8fc3ff1..7ef72a3975 100644
Binary files a/sound/direct_sound_samples/cries/duskull.wav and b/sound/direct_sound_samples/cries/duskull.wav differ
diff --git a/sound/direct_sound_samples/cries/dustox.wav b/sound/direct_sound_samples/cries/dustox.wav
index 42f23c1289..7647585626 100644
Binary files a/sound/direct_sound_samples/cries/dustox.wav and b/sound/direct_sound_samples/cries/dustox.wav differ
diff --git a/sound/direct_sound_samples/cries/eevee.wav b/sound/direct_sound_samples/cries/eevee.wav
index e21ce1f0e7..833528278b 100644
Binary files a/sound/direct_sound_samples/cries/eevee.wav and b/sound/direct_sound_samples/cries/eevee.wav differ
diff --git a/sound/direct_sound_samples/cries/ekans.wav b/sound/direct_sound_samples/cries/ekans.wav
index 2ae3e4a180..5a75158471 100644
Binary files a/sound/direct_sound_samples/cries/ekans.wav and b/sound/direct_sound_samples/cries/ekans.wav differ
diff --git a/sound/direct_sound_samples/cries/electabuzz.wav b/sound/direct_sound_samples/cries/electabuzz.wav
index b555d6631a..8443823fb7 100644
Binary files a/sound/direct_sound_samples/cries/electabuzz.wav and b/sound/direct_sound_samples/cries/electabuzz.wav differ
diff --git a/sound/direct_sound_samples/cries/electrike.wav b/sound/direct_sound_samples/cries/electrike.wav
index 8a210865bf..9b09301ff4 100644
Binary files a/sound/direct_sound_samples/cries/electrike.wav and b/sound/direct_sound_samples/cries/electrike.wav differ
diff --git a/sound/direct_sound_samples/cries/electrode.wav b/sound/direct_sound_samples/cries/electrode.wav
index 8f28521464..4ad346759d 100644
Binary files a/sound/direct_sound_samples/cries/electrode.wav and b/sound/direct_sound_samples/cries/electrode.wav differ
diff --git a/sound/direct_sound_samples/cries/elekid.wav b/sound/direct_sound_samples/cries/elekid.wav
index 82a9a2f675..2491113869 100644
Binary files a/sound/direct_sound_samples/cries/elekid.wav and b/sound/direct_sound_samples/cries/elekid.wav differ
diff --git a/sound/direct_sound_samples/cries/entei.wav b/sound/direct_sound_samples/cries/entei.wav
index cf7e9c0c2f..cce2db4b03 100644
Binary files a/sound/direct_sound_samples/cries/entei.wav and b/sound/direct_sound_samples/cries/entei.wav differ
diff --git a/sound/direct_sound_samples/cries/espeon.wav b/sound/direct_sound_samples/cries/espeon.wav
index 20743268e1..8456a350d6 100644
Binary files a/sound/direct_sound_samples/cries/espeon.wav and b/sound/direct_sound_samples/cries/espeon.wav differ
diff --git a/sound/direct_sound_samples/cries/exeggcute.wav b/sound/direct_sound_samples/cries/exeggcute.wav
index bfd825f800..865aedc1f5 100644
Binary files a/sound/direct_sound_samples/cries/exeggcute.wav and b/sound/direct_sound_samples/cries/exeggcute.wav differ
diff --git a/sound/direct_sound_samples/cries/exeggutor.wav b/sound/direct_sound_samples/cries/exeggutor.wav
index f2a0d6bedc..831eb36cd9 100644
Binary files a/sound/direct_sound_samples/cries/exeggutor.wav and b/sound/direct_sound_samples/cries/exeggutor.wav differ
diff --git a/sound/direct_sound_samples/cries/exploud.wav b/sound/direct_sound_samples/cries/exploud.wav
index 9b3cbf896b..1b81512ce3 100644
Binary files a/sound/direct_sound_samples/cries/exploud.wav and b/sound/direct_sound_samples/cries/exploud.wav differ
diff --git a/sound/direct_sound_samples/cries/farfetchd.wav b/sound/direct_sound_samples/cries/farfetchd.wav
index d090445d41..294322e04c 100644
Binary files a/sound/direct_sound_samples/cries/farfetchd.wav and b/sound/direct_sound_samples/cries/farfetchd.wav differ
diff --git a/sound/direct_sound_samples/cries/fearow.wav b/sound/direct_sound_samples/cries/fearow.wav
index 6ef7eadee9..d2ab288dd1 100644
Binary files a/sound/direct_sound_samples/cries/fearow.wav and b/sound/direct_sound_samples/cries/fearow.wav differ
diff --git a/sound/direct_sound_samples/cries/feebas.wav b/sound/direct_sound_samples/cries/feebas.wav
index a8f60a55f6..1e9037b7ec 100644
Binary files a/sound/direct_sound_samples/cries/feebas.wav and b/sound/direct_sound_samples/cries/feebas.wav differ
diff --git a/sound/direct_sound_samples/cries/feraligatr.wav b/sound/direct_sound_samples/cries/feraligatr.wav
index d1da192f90..f17eec474b 100644
Binary files a/sound/direct_sound_samples/cries/feraligatr.wav and b/sound/direct_sound_samples/cries/feraligatr.wav differ
diff --git a/sound/direct_sound_samples/cries/flaaffy.wav b/sound/direct_sound_samples/cries/flaaffy.wav
index a0cf3df062..9459c8e06d 100644
Binary files a/sound/direct_sound_samples/cries/flaaffy.wav and b/sound/direct_sound_samples/cries/flaaffy.wav differ
diff --git a/sound/direct_sound_samples/cries/flareon.wav b/sound/direct_sound_samples/cries/flareon.wav
index 6bd51168b3..d138a75e03 100644
Binary files a/sound/direct_sound_samples/cries/flareon.wav and b/sound/direct_sound_samples/cries/flareon.wav differ
diff --git a/sound/direct_sound_samples/cries/flygon.wav b/sound/direct_sound_samples/cries/flygon.wav
index b6c5d90ba0..2d64627eee 100644
Binary files a/sound/direct_sound_samples/cries/flygon.wav and b/sound/direct_sound_samples/cries/flygon.wav differ
diff --git a/sound/direct_sound_samples/cries/forretress.wav b/sound/direct_sound_samples/cries/forretress.wav
index 3f704f65b5..008140c1ec 100644
Binary files a/sound/direct_sound_samples/cries/forretress.wav and b/sound/direct_sound_samples/cries/forretress.wav differ
diff --git a/sound/direct_sound_samples/cries/furret.wav b/sound/direct_sound_samples/cries/furret.wav
index e3e4ec5842..605eeec172 100644
Binary files a/sound/direct_sound_samples/cries/furret.wav and b/sound/direct_sound_samples/cries/furret.wav differ
diff --git a/sound/direct_sound_samples/cries/gardevoir.wav b/sound/direct_sound_samples/cries/gardevoir.wav
index bd3a99acc2..a40ef12626 100644
Binary files a/sound/direct_sound_samples/cries/gardevoir.wav and b/sound/direct_sound_samples/cries/gardevoir.wav differ
diff --git a/sound/direct_sound_samples/cries/gastly.wav b/sound/direct_sound_samples/cries/gastly.wav
index 1bc2ff9667..7d9c25de30 100644
Binary files a/sound/direct_sound_samples/cries/gastly.wav and b/sound/direct_sound_samples/cries/gastly.wav differ
diff --git a/sound/direct_sound_samples/cries/gengar.wav b/sound/direct_sound_samples/cries/gengar.wav
index 9e8c24c28b..74ec623df3 100644
Binary files a/sound/direct_sound_samples/cries/gengar.wav and b/sound/direct_sound_samples/cries/gengar.wav differ
diff --git a/sound/direct_sound_samples/cries/geodude.wav b/sound/direct_sound_samples/cries/geodude.wav
index f355fc7e1a..0c1336a8e2 100644
Binary files a/sound/direct_sound_samples/cries/geodude.wav and b/sound/direct_sound_samples/cries/geodude.wav differ
diff --git a/sound/direct_sound_samples/cries/girafarig.wav b/sound/direct_sound_samples/cries/girafarig.wav
index d78162a29f..089b8bb045 100644
Binary files a/sound/direct_sound_samples/cries/girafarig.wav and b/sound/direct_sound_samples/cries/girafarig.wav differ
diff --git a/sound/direct_sound_samples/cries/glalie.wav b/sound/direct_sound_samples/cries/glalie.wav
index bf35bd147b..6f81e7a2a4 100644
Binary files a/sound/direct_sound_samples/cries/glalie.wav and b/sound/direct_sound_samples/cries/glalie.wav differ
diff --git a/sound/direct_sound_samples/cries/gligar.wav b/sound/direct_sound_samples/cries/gligar.wav
index 8fa3efa6b1..fa49131d87 100644
Binary files a/sound/direct_sound_samples/cries/gligar.wav and b/sound/direct_sound_samples/cries/gligar.wav differ
diff --git a/sound/direct_sound_samples/cries/gloom.wav b/sound/direct_sound_samples/cries/gloom.wav
index abc408a0f7..ce3da97083 100644
Binary files a/sound/direct_sound_samples/cries/gloom.wav and b/sound/direct_sound_samples/cries/gloom.wav differ
diff --git a/sound/direct_sound_samples/cries/golbat.wav b/sound/direct_sound_samples/cries/golbat.wav
index 20d2ecf5c9..4f098e5f2c 100644
Binary files a/sound/direct_sound_samples/cries/golbat.wav and b/sound/direct_sound_samples/cries/golbat.wav differ
diff --git a/sound/direct_sound_samples/cries/goldeen.wav b/sound/direct_sound_samples/cries/goldeen.wav
index 342df710c9..ec3b48ad44 100644
Binary files a/sound/direct_sound_samples/cries/goldeen.wav and b/sound/direct_sound_samples/cries/goldeen.wav differ
diff --git a/sound/direct_sound_samples/cries/golduck.wav b/sound/direct_sound_samples/cries/golduck.wav
index a9bf91b2da..bc6cc95af9 100644
Binary files a/sound/direct_sound_samples/cries/golduck.wav and b/sound/direct_sound_samples/cries/golduck.wav differ
diff --git a/sound/direct_sound_samples/cries/golem.wav b/sound/direct_sound_samples/cries/golem.wav
index 17ed6128e4..9a26adcc94 100644
Binary files a/sound/direct_sound_samples/cries/golem.wav and b/sound/direct_sound_samples/cries/golem.wav differ
diff --git a/sound/direct_sound_samples/cries/gorebyss.wav b/sound/direct_sound_samples/cries/gorebyss.wav
index 3d375f6dcf..cd14f26dd5 100644
Binary files a/sound/direct_sound_samples/cries/gorebyss.wav and b/sound/direct_sound_samples/cries/gorebyss.wav differ
diff --git a/sound/direct_sound_samples/cries/granbull.wav b/sound/direct_sound_samples/cries/granbull.wav
index 959793b724..faffbc5629 100644
Binary files a/sound/direct_sound_samples/cries/granbull.wav and b/sound/direct_sound_samples/cries/granbull.wav differ
diff --git a/sound/direct_sound_samples/cries/graveler.wav b/sound/direct_sound_samples/cries/graveler.wav
index 6b8591406f..e5a2e9d19e 100644
Binary files a/sound/direct_sound_samples/cries/graveler.wav and b/sound/direct_sound_samples/cries/graveler.wav differ
diff --git a/sound/direct_sound_samples/cries/grimer.wav b/sound/direct_sound_samples/cries/grimer.wav
index 092dfeed61..8ae15f4063 100644
Binary files a/sound/direct_sound_samples/cries/grimer.wav and b/sound/direct_sound_samples/cries/grimer.wav differ
diff --git a/sound/direct_sound_samples/cries/groudon.wav b/sound/direct_sound_samples/cries/groudon.wav
index 680d0ec047..0571205792 100644
Binary files a/sound/direct_sound_samples/cries/groudon.wav and b/sound/direct_sound_samples/cries/groudon.wav differ
diff --git a/sound/direct_sound_samples/cries/grovyle.wav b/sound/direct_sound_samples/cries/grovyle.wav
index 7e2f1acd0f..6ae949e00a 100644
Binary files a/sound/direct_sound_samples/cries/grovyle.wav and b/sound/direct_sound_samples/cries/grovyle.wav differ
diff --git a/sound/direct_sound_samples/cries/growlithe.wav b/sound/direct_sound_samples/cries/growlithe.wav
index 3f72ea6f97..96ea21385a 100644
Binary files a/sound/direct_sound_samples/cries/growlithe.wav and b/sound/direct_sound_samples/cries/growlithe.wav differ
diff --git a/sound/direct_sound_samples/cries/grumpig.wav b/sound/direct_sound_samples/cries/grumpig.wav
index e9c8157e0f..99f7684d15 100644
Binary files a/sound/direct_sound_samples/cries/grumpig.wav and b/sound/direct_sound_samples/cries/grumpig.wav differ
diff --git a/sound/direct_sound_samples/cries/gulpin.wav b/sound/direct_sound_samples/cries/gulpin.wav
index d1ab06b6b0..af1c2dd99d 100644
Binary files a/sound/direct_sound_samples/cries/gulpin.wav and b/sound/direct_sound_samples/cries/gulpin.wav differ
diff --git a/sound/direct_sound_samples/cries/gyarados.wav b/sound/direct_sound_samples/cries/gyarados.wav
index 6a4124085e..b76327da26 100644
Binary files a/sound/direct_sound_samples/cries/gyarados.wav and b/sound/direct_sound_samples/cries/gyarados.wav differ
diff --git a/sound/direct_sound_samples/cries/hariyama.wav b/sound/direct_sound_samples/cries/hariyama.wav
index 5567aae3a1..879f7d1e1d 100644
Binary files a/sound/direct_sound_samples/cries/hariyama.wav and b/sound/direct_sound_samples/cries/hariyama.wav differ
diff --git a/sound/direct_sound_samples/cries/haunter.wav b/sound/direct_sound_samples/cries/haunter.wav
index e22b1cfc13..999a0d02d1 100644
Binary files a/sound/direct_sound_samples/cries/haunter.wav and b/sound/direct_sound_samples/cries/haunter.wav differ
diff --git a/sound/direct_sound_samples/cries/heracross.wav b/sound/direct_sound_samples/cries/heracross.wav
index ed68648ba8..1482499085 100644
Binary files a/sound/direct_sound_samples/cries/heracross.wav and b/sound/direct_sound_samples/cries/heracross.wav differ
diff --git a/sound/direct_sound_samples/cries/hitmonchan.wav b/sound/direct_sound_samples/cries/hitmonchan.wav
index 806d206d35..130169e6e1 100644
Binary files a/sound/direct_sound_samples/cries/hitmonchan.wav and b/sound/direct_sound_samples/cries/hitmonchan.wav differ
diff --git a/sound/direct_sound_samples/cries/hitmonlee.wav b/sound/direct_sound_samples/cries/hitmonlee.wav
index e40d852b99..9ec63520a9 100644
Binary files a/sound/direct_sound_samples/cries/hitmonlee.wav and b/sound/direct_sound_samples/cries/hitmonlee.wav differ
diff --git a/sound/direct_sound_samples/cries/hitmontop.wav b/sound/direct_sound_samples/cries/hitmontop.wav
index 652222dc6c..fa26c699b8 100644
Binary files a/sound/direct_sound_samples/cries/hitmontop.wav and b/sound/direct_sound_samples/cries/hitmontop.wav differ
diff --git a/sound/direct_sound_samples/cries/ho_oh.wav b/sound/direct_sound_samples/cries/ho_oh.wav
index acf8812532..e098f9806b 100644
Binary files a/sound/direct_sound_samples/cries/ho_oh.wav and b/sound/direct_sound_samples/cries/ho_oh.wav differ
diff --git a/sound/direct_sound_samples/cries/hoothoot.wav b/sound/direct_sound_samples/cries/hoothoot.wav
index e7ca2f5780..303fddb12b 100644
Binary files a/sound/direct_sound_samples/cries/hoothoot.wav and b/sound/direct_sound_samples/cries/hoothoot.wav differ
diff --git a/sound/direct_sound_samples/cries/hoppip.wav b/sound/direct_sound_samples/cries/hoppip.wav
index ab14fdaec7..525c720e93 100644
Binary files a/sound/direct_sound_samples/cries/hoppip.wav and b/sound/direct_sound_samples/cries/hoppip.wav differ
diff --git a/sound/direct_sound_samples/cries/horsea.wav b/sound/direct_sound_samples/cries/horsea.wav
index ab67381edd..26efb0ca79 100644
Binary files a/sound/direct_sound_samples/cries/horsea.wav and b/sound/direct_sound_samples/cries/horsea.wav differ
diff --git a/sound/direct_sound_samples/cries/houndoom.wav b/sound/direct_sound_samples/cries/houndoom.wav
index a34e4cda2b..1add97cb82 100644
Binary files a/sound/direct_sound_samples/cries/houndoom.wav and b/sound/direct_sound_samples/cries/houndoom.wav differ
diff --git a/sound/direct_sound_samples/cries/houndour.wav b/sound/direct_sound_samples/cries/houndour.wav
index 51310524a8..ef683e68f6 100644
Binary files a/sound/direct_sound_samples/cries/houndour.wav and b/sound/direct_sound_samples/cries/houndour.wav differ
diff --git a/sound/direct_sound_samples/cries/huntail.wav b/sound/direct_sound_samples/cries/huntail.wav
index b2e3f99853..9c4e7af021 100644
Binary files a/sound/direct_sound_samples/cries/huntail.wav and b/sound/direct_sound_samples/cries/huntail.wav differ
diff --git a/sound/direct_sound_samples/cries/hypno.wav b/sound/direct_sound_samples/cries/hypno.wav
index 4369110c2c..3b1e2dab6e 100644
Binary files a/sound/direct_sound_samples/cries/hypno.wav and b/sound/direct_sound_samples/cries/hypno.wav differ
diff --git a/sound/direct_sound_samples/cries/igglybuff.wav b/sound/direct_sound_samples/cries/igglybuff.wav
index efec9bf4c4..0b8a7dfcaf 100644
Binary files a/sound/direct_sound_samples/cries/igglybuff.wav and b/sound/direct_sound_samples/cries/igglybuff.wav differ
diff --git a/sound/direct_sound_samples/cries/illumise.wav b/sound/direct_sound_samples/cries/illumise.wav
index 6570492f79..f0234b92e4 100644
Binary files a/sound/direct_sound_samples/cries/illumise.wav and b/sound/direct_sound_samples/cries/illumise.wav differ
diff --git a/sound/direct_sound_samples/cries/ivysaur.wav b/sound/direct_sound_samples/cries/ivysaur.wav
index 07d10c0e8d..1110a63382 100644
Binary files a/sound/direct_sound_samples/cries/ivysaur.wav and b/sound/direct_sound_samples/cries/ivysaur.wav differ
diff --git a/sound/direct_sound_samples/cries/jigglypuff.wav b/sound/direct_sound_samples/cries/jigglypuff.wav
index d3e925fe94..4b8d4ccc8f 100644
Binary files a/sound/direct_sound_samples/cries/jigglypuff.wav and b/sound/direct_sound_samples/cries/jigglypuff.wav differ
diff --git a/sound/direct_sound_samples/cries/jirachi.wav b/sound/direct_sound_samples/cries/jirachi.wav
index 43850cbaa0..f548e50bf7 100644
Binary files a/sound/direct_sound_samples/cries/jirachi.wav and b/sound/direct_sound_samples/cries/jirachi.wav differ
diff --git a/sound/direct_sound_samples/cries/jolteon.wav b/sound/direct_sound_samples/cries/jolteon.wav
index 8c5f8bea4c..61b5cb1604 100644
Binary files a/sound/direct_sound_samples/cries/jolteon.wav and b/sound/direct_sound_samples/cries/jolteon.wav differ
diff --git a/sound/direct_sound_samples/cries/jumpluff.wav b/sound/direct_sound_samples/cries/jumpluff.wav
index cce951b1f7..d58b0b11fa 100644
Binary files a/sound/direct_sound_samples/cries/jumpluff.wav and b/sound/direct_sound_samples/cries/jumpluff.wav differ
diff --git a/sound/direct_sound_samples/cries/jynx.wav b/sound/direct_sound_samples/cries/jynx.wav
index faacb1e957..bb833749e4 100644
Binary files a/sound/direct_sound_samples/cries/jynx.wav and b/sound/direct_sound_samples/cries/jynx.wav differ
diff --git a/sound/direct_sound_samples/cries/kabuto.wav b/sound/direct_sound_samples/cries/kabuto.wav
index 448b178914..598845740a 100644
Binary files a/sound/direct_sound_samples/cries/kabuto.wav and b/sound/direct_sound_samples/cries/kabuto.wav differ
diff --git a/sound/direct_sound_samples/cries/kabutops.wav b/sound/direct_sound_samples/cries/kabutops.wav
index 0c7b74fea3..9cc76e4536 100644
Binary files a/sound/direct_sound_samples/cries/kabutops.wav and b/sound/direct_sound_samples/cries/kabutops.wav differ
diff --git a/sound/direct_sound_samples/cries/kadabra.wav b/sound/direct_sound_samples/cries/kadabra.wav
index d7030b27a2..f2e3788e4b 100644
Binary files a/sound/direct_sound_samples/cries/kadabra.wav and b/sound/direct_sound_samples/cries/kadabra.wav differ
diff --git a/sound/direct_sound_samples/cries/kakuna.wav b/sound/direct_sound_samples/cries/kakuna.wav
index f147428e38..0a7b43f946 100644
Binary files a/sound/direct_sound_samples/cries/kakuna.wav and b/sound/direct_sound_samples/cries/kakuna.wav differ
diff --git a/sound/direct_sound_samples/cries/kangaskhan.wav b/sound/direct_sound_samples/cries/kangaskhan.wav
index eaf7244627..32a12fcbc2 100644
Binary files a/sound/direct_sound_samples/cries/kangaskhan.wav and b/sound/direct_sound_samples/cries/kangaskhan.wav differ
diff --git a/sound/direct_sound_samples/cries/kecleon.wav b/sound/direct_sound_samples/cries/kecleon.wav
index 96ab74ff2b..5d16ee144b 100644
Binary files a/sound/direct_sound_samples/cries/kecleon.wav and b/sound/direct_sound_samples/cries/kecleon.wav differ
diff --git a/sound/direct_sound_samples/cries/kingdra.wav b/sound/direct_sound_samples/cries/kingdra.wav
index 2a47d1479d..2263e72cbd 100644
Binary files a/sound/direct_sound_samples/cries/kingdra.wav and b/sound/direct_sound_samples/cries/kingdra.wav differ
diff --git a/sound/direct_sound_samples/cries/kingler.wav b/sound/direct_sound_samples/cries/kingler.wav
index 62418456d0..6d3f58e8cf 100644
Binary files a/sound/direct_sound_samples/cries/kingler.wav and b/sound/direct_sound_samples/cries/kingler.wav differ
diff --git a/sound/direct_sound_samples/cries/kirlia.wav b/sound/direct_sound_samples/cries/kirlia.wav
index c7dd3078c8..36706ca6f2 100644
Binary files a/sound/direct_sound_samples/cries/kirlia.wav and b/sound/direct_sound_samples/cries/kirlia.wav differ
diff --git a/sound/direct_sound_samples/cries/koffing.wav b/sound/direct_sound_samples/cries/koffing.wav
index afa520c03e..5fd7b7d4a6 100644
Binary files a/sound/direct_sound_samples/cries/koffing.wav and b/sound/direct_sound_samples/cries/koffing.wav differ
diff --git a/sound/direct_sound_samples/cries/krabby.wav b/sound/direct_sound_samples/cries/krabby.wav
index 0072ea777a..31644bacc1 100644
Binary files a/sound/direct_sound_samples/cries/krabby.wav and b/sound/direct_sound_samples/cries/krabby.wav differ
diff --git a/sound/direct_sound_samples/cries/kyogre.wav b/sound/direct_sound_samples/cries/kyogre.wav
index 00db984c66..d73951bb6d 100644
Binary files a/sound/direct_sound_samples/cries/kyogre.wav and b/sound/direct_sound_samples/cries/kyogre.wav differ
diff --git a/sound/direct_sound_samples/cries/lairon.wav b/sound/direct_sound_samples/cries/lairon.wav
index 574ffac745..1d82d06545 100644
Binary files a/sound/direct_sound_samples/cries/lairon.wav and b/sound/direct_sound_samples/cries/lairon.wav differ
diff --git a/sound/direct_sound_samples/cries/lanturn.wav b/sound/direct_sound_samples/cries/lanturn.wav
index 6d8b21dd99..3b68f58ad9 100644
Binary files a/sound/direct_sound_samples/cries/lanturn.wav and b/sound/direct_sound_samples/cries/lanturn.wav differ
diff --git a/sound/direct_sound_samples/cries/lapras.wav b/sound/direct_sound_samples/cries/lapras.wav
index d79819a971..2c0714995f 100644
Binary files a/sound/direct_sound_samples/cries/lapras.wav and b/sound/direct_sound_samples/cries/lapras.wav differ
diff --git a/sound/direct_sound_samples/cries/larvitar.wav b/sound/direct_sound_samples/cries/larvitar.wav
index e0e22cd6f5..6ef5d45663 100644
Binary files a/sound/direct_sound_samples/cries/larvitar.wav and b/sound/direct_sound_samples/cries/larvitar.wav differ
diff --git a/sound/direct_sound_samples/cries/latias.wav b/sound/direct_sound_samples/cries/latias.wav
index 87e6205ada..dac6c463fd 100644
Binary files a/sound/direct_sound_samples/cries/latias.wav and b/sound/direct_sound_samples/cries/latias.wav differ
diff --git a/sound/direct_sound_samples/cries/latios.wav b/sound/direct_sound_samples/cries/latios.wav
index 1409dba11a..f07efb29fc 100644
Binary files a/sound/direct_sound_samples/cries/latios.wav and b/sound/direct_sound_samples/cries/latios.wav differ
diff --git a/sound/direct_sound_samples/cries/ledian.wav b/sound/direct_sound_samples/cries/ledian.wav
index 554829075d..075bb15f07 100644
Binary files a/sound/direct_sound_samples/cries/ledian.wav and b/sound/direct_sound_samples/cries/ledian.wav differ
diff --git a/sound/direct_sound_samples/cries/ledyba.wav b/sound/direct_sound_samples/cries/ledyba.wav
index e539c3d60a..95d9dff2e8 100644
Binary files a/sound/direct_sound_samples/cries/ledyba.wav and b/sound/direct_sound_samples/cries/ledyba.wav differ
diff --git a/sound/direct_sound_samples/cries/lickitung.wav b/sound/direct_sound_samples/cries/lickitung.wav
index 33a0ab5ff3..89808fd3dc 100644
Binary files a/sound/direct_sound_samples/cries/lickitung.wav and b/sound/direct_sound_samples/cries/lickitung.wav differ
diff --git a/sound/direct_sound_samples/cries/lileep.wav b/sound/direct_sound_samples/cries/lileep.wav
index f890086d37..5fd0ba803f 100644
Binary files a/sound/direct_sound_samples/cries/lileep.wav and b/sound/direct_sound_samples/cries/lileep.wav differ
diff --git a/sound/direct_sound_samples/cries/linoone.wav b/sound/direct_sound_samples/cries/linoone.wav
index b8c191bcd0..a182b4f329 100644
Binary files a/sound/direct_sound_samples/cries/linoone.wav and b/sound/direct_sound_samples/cries/linoone.wav differ
diff --git a/sound/direct_sound_samples/cries/lombre.wav b/sound/direct_sound_samples/cries/lombre.wav
index 6d7888619e..f7c36acddd 100644
Binary files a/sound/direct_sound_samples/cries/lombre.wav and b/sound/direct_sound_samples/cries/lombre.wav differ
diff --git a/sound/direct_sound_samples/cries/lotad.wav b/sound/direct_sound_samples/cries/lotad.wav
index 8e28b10f32..ee0cb6f69a 100644
Binary files a/sound/direct_sound_samples/cries/lotad.wav and b/sound/direct_sound_samples/cries/lotad.wav differ
diff --git a/sound/direct_sound_samples/cries/loudred.wav b/sound/direct_sound_samples/cries/loudred.wav
index ff8b2c8104..06495bf49c 100644
Binary files a/sound/direct_sound_samples/cries/loudred.wav and b/sound/direct_sound_samples/cries/loudred.wav differ
diff --git a/sound/direct_sound_samples/cries/ludicolo.wav b/sound/direct_sound_samples/cries/ludicolo.wav
index 420ac54595..fa300674f9 100644
Binary files a/sound/direct_sound_samples/cries/ludicolo.wav and b/sound/direct_sound_samples/cries/ludicolo.wav differ
diff --git a/sound/direct_sound_samples/cries/lugia.wav b/sound/direct_sound_samples/cries/lugia.wav
index 855920839e..1a1c46ef41 100644
Binary files a/sound/direct_sound_samples/cries/lugia.wav and b/sound/direct_sound_samples/cries/lugia.wav differ
diff --git a/sound/direct_sound_samples/cries/lunatone.wav b/sound/direct_sound_samples/cries/lunatone.wav
index 8edd9a17e1..afd9473b8f 100644
Binary files a/sound/direct_sound_samples/cries/lunatone.wav and b/sound/direct_sound_samples/cries/lunatone.wav differ
diff --git a/sound/direct_sound_samples/cries/luvdisc.wav b/sound/direct_sound_samples/cries/luvdisc.wav
index da1c84b80e..c4261d76ea 100644
Binary files a/sound/direct_sound_samples/cries/luvdisc.wav and b/sound/direct_sound_samples/cries/luvdisc.wav differ
diff --git a/sound/direct_sound_samples/cries/machamp.wav b/sound/direct_sound_samples/cries/machamp.wav
index b7e091dc72..9535dcbab7 100644
Binary files a/sound/direct_sound_samples/cries/machamp.wav and b/sound/direct_sound_samples/cries/machamp.wav differ
diff --git a/sound/direct_sound_samples/cries/machoke.wav b/sound/direct_sound_samples/cries/machoke.wav
index 5e0fc98bf1..de76612e35 100644
Binary files a/sound/direct_sound_samples/cries/machoke.wav and b/sound/direct_sound_samples/cries/machoke.wav differ
diff --git a/sound/direct_sound_samples/cries/machop.wav b/sound/direct_sound_samples/cries/machop.wav
index a34a0ccc80..2e5af3e55f 100644
Binary files a/sound/direct_sound_samples/cries/machop.wav and b/sound/direct_sound_samples/cries/machop.wav differ
diff --git a/sound/direct_sound_samples/cries/magby.wav b/sound/direct_sound_samples/cries/magby.wav
index 8b083206c2..c8129db69e 100644
Binary files a/sound/direct_sound_samples/cries/magby.wav and b/sound/direct_sound_samples/cries/magby.wav differ
diff --git a/sound/direct_sound_samples/cries/magcargo.wav b/sound/direct_sound_samples/cries/magcargo.wav
index 6d97b90c1b..1bdd97d3ba 100644
Binary files a/sound/direct_sound_samples/cries/magcargo.wav and b/sound/direct_sound_samples/cries/magcargo.wav differ
diff --git a/sound/direct_sound_samples/cries/magikarp.wav b/sound/direct_sound_samples/cries/magikarp.wav
index 6c665d9e75..115fa23f27 100644
Binary files a/sound/direct_sound_samples/cries/magikarp.wav and b/sound/direct_sound_samples/cries/magikarp.wav differ
diff --git a/sound/direct_sound_samples/cries/magmar.wav b/sound/direct_sound_samples/cries/magmar.wav
index 902c15bf2e..6a3621c3ca 100644
Binary files a/sound/direct_sound_samples/cries/magmar.wav and b/sound/direct_sound_samples/cries/magmar.wav differ
diff --git a/sound/direct_sound_samples/cries/magnemite.wav b/sound/direct_sound_samples/cries/magnemite.wav
index 4fdc93f296..7dd1d550b9 100644
Binary files a/sound/direct_sound_samples/cries/magnemite.wav and b/sound/direct_sound_samples/cries/magnemite.wav differ
diff --git a/sound/direct_sound_samples/cries/magneton.wav b/sound/direct_sound_samples/cries/magneton.wav
index d69c276443..12513343d8 100644
Binary files a/sound/direct_sound_samples/cries/magneton.wav and b/sound/direct_sound_samples/cries/magneton.wav differ
diff --git a/sound/direct_sound_samples/cries/makuhita.wav b/sound/direct_sound_samples/cries/makuhita.wav
index 79b055ef98..6df74f2c11 100644
Binary files a/sound/direct_sound_samples/cries/makuhita.wav and b/sound/direct_sound_samples/cries/makuhita.wav differ
diff --git a/sound/direct_sound_samples/cries/manectric.wav b/sound/direct_sound_samples/cries/manectric.wav
index 939fc16093..db806c46af 100644
Binary files a/sound/direct_sound_samples/cries/manectric.wav and b/sound/direct_sound_samples/cries/manectric.wav differ
diff --git a/sound/direct_sound_samples/cries/mankey.wav b/sound/direct_sound_samples/cries/mankey.wav
index ab15ac9af6..9cf9f48668 100644
Binary files a/sound/direct_sound_samples/cries/mankey.wav and b/sound/direct_sound_samples/cries/mankey.wav differ
diff --git a/sound/direct_sound_samples/cries/mantine.wav b/sound/direct_sound_samples/cries/mantine.wav
index 919242e8fe..bc6f17e5e4 100644
Binary files a/sound/direct_sound_samples/cries/mantine.wav and b/sound/direct_sound_samples/cries/mantine.wav differ
diff --git a/sound/direct_sound_samples/cries/mareep.wav b/sound/direct_sound_samples/cries/mareep.wav
index 386925f5d5..b0a523d7d7 100644
Binary files a/sound/direct_sound_samples/cries/mareep.wav and b/sound/direct_sound_samples/cries/mareep.wav differ
diff --git a/sound/direct_sound_samples/cries/marill.wav b/sound/direct_sound_samples/cries/marill.wav
index 93201d1c51..8842fb0183 100644
Binary files a/sound/direct_sound_samples/cries/marill.wav and b/sound/direct_sound_samples/cries/marill.wav differ
diff --git a/sound/direct_sound_samples/cries/marowak.wav b/sound/direct_sound_samples/cries/marowak.wav
index 7bddb4b347..6701514d21 100644
Binary files a/sound/direct_sound_samples/cries/marowak.wav and b/sound/direct_sound_samples/cries/marowak.wav differ
diff --git a/sound/direct_sound_samples/cries/marshtomp.wav b/sound/direct_sound_samples/cries/marshtomp.wav
index 0caa959e29..ed906f7d1a 100644
Binary files a/sound/direct_sound_samples/cries/marshtomp.wav and b/sound/direct_sound_samples/cries/marshtomp.wav differ
diff --git a/sound/direct_sound_samples/cries/masquerain.wav b/sound/direct_sound_samples/cries/masquerain.wav
index b0c5372ae3..d7f5c700a3 100644
Binary files a/sound/direct_sound_samples/cries/masquerain.wav and b/sound/direct_sound_samples/cries/masquerain.wav differ
diff --git a/sound/direct_sound_samples/cries/mawile.wav b/sound/direct_sound_samples/cries/mawile.wav
index 9c54d40a48..bf0eb2e0a3 100644
Binary files a/sound/direct_sound_samples/cries/mawile.wav and b/sound/direct_sound_samples/cries/mawile.wav differ
diff --git a/sound/direct_sound_samples/cries/medicham.wav b/sound/direct_sound_samples/cries/medicham.wav
index be3668b173..e0853bfa77 100644
Binary files a/sound/direct_sound_samples/cries/medicham.wav and b/sound/direct_sound_samples/cries/medicham.wav differ
diff --git a/sound/direct_sound_samples/cries/meditite.wav b/sound/direct_sound_samples/cries/meditite.wav
index 23db4f297f..08675830b5 100644
Binary files a/sound/direct_sound_samples/cries/meditite.wav and b/sound/direct_sound_samples/cries/meditite.wav differ
diff --git a/sound/direct_sound_samples/cries/meganium.wav b/sound/direct_sound_samples/cries/meganium.wav
index 8f7920e937..2aaf870343 100644
Binary files a/sound/direct_sound_samples/cries/meganium.wav and b/sound/direct_sound_samples/cries/meganium.wav differ
diff --git a/sound/direct_sound_samples/cries/meowth.wav b/sound/direct_sound_samples/cries/meowth.wav
index bebca1c27e..a3b97ff953 100644
Binary files a/sound/direct_sound_samples/cries/meowth.wav and b/sound/direct_sound_samples/cries/meowth.wav differ
diff --git a/sound/direct_sound_samples/cries/metagross.wav b/sound/direct_sound_samples/cries/metagross.wav
index 5112b3afa8..35aa032c40 100644
Binary files a/sound/direct_sound_samples/cries/metagross.wav and b/sound/direct_sound_samples/cries/metagross.wav differ
diff --git a/sound/direct_sound_samples/cries/metang.wav b/sound/direct_sound_samples/cries/metang.wav
index 700759d207..d9203a3301 100644
Binary files a/sound/direct_sound_samples/cries/metang.wav and b/sound/direct_sound_samples/cries/metang.wav differ
diff --git a/sound/direct_sound_samples/cries/metapod.wav b/sound/direct_sound_samples/cries/metapod.wav
index 6df3b6aefb..1ef8849fce 100644
Binary files a/sound/direct_sound_samples/cries/metapod.wav and b/sound/direct_sound_samples/cries/metapod.wav differ
diff --git a/sound/direct_sound_samples/cries/mew.wav b/sound/direct_sound_samples/cries/mew.wav
index e75fa95f35..067c71b85e 100644
Binary files a/sound/direct_sound_samples/cries/mew.wav and b/sound/direct_sound_samples/cries/mew.wav differ
diff --git a/sound/direct_sound_samples/cries/mewtwo.wav b/sound/direct_sound_samples/cries/mewtwo.wav
index 947984f672..554564c041 100644
Binary files a/sound/direct_sound_samples/cries/mewtwo.wav and b/sound/direct_sound_samples/cries/mewtwo.wav differ
diff --git a/sound/direct_sound_samples/cries/mightyena.wav b/sound/direct_sound_samples/cries/mightyena.wav
index 0149976e2b..4c818b12b7 100644
Binary files a/sound/direct_sound_samples/cries/mightyena.wav and b/sound/direct_sound_samples/cries/mightyena.wav differ
diff --git a/sound/direct_sound_samples/cries/milotic.wav b/sound/direct_sound_samples/cries/milotic.wav
index 20db44692f..016657130f 100644
Binary files a/sound/direct_sound_samples/cries/milotic.wav and b/sound/direct_sound_samples/cries/milotic.wav differ
diff --git a/sound/direct_sound_samples/cries/miltank.wav b/sound/direct_sound_samples/cries/miltank.wav
index 5f51f525bb..949fd2812b 100644
Binary files a/sound/direct_sound_samples/cries/miltank.wav and b/sound/direct_sound_samples/cries/miltank.wav differ
diff --git a/sound/direct_sound_samples/cries/minun.wav b/sound/direct_sound_samples/cries/minun.wav
index 9e9a62f7e8..80d608c673 100644
Binary files a/sound/direct_sound_samples/cries/minun.wav and b/sound/direct_sound_samples/cries/minun.wav differ
diff --git a/sound/direct_sound_samples/cries/misdreavus.wav b/sound/direct_sound_samples/cries/misdreavus.wav
index f632986da9..cce18c27bb 100644
Binary files a/sound/direct_sound_samples/cries/misdreavus.wav and b/sound/direct_sound_samples/cries/misdreavus.wav differ
diff --git a/sound/direct_sound_samples/cries/moltres.wav b/sound/direct_sound_samples/cries/moltres.wav
index 7173a8cad4..c9c65b334d 100644
Binary files a/sound/direct_sound_samples/cries/moltres.wav and b/sound/direct_sound_samples/cries/moltres.wav differ
diff --git a/sound/direct_sound_samples/cries/mr_mime.wav b/sound/direct_sound_samples/cries/mr_mime.wav
index 23cf310532..a8121159bc 100644
Binary files a/sound/direct_sound_samples/cries/mr_mime.wav and b/sound/direct_sound_samples/cries/mr_mime.wav differ
diff --git a/sound/direct_sound_samples/cries/mudkip.wav b/sound/direct_sound_samples/cries/mudkip.wav
index c965efe30c..bcb613e41c 100644
Binary files a/sound/direct_sound_samples/cries/mudkip.wav and b/sound/direct_sound_samples/cries/mudkip.wav differ
diff --git a/sound/direct_sound_samples/cries/muk.wav b/sound/direct_sound_samples/cries/muk.wav
index 27cd6bdeb1..3cb2813826 100644
Binary files a/sound/direct_sound_samples/cries/muk.wav and b/sound/direct_sound_samples/cries/muk.wav differ
diff --git a/sound/direct_sound_samples/cries/murkrow.wav b/sound/direct_sound_samples/cries/murkrow.wav
index 5da336fa90..1ba1f55149 100644
Binary files a/sound/direct_sound_samples/cries/murkrow.wav and b/sound/direct_sound_samples/cries/murkrow.wav differ
diff --git a/sound/direct_sound_samples/cries/natu.wav b/sound/direct_sound_samples/cries/natu.wav
index 4a2c853178..3cf1fc15ba 100644
Binary files a/sound/direct_sound_samples/cries/natu.wav and b/sound/direct_sound_samples/cries/natu.wav differ
diff --git a/sound/direct_sound_samples/cries/nidoking.wav b/sound/direct_sound_samples/cries/nidoking.wav
index 556b20bdac..4a068c9092 100644
Binary files a/sound/direct_sound_samples/cries/nidoking.wav and b/sound/direct_sound_samples/cries/nidoking.wav differ
diff --git a/sound/direct_sound_samples/cries/nidoqueen.wav b/sound/direct_sound_samples/cries/nidoqueen.wav
index 7c23623a17..2835f1b366 100644
Binary files a/sound/direct_sound_samples/cries/nidoqueen.wav and b/sound/direct_sound_samples/cries/nidoqueen.wav differ
diff --git a/sound/direct_sound_samples/cries/nidoran_f.wav b/sound/direct_sound_samples/cries/nidoran_f.wav
index 2997c2b579..3d50a69174 100644
Binary files a/sound/direct_sound_samples/cries/nidoran_f.wav and b/sound/direct_sound_samples/cries/nidoran_f.wav differ
diff --git a/sound/direct_sound_samples/cries/nidoran_m.wav b/sound/direct_sound_samples/cries/nidoran_m.wav
index 160ab71e7f..94fcf0e5bd 100644
Binary files a/sound/direct_sound_samples/cries/nidoran_m.wav and b/sound/direct_sound_samples/cries/nidoran_m.wav differ
diff --git a/sound/direct_sound_samples/cries/nidorina.wav b/sound/direct_sound_samples/cries/nidorina.wav
index a46c416701..a2e1aa9d63 100644
Binary files a/sound/direct_sound_samples/cries/nidorina.wav and b/sound/direct_sound_samples/cries/nidorina.wav differ
diff --git a/sound/direct_sound_samples/cries/nidorino.wav b/sound/direct_sound_samples/cries/nidorino.wav
index 38db59c2f1..f4dea729c2 100644
Binary files a/sound/direct_sound_samples/cries/nidorino.wav and b/sound/direct_sound_samples/cries/nidorino.wav differ
diff --git a/sound/direct_sound_samples/cries/nincada.wav b/sound/direct_sound_samples/cries/nincada.wav
index dd5feb818d..ec9b888583 100644
Binary files a/sound/direct_sound_samples/cries/nincada.wav and b/sound/direct_sound_samples/cries/nincada.wav differ
diff --git a/sound/direct_sound_samples/cries/ninetales.wav b/sound/direct_sound_samples/cries/ninetales.wav
index f84b874364..0e5939ed20 100644
Binary files a/sound/direct_sound_samples/cries/ninetales.wav and b/sound/direct_sound_samples/cries/ninetales.wav differ
diff --git a/sound/direct_sound_samples/cries/ninjask.wav b/sound/direct_sound_samples/cries/ninjask.wav
index b61f4d37f5..20b496bc32 100644
Binary files a/sound/direct_sound_samples/cries/ninjask.wav and b/sound/direct_sound_samples/cries/ninjask.wav differ
diff --git a/sound/direct_sound_samples/cries/noctowl.wav b/sound/direct_sound_samples/cries/noctowl.wav
index ab705b6f2c..64f38a0443 100644
Binary files a/sound/direct_sound_samples/cries/noctowl.wav and b/sound/direct_sound_samples/cries/noctowl.wav differ
diff --git a/sound/direct_sound_samples/cries/nosepass.wav b/sound/direct_sound_samples/cries/nosepass.wav
index 1e15fb10d3..996cfbe7d7 100644
Binary files a/sound/direct_sound_samples/cries/nosepass.wav and b/sound/direct_sound_samples/cries/nosepass.wav differ
diff --git a/sound/direct_sound_samples/cries/numel.wav b/sound/direct_sound_samples/cries/numel.wav
index 2d2d16f021..a0ae3ebd82 100644
Binary files a/sound/direct_sound_samples/cries/numel.wav and b/sound/direct_sound_samples/cries/numel.wav differ
diff --git a/sound/direct_sound_samples/cries/nuzleaf.wav b/sound/direct_sound_samples/cries/nuzleaf.wav
index 5efb6e8068..60d0809efb 100644
Binary files a/sound/direct_sound_samples/cries/nuzleaf.wav and b/sound/direct_sound_samples/cries/nuzleaf.wav differ
diff --git a/sound/direct_sound_samples/cries/octillery.wav b/sound/direct_sound_samples/cries/octillery.wav
index 190d42c674..11bc1361d4 100644
Binary files a/sound/direct_sound_samples/cries/octillery.wav and b/sound/direct_sound_samples/cries/octillery.wav differ
diff --git a/sound/direct_sound_samples/cries/oddish.wav b/sound/direct_sound_samples/cries/oddish.wav
index de6855d369..bffae4bcf5 100644
Binary files a/sound/direct_sound_samples/cries/oddish.wav and b/sound/direct_sound_samples/cries/oddish.wav differ
diff --git a/sound/direct_sound_samples/cries/omanyte.wav b/sound/direct_sound_samples/cries/omanyte.wav
index 3db237ac3f..46e47b0a2f 100644
Binary files a/sound/direct_sound_samples/cries/omanyte.wav and b/sound/direct_sound_samples/cries/omanyte.wav differ
diff --git a/sound/direct_sound_samples/cries/omastar.wav b/sound/direct_sound_samples/cries/omastar.wav
index 69a4ea868f..021355da9e 100644
Binary files a/sound/direct_sound_samples/cries/omastar.wav and b/sound/direct_sound_samples/cries/omastar.wav differ
diff --git a/sound/direct_sound_samples/cries/onix.wav b/sound/direct_sound_samples/cries/onix.wav
index 57da601410..f0dd1f45e0 100644
Binary files a/sound/direct_sound_samples/cries/onix.wav and b/sound/direct_sound_samples/cries/onix.wav differ
diff --git a/sound/direct_sound_samples/cries/paras.wav b/sound/direct_sound_samples/cries/paras.wav
index ba4a051c9f..27101a52f1 100644
Binary files a/sound/direct_sound_samples/cries/paras.wav and b/sound/direct_sound_samples/cries/paras.wav differ
diff --git a/sound/direct_sound_samples/cries/parasect.wav b/sound/direct_sound_samples/cries/parasect.wav
index 5ff6ac2907..909803da7c 100644
Binary files a/sound/direct_sound_samples/cries/parasect.wav and b/sound/direct_sound_samples/cries/parasect.wav differ
diff --git a/sound/direct_sound_samples/cries/pelipper.wav b/sound/direct_sound_samples/cries/pelipper.wav
index 665dbcac9e..5af1e79984 100644
Binary files a/sound/direct_sound_samples/cries/pelipper.wav and b/sound/direct_sound_samples/cries/pelipper.wav differ
diff --git a/sound/direct_sound_samples/cries/persian.wav b/sound/direct_sound_samples/cries/persian.wav
index 96acf8296c..890089a511 100644
Binary files a/sound/direct_sound_samples/cries/persian.wav and b/sound/direct_sound_samples/cries/persian.wav differ
diff --git a/sound/direct_sound_samples/cries/phanpy.wav b/sound/direct_sound_samples/cries/phanpy.wav
index 4de13cafe1..dcd6793429 100644
Binary files a/sound/direct_sound_samples/cries/phanpy.wav and b/sound/direct_sound_samples/cries/phanpy.wav differ
diff --git a/sound/direct_sound_samples/cries/pichu.wav b/sound/direct_sound_samples/cries/pichu.wav
index d325103719..cfbbb6adb6 100644
Binary files a/sound/direct_sound_samples/cries/pichu.wav and b/sound/direct_sound_samples/cries/pichu.wav differ
diff --git a/sound/direct_sound_samples/cries/pidgeot.wav b/sound/direct_sound_samples/cries/pidgeot.wav
index f93ed99656..d56e2e5597 100644
Binary files a/sound/direct_sound_samples/cries/pidgeot.wav and b/sound/direct_sound_samples/cries/pidgeot.wav differ
diff --git a/sound/direct_sound_samples/cries/pidgeotto.wav b/sound/direct_sound_samples/cries/pidgeotto.wav
index 8b40a41e99..b8d075754c 100644
Binary files a/sound/direct_sound_samples/cries/pidgeotto.wav and b/sound/direct_sound_samples/cries/pidgeotto.wav differ
diff --git a/sound/direct_sound_samples/cries/pidgey.wav b/sound/direct_sound_samples/cries/pidgey.wav
index 34a1d1bd6a..5b58ae59bf 100644
Binary files a/sound/direct_sound_samples/cries/pidgey.wav and b/sound/direct_sound_samples/cries/pidgey.wav differ
diff --git a/sound/direct_sound_samples/cries/pikachu.wav b/sound/direct_sound_samples/cries/pikachu.wav
index d5f68416f2..dc1d354c87 100644
Binary files a/sound/direct_sound_samples/cries/pikachu.wav and b/sound/direct_sound_samples/cries/pikachu.wav differ
diff --git a/sound/direct_sound_samples/cries/piloswine.wav b/sound/direct_sound_samples/cries/piloswine.wav
index 4f181b7ec6..f28be1f9b6 100644
Binary files a/sound/direct_sound_samples/cries/piloswine.wav and b/sound/direct_sound_samples/cries/piloswine.wav differ
diff --git a/sound/direct_sound_samples/cries/pineco.wav b/sound/direct_sound_samples/cries/pineco.wav
index 70d841b9e5..cfaf5b9eee 100644
Binary files a/sound/direct_sound_samples/cries/pineco.wav and b/sound/direct_sound_samples/cries/pineco.wav differ
diff --git a/sound/direct_sound_samples/cries/pinsir.wav b/sound/direct_sound_samples/cries/pinsir.wav
index 3d3dcc7929..76ac8fa157 100644
Binary files a/sound/direct_sound_samples/cries/pinsir.wav and b/sound/direct_sound_samples/cries/pinsir.wav differ
diff --git a/sound/direct_sound_samples/cries/plusle.wav b/sound/direct_sound_samples/cries/plusle.wav
index 1b3cf87497..dcbe5fdd06 100644
Binary files a/sound/direct_sound_samples/cries/plusle.wav and b/sound/direct_sound_samples/cries/plusle.wav differ
diff --git a/sound/direct_sound_samples/cries/politoed.wav b/sound/direct_sound_samples/cries/politoed.wav
index 6472a08f55..9a90e1785a 100644
Binary files a/sound/direct_sound_samples/cries/politoed.wav and b/sound/direct_sound_samples/cries/politoed.wav differ
diff --git a/sound/direct_sound_samples/cries/poliwag.wav b/sound/direct_sound_samples/cries/poliwag.wav
index d35c8f4d8f..64fe686c93 100644
Binary files a/sound/direct_sound_samples/cries/poliwag.wav and b/sound/direct_sound_samples/cries/poliwag.wav differ
diff --git a/sound/direct_sound_samples/cries/poliwhirl.wav b/sound/direct_sound_samples/cries/poliwhirl.wav
index 0c59fbed64..924bb457cd 100644
Binary files a/sound/direct_sound_samples/cries/poliwhirl.wav and b/sound/direct_sound_samples/cries/poliwhirl.wav differ
diff --git a/sound/direct_sound_samples/cries/poliwrath.wav b/sound/direct_sound_samples/cries/poliwrath.wav
index c32bd44859..93afcf2b65 100644
Binary files a/sound/direct_sound_samples/cries/poliwrath.wav and b/sound/direct_sound_samples/cries/poliwrath.wav differ
diff --git a/sound/direct_sound_samples/cries/ponyta.wav b/sound/direct_sound_samples/cries/ponyta.wav
index 911954226d..bfa5b06ef3 100644
Binary files a/sound/direct_sound_samples/cries/ponyta.wav and b/sound/direct_sound_samples/cries/ponyta.wav differ
diff --git a/sound/direct_sound_samples/cries/poochyena.wav b/sound/direct_sound_samples/cries/poochyena.wav
index 16cabc29c6..8d46225c5f 100644
Binary files a/sound/direct_sound_samples/cries/poochyena.wav and b/sound/direct_sound_samples/cries/poochyena.wav differ
diff --git a/sound/direct_sound_samples/cries/porygon.wav b/sound/direct_sound_samples/cries/porygon.wav
index 11dd528dda..48c43c2db7 100644
Binary files a/sound/direct_sound_samples/cries/porygon.wav and b/sound/direct_sound_samples/cries/porygon.wav differ
diff --git a/sound/direct_sound_samples/cries/porygon2.wav b/sound/direct_sound_samples/cries/porygon2.wav
index 5699d8e450..965c1b7039 100644
Binary files a/sound/direct_sound_samples/cries/porygon2.wav and b/sound/direct_sound_samples/cries/porygon2.wav differ
diff --git a/sound/direct_sound_samples/cries/primeape.wav b/sound/direct_sound_samples/cries/primeape.wav
index bcd98e6bb4..146e924075 100644
Binary files a/sound/direct_sound_samples/cries/primeape.wav and b/sound/direct_sound_samples/cries/primeape.wav differ
diff --git a/sound/direct_sound_samples/cries/psyduck.wav b/sound/direct_sound_samples/cries/psyduck.wav
index bdc0d673e3..7b1a76da7a 100644
Binary files a/sound/direct_sound_samples/cries/psyduck.wav and b/sound/direct_sound_samples/cries/psyduck.wav differ
diff --git a/sound/direct_sound_samples/cries/pupitar.wav b/sound/direct_sound_samples/cries/pupitar.wav
index 5e797d420f..7768967293 100644
Binary files a/sound/direct_sound_samples/cries/pupitar.wav and b/sound/direct_sound_samples/cries/pupitar.wav differ
diff --git a/sound/direct_sound_samples/cries/quagsire.wav b/sound/direct_sound_samples/cries/quagsire.wav
index e4a8c0aad3..116c1bdf47 100644
Binary files a/sound/direct_sound_samples/cries/quagsire.wav and b/sound/direct_sound_samples/cries/quagsire.wav differ
diff --git a/sound/direct_sound_samples/cries/quilava.wav b/sound/direct_sound_samples/cries/quilava.wav
index ef0bd7381f..5b44632ece 100644
Binary files a/sound/direct_sound_samples/cries/quilava.wav and b/sound/direct_sound_samples/cries/quilava.wav differ
diff --git a/sound/direct_sound_samples/cries/qwilfish.wav b/sound/direct_sound_samples/cries/qwilfish.wav
index 0b11276dec..1f857d2c26 100644
Binary files a/sound/direct_sound_samples/cries/qwilfish.wav and b/sound/direct_sound_samples/cries/qwilfish.wav differ
diff --git a/sound/direct_sound_samples/cries/raichu.wav b/sound/direct_sound_samples/cries/raichu.wav
index 4e5dbaeb40..7b93bb5a3d 100644
Binary files a/sound/direct_sound_samples/cries/raichu.wav and b/sound/direct_sound_samples/cries/raichu.wav differ
diff --git a/sound/direct_sound_samples/cries/raikou.wav b/sound/direct_sound_samples/cries/raikou.wav
index fefeb1e3a5..35757a0ac8 100644
Binary files a/sound/direct_sound_samples/cries/raikou.wav and b/sound/direct_sound_samples/cries/raikou.wav differ
diff --git a/sound/direct_sound_samples/cries/ralts.wav b/sound/direct_sound_samples/cries/ralts.wav
index 4327c13a12..37948dc494 100644
Binary files a/sound/direct_sound_samples/cries/ralts.wav and b/sound/direct_sound_samples/cries/ralts.wav differ
diff --git a/sound/direct_sound_samples/cries/rapidash.wav b/sound/direct_sound_samples/cries/rapidash.wav
index 14ce75be75..953acc4504 100644
Binary files a/sound/direct_sound_samples/cries/rapidash.wav and b/sound/direct_sound_samples/cries/rapidash.wav differ
diff --git a/sound/direct_sound_samples/cries/raticate.wav b/sound/direct_sound_samples/cries/raticate.wav
index 545ebfcf12..bbef0c0af9 100644
Binary files a/sound/direct_sound_samples/cries/raticate.wav and b/sound/direct_sound_samples/cries/raticate.wav differ
diff --git a/sound/direct_sound_samples/cries/rattata.wav b/sound/direct_sound_samples/cries/rattata.wav
index 9e7a6b3cf6..951c3bd8a1 100644
Binary files a/sound/direct_sound_samples/cries/rattata.wav and b/sound/direct_sound_samples/cries/rattata.wav differ
diff --git a/sound/direct_sound_samples/cries/rayquaza.wav b/sound/direct_sound_samples/cries/rayquaza.wav
index c4e50535fc..94c4f7c014 100644
Binary files a/sound/direct_sound_samples/cries/rayquaza.wav and b/sound/direct_sound_samples/cries/rayquaza.wav differ
diff --git a/sound/direct_sound_samples/cries/regice.wav b/sound/direct_sound_samples/cries/regice.wav
index b65a79b4d4..8a2bfe7424 100644
Binary files a/sound/direct_sound_samples/cries/regice.wav and b/sound/direct_sound_samples/cries/regice.wav differ
diff --git a/sound/direct_sound_samples/cries/regirock.wav b/sound/direct_sound_samples/cries/regirock.wav
index 0df3c1a720..271b91f31d 100644
Binary files a/sound/direct_sound_samples/cries/regirock.wav and b/sound/direct_sound_samples/cries/regirock.wav differ
diff --git a/sound/direct_sound_samples/cries/registeel.wav b/sound/direct_sound_samples/cries/registeel.wav
index 0e2b21beb2..8bab7591fe 100644
Binary files a/sound/direct_sound_samples/cries/registeel.wav and b/sound/direct_sound_samples/cries/registeel.wav differ
diff --git a/sound/direct_sound_samples/cries/relicanth.wav b/sound/direct_sound_samples/cries/relicanth.wav
index 1a8c04473c..8561780d64 100644
Binary files a/sound/direct_sound_samples/cries/relicanth.wav and b/sound/direct_sound_samples/cries/relicanth.wav differ
diff --git a/sound/direct_sound_samples/cries/remoraid.wav b/sound/direct_sound_samples/cries/remoraid.wav
index 0465e033f1..ebab789ad3 100644
Binary files a/sound/direct_sound_samples/cries/remoraid.wav and b/sound/direct_sound_samples/cries/remoraid.wav differ
diff --git a/sound/direct_sound_samples/cries/rhydon.wav b/sound/direct_sound_samples/cries/rhydon.wav
index e4f024f312..2c3907c91e 100644
Binary files a/sound/direct_sound_samples/cries/rhydon.wav and b/sound/direct_sound_samples/cries/rhydon.wav differ
diff --git a/sound/direct_sound_samples/cries/rhyhorn.wav b/sound/direct_sound_samples/cries/rhyhorn.wav
index 10c6841f43..8583759915 100644
Binary files a/sound/direct_sound_samples/cries/rhyhorn.wav and b/sound/direct_sound_samples/cries/rhyhorn.wav differ
diff --git a/sound/direct_sound_samples/cries/roselia.wav b/sound/direct_sound_samples/cries/roselia.wav
index cd01f19f68..f9c67fae1f 100644
Binary files a/sound/direct_sound_samples/cries/roselia.wav and b/sound/direct_sound_samples/cries/roselia.wav differ
diff --git a/sound/direct_sound_samples/cries/sableye.wav b/sound/direct_sound_samples/cries/sableye.wav
index 9f32fbdd60..a1458cadc8 100644
Binary files a/sound/direct_sound_samples/cries/sableye.wav and b/sound/direct_sound_samples/cries/sableye.wav differ
diff --git a/sound/direct_sound_samples/cries/salamence.wav b/sound/direct_sound_samples/cries/salamence.wav
index 1c426adfad..135d90ecdc 100644
Binary files a/sound/direct_sound_samples/cries/salamence.wav and b/sound/direct_sound_samples/cries/salamence.wav differ
diff --git a/sound/direct_sound_samples/cries/sandshrew.wav b/sound/direct_sound_samples/cries/sandshrew.wav
index 8c324ed3d6..94f98193d1 100644
Binary files a/sound/direct_sound_samples/cries/sandshrew.wav and b/sound/direct_sound_samples/cries/sandshrew.wav differ
diff --git a/sound/direct_sound_samples/cries/sandslash.wav b/sound/direct_sound_samples/cries/sandslash.wav
index 95bcdb8698..ba3e29e083 100644
Binary files a/sound/direct_sound_samples/cries/sandslash.wav and b/sound/direct_sound_samples/cries/sandslash.wav differ
diff --git a/sound/direct_sound_samples/cries/sceptile.wav b/sound/direct_sound_samples/cries/sceptile.wav
index 32673bc773..5ff4d51010 100644
Binary files a/sound/direct_sound_samples/cries/sceptile.wav and b/sound/direct_sound_samples/cries/sceptile.wav differ
diff --git a/sound/direct_sound_samples/cries/scizor.wav b/sound/direct_sound_samples/cries/scizor.wav
index 8196df16b2..bc37f521c9 100644
Binary files a/sound/direct_sound_samples/cries/scizor.wav and b/sound/direct_sound_samples/cries/scizor.wav differ
diff --git a/sound/direct_sound_samples/cries/scyther.wav b/sound/direct_sound_samples/cries/scyther.wav
index 5b6ba415a1..021a6e0170 100644
Binary files a/sound/direct_sound_samples/cries/scyther.wav and b/sound/direct_sound_samples/cries/scyther.wav differ
diff --git a/sound/direct_sound_samples/cries/seadra.wav b/sound/direct_sound_samples/cries/seadra.wav
index c68a68a196..84c6ad7c76 100644
Binary files a/sound/direct_sound_samples/cries/seadra.wav and b/sound/direct_sound_samples/cries/seadra.wav differ
diff --git a/sound/direct_sound_samples/cries/seaking.wav b/sound/direct_sound_samples/cries/seaking.wav
index 6f2533e946..0534a12eda 100644
Binary files a/sound/direct_sound_samples/cries/seaking.wav and b/sound/direct_sound_samples/cries/seaking.wav differ
diff --git a/sound/direct_sound_samples/cries/sealeo.wav b/sound/direct_sound_samples/cries/sealeo.wav
index ad01a5fed3..744ab73901 100644
Binary files a/sound/direct_sound_samples/cries/sealeo.wav and b/sound/direct_sound_samples/cries/sealeo.wav differ
diff --git a/sound/direct_sound_samples/cries/seedot.wav b/sound/direct_sound_samples/cries/seedot.wav
index b4d74f65d6..367104936a 100644
Binary files a/sound/direct_sound_samples/cries/seedot.wav and b/sound/direct_sound_samples/cries/seedot.wav differ
diff --git a/sound/direct_sound_samples/cries/seel.wav b/sound/direct_sound_samples/cries/seel.wav
index 6e252b375a..95e027d5e8 100644
Binary files a/sound/direct_sound_samples/cries/seel.wav and b/sound/direct_sound_samples/cries/seel.wav differ
diff --git a/sound/direct_sound_samples/cries/sentret.wav b/sound/direct_sound_samples/cries/sentret.wav
index 0c6746c456..c7e1bb8a65 100644
Binary files a/sound/direct_sound_samples/cries/sentret.wav and b/sound/direct_sound_samples/cries/sentret.wav differ
diff --git a/sound/direct_sound_samples/cries/seviper.wav b/sound/direct_sound_samples/cries/seviper.wav
index b467378f4c..73529d9c1c 100644
Binary files a/sound/direct_sound_samples/cries/seviper.wav and b/sound/direct_sound_samples/cries/seviper.wav differ
diff --git a/sound/direct_sound_samples/cries/sharpedo.wav b/sound/direct_sound_samples/cries/sharpedo.wav
index 26c52b43c3..7f773d4fbb 100644
Binary files a/sound/direct_sound_samples/cries/sharpedo.wav and b/sound/direct_sound_samples/cries/sharpedo.wav differ
diff --git a/sound/direct_sound_samples/cries/shedinja.wav b/sound/direct_sound_samples/cries/shedinja.wav
index 956ae0be9f..6dda64b5d3 100644
Binary files a/sound/direct_sound_samples/cries/shedinja.wav and b/sound/direct_sound_samples/cries/shedinja.wav differ
diff --git a/sound/direct_sound_samples/cries/shelgon.wav b/sound/direct_sound_samples/cries/shelgon.wav
index 7648d06f9a..85ed3939c2 100644
Binary files a/sound/direct_sound_samples/cries/shelgon.wav and b/sound/direct_sound_samples/cries/shelgon.wav differ
diff --git a/sound/direct_sound_samples/cries/shellder.wav b/sound/direct_sound_samples/cries/shellder.wav
index 1fe4367d78..5c38501ba1 100644
Binary files a/sound/direct_sound_samples/cries/shellder.wav and b/sound/direct_sound_samples/cries/shellder.wav differ
diff --git a/sound/direct_sound_samples/cries/shiftry.wav b/sound/direct_sound_samples/cries/shiftry.wav
index 533115f404..dbba7208b9 100644
Binary files a/sound/direct_sound_samples/cries/shiftry.wav and b/sound/direct_sound_samples/cries/shiftry.wav differ
diff --git a/sound/direct_sound_samples/cries/shroomish.wav b/sound/direct_sound_samples/cries/shroomish.wav
index 07658c8801..05fa696706 100644
Binary files a/sound/direct_sound_samples/cries/shroomish.wav and b/sound/direct_sound_samples/cries/shroomish.wav differ
diff --git a/sound/direct_sound_samples/cries/shuckle.wav b/sound/direct_sound_samples/cries/shuckle.wav
index bb196dbfe9..afc303e4d8 100644
Binary files a/sound/direct_sound_samples/cries/shuckle.wav and b/sound/direct_sound_samples/cries/shuckle.wav differ
diff --git a/sound/direct_sound_samples/cries/shuppet.wav b/sound/direct_sound_samples/cries/shuppet.wav
index 6b043a2772..da206414c4 100644
Binary files a/sound/direct_sound_samples/cries/shuppet.wav and b/sound/direct_sound_samples/cries/shuppet.wav differ
diff --git a/sound/direct_sound_samples/cries/silcoon.wav b/sound/direct_sound_samples/cries/silcoon.wav
index 15827329e4..e5af66fbc2 100644
Binary files a/sound/direct_sound_samples/cries/silcoon.wav and b/sound/direct_sound_samples/cries/silcoon.wav differ
diff --git a/sound/direct_sound_samples/cries/skarmory.wav b/sound/direct_sound_samples/cries/skarmory.wav
index 2924973023..7062c9813d 100644
Binary files a/sound/direct_sound_samples/cries/skarmory.wav and b/sound/direct_sound_samples/cries/skarmory.wav differ
diff --git a/sound/direct_sound_samples/cries/skiploom.wav b/sound/direct_sound_samples/cries/skiploom.wav
index 30f9c26662..8aa05f5b7e 100644
Binary files a/sound/direct_sound_samples/cries/skiploom.wav and b/sound/direct_sound_samples/cries/skiploom.wav differ
diff --git a/sound/direct_sound_samples/cries/skitty.wav b/sound/direct_sound_samples/cries/skitty.wav
index 02aaa4fcbd..ee5717d07c 100644
Binary files a/sound/direct_sound_samples/cries/skitty.wav and b/sound/direct_sound_samples/cries/skitty.wav differ
diff --git a/sound/direct_sound_samples/cries/slaking.wav b/sound/direct_sound_samples/cries/slaking.wav
index ef34d94d69..44681126d4 100644
Binary files a/sound/direct_sound_samples/cries/slaking.wav and b/sound/direct_sound_samples/cries/slaking.wav differ
diff --git a/sound/direct_sound_samples/cries/slakoth.wav b/sound/direct_sound_samples/cries/slakoth.wav
index d4588b3a21..4c442f9c14 100644
Binary files a/sound/direct_sound_samples/cries/slakoth.wav and b/sound/direct_sound_samples/cries/slakoth.wav differ
diff --git a/sound/direct_sound_samples/cries/slowbro.wav b/sound/direct_sound_samples/cries/slowbro.wav
index fe03ab4cdd..c46e751f51 100644
Binary files a/sound/direct_sound_samples/cries/slowbro.wav and b/sound/direct_sound_samples/cries/slowbro.wav differ
diff --git a/sound/direct_sound_samples/cries/slowking.wav b/sound/direct_sound_samples/cries/slowking.wav
index f802796282..a32fea33df 100644
Binary files a/sound/direct_sound_samples/cries/slowking.wav and b/sound/direct_sound_samples/cries/slowking.wav differ
diff --git a/sound/direct_sound_samples/cries/slowpoke.wav b/sound/direct_sound_samples/cries/slowpoke.wav
index b3a45bef0a..275c2d9da1 100644
Binary files a/sound/direct_sound_samples/cries/slowpoke.wav and b/sound/direct_sound_samples/cries/slowpoke.wav differ
diff --git a/sound/direct_sound_samples/cries/slugma.wav b/sound/direct_sound_samples/cries/slugma.wav
index 389bc88657..fed73cced4 100644
Binary files a/sound/direct_sound_samples/cries/slugma.wav and b/sound/direct_sound_samples/cries/slugma.wav differ
diff --git a/sound/direct_sound_samples/cries/smeargle.wav b/sound/direct_sound_samples/cries/smeargle.wav
index e206f8f61b..abb48580b3 100644
Binary files a/sound/direct_sound_samples/cries/smeargle.wav and b/sound/direct_sound_samples/cries/smeargle.wav differ
diff --git a/sound/direct_sound_samples/cries/smoochum.wav b/sound/direct_sound_samples/cries/smoochum.wav
index a4abdde7ec..33f50b0469 100644
Binary files a/sound/direct_sound_samples/cries/smoochum.wav and b/sound/direct_sound_samples/cries/smoochum.wav differ
diff --git a/sound/direct_sound_samples/cries/sneasel.wav b/sound/direct_sound_samples/cries/sneasel.wav
index da76aefb71..dc960be0dc 100644
Binary files a/sound/direct_sound_samples/cries/sneasel.wav and b/sound/direct_sound_samples/cries/sneasel.wav differ
diff --git a/sound/direct_sound_samples/cries/snorlax.wav b/sound/direct_sound_samples/cries/snorlax.wav
index 12e717be17..c0e45a4572 100644
Binary files a/sound/direct_sound_samples/cries/snorlax.wav and b/sound/direct_sound_samples/cries/snorlax.wav differ
diff --git a/sound/direct_sound_samples/cries/snorunt.wav b/sound/direct_sound_samples/cries/snorunt.wav
index b4ecc4537f..586c131168 100644
Binary files a/sound/direct_sound_samples/cries/snorunt.wav and b/sound/direct_sound_samples/cries/snorunt.wav differ
diff --git a/sound/direct_sound_samples/cries/snubbull.wav b/sound/direct_sound_samples/cries/snubbull.wav
index 37cacda8f7..626da01c14 100644
Binary files a/sound/direct_sound_samples/cries/snubbull.wav and b/sound/direct_sound_samples/cries/snubbull.wav differ
diff --git a/sound/direct_sound_samples/cries/solrock.wav b/sound/direct_sound_samples/cries/solrock.wav
index 12f766af71..d99dcbd2b4 100644
Binary files a/sound/direct_sound_samples/cries/solrock.wav and b/sound/direct_sound_samples/cries/solrock.wav differ
diff --git a/sound/direct_sound_samples/cries/spearow.wav b/sound/direct_sound_samples/cries/spearow.wav
index a648481368..e441d27ed4 100644
Binary files a/sound/direct_sound_samples/cries/spearow.wav and b/sound/direct_sound_samples/cries/spearow.wav differ
diff --git a/sound/direct_sound_samples/cries/spheal.wav b/sound/direct_sound_samples/cries/spheal.wav
index 818caf8cd8..5602399340 100644
Binary files a/sound/direct_sound_samples/cries/spheal.wav and b/sound/direct_sound_samples/cries/spheal.wav differ
diff --git a/sound/direct_sound_samples/cries/spinarak.wav b/sound/direct_sound_samples/cries/spinarak.wav
index 3c45731327..764efce71f 100644
Binary files a/sound/direct_sound_samples/cries/spinarak.wav and b/sound/direct_sound_samples/cries/spinarak.wav differ
diff --git a/sound/direct_sound_samples/cries/spinda.wav b/sound/direct_sound_samples/cries/spinda.wav
index 4481e3a887..a865817789 100644
Binary files a/sound/direct_sound_samples/cries/spinda.wav and b/sound/direct_sound_samples/cries/spinda.wav differ
diff --git a/sound/direct_sound_samples/cries/spoink.wav b/sound/direct_sound_samples/cries/spoink.wav
index 36447fb84b..880637b5cc 100644
Binary files a/sound/direct_sound_samples/cries/spoink.wav and b/sound/direct_sound_samples/cries/spoink.wav differ
diff --git a/sound/direct_sound_samples/cries/squirtle.wav b/sound/direct_sound_samples/cries/squirtle.wav
index 0cf32c6b6c..fb533d7184 100644
Binary files a/sound/direct_sound_samples/cries/squirtle.wav and b/sound/direct_sound_samples/cries/squirtle.wav differ
diff --git a/sound/direct_sound_samples/cries/stantler.wav b/sound/direct_sound_samples/cries/stantler.wav
index f59953beb0..febf2e6163 100644
Binary files a/sound/direct_sound_samples/cries/stantler.wav and b/sound/direct_sound_samples/cries/stantler.wav differ
diff --git a/sound/direct_sound_samples/cries/starmie.wav b/sound/direct_sound_samples/cries/starmie.wav
index e3ace4fcf2..40edec6b9e 100644
Binary files a/sound/direct_sound_samples/cries/starmie.wav and b/sound/direct_sound_samples/cries/starmie.wav differ
diff --git a/sound/direct_sound_samples/cries/staryu.wav b/sound/direct_sound_samples/cries/staryu.wav
index c726206f43..611c0571ba 100644
Binary files a/sound/direct_sound_samples/cries/staryu.wav and b/sound/direct_sound_samples/cries/staryu.wav differ
diff --git a/sound/direct_sound_samples/cries/steelix.wav b/sound/direct_sound_samples/cries/steelix.wav
index 8683e3d242..85de343abe 100644
Binary files a/sound/direct_sound_samples/cries/steelix.wav and b/sound/direct_sound_samples/cries/steelix.wav differ
diff --git a/sound/direct_sound_samples/cries/sudowoodo.wav b/sound/direct_sound_samples/cries/sudowoodo.wav
index 48661df94e..97bb1d51a2 100644
Binary files a/sound/direct_sound_samples/cries/sudowoodo.wav and b/sound/direct_sound_samples/cries/sudowoodo.wav differ
diff --git a/sound/direct_sound_samples/cries/suicune.wav b/sound/direct_sound_samples/cries/suicune.wav
index f675d8fdc4..90218ad013 100644
Binary files a/sound/direct_sound_samples/cries/suicune.wav and b/sound/direct_sound_samples/cries/suicune.wav differ
diff --git a/sound/direct_sound_samples/cries/sunflora.wav b/sound/direct_sound_samples/cries/sunflora.wav
index 613422881c..ccad9c8c36 100644
Binary files a/sound/direct_sound_samples/cries/sunflora.wav and b/sound/direct_sound_samples/cries/sunflora.wav differ
diff --git a/sound/direct_sound_samples/cries/sunkern.wav b/sound/direct_sound_samples/cries/sunkern.wav
index b183f9ee94..0b670dadb2 100644
Binary files a/sound/direct_sound_samples/cries/sunkern.wav and b/sound/direct_sound_samples/cries/sunkern.wav differ
diff --git a/sound/direct_sound_samples/cries/surskit.wav b/sound/direct_sound_samples/cries/surskit.wav
index 04b1be882d..650fde3d18 100644
Binary files a/sound/direct_sound_samples/cries/surskit.wav and b/sound/direct_sound_samples/cries/surskit.wav differ
diff --git a/sound/direct_sound_samples/cries/swablu.wav b/sound/direct_sound_samples/cries/swablu.wav
index f24d349307..0fafb27d0d 100644
Binary files a/sound/direct_sound_samples/cries/swablu.wav and b/sound/direct_sound_samples/cries/swablu.wav differ
diff --git a/sound/direct_sound_samples/cries/swalot.wav b/sound/direct_sound_samples/cries/swalot.wav
index cfed979342..56e0b170b1 100644
Binary files a/sound/direct_sound_samples/cries/swalot.wav and b/sound/direct_sound_samples/cries/swalot.wav differ
diff --git a/sound/direct_sound_samples/cries/swampert.wav b/sound/direct_sound_samples/cries/swampert.wav
index a06f15992f..eab813edb7 100644
Binary files a/sound/direct_sound_samples/cries/swampert.wav and b/sound/direct_sound_samples/cries/swampert.wav differ
diff --git a/sound/direct_sound_samples/cries/swellow.wav b/sound/direct_sound_samples/cries/swellow.wav
index 637ff46540..118eb684c3 100644
Binary files a/sound/direct_sound_samples/cries/swellow.wav and b/sound/direct_sound_samples/cries/swellow.wav differ
diff --git a/sound/direct_sound_samples/cries/swinub.wav b/sound/direct_sound_samples/cries/swinub.wav
index 93eafa458d..e84ba9454a 100644
Binary files a/sound/direct_sound_samples/cries/swinub.wav and b/sound/direct_sound_samples/cries/swinub.wav differ
diff --git a/sound/direct_sound_samples/cries/taillow.wav b/sound/direct_sound_samples/cries/taillow.wav
index 9f1bb25f48..7d4135c76a 100644
Binary files a/sound/direct_sound_samples/cries/taillow.wav and b/sound/direct_sound_samples/cries/taillow.wav differ
diff --git a/sound/direct_sound_samples/cries/tangela.wav b/sound/direct_sound_samples/cries/tangela.wav
index 023a0362f9..991b787ff4 100644
Binary files a/sound/direct_sound_samples/cries/tangela.wav and b/sound/direct_sound_samples/cries/tangela.wav differ
diff --git a/sound/direct_sound_samples/cries/tauros.wav b/sound/direct_sound_samples/cries/tauros.wav
index a982d052d9..f7610d2dd0 100644
Binary files a/sound/direct_sound_samples/cries/tauros.wav and b/sound/direct_sound_samples/cries/tauros.wav differ
diff --git a/sound/direct_sound_samples/cries/teddiursa.wav b/sound/direct_sound_samples/cries/teddiursa.wav
index adc9b80d9c..d55bc9e4a6 100644
Binary files a/sound/direct_sound_samples/cries/teddiursa.wav and b/sound/direct_sound_samples/cries/teddiursa.wav differ
diff --git a/sound/direct_sound_samples/cries/tentacool.wav b/sound/direct_sound_samples/cries/tentacool.wav
index cd8f5afc7a..f35d2a6252 100644
Binary files a/sound/direct_sound_samples/cries/tentacool.wav and b/sound/direct_sound_samples/cries/tentacool.wav differ
diff --git a/sound/direct_sound_samples/cries/tentacruel.wav b/sound/direct_sound_samples/cries/tentacruel.wav
index dfbc8c7f09..3799a10754 100644
Binary files a/sound/direct_sound_samples/cries/tentacruel.wav and b/sound/direct_sound_samples/cries/tentacruel.wav differ
diff --git a/sound/direct_sound_samples/cries/togepi.wav b/sound/direct_sound_samples/cries/togepi.wav
index e13355c554..ac6bbf9ff8 100644
Binary files a/sound/direct_sound_samples/cries/togepi.wav and b/sound/direct_sound_samples/cries/togepi.wav differ
diff --git a/sound/direct_sound_samples/cries/togetic.wav b/sound/direct_sound_samples/cries/togetic.wav
index 957a45dc94..f8b70c0f41 100644
Binary files a/sound/direct_sound_samples/cries/togetic.wav and b/sound/direct_sound_samples/cries/togetic.wav differ
diff --git a/sound/direct_sound_samples/cries/torchic.wav b/sound/direct_sound_samples/cries/torchic.wav
index 39a2522b32..5dd5c56bed 100644
Binary files a/sound/direct_sound_samples/cries/torchic.wav and b/sound/direct_sound_samples/cries/torchic.wav differ
diff --git a/sound/direct_sound_samples/cries/torkoal.wav b/sound/direct_sound_samples/cries/torkoal.wav
index 497e92af20..aed3842962 100644
Binary files a/sound/direct_sound_samples/cries/torkoal.wav and b/sound/direct_sound_samples/cries/torkoal.wav differ
diff --git a/sound/direct_sound_samples/cries/totodile.wav b/sound/direct_sound_samples/cries/totodile.wav
index 93c0788473..4a4263ec2d 100644
Binary files a/sound/direct_sound_samples/cries/totodile.wav and b/sound/direct_sound_samples/cries/totodile.wav differ
diff --git a/sound/direct_sound_samples/cries/trapinch.wav b/sound/direct_sound_samples/cries/trapinch.wav
index 5cad4ad23e..abb851c1b7 100644
Binary files a/sound/direct_sound_samples/cries/trapinch.wav and b/sound/direct_sound_samples/cries/trapinch.wav differ
diff --git a/sound/direct_sound_samples/cries/treecko.wav b/sound/direct_sound_samples/cries/treecko.wav
index 0c982f8408..da43048452 100644
Binary files a/sound/direct_sound_samples/cries/treecko.wav and b/sound/direct_sound_samples/cries/treecko.wav differ
diff --git a/sound/direct_sound_samples/cries/tropius.wav b/sound/direct_sound_samples/cries/tropius.wav
index 55de362aa7..f7f7cbc389 100644
Binary files a/sound/direct_sound_samples/cries/tropius.wav and b/sound/direct_sound_samples/cries/tropius.wav differ
diff --git a/sound/direct_sound_samples/cries/typhlosion.wav b/sound/direct_sound_samples/cries/typhlosion.wav
index f1759989d7..cd525d5610 100644
Binary files a/sound/direct_sound_samples/cries/typhlosion.wav and b/sound/direct_sound_samples/cries/typhlosion.wav differ
diff --git a/sound/direct_sound_samples/cries/tyranitar.wav b/sound/direct_sound_samples/cries/tyranitar.wav
index 5bec5f7279..f2b7682106 100644
Binary files a/sound/direct_sound_samples/cries/tyranitar.wav and b/sound/direct_sound_samples/cries/tyranitar.wav differ
diff --git a/sound/direct_sound_samples/cries/tyrogue.wav b/sound/direct_sound_samples/cries/tyrogue.wav
index 46d032063d..4905a85661 100644
Binary files a/sound/direct_sound_samples/cries/tyrogue.wav and b/sound/direct_sound_samples/cries/tyrogue.wav differ
diff --git a/sound/direct_sound_samples/cries/umbreon.wav b/sound/direct_sound_samples/cries/umbreon.wav
index 48f62064af..8735d9fdec 100644
Binary files a/sound/direct_sound_samples/cries/umbreon.wav and b/sound/direct_sound_samples/cries/umbreon.wav differ
diff --git a/sound/direct_sound_samples/cries/unown.wav b/sound/direct_sound_samples/cries/unown.wav
index 1956ecef75..befaaedd00 100644
Binary files a/sound/direct_sound_samples/cries/unown.wav and b/sound/direct_sound_samples/cries/unown.wav differ
diff --git a/sound/direct_sound_samples/cries/unused_265.wav b/sound/direct_sound_samples/cries/unused_265.wav
index 12c3d8640f..5735db46fd 100644
Binary files a/sound/direct_sound_samples/cries/unused_265.wav and b/sound/direct_sound_samples/cries/unused_265.wav differ
diff --git a/sound/direct_sound_samples/cries/unused_268.wav b/sound/direct_sound_samples/cries/unused_268.wav
index 3501b24ef8..c698955e8d 100644
Binary files a/sound/direct_sound_samples/cries/unused_268.wav and b/sound/direct_sound_samples/cries/unused_268.wav differ
diff --git a/sound/direct_sound_samples/cries/ursaring.wav b/sound/direct_sound_samples/cries/ursaring.wav
index b3d4a99cb7..e8ccc67cac 100644
Binary files a/sound/direct_sound_samples/cries/ursaring.wav and b/sound/direct_sound_samples/cries/ursaring.wav differ
diff --git a/sound/direct_sound_samples/cries/vaporeon.wav b/sound/direct_sound_samples/cries/vaporeon.wav
index 8ec3094851..861bc93cbe 100644
Binary files a/sound/direct_sound_samples/cries/vaporeon.wav and b/sound/direct_sound_samples/cries/vaporeon.wav differ
diff --git a/sound/direct_sound_samples/cries/venomoth.wav b/sound/direct_sound_samples/cries/venomoth.wav
index ab5179df66..76deea6e8d 100644
Binary files a/sound/direct_sound_samples/cries/venomoth.wav and b/sound/direct_sound_samples/cries/venomoth.wav differ
diff --git a/sound/direct_sound_samples/cries/venonat.wav b/sound/direct_sound_samples/cries/venonat.wav
index 450c2bb222..52763c4ea1 100644
Binary files a/sound/direct_sound_samples/cries/venonat.wav and b/sound/direct_sound_samples/cries/venonat.wav differ
diff --git a/sound/direct_sound_samples/cries/venusaur.wav b/sound/direct_sound_samples/cries/venusaur.wav
index fdd299ae27..4273ac8471 100644
Binary files a/sound/direct_sound_samples/cries/venusaur.wav and b/sound/direct_sound_samples/cries/venusaur.wav differ
diff --git a/sound/direct_sound_samples/cries/vibrava.wav b/sound/direct_sound_samples/cries/vibrava.wav
index 5370104875..9f4b2b3625 100644
Binary files a/sound/direct_sound_samples/cries/vibrava.wav and b/sound/direct_sound_samples/cries/vibrava.wav differ
diff --git a/sound/direct_sound_samples/cries/victreebel.wav b/sound/direct_sound_samples/cries/victreebel.wav
index 19f11202f9..cea271b30b 100644
Binary files a/sound/direct_sound_samples/cries/victreebel.wav and b/sound/direct_sound_samples/cries/victreebel.wav differ
diff --git a/sound/direct_sound_samples/cries/vigoroth.wav b/sound/direct_sound_samples/cries/vigoroth.wav
index 5d21bd23b0..800a4989f9 100644
Binary files a/sound/direct_sound_samples/cries/vigoroth.wav and b/sound/direct_sound_samples/cries/vigoroth.wav differ
diff --git a/sound/direct_sound_samples/cries/vileplume.wav b/sound/direct_sound_samples/cries/vileplume.wav
index 7189097b18..06dfaab478 100644
Binary files a/sound/direct_sound_samples/cries/vileplume.wav and b/sound/direct_sound_samples/cries/vileplume.wav differ
diff --git a/sound/direct_sound_samples/cries/volbeat.wav b/sound/direct_sound_samples/cries/volbeat.wav
index ae6375b95f..d29a8ddbe1 100644
Binary files a/sound/direct_sound_samples/cries/volbeat.wav and b/sound/direct_sound_samples/cries/volbeat.wav differ
diff --git a/sound/direct_sound_samples/cries/voltorb.wav b/sound/direct_sound_samples/cries/voltorb.wav
index e303a3db73..0c698af270 100644
Binary files a/sound/direct_sound_samples/cries/voltorb.wav and b/sound/direct_sound_samples/cries/voltorb.wav differ
diff --git a/sound/direct_sound_samples/cries/vulpix.wav b/sound/direct_sound_samples/cries/vulpix.wav
index 71d58b0a72..895bf7f358 100644
Binary files a/sound/direct_sound_samples/cries/vulpix.wav and b/sound/direct_sound_samples/cries/vulpix.wav differ
diff --git a/sound/direct_sound_samples/cries/wailmer.wav b/sound/direct_sound_samples/cries/wailmer.wav
index ef43c515fd..514200f855 100644
Binary files a/sound/direct_sound_samples/cries/wailmer.wav and b/sound/direct_sound_samples/cries/wailmer.wav differ
diff --git a/sound/direct_sound_samples/cries/wailord.wav b/sound/direct_sound_samples/cries/wailord.wav
index a7e9d89f69..163660c6a9 100644
Binary files a/sound/direct_sound_samples/cries/wailord.wav and b/sound/direct_sound_samples/cries/wailord.wav differ
diff --git a/sound/direct_sound_samples/cries/walrein.wav b/sound/direct_sound_samples/cries/walrein.wav
index cbc5fa8cb4..9389f92273 100644
Binary files a/sound/direct_sound_samples/cries/walrein.wav and b/sound/direct_sound_samples/cries/walrein.wav differ
diff --git a/sound/direct_sound_samples/cries/wartortle.wav b/sound/direct_sound_samples/cries/wartortle.wav
index 950f87d74b..040292e128 100644
Binary files a/sound/direct_sound_samples/cries/wartortle.wav and b/sound/direct_sound_samples/cries/wartortle.wav differ
diff --git a/sound/direct_sound_samples/cries/weedle.wav b/sound/direct_sound_samples/cries/weedle.wav
index 6a209fede1..2c891cd309 100644
Binary files a/sound/direct_sound_samples/cries/weedle.wav and b/sound/direct_sound_samples/cries/weedle.wav differ
diff --git a/sound/direct_sound_samples/cries/weepinbell.wav b/sound/direct_sound_samples/cries/weepinbell.wav
index 48f7225cf5..206bd24e45 100644
Binary files a/sound/direct_sound_samples/cries/weepinbell.wav and b/sound/direct_sound_samples/cries/weepinbell.wav differ
diff --git a/sound/direct_sound_samples/cries/weezing.wav b/sound/direct_sound_samples/cries/weezing.wav
index b5a7b189d0..ee60585955 100644
Binary files a/sound/direct_sound_samples/cries/weezing.wav and b/sound/direct_sound_samples/cries/weezing.wav differ
diff --git a/sound/direct_sound_samples/cries/whiscash.wav b/sound/direct_sound_samples/cries/whiscash.wav
index ebec93d188..927713b050 100644
Binary files a/sound/direct_sound_samples/cries/whiscash.wav and b/sound/direct_sound_samples/cries/whiscash.wav differ
diff --git a/sound/direct_sound_samples/cries/whismur.wav b/sound/direct_sound_samples/cries/whismur.wav
index af3e3e0e31..3470acc99f 100644
Binary files a/sound/direct_sound_samples/cries/whismur.wav and b/sound/direct_sound_samples/cries/whismur.wav differ
diff --git a/sound/direct_sound_samples/cries/wigglytuff.wav b/sound/direct_sound_samples/cries/wigglytuff.wav
index a6b632a6ce..7e9e668a44 100644
Binary files a/sound/direct_sound_samples/cries/wigglytuff.wav and b/sound/direct_sound_samples/cries/wigglytuff.wav differ
diff --git a/sound/direct_sound_samples/cries/wingull.wav b/sound/direct_sound_samples/cries/wingull.wav
index 4e158409ad..b780295935 100644
Binary files a/sound/direct_sound_samples/cries/wingull.wav and b/sound/direct_sound_samples/cries/wingull.wav differ
diff --git a/sound/direct_sound_samples/cries/wobbuffet.wav b/sound/direct_sound_samples/cries/wobbuffet.wav
index 17e7464ad9..049aa83ba8 100644
Binary files a/sound/direct_sound_samples/cries/wobbuffet.wav and b/sound/direct_sound_samples/cries/wobbuffet.wav differ
diff --git a/sound/direct_sound_samples/cries/wooper.wav b/sound/direct_sound_samples/cries/wooper.wav
index 83c7e589df..280845b2b8 100644
Binary files a/sound/direct_sound_samples/cries/wooper.wav and b/sound/direct_sound_samples/cries/wooper.wav differ
diff --git a/sound/direct_sound_samples/cries/wurmple.wav b/sound/direct_sound_samples/cries/wurmple.wav
index b58d5007cf..09ac95d59b 100644
Binary files a/sound/direct_sound_samples/cries/wurmple.wav and b/sound/direct_sound_samples/cries/wurmple.wav differ
diff --git a/sound/direct_sound_samples/cries/wynaut.wav b/sound/direct_sound_samples/cries/wynaut.wav
index 6febe26aa4..dcdc2b3394 100644
Binary files a/sound/direct_sound_samples/cries/wynaut.wav and b/sound/direct_sound_samples/cries/wynaut.wav differ
diff --git a/sound/direct_sound_samples/cries/xatu.wav b/sound/direct_sound_samples/cries/xatu.wav
index 7c84f65723..47c470c4c3 100644
Binary files a/sound/direct_sound_samples/cries/xatu.wav and b/sound/direct_sound_samples/cries/xatu.wav differ
diff --git a/sound/direct_sound_samples/cries/yanma.wav b/sound/direct_sound_samples/cries/yanma.wav
index 166b373616..3fea5ab36f 100644
Binary files a/sound/direct_sound_samples/cries/yanma.wav and b/sound/direct_sound_samples/cries/yanma.wav differ
diff --git a/sound/direct_sound_samples/cries/zangoose.wav b/sound/direct_sound_samples/cries/zangoose.wav
index b1e3e9ffc3..a5306a2d16 100644
Binary files a/sound/direct_sound_samples/cries/zangoose.wav and b/sound/direct_sound_samples/cries/zangoose.wav differ
diff --git a/sound/direct_sound_samples/cries/zapdos.wav b/sound/direct_sound_samples/cries/zapdos.wav
index 58415b9344..f8168a603c 100644
Binary files a/sound/direct_sound_samples/cries/zapdos.wav and b/sound/direct_sound_samples/cries/zapdos.wav differ
diff --git a/sound/direct_sound_samples/cries/zigzagoon.wav b/sound/direct_sound_samples/cries/zigzagoon.wav
index ac0b68edcd..fca81cf0f3 100644
Binary files a/sound/direct_sound_samples/cries/zigzagoon.wav and b/sound/direct_sound_samples/cries/zigzagoon.wav differ
diff --git a/sound/direct_sound_samples/cries/zubat.wav b/sound/direct_sound_samples/cries/zubat.wav
index dc0756a06d..58c0c16e58 100644
Binary files a/sound/direct_sound_samples/cries/zubat.wav and b/sound/direct_sound_samples/cries/zubat.wav differ
diff --git a/sound/direct_sound_samples/dance_drums_ride_bell.wav b/sound/direct_sound_samples/dance_drums_ride_bell.wav
index a79a5c26f9..7a0e9eb3ea 100644
Binary files a/sound/direct_sound_samples/dance_drums_ride_bell.wav and b/sound/direct_sound_samples/dance_drums_ride_bell.wav differ
diff --git a/sound/direct_sound_samples/drum_and_percussion_kick.wav b/sound/direct_sound_samples/drum_and_percussion_kick.wav
index 49ba617f0c..4b6969b6eb 100644
Binary files a/sound/direct_sound_samples/drum_and_percussion_kick.wav and b/sound/direct_sound_samples/drum_and_percussion_kick.wav differ
diff --git a/sound/direct_sound_samples/ethnic_flavours_atarigane.wav b/sound/direct_sound_samples/ethnic_flavours_atarigane.wav
index d1fb2c1a4f..ebe975fee8 100644
Binary files a/sound/direct_sound_samples/ethnic_flavours_atarigane.wav and b/sound/direct_sound_samples/ethnic_flavours_atarigane.wav differ
diff --git a/sound/direct_sound_samples/ethnic_flavours_hyoushigi.wav b/sound/direct_sound_samples/ethnic_flavours_hyoushigi.wav
index 18731f5034..bb8653d051 100644
Binary files a/sound/direct_sound_samples/ethnic_flavours_hyoushigi.wav and b/sound/direct_sound_samples/ethnic_flavours_hyoushigi.wav differ
diff --git a/sound/direct_sound_samples/ethnic_flavours_kotsuzumi.wav b/sound/direct_sound_samples/ethnic_flavours_kotsuzumi.wav
index 5c99fedf38..133368a57a 100644
Binary files a/sound/direct_sound_samples/ethnic_flavours_kotsuzumi.wav and b/sound/direct_sound_samples/ethnic_flavours_kotsuzumi.wav differ
diff --git a/sound/direct_sound_samples/ethnic_flavours_ohtsuzumi.wav b/sound/direct_sound_samples/ethnic_flavours_ohtsuzumi.wav
index c12ae6de34..e7f08c8100 100644
Binary files a/sound/direct_sound_samples/ethnic_flavours_ohtsuzumi.wav and b/sound/direct_sound_samples/ethnic_flavours_ohtsuzumi.wav differ
diff --git a/sound/direct_sound_samples/heart_of_asia_gamelan.wav b/sound/direct_sound_samples/heart_of_asia_gamelan.wav
index a6258c97d4..48513e4b79 100644
Binary files a/sound/direct_sound_samples/heart_of_asia_gamelan.wav and b/sound/direct_sound_samples/heart_of_asia_gamelan.wav differ
diff --git a/sound/direct_sound_samples/phonemes/01.wav b/sound/direct_sound_samples/phonemes/01.wav
index d7f43544f5..ebc90ac2f7 100644
Binary files a/sound/direct_sound_samples/phonemes/01.wav and b/sound/direct_sound_samples/phonemes/01.wav differ
diff --git a/sound/direct_sound_samples/phonemes/02.wav b/sound/direct_sound_samples/phonemes/02.wav
index 6b9e4134c8..4c6bdbff7e 100644
Binary files a/sound/direct_sound_samples/phonemes/02.wav and b/sound/direct_sound_samples/phonemes/02.wav differ
diff --git a/sound/direct_sound_samples/phonemes/03.wav b/sound/direct_sound_samples/phonemes/03.wav
index a080496adb..d2e9934376 100644
Binary files a/sound/direct_sound_samples/phonemes/03.wav and b/sound/direct_sound_samples/phonemes/03.wav differ
diff --git a/sound/direct_sound_samples/phonemes/04.wav b/sound/direct_sound_samples/phonemes/04.wav
index 0525f8f5d3..ecba93ebf9 100644
Binary files a/sound/direct_sound_samples/phonemes/04.wav and b/sound/direct_sound_samples/phonemes/04.wav differ
diff --git a/sound/direct_sound_samples/phonemes/05.wav b/sound/direct_sound_samples/phonemes/05.wav
index 5df5562768..d7726826a6 100644
Binary files a/sound/direct_sound_samples/phonemes/05.wav and b/sound/direct_sound_samples/phonemes/05.wav differ
diff --git a/sound/direct_sound_samples/phonemes/06.wav b/sound/direct_sound_samples/phonemes/06.wav
index 3774664d97..0034485041 100644
Binary files a/sound/direct_sound_samples/phonemes/06.wav and b/sound/direct_sound_samples/phonemes/06.wav differ
diff --git a/sound/direct_sound_samples/phonemes/07.wav b/sound/direct_sound_samples/phonemes/07.wav
index fc44b7f771..5ed58e7010 100644
Binary files a/sound/direct_sound_samples/phonemes/07.wav and b/sound/direct_sound_samples/phonemes/07.wav differ
diff --git a/sound/direct_sound_samples/phonemes/08.wav b/sound/direct_sound_samples/phonemes/08.wav
index 47c50d63b0..c353b5c50b 100644
Binary files a/sound/direct_sound_samples/phonemes/08.wav and b/sound/direct_sound_samples/phonemes/08.wav differ
diff --git a/sound/direct_sound_samples/phonemes/09.wav b/sound/direct_sound_samples/phonemes/09.wav
index 762ece0dd8..b0eb9bd4bf 100644
Binary files a/sound/direct_sound_samples/phonemes/09.wav and b/sound/direct_sound_samples/phonemes/09.wav differ
diff --git a/sound/direct_sound_samples/phonemes/10.wav b/sound/direct_sound_samples/phonemes/10.wav
index da9fa6727c..e931a7d9df 100644
Binary files a/sound/direct_sound_samples/phonemes/10.wav and b/sound/direct_sound_samples/phonemes/10.wav differ
diff --git a/sound/direct_sound_samples/phonemes/11.wav b/sound/direct_sound_samples/phonemes/11.wav
index 5cd1904b42..949865e64a 100644
Binary files a/sound/direct_sound_samples/phonemes/11.wav and b/sound/direct_sound_samples/phonemes/11.wav differ
diff --git a/sound/direct_sound_samples/phonemes/12.wav b/sound/direct_sound_samples/phonemes/12.wav
index da638d82b0..573867ca92 100644
Binary files a/sound/direct_sound_samples/phonemes/12.wav and b/sound/direct_sound_samples/phonemes/12.wav differ
diff --git a/sound/direct_sound_samples/phonemes/13.wav b/sound/direct_sound_samples/phonemes/13.wav
index 2eb58a5f3f..a4629fa1d6 100644
Binary files a/sound/direct_sound_samples/phonemes/13.wav and b/sound/direct_sound_samples/phonemes/13.wav differ
diff --git a/sound/direct_sound_samples/phonemes/14.wav b/sound/direct_sound_samples/phonemes/14.wav
index fef0bb0ded..d6ae4c4bce 100644
Binary files a/sound/direct_sound_samples/phonemes/14.wav and b/sound/direct_sound_samples/phonemes/14.wav differ
diff --git a/sound/direct_sound_samples/phonemes/15.wav b/sound/direct_sound_samples/phonemes/15.wav
index 1dbe8cbfa3..80ac82c0ef 100644
Binary files a/sound/direct_sound_samples/phonemes/15.wav and b/sound/direct_sound_samples/phonemes/15.wav differ
diff --git a/sound/direct_sound_samples/phonemes/16.wav b/sound/direct_sound_samples/phonemes/16.wav
index 83f1818582..451b571f8e 100644
Binary files a/sound/direct_sound_samples/phonemes/16.wav and b/sound/direct_sound_samples/phonemes/16.wav differ
diff --git a/sound/direct_sound_samples/phonemes/17.wav b/sound/direct_sound_samples/phonemes/17.wav
index ad55b8bda5..79ddc5e756 100644
Binary files a/sound/direct_sound_samples/phonemes/17.wav and b/sound/direct_sound_samples/phonemes/17.wav differ
diff --git a/sound/direct_sound_samples/phonemes/18.wav b/sound/direct_sound_samples/phonemes/18.wav
index ecadb6f608..5bff7c6b97 100644
Binary files a/sound/direct_sound_samples/phonemes/18.wav and b/sound/direct_sound_samples/phonemes/18.wav differ
diff --git a/sound/direct_sound_samples/phonemes/19.wav b/sound/direct_sound_samples/phonemes/19.wav
index ff905abe22..5f846bea00 100644
Binary files a/sound/direct_sound_samples/phonemes/19.wav and b/sound/direct_sound_samples/phonemes/19.wav differ
diff --git a/sound/direct_sound_samples/phonemes/20.wav b/sound/direct_sound_samples/phonemes/20.wav
index 595702e084..e79694f650 100644
Binary files a/sound/direct_sound_samples/phonemes/20.wav and b/sound/direct_sound_samples/phonemes/20.wav differ
diff --git a/sound/direct_sound_samples/phonemes/21.wav b/sound/direct_sound_samples/phonemes/21.wav
index 7d1709212c..b399a3bd5f 100644
Binary files a/sound/direct_sound_samples/phonemes/21.wav and b/sound/direct_sound_samples/phonemes/21.wav differ
diff --git a/sound/direct_sound_samples/phonemes/22.wav b/sound/direct_sound_samples/phonemes/22.wav
index 274f6137aa..13f47560d8 100644
Binary files a/sound/direct_sound_samples/phonemes/22.wav and b/sound/direct_sound_samples/phonemes/22.wav differ
diff --git a/sound/direct_sound_samples/phonemes/23.wav b/sound/direct_sound_samples/phonemes/23.wav
index 72633f73c1..f399a12fe4 100644
Binary files a/sound/direct_sound_samples/phonemes/23.wav and b/sound/direct_sound_samples/phonemes/23.wav differ
diff --git a/sound/direct_sound_samples/phonemes/24.wav b/sound/direct_sound_samples/phonemes/24.wav
index 1d0e7b1a14..f7d92b633d 100644
Binary files a/sound/direct_sound_samples/phonemes/24.wav and b/sound/direct_sound_samples/phonemes/24.wav differ
diff --git a/sound/direct_sound_samples/phonemes/25.wav b/sound/direct_sound_samples/phonemes/25.wav
index 135bb246dd..429f608fb8 100644
Binary files a/sound/direct_sound_samples/phonemes/25.wav and b/sound/direct_sound_samples/phonemes/25.wav differ
diff --git a/sound/direct_sound_samples/phonemes/26.wav b/sound/direct_sound_samples/phonemes/26.wav
index e466df4d86..032ab3fd36 100644
Binary files a/sound/direct_sound_samples/phonemes/26.wav and b/sound/direct_sound_samples/phonemes/26.wav differ
diff --git a/sound/direct_sound_samples/phonemes/27.wav b/sound/direct_sound_samples/phonemes/27.wav
index c4d4ce8008..73589258c0 100644
Binary files a/sound/direct_sound_samples/phonemes/27.wav and b/sound/direct_sound_samples/phonemes/27.wav differ
diff --git a/sound/direct_sound_samples/phonemes/28.wav b/sound/direct_sound_samples/phonemes/28.wav
index fe9dde8e35..4050d35113 100644
Binary files a/sound/direct_sound_samples/phonemes/28.wav and b/sound/direct_sound_samples/phonemes/28.wav differ
diff --git a/sound/direct_sound_samples/phonemes/29.wav b/sound/direct_sound_samples/phonemes/29.wav
index d05658c97e..ae48eac22b 100644
Binary files a/sound/direct_sound_samples/phonemes/29.wav and b/sound/direct_sound_samples/phonemes/29.wav differ
diff --git a/sound/direct_sound_samples/phonemes/30.wav b/sound/direct_sound_samples/phonemes/30.wav
index aaf163ae97..fd76403a08 100644
Binary files a/sound/direct_sound_samples/phonemes/30.wav and b/sound/direct_sound_samples/phonemes/30.wav differ
diff --git a/sound/direct_sound_samples/phonemes/31.wav b/sound/direct_sound_samples/phonemes/31.wav
index 64b2c7f6db..b43bba09a9 100644
Binary files a/sound/direct_sound_samples/phonemes/31.wav and b/sound/direct_sound_samples/phonemes/31.wav differ
diff --git a/sound/direct_sound_samples/phonemes/32.wav b/sound/direct_sound_samples/phonemes/32.wav
index 98862f1b64..02599973ef 100644
Binary files a/sound/direct_sound_samples/phonemes/32.wav and b/sound/direct_sound_samples/phonemes/32.wav differ
diff --git a/sound/direct_sound_samples/phonemes/33.wav b/sound/direct_sound_samples/phonemes/33.wav
index f96a5e49fd..0a88ce09d9 100644
Binary files a/sound/direct_sound_samples/phonemes/33.wav and b/sound/direct_sound_samples/phonemes/33.wav differ
diff --git a/sound/direct_sound_samples/phonemes/34.wav b/sound/direct_sound_samples/phonemes/34.wav
index 1439810d44..145cf68e89 100644
Binary files a/sound/direct_sound_samples/phonemes/34.wav and b/sound/direct_sound_samples/phonemes/34.wav differ
diff --git a/sound/direct_sound_samples/phonemes/35.wav b/sound/direct_sound_samples/phonemes/35.wav
index aa6599bcc8..9c65433459 100644
Binary files a/sound/direct_sound_samples/phonemes/35.wav and b/sound/direct_sound_samples/phonemes/35.wav differ
diff --git a/sound/direct_sound_samples/phonemes/36.wav b/sound/direct_sound_samples/phonemes/36.wav
index 59f90f4614..1465286781 100644
Binary files a/sound/direct_sound_samples/phonemes/36.wav and b/sound/direct_sound_samples/phonemes/36.wav differ
diff --git a/sound/direct_sound_samples/phonemes/37.wav b/sound/direct_sound_samples/phonemes/37.wav
index 4df9cffee6..9ecae8d509 100644
Binary files a/sound/direct_sound_samples/phonemes/37.wav and b/sound/direct_sound_samples/phonemes/37.wav differ
diff --git a/sound/direct_sound_samples/phonemes/38.wav b/sound/direct_sound_samples/phonemes/38.wav
index 759a23d514..49aaa6863a 100644
Binary files a/sound/direct_sound_samples/phonemes/38.wav and b/sound/direct_sound_samples/phonemes/38.wav differ
diff --git a/sound/direct_sound_samples/phonemes/39.wav b/sound/direct_sound_samples/phonemes/39.wav
index da335b2690..89d0abc6fa 100644
Binary files a/sound/direct_sound_samples/phonemes/39.wav and b/sound/direct_sound_samples/phonemes/39.wav differ
diff --git a/sound/direct_sound_samples/phonemes/40.wav b/sound/direct_sound_samples/phonemes/40.wav
index 14944784a4..d6f65e9121 100644
Binary files a/sound/direct_sound_samples/phonemes/40.wav and b/sound/direct_sound_samples/phonemes/40.wav differ
diff --git a/sound/direct_sound_samples/phonemes/41.wav b/sound/direct_sound_samples/phonemes/41.wav
index 57e38fb3c8..917ca8a163 100644
Binary files a/sound/direct_sound_samples/phonemes/41.wav and b/sound/direct_sound_samples/phonemes/41.wav differ
diff --git a/sound/direct_sound_samples/phonemes/42.wav b/sound/direct_sound_samples/phonemes/42.wav
index a990969146..a97bbadcb5 100644
Binary files a/sound/direct_sound_samples/phonemes/42.wav and b/sound/direct_sound_samples/phonemes/42.wav differ
diff --git a/sound/direct_sound_samples/phonemes/43.wav b/sound/direct_sound_samples/phonemes/43.wav
index ab4a046743..8b7392277e 100644
Binary files a/sound/direct_sound_samples/phonemes/43.wav and b/sound/direct_sound_samples/phonemes/43.wav differ
diff --git a/sound/direct_sound_samples/phonemes/44.wav b/sound/direct_sound_samples/phonemes/44.wav
index efca4e3f97..4b412698b9 100644
Binary files a/sound/direct_sound_samples/phonemes/44.wav and b/sound/direct_sound_samples/phonemes/44.wav differ
diff --git a/sound/direct_sound_samples/phonemes/45.wav b/sound/direct_sound_samples/phonemes/45.wav
index 0369d3c2a1..0e2bfb5674 100644
Binary files a/sound/direct_sound_samples/phonemes/45.wav and b/sound/direct_sound_samples/phonemes/45.wav differ
diff --git a/sound/direct_sound_samples/phonemes/46.wav b/sound/direct_sound_samples/phonemes/46.wav
index 0fa8eb1f88..589cc1cd1f 100644
Binary files a/sound/direct_sound_samples/phonemes/46.wav and b/sound/direct_sound_samples/phonemes/46.wav differ
diff --git a/sound/direct_sound_samples/phonemes/47.wav b/sound/direct_sound_samples/phonemes/47.wav
index a55f03a153..45668adda6 100644
Binary files a/sound/direct_sound_samples/phonemes/47.wav and b/sound/direct_sound_samples/phonemes/47.wav differ
diff --git a/sound/direct_sound_samples/phonemes/48.wav b/sound/direct_sound_samples/phonemes/48.wav
index f6c7dd4502..d4ad0fec8d 100644
Binary files a/sound/direct_sound_samples/phonemes/48.wav and b/sound/direct_sound_samples/phonemes/48.wav differ
diff --git a/sound/direct_sound_samples/phonemes/49.wav b/sound/direct_sound_samples/phonemes/49.wav
index 4168f2e137..f9f949503e 100644
Binary files a/sound/direct_sound_samples/phonemes/49.wav and b/sound/direct_sound_samples/phonemes/49.wav differ
diff --git a/sound/direct_sound_samples/phonemes/50.wav b/sound/direct_sound_samples/phonemes/50.wav
index 88ce07d9d7..bdb57f46e2 100644
Binary files a/sound/direct_sound_samples/phonemes/50.wav and b/sound/direct_sound_samples/phonemes/50.wav differ
diff --git a/sound/direct_sound_samples/phonemes/51.wav b/sound/direct_sound_samples/phonemes/51.wav
index bd1a514180..9c734aaba8 100644
Binary files a/sound/direct_sound_samples/phonemes/51.wav and b/sound/direct_sound_samples/phonemes/51.wav differ
diff --git a/sound/direct_sound_samples/register_noise.wav b/sound/direct_sound_samples/register_noise.wav
index 89d94e61cc..090b0cd5aa 100644
Binary files a/sound/direct_sound_samples/register_noise.wav and b/sound/direct_sound_samples/register_noise.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_accordion.wav b/sound/direct_sound_samples/sc88pro_accordion.wav
index f19a98d277..1b28fa0e6c 100644
Binary files a/sound/direct_sound_samples/sc88pro_accordion.wav and b/sound/direct_sound_samples/sc88pro_accordion.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_accordion_duplicate.wav b/sound/direct_sound_samples/sc88pro_accordion_duplicate.wav
index f19a98d277..1b28fa0e6c 100644
Binary files a/sound/direct_sound_samples/sc88pro_accordion_duplicate.wav and b/sound/direct_sound_samples/sc88pro_accordion_duplicate.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_bubbles.wav b/sound/direct_sound_samples/sc88pro_bubbles.wav
index d6e61596d5..17d3eaa64f 100644
Binary files a/sound/direct_sound_samples/sc88pro_bubbles.wav and b/sound/direct_sound_samples/sc88pro_bubbles.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_church_organ3_high.wav b/sound/direct_sound_samples/sc88pro_church_organ3_high.wav
index 0766a8503d..d71d5d7be2 100644
Binary files a/sound/direct_sound_samples/sc88pro_church_organ3_high.wav and b/sound/direct_sound_samples/sc88pro_church_organ3_high.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_church_organ3_low.wav b/sound/direct_sound_samples/sc88pro_church_organ3_low.wav
index afc9c18907..38af40268b 100644
Binary files a/sound/direct_sound_samples/sc88pro_church_organ3_low.wav and b/sound/direct_sound_samples/sc88pro_church_organ3_low.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_fingered_bass.wav b/sound/direct_sound_samples/sc88pro_fingered_bass.wav
index 0e723b742b..dff67c22c5 100644
Binary files a/sound/direct_sound_samples/sc88pro_fingered_bass.wav and b/sound/direct_sound_samples/sc88pro_fingered_bass.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_flute.wav b/sound/direct_sound_samples/sc88pro_flute.wav
index 409ce0f744..6ec093c817 100644
Binary files a/sound/direct_sound_samples/sc88pro_flute.wav and b/sound/direct_sound_samples/sc88pro_flute.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_french_horn_60.wav b/sound/direct_sound_samples/sc88pro_french_horn_60.wav
index 105c186a2a..da82c73b64 100644
Binary files a/sound/direct_sound_samples/sc88pro_french_horn_60.wav and b/sound/direct_sound_samples/sc88pro_french_horn_60.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_french_horn_72.wav b/sound/direct_sound_samples/sc88pro_french_horn_72.wav
index 380d796307..3221dc49bc 100644
Binary files a/sound/direct_sound_samples/sc88pro_french_horn_72.wav and b/sound/direct_sound_samples/sc88pro_french_horn_72.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_fretless_bass.wav b/sound/direct_sound_samples/sc88pro_fretless_bass.wav
index f639d5ccf2..e7c59f564e 100644
Binary files a/sound/direct_sound_samples/sc88pro_fretless_bass.wav and b/sound/direct_sound_samples/sc88pro_fretless_bass.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_glockenspiel.wav b/sound/direct_sound_samples/sc88pro_glockenspiel.wav
index 4c9cbae149..d24e64efe9 100644
Binary files a/sound/direct_sound_samples/sc88pro_glockenspiel.wav and b/sound/direct_sound_samples/sc88pro_glockenspiel.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_harp.wav b/sound/direct_sound_samples/sc88pro_harp.wav
index bdb176720c..3a137c593d 100644
Binary files a/sound/direct_sound_samples/sc88pro_harp.wav and b/sound/direct_sound_samples/sc88pro_harp.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_jingle_bell.wav b/sound/direct_sound_samples/sc88pro_jingle_bell.wav
index 1eb6b1de1a..8342322428 100644
Binary files a/sound/direct_sound_samples/sc88pro_jingle_bell.wav and b/sound/direct_sound_samples/sc88pro_jingle_bell.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_mute_high_conga.wav b/sound/direct_sound_samples/sc88pro_mute_high_conga.wav
index c009d7265c..afa56506a1 100644
Binary files a/sound/direct_sound_samples/sc88pro_mute_high_conga.wav and b/sound/direct_sound_samples/sc88pro_mute_high_conga.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_nylon_str_guitar.wav b/sound/direct_sound_samples/sc88pro_nylon_str_guitar.wav
index 7538f508ad..e40e641802 100644
Binary files a/sound/direct_sound_samples/sc88pro_nylon_str_guitar.wav and b/sound/direct_sound_samples/sc88pro_nylon_str_guitar.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_open_low_conga.wav b/sound/direct_sound_samples/sc88pro_open_low_conga.wav
index 34a1e3f32a..030797c0d6 100644
Binary files a/sound/direct_sound_samples/sc88pro_open_low_conga.wav and b/sound/direct_sound_samples/sc88pro_open_low_conga.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_orchestra_cymbal_crash.wav b/sound/direct_sound_samples/sc88pro_orchestra_cymbal_crash.wav
index c3f89f9c78..58d90c404f 100644
Binary files a/sound/direct_sound_samples/sc88pro_orchestra_cymbal_crash.wav and b/sound/direct_sound_samples/sc88pro_orchestra_cymbal_crash.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_orchestra_snare.wav b/sound/direct_sound_samples/sc88pro_orchestra_snare.wav
index 96b10bb05f..43bb9ed9b8 100644
Binary files a/sound/direct_sound_samples/sc88pro_orchestra_snare.wav and b/sound/direct_sound_samples/sc88pro_orchestra_snare.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_organ2.wav b/sound/direct_sound_samples/sc88pro_organ2.wav
index bf6f2ba520..437ee2d03c 100644
Binary files a/sound/direct_sound_samples/sc88pro_organ2.wav and b/sound/direct_sound_samples/sc88pro_organ2.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_piano1_48.wav b/sound/direct_sound_samples/sc88pro_piano1_48.wav
index c7bcfca138..72e1cb4aa2 100644
Binary files a/sound/direct_sound_samples/sc88pro_piano1_48.wav and b/sound/direct_sound_samples/sc88pro_piano1_48.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_piano1_60.wav b/sound/direct_sound_samples/sc88pro_piano1_60.wav
index 7199386c7b..29cb5a8801 100644
Binary files a/sound/direct_sound_samples/sc88pro_piano1_60.wav and b/sound/direct_sound_samples/sc88pro_piano1_60.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_piano1_72.wav b/sound/direct_sound_samples/sc88pro_piano1_72.wav
index 603006eb6f..396f094525 100644
Binary files a/sound/direct_sound_samples/sc88pro_piano1_72.wav and b/sound/direct_sound_samples/sc88pro_piano1_72.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_piano1_84.wav b/sound/direct_sound_samples/sc88pro_piano1_84.wav
index 0d76370756..1956f95dad 100644
Binary files a/sound/direct_sound_samples/sc88pro_piano1_84.wav and b/sound/direct_sound_samples/sc88pro_piano1_84.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_pizzicato_strings.wav b/sound/direct_sound_samples/sc88pro_pizzicato_strings.wav
index 6bb6bc74a9..d89ea7c8d4 100644
Binary files a/sound/direct_sound_samples/sc88pro_pizzicato_strings.wav and b/sound/direct_sound_samples/sc88pro_pizzicato_strings.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_rnd_kick.wav b/sound/direct_sound_samples/sc88pro_rnd_kick.wav
index b05d88a812..02c440ce4c 100644
Binary files a/sound/direct_sound_samples/sc88pro_rnd_kick.wav and b/sound/direct_sound_samples/sc88pro_rnd_kick.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_rnd_snare.wav b/sound/direct_sound_samples/sc88pro_rnd_snare.wav
index c00ee759f7..69c9a6010e 100644
Binary files a/sound/direct_sound_samples/sc88pro_rnd_snare.wav and b/sound/direct_sound_samples/sc88pro_rnd_snare.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_slap_bass.wav b/sound/direct_sound_samples/sc88pro_slap_bass.wav
index 41d747259e..4883695165 100644
Binary files a/sound/direct_sound_samples/sc88pro_slap_bass.wav and b/sound/direct_sound_samples/sc88pro_slap_bass.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_square_wave.wav b/sound/direct_sound_samples/sc88pro_square_wave.wav
index 020dae03a4..5689c13f4e 100644
Binary files a/sound/direct_sound_samples/sc88pro_square_wave.wav and b/sound/direct_sound_samples/sc88pro_square_wave.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_string_ensemble_60.wav b/sound/direct_sound_samples/sc88pro_string_ensemble_60.wav
index 26e9db076c..1e43b2e5e2 100644
Binary files a/sound/direct_sound_samples/sc88pro_string_ensemble_60.wav and b/sound/direct_sound_samples/sc88pro_string_ensemble_60.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_string_ensemble_72.wav b/sound/direct_sound_samples/sc88pro_string_ensemble_72.wav
index 1699f831ca..5a3560bd3e 100644
Binary files a/sound/direct_sound_samples/sc88pro_string_ensemble_72.wav and b/sound/direct_sound_samples/sc88pro_string_ensemble_72.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_string_ensemble_84.wav b/sound/direct_sound_samples/sc88pro_string_ensemble_84.wav
index 5616d094a0..c07c8c4318 100644
Binary files a/sound/direct_sound_samples/sc88pro_string_ensemble_84.wav and b/sound/direct_sound_samples/sc88pro_string_ensemble_84.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_synth_bass.wav b/sound/direct_sound_samples/sc88pro_synth_bass.wav
index 5aa61ab8ca..98f6a4ef20 100644
Binary files a/sound/direct_sound_samples/sc88pro_synth_bass.wav and b/sound/direct_sound_samples/sc88pro_synth_bass.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_taiko.wav b/sound/direct_sound_samples/sc88pro_taiko.wav
index af01253368..433ab727ee 100644
Binary files a/sound/direct_sound_samples/sc88pro_taiko.wav and b/sound/direct_sound_samples/sc88pro_taiko.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_tambourine.wav b/sound/direct_sound_samples/sc88pro_tambourine.wav
index 016b2cc209..929ed5daca 100644
Binary files a/sound/direct_sound_samples/sc88pro_tambourine.wav and b/sound/direct_sound_samples/sc88pro_tambourine.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_timpani.wav b/sound/direct_sound_samples/sc88pro_timpani.wav
index bed5f113a1..03fb3ee714 100644
Binary files a/sound/direct_sound_samples/sc88pro_timpani.wav and b/sound/direct_sound_samples/sc88pro_timpani.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_timpani_with_snare.wav b/sound/direct_sound_samples/sc88pro_timpani_with_snare.wav
index 8ab1862d02..1c1560ed28 100644
Binary files a/sound/direct_sound_samples/sc88pro_timpani_with_snare.wav and b/sound/direct_sound_samples/sc88pro_timpani_with_snare.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_tr909_hand_clap.wav b/sound/direct_sound_samples/sc88pro_tr909_hand_clap.wav
index 2e07040cb4..9dba2ac9d6 100644
Binary files a/sound/direct_sound_samples/sc88pro_tr909_hand_clap.wav and b/sound/direct_sound_samples/sc88pro_tr909_hand_clap.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_trumpet_60.wav b/sound/direct_sound_samples/sc88pro_trumpet_60.wav
index 0c857d971d..0675873a14 100644
Binary files a/sound/direct_sound_samples/sc88pro_trumpet_60.wav and b/sound/direct_sound_samples/sc88pro_trumpet_60.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_trumpet_72.wav b/sound/direct_sound_samples/sc88pro_trumpet_72.wav
index 93a62dc0ef..27f75206e1 100644
Binary files a/sound/direct_sound_samples/sc88pro_trumpet_72.wav and b/sound/direct_sound_samples/sc88pro_trumpet_72.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_trumpet_84.wav b/sound/direct_sound_samples/sc88pro_trumpet_84.wav
index 12549376b5..f1713f901c 100644
Binary files a/sound/direct_sound_samples/sc88pro_trumpet_84.wav and b/sound/direct_sound_samples/sc88pro_trumpet_84.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_tuba_39.wav b/sound/direct_sound_samples/sc88pro_tuba_39.wav
index c3b78eea55..619ebf6e3a 100644
Binary files a/sound/direct_sound_samples/sc88pro_tuba_39.wav and b/sound/direct_sound_samples/sc88pro_tuba_39.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_tuba_51.wav b/sound/direct_sound_samples/sc88pro_tuba_51.wav
index fed8c72f43..4bb436de79 100644
Binary files a/sound/direct_sound_samples/sc88pro_tuba_51.wav and b/sound/direct_sound_samples/sc88pro_tuba_51.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_tubular_bell.wav b/sound/direct_sound_samples/sc88pro_tubular_bell.wav
index 8c892236b9..eed5b32b2b 100644
Binary files a/sound/direct_sound_samples/sc88pro_tubular_bell.wav and b/sound/direct_sound_samples/sc88pro_tubular_bell.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_wind.wav b/sound/direct_sound_samples/sc88pro_wind.wav
index 3856a4af1f..1b3c78c42d 100644
Binary files a/sound/direct_sound_samples/sc88pro_wind.wav and b/sound/direct_sound_samples/sc88pro_wind.wav differ
diff --git a/sound/direct_sound_samples/sc88pro_xylophone.wav b/sound/direct_sound_samples/sc88pro_xylophone.wav
index a08296baa1..59aec0711c 100644
Binary files a/sound/direct_sound_samples/sc88pro_xylophone.wav and b/sound/direct_sound_samples/sc88pro_xylophone.wav differ
diff --git a/sound/direct_sound_samples/sd90_ambient_tom.wav b/sound/direct_sound_samples/sd90_ambient_tom.wav
index 6f390959fc..f524a7c882 100644
Binary files a/sound/direct_sound_samples/sd90_ambient_tom.wav and b/sound/direct_sound_samples/sd90_ambient_tom.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.wav b/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.wav
index 3c96f1cbca..2940e14a58 100644
Binary files a/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.wav and b/sound/direct_sound_samples/sd90_classical_detuned_ep1_high.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.wav b/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.wav
index 39e25a89ce..f1f8dac798 100644
Binary files a/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.wav and b/sound/direct_sound_samples/sd90_classical_detuned_ep1_low.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_distortion_guitar_high.wav b/sound/direct_sound_samples/sd90_classical_distortion_guitar_high.wav
index 097d91f734..23ab4ff457 100644
Binary files a/sound/direct_sound_samples/sd90_classical_distortion_guitar_high.wav and b/sound/direct_sound_samples/sd90_classical_distortion_guitar_high.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_distortion_guitar_low.wav b/sound/direct_sound_samples/sd90_classical_distortion_guitar_low.wav
index d281d77572..475a15e82c 100644
Binary files a/sound/direct_sound_samples/sd90_classical_distortion_guitar_low.wav and b/sound/direct_sound_samples/sd90_classical_distortion_guitar_low.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_oboe.wav b/sound/direct_sound_samples/sd90_classical_oboe.wav
index 2b9e96afc4..5bfa900421 100644
Binary files a/sound/direct_sound_samples/sd90_classical_oboe.wav and b/sound/direct_sound_samples/sd90_classical_oboe.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_overdrive_guitar.wav b/sound/direct_sound_samples/sd90_classical_overdrive_guitar.wav
index 7380be1e1b..231c987087 100644
Binary files a/sound/direct_sound_samples/sd90_classical_overdrive_guitar.wav and b/sound/direct_sound_samples/sd90_classical_overdrive_guitar.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_shakuhachi.wav b/sound/direct_sound_samples/sd90_classical_shakuhachi.wav
index 587cee2cb7..62609c87b0 100644
Binary files a/sound/direct_sound_samples/sd90_classical_shakuhachi.wav and b/sound/direct_sound_samples/sd90_classical_shakuhachi.wav differ
diff --git a/sound/direct_sound_samples/sd90_classical_whistle.wav b/sound/direct_sound_samples/sd90_classical_whistle.wav
index 61a58445bf..fd8b1395ac 100644
Binary files a/sound/direct_sound_samples/sd90_classical_whistle.wav and b/sound/direct_sound_samples/sd90_classical_whistle.wav differ
diff --git a/sound/direct_sound_samples/sd90_cowbell.wav b/sound/direct_sound_samples/sd90_cowbell.wav
index 9c35bf6541..7e5bd33541 100644
Binary files a/sound/direct_sound_samples/sd90_cowbell.wav and b/sound/direct_sound_samples/sd90_cowbell.wav differ
diff --git a/sound/direct_sound_samples/sd90_enhanced_delay_shaku.wav b/sound/direct_sound_samples/sd90_enhanced_delay_shaku.wav
index d87fc68b2b..92c04b1615 100644
Binary files a/sound/direct_sound_samples/sd90_enhanced_delay_shaku.wav and b/sound/direct_sound_samples/sd90_enhanced_delay_shaku.wav differ
diff --git a/sound/direct_sound_samples/sd90_open_triangle.wav b/sound/direct_sound_samples/sd90_open_triangle.wav
index 92df2b3074..415054e23c 100644
Binary files a/sound/direct_sound_samples/sd90_open_triangle.wav and b/sound/direct_sound_samples/sd90_open_triangle.wav differ
diff --git a/sound/direct_sound_samples/sd90_solo_snare.wav b/sound/direct_sound_samples/sd90_solo_snare.wav
index ad5d872844..7ff2c98e49 100644
Binary files a/sound/direct_sound_samples/sd90_solo_snare.wav and b/sound/direct_sound_samples/sd90_solo_snare.wav differ
diff --git a/sound/direct_sound_samples/sd90_special_scream_drive.wav b/sound/direct_sound_samples/sd90_special_scream_drive.wav
index 8b4b563ac7..3f97406269 100644
Binary files a/sound/direct_sound_samples/sd90_special_scream_drive.wav and b/sound/direct_sound_samples/sd90_special_scream_drive.wav differ
diff --git a/sound/direct_sound_samples/steinway_b_piano.wav b/sound/direct_sound_samples/steinway_b_piano.wav
index 5a4d94b0a8..ef5a4849c3 100644
Binary files a/sound/direct_sound_samples/steinway_b_piano.wav and b/sound/direct_sound_samples/steinway_b_piano.wav differ
diff --git a/sound/direct_sound_samples/trinity_30303_mega_bass.wav b/sound/direct_sound_samples/trinity_30303_mega_bass.wav
index 6ad677b7d8..6a6e249a47 100644
Binary files a/sound/direct_sound_samples/trinity_30303_mega_bass.wav and b/sound/direct_sound_samples/trinity_30303_mega_bass.wav differ
diff --git a/sound/direct_sound_samples/trinity_big_boned.wav b/sound/direct_sound_samples/trinity_big_boned.wav
index 7f42b9fcd9..5967713d65 100644
Binary files a/sound/direct_sound_samples/trinity_big_boned.wav and b/sound/direct_sound_samples/trinity_big_boned.wav differ
diff --git a/sound/direct_sound_samples/trinity_cymbal_crash.wav b/sound/direct_sound_samples/trinity_cymbal_crash.wav
index c3e52d3e29..36337b641c 100644
Binary files a/sound/direct_sound_samples/trinity_cymbal_crash.wav and b/sound/direct_sound_samples/trinity_cymbal_crash.wav differ
diff --git a/sound/direct_sound_samples/unknown_01.wav b/sound/direct_sound_samples/unknown_01.wav
index 75d05e7f4d..4e069d0bfd 100644
Binary files a/sound/direct_sound_samples/unknown_01.wav and b/sound/direct_sound_samples/unknown_01.wav differ
diff --git a/sound/direct_sound_samples/unknown_02.wav b/sound/direct_sound_samples/unknown_02.wav
index 1a25b1fe18..7c87e021b4 100644
Binary files a/sound/direct_sound_samples/unknown_02.wav and b/sound/direct_sound_samples/unknown_02.wav differ
diff --git a/sound/direct_sound_samples/unknown_03.wav b/sound/direct_sound_samples/unknown_03.wav
index 1a64c4b25d..922f43db1b 100644
Binary files a/sound/direct_sound_samples/unknown_03.wav and b/sound/direct_sound_samples/unknown_03.wav differ
diff --git a/sound/direct_sound_samples/unknown_04.wav b/sound/direct_sound_samples/unknown_04.wav
index a278be2758..d2d216aa9d 100644
Binary files a/sound/direct_sound_samples/unknown_04.wav and b/sound/direct_sound_samples/unknown_04.wav differ
diff --git a/sound/direct_sound_samples/unknown_05.wav b/sound/direct_sound_samples/unknown_05.wav
index dd5eee1d2c..c344cc5c6f 100644
Binary files a/sound/direct_sound_samples/unknown_05.wav and b/sound/direct_sound_samples/unknown_05.wav differ
diff --git a/sound/direct_sound_samples/unknown_06.wav b/sound/direct_sound_samples/unknown_06.wav
index 396eb3e721..01ac24db5f 100644
Binary files a/sound/direct_sound_samples/unknown_06.wav and b/sound/direct_sound_samples/unknown_06.wav differ
diff --git a/sound/direct_sound_samples/unknown_07.wav b/sound/direct_sound_samples/unknown_07.wav
index b1e0a0d08f..437393e8bb 100644
Binary files a/sound/direct_sound_samples/unknown_07.wav and b/sound/direct_sound_samples/unknown_07.wav differ
diff --git a/sound/direct_sound_samples/unknown_08.wav b/sound/direct_sound_samples/unknown_08.wav
index 420ee23ce3..70fbefc215 100644
Binary files a/sound/direct_sound_samples/unknown_08.wav and b/sound/direct_sound_samples/unknown_08.wav differ
diff --git a/sound/direct_sound_samples/unknown_09.wav b/sound/direct_sound_samples/unknown_09.wav
index fd1ee4dd78..1ed463a664 100644
Binary files a/sound/direct_sound_samples/unknown_09.wav and b/sound/direct_sound_samples/unknown_09.wav differ
diff --git a/sound/direct_sound_samples/unknown_10.wav b/sound/direct_sound_samples/unknown_10.wav
index 63cf6043cb..5732a06edd 100644
Binary files a/sound/direct_sound_samples/unknown_10.wav and b/sound/direct_sound_samples/unknown_10.wav differ
diff --git a/sound/direct_sound_samples/unknown_11.wav b/sound/direct_sound_samples/unknown_11.wav
index f2e648045b..e911c04a9b 100644
Binary files a/sound/direct_sound_samples/unknown_11.wav and b/sound/direct_sound_samples/unknown_11.wav differ
diff --git a/sound/direct_sound_samples/unknown_12.wav b/sound/direct_sound_samples/unknown_12.wav
index 146db2c348..39d75f2de4 100644
Binary files a/sound/direct_sound_samples/unknown_12.wav and b/sound/direct_sound_samples/unknown_12.wav differ
diff --git a/sound/direct_sound_samples/unknown_13.wav b/sound/direct_sound_samples/unknown_13.wav
index 1618ea28b5..79fe36dc1b 100644
Binary files a/sound/direct_sound_samples/unknown_13.wav and b/sound/direct_sound_samples/unknown_13.wav differ
diff --git a/sound/direct_sound_samples/unknown_14.wav b/sound/direct_sound_samples/unknown_14.wav
index 4c509795ad..2a44425a5f 100644
Binary files a/sound/direct_sound_samples/unknown_14.wav and b/sound/direct_sound_samples/unknown_14.wav differ
diff --git a/sound/direct_sound_samples/unknown_15.wav b/sound/direct_sound_samples/unknown_15.wav
index 080c4ad841..d9a4ae6a41 100644
Binary files a/sound/direct_sound_samples/unknown_15.wav and b/sound/direct_sound_samples/unknown_15.wav differ
diff --git a/sound/direct_sound_samples/unknown_16.wav b/sound/direct_sound_samples/unknown_16.wav
index 72cf7dcc95..a13c322bfe 100644
Binary files a/sound/direct_sound_samples/unknown_16.wav and b/sound/direct_sound_samples/unknown_16.wav differ
diff --git a/sound/direct_sound_samples/unknown_17.wav b/sound/direct_sound_samples/unknown_17.wav
index 5a277f7d44..639dd8fcc8 100644
Binary files a/sound/direct_sound_samples/unknown_17.wav and b/sound/direct_sound_samples/unknown_17.wav differ
diff --git a/sound/direct_sound_samples/unknown_18.wav b/sound/direct_sound_samples/unknown_18.wav
index 9ee0027921..5533e49898 100644
Binary files a/sound/direct_sound_samples/unknown_18.wav and b/sound/direct_sound_samples/unknown_18.wav differ
diff --git a/sound/direct_sound_samples/unknown_bell.wav b/sound/direct_sound_samples/unknown_bell.wav
index 4dc82a170b..d996d9274b 100644
Binary files a/sound/direct_sound_samples/unknown_bell.wav and b/sound/direct_sound_samples/unknown_bell.wav differ
diff --git a/sound/direct_sound_samples/unknown_close_hihat.wav b/sound/direct_sound_samples/unknown_close_hihat.wav
index 86774ce3ce..1c0ddae804 100644
Binary files a/sound/direct_sound_samples/unknown_close_hihat.wav and b/sound/direct_sound_samples/unknown_close_hihat.wav differ
diff --git a/sound/direct_sound_samples/unknown_female_voice.wav b/sound/direct_sound_samples/unknown_female_voice.wav
index 44e73b3395..75ebea6183 100644
Binary files a/sound/direct_sound_samples/unknown_female_voice.wav and b/sound/direct_sound_samples/unknown_female_voice.wav differ
diff --git a/sound/direct_sound_samples/unknown_koto_high.wav b/sound/direct_sound_samples/unknown_koto_high.wav
index b9591a098f..a37b333aab 100644
Binary files a/sound/direct_sound_samples/unknown_koto_high.wav and b/sound/direct_sound_samples/unknown_koto_high.wav differ
diff --git a/sound/direct_sound_samples/unknown_koto_low.wav b/sound/direct_sound_samples/unknown_koto_low.wav
index a1736cafc7..a8ea9d5fbe 100644
Binary files a/sound/direct_sound_samples/unknown_koto_low.wav and b/sound/direct_sound_samples/unknown_koto_low.wav differ
diff --git a/sound/direct_sound_samples/unknown_open_hihat.wav b/sound/direct_sound_samples/unknown_open_hihat.wav
index 3a9ee824c1..d9fb05ab7c 100644
Binary files a/sound/direct_sound_samples/unknown_open_hihat.wav and b/sound/direct_sound_samples/unknown_open_hihat.wav differ
diff --git a/sound/direct_sound_samples/unknown_snare.wav b/sound/direct_sound_samples/unknown_snare.wav
index 03295e4763..f9047e0d98 100644
Binary files a/sound/direct_sound_samples/unknown_snare.wav and b/sound/direct_sound_samples/unknown_snare.wav differ
diff --git a/sound/direct_sound_samples/unknown_synth_snare.wav b/sound/direct_sound_samples/unknown_synth_snare.wav
index 774194423d..1ec62fb576 100644
Binary files a/sound/direct_sound_samples/unknown_synth_snare.wav and b/sound/direct_sound_samples/unknown_synth_snare.wav differ
diff --git a/sound/direct_sound_samples/unused_guitar_separates_power_chord.wav b/sound/direct_sound_samples/unused_guitar_separates_power_chord.wav
index c75373087b..4dae4f0f7a 100644
Binary files a/sound/direct_sound_samples/unused_guitar_separates_power_chord.wav and b/sound/direct_sound_samples/unused_guitar_separates_power_chord.wav differ
diff --git a/sound/direct_sound_samples/unused_heart_of_asia_indian_drum.wav b/sound/direct_sound_samples/unused_heart_of_asia_indian_drum.wav
index 49d67a30f3..7ee8c27f6d 100644
Binary files a/sound/direct_sound_samples/unused_heart_of_asia_indian_drum.wav and b/sound/direct_sound_samples/unused_heart_of_asia_indian_drum.wav differ
diff --git a/sound/direct_sound_samples/unused_sc55_tom.wav b/sound/direct_sound_samples/unused_sc55_tom.wav
index b4c225827f..944e1031f5 100644
Binary files a/sound/direct_sound_samples/unused_sc55_tom.wav and b/sound/direct_sound_samples/unused_sc55_tom.wav differ
diff --git a/sound/direct_sound_samples/unused_sc88pro_unison_slap.wav b/sound/direct_sound_samples/unused_sc88pro_unison_slap.wav
index 690cbc9183..e9f48d6ff7 100644
Binary files a/sound/direct_sound_samples/unused_sc88pro_unison_slap.wav and b/sound/direct_sound_samples/unused_sc88pro_unison_slap.wav differ
diff --git a/sound/direct_sound_samples/unused_sd90_oboe.wav b/sound/direct_sound_samples/unused_sd90_oboe.wav
index e7609ed53d..6ffcb4e003 100644
Binary files a/sound/direct_sound_samples/unused_sd90_oboe.wav and b/sound/direct_sound_samples/unused_sd90_oboe.wav differ
diff --git a/sound/direct_sound_samples/unused_unknown_male_voice.wav b/sound/direct_sound_samples/unused_unknown_male_voice.wav
index 7612c9b61d..cd6f8b1cdf 100644
Binary files a/sound/direct_sound_samples/unused_unknown_male_voice.wav and b/sound/direct_sound_samples/unused_unknown_male_voice.wav differ
diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c
index 5743720dc5..a47f8b7979 100644
--- a/src/battle_script_commands.c
+++ b/src/battle_script_commands.c
@@ -7425,7 +7425,6 @@ static void Cmd_setprotectlike(void)
{
CMD_ARGS();
- bool32 protectFails = TRUE;
bool32 notLastTurn = TRUE;
u32 protectMethod = GetMoveProtectMethod(gCurrentMove);
@@ -7455,10 +7454,8 @@ static void Cmd_setprotectlike(void)
}
gBattleMons[gBattlerAttacker].volatiles.protectUses++;
- protectFails = FALSE;
}
-
- if (protectFails)
+ else // Protect failed
{
gBattleMons[gBattlerAttacker].volatiles.protectUses = 0;
gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_PROTECT_FAILED;
diff --git a/src/dexnav.c b/src/dexnav.c
index 88c340a2ca..b6421a3804 100644
--- a/src/dexnav.c
+++ b/src/dexnav.c
@@ -107,6 +107,7 @@ struct DexNavSearch
u8 starSpriteIds[3];
u8 ownedIconSpriteId;
u8 exclamationSpriteId;
+ u32 startingTime;
u8 hiddenSearch:1;
u8 isHiddenMon:1;
u8 unk:6;
@@ -155,11 +156,10 @@ static u8 DexNavPickTile(enum EncounterType environment, u8 xSize, u8 ySize, boo
static void DexNavProximityUpdate(void);
static void DexNavDrawIcons(void);
static void DexNavUpdateSearchWindow(u8 proximity, u8 searchLevel);
-static void Task_DexNavSearch(u8 taskId);
-static void EndDexNavSearchSetupScript(const u8 *script, u8 taskId);
// HIDDEN MONS
static void DexNavDrawHiddenIcons(void);
static void DrawHiddenSearchWindow(u8 width);
+static void RevealHiddenMon(void);
//// Const Data
// gui image data
@@ -790,16 +790,8 @@ static u8 GetSearchLevel(u16 species)
return searchLevel;
}
-#define tProximity data[0]
-#define tFrameCount data[1]
-#define tSpecies data[2]
-#define tEnvironment data[3]
-#define tRevealed data[4]
-
-static void Task_SetUpDexNavSearch(u8 taskId)
+static void SetUpDexNavSearch(void)
{
- struct Task *task = &gTasks[taskId];
-
u16 species = sDexNavSearchDataPtr->species;
u8 searchLevel = GetSearchLevel(species);
@@ -831,34 +823,29 @@ static void Task_SetUpDexNavSearch(u8 taskId)
DexNavUpdateSearchWindow(sDexNavSearchDataPtr->proximity, searchLevel);
}
- FlagSet(DN_FLAG_SEARCHING);
gPlayerAvatar.creeping = TRUE; //initialize as true in case mon appears beside you
- task->tProximity = gSprites[gPlayerAvatar.spriteId].x;
- task->tFrameCount = 0;
- task->func = Task_DexNavSearch;
+ sDexNavSearchDataPtr->proximity = gSprites[gPlayerAvatar.spriteId].x;
+ sDexNavSearchDataPtr->startingTime = gMain.vblankCounter1;
IncrementGameStat(GAME_STAT_DEXNAV_SCANNED);
}
-static void DexNavSearchBail(u8 taskId, const u8 *script)
+static void DexNavSearchBail(const u8 *script)
{
TRY_FREE_AND_SET_NULL(sDexNavSearchDataPtr);
+ FlagClear(DN_FLAG_SEARCHING);
FreeMonIconPalettes();
ScriptContext_SetupScript(script);
- DestroyTask(taskId);
}
-static void Task_InitDexNavSearch(u8 taskId)
+static bool8 InitDexNavSearch(u32 species, u32 environment)
{
- struct Task *task = &gTasks[taskId];
- u16 species = task->tSpecies;
- u8 environment = task->tEnvironment;
-
sDexNavSearchDataPtr = AllocZeroed(sizeof(struct DexNavSearch));
if (sDexNavSearchDataPtr == NULL)
{
- DexNavSearchBail(taskId, EventScript_NotFoundNearby);
- return;
+ DexNavSearchBail(EventScript_NotFoundNearby);
+ return TRUE;
}
+ FlagSet(DN_FLAG_SEARCHING);
// assign non-objects to struct
sDexNavSearchDataPtr->species = species;
@@ -868,19 +855,19 @@ static void Task_InitDexNavSearch(u8 taskId)
if (GetFlashLevel() > 0)
{
- DexNavSearchBail(taskId, EventScript_TooDark);
- return;
+ DexNavSearchBail(EventScript_TooDark);
+ return TRUE;
}
if (sDexNavSearchDataPtr->monLevel == MON_LEVEL_NONEXISTENT || !TryStartHiddenMonFieldEffect(sDexNavSearchDataPtr->environment, 12, 12, FALSE))
{
- DexNavSearchBail(taskId, EventScript_NotFoundNearby);
- return;
+ DexNavSearchBail(EventScript_NotFoundNearby);
+ return TRUE;
}
sDexNavSearchDataPtr->hiddenSearch = FALSE;
- task->tRevealed = TRUE; //search window revealed
- task->func = Task_SetUpDexNavSearch;
+ SetUpDexNavSearch();
+ return FALSE;
}
static void DexNavDrawPotentialStars(u8 potential, u8 *dst)
@@ -949,36 +936,50 @@ static void DexNavDrawIcons(void)
/////////////////////
//// SEARCH TASK ////
/////////////////////
-bool8 TryStartDexNavSearch(void)
+static void RevealHiddenSearch(void)
+{
+ PlaySE(SE_DEX_SEARCH);
+ ClearStdWindowAndFrameToTransparent(sDexNavSearchDataPtr->windowId, FALSE);
+ CopyWindowToVram(sDexNavSearchDataPtr->windowId, 3);
+ RemoveWindow(sDexNavSearchDataPtr->windowId);
+ DestroySprite(&gSprites[sDexNavSearchDataPtr->iconSpriteId]);
+ sDexNavSearchDataPtr->hiddenSearch = FALSE; //now its a regular dexnav search
+ RevealHiddenMon();
+}
+
+bool32 TryStartDexNavSearch(void)
{
- u8 taskId;
u16 val = VarGet(DN_VAR_SPECIES);
+ if (FlagGet(DN_FLAG_SEARCHING) && sDexNavSearchDataPtr->hiddenSearch)
+ {
+ RevealHiddenSearch();
+ return FALSE;
+ }
+
if (FlagGet(DN_FLAG_SEARCHING) || (val & DEXNAV_MASK_SPECIES) == SPECIES_NONE)
return FALSE;
HideMapNamePopUpWindow();
ChangeBgY_ScreenOff(0, 0, 0);
- taskId = CreateTask(Task_InitDexNavSearch, 0);
- gTasks[taskId].tSpecies = val & DEXNAV_MASK_SPECIES;
- gTasks[taskId].tEnvironment = val >> 14;
PlaySE(SE_DEX_SEARCH);
- return FALSE; //we dont actually want to enable the script context
+ return InitDexNavSearch(val & DEXNAV_MASK_SPECIES, val >> 14);
}
-void EndDexNavSearch(u8 taskId)
+void EndDexNavSearch(void)
{
- FlagClear(DN_FLAG_SEARCHING);
- DestroyTask(taskId);
+ if (!FlagGet(DN_FLAG_SEARCHING))
+ return;
RemoveDexNavWindowAndGfx();
FieldEffectStop(&gSprites[sDexNavSearchDataPtr->fldEffSpriteId], sDexNavSearchDataPtr->fldEffId);
- Free(sDexNavSearchDataPtr);
+ FREE_AND_SET_NULL(sDexNavSearchDataPtr);
+ FlagClear(DN_FLAG_SEARCHING);
}
-static void EndDexNavSearchSetupScript(const u8 *script, u8 taskId)
+static void EndDexNavSearchSetupScript(const u8 *script)
{
gSaveBlock3Ptr->dexNavChain = 0; //reset chain
- EndDexNavSearch(taskId);
+ EndDexNavSearch();
ScriptContext_SetupScript(script);
}
@@ -992,9 +993,8 @@ static u8 GetMovementProximityBySearchLevel(void)
return 4;
}
-static void Task_RevealHiddenMon(u8 taskId)
+static void RevealHiddenMon(void)
{
- struct Task *task = &gTasks[taskId];
u16 species = sDexNavSearchDataPtr->species;
// remove owned icon if it exists
@@ -1031,53 +1031,68 @@ static void Task_RevealHiddenMon(u8 taskId)
DrawDexNavSearchMonIcon(species, &sDexNavSearchDataPtr->iconSpriteId, GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_CAUGHT));
}
+ sDexNavSearchDataPtr->startingTime = gMain.vblankCounter1;
DexNavUpdateDirectionArrow();
- task->func = Task_DexNavSearch;
- task->tFrameCount = 0; //restart search clock
}
-static void Task_DexNavSearch(u8 taskId)
+bool32 OnStep_DexNavSearch(void)
{
- struct Task *task = &gTasks[taskId];
+ if (!FlagGet(DN_FLAG_SEARCHING))
+ return FALSE;
+
+ u32 frameCount = gMain.vblankCounter1 - sDexNavSearchDataPtr->startingTime;
+ DexNavProximityUpdate();
+ if (!sDexNavSearchDataPtr->hiddenSearch) //update search window info only if revealed mon
+ DexNavUpdateSearchWindow(sDexNavSearchDataPtr->proximity, sDexNavSearchDataPtr->searchLevel);
if (sDexNavSearchDataPtr->proximity > MAX_PROXIMITY)
{ // out of range
- if (sDexNavSearchDataPtr->hiddenSearch && !task->tRevealed)
- EndDexNavSearch(taskId);
+ if (sDexNavSearchDataPtr->hiddenSearch)
+ {
+ EndDexNavSearch();
+ return FALSE;
+ }
else
- EndDexNavSearchSetupScript(EventScript_LostSignal, taskId);
- return;
+ {
+ EndDexNavSearchSetupScript(EventScript_LostSignal);
+ return TRUE;
+ }
}
- if (sDexNavSearchDataPtr->proximity <= CREEPING_PROXIMITY && !gPlayerAvatar.creeping && task->tFrameCount > 60)
+ if (sDexNavSearchDataPtr->proximity <= CREEPING_PROXIMITY && !gPlayerAvatar.creeping && frameCount > 60)
{ //should be creeping but player walks normally
- if (sDexNavSearchDataPtr->hiddenSearch && !task->tRevealed)
- EndDexNavSearch(taskId);
+ if (sDexNavSearchDataPtr->hiddenSearch)
+ {
+ EndDexNavSearch();
+ return FALSE;
+ }
else
- EndDexNavSearchSetupScript(EventScript_MovedTooFast, taskId);
- return;
+ {
+ EndDexNavSearchSetupScript(EventScript_MovedTooFast);
+ return TRUE;
+ }
}
if (sDexNavSearchDataPtr->proximity <= SNEAKING_PROXIMITY && TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_DASH | PLAYER_AVATAR_FLAG_BIKE))
{ // running/biking too close
//always do event script, even if player hasn't revealed a hidden mon. It's assumed they would be creeping towards it
- EndDexNavSearchSetupScript(EventScript_MovedTooFast, taskId);
- return;
+ EndDexNavSearchSetupScript(EventScript_MovedTooFast);
+ return TRUE;
}
- if (ArePlayerFieldControlsLocked() == TRUE)
- { // check if script just executed
- EndDexNavSearch(taskId);
- return;
- }
-
- if (gTasks[taskId].tFrameCount > DEXNAV_TIMEOUT * 60)
+ if (frameCount > DEXNAV_TIMEOUT * 60)
{ // player took too long
- if (sDexNavSearchDataPtr->hiddenSearch && !task->tRevealed)
- EndDexNavSearch(taskId);
+ if (sDexNavSearchDataPtr->hiddenSearch)
+ {
+ EndDexNavSearch();
+ return FALSE;
+ }
else
- EndDexNavSearchSetupScript(EventScript_PokemonGotAway, taskId);
- return;
+ {
+ EndDexNavSearchSetupScript(EventScript_PokemonGotAway);
+ return TRUE;
+ }
+ return FALSE;
}
if (sDexNavSearchDataPtr->proximity < 1)
@@ -1086,54 +1101,34 @@ static void Task_DexNavSearch(u8 taskId)
CreateDexNavWildMon(sDexNavSearchDataPtr->species, sDexNavSearchDataPtr->potential, sDexNavSearchDataPtr->monLevel,
sDexNavSearchDataPtr->abilityNum, sDexNavSearchDataPtr->heldItem, sDexNavSearchDataPtr->moves);
- FlagClear(DN_FLAG_SEARCHING);
ScriptContext_SetupScript(EventScript_StartDexNavBattle);
- Free(sDexNavSearchDataPtr);
- DestroyTask(taskId);
- return;
+ FREE_AND_SET_NULL(sDexNavSearchDataPtr);
+ FlagClear(DN_FLAG_SEARCHING);
+ return TRUE;
}
- if (sDexNavSearchDataPtr->hiddenSearch && !task->tRevealed &&
- (JOY_NEW(R_BUTTON) || (sDexNavSearchDataPtr->proximity < CREEPING_PROXIMITY)))
+ if (sDexNavSearchDataPtr->hiddenSearch && sDexNavSearchDataPtr->proximity < CREEPING_PROXIMITY)
{
- PlaySE(SE_DEX_SEARCH);
- ClearStdWindowAndFrameToTransparent(sDexNavSearchDataPtr->windowId, FALSE);
- CopyWindowToVram(sDexNavSearchDataPtr->windowId, 3);
- RemoveWindow(sDexNavSearchDataPtr->windowId);
- DestroySprite(&gSprites[sDexNavSearchDataPtr->iconSpriteId]);
- task->tRevealed = TRUE; //regular dexnav search
- //sDexNavSearchDataPtr->hiddenSearch = FALSE; //now its a regular dexnav search
- task->func = Task_RevealHiddenMon;
- return;
+ RevealHiddenSearch();
+ return FALSE;
}
//Caves and water the pokemon moves around
if ((sDexNavSearchDataPtr->environment == ENCOUNTER_TYPE_WATER || GetCurrentMapType() == MAP_TYPE_UNDERGROUND)
&& sDexNavSearchDataPtr->proximity < GetMovementProximityBySearchLevel() && sDexNavSearchDataPtr->movementCount < 2
- && task->tRevealed)
+ && !sDexNavSearchDataPtr->hiddenSearch)
{
FieldEffectStop(&gSprites[sDexNavSearchDataPtr->fldEffSpriteId], sDexNavSearchDataPtr->fldEffId);
if (!TryStartHiddenMonFieldEffect(sDexNavSearchDataPtr->environment, 10, 10, TRUE))
{
- EndDexNavSearchSetupScript(EventScript_PokemonGotAway, taskId);
- return;
+ EndDexNavSearchSetupScript(EventScript_PokemonGotAway);
+ return TRUE;
}
sDexNavSearchDataPtr->movementCount++;
}
-
- DexNavProximityUpdate();
- if (task->tProximity != sDexNavSearchDataPtr->proximity)
- {
- //player has moved
- if (task->tRevealed) //update search window info only if hidden mon has been revealed (always true for search mode)
- DexNavUpdateSearchWindow(sDexNavSearchDataPtr->proximity, sDexNavSearchDataPtr->searchLevel);
-
- task->tProximity = sDexNavSearchDataPtr->proximity;
- }
-
- task->tFrameCount++;
+ return FALSE;
}
static void DexNavUpdateSearchWindow(u8 proximity, u8 searchLevel)
@@ -1836,14 +1831,10 @@ static void DexNavGuiFreeResources(void)
static void CB1_InitDexNavSearch(void)
{
- u8 taskId;
-
if (!gPaletteFade.active && !ArePlayerFieldControlsLocked() && gMain.callback2 == CB2_Overworld)
{
SetMainCallback1(CB1_Overworld);
- taskId = CreateTask(Task_InitDexNavSearch, 0);
- gTasks[taskId].tSpecies = gSpecialVar_0x8000;
- gTasks[taskId].tEnvironment = gSpecialVar_0x8001;
+ InitDexNavSearch(gSpecialVar_0x8000, gSpecialVar_0x8001);
}
}
@@ -2204,6 +2195,9 @@ static void CreateTypeIconSprites(void)
}
}
+#define tSpecies data[2]
+#define tEnvironment data[3]
+
static bool8 DexNav_DoGfxSetup(void)
{
u8 taskId;
@@ -2481,7 +2475,7 @@ static void Task_DexNavMain(u8 taskId)
/////////////////////////
//// HIDDEN POKEMON /////
/////////////////////////
-bool8 TryFindHiddenPokemon(void)
+bool32 TryFindHiddenPokemon(void)
{
u16 *stepPtr = GetVarPointer(DN_VAR_STEP_COUNTER);
@@ -2504,7 +2498,6 @@ bool8 TryFindHiddenPokemon(void)
u8 index;
u16 species;
enum EncounterType environment;
- u8 taskId;
enum TimeOfDay timeOfDay = GetTimeOfDayForEncounters(headerId, WILD_AREA_HIDDEN);
const struct WildPokemonInfo *hiddenMonsInfo = gWildMonHeaders[headerId].encounterTypes[timeOfDay].hiddenMonsInfo;
@@ -2569,7 +2562,7 @@ bool8 TryFindHiddenPokemon(void)
return FALSE;
sDexNavSearchDataPtr = AllocZeroed(sizeof(struct DexNavSearch));
-
+ FlagSet(DN_FLAG_SEARCHING);
// init search data
sDexNavSearchDataPtr->isHiddenMon = isHiddenMon;
sDexNavSearchDataPtr->species = species;
@@ -2578,13 +2571,18 @@ bool8 TryFindHiddenPokemon(void)
sDexNavSearchDataPtr->monLevel = DexNavTryGenerateMonLevel(species, environment);
if (sDexNavSearchDataPtr->monLevel == MON_LEVEL_NONEXISTENT)
{
- Free(sDexNavSearchDataPtr);
+ FREE_AND_SET_NULL(sDexNavSearchDataPtr);
+ FlagClear(DN_FLAG_SEARCHING);
return FALSE;
}
// find tile for hidden mon and start effect if possible
if (!TryStartHiddenMonFieldEffect(sDexNavSearchDataPtr->environment, 8, 8, TRUE))
+ {
+ FREE_AND_SET_NULL(sDexNavSearchDataPtr);
+ FlagClear(DN_FLAG_SEARCHING);
return FALSE;
+ }
// exclamation mark over player
gFieldEffectArguments[0] = gSaveBlock1Ptr->pos.x;
@@ -2595,10 +2593,7 @@ bool8 TryFindHiddenPokemon(void)
FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON);
PlayCry_Script(species, 0);
- taskId = CreateTask(Task_SetUpDexNavSearch, 0);
- gTasks[taskId].tSpecies = sDexNavSearchDataPtr->species;
- gTasks[taskId].tEnvironment = sDexNavSearchDataPtr->environment;
- gTasks[taskId].tRevealed = FALSE;
+ SetUpDexNavSearch();
HideMapNamePopUpWindow();
ChangeBgY_ScreenOff(0, 0, 0);
return FALSE; // we dont actually want to enable the script context or the game will freeze
@@ -2672,7 +2667,7 @@ void ResetDexNavSearch(void)
gSaveBlock3Ptr->dexNavChain = 0; //reset dex nav chaining on new map
VarSet(DN_VAR_STEP_COUNTER, 0); //reset hidden pokemon step counter
if (FlagGet(DN_FLAG_SEARCHING))
- EndDexNavSearch(FindTaskIdByFunc(Task_DexNavSearch)); //moving to new map ends dexnav search
+ EndDexNavSearch(); //moving to new map ends dexnav search
}
void IncrementDexNavChain(void)
diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c
index f35c349fc6..d3272d33ae 100644
--- a/src/field_control_avatar.c
+++ b/src/field_control_avatar.c
@@ -119,7 +119,7 @@ void FieldGetPlayerInput(struct FieldInput *input, u16 newKeys, u16 heldKeys)
input->pressedAButton = TRUE;
if (newKeys & B_BUTTON)
input->pressedBButton = TRUE;
- if (newKeys & R_BUTTON && !FlagGet(DN_FLAG_SEARCHING))
+ if (newKeys & R_BUTTON)
input->pressedRButton = TRUE;
}
@@ -618,6 +618,8 @@ static bool8 TryStartStepBasedScript(struct MapPosition *position, u16 metatileB
return TRUE;
if (UpdateRepelCounter() == TRUE)
return TRUE;
+ if (OnStep_DexNavSearch())
+ return TRUE;
return FALSE;
}
diff --git a/src/field_specials.c b/src/field_specials.c
index 4965a13504..db06bc9aeb 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -2632,7 +2632,7 @@ static void Task_ShowScrollableMultichoice(u8 taskId)
sScrollableMultichoice_ItemSpriteId = MAX_SPRITES;
FillFrontierExchangeCornerWindowAndItemIcon(task->tScrollMultiId, 0);
ShowBattleFrontierTutorWindow(task->tScrollMultiId, 0);
- sScrollableMultichoice_ListMenuItem = AllocZeroed(task->tNumItems * 8);
+ sScrollableMultichoice_ListMenuItem = AllocZeroed(task->tNumItems * sizeof(struct ListMenuItem));
sFrontierExchangeCorner_NeverRead = 0;
InitScrollableMultichoice();
diff --git a/src/m4a.c b/src/m4a.c
index 24f9f3e16c..83abb44223 100644
--- a/src/m4a.c
+++ b/src/m4a.c
@@ -40,7 +40,7 @@ u32 MidiKeyToFreq(struct WaveData *wav, u8 key, u8 fineAdjust)
return umul3232H32(wav->freq, val1 + umul3232H32(val2 - val1, fineAdjustShifted));
}
-void UnusedDummyFunc(void)
+static void UNUSED UnusedDummyFunc(void)
{
}
@@ -132,7 +132,7 @@ void m4aSongNumStartOrChange(u16 n)
}
}
-void m4aSongNumStartOrContinue(u16 n)
+static void UNUSED m4aSongNumStartOrContinue(u16 n)
{
const struct MusicPlayer *mplayTable = gMPlayTable;
const struct Song *songTable = gSongTable;
@@ -158,7 +158,7 @@ void m4aSongNumStop(u16 n)
m4aMPlayStop(mplay->info);
}
-void m4aSongNumContinue(u16 n)
+static void UNUSED m4aSongNumContinue(u16 n)
{
const struct MusicPlayer *mplayTable = gMPlayTable;
const struct Song *songTable = gSongTable;
@@ -322,7 +322,7 @@ void MPlayExtender(struct CgbChannel *cgbChans)
soundInfo->ident = ident;
}
-void MusicPlayerJumpTableCopy(void)
+static void UNUSED MusicPlayerJumpTableCopy(void)
{
asm("swi 0x2A");
}
@@ -1609,26 +1609,26 @@ void ply_xswee(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track
track->cmdPtr++;
}
-void ply_xcmd_0C(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track)
+void ply_xwait(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track)
{
- u32 unk;
+ u32 len;
#ifdef UBFIX
- unk = 0;
+ len = 0;
#endif
- READ_XCMD_BYTE(unk, 0) // UB: uninitialized variable
- READ_XCMD_BYTE(unk, 1)
+ READ_XCMD_BYTE(len, 0) // UB: uninitialized variable
+ READ_XCMD_BYTE(len, 1)
- if (track->unk_3A < (u16)unk)
+ if (track->timer < (u16)len)
{
- track->unk_3A++;
+ track->timer++;
track->cmdPtr -= 2;
track->wait = 1;
}
else
{
- track->unk_3A = 0;
+ track->timer = 0;
track->cmdPtr += 2;
}
}
@@ -1716,7 +1716,7 @@ void SetPokemonCryPitch(s16 val)
void SetPokemonCryLength(u16 val)
{
- gPokemonCrySong.unkCmd0CParam = val;
+ gPokemonCrySong.length = val;
}
void SetPokemonCryRelease(u8 val)
diff --git a/src/m4a_tables.c b/src/m4a_tables.c
index 5bc1075494..1f339b060f 100644
--- a/src/m4a_tables.c
+++ b/src/m4a_tables.c
@@ -251,6 +251,7 @@ const u8 gClockTable[] =
#define xRELE 0x07
#define xIECV 0x08
#define xIECL 0x09
+#define xWAIT 0x0c
#define EOT 0xce
#define TIE 0xcf
@@ -282,8 +283,8 @@ const struct PokemonCrySong gPokemonCrySongTemplate =
.tieCmd = TIE,
.tieKeyValue = 60, // default is Cn3
.tieVelocityValue = 127,
- .unkCmd0C = {XCMD, 0x0C},
- .unkCmd0CParam = 60,
+ .xwaitCmd = {XCMD, xWAIT},
+ .length = 60, // frames to wait
.end = {EOT, FINE}
};
@@ -301,6 +302,6 @@ const XcmdFunc gXcmdTable[] =
ply_xiecl,
ply_xleng,
ply_xswee,
- ply_xcmd_0C,
+ ply_xwait,
ply_xcmd_0D,
};
diff --git a/src/overworld.c b/src/overworld.c
index 5388284f6b..671d8354f4 100644
--- a/src/overworld.c
+++ b/src/overworld.c
@@ -1116,7 +1116,7 @@ static bool16 ShouldLegendaryMusicPlayAtLocation(struct WarpData *warp)
return FALSE;
}
-static bool16 NoMusicInSotopolisWithLegendaries(struct WarpData *warp)
+static bool16 NoMusicInSootopolisWithLegendaries(struct WarpData *warp)
{
if (VarGet(VAR_SKY_PILLAR_STATE) != 1)
return FALSE;
@@ -1141,7 +1141,7 @@ static bool16 IsInfiltratedWeatherInstitute(struct WarpData *warp)
return FALSE;
}
-static bool16 IsInflitratedSpaceCenter(struct WarpData *warp)
+static bool16 IsInfiltratedSpaceCenter(struct WarpData *warp)
{
if (VarGet(VAR_MOSSDEEP_CITY_STATE) == 0)
return FALSE;
@@ -1157,11 +1157,11 @@ static bool16 IsInflitratedSpaceCenter(struct WarpData *warp)
u16 GetLocationMusic(struct WarpData *warp)
{
- if (NoMusicInSotopolisWithLegendaries(warp) == TRUE)
+ if (NoMusicInSootopolisWithLegendaries(warp) == TRUE)
return MUS_NONE;
else if (ShouldLegendaryMusicPlayAtLocation(warp) == TRUE)
return MUS_ABNORMAL_WEATHER;
- else if (IsInflitratedSpaceCenter(warp) == TRUE)
+ else if (IsInfiltratedSpaceCenter(warp) == TRUE)
return MUS_ENCOUNTER_MAGMA;
else if (IsInfiltratedWeatherInstitute(warp) == TRUE)
return MUS_MT_CHIMNEY;
diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c
index d204a44b75..9c4ef40132 100644
--- a/src/pokemon_summary_screen.c
+++ b/src/pokemon_summary_screen.c
@@ -231,12 +231,12 @@ static bool8 CanReplaceMove(void);
static void ShowCantForgetHMsWindow(u8);
static void Task_HandleInputCantForgetHMsMoves(u8);
static void DrawPagination(void);
-static void HandlePowerAccTilemap(u16, s16);
-static void Task_ShowPowerAccWindow(u8);
-static void HandleAppealJamTilemap(u16, s16, u16);
-static void Task_ShowAppealJamWindow(u8);
-static void HandleStatusTilemap(u16, s16);
-static void Task_ShowStatusWindow(u8);
+static void PositionPowerAccSlidingWindow(u16, s16);
+static void Task_SlidePowerAccWindow(u8);
+static void PositionAppealJamSlidingWindow(u16, s16, u16);
+static void Task_SlideAppealJamWindow(u8);
+static void PositionStatusSlidingWindow(u16, s16);
+static void Task_SlideStatusWindow(u8);
static void TilemapFiveMovesDisplay(u16 *, u16, bool8);
static void DrawPokerusCuredSymbol(struct Pokemon *);
static void DrawExperienceProgressBar(struct Pokemon *);
@@ -374,32 +374,52 @@ static const struct BgTemplate sBgTemplates[] =
},
};
-struct TilemapCtrl
+struct SlidingWindow
{
const u16 *gfx;
- u16 field_4;
- u8 field_6;
- u8 field_7;
- u8 field_8;
- u8 field_9;
+ u16 defaultTile;
+ u8 width;
+ u8 height;
+ u8 left;
+ u8 top;
};
static const u16 sStatusTilemap[] = INCBIN_U16("graphics/summary_screen/status_tilemap.bin");
-static const struct TilemapCtrl sStatusTilemapCtrl1 =
+static const struct SlidingWindow sStatusSlidingWindow1 =
{
- sStatusTilemap, 1, 10, 2, 0, 18
+ .gfx = sStatusTilemap,
+ .defaultTile = 1,
+ .width = 10,
+ .height = 2,
+ .left = 0,
+ .top = 18
};
-static const struct TilemapCtrl sStatusTilemapCtrl2 =
+static const struct SlidingWindow sStatusSlidingWindow2 =
{
- sStatusTilemap, 1, 10, 2, 0, 50
+ .gfx = sStatusTilemap,
+ .defaultTile = 1,
+ .width = 10,
+ .height = 2,
+ .left = 0,
+ .top = 50
};
-static const struct TilemapCtrl sBattleMoveTilemapCtrl =
+static const struct SlidingWindow sPowerAccSlidingWindow =
{
- gSummaryScreen_MoveEffect_Battle_Tilemap, 0, 10, 7, 0, 45
+ .gfx = gSummaryScreen_MoveEffect_Battle_Tilemap,
+ .defaultTile = 0,
+ .width = 10,
+ .height = 7,
+ .left = 0,
+ .top = 45
};
-static const struct TilemapCtrl sContestMoveTilemapCtrl =
+static const struct SlidingWindow sAppealJamSlidingWindow =
{
- gSummaryScreen_MoveEffect_Contest_Tilemap, 0, 10, 7, 0, 45
+ .gfx = gSummaryScreen_MoveEffect_Contest_Tilemap,
+ .defaultTile = 0,
+ .width = 10,
+ .height = 7,
+ .left = 0,
+ .top = 45
};
static const s8 sMultiBattleOrder[] = {0, 2, 3, 1, 4, 5};
static const struct WindowTemplate sSummaryTemplate[] =
@@ -1543,8 +1563,8 @@ static void SetDefaultTilemaps(void)
|| sMonSummaryScreen->mode == SUMMARY_MODE_RELEARNER_BATTLE
|| sMonSummaryScreen->mode == SUMMARY_MODE_RELEARNER_CONTEST)
{
- HandlePowerAccTilemap(0, 0xFF);
- HandleAppealJamTilemap(0, 0xFF, 0);
+ PositionPowerAccSlidingWindow(0, 0xFF);
+ PositionAppealJamSlidingWindow(0, 0xFF, 0);
}
else
{
@@ -1584,7 +1604,7 @@ static void SetDefaultTilemaps(void)
}
if (sMonSummaryScreen->summary.ailment == AILMENT_NONE)
- HandleStatusTilemap(0, 0xFF);
+ PositionStatusSlidingWindow(0, 0xFF);
else if ((sMonSummaryScreen->currPageIndex != PSS_PAGE_BATTLE_MOVES && sMonSummaryScreen->currPageIndex != PSS_PAGE_CONTEST_MOVES)
|| sMonSummaryScreen->mode == SUMMARY_MODE_RELEARNER_BATTLE
|| sMonSummaryScreen->mode == SUMMARY_MODE_RELEARNER_CONTEST)
@@ -2030,7 +2050,7 @@ static void ChangeSummaryPokemon(u8 taskId, s8 delta)
SetSpriteInvisibility(SPRITE_ARR_ID_STATUS, TRUE);
ClearWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATUS);
ScheduleBgCopyTilemapToVram(0);
- HandleStatusTilemap(0, 2);
+ PositionStatusSlidingWindow(0, 2);
}
sMonSummaryScreen->curMonIndex = monId;
gTasks[taskId].data[0] = 0;
@@ -2096,7 +2116,7 @@ static void Task_ChangeSummaryMon(u8 taskId)
break;
case 7:
if (sMonSummaryScreen->summary.ailment != AILMENT_NONE)
- HandleStatusTilemap(10, -2);
+ PositionStatusSlidingWindow(10, -2);
DrawPokerusCuredSymbol(&sMonSummaryScreen->currentMon);
data[1] = 0;
break;
@@ -2122,7 +2142,7 @@ static void Task_ChangeSummaryMon(u8 taskId)
gSprites[sMonSummaryScreen->spriteIds[SPRITE_ARR_ID_MON]].data[2] = 0;
break;
default:
- if (!MenuHelpers_ShouldWaitForLinkRecv() && !FuncIsActiveTask(Task_ShowStatusWindow))
+ if (!MenuHelpers_ShouldWaitForLinkRecv() && !FuncIsActiveTask(Task_SlideStatusWindow))
{
data[0] = 0;
gTasks[taskId].func = Task_HandleInput;
@@ -2365,9 +2385,8 @@ static void SwitchToMoveSelection(u8 taskId)
ClearWindowTilemap(PSS_LABEL_WINDOW_PORTRAIT_SPECIES);
if (!gSprites[sMonSummaryScreen->spriteIds[SPRITE_ARR_ID_STATUS]].invisible)
ClearWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATUS);
- HandlePowerAccTilemap(9, -3);
- HandleAppealJamTilemap(9, -3, move);
-
+ PositionPowerAccSlidingWindow(9, -3);
+ PositionAppealJamSlidingWindow(9, -3, move);
if (!sMonSummaryScreen->lockMovesFlag)
{
if (ShouldShowMoveRelearner())
@@ -2482,8 +2501,8 @@ static void ChangeSelectedMove(s16 *taskData, s8 direction, u8 *moveIndexPtr)
if (!gSprites[sMonSummaryScreen->spriteIds[SPRITE_ARR_ID_STATUS]].invisible)
ClearWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATUS);
ScheduleBgCopyTilemapToVram(0);
- HandlePowerAccTilemap(9, -3);
- HandleAppealJamTilemap(9, -3, move);
+ PositionPowerAccSlidingWindow(9, -3);
+ PositionAppealJamSlidingWindow(9, -3, move);
}
if (*moveIndexPtr != MAX_MON_MOVES
&& newMoveIndex == MAX_MON_MOVES
@@ -2493,8 +2512,8 @@ static void ChangeSelectedMove(s16 *taskData, s8 direction, u8 *moveIndexPtr)
ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM);
DestroyCategoryIcon();
ScheduleBgCopyTilemapToVram(0);
- HandlePowerAccTilemap(0, 3);
- HandleAppealJamTilemap(0, 3, 0);
+ PositionPowerAccSlidingWindow(0, 3);
+ PositionAppealJamSlidingWindow(0, 3, 0);
}
*moveIndexPtr = newMoveIndex;
@@ -2521,8 +2540,8 @@ static void CloseMoveSelectMode(u8 taskId)
ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_POWER_ACC);
ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM);
DestroyCategoryIcon();
- HandlePowerAccTilemap(0, 3);
- HandleAppealJamTilemap(0, 3, 0);
+ PositionPowerAccSlidingWindow(0, 3);
+ PositionAppealJamSlidingWindow(0, 3, 0);
}
ScheduleBgCopyTilemapToVram(0);
ScheduleBgCopyTilemapToVram(1);
@@ -2749,8 +2768,8 @@ static void ShowCantForgetHMsWindow(u8 taskId)
ClearWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM);
gSprites[sMonSummaryScreen->categoryIconSpriteId].invisible = TRUE;
ScheduleBgCopyTilemapToVram(0);
- HandlePowerAccTilemap(0, 3);
- HandleAppealJamTilemap(0, 3, 0);
+ PositionPowerAccSlidingWindow(0, 3);
+ PositionAppealJamSlidingWindow(0, 3, 0);
PrintHMMovesCantBeForgotten();
gTasks[taskId].func = Task_HandleInputCantForgetHMsMoves;
}
@@ -2760,7 +2779,7 @@ static void Task_HandleInputCantForgetHMsMoves(u8 taskId)
{
s16 *data = gTasks[taskId].data;
u16 move;
- if (FuncIsActiveTask(Task_ShowPowerAccWindow) != 1)
+ if (FuncIsActiveTask(Task_SlidePowerAccWindow) != 1)
{
if (JOY_NEW(DPAD_UP))
{
@@ -2788,8 +2807,8 @@ static void Task_HandleInputCantForgetHMsMoves(u8 taskId)
move = sMonSummaryScreen->summary.moves[sMonSummaryScreen->firstMoveIndex];
gTasks[taskId].func = Task_HandleReplaceMoveInput;
ChangePage(taskId, -1);
- HandlePowerAccTilemap(9, -2);
- HandleAppealJamTilemap(9, -2, move);
+ PositionPowerAccSlidingWindow(9, -2);
+ PositionAppealJamSlidingWindow(9, -2, move);
}
}
else if (JOY_NEW(DPAD_RIGHT) || GetLRKeysPressed() == MENU_R_PRESSED)
@@ -2802,8 +2821,8 @@ static void Task_HandleInputCantForgetHMsMoves(u8 taskId)
move = sMonSummaryScreen->summary.moves[sMonSummaryScreen->firstMoveIndex];
gTasks[taskId].func = Task_HandleReplaceMoveInput;
ChangePage(taskId, 1);
- HandlePowerAccTilemap(9, -2);
- HandleAppealJamTilemap(9, -2, move);
+ PositionPowerAccSlidingWindow(9, -2);
+ PositionAppealJamSlidingWindow(9, -2, move);
}
}
else if (JOY_NEW(A_BUTTON | B_BUTTON))
@@ -2814,8 +2833,8 @@ static void Task_HandleInputCantForgetHMsMoves(u8 taskId)
move = sMonSummaryScreen->summary.moves[sMonSummaryScreen->firstMoveIndex];
PrintMoveDetails(move);
ScheduleBgCopyTilemapToVram(0);
- HandlePowerAccTilemap(9, -3);
- HandleAppealJamTilemap(9, -3, move);
+ PositionPowerAccSlidingWindow(9, -3);
+ PositionAppealJamSlidingWindow(9, -3, move);
gTasks[taskId].func = Task_HandleReplaceMoveInput;
}
}
@@ -2893,65 +2912,69 @@ static void DrawPagination(void) // Updates the pagination dots at the top of th
Free(tilemap);
}
-static void ChangeTilemap(const struct TilemapCtrl *unkStruct, u16 *dest, u8 c, bool8 d)
+static void CopyNColumnsToTilemap(const struct SlidingWindow *slidingWindow, u16 *tilemapDest, u8 visibleColumns, bool8 isOpeningToTheLeft)
{
u16 i;
- u16 *alloced = Alloc(unkStruct->field_6 * 2 * unkStruct->field_7);
- CpuFill16(unkStruct->field_4, alloced, unkStruct->field_6 * 2 * unkStruct->field_7);
- if (unkStruct->field_6 != c)
+ u16 *alloced = Alloc(slidingWindow->width * 2 * slidingWindow->height);
+ CpuFill16(slidingWindow->defaultTile, alloced, slidingWindow->width * 2 * slidingWindow->height);
+ if (slidingWindow->width != visibleColumns)
{
- if (!d)
+ if (!isOpeningToTheLeft)
{
- for (i = 0; i < unkStruct->field_7; i++)
- CpuCopy16(&unkStruct->gfx[c + unkStruct->field_6 * i], &alloced[unkStruct->field_6 * i], (unkStruct->field_6 - c) * 2);
+ for (i = 0; i < slidingWindow->height; i++)
+ CpuCopy16(&slidingWindow->gfx[visibleColumns + slidingWindow->width * i], &alloced[slidingWindow->width * i], (slidingWindow->width - visibleColumns) * 2);
}
else
{
- for (i = 0; i < unkStruct->field_7; i++)
- CpuCopy16(&unkStruct->gfx[unkStruct->field_6 * i], &alloced[c + unkStruct->field_6 * i], (unkStruct->field_6 - c) * 2);
+ for (i = 0; i < slidingWindow->height; i++)
+ CpuCopy16(&slidingWindow->gfx[slidingWindow->width * i], &alloced[visibleColumns + slidingWindow->width * i], (slidingWindow->width - visibleColumns) * 2);
}
}
- for (i = 0; i < unkStruct->field_7; i++)
- CpuCopy16(&alloced[unkStruct->field_6 * i], &dest[(unkStruct->field_9 + i) * 32 + unkStruct->field_8], unkStruct->field_6 * 2);
+ for (i = 0; i < slidingWindow->height; i++)
+ CpuCopy16(&alloced[slidingWindow->width * i], &tilemapDest[(slidingWindow->top + i) * 32 + slidingWindow->left], slidingWindow->width * 2);
Free(alloced);
}
-static void HandlePowerAccTilemap(u16 a, s16 b)
+#define tScrollingSpeed data[0]
+#define tVisibleColumns data[1]
+#define tMove data[2]
+
+static void PositionPowerAccSlidingWindow(u16 visibleColumns, s16 speed)
{
- if (b > sBattleMoveTilemapCtrl.field_6)
- b = sBattleMoveTilemapCtrl.field_6;
- if (b == 0 || b == sBattleMoveTilemapCtrl.field_6)
+ if (speed > sPowerAccSlidingWindow.width)
+ speed = sPowerAccSlidingWindow.width;
+ if (speed == 0 || speed == sPowerAccSlidingWindow.width)
{
- ChangeTilemap(&sBattleMoveTilemapCtrl, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0], b, TRUE);
+ CopyNColumnsToTilemap(&sPowerAccSlidingWindow, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0], speed, TRUE);
}
else
{
- u8 taskId = FindTaskIdByFunc(Task_ShowPowerAccWindow);
+ u8 taskId = FindTaskIdByFunc(Task_SlidePowerAccWindow);
if (taskId == TASK_NONE)
- taskId = CreateTask(Task_ShowPowerAccWindow, 8);
- gTasks[taskId].data[0] = b;
- gTasks[taskId].data[1] = a;
+ taskId = CreateTask(Task_SlidePowerAccWindow, 8);
+ gTasks[taskId].tScrollingSpeed = speed;
+ gTasks[taskId].tVisibleColumns = visibleColumns;
}
}
-static void Task_ShowPowerAccWindow(u8 taskId)
+static void Task_SlidePowerAccWindow(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- data[1] += data[0];
- if (data[1] < 0)
+ tVisibleColumns += tScrollingSpeed;
+ if (tVisibleColumns < 0)
{
- data[1] = 0;
+ tVisibleColumns = 0;
}
- else if (data[1] > sBattleMoveTilemapCtrl.field_6)
+ else if (tVisibleColumns > sPowerAccSlidingWindow.width)
{
- data[1] = sBattleMoveTilemapCtrl.field_6;
+ tVisibleColumns = sPowerAccSlidingWindow.width;
}
- ChangeTilemap(&sBattleMoveTilemapCtrl, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0], data[1], TRUE);
- if (data[1] <= 0 || data[1] >= sBattleMoveTilemapCtrl.field_6)
+ CopyNColumnsToTilemap(&sPowerAccSlidingWindow, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_BATTLE_MOVES][0], tVisibleColumns, TRUE);
+ if (tVisibleColumns <= 0 || tVisibleColumns >= sPowerAccSlidingWindow.width)
{
- if (data[0] < 0)
+ if (tScrollingSpeed < 0)
{
if (sMonSummaryScreen->currPageIndex == PSS_PAGE_BATTLE_MOVES)
PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_POWER_ACC);
@@ -2969,46 +2992,46 @@ static void Task_ShowPowerAccWindow(u8 taskId)
ScheduleBgCopyTilemapToVram(2);
}
-static void HandleAppealJamTilemap(u16 a, s16 b, u16 move)
+static void PositionAppealJamSlidingWindow(u16 visibleColumns, s16 speed, u16 move)
{
- if (b > sContestMoveTilemapCtrl.field_6)
- b = sContestMoveTilemapCtrl.field_6;
+ if (speed > sAppealJamSlidingWindow.width)
+ speed = sAppealJamSlidingWindow.width;
- if (b == 0 || b == sContestMoveTilemapCtrl.field_6)
+ if (speed == 0 || speed == sAppealJamSlidingWindow.width)
{
- ChangeTilemap(&sContestMoveTilemapCtrl, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], b, TRUE);
+ CopyNColumnsToTilemap(&sAppealJamSlidingWindow, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], speed, TRUE);
}
else
{
- u8 taskId = FindTaskIdByFunc(Task_ShowAppealJamWindow);
+ u8 taskId = FindTaskIdByFunc(Task_SlideAppealJamWindow);
if (taskId == TASK_NONE)
- taskId = CreateTask(Task_ShowAppealJamWindow, 8);
- gTasks[taskId].data[0] = b;
- gTasks[taskId].data[1] = a;
- gTasks[taskId].data[2] = move;
+ taskId = CreateTask(Task_SlideAppealJamWindow, 8);
+ gTasks[taskId].tScrollingSpeed = speed;
+ gTasks[taskId].tVisibleColumns = visibleColumns;
+ gTasks[taskId].tMove = move;
}
}
-static void Task_ShowAppealJamWindow(u8 taskId)
+static void Task_SlideAppealJamWindow(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- data[1] += data[0];
- if (data[1] < 0)
+ tVisibleColumns += tScrollingSpeed;
+ if (tVisibleColumns < 0)
{
- data[1] = 0;
+ tVisibleColumns = 0;
}
- else if (data[1] > sContestMoveTilemapCtrl.field_6)
+ else if (tVisibleColumns > sAppealJamSlidingWindow.width)
{
- data[1] = sContestMoveTilemapCtrl.field_6;
+ tVisibleColumns = sAppealJamSlidingWindow.width;
}
- ChangeTilemap(&sContestMoveTilemapCtrl, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], data[1], TRUE);
- if (data[1] <= 0 || data[1] >= sContestMoveTilemapCtrl.field_6)
+ CopyNColumnsToTilemap(&sAppealJamSlidingWindow, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_CONTEST_MOVES][0], tVisibleColumns, TRUE);
+ if (tVisibleColumns <= 0 || tVisibleColumns >= sAppealJamSlidingWindow.width)
{
- if (data[0] < 0)
+ if (tScrollingSpeed < 0)
{
if (sMonSummaryScreen->currPageIndex == PSS_PAGE_CONTEST_MOVES && FuncIsActiveTask(PssScrollRight) == 0)
PutWindowTilemap(PSS_LABEL_WINDOW_MOVES_APPEAL_JAM);
- DrawContestMoveHearts(data[2]);
+ DrawContestMoveHearts(tMove);
}
else
{
@@ -3025,37 +3048,37 @@ static void Task_ShowAppealJamWindow(u8 taskId)
ScheduleBgCopyTilemapToVram(2);
}
-static void HandleStatusTilemap(u16 a, s16 b)
+static void PositionStatusSlidingWindow(u16 visibleColumns, s16 speed)
{
- if (b > sStatusTilemapCtrl1.field_6)
- b = sStatusTilemapCtrl1.field_6;
- if (b == 0 || b == sStatusTilemapCtrl1.field_6)
+ if (speed > sStatusSlidingWindow1.width)
+ speed = sStatusSlidingWindow1.width;
+ if (speed == 0 || speed == sStatusSlidingWindow1.width)
{
- ChangeTilemap(&sStatusTilemapCtrl1, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], b, FALSE);
- ChangeTilemap(&sStatusTilemapCtrl2, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], b, FALSE);
+ CopyNColumnsToTilemap(&sStatusSlidingWindow1, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], speed, FALSE);
+ CopyNColumnsToTilemap(&sStatusSlidingWindow2, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], speed, FALSE);
}
else
{
- u8 taskId = CreateTask(Task_ShowStatusWindow, 8);
- gTasks[taskId].data[0] = b;
- gTasks[taskId].data[1] = a;
+ u8 taskId = CreateTask(Task_SlideStatusWindow, 8);
+ gTasks[taskId].tScrollingSpeed = speed;
+ gTasks[taskId].tVisibleColumns = visibleColumns;
}
}
-static void Task_ShowStatusWindow(u8 taskId)
+static void Task_SlideStatusWindow(u8 taskId)
{
s16 *data = gTasks[taskId].data;
- data[1] += data[0];
- if (data[1] < 0)
- data[1] = 0;
- else if (data[1] > sStatusTilemapCtrl1.field_6)
- data[1] = sStatusTilemapCtrl1.field_6;
- ChangeTilemap(&sStatusTilemapCtrl1, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], data[1], FALSE);
- ChangeTilemap(&sStatusTilemapCtrl2, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], data[1], FALSE);
+ tVisibleColumns += tScrollingSpeed;
+ if (tVisibleColumns < 0)
+ tVisibleColumns = 0;
+ else if (tVisibleColumns > sStatusSlidingWindow1.width)
+ tVisibleColumns = sStatusSlidingWindow1.width;
+ CopyNColumnsToTilemap(&sStatusSlidingWindow1, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], tVisibleColumns, FALSE);
+ CopyNColumnsToTilemap(&sStatusSlidingWindow2, sMonSummaryScreen->bgTilemapBuffers[PSS_PAGE_INFO][0], tVisibleColumns, FALSE);
ScheduleBgCopyTilemapToVram(3);
- if (data[1] <= 0 || data[1] >= sStatusTilemapCtrl1.field_6)
+ if (tVisibleColumns <= 0 || tVisibleColumns >= sStatusSlidingWindow1.width)
{
- if (data[0] < 0)
+ if (tScrollingSpeed < 0)
{
CreateSetStatusSprite();
PutWindowTilemap(PSS_LABEL_WINDOW_POKEMON_SKILLS_STATUS);
@@ -3065,6 +3088,10 @@ static void Task_ShowStatusWindow(u8 taskId)
}
}
+#undef tScrollingSpeed
+#undef tVisibleColumns
+#undef tMove
+
// Toggles the "Cancel" window that appears when selecting a move
static void TilemapFiveMovesDisplay(u16 *dst, u16 palette, bool8 remove)
{
diff --git a/src/pokenav_menu_handler_gfx.c b/src/pokenav_menu_handler_gfx.c
index 2ac8892a93..195c381080 100644
--- a/src/pokenav_menu_handler_gfx.c
+++ b/src/pokenav_menu_handler_gfx.c
@@ -1312,7 +1312,14 @@ static void SetupPokenavMenuScanlineEffects(void)
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_WIN0_ON);
SetGpuRegBits(REG_OFFSET_WININ, WININ_WIN0_ALL);
SetGpuRegBits(REG_OFFSET_WINOUT, WINOUT_WIN01_BG_ALL | WINOUT_WIN01_OBJ);
+#ifdef BUGFIX
+ // BUGFIX: Use full register write instead of |=.
+ // SetGpuRegBits left leftover window values from the Party screen,
+ // causing partial/missing glow highlights. SetGpuReg clears them fully.
+ SetGpuReg(REG_OFFSET_WIN0V, DISPLAY_HEIGHT);
+#else
SetGpuRegBits(REG_OFFSET_WIN0V, DISPLAY_HEIGHT);
+#endif
ScanlineEffect_Stop();
SetMenuOptionGlow();
ScanlineEffect_SetParams(sPokenavMainMenuScanlineEffectParams);
diff --git a/src/rtc.c b/src/rtc.c
index 25add5920c..888c2b7eeb 100644
--- a/src/rtc.c
+++ b/src/rtc.c
@@ -240,7 +240,7 @@ void RtcReset(void)
RtcRestoreInterrupts();
}
-void FormatDecimalTime(u8 *dest, s32 hour, s32 minute, s32 second)
+static void UNUSED FormatDecimalTime(u8 *dest, s32 hour, s32 minute, s32 second)
{
dest = ConvertIntToDecimalStringN(dest, hour, STR_CONV_MODE_LEADING_ZEROS, 2);
*dest++ = CHAR_COLON;
@@ -250,7 +250,7 @@ void FormatDecimalTime(u8 *dest, s32 hour, s32 minute, s32 second)
*dest = EOS;
}
-void FormatHexTime(u8 *dest, s32 hour, s32 minute, s32 second)
+static void UNUSED FormatHexTime(u8 *dest, s32 hour, s32 minute, s32 second)
{
dest = ConvertIntToHexStringN(dest, hour, STR_CONV_MODE_LEADING_ZEROS, 2);
*dest++ = CHAR_COLON;
@@ -260,12 +260,12 @@ void FormatHexTime(u8 *dest, s32 hour, s32 minute, s32 second)
*dest = EOS;
}
-void FormatHexRtcTime(u8 *dest)
+static void UNUSED FormatHexRtcTime(u8 *dest)
{
FormatHexTime(dest, sRtc.hour, sRtc.minute, sRtc.second);
}
-void FormatDecimalDate(u8 *dest, s32 year, s32 month, s32 day)
+static void UNUSED FormatDecimalDate(u8 *dest, s32 year, s32 month, s32 day)
{
dest = ConvertIntToDecimalStringN(dest, year, STR_CONV_MODE_LEADING_ZEROS, 4);
*dest++ = CHAR_HYPHEN;
@@ -275,7 +275,7 @@ void FormatDecimalDate(u8 *dest, s32 year, s32 month, s32 day)
*dest = EOS;
}
-void FormatHexDate(u8 *dest, s32 year, s32 month, s32 day)
+static void UNUSED FormatHexDate(u8 *dest, s32 year, s32 month, s32 day)
{
dest = ConvertIntToHexStringN(dest, year, STR_CONV_MODE_LEADING_ZEROS, 4);
*dest++ = CHAR_HYPHEN;
diff --git a/src/script.c b/src/script.c
index 38482f59a5..6a4a906451 100644
--- a/src/script.c
+++ b/src/script.c
@@ -11,6 +11,8 @@
#include "constants/script_commands.h"
#include "field_message_box.h"
+#include "dexnav.h"
+
#define RAM_SCRIPT_MAGIC 51
enum {
@@ -211,6 +213,7 @@ u32 ScriptPeekWord(struct ScriptContext *ctx)
void LockPlayerFieldControls(void)
{
sLockFieldControls = TRUE;
+ EndDexNavSearch();
}
void UnlockPlayerFieldControls(void)
diff --git a/src/siirtc.c b/src/siirtc.c
index ecce71a03c..156005dc14 100644
--- a/src/siirtc.c
+++ b/src/siirtc.c
@@ -343,7 +343,7 @@ bool8 SiiRtcSetTime(struct SiiRtcInfo *rtc)
return TRUE;
}
-bool8 SiiRtcSetAlarm(struct SiiRtcInfo *rtc)
+static bool8 UNUSED SiiRtcSetAlarm(struct SiiRtcInfo *rtc)
{
u8 i;
u8 alarmData[2];
diff --git a/src/title_screen.c b/src/title_screen.c
index ea85f817f8..1b553e4545 100644
--- a/src/title_screen.c
+++ b/src/title_screen.c
@@ -850,10 +850,10 @@ static void UpdateLegendaryMarkingColor(u8 frameNum)
{
if ((frameNum % 4) == 0) // Change color every 4th frame
{
- s32 intensity = Cos(frameNum, 128) + 128;
- s32 r = 31 - ((intensity * 32 - intensity) / 256);
- s32 g = 31 - (intensity * 22 / 256);
- s32 b = 12;
+ s32 intensity = Cos(frameNum, Q_8_8(0.5)) + Q_8_8(0.5);
+ u32 r = 31 - Q_8_8_TO_INT(intensity * 31);
+ u32 g = 31 - Q_8_8_TO_INT(intensity * 22);
+ u32 b = 12;
u16 color = RGB(r, g, b);
LoadPalette(&color, BG_PLTT_ID(14) + 15, sizeof(color));
diff --git a/src/trainer_pokemon_sprites.c b/src/trainer_pokemon_sprites.c
index 6dc2a69956..b60f3fe7e6 100644
--- a/src/trainer_pokemon_sprites.c
+++ b/src/trainer_pokemon_sprites.c
@@ -57,18 +57,20 @@ bool16 ResetAllPicSprites(void)
return FALSE;
}
-static bool16 DecompressPic(u16 species, u32 personality, bool8 isFrontPic, u8 *dest, bool8 isTrainer)
+static bool16 DecompressPic(u16 picId, u32 personality, bool8 isFrontPic, u8 *dest, bool8 isTrainer)
{
if (!isTrainer)
{
+ u16 species = picId;
LoadSpecialPokePic(dest, species, personality, isFrontPic);
}
else
{
+ u16 trainerPicId = picId;
if (isFrontPic)
- DecompressPicFromTable(&gTrainerSprites[species].frontPic, dest);
+ DecompressPicFromTable(&gTrainerSprites[trainerPicId].frontPic, dest);
else
- CopyTrainerBackspriteFramesToDest(species, dest);
+ CopyTrainerBackspriteFramesToDest(trainerPicId, dest);
}
return FALSE;
}
diff --git a/test/battle/move_effect/beak_blast.c b/test/battle/move_effect/beak_blast.c
index 6e94a908e5..a837bda712 100644
--- a/test/battle/move_effect/beak_blast.c
+++ b/test/battle/move_effect/beak_blast.c
@@ -141,6 +141,71 @@ SINGLE_BATTLE_TEST("Beak Blast doesn't burn after being used")
}
}
+DOUBLE_BATTLE_TEST("Beak Blast doesn't burn if the target is protected")
+{
+ u32 move;
+
+ PARAMETRIZE { move = MOVE_SPIKY_SHIELD; }
+ PARAMETRIZE { move = MOVE_BANEFUL_BUNKER; }
+ PARAMETRIZE { move = MOVE_BURNING_BULWARK; }
+ PARAMETRIZE { move = MOVE_SILK_TRAP; }
+
+ GIVEN {
+ ASSUME(GetMoveEffect(move) == EFFECT_PROTECT);
+ ASSUME(GetMoveEffect(MOVE_INSTRUCT) == EFFECT_INSTRUCT);
+ ASSUME(GetMovePriority(MOVE_BEAK_BLAST) > GetMovePriority(MOVE_TRICK_ROOM));
+ PLAYER(SPECIES_WOBBUFFET) { Speed(1); }
+ PLAYER(SPECIES_WYNAUT) { Speed(2); }
+ OPPONENT(SPECIES_WOBBUFFET) { Speed(5); }
+ OPPONENT(SPECIES_WYNAUT) { Speed(10); }
+ } WHEN {
+ TURN { MOVE(opponentLeft, move); }
+ TURN { MOVE(opponentRight, MOVE_INSTRUCT, target: opponentLeft, WITH_RNG(RNG_PROTECT_FAIL, 0));
+ MOVE(opponentLeft, MOVE_BEAK_BLAST, target: playerLeft);
+ MOVE(playerRight, MOVE_TRICK_ROOM);
+ MOVE(playerLeft, MOVE_POUND, target: opponentLeft); }
+ } SCENE {
+ ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_BEAK_BLAST_SETUP, opponentLeft);
+ ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, opponentRight);
+ ANIMATION(ANIM_TYPE_MOVE, move, opponentLeft);
+ NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, playerLeft);
+ if (move == MOVE_SPIKY_SHIELD) {
+ HP_BAR(playerLeft);
+ } else if (move == MOVE_BANEFUL_BUNKER) {
+ STATUS_ICON(playerLeft, STATUS1_POISON);
+ } else if (move == MOVE_BURNING_BULWARK) {
+ STATUS_ICON(playerLeft, STATUS1_BURN);
+ } else if (move == MOVE_SILK_TRAP) {
+ ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft);
+ }
+ NOT STATUS_ICON(playerLeft, STATUS1_BURN);
+ }
+}
+
+DOUBLE_BATTLE_TEST("Beak Blast doesn't burn if the target is protected by Quick Guard")
+{
+ GIVEN {
+ ASSUME(GetMoveEffect(MOVE_QUICK_GUARD) == EFFECT_PROTECT);
+ ASSUME(GetMoveProtectMethod(MOVE_QUICK_GUARD) == PROTECT_QUICK_GUARD);
+ ASSUME(GetMovePriority(MOVE_QUICK_ATTACK) > 0);
+ PLAYER(SPECIES_WOBBUFFET) { Speed(1); }
+ PLAYER(SPECIES_WYNAUT) { Speed(2); }
+ OPPONENT(SPECIES_WOBBUFFET) { Speed(5); }
+ OPPONENT(SPECIES_WYNAUT) { Speed(10); }
+ } WHEN {
+ TURN { MOVE(opponentLeft, MOVE_BEAK_BLAST, target: playerLeft);
+ MOVE(opponentRight, MOVE_QUICK_GUARD);
+ MOVE(playerLeft, MOVE_QUICK_ATTACK, target: opponentLeft); }
+ } SCENE {
+ ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_BEAK_BLAST_SETUP, opponentLeft);
+ ANIMATION(ANIM_TYPE_MOVE, MOVE_QUICK_GUARD, opponentRight);
+ NONE_OF {
+ ANIMATION(ANIM_TYPE_MOVE, MOVE_QUICK_ATTACK, playerLeft);
+ STATUS_ICON(playerLeft, STATUS1_BURN);
+ }
+ }
+}
+
TO_DO_BATTLE_TEST("Beak Blast's charging message is shown regardless if it would've missed");
TO_DO_BATTLE_TEST("Beak Blast fails if it's forced by Encore after choosing a different move");
TO_DO_BATTLE_TEST("Bulletproof is immune to Beak Blast but not to the burn it causes");
diff --git a/tools/wav2agb/Makefile b/tools/wav2agb/Makefile
index a121730e95..a38f71758f 100644
--- a/tools/wav2agb/Makefile
+++ b/tools/wav2agb/Makefile
@@ -1,33 +1,23 @@
-GIT_VERSION := $(shell git describe --abbrev=7 --dirty --always --tags)
+CXX ?= g++
+
+CXXFLAGS := -Wall -Werror -std=c++17 -O2
+
+SRCS := $(wildcard *.cpp)
+HEADERS := $(wildcard *.h)
-CXX = g++
-STRIP = strip
-CXXFLAGS = -Wall -Wextra -Wconversion -std=c++17 -O2 -g -DGIT_VERSION=\"$(GIT_VERSION)\"
EXE :=
ifeq ($(OS),Windows_NT)
EXE := .exe
endif
BINARY = wav2agb$(EXE)
-SRC_FILES = $(wildcard *.cpp)
-OBJ_FILES = $(SRC_FILES:.cpp=.o)
+.PHONY: all clean
-LDFLAGS :=
-
-ifneq (,$(RELEASE))
- LDFLAGS += -static
- CXXFLAGS += -flto
-endif
-
-.PHONY: clean clean
all: $(BINARY)
+ @:
+
+$(BINARY): $(SRCS) $(HEADERS)
+ $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS)
clean:
- rm -f $(OBJ_FILES) $(BINARY)
-
-$(BINARY): $(OBJ_FILES)
- $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $^
- if [ $(RELEASE)x != x ]; then strip -s $@; fi
-
-%.o: %.cpp
- $(CXX) -c -o $@ $< $(CXXFLAGS)
+ $(RM) $(BINARY)
diff --git a/tools/wav2agb/README.md b/tools/wav2agb/README.md
index 86f2660231..3b8b32e9b8 100644
--- a/tools/wav2agb/README.md
+++ b/tools/wav2agb/README.md
@@ -6,9 +6,12 @@ This copy has been slightly modified from [ipatix's original implementation](htt
2. Support reading an override "pitch" value from a custom `agbp` RIFF chunk.
- This is needed to properly match some samples, due to float-point rounding errors when attempting to infer the pitch/sample rate from the .wav file's sample rate.
- If the custom `agbp` chunk isn't present, it will simply use the .wav's sample rate to calculate this "pitch" value.
-3. Optionally omits trailing padding from compressed output.
+3. Support reading an override "loop end" value from a custom `agbl` RIFF chunk.
+ - This is needed to properly match vanilla samples, due their their inherent off-by-one error (the last sample is mistakenly ignored).
+ - This `agbl` chunk can be added to existing .wav files with the `--set-agbl` option (described below).
+4. Optionally omits trailing padding from compressed output.
-Usage:
+Usage:
```
Usage: wav2agb [options] [