diff --git a/INSTALL.md b/INSTALL.md index d2e511dace..d265d588a1 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -179,6 +179,6 @@ If you targeted a specific version that is not the latest version listed on the # Useful additional tools * [porymap](https://github.com/huderlem/porymap) for viewing and editing maps -* [porytiles](https://github.com/gruntlucas/porytiles) for add new metatiles for maps +* [porytiles](https://github.com/grunt-lucas/porytiles) for add new metatiles for maps * [poryscript](https://github.com/huderlem/poryscript) for scripting ([VS Code extension](https://marketplace.visualstudio.com/items?itemName=karathan.poryscript)) * [Tilemap Studio](https://github.com/Rangi42/tilemap-studio) for viewing and editing tilemaps diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 02546d2f8a..721c844554 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -1737,6 +1737,10 @@ callnative BS_ActivateTerrainChangeAbilities .byte \battler .endm + + .macro resetterrainabilityflags + callnative BS_ResetTerrainAbilityFlags + .endm @ Stores Healing Wish effect. .macro storehealingwish battler:req diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 1cf9c7fca7..891c93e6d5 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -1875,6 +1875,7 @@ @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. @ Lists of options are provided in argv. @ If ignoreBPress is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. + @ For a simple menu supply DYN_MULTICHOICE_CB_NONE in callbacks. .macro dynmultichoice left:req, top:req, ignoreBPress:req, maxBeforeScroll:req, initialSelected:req, callbacks:req argv:vararg _dynmultichoice \left, \top, \ignoreBPress, \maxBeforeScroll, FALSE, \initialSelected, \callbacks, \argv .endm diff --git a/asm/macros/m4a.inc b/asm/macros/m4a.inc index b22da3d634..0169a3c033 100644 --- a/asm/macros/m4a.inc +++ b/asm/macros/m4a.inc @@ -11,3 +11,41 @@ .space 1 @ Padding .2byte \unknown .endm + + .macro voice_group label:req, starting_note + .align 2 + .ifb \starting_note + .global voicegroup_\label + voicegroup_\label: + .else + .set voicegroup_\label, . - \starting_note * 0xC + .endif + .endm + + .macro keysplit label:req, starting_note + .ifb \starting_note + .global keysplit_\label + keysplit_\label: + .set _last_note, 0 + .else + .set keysplit_\label, . - \starting_note + .set _last_note, \starting_note + .endif + .set _last_split, 0 + .endm + + .macro split index:req, ending_note:req + .if \ending_note < _last_note + .if _last_split == 0 + .error "split's ending_note earlier than previous keysplit's starting_note" + .else + .error "split's ending_note earlier than previous split's ending_note" + .endif + .else + .rept \ending_note - _last_note + .byte \index + .endr + .endif + .set _last_note, \ending_note + .set _last_split, 1 + .endm diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 23c1e10aa9..bebce183e9 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -166,7 +166,7 @@ BattleScript_EffectShedTail:: jumpifcantswitch SWITCH_IGNORE_ESCAPE_PREVENTION | BS_ATTACKER, BattleScript_ButItFailed setsubstitute jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_SUBSTITUTE_FAILED, BattleScript_SubstituteString - orword gHitMarker, HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_PASSIVE_HP_UPDATE attackanimation waitanimation healthbarupdate BS_ATTACKER @@ -191,7 +191,7 @@ BattleScript_EffectFilletAway:: jumpifstat BS_ATTACKER, CMP_EQUAL, STAT_SPEED, MAX_STAT_STAGE, BattleScript_ButItFailed BattleScript_FilletAwayTryAttack:: halvehp BattleScript_ButItFailed - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE attackanimation waitanimation setbyte sSTAT_ANIM_PLAYED, FALSE @@ -427,7 +427,7 @@ BattleScript_SaltCureExtraDamage:: end2 BattleScript_HurtTarget_NoString: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET return @@ -854,7 +854,7 @@ BattleScript_EffectClangorousSoul:: attackstring ppreduce cutonethirdhpraisestats BattleScript_ButItFailed - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_BIDE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_BIDE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_IGNORE_DISGUISE attackanimation waitanimation healthbarupdate BS_ATTACKER @@ -1617,7 +1617,7 @@ BattleScript_MoveEffectFlameBurst:: waitmessage B_WAIT_TIME_LONG savetarget copybyte gBattlerTarget, sSAVED_BATTLER - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET tryfaintmon BS_TARGET @@ -2974,7 +2974,7 @@ BattleScript_EffectAbsorb:: printfromtable gAbsorbDrainStringIds waitmessage B_WAIT_TIME_LONG tryfaintmon BS_ATTACKER - bicword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_PASSIVE_DAMAGE + bicword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_PASSIVE_HP_UPDATE return BattleScript_EffectExplosion:: @@ -2993,7 +2993,7 @@ BattleScript_FaintAttackerForExplosion:: return BattleScript_MaxHp50Recoil:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER @@ -3366,7 +3366,7 @@ BattleScript_RecoilIfMiss:: printstring STRINGID_PKMNCRASHED waitmessage B_WAIT_TIME_LONG jumpifability BS_ATTACKER, ABILITY_MAGIC_GUARD, BattleScript_RecoilEnd - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_IGNORE_DISGUISE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER @@ -3628,7 +3628,7 @@ BattleScript_EffectSubstitute:: jumpifstatus2 BS_ATTACKER, STATUS2_SUBSTITUTE, BattleScript_AlreadyHasSubstitute setsubstitute jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, B_MSG_SUBSTITUTE_FAILED, BattleScript_SubstituteString - orword gHitMarker, HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_PASSIVE_HP_UPDATE attackanimation waitanimation healthbarupdate BS_ATTACKER @@ -4345,7 +4345,7 @@ BattleScript_EffectBellyDrum:: ppreduce jumpifstat BS_ATTACKER, CMP_EQUAL, STAT_ATK, MAX_STAT_STAGE, BattleScript_ButItFailed halvehp BattleScript_ButItFailed - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE attackanimation waitanimation healthbarupdate BS_ATTACKER @@ -5232,6 +5232,7 @@ BattleScript_FaintAttacker:: dofaintanimation BS_ATTACKER printstring STRINGID_ATTACKERFAINTED cleareffectsonfaint BS_ATTACKER + waitanimation tryactivatesoulheart tryactivatereceiver BS_ATTACKER trytrainerslidefirstdownmsg BS_ATTACKER @@ -5246,6 +5247,7 @@ BattleScript_FaintTarget:: dofaintanimation BS_TARGET printstring STRINGID_TARGETFAINTED cleareffectsonfaint BS_TARGET + waitanimation tryactivatesoulheart tryactivatereceiver BS_TARGET trytrainerslidefirstdownmsg BS_TARGET @@ -5389,13 +5391,13 @@ BattleScript_PayDayMoneyAndPickUpItems:: end2 BattleScript_LocalBattleLost:: - jumpifbattletype BATTLE_TYPE_INGAME_PARTNER, BattleScript_LocalBattleLostPrintWhiteOut jumpifbattletype BATTLE_TYPE_DOME, BattleScript_CheckDomeDrew jumpifbattletype BATTLE_TYPE_FRONTIER, BattleScript_LocalBattleLostPrintTrainersWinText jumpifbattletype BATTLE_TYPE_TRAINER_HILL, BattleScript_LocalBattleLostPrintTrainersWinText jumpifbattletype BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd jumpifhalfword CMP_EQUAL, gTrainerBattleParameter + 2, TRAINER_SECRET_BASE, BattleScript_LocalBattleLostEnd jumpifnowhiteout BattleScript_LocalBattleLostEnd_ + jumpifbattletype BATTLE_TYPE_INGAME_PARTNER, BattleScript_LocalBattleLostPrintWhiteOut BattleScript_LocalBattleLostPrintWhiteOut:: getmoneyreward .if B_WHITEOUT_MONEY >= GEN_4 @@ -5776,7 +5778,7 @@ BattleScript_LeechSeedTurnDrainHealBlock:: BattleScript_LeechSeedTurnDrainRecovery:: call BattleScript_LeechSeedTurnDrain BattleScript_LeechSeedTurnDrainGainHp: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET printfromtable gLeechSeedStringIds @@ -5959,14 +5961,14 @@ BattleScript_EncoredNoMore:: BattleScript_DestinyBondTakesLife:: printstring STRINGID_PKMNTOOKFOE waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER return BattleScript_DmgHazardsOnAttacker:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER call BattleScript_PrintHurtByDmgHazards @@ -5981,7 +5983,7 @@ BattleScript_DmgHazardsOnAttackerFainted:: goto BattleScript_HandleFaintedMon BattleScript_DmgHazardsOnTarget:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET call BattleScript_PrintHurtByDmgHazards @@ -5996,7 +5998,7 @@ BattleScript_DmgHazardsOnTargetFainted:: goto BattleScript_HandleFaintedMon BattleScript_DmgHazardsOnBattlerScripting:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_SCRIPTING datahpupdate BS_SCRIPTING call BattleScript_PrintHurtByDmgHazards @@ -6011,7 +6013,7 @@ BattleScript_DmgHazardsOnBattlerScriptingFainted:: goto BattleScript_HandleFaintedMon BattleScript_DmgHazardsOnFaintedBattler:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_FAINTED datahpupdate BS_FAINTED call BattleScript_PrintHurtByDmgHazards @@ -6079,7 +6081,7 @@ BattleScript_StickyWebOnSwitchInEnd: BattleScript_PerishSongTakesLife:: printstring STRINGID_PKMNPERISHCOUNTFELL waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER @@ -6089,14 +6091,14 @@ BattleScript_PerishBodyActivates:: call BattleScript_AbilityPopUp printstring STRINGID_PKMNSWILLPERISHIN3TURNS waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE return BattleScript_GulpMissileGorging:: call BattleScript_AbilityPopUp playanimation BS_ATTACKER, B_ANIM_GULP_MISSILE waitanimation - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE effectivenesssound hitanimation BS_ATTACKER waitstate @@ -6123,7 +6125,7 @@ BattleScript_GulpMissileGulping:: call BattleScript_AbilityPopUp playanimation BS_ATTACKER, B_ANIM_GULP_MISSILE waitanimation - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE effectivenesssound hitanimation BS_ATTACKER waitstate @@ -6215,7 +6217,7 @@ BattleScript_EarthEaterActivates:: call BattleScript_AbilityPopUp pause B_WAIT_TIME_LONG tryhealquarterhealth BS_TARGET, BattleScript_EarthEaterRet - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET printstring STRINGID_PKMNREGAINEDHEALTH @@ -6923,7 +6925,7 @@ BattleScript_AftermathDmg:: pause B_WAIT_TIME_SHORT call BattleScript_AbilityPopUpScripting jumpifability BS_ATTACKER, ABILITY_MAGIC_GUARD, BattleScript_AftermathDmgRet - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_AFTERMATHDMG @@ -6966,7 +6968,7 @@ BattleScript_PoisonTurnDmg:: BattleScript_DoStatusTurnDmg:: statusanimation BS_ATTACKER BattleScript_DoTurnDmg: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER tryfaintmon BS_ATTACKER @@ -6981,7 +6983,7 @@ BattleScript_PoisonHealActivates:: printstring STRINGID_POISONHEALHPUP waitmessage B_WAIT_TIME_LONG statusanimation BS_ATTACKER - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER end2 @@ -7095,7 +7097,7 @@ BattleScript_DoSelfConfusionDmg:: effectivenesssound hitanimation BS_ATTACKER waitstate - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER resultmessage @@ -7116,7 +7118,7 @@ BattleScript_MoveUsedPowder:: effectivenesssound hitanimation BS_ATTACKER waitstate - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_POWDEREXPLODES @@ -7306,7 +7308,7 @@ BattleScript_MoveEffectRecoil:: jumpifability BS_ATTACKER, ABILITY_ROCK_HEAD, BattleScript_RecoilEnd jumpifability BS_ATTACKER, ABILITY_MAGIC_GUARD, BattleScript_RecoilEnd BattleScript_DoRecoil:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_IGNORE_DISGUISE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHITWITHRECOIL @@ -7526,7 +7528,7 @@ BattleScript_HarvestActivatesEnd: end3 BattleScript_SolarPowerActivates:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE call BattleScript_AbilityPopUp healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -7889,6 +7891,7 @@ BattleScript_SnowWarningActivatesSnow:: BattleScript_ActivateTerrainEffects: saveattacker savetarget + resetterrainabilityflags setbyte gBattlerAttacker, 0 BattleScript_ActivateTerrainSeed: copyarraywithindex gBattlerTarget, gBattlerByTurnOrder, gBattlerAttacker, 1 @@ -7952,7 +7955,7 @@ BattleScript_BadDreams_DmgAfterPopUp: printstring STRINGID_BADDREAMSDMG waitmessage B_WAIT_TIME_LONG dmg_1_8_targethp - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_TARGET datahpupdate BS_TARGET jumpifhasnohp BS_TARGET, BattleScript_BadDreams_HidePopUp @@ -8130,10 +8133,10 @@ BattleScript_MoveUsedPsychicTerrainPrevents:: BattleScript_GrassyTerrainHeals:: printstring STRINGID_GRASSYTERRAINHEALS waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER - bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + bicword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE end2 BattleScript_AbilityNoSpecificStatLoss:: @@ -8379,7 +8382,7 @@ BattleScript_ImposterActivates:: end3 BattleScript_HurtAttacker: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_PKMNHURTSWITH @@ -8403,7 +8406,7 @@ BattleScript_RockyHelmetActivatesDmg: BattleScript_SpikyShieldEffect:: jumpifabsent BS_ATTACKER, BattleScript_SpikyShieldRet - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE clearmoveresultflags MOVE_RESULT_NO_EFFECT healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER @@ -8415,7 +8418,7 @@ BattleScript_SpikyShieldRet:: return BattleScript_KingsShieldEffect:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE clearmoveresultflags MOVE_RESULT_NO_EFFECT seteffectsecondary copybyte sBATTLER, gBattlerTarget @@ -8425,7 +8428,7 @@ BattleScript_KingsShieldEffect:: return BattleScript_BanefulBunkerEffect:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_HP_UPDATE clearmoveresultflags MOVE_RESULT_NO_EFFECT seteffectsecondary setmoveresultflags MOVE_RESULT_MISSED @@ -8718,7 +8721,7 @@ BattleScript_ItemHealHP_RemoveItemRet_Anim: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_SCRIPTING datahpupdate BS_SCRIPTING removeitem BS_SCRIPTING @@ -8733,7 +8736,7 @@ BattleScript_ItemHealHP_RemoveItemEnd2_Anim: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER removeitem BS_ATTACKER @@ -8771,7 +8774,7 @@ BattleScript_AirBaloonMsgPop:: return BattleScript_ItemHurtRet:: - orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_IGNORE_DISGUISE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_IGNORE_DISGUISE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER printstring STRINGID_HURTBYITEM @@ -8789,7 +8792,7 @@ BattleScript_ItemHealHP_Ret:: playanimation BS_ATTACKER, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHPALITTLE waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_ATTACKER datahpupdate BS_ATTACKER return @@ -8844,7 +8847,7 @@ BattleScript_BerryConfuseHealEnd2_Anim: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_SCRIPTING datahpupdate BS_SCRIPTING seteffectprimary MOVE_EFFECT_CONFUSION | MOVE_EFFECT_AFFECTS_USER @@ -8860,7 +8863,7 @@ BattleScript_BerryConfuseHealRet_Anim: playanimation BS_SCRIPTING, B_ANIM_HELD_ITEM_EFFECT printstring STRINGID_PKMNSITEMRESTOREDHEALTH waitmessage B_WAIT_TIME_LONG - orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE + orword gHitMarker, HITMARKER_IGNORE_BIDE | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE healthbarupdate BS_SCRIPTING datahpupdate BS_SCRIPTING seteffectprimary MOVE_EFFECT_CONFUSION | MOVE_EFFECT_CERTAIN @@ -8979,6 +8982,7 @@ BattleScript_ArenaDoJudgment:: waitcry BS_ATTACKER dofaintanimation BS_OPPONENT1 cleareffectsonfaint BS_OPPONENT1 + waitanimation arenaopponentmonlost end2 @@ -8993,6 +8997,7 @@ BattleScript_ArenaJudgmentPlayerLoses: waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 cleareffectsonfaint BS_PLAYER1 + waitanimation arenaplayermonlost end2 @@ -9007,10 +9012,12 @@ BattleScript_ArenaJudgmentDraw: waitcry BS_ATTACKER dofaintanimation BS_PLAYER1 cleareffectsonfaint BS_PLAYER1 + waitanimation playfaintcry BS_OPPONENT1 waitcry BS_ATTACKER dofaintanimation BS_OPPONENT1 cleareffectsonfaint BS_OPPONENT1 + waitanimation arenabothmonlost end2 diff --git a/include/battle.h b/include/battle.h index 79cc591980..179ea47769 100644 --- a/include/battle.h +++ b/include/battle.h @@ -169,7 +169,8 @@ struct ProtectStruct u16 activateOpportunist:2; // 2 - to copy stats. 1 - stats copied (do not repeat). 0 - no stats to copy u16 usedAllySwitch:1; u16 lashOutAffected:1; - u16 padding:4; + u16 assuranceDoubled:1; + u16 padding:3; // End of 16-bit bitfield u16 physicalDmg; u16 specialDmg; @@ -686,7 +687,7 @@ struct BattleStruct u8 startingStatusDone:1; u8 terrainDone:1; u8 overworldWeatherDone:1; - u8 unused:3; + u8 battlerKOAnimsRunning:3; u8 isAtkCancelerForCalledMove:1; // Certain cases in atk canceler should only be checked once, when the original move is called, however others need to be checked the twice. u8 friskedAbility:1; // If identifies two mons, show the ability pop-up only once. u8 fickleBeamBoosted:1; @@ -1236,7 +1237,7 @@ static inline bool32 IsSpreadMove(u32 moveTarget) static inline bool32 IsDoubleSpreadMove(void) { return gBattleStruct->numSpreadTargets > 1 - && !(gHitMarker & (HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE | HITMARKER_UNABLE_TO_USE_MOVE)) + && !(gHitMarker & (HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_UNABLE_TO_USE_MOVE)) && IsSpreadMove(GetBattlerMoveTargetType(gBattlerAttacker, gCurrentMove)); } diff --git a/include/config/battle.h b/include/config/battle.h index f4a14f4df4..57fc4cdf44 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -28,7 +28,7 @@ #define B_BURN_DAMAGE GEN_LATEST // In Gen7+, burn damage is 1/16th of max HP instead of 1/8th. Also applies to Frostbite. #define B_BURN_FACADE_DMG GEN_LATEST // In Gen6+, burn's effect of lowering the Attack stat no longer applies to Facade. #define B_BINDING_DAMAGE GEN_LATEST // In Gen6+, binding damage is 1/8 of max HP instead of 1/16. (With Binding Band, 1/6 and 1/8 respectively.) -#define B_PSYWAVE_DMG GEN_LATEST // Psywave's damage formula. See Cmd_psywavedamageeffect. +#define B_PSYWAVE_DMG GEN_LATEST // Psywave's damage formula. See DoFixedDamageMoveCalc for details. #define B_PAYBACK_SWITCH_BOOST GEN_LATEST // In Gen5+, if the opponent switches out, Payback's damage will no longer be doubled. #define B_HIDDEN_POWER_DMG GEN_LATEST // In Gen6+, Hidden Power's base power was set to always be 60. Before, it was determined by the mon's IVs. #define B_ROUGH_SKIN_DMG GEN_LATEST // In Gen4+, Rough Skin contact damage is 1/8th of max HP instead of 1/16th. This will also affect Iron Barbs. diff --git a/include/config/general.h b/include/config/general.h index aec1ae5c33..6e59c4e3ef 100644 --- a/include/config/general.h +++ b/include/config/general.h @@ -68,7 +68,6 @@ // General settings #define EXPANSION_INTRO TRUE // If TRUE, a custom RHH intro will play after the vanilla copyright screen. -#define SUMMARY_SCREEN_NATURE_COLORS TRUE // If TRUE, nature-based stat boosts and reductions will be red and blue in the summary screen. #define HQ_RANDOM TRUE // If TRUE, replaces the default RNG with an implementation of SFC32 RNG. May break code that relies on RNG. #define COMPETITIVE_PARTY_SYNTAX TRUE // If TRUE, parties are defined in "competitive syntax". #define AUTO_SCROLL_TEXT FALSE // If TRUE, text will automatically scroll to the next line after NUM_FRAMES_AUTO_SCROLL_DELAY. Players can still press A_BUTTON or B_BUTTON to scroll on their own. diff --git a/include/config/summary_screen.h b/include/config/summary_screen.h index 9407d93c7e..4b5f434cb3 100644 --- a/include/config/summary_screen.h +++ b/include/config/summary_screen.h @@ -3,6 +3,7 @@ // Settings #define P_SUMMARY_SCREEN_MOVE_RELEARNER TRUE // If TRUE, shows an option for Pokémon to relearn moves on the summary screen moves page. +#define P_SUMMARY_SCREEN_NATURE_COLORS TRUE // If TRUE, nature-based stat boosts and reductions will be red and blue in the summary screen. #define P_SUMMARY_MOVE_RELEARNER_FULL_PP TRUE // If TRUE, the move relearner in the summary screen restores relearned moves' PP to full. #define P_SUMMARY_SCREEN_RENAME TRUE // If TRUE, an option to change Pokémon nicknames replaces the cancel prompt on the summary screen info page. #define P_SUMMARY_SCREEN_IV_EV_INFO FALSE // If TRUE, will allow player to cycle through the Stats, IVs, and EVs in the summary screen skills page. diff --git a/include/constants/battle.h b/include/constants/battle.h index bc7cdc1069..5eb2005873 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -223,7 +223,7 @@ enum BattlerId #define HITMARKER_DISABLE_ANIMATION (1 << 17) // disable animations during battle scripts, e.g. for Bug Bite #define HITMARKER_UNUSED_3 (1 << 18) #define HITMARKER_UNABLE_TO_USE_MOVE (1 << 19) -#define HITMARKER_PASSIVE_DAMAGE (1 << 20) +#define HITMARKER_PASSIVE_HP_UPDATE (1 << 20) #define HITMARKER_UNUSED_4 (1 << 21) #define HITMARKER_PLAYER_FAINTED (1 << 22) #define HITMARKER_ALLOW_NO_PP (1 << 23) diff --git a/include/constants/battle_ai.h b/include/constants/battle_ai.h index 2f97ab2234..5da20264eb 100644 --- a/include/constants/battle_ai.h +++ b/include/constants/battle_ai.h @@ -3,38 +3,37 @@ // AI Flags. Most run specific functions to update score, new flags are used for internal logic in other scripts // See docs/ai_flags.md for more details. -#define AI_FLAG_CHECK_BAD_MOVE (1 << 0) // AI will avoid using moves that are likely to fail or be ineffective in the current situation. -#define AI_FLAG_TRY_TO_FAINT (1 << 1) // AI will prioritize KOing the player's mon if able. -#define AI_FLAG_CHECK_VIABILITY (1 << 2) // AI damaging moves and move effects to determine the best available move in the current situation. -#define AI_FLAG_FORCE_SETUP_FIRST_TURN (1 << 3) // AI will prioritize using setup moves on the first turn at the expensve of all else. AI_FLAG_CHECK_VIABILITY will instead do this when the AI determines it makes sense. -#define AI_FLAG_RISKY (1 << 4) // AI will generally behave more recklessly, prioritizing damage over accuracy, explosions, etc. -#define AI_FLAG_TRY_TO_2HKO (1 << 5) // AI adds score bonus to any move the AI has that either OHKOs or 2HKOs the player. -#define AI_FLAG_PREFER_BATON_PASS (1 << 6) // AI prefers raising its own stats and setting for / using Baton Pass. -#define AI_FLAG_DOUBLE_BATTLE (1 << 7) // Automatically set for double battles, handles AI behaviour with partner. -#define AI_FLAG_HP_AWARE (1 << 8) // AI will favour certain move effects based on how much remaining HP it and the player's mon have. -#define AI_FLAG_POWERFUL_STATUS (1 << 9) // AI prefers moves that set up field effects or side statuses, even if the user can faint the target. -// New, Trainer Handicap Flags -#define AI_FLAG_NEGATE_UNAWARE (1 << 10) // AI is NOT aware of negating effects like wonder room, mold breaker, etc. -#define AI_FLAG_WILL_SUICIDE (1 << 11) // AI will use explosion / self destruct / final gambit / etc. -// New, Trainer Strategy Flags -#define AI_FLAG_PREFER_STATUS_MOVES (1 << 12) // AI gets a score bonus for status moves. Should be combined with AI_FLAG_CHECK_BAD_MOVE to prevent using only status moves. -#define AI_FLAG_STALL (1 << 13) // AI stalls battle and prefers secondary damage/trapping/etc. TODO not finished. -#define AI_FLAG_SMART_SWITCHING (1 << 14) // AI includes a lot more switching checks. Automatically includes AI_FLAG_SMART_MON_CHOICES. -#define AI_FLAG_ACE_POKEMON (1 << 15) // AI has an Ace Pokemon. The last Pokemon in the party will not be used until it's the last one remaining. -#define AI_FLAG_OMNISCIENT (1 << 16) // AI has full knowledge of player moves, abilities, hold items. -#define AI_FLAG_SMART_MON_CHOICES (1 << 17) // AI will make smarter decisions when choosing which mon to send out mid-battle and after a KO, which are separate decisions. Automatically included by AI_FLAG_SMART_SWITCHING. -#define AI_FLAG_CONSERVATIVE (1 << 18) // AI assumes all moves will low roll damage. -#define AI_FLAG_SEQUENCE_SWITCHING (1 << 19) // AI switches in mons in exactly party order, and never switches mid-battle. -#define AI_FLAG_DOUBLE_ACE_POKEMON (1 << 20) // AI has *two* Ace Pokémon. The last two Pokémons in the party won't be used unless they're the last ones remaining. Goes well in battles where the trainer ID equals to twins, couples, etc. -#define AI_FLAG_WEIGH_ABILITY_PREDICTION (1 << 21) // AI will predict player's ability based on aiRating -#define AI_FLAG_PREFER_HIGHEST_DAMAGE_MOVE (1 << 22) // AI adds score to highest damage move regardless of accuracy or secondary effect -#define AI_FLAG_PREDICT_SWITCH (1 << 23) // AI will predict the player's switches and switchins based on how it would handle the situation. Recommend using AI_FLAG_OMNISCIENT -#define AI_FLAG_PREDICT_INCOMING_MON (1 << 24) // AI will score against the predicting incoming mon if it predicts the player to switch. Requires AI_FLAG_PREDICT_SWITCH -#define AI_FLAG_PP_STALL_PREVENTION (1 << 25) // AI keeps track of the player's switches where the incoming mon is immune to the chosen move -#define AI_FLAG_PREDICT_MOVE (1 << 26) // AI will predict the player's move based on what move it would use in the same situation. Recommend using AI_FLAG_OMNISCIENT +#define AI_FLAG(x) ((u64)1 << x) -// Flags at and after 32 need different formatting, as in -// #define AI_FLAG_PLACEHOLDER ((u64)1 << 32) +#define AI_FLAG_CHECK_BAD_MOVE AI_FLAG(0) // AI will avoid using moves that are likely to fail or be ineffective in the current situation. +#define AI_FLAG_TRY_TO_FAINT AI_FLAG(1) // AI will prioritize KOing the player's mon if able. +#define AI_FLAG_CHECK_VIABILITY AI_FLAG(2) // AI damaging moves and move effects to determine the best available move in the current situation. +#define AI_FLAG_FORCE_SETUP_FIRST_TURN AI_FLAG(3) // AI will prioritize using setup moves on the first turn at the expensve of all else. AI_FLAG_CHECK_VIABILITY will instead do this when the AI determines it makes sense. +#define AI_FLAG_RISKY AI_FLAG(4) // AI will generally behave more recklessly, prioritizing damage over accuracy, explosions, etc. +#define AI_FLAG_TRY_TO_2HKO AI_FLAG(5) // AI adds score bonus to any move the AI has that either OHKOs or 2HKOs the player. +#define AI_FLAG_PREFER_BATON_PASS AI_FLAG(6) // AI prefers raising its own stats and setting for / using Baton Pass. +#define AI_FLAG_DOUBLE_BATTLE AI_FLAG(7) // Automatically set for double battles, handles AI behaviour with partner. +#define AI_FLAG_HP_AWARE AI_FLAG(8) // AI will favour certain move effects based on how much remaining HP it and the player's mon have. +#define AI_FLAG_POWERFUL_STATUS AI_FLAG(9) // AI prefers moves that set up field effects or side statuses, even if the user can faint the target. +// New, Trainer Handicap Flags +#define AI_FLAG_NEGATE_UNAWARE AI_FLAG(10) // AI is NOT aware of negating effects like wonder room, mold breaker, etc. +#define AI_FLAG_WILL_SUICIDE AI_FLAG(11) // AI will use explosion / self destruct / final gambit / etc. +// New, Trainer Strategy Flags +#define AI_FLAG_PREFER_STATUS_MOVES AI_FLAG(12) // AI gets a score bonus for status moves. Should be combined with AI_FLAG_CHECK_BAD_MOVE to prevent using only status moves. +#define AI_FLAG_STALL AI_FLAG(13) // AI stalls battle and prefers secondary damage/trapping/etc. TODO not finished. +#define AI_FLAG_SMART_SWITCHING AI_FLAG(14) // AI includes a lot more switching checks. Automatically includes AI_FLAG_SMART_MON_CHOICES. +#define AI_FLAG_ACE_POKEMON AI_FLAG(15) // AI has an Ace Pokemon. The last Pokemon in the party will not be used until it's the last one remaining. +#define AI_FLAG_OMNISCIENT AI_FLAG(16) // AI has full knowledge of player moves, abilities, hold items. +#define AI_FLAG_SMART_MON_CHOICES AI_FLAG(17) // AI will make smarter decisions when choosing which mon to send out mid-battle and after a KO, which are separate decisions. Automatically included by AI_FLAG_SMART_SWITCHING. +#define AI_FLAG_CONSERVATIVE AI_FLAG(18) // AI assumes all moves will low roll damage. +#define AI_FLAG_SEQUENCE_SWITCHING AI_FLAG(19) // AI switches in mons in exactly party order, and never switches mid-battle. +#define AI_FLAG_DOUBLE_ACE_POKEMON AI_FLAG(20) // AI has *two* Ace Pokémon. The last two Pokémons in the party won't be used unless they're the last ones remaining. Goes well in battles where the trainer ID equals to twins, couples, etc. +#define AI_FLAG_WEIGH_ABILITY_PREDICTION AI_FLAG(21) // AI will predict player's ability based on aiRating +#define AI_FLAG_PREFER_HIGHEST_DAMAGE_MOVE AI_FLAG(22) // AI adds score to highest damage move regardless of accuracy or secondary effect +#define AI_FLAG_PREDICT_SWITCH AI_FLAG(23) // AI will predict the player's switches and switchins based on how it would handle the situation. Recommend using AI_FLAG_OMNISCIENT +#define AI_FLAG_PREDICT_INCOMING_MON AI_FLAG(24) // AI will score against the predicting incoming mon if it predicts the player to switch. Requires AI_FLAG_PREDICT_SWITCH +#define AI_FLAG_PP_STALL_PREVENTION AI_FLAG(25) // AI keeps track of the player's switches where the incoming mon is immune to the chosen move +#define AI_FLAG_PREDICT_MOVE AI_FLAG(26) // AI will predict the player's move based on what move it would use in the same situation. Recommend using AI_FLAG_OMNISCIENT #define AI_FLAG_COUNT 27 @@ -45,10 +44,10 @@ #define AI_FLAG_PREDICTION (AI_FLAG_PREDICT_SWITCH | AI_FLAG_PREDICT_INCOMING_MON | AI_FLAG_PREDICT_MOVE) // 'other' ai logic flags -#define AI_FLAG_DYNAMIC_FUNC ((u64)1 << 60) // Create custom AI functions for specific battles via "setdynamicaifunc" cmd -#define AI_FLAG_ROAMING ((u64)1 << 61) -#define AI_FLAG_SAFARI ((u64)1 << 62) -#define AI_FLAG_FIRST_BATTLE ((u64)1 << 63) +#define AI_FLAG_DYNAMIC_FUNC AI_FLAG(60) // Create custom AI functions for specific battles via "setdynamicaifunc" cmd +#define AI_FLAG_ROAMING AI_FLAG(61) +#define AI_FLAG_SAFARI AI_FLAG(62) +#define AI_FLAG_FIRST_BATTLE AI_FLAG(63) #define AI_SCORE_DEFAULT 100 // Default score for all AI moves. diff --git a/include/constants/generational_changes.h b/include/constants/generational_changes.h index 060d4167ef..a1e0a43074 100644 --- a/include/constants/generational_changes.h +++ b/include/constants/generational_changes.h @@ -17,6 +17,14 @@ enum GenConfigTag GEN_CONFIG_BATTLE_BOND, GEN_CONFIG_ATE_MULTIPLIER, GEN_CONFIG_FELL_STINGER_STAT_RAISE, + GEN_PICKUP_WILD, + GEN_PROTEAN_LIBERO, + GEN_INTREPID_SWORD, + GEN_DAUNTLESS_SHIELD, + GEN_ILLUMINATE_EFFECT, + GEN_STEAL_WILD_ITEMS, + GEN_SNOW_WARNING, + GEN_ALLY_SWITCH_FAIL_CHANCE, GEN_CONFIG_COUNT }; diff --git a/include/field_effect.h b/include/field_effect.h index 2e13879353..8a3de2b8de 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -37,6 +37,7 @@ bool8 FieldEffectCmd_loadgfx_callnative(u8 **script, u32 *val); bool8 FieldEffectCmd_loadtiles_callnative(u8 **script, u32 *val); bool8 FieldEffectCmd_loadfadedpal_callnative(u8 **script, u32 *val); void FieldCB_FallWarpExit(void); +void HideFollowerForFieldEffect(void); void StartEscalatorWarp(u8 metatileBehavior, u8 priority); void StartLavaridgeGymB1FWarp(u8 priority); void StartLavaridgeGym1FWarp(u8 priority); diff --git a/include/follower_npc.h b/include/follower_npc.h index 52355a78b7..abfbf0962a 100644 --- a/include/follower_npc.h +++ b/include/follower_npc.h @@ -20,6 +20,7 @@ enum FollowerNPCDataTypes FNPC_DATA_WARP_END, FNPC_DATA_SURF_BLOB, FNPC_DATA_COME_OUT_DOOR, + FNPC_DATA_FORCED_MOVEMENT, FNPC_DATA_OBJ_ID, FNPC_DATA_CURRENT_SPRITE, FNPC_DATA_DELAYED_STATE, @@ -62,7 +63,8 @@ enum FollowerNPCSurfBlobStates FNPC_SURF_BLOB_DESTROY }; -enum FollowerNPCOutOfDoorTaskStates{ +enum FollowerNPCOutOfDoorTaskStates +{ OPEN_DOOR, NPC_WALK_OUT, CLOSE_DOOR, @@ -70,7 +72,8 @@ enum FollowerNPCOutOfDoorTaskStates{ REALLOW_MOVEMENT }; -enum FollowerNPCHandleEscalatorFinishTaskStates{ +enum FollowerNPCHandleEscalatorFinishTaskStates +{ MOVE_TO_PLAYER_POS, WAIT_FOR_PLAYER_MOVE, SHOW_FOLLOWER_DOWN, diff --git a/include/gba/isagbprint.h b/include/gba/isagbprint.h index d362b5cb38..c94df4fe1d 100644 --- a/include/gba/isagbprint.h +++ b/include/gba/isagbprint.h @@ -30,7 +30,7 @@ void AGBPrintInit(void); #if (LOG_HANDLER == LOG_HANDLER_MGBA_PRINT) -#define DebugPrintf(pBuf, ...) MgbaPrintf(MGBA_LOG_INFO, pBuf, ## __VA_ARGS__) +#define DebugPrintf(pBuf, ...) MgbaPrintf(MGBA_LOG_WARN, pBuf, ## __VA_ARGS__) #define DebugAssert(pFile, nLine, pExpression, nStopProgram) MgbaAssert(pFile, nLine, pExpression, nStopProgram) #define DebugPrintfLevel(level, pBuf, ...) MgbaPrintf(level, pBuf, ## __VA_ARGS__) diff --git a/include/gba/m4a_internal.h b/include/gba/m4a_internal.h index a90771048d..5c3a0872ce 100644 --- a/include/gba/m4a_internal.h +++ b/include/gba/m4a_internal.h @@ -401,7 +401,7 @@ extern const u8 gNoiseTable[]; extern const struct PokemonCrySong gPokemonCrySongTemplate; -extern const struct ToneData voicegroup000; +extern const struct ToneData voicegroup_dummy; extern char gNumMusicPlayers[]; extern char gMaxLines[]; diff --git a/include/generational_changes.h b/include/generational_changes.h index 2a97728d0d..87f8586cff 100644 --- a/include/generational_changes.h +++ b/include/generational_changes.h @@ -20,6 +20,14 @@ static const u8 sGenerationalChanges[GEN_CONFIG_COUNT] = [GEN_CONFIG_BATTLE_BOND] = B_BATTLE_BOND, [GEN_CONFIG_FELL_STINGER_STAT_RAISE] = B_FELL_STINGER_STAT_RAISE, [GEN_CONFIG_ATE_MULTIPLIER] = B_ATE_MULTIPLIER, + [GEN_PICKUP_WILD] = B_PICKUP_WILD, + [GEN_PROTEAN_LIBERO] = B_PROTEAN_LIBERO, + [GEN_INTREPID_SWORD] = B_INTREPID_SWORD, + [GEN_DAUNTLESS_SHIELD] = B_DAUNTLESS_SHIELD, + [GEN_ILLUMINATE_EFFECT] = B_ILLUMINATE_EFFECT, + [GEN_STEAL_WILD_ITEMS] = B_STEAL_WILD_ITEMS, + [GEN_SNOW_WARNING] = B_SNOW_WARNING, + [GEN_ALLY_SWITCH_FAIL_CHANCE] = B_ALLY_SWITCH_FAIL_CHANCE, }; #if TESTING diff --git a/include/global.h b/include/global.h index f4c944b64f..27c0a85e15 100644 --- a/include/global.h +++ b/include/global.h @@ -219,7 +219,8 @@ struct NPCFollower u8 inProgress:1; u8 warpEnd:1; u8 createSurfBlob:3; - u8 comeOutDoorStairs:3; + u8 comeOutDoorStairs:2; + u8 forcedMovement:1; u8 objId; u8 currentSprite; u8 delayedState; diff --git a/include/party_menu.h b/include/party_menu.h index 7c4af8c3a4..80deab2a85 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -16,10 +16,12 @@ struct PartyMenu s8 slotId2; u8 action; u16 bagItem; - s16 data1; // used variously as a move, counter, moveSlotId, or cursorPos + s16 data1; // used variously as a move, counter, moveSlotId, cursorPos, or indicator that the menu is opened from the field s16 learnMoveState; // data2, used only as a learn move state }; +#define DATA1_PARTY_MENU_FROM_FIELD -1 + extern struct PartyMenu gPartyMenu; extern bool8 gPartyMenuUseExitCallback; extern u8 gSelectedMonPartyId; diff --git a/make_tools.mk b/make_tools.mk index 75ebc05c96..6b3db7c873 100644 --- a/make_tools.mk +++ b/make_tools.mk @@ -12,10 +12,10 @@ TOOLDIRS := $(TOOL_NAMES:%=$(TOOLS_DIR)/%) CHECKTOOLDIRS := $(CHECK_TOOL_NAMES:%=$(TOOLS_DIR)/%) # Tool making doesnt require a pokeemerald dependency scan. -RULES_NO_SCAN += tools check-tools clean-tools clean-check-tools $(TOOLDIRS) $(CHECKTOOLDIRS) +RULES_NO_SCAN += tools check-tools clean-tools clean-check-tools history $(TOOLDIRS) $(CHECKTOOLDIRS) .PHONY: $(RULES_NO_SCAN) -tools: $(TOOLDIRS) +tools: history $(TOOLDIRS) check-tools: $(CHECKTOOLDIRS) @@ -30,3 +30,6 @@ clean-tools: clean-check-tools: @$(foreach tooldir,$(CHECKTOOLDIRS),$(MAKE) clean -C $(tooldir);) + +history: + @$(SHELL) ./check_history.sh diff --git a/sound/keysplit_tables.inc b/sound/keysplit_tables.inc index 81301ef62b..a3145e64d2 100644 --- a/sound/keysplit_tables.inc +++ b/sound/keysplit_tables.inc @@ -1,6 +1,6 @@ @ Due to the way mks4agb (Nintendo's tool) works, key split table labels can @ appear before the actual start of the key split table data. If you look at -@ the first keysplit table (KeySplitTable1), you'll notice it's offset backwards +@ the first keysplit table (keysplit_piano), you'll notice it's offset backwards @ by 36 bytes. This is because the key split tables don't map instruments @ for the entire note range (0-127)--they only map subsets, and the upper @ and lower ranges aren't necessarily 0 or 127. @@ -10,384 +10,26 @@ @ begins. Therefore, the notes naturally map to the key split table without @ any extra offset calculation. -.set KeySplitTable1, . - 36 - .byte 0 @ 36 - .byte 0 @ 37 - .byte 0 @ 38 - .byte 0 @ 39 - .byte 0 @ 40 - .byte 0 @ 41 - .byte 0 @ 42 - .byte 0 @ 43 - .byte 0 @ 44 - .byte 0 @ 45 - .byte 0 @ 46 - .byte 0 @ 47 - .byte 0 @ 48 - .byte 0 @ 49 - .byte 0 @ 50 - .byte 0 @ 51 - .byte 0 @ 52 - .byte 0 @ 53 - .byte 0 @ 54 - .byte 1 @ 55 - .byte 1 @ 56 - .byte 1 @ 57 - .byte 1 @ 58 - .byte 1 @ 59 - .byte 1 @ 60 - .byte 1 @ 61 - .byte 1 @ 62 - .byte 1 @ 63 - .byte 1 @ 64 - .byte 1 @ 65 - .byte 1 @ 66 - .byte 1 @ 67 - .byte 1 @ 68 - .byte 1 @ 69 - .byte 2 @ 70 - .byte 2 @ 71 - .byte 2 @ 72 - .byte 2 @ 73 - .byte 2 @ 74 - .byte 2 @ 75 - .byte 2 @ 76 - .byte 2 @ 77 - .byte 2 @ 78 - .byte 2 @ 79 - .byte 2 @ 80 - .byte 2 @ 81 - .byte 2 @ 82 - .byte 2 @ 83 - .byte 2 @ 84 - .byte 2 @ 85 - .byte 2 @ 86 - .byte 2 @ 87 - .byte 2 @ 88 - .byte 2 @ 89 - .byte 2 @ 90 - .byte 3 @ 91 - .byte 3 @ 92 - .byte 3 @ 93 - .byte 3 @ 94 - .byte 3 @ 95 - .byte 3 @ 96 - .byte 3 @ 97 - .byte 3 @ 98 - .byte 3 @ 99 - .byte 3 @ 100 - .byte 3 @ 101 - .byte 3 @ 102 - .byte 3 @ 103 - .byte 3 @ 104 - .byte 3 @ 105 - .byte 3 @ 106 - .byte 3 @ 107 +keysplit piano, 36 + split 0, 55 + split 1, 70 + split 2, 91 + split 3, 108 -.set KeySplitTable2, . - 36 - .byte 0 @ 36 - .byte 0 @ 37 - .byte 0 @ 38 - .byte 0 @ 39 - .byte 0 @ 40 - .byte 0 @ 41 - .byte 0 @ 42 - .byte 0 @ 43 - .byte 0 @ 44 - .byte 0 @ 45 - .byte 0 @ 46 - .byte 0 @ 47 - .byte 0 @ 48 - .byte 0 @ 49 - .byte 0 @ 50 - .byte 0 @ 51 - .byte 0 @ 52 - .byte 0 @ 53 - .byte 0 @ 54 - .byte 0 @ 55 - .byte 0 @ 56 - .byte 0 @ 57 - .byte 0 @ 58 - .byte 0 @ 59 - .byte 0 @ 60 - .byte 0 @ 61 - .byte 0 @ 62 - .byte 0 @ 63 - .byte 0 @ 64 - .byte 0 @ 65 - .byte 0 @ 66 - .byte 0 @ 67 - .byte 0 @ 68 - .byte 1 @ 69 - .byte 1 @ 70 - .byte 1 @ 71 - .byte 1 @ 72 - .byte 1 @ 73 - .byte 1 @ 74 - .byte 1 @ 75 - .byte 1 @ 76 - .byte 1 @ 77 - .byte 1 @ 78 - .byte 1 @ 79 - .byte 1 @ 80 - .byte 2 @ 81 - .byte 2 @ 82 - .byte 2 @ 83 - .byte 2 @ 84 - .byte 2 @ 85 - .byte 2 @ 86 - .byte 2 @ 87 - .byte 2 @ 88 - .byte 2 @ 89 - .byte 2 @ 90 - .byte 2 @ 91 - .byte 2 @ 92 - .byte 2 @ 93 - .byte 2 @ 94 - .byte 2 @ 95 - .byte 2 @ 96 - .byte 2 @ 97 - .byte 2 @ 98 - .byte 2 @ 99 - .byte 2 @ 100 - .byte 2 @ 101 - .byte 2 @ 102 - .byte 2 @ 103 - .byte 2 @ 104 - .byte 2 @ 105 - .byte 2 @ 106 - .byte 2 @ 107 +keysplit strings, 36 + split 0, 69 + split 1, 81 + split 2, 108 -.set KeySplitTable3, . - 36 - .byte 0 @ 36 - .byte 0 @ 37 - .byte 0 @ 38 - .byte 0 @ 39 - .byte 0 @ 40 - .byte 0 @ 41 - .byte 0 @ 42 - .byte 0 @ 43 - .byte 0 @ 44 - .byte 0 @ 45 - .byte 0 @ 46 - .byte 0 @ 47 - .byte 0 @ 48 - .byte 0 @ 49 - .byte 0 @ 50 - .byte 0 @ 51 - .byte 0 @ 52 - .byte 0 @ 53 - .byte 0 @ 54 - .byte 0 @ 55 - .byte 0 @ 56 - .byte 0 @ 57 - .byte 0 @ 58 - .byte 0 @ 59 - .byte 0 @ 60 - .byte 0 @ 61 - .byte 0 @ 62 - .byte 0 @ 63 - .byte 0 @ 64 - .byte 0 @ 65 - .byte 1 @ 66 - .byte 1 @ 67 - .byte 1 @ 68 - .byte 1 @ 69 - .byte 1 @ 70 - .byte 1 @ 71 - .byte 1 @ 72 - .byte 1 @ 73 - .byte 1 @ 74 - .byte 1 @ 75 - .byte 1 @ 76 - .byte 1 @ 77 - .byte 1 @ 78 - .byte 1 @ 79 - .byte 1 @ 80 - .byte 1 @ 81 - .byte 1 @ 82 - .byte 1 @ 83 - .byte 2 @ 84 - .byte 2 @ 85 - .byte 2 @ 86 - .byte 2 @ 87 - .byte 2 @ 88 - .byte 2 @ 89 - .byte 2 @ 90 - .byte 2 @ 91 - .byte 2 @ 92 - .byte 2 @ 93 - .byte 2 @ 94 - .byte 2 @ 95 - .byte 2 @ 96 - .byte 2 @ 97 - .byte 2 @ 98 - .byte 2 @ 99 - .byte 2 @ 100 - .byte 2 @ 101 - .byte 2 @ 102 - .byte 2 @ 103 - .byte 2 @ 104 - .byte 2 @ 105 - .byte 2 @ 106 - .byte 2 @ 107 +keysplit trumpet, 36 + split 0, 66 + split 1, 84 + split 2, 108 -.set KeySplitTable4, . - 24 - .byte 0 @ 24 - .byte 0 @ 25 - .byte 0 @ 26 - .byte 0 @ 27 - .byte 0 @ 28 - .byte 0 @ 29 - .byte 0 @ 30 - .byte 0 @ 31 - .byte 0 @ 32 - .byte 0 @ 33 - .byte 0 @ 34 - .byte 0 @ 35 - .byte 0 @ 36 - .byte 0 @ 37 - .byte 0 @ 38 - .byte 0 @ 39 - .byte 0 @ 40 - .byte 0 @ 41 - .byte 1 @ 42 - .byte 1 @ 43 - .byte 1 @ 44 - .byte 1 @ 45 - .byte 1 @ 46 - .byte 1 @ 47 - .byte 1 @ 48 - .byte 1 @ 49 - .byte 1 @ 50 - .byte 1 @ 51 - .byte 1 @ 52 - .byte 1 @ 53 - .byte 1 @ 54 - .byte 1 @ 55 - .byte 1 @ 56 - .byte 1 @ 57 - .byte 1 @ 58 - .byte 1 @ 59 - .byte 1 @ 60 - .byte 1 @ 61 - .byte 1 @ 62 - .byte 1 @ 63 - .byte 1 @ 64 - .byte 1 @ 65 - .byte 1 @ 66 - .byte 1 @ 67 - .byte 1 @ 68 - .byte 1 @ 69 - .byte 1 @ 70 - .byte 1 @ 71 - .byte 1 @ 72 - .byte 1 @ 73 - .byte 1 @ 74 - .byte 1 @ 75 - .byte 1 @ 76 - .byte 1 @ 77 - .byte 1 @ 78 - .byte 1 @ 79 - .byte 1 @ 80 - .byte 1 @ 81 - .byte 1 @ 82 - .byte 1 @ 83 - .byte 1 @ 84 - .byte 1 @ 85 - .byte 1 @ 86 - .byte 1 @ 87 - .byte 1 @ 88 - .byte 1 @ 89 - .byte 1 @ 90 - .byte 1 @ 91 - .byte 1 @ 92 - .byte 1 @ 93 - .byte 1 @ 94 - .byte 1 @ 95 - .byte 1 @ 96 - .byte 1 @ 97 - .byte 1 @ 98 - .byte 1 @ 99 - .byte 1 @ 100 - .byte 1 @ 101 - .byte 1 @ 102 - .byte 1 @ 103 - .byte 1 @ 104 - .byte 1 @ 105 - .byte 1 @ 106 - .byte 1 @ 107 +keysplit tuba, 24 + split 0, 42 + split 1, 108 -.set KeySplitTable5, . - 36 - .byte 0 @ 36 - .byte 0 @ 37 - .byte 0 @ 38 - .byte 0 @ 39 - .byte 0 @ 40 - .byte 0 @ 41 - .byte 0 @ 42 - .byte 0 @ 43 - .byte 0 @ 44 - .byte 0 @ 45 - .byte 0 @ 46 - .byte 0 @ 47 - .byte 0 @ 48 - .byte 0 @ 49 - .byte 0 @ 50 - .byte 0 @ 51 - .byte 0 @ 52 - .byte 0 @ 53 - .byte 0 @ 54 - .byte 0 @ 55 - .byte 0 @ 56 - .byte 0 @ 57 - .byte 0 @ 58 - .byte 0 @ 59 - .byte 0 @ 60 - .byte 0 @ 61 - .byte 0 @ 62 - .byte 0 @ 63 - .byte 0 @ 64 - .byte 0 @ 65 - .byte 1 @ 66 - .byte 1 @ 67 - .byte 1 @ 68 - .byte 1 @ 69 - .byte 1 @ 70 - .byte 1 @ 71 - .byte 1 @ 72 - .byte 1 @ 73 - .byte 1 @ 74 - .byte 1 @ 75 - .byte 1 @ 76 - .byte 1 @ 77 - .byte 1 @ 78 - .byte 1 @ 79 - .byte 1 @ 80 - .byte 1 @ 81 - .byte 1 @ 82 - .byte 1 @ 83 - .byte 1 @ 84 - .byte 1 @ 85 - .byte 1 @ 86 - .byte 1 @ 87 - .byte 1 @ 88 - .byte 1 @ 89 - .byte 1 @ 90 - .byte 1 @ 91 - .byte 1 @ 92 - .byte 1 @ 93 - .byte 1 @ 94 - .byte 1 @ 95 - .byte 1 @ 96 - .byte 1 @ 97 - .byte 1 @ 98 - .byte 1 @ 99 - .byte 1 @ 100 - .byte 1 @ 101 - .byte 1 @ 102 - .byte 1 @ 103 - .byte 1 @ 104 - .byte 1 @ 105 - .byte 1 @ 106 - .byte 1 @ 107 +keysplit french_horn, 36 + split 0, 66 + split 1, 108 diff --git a/sound/songs/midi/midi.cfg b/sound/songs/midi/midi.cfg index 508f729db9..68df84d7a5 100644 --- a/sound/songs/midi/midi.cfg +++ b/sound/songs/midi/midi.cfg @@ -1,420 +1,420 @@ -mus_abandoned_ship.mid: -E -R50 -G030 -V080 -mus_abnormal_weather.mid: -E -R50 -G089 -V080 -mus_aqua_magma_hideout.mid: -E -R50 -G076 -V084 -mus_awaken_legend.mid: -E -R50 -G012 -V090 -P5 -mus_b_arena.mid: -E -R50 -G104 -V090 -mus_b_dome_lobby.mid: -E -R50 -G111 -V056 -mus_b_dome.mid: -E -R50 -G111 -V090 -mus_b_factory.mid: -E -R50 -G113 -V100 -mus_b_frontier.mid: -E -R50 -G103 -V094 -mus_b_palace.mid: -E -R50 -G108 -V105 -mus_b_pike.mid: -E -R50 -G112 -V092 -mus_b_pyramid_top.mid: -E -R50 -G107 -V077 -mus_b_pyramid.mid: -E -R50 -G106 -V079 -mus_b_tower_rs.mid: -E -R50 -G035 -V080 -mus_b_tower.mid: -E -R50 -G110 -V100 -mus_birch_lab.mid: -E -R50 -G033 -V080 -mus_c_comm_center.mid: -E -R50 -V080 -mus_c_vs_legend_beast.mid: -E -R50 -V080 -mus_cable_car.mid: -E -R50 -G071 -V078 -mus_caught.mid: -E -R50 -G025 -V080 -mus_cave_of_origin.mid: -E -R50 -G037 -V080 -mus_contest_lobby.mid: -E -R50 -G098 -V060 -mus_contest_results.mid: -E -R50 -G092 -V080 -mus_contest_winner.mid: -E -R50 -G085 -V100 -mus_contest.mid: -E -R50 -G086 -V088 -mus_credits.mid: -E -R50 -G101 -V100 -mus_cycling.mid: -E -R50 -G049 -V083 -mus_dewford.mid: -E -R50 -G073 -V078 -mus_dummy.mid: -E -R40 -mus_encounter_aqua.mid: -E -R50 -G065 -V086 -mus_encounter_brendan.mid: -E -R50 -G067 -V078 -mus_encounter_champion.mid: -E -R50 -G100 -V076 -mus_encounter_cool.mid: -E -R50 -G063 -V086 -mus_encounter_elite_four.mid: -E -R50 -G096 -V078 -mus_encounter_female.mid: -E -R50 -G053 -V072 -mus_encounter_girl.mid: -E -R50 -G027 -V080 -mus_encounter_hiker.mid: -E -R50 -G097 -V076 -mus_encounter_intense.mid: -E -R50 -G062 -V078 -mus_encounter_interviewer.mid: -E -R50 -G099 -V062 -mus_encounter_magma.mid: -E -R50 -G087 -V072 -mus_encounter_male.mid: -E -R50 -G028 -V080 -mus_encounter_may.mid: -E -R50 -G061 -V078 -mus_encounter_rich.mid: -E -R50 -G043 -V094 -mus_encounter_suspicious.mid: -E -R50 -G069 -V078 -mus_encounter_swimmer.mid: -E -R50 -G036 -V080 -mus_encounter_twins.mid: -E -R50 -G095 -V075 -mus_end.mid: -E -R50 -G102 -V036 -mus_ever_grande.mid: -E -R50 -G068 -V086 -mus_evolution_intro.mid: -E -R50 -G026 -V080 -mus_evolution.mid: -E -R50 -G026 -V080 -mus_evolved.mid: -E -R50 -G012 -V090 -P5 -mus_fallarbor.mid: -E -R50 -G083 -V100 -mus_follow_me.mid: -E -R50 -G066 -V074 -mus_fortree.mid: -E -R50 -G032 -V080 -mus_game_corner.mid: -E -R50 -G072 -V072 -mus_gsc_pewter.mid: -E -R50 -V080 -mus_gsc_route38.mid: -E -R50 -V080 -mus_gym.mid: -E -R50 -G013 -V080 -mus_hall_of_fame_room.mid: -E -R50 -G093 -V080 -mus_hall_of_fame.mid: -E -R50 -G082 -V078 -mus_heal.mid: -E -R50 -G012 -V090 -P5 -mus_help.mid: -E -R50 -G056 -V078 -mus_intro_battle.mid: -E -R50 -G088 -V088 -mus_intro.mid: -E -R50 -G060 -V090 -mus_level_up.mid: -E -R50 -G012 -V090 -P5 -mus_lilycove_museum.mid: -E -R50 -G020 -V080 -mus_lilycove.mid: -E -R50 -G054 -V085 -mus_link_contest_p1.mid: -E -R50 -G039 -V079 -mus_link_contest_p2.mid: -E -R50 -G040 -V090 -mus_link_contest_p3.mid: -E -R50 -G041 -V075 -mus_link_contest_p4.mid: -E -R50 -G042 -V090 -mus_littleroot_test.mid: -E -R50 -G034 -V099 -mus_littleroot.mid: -E -R50 -G051 -V100 -mus_move_deleted.mid: -E -R50 -G012 -V090 -P5 -mus_mt_chimney.mid: -E -R50 -G052 -V078 -mus_mt_pyre_exterior.mid: -E -R50 -G080 -V080 -mus_mt_pyre.mid: -E -R50 -G078 -V088 -mus_obtain_b_points.mid: -E -R50 -G103 -V090 -P5 -mus_obtain_badge.mid: -E -R50 -G012 -V090 -P5 -mus_obtain_berry.mid: -E -R50 -G012 -V090 -P5 -mus_obtain_item.mid: -E -R50 -G012 -V090 -P5 -mus_obtain_symbol.mid: -E -R50 -G103 -V100 -P5 -mus_obtain_tmhm.mid: -E -R50 -G012 -V090 -P5 -mus_oceanic_museum.mid: -E -R50 -G023 -V080 -mus_oldale.mid: -E -R50 -G019 -V080 -mus_petalburg_woods.mid: -E -R50 -G018 -V080 -mus_petalburg.mid: -E -R50 -G015 -V080 -mus_poke_center.mid: -E -R50 -G046 -V092 -mus_poke_mart.mid: -E -R50 -G050 -V085 -mus_rayquaza_appears.mid: -E -R50 -G109 -V090 -mus_register_match_call.mid: -E -R50 -G105 -V090 -P5 -mus_rg_berry_pick.mid: -E -R50 -G132 -V090 -mus_rg_caught_intro.mid: -E -R50 -G179 -V094 -P5 -mus_rg_caught.mid: -E -R50 -G170 -V100 -mus_rg_celadon.mid: -E -R50 -G168 -V070 -mus_rg_cinnabar.mid: -E -R50 -G138 -V090 -mus_rg_credits.mid: -E -R50 -G149 -V090 -mus_rg_cycling.mid: -E -R50 -G141 -V090 -mus_rg_dex_rating.mid: -E -R50 -G175 -V070 -P5 -mus_rg_encounter_boy.mid: -E -R50 -G144 -V090 -mus_rg_encounter_deoxys.mid: -E -R50 -G184 -V079 -mus_rg_encounter_girl.mid: -E -R50 -G143 -V051 -mus_rg_encounter_gym_leader: -E -R50 -G144 -V090 -mus_rg_encounter_rival.mid: -E -R50 -G174 -V079 -mus_rg_encounter_rocket.mid: -E -R50 -G142 -V096 -mus_rg_follow_me.mid: -E -R50 -G131 -V068 -mus_rg_fuchsia.mid: -E -R50 -G167 -V090 -mus_rg_game_corner.mid: -E -R50 -G132 -V090 -mus_rg_game_freak.mid: -E -R50 -G181 -V075 -mus_rg_gym.mid: -E -R50 -G134 -V090 -mus_rg_hall_of_fame.mid: -E -R50 -G145 -V079 -mus_rg_heal.mid: -E -R50 -G140 -V090 -mus_rg_intro_fight.mid: -E -R50 -G136 -V090 -mus_rg_jigglypuff.mid: -E -R50 -G135 -V068 -P5 -mus_rg_lavender.mid: -E -R50 -G139 -V090 -mus_rg_mt_moon.mid: -E -R50 -G147 -V090 -mus_rg_mystery_gift.mid: -E -R50 -G183 -V100 -mus_rg_net_center.mid: -E -R50 -G162 -V096 -mus_rg_new_game_exit.mid: -E -R50 -G182 -V088 -mus_rg_new_game_instruct.mid: -E -R50 -G182 -V085 -mus_rg_new_game_intro.mid: -E -R50 -G182 -V088 -mus_rg_oak_lab.mid: -E -R50 -G160 -V075 -mus_rg_oak.mid: -E -R50 -G161 -V086 -mus_rg_obtain_key_item.mid: -E -R50 -G178 -V077 -P5 -mus_rg_pallet.mid: -E -R50 -G159 -V100 -mus_rg_pewter.mid: -E -R50 -G173 -V084 -mus_rg_photo.mid: -E -R50 -G180 -V100 -P5 -mus_rg_poke_center.mid: -E -R50 -G162 -V096 -mus_rg_poke_flute.mid: -E -R50 -G165 -V048 -P5 -mus_rg_poke_jump.mid: -E -R50 -G132 -V090 -mus_rg_poke_mansion.mid: -E -R50 -G148 -V090 -mus_rg_poke_tower.mid: -E -R50 -G165 -V090 -mus_rg_rival_exit.mid: -E -R50 -G174 -V079 -mus_rg_rocket_hideout.mid: -E -R50 -G133 -V090 -mus_rg_route1.mid: -E -R50 -G150 -V079 -mus_rg_route3.mid: -E -R50 -G152 -V083 -mus_rg_route11.mid: -E -R50 -G153 -V090 -mus_rg_route24.mid: -E -R50 -G151 -V086 -mus_rg_sevii_45.mid: -E -R50 -G188 -V084 -mus_rg_sevii_67.mid: -E -R50 -G189 -V084 -mus_rg_sevii_123.mid: -E -R50 -G173 -V084 -mus_rg_sevii_cave.mid: -E -R50 -G147 -V090 -mus_rg_sevii_dungeon.mid: -E -R50 -G146 -V090 -mus_rg_sevii_route.mid: -E -R50 -G187 -V080 -mus_rg_silph.mid: -E -R50 -G166 -V076 -mus_rg_slow_pallet.mid: -E -R50 -G159 -V092 -mus_rg_ss_anne.mid: -E -R50 -G163 -V090 -mus_rg_surf.mid: -E -R50 -G164 -V071 -mus_rg_teachy_tv_menu.mid: -E -R50 -G186 -V059 -mus_rg_teachy_tv_show.mid: -E -R50 -G131 -V068 -mus_rg_title.mid: -E -R50 -G137 -V090 -mus_rg_trainer_tower.mid: -E -R50 -G134 -V090 -mus_rg_union_room.mid: -E -R50 -G132 -V090 -mus_rg_vermillion.mid: -E -R50 -G172 -V090 -mus_rg_victory_gym_leader.mid: -E -R50 -G171 -V090 -mus_rg_victory_road.mid: -E -R50 -G154 -V090 -mus_rg_victory_trainer.mid: -E -R50 -G169 -V089 -mus_rg_victory_wild.mid: -E -R50 -G170 -V090 -mus_rg_viridian_forest.mid: -E -R50 -G146 -V090 -mus_rg_vs_champion.mid: -E -R50 -G158 -V090 -mus_rg_vs_deoxys.mid: -E -R50 -G185 -V080 -mus_rg_vs_gym_leader.mid: -E -R50 -G155 -V090 -mus_rg_vs_legend.mid: -E -R50 -G157 -V090 -mus_rg_vs_mewtwo.mid: -E -R50 -G157 -V090 -mus_rg_vs_trainer.mid: -E -R50 -G156 -V090 -mus_rg_vs_wild.mid: -E -R50 -G157 -V090 -mus_roulette.mid: -E -R50 -G038 -V080 -mus_route101.mid: -E -R50 -G011 -V080 -mus_route104.mid: -E -R50 -G047 -V097 -mus_route110.mid: -E -R50 -G010 -V080 -mus_route111.mid: -E -R50 -G055 -V076 -mus_route113.mid: -E -R50 -G064 -V084 -mus_route119.mid: -E -R50 -G048 -V096 -mus_route120.mid: -E -R50 -G014 -V080 -mus_route122.mid: -E -R50 -G021 -V080 -mus_rustboro.mid: -E -R50 -G045 -V085 -mus_safari_zone.mid: -E -R50 -G074 -V082 -mus_sailing.mid: -E -R50 -G077 -V086 -mus_school.mid: -E -R50 -G081 -V100 -mus_sealed_chamber.mid: -E -R50 -G084 -V100 -mus_slateport.mid: -E -R50 -G079 -V070 -mus_slots_jackpot.mid: -E -R50 -G012 -V090 -P5 -mus_slots_win.mid: -E -R50 -G012 -V090 -P5 -mus_sootopolis.mid: -E -R50 -G091 -V062 -mus_surf.mid: -E -R50 -G017 -V080 -mus_title.mid: -E -R50 -G059 -V090 -mus_too_bad.mid: -E -R50 -G012 -V090 -P5 -mus_trick_house.mid: -E -R50 -G094 -V070 -mus_underwater.mid: -E -R50 -G057 -V094 -mus_verdanturf.mid: -E -R50 -G044 -V090 -mus_victory_aqua_magma.mid: -E -R50 -G070 -V088 -mus_victory_gym_leader.mid: -E -R50 -G024 -V080 -mus_victory_league.mid: -E -R50 -G029 -V080 -mus_victory_road.mid: -E -R50 -G075 -V076 -mus_victory_trainer.mid: -E -R50 -G058 -V091 -mus_victory_wild.mid: -E -R50 -G025 -V080 -mus_vs_aqua_magma_leader.mid: -E -R50 -G126 -V080 -P1 -mus_vs_aqua_magma.mid: -E -R50 -G118 -V080 -P1 -mus_vs_champion.mid: -E -R50 -G121 -V080 -P1 -mus_vs_elite_four.mid: -E -R50 -G125 -V080 -P1 -mus_vs_frontier_brain.mid: -E -R50 -G115 -V090 -P1 -mus_vs_gym_leader.mid: -E -R50 -G120 -V080 -P1 -mus_vs_kyogre_groudon.mid: -E -R50 -G123 -V080 -P1 -mus_vs_mew.mid: -E -R50 -G116 -V090 -mus_vs_rayquaza.mid: -E -R50 -G114 -V080 -P1 -mus_vs_regi.mid: -E -R50 -G122 -V080 -P1 -mus_vs_rival.mid: -E -R50 -G124 -V080 -P1 -mus_vs_trainer.mid: -E -R50 -G119 -V080 -P1 -mus_vs_wild.mid: -E -R50 -G117 -V080 -P1 -mus_weather_groudon.mid: -E -R50 -G090 -V050 -ph_choice_blend.mid: -E -G130 -P4 -ph_choice_held.mid: -E -G130 -P4 -ph_choice_solo.mid: -E -G130 -P4 -ph_cloth_blend.mid: -E -G130 -P4 -ph_cloth_held.mid: -E -G130 -P4 -ph_cloth_solo.mid: -E -G130 -P4 -ph_cure_blend.mid: -E -G130 -P4 -ph_cure_held.mid: -E -G130 -P4 -ph_cure_solo.mid: -E -G130 -P4 -ph_dress_blend.mid: -E -G130 -P4 -ph_dress_held.mid: -E -G130 -P4 -ph_dress_solo.mid: -E -G130 -P4 -ph_face_blend.mid: -E -G130 -P4 -ph_face_held.mid: -E -G130 -P4 -ph_face_solo.mid: -E -G130 -P4 -ph_fleece_blend.mid: -E -G130 -P4 -ph_fleece_held.mid: -E -G130 -P4 -ph_fleece_solo.mid: -E -G130 -P4 -ph_foot_blend.mid: -E -G130 -P4 -ph_foot_held.mid: -E -G130 -P4 -ph_foot_solo.mid: -E -G130 -P4 -ph_goat_blend.mid: -E -G130 -P4 -ph_goat_held.mid: -E -G130 -P4 -ph_goat_solo.mid: -E -G130 -P4 -ph_goose_blend.mid: -E -G130 -P4 -ph_goose_held.mid: -E -G130 -P4 -ph_goose_solo.mid: -E -G130 -P4 -ph_kit_blend.mid: -E -G130 -P4 -ph_kit_held.mid: -E -G130 -P4 -ph_kit_solo.mid: -E -G130 -P4 -ph_lot_blend.mid: -E -G130 -P4 -ph_lot_held.mid: -E -G130 -P4 -ph_lot_solo.mid: -E -G130 -P4 -ph_mouth_blend.mid: -E -G130 -P4 -ph_mouth_held.mid: -E -G130 -P4 -ph_mouth_solo.mid: -E -G130 -P4 -ph_nurse_blend.mid: -E -G130 -P4 -ph_nurse_held.mid: -E -G130 -P4 -ph_nurse_solo.mid: -E -G130 -P4 -ph_price_blend.mid: -E -G130 -P4 -ph_price_held.mid: -E -G130 -P4 -ph_price_solo.mid: -E -G130 -P4 -ph_strut_blend.mid: -E -G130 -P4 -ph_strut_held.mid: -E -G130 -P4 -ph_strut_solo.mid: -E -G130 -P4 -ph_thought_blend.mid: -E -G130 -P4 -ph_thought_held.mid: -E -G130 -P4 -ph_thought_solo.mid: -E -G130 -P4 -ph_trap_blend.mid: -E -G130 -P4 -ph_trap_held.mid: -E -G130 -P4 -ph_trap_solo.mid: -E -G130 -P4 -se_a.mid: -E -R50 -G128 -V095 -P4 -se_applause.mid: -E -R50 -G128 -V100 -P5 -se_arena_timeup1.mid: -E -R50 -G129 -P5 -se_arena_timeup2.mid: -E -R50 -G129 -P5 -se_ball_bounce_1.mid: -E -R50 -G128 -V100 -P4 -se_ball_bounce_2.mid: -E -R50 -G128 -V100 -P4 -se_ball_bounce_3.mid: -E -R50 -G128 -V100 -P4 -se_ball_bounce_4.mid: -E -R50 -G128 -V100 -P4 -se_ball_open.mid: -E -R50 -G127 -V100 -P5 -se_ball_throw.mid: -E -R50 -G128 -V120 -P5 -se_ball_trade.mid: -E -R50 -G127 -V100 -P5 -se_ball_tray_ball.mid: -E -R50 -G128 -V110 -P5 -se_ball_tray_enter.mid: -E -R50 -G128 -V110 -P5 -se_ball_tray_exit.mid: -E -R50 -G127 -V100 -P5 -se_ball.mid: -E -R50 -G127 -V070 -P4 -se_balloon_blue.mid: -E -R50 -G128 -V105 -P4 -se_balloon_red.mid: -E -R50 -G128 -V105 -P4 -se_balloon_yellow.mid: -E -R50 -G128 -V105 -P4 -se_bang.mid: -E -R50 -G128 -V110 -P4 -se_berry_blender.mid: -E -R50 -G128 -V090 -P4 -se_bike_bell.mid: -E -R50 -G128 -V090 -P4 -se_bike_hop.mid: -E -R50 -G127 -V090 -P4 -se_boo.mid: -E -R50 -G127 -V110 -P4 -se_breakable_door.mid: -E -R50 -G128 -V110 -P4 -se_bridge_walk.mid: -E -R50 -G128 -V095 -P4 -se_card.mid: -E -R50 -G127 -V100 -P4 -se_click.mid: -E -R50 -G127 -V110 -P4 -se_contest_condition_lose.mid: -E -R50 -G127 -V110 -P4 -se_contest_curtain_fall.mid: -E -R50 -G128 -V070 -P5 -se_contest_curtain_rise.mid: -E -R50 -G128 -V070 -P5 -se_contest_heart.mid: -E -R50 -G128 -V090 -P5 -se_contest_icon_change.mid: -E -R50 -G128 -V110 -P5 -se_contest_icon_clear.mid: -E -R50 -G128 -V090 -P5 -se_contest_mons_turn.mid: -E -R50 -G128 -V090 -P5 -se_contest_place.mid: -E -R50 -G127 -V110 -P4 -se_dex_search.mid: -E -R50 -G127 -v100 -P5 -se_ding_dong.mid: -E -R50 -G127 -V090 -P5 -se_door.mid: -E -R50 -G127 -V080 -P5 -se_downpour_stop.mid: -E -R50 -G128 -V100 -P2 -se_downpour.mid: -E -R50 -G128 -V100 -P2 -se_e.mid: -E -R50 -G128 -V120 -P4 -se_effective.mid: -E -R50 -G127 -V110 -P5 -se_egg_hatch.mid: -E -R50 -G128 -V120 -P5 -se_elevator.mid: -E -R50 -G128 -V100 -P4 -se_escalator.mid: -E -R50 -G128 -V100 -P4 -se_exit.mid: -E -R50 -G127 -V120 -P5 -se_exp_max.mid: -E -R50 -G128 -V094 -P5 -se_exp.mid: -E -R50 -G127 -V080 -P5 -se_failure.mid: -E -R50 -G127 -V120 -P4 -se_faint.mid: -E -R50 -G127 -V110 -P5 -se_fall.mid: -E -R50 -G128 -V110 -P4 -se_field_poison.mid: -E -R50 -G127 -V110 -P5 -se_flee.mid: -E -R50 -G127 -V090 -P5 -se_fu_zaku.mid: -E -R50 -G127 -V120 -P4 -se_glass_flute.mid: -E -R50 -G128 -V105 -P5 -se_i.mid: -E -R50 -G128 -V120 -P4 -se_ice_break.mid: -E -R50 -G128 -V100 -P4 -se_ice_crack.mid: -E -R50 -G127 -V100 -P4 -se_ice_stairs.mid: -E -R50 -G128 -V090 -P4 -se_intro_blast.mid: -E -R50 -G127 -V100 -P5 -se_itemfinder.mid: -E -R50 -G127 -V090 -P5 -se_lavaridge_fall_warp.mid: -E -R50 -G127 -P4 -se_ledge.mid: -E -R50 -G127 -V100 -P4 -se_low_health.mid: -E -R50 -G127 -V100 -P3 -se_m_bind.mid: -E -R50 -G128 -V100 -P4 -se_m_comet_punch.mid: -E -R50 -G128 -V120 -P4 -se_m_cut.mid: -E -R50 -G128 -V120 -P4 -se_m_double_slap.mid: -E -R50 -G128 -V110 -P4 -se_m_fire_punch.mid: -E -R50 -G128 -V110 -P4 -se_m_fly.mid: -E -R50 -G128 -V110 -P4 -se_m_gust.mid: -E -R50 -G128 -V110 -P4 -se_m_gust2.mid: -E -R50 -G128 -V110 -P4 -se_m_headbutt.mid: -E -R50 -G128 -V110 -P4 -se_m_horn_attack.mid: -E -R50 -G128 -V110 -P4 -se_m_jump_kick.mid: -E -R50 -G128 -V110 -P4 -se_m_leer.mid: -E -R50 -G128 -V110 -P4 -se_m_mega_kick.mid: -E -R50 -G128 -V090 -P4 -se_m_mega_kick2.mid: -E -R50 -G128 -V110 -P4 -se_m_pay_day.mid: -E -R50 -G128 -V095 -P4 -se_m_razor_wind.mid: -E -R50 -G128 -V110 -P4 -se_m_razor_wind2.mid: -E -R50 -G128 -V090 -P4 -se_m_sand_attack.mid: -E -R50 -G128 -V110 -P4 -se_m_scratch.mid: -E -R50 -G128 -V110 -P4 -se_m_swords_dance.mid: -E -R50 -G128 -V100 -P4 -se_m_tail_whip.mid: -E -R50 -G128 -V110 -P4 -se_m_take_down.mid: -E -R50 -G128 -V105 -P4 -se_m_vicegrip.mid: -E -R50 -G128 -V110 -P4 -se_m_wing_attack.mid: -E -R50 -G128 -V105 -P4 -se_mud_ball.mid: -E -R50 -G128 -V110 -P4 -se_mugshot.mid: -E -R50 -G128 -V090 -P5 -se_n.mid: -E -R50 -G128 -P4 -se_not_effective.mid: -E -R50 -G127 -V110 -P5 -se_note_a.mid: -E -R50 -G128 -V110 -P4 -se_note_b.mid: -E -R50 -G128 -V110 -P4 -se_note_c_high.mid: -E -R50 -G128 -V110 -P4 -se_note_c.mid: -E -R50 -G128 -V110 -P4 -se_note_d.mid: -E -R50 -G128 -V110 -P4 -se_note_e.mid: -E -R50 -G128 -V110 -P4 -se_note_f.mid: -E -R50 -G128 -V110 -P4 -se_note_g.mid: -E -R50 -G128 -V110 -P4 -se_o.mid: -E -R50 -G128 -V120 -P4 -se_orb.mid: -E -R50 -G128 -V100 -P5 -se_pc_login.mid: -E -R50 -G127 -V100 -P5 -se_pc_off.mid: -E -R50 -G127 -V100 -P5 -se_pc_on.mid: -E -R50 -G127 -V100 -P5 -se_pike_curtain_close.mid: -E -R50 -G129 -P5 -se_pike_curtain_open.mid: -E -R50 -G129 -P5 -se_pin.mid: -E -R50 -G127 -V060 -P4 -se_pokenav_call.mid: -E -R50 -G129 -V120 -P5 -se_pokenav_hang_up.mid: -E -R50 -G129 -V110 -P5 -se_pokenav_off.mid: -E -R50 -G127 -V100 -P5 -se_pokenav_on.mid: -E -R50 -G127 -V100 -P5 -se_puddle.mid: -E -R50 -G128 -V020 -P4 -se_rain_stop.mid: -E -R50 -G128 -V080 -P2 -se_rain.mid: -E -R50 -G128 -V080 -P2 -se_repel.mid: -E -R50 -G127 -V090 -P4 -se_rg_bag_cursor.mid: -E -R50 -G129 -P5 -se_rg_bag_pocket.mid: -E -R50 -G129 -P5 -se_rg_ball_click.mid: -E -R50 -G129 -V100 -P5 -se_rg_card_flip.mid: -E -R50 -G129 -P5 -se_rg_card_flipping.mid: -E -R50 -G129 -P5 -se_rg_card_open.mid: -E -R50 -G129 -V112 -P5 -se_rg_deoxys_move.mid: -E -R50 -G129 -V080 -P5 -se_rg_door.mid: -E -R50 -G129 -V100 -P5 -se_rg_help_close.mid: -E -R50 -G129 -V095 -P5 -se_rg_help_error.mid: -E -R50 -G129 -V125 -P5 -se_rg_help_open.mid: -E -R50 -G129 -V096 -P5 -se_rg_poke_jump_failure.mid: -E -R50 -G127 -P5 -se_rg_poke_jump_success.mid: -E -R50 -G128 -V110 -P5 -se_rg_shop.mid: -E -R50 -G129 -V080 -P5 -se_rg_ss_anne_horn.mid: -E -R50 -G129 -V096 -P5 -se_rotating_gate.mid: -E -R50 -G128 -V090 -P4 -se_roulette_ball.mid: -E -R50 -G128 -V110 -P2 -se_roulette_ball2.mid: -E -R50 -G128 -V110 -P2 -se_save.mid: -E -R50 -G128 -V080 -P5 -se_select.mid: -E -R50 -G127 -V080 -P5 -se_shiny.mid: -E -R50 -G128 -V095 -P5 -se_ship.mid: -E -R50 -G127 -V075 -P4 -se_shop.mid: -E -R50 -G127 -V090 -P5 -se_sliding_door.mid: -E -R50 -G128 -V095 -P4 -se_success.mid: -E -R50 -G127 -V080 -P4 -se_sudowoodo_shake.mid: -E -R50 -G129 -V077 -P5 -se_super_effective.mid: -E -R50 -G127 -V110 -P5 -se_switch.mid: -E -R50 -G127 -V100 -P4 -se_taillow_wing_flap.mid: -E -R50 -G128 -V105 -P5 -se_thunder.mid: -E -R50 -G128 -V110 -P3 -se_thunder2.mid: -E -R50 -G128 -V110 -P3 -se_thunderstorm_stop.mid: -E -R50 -G128 -V080 -P2 -se_thunderstorm.mid: -E -R50 -G128 -V080 -P2 -se_truck_door.mid: -E -R50 -G128 -V110 -P4 -se_truck_move.mid: -E -R50 -G128 -P4 -se_truck_stop.mid: -E -R50 -G128 -P4 -se_truck_unload.mid: -E -R50 -G127 -P4 -se_u.mid: -E -R50 -G128 -P4 -se_unlock.mid: -E -R50 -G128 -V100 -P4 -se_use_item.mid: -E -R50 -G127 -V100 -P5 -se_vend.mid: -E -R50 -G128 -V110 -P4 -se_warp_in.mid: -E -R50 -G127 -V090 -P4 -se_warp_out.mid: -E -R50 -G127 -V090 -P4 +mus_abandoned_ship.mid: -E -R50 -G_abandoned_ship -V080 +mus_abnormal_weather.mid: -E -R50 -G_abnormal_weather -V080 +mus_aqua_magma_hideout.mid: -E -R50 -G_aqua_magma_hideout -V084 +mus_awaken_legend.mid: -E -R50 -G_fanfare -V090 -P5 +mus_b_arena.mid: -E -R50 -G_b_arena -V090 +mus_b_dome_lobby.mid: -E -R50 -G_b_dome -V056 +mus_b_dome.mid: -E -R50 -G_b_dome -V090 +mus_b_factory.mid: -E -R50 -G_b_factory -V100 +mus_b_frontier.mid: -E -R50 -G_b_frontier -V094 +mus_b_palace.mid: -E -R50 -G_b_palace -V105 +mus_b_pike.mid: -E -R50 -G_b_pike -V092 +mus_b_pyramid_top.mid: -E -R50 -G_b_pyramid_top -V077 +mus_b_pyramid.mid: -E -R50 -G_b_pyramid -V079 +mus_b_tower_rs.mid: -E -R50 -G_b_tower_rs -V080 +mus_b_tower.mid: -E -R50 -G_b_tower -V100 +mus_birch_lab.mid: -E -R50 -G_birch_lab -V080 +mus_c_comm_center.mid: -E -R50 -V080 +mus_c_vs_legend_beast.mid: -E -R50 -V080 +mus_cable_car.mid: -E -R50 -G_cable_car -V078 +mus_caught.mid: -E -R50 -G_victory_wild -V080 +mus_cave_of_origin.mid: -E -R50 -G_cave_of_origin -V080 +mus_contest_lobby.mid: -E -R50 -G_contest_lobby -V060 +mus_contest_results.mid: -E -R50 -G_contest_results -V080 +mus_contest_winner.mid: -E -R50 -G_contest_winner -V100 +mus_contest.mid: -E -R50 -G_contest -V088 +mus_credits.mid: -E -R50 -G_credits -V100 +mus_cycling.mid: -E -R50 -G_cycling -V083 +mus_dewford.mid: -E -R50 -G_dewford -V078 +mus_dummy.mid: -E -R40 +mus_encounter_aqua.mid: -E -R50 -G_encounter_aqua -V086 +mus_encounter_brendan.mid: -E -R50 -G_encounter_brendan -V078 +mus_encounter_champion.mid: -E -R50 -G_encounter_champion -V076 +mus_encounter_cool.mid: -E -R50 -G_encounter_cool -V086 +mus_encounter_elite_four.mid: -E -R50 -G_encounter_elite_four -V078 +mus_encounter_female.mid: -E -R50 -G_encounter_female -V072 +mus_encounter_girl.mid: -E -R50 -G_encounter_girl -V080 +mus_encounter_hiker.mid: -E -R50 -G_encounter_hiker -V076 +mus_encounter_intense.mid: -E -R50 -G_encounter_intense -V078 +mus_encounter_interviewer.mid: -E -R50 -G_encounter_interviewer -V062 +mus_encounter_magma.mid: -E -R50 -G_encounter_magma -V072 +mus_encounter_male.mid: -E -R50 -G_encounter_male -V080 +mus_encounter_may.mid: -E -R50 -G_encounter_may -V078 +mus_encounter_rich.mid: -E -R50 -G_encounter_rich -V094 +mus_encounter_suspicious.mid: -E -R50 -G_encounter_suspicious -V078 +mus_encounter_swimmer.mid: -E -R50 -G_encounter_swimmer -V080 +mus_encounter_twins.mid: -E -R50 -G_encounter_twins -V075 +mus_end.mid: -E -R50 -G_end -V036 +mus_ever_grande.mid: -E -R50 -G_ever_grande -V086 +mus_evolution_intro.mid: -E -R50 -G_evolution -V080 +mus_evolution.mid: -E -R50 -G_evolution -V080 +mus_evolved.mid: -E -R50 -G_fanfare -V090 -P5 +mus_fallarbor.mid: -E -R50 -G_fallarbor -V100 +mus_follow_me.mid: -E -R50 -G_follow_me -V074 +mus_fortree.mid: -E -R50 -G_fortree -V080 +mus_game_corner.mid: -E -R50 -G_game_corner -V072 +mus_gsc_pewter.mid: -E -R50 -V080 +mus_gsc_route38.mid: -E -R50 -V080 +mus_gym.mid: -E -R50 -G_gym -V080 +mus_hall_of_fame_room.mid: -E -R50 -G_hall_of_fame_room -V080 +mus_hall_of_fame.mid: -E -R50 -G_hall_of_fame -V078 +mus_heal.mid: -E -R50 -G_fanfare -V090 -P5 +mus_help.mid: -E -R50 -G_help -V078 +mus_intro_battle.mid: -E -R50 -G_intro_battle -V088 +mus_intro.mid: -E -R50 -G_intro -V090 +mus_level_up.mid: -E -R50 -G_fanfare -V090 -P5 +mus_lilycove_museum.mid: -E -R50 -G_lilycove_museum -V080 +mus_lilycove.mid: -E -R50 -G_lilycove -V085 +mus_link_contest_p1.mid: -E -R50 -G_link_contest_p1 -V079 +mus_link_contest_p2.mid: -E -R50 -G_link_contest_p2 -V090 +mus_link_contest_p3.mid: -E -R50 -G_link_contest_p3 -V075 +mus_link_contest_p4.mid: -E -R50 -G_link_contest_p4 -V090 +mus_littleroot_test.mid: -E -R50 -G_littleroot_test -V099 +mus_littleroot.mid: -E -R50 -G_littleroot -V100 +mus_move_deleted.mid: -E -R50 -G_fanfare -V090 -P5 +mus_mt_chimney.mid: -E -R50 -G_mt_chimney -V078 +mus_mt_pyre_exterior.mid: -E -R50 -G_mt_pyre_exterior -V080 +mus_mt_pyre.mid: -E -R50 -G_mt_pyre -V088 +mus_obtain_b_points.mid: -E -R50 -G_b_frontier -V090 -P5 +mus_obtain_badge.mid: -E -R50 -G_fanfare -V090 -P5 +mus_obtain_berry.mid: -E -R50 -G_fanfare -V090 -P5 +mus_obtain_item.mid: -E -R50 -G_fanfare -V090 -P5 +mus_obtain_symbol.mid: -E -R50 -G_b_frontier -V100 -P5 +mus_obtain_tmhm.mid: -E -R50 -G_fanfare -V090 -P5 +mus_oceanic_museum.mid: -E -R50 -G_oceanic_museum -V080 +mus_oldale.mid: -E -R50 -G_oldale -V080 +mus_petalburg_woods.mid: -E -R50 -G_petalburg_woods -V080 +mus_petalburg.mid: -E -R50 -G_petalburg -V080 +mus_poke_center.mid: -E -R50 -G_poke_center -V092 +mus_poke_mart.mid: -E -R50 -G_poke_mart -V085 +mus_rayquaza_appears.mid: -E -R50 -G_rayquaza_appears -V090 +mus_register_match_call.mid: -E -R50 -G_register_match_call -V090 -P5 +mus_rg_berry_pick.mid: -E -R50 -G_rg_game_corner -V090 +mus_rg_caught_intro.mid: -E -R50 -G_rg_caught_intro -V094 -P5 +mus_rg_caught.mid: -E -R50 -G_rg_victory_wild -V100 +mus_rg_celadon.mid: -E -R50 -G_rg_celadon -V070 +mus_rg_cinnabar.mid: -E -R50 -G_rg_cinnabar -V090 +mus_rg_credits.mid: -E -R50 -G_rg_credits -V090 +mus_rg_cycling.mid: -E -R50 -G_rg_cycling -V090 +mus_rg_dex_rating.mid: -E -R50 -G_rg_dex_rating -V070 -P5 +mus_rg_encounter_boy.mid: -E -R50 -G_rg_encounter_boy -V090 +mus_rg_encounter_deoxys.mid: -E -R50 -G_rg_encounter_deoxys -V079 +mus_rg_encounter_girl.mid: -E -R50 -G_rg_encounter_girl -V051 +mus_rg_encounter_gym_leader: -E -R50 -G_rg_encounter_boy -V090 +mus_rg_encounter_rival.mid: -E -R50 -G_rg_encounter_rival -V079 +mus_rg_encounter_rocket.mid: -E -R50 -G_rg_encounter_rocket -V096 +mus_rg_follow_me.mid: -E -R50 -G_rg_follow_me -V068 +mus_rg_fuchsia.mid: -E -R50 -G_rg_fuchsia -V090 +mus_rg_game_corner.mid: -E -R50 -G_rg_game_corner -V090 +mus_rg_game_freak.mid: -E -R50 -G_rg_game_freak -V075 +mus_rg_gym.mid: -E -R50 -G_rg_gym -V090 +mus_rg_hall_of_fame.mid: -E -R50 -G_rg_hall_of_fame -V079 +mus_rg_heal.mid: -E -R50 -G_rg_heal -V090 +mus_rg_intro_fight.mid: -E -R50 -G_rg_intro_fight -V090 +mus_rg_jigglypuff.mid: -E -R50 -G_rg_jigglypuff -V068 -P5 +mus_rg_lavender.mid: -E -R50 -G_rg_lavender -V090 +mus_rg_mt_moon.mid: -E -R50 -G_rg_mt_moon -V090 +mus_rg_mystery_gift.mid: -E -R50 -G_rg_mystery_gift -V100 +mus_rg_net_center.mid: -E -R50 -G_rg_poke_center -V096 +mus_rg_new_game_exit.mid: -E -R50 -G_rg_new_game -V088 +mus_rg_new_game_instruct.mid: -E -R50 -G_rg_new_game -V085 +mus_rg_new_game_intro.mid: -E -R50 -G_rg_new_game -V088 +mus_rg_oak_lab.mid: -E -R50 -G_rg_oak_lab -V075 +mus_rg_oak.mid: -E -R50 -G_rg_oak -V086 +mus_rg_obtain_key_item.mid: -E -R50 -G_rg_obtain_key_item -V077 -P5 +mus_rg_pallet.mid: -E -R50 -G_rg_pallet -V100 +mus_rg_pewter.mid: -E -R50 -G_rg_pewter -V084 +mus_rg_photo.mid: -E -R50 -G_rg_photo -V100 -P5 +mus_rg_poke_center.mid: -E -R50 -G_rg_poke_center -V096 +mus_rg_poke_flute.mid: -E -R50 -G_rg_poke_tower -V048 -P5 +mus_rg_poke_jump.mid: -E -R50 -G_rg_game_corner -V090 +mus_rg_poke_mansion.mid: -E -R50 -G_rg_poke_mansion -V090 +mus_rg_poke_tower.mid: -E -R50 -G_rg_poke_tower -V090 +mus_rg_rival_exit.mid: -E -R50 -G_rg_encounter_rival -V079 +mus_rg_rocket_hideout.mid: -E -R50 -G_rg_rocket_hideout -V090 +mus_rg_route1.mid: -E -R50 -G_rg_route1 -V079 +mus_rg_route3.mid: -E -R50 -G_rg_route3 -V083 +mus_rg_route11.mid: -E -R50 -G_rg_route11 -V090 +mus_rg_route24.mid: -E -R50 -G_rg_route24 -V086 +mus_rg_sevii_45.mid: -E -R50 -G_rg_sevii_45 -V084 +mus_rg_sevii_67.mid: -E -R50 -G_rg_sevii_67 -V084 +mus_rg_sevii_123.mid: -E -R50 -G_rg_pewter -V084 +mus_rg_sevii_cave.mid: -E -R50 -G_rg_mt_moon -V090 +mus_rg_sevii_dungeon.mid: -E -R50 -G_rg_viridian_forest -V090 +mus_rg_sevii_route.mid: -E -R50 -G_rg_sevii_route -V080 +mus_rg_silph.mid: -E -R50 -G_rg_silph -V076 +mus_rg_slow_pallet.mid: -E -R50 -G_rg_pallet -V092 +mus_rg_ss_anne.mid: -E -R50 -G_rg_ss_anne -V090 +mus_rg_surf.mid: -E -R50 -G_rg_surf -V071 +mus_rg_teachy_tv_menu.mid: -E -R50 -G_rg_teachy_tv_menu -V059 +mus_rg_teachy_tv_show.mid: -E -R50 -G_rg_follow_me -V068 +mus_rg_title.mid: -E -R50 -G_rg_title -V090 +mus_rg_trainer_tower.mid: -E -R50 -G_rg_gym -V090 +mus_rg_union_room.mid: -E -R50 -G_rg_game_corner -V090 +mus_rg_vermillion.mid: -E -R50 -G_rg_vermillion -V090 +mus_rg_victory_gym_leader.mid: -E -R50 -G_rg_victory_gym_leader -V090 +mus_rg_victory_road.mid: -E -R50 -G_rg_victory_road -V090 +mus_rg_victory_trainer.mid: -E -R50 -G_rg_victory_trainer -V089 +mus_rg_victory_wild.mid: -E -R50 -G_rg_victory_wild -V090 +mus_rg_viridian_forest.mid: -E -R50 -G_rg_viridian_forest -V090 +mus_rg_vs_champion.mid: -E -R50 -G_rg_vs_champion -V090 +mus_rg_vs_deoxys.mid: -E -R50 -G_rg_vs_deoxys -V080 +mus_rg_vs_gym_leader.mid: -E -R50 -G_rg_vs_gym_leader -V090 +mus_rg_vs_legend.mid: -E -R50 -G_rg_vs_wild -V090 +mus_rg_vs_mewtwo.mid: -E -R50 -G_rg_vs_wild -V090 +mus_rg_vs_trainer.mid: -E -R50 -G_rg_vs_trainer -V090 +mus_rg_vs_wild.mid: -E -R50 -G_rg_vs_wild -V090 +mus_roulette.mid: -E -R50 -G_roulette -V080 +mus_route101.mid: -E -R50 -G_route101 -V080 +mus_route104.mid: -E -R50 -G_route104 -V097 +mus_route110.mid: -E -R50 -G_route110 -V080 +mus_route111.mid: -E -R50 -G_route111 -V076 +mus_route113.mid: -E -R50 -G_route113 -V084 +mus_route119.mid: -E -R50 -G_route119 -V096 +mus_route120.mid: -E -R50 -G_route120 -V080 +mus_route122.mid: -E -R50 -G_route122 -V080 +mus_rustboro.mid: -E -R50 -G_rustboro -V085 +mus_safari_zone.mid: -E -R50 -G_safari_zone -V082 +mus_sailing.mid: -E -R50 -G_sailing -V086 +mus_school.mid: -E -R50 -G_school -V100 +mus_sealed_chamber.mid: -E -R50 -G_sealed_chamber -V100 +mus_slateport.mid: -E -R50 -G_slateport -V070 +mus_slots_jackpot.mid: -E -R50 -G_fanfare -V090 -P5 +mus_slots_win.mid: -E -R50 -G_fanfare -V090 -P5 +mus_sootopolis.mid: -E -R50 -G_sootopolis -V062 +mus_surf.mid: -E -R50 -G_surf -V080 +mus_title.mid: -E -R50 -G_title -V090 +mus_too_bad.mid: -E -R50 -G_fanfare -V090 -P5 +mus_trick_house.mid: -E -R50 -G_trick_house -V070 +mus_underwater.mid: -E -R50 -G_underwater -V094 +mus_verdanturf.mid: -E -R50 -G_verdanturf -V090 +mus_victory_aqua_magma.mid: -E -R50 -G_victory_aqua_magma -V088 +mus_victory_gym_leader.mid: -E -R50 -G_victory_gym_leader -V080 +mus_victory_league.mid: -E -R50 -G_victory_league -V080 +mus_victory_road.mid: -E -R50 -G_victory_road -V076 +mus_victory_trainer.mid: -E -R50 -G_victory_trainer -V091 +mus_victory_wild.mid: -E -R50 -G_victory_wild -V080 +mus_vs_aqua_magma_leader.mid: -E -R50 -G_vs_aqua_magma_leader -V080 -P1 +mus_vs_aqua_magma.mid: -E -R50 -G_vs_aqua_magma -V080 -P1 +mus_vs_champion.mid: -E -R50 -G_vs_champion -V080 -P1 +mus_vs_elite_four.mid: -E -R50 -G_vs_elite_four -V080 -P1 +mus_vs_frontier_brain.mid: -E -R50 -G_vs_frontier_brain -V090 -P1 +mus_vs_gym_leader.mid: -E -R50 -G_vs_gym_leader -V080 -P1 +mus_vs_kyogre_groudon.mid: -E -R50 -G_vs_kyogre_groudon -V080 -P1 +mus_vs_mew.mid: -E -R50 -G_vs_mew -V090 +mus_vs_rayquaza.mid: -E -R50 -G_vs_rayquaza -V080 -P1 +mus_vs_regi.mid: -E -R50 -G_vs_regi -V080 -P1 +mus_vs_rival.mid: -E -R50 -G_vs_rival -V080 -P1 +mus_vs_trainer.mid: -E -R50 -G_vs_trainer -V080 -P1 +mus_vs_wild.mid: -E -R50 -G_vs_wild -V080 -P1 +mus_weather_groudon.mid: -E -R50 -G_weather_groudon -V050 +ph_choice_blend.mid: -E -G_bard -P4 +ph_choice_held.mid: -E -G_bard -P4 +ph_choice_solo.mid: -E -G_bard -P4 +ph_cloth_blend.mid: -E -G_bard -P4 +ph_cloth_held.mid: -E -G_bard -P4 +ph_cloth_solo.mid: -E -G_bard -P4 +ph_cure_blend.mid: -E -G_bard -P4 +ph_cure_held.mid: -E -G_bard -P4 +ph_cure_solo.mid: -E -G_bard -P4 +ph_dress_blend.mid: -E -G_bard -P4 +ph_dress_held.mid: -E -G_bard -P4 +ph_dress_solo.mid: -E -G_bard -P4 +ph_face_blend.mid: -E -G_bard -P4 +ph_face_held.mid: -E -G_bard -P4 +ph_face_solo.mid: -E -G_bard -P4 +ph_fleece_blend.mid: -E -G_bard -P4 +ph_fleece_held.mid: -E -G_bard -P4 +ph_fleece_solo.mid: -E -G_bard -P4 +ph_foot_blend.mid: -E -G_bard -P4 +ph_foot_held.mid: -E -G_bard -P4 +ph_foot_solo.mid: -E -G_bard -P4 +ph_goat_blend.mid: -E -G_bard -P4 +ph_goat_held.mid: -E -G_bard -P4 +ph_goat_solo.mid: -E -G_bard -P4 +ph_goose_blend.mid: -E -G_bard -P4 +ph_goose_held.mid: -E -G_bard -P4 +ph_goose_solo.mid: -E -G_bard -P4 +ph_kit_blend.mid: -E -G_bard -P4 +ph_kit_held.mid: -E -G_bard -P4 +ph_kit_solo.mid: -E -G_bard -P4 +ph_lot_blend.mid: -E -G_bard -P4 +ph_lot_held.mid: -E -G_bard -P4 +ph_lot_solo.mid: -E -G_bard -P4 +ph_mouth_blend.mid: -E -G_bard -P4 +ph_mouth_held.mid: -E -G_bard -P4 +ph_mouth_solo.mid: -E -G_bard -P4 +ph_nurse_blend.mid: -E -G_bard -P4 +ph_nurse_held.mid: -E -G_bard -P4 +ph_nurse_solo.mid: -E -G_bard -P4 +ph_price_blend.mid: -E -G_bard -P4 +ph_price_held.mid: -E -G_bard -P4 +ph_price_solo.mid: -E -G_bard -P4 +ph_strut_blend.mid: -E -G_bard -P4 +ph_strut_held.mid: -E -G_bard -P4 +ph_strut_solo.mid: -E -G_bard -P4 +ph_thought_blend.mid: -E -G_bard -P4 +ph_thought_held.mid: -E -G_bard -P4 +ph_thought_solo.mid: -E -G_bard -P4 +ph_trap_blend.mid: -E -G_bard -P4 +ph_trap_held.mid: -E -G_bard -P4 +ph_trap_solo.mid: -E -G_bard -P4 +se_a.mid: -E -R50 -G_rs_sfx_2 -V095 -P4 +se_applause.mid: -E -R50 -G_rs_sfx_2 -V100 -P5 +se_arena_timeup1.mid: -E -R50 -G_frlg_sfx -P5 +se_arena_timeup2.mid: -E -R50 -G_frlg_sfx -P5 +se_ball_bounce_1.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_ball_bounce_2.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_ball_bounce_3.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_ball_bounce_4.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_ball_open.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_ball_throw.mid: -E -R50 -G_rs_sfx_2 -V120 -P5 +se_ball_trade.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_ball_tray_ball.mid: -E -R50 -G_rs_sfx_2 -V110 -P5 +se_ball_tray_enter.mid: -E -R50 -G_rs_sfx_2 -V110 -P5 +se_ball_tray_exit.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_ball.mid: -E -R50 -G_rs_sfx_1 -V070 -P4 +se_balloon_blue.mid: -E -R50 -G_rs_sfx_2 -V105 -P4 +se_balloon_red.mid: -E -R50 -G_rs_sfx_2 -V105 -P4 +se_balloon_yellow.mid: -E -R50 -G_rs_sfx_2 -V105 -P4 +se_bang.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_berry_blender.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_bike_bell.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_bike_hop.mid: -E -R50 -G_rs_sfx_1 -V090 -P4 +se_boo.mid: -E -R50 -G_rs_sfx_1 -V110 -P4 +se_breakable_door.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_bridge_walk.mid: -E -R50 -G_rs_sfx_2 -V095 -P4 +se_card.mid: -E -R50 -G_rs_sfx_1 -V100 -P4 +se_click.mid: -E -R50 -G_rs_sfx_1 -V110 -P4 +se_contest_condition_lose.mid: -E -R50 -G_rs_sfx_1 -V110 -P4 +se_contest_curtain_fall.mid: -E -R50 -G_rs_sfx_2 -V070 -P5 +se_contest_curtain_rise.mid: -E -R50 -G_rs_sfx_2 -V070 -P5 +se_contest_heart.mid: -E -R50 -G_rs_sfx_2 -V090 -P5 +se_contest_icon_change.mid: -E -R50 -G_rs_sfx_2 -V110 -P5 +se_contest_icon_clear.mid: -E -R50 -G_rs_sfx_2 -V090 -P5 +se_contest_mons_turn.mid: -E -R50 -G_rs_sfx_2 -V090 -P5 +se_contest_place.mid: -E -R50 -G_rs_sfx_1 -V110 -P4 +se_dex_search.mid: -E -R50 -G_rs_sfx_1 -v100 -P5 +se_ding_dong.mid: -E -R50 -G_rs_sfx_1 -V090 -P5 +se_door.mid: -E -R50 -G_rs_sfx_1 -V080 -P5 +se_downpour_stop.mid: -E -R50 -G_rs_sfx_2 -V100 -P2 +se_downpour.mid: -E -R50 -G_rs_sfx_2 -V100 -P2 +se_e.mid: -E -R50 -G_rs_sfx_2 -V120 -P4 +se_effective.mid: -E -R50 -G_rs_sfx_1 -V110 -P5 +se_egg_hatch.mid: -E -R50 -G_rs_sfx_2 -V120 -P5 +se_elevator.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_escalator.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_exit.mid: -E -R50 -G_rs_sfx_1 -V120 -P5 +se_exp_max.mid: -E -R50 -G_rs_sfx_2 -V094 -P5 +se_exp.mid: -E -R50 -G_rs_sfx_1 -V080 -P5 +se_failure.mid: -E -R50 -G_rs_sfx_1 -V120 -P4 +se_faint.mid: -E -R50 -G_rs_sfx_1 -V110 -P5 +se_fall.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_field_poison.mid: -E -R50 -G_rs_sfx_1 -V110 -P5 +se_flee.mid: -E -R50 -G_rs_sfx_1 -V090 -P5 +se_fu_zaku.mid: -E -R50 -G_rs_sfx_1 -V120 -P4 +se_glass_flute.mid: -E -R50 -G_rs_sfx_2 -V105 -P5 +se_i.mid: -E -R50 -G_rs_sfx_2 -V120 -P4 +se_ice_break.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_ice_crack.mid: -E -R50 -G_rs_sfx_1 -V100 -P4 +se_ice_stairs.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_intro_blast.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_itemfinder.mid: -E -R50 -G_rs_sfx_1 -V090 -P5 +se_lavaridge_fall_warp.mid: -E -R50 -G_rs_sfx_1 -P4 +se_ledge.mid: -E -R50 -G_rs_sfx_1 -V100 -P4 +se_low_health.mid: -E -R50 -G_rs_sfx_1 -V100 -P3 +se_m_bind.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_m_comet_punch.mid: -E -R50 -G_rs_sfx_2 -V120 -P4 +se_m_cut.mid: -E -R50 -G_rs_sfx_2 -V120 -P4 +se_m_double_slap.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_fire_punch.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_fly.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_gust.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_gust2.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_headbutt.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_horn_attack.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_jump_kick.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_leer.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_mega_kick.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_m_mega_kick2.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_pay_day.mid: -E -R50 -G_rs_sfx_2 -V095 -P4 +se_m_razor_wind.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_razor_wind2.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_m_sand_attack.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_scratch.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_swords_dance.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_m_tail_whip.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_take_down.mid: -E -R50 -G_rs_sfx_2 -V105 -P4 +se_m_vicegrip.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_m_wing_attack.mid: -E -R50 -G_rs_sfx_2 -V105 -P4 +se_mud_ball.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_mugshot.mid: -E -R50 -G_rs_sfx_2 -V090 -P5 +se_n.mid: -E -R50 -G_rs_sfx_2 -P4 +se_not_effective.mid: -E -R50 -G_rs_sfx_1 -V110 -P5 +se_note_a.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_b.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_c_high.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_c.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_d.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_e.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_f.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_note_g.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_o.mid: -E -R50 -G_rs_sfx_2 -V120 -P4 +se_orb.mid: -E -R50 -G_rs_sfx_2 -V100 -P5 +se_pc_login.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_pc_off.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_pc_on.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_pike_curtain_close.mid: -E -R50 -G_frlg_sfx -P5 +se_pike_curtain_open.mid: -E -R50 -G_frlg_sfx -P5 +se_pin.mid: -E -R50 -G_rs_sfx_1 -V060 -P4 +se_pokenav_call.mid: -E -R50 -G_frlg_sfx -V120 -P5 +se_pokenav_hang_up.mid: -E -R50 -G_frlg_sfx -V110 -P5 +se_pokenav_off.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_pokenav_on.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_puddle.mid: -E -R50 -G_rs_sfx_2 -V020 -P4 +se_rain_stop.mid: -E -R50 -G_rs_sfx_2 -V080 -P2 +se_rain.mid: -E -R50 -G_rs_sfx_2 -V080 -P2 +se_repel.mid: -E -R50 -G_rs_sfx_1 -V090 -P4 +se_rg_bag_cursor.mid: -E -R50 -G_frlg_sfx -P5 +se_rg_bag_pocket.mid: -E -R50 -G_frlg_sfx -P5 +se_rg_ball_click.mid: -E -R50 -G_frlg_sfx -V100 -P5 +se_rg_card_flip.mid: -E -R50 -G_frlg_sfx -P5 +se_rg_card_flipping.mid: -E -R50 -G_frlg_sfx -P5 +se_rg_card_open.mid: -E -R50 -G_frlg_sfx -V112 -P5 +se_rg_deoxys_move.mid: -E -R50 -G_frlg_sfx -V080 -P5 +se_rg_door.mid: -E -R50 -G_frlg_sfx -V100 -P5 +se_rg_help_close.mid: -E -R50 -G_frlg_sfx -V095 -P5 +se_rg_help_error.mid: -E -R50 -G_frlg_sfx -V125 -P5 +se_rg_help_open.mid: -E -R50 -G_frlg_sfx -V096 -P5 +se_rg_poke_jump_failure.mid: -E -R50 -G_rs_sfx_1 -P5 +se_rg_poke_jump_success.mid: -E -R50 -G_rs_sfx_2 -V110 -P5 +se_rg_shop.mid: -E -R50 -G_frlg_sfx -V080 -P5 +se_rg_ss_anne_horn.mid: -E -R50 -G_frlg_sfx -V096 -P5 +se_rotating_gate.mid: -E -R50 -G_rs_sfx_2 -V090 -P4 +se_roulette_ball.mid: -E -R50 -G_rs_sfx_2 -V110 -P2 +se_roulette_ball2.mid: -E -R50 -G_rs_sfx_2 -V110 -P2 +se_save.mid: -E -R50 -G_rs_sfx_2 -V080 -P5 +se_select.mid: -E -R50 -G_rs_sfx_1 -V080 -P5 +se_shiny.mid: -E -R50 -G_rs_sfx_2 -V095 -P5 +se_ship.mid: -E -R50 -G_rs_sfx_1 -V075 -P4 +se_shop.mid: -E -R50 -G_rs_sfx_1 -V090 -P5 +se_sliding_door.mid: -E -R50 -G_rs_sfx_2 -V095 -P4 +se_success.mid: -E -R50 -G_rs_sfx_1 -V080 -P4 +se_sudowoodo_shake.mid: -E -R50 -G_frlg_sfx -V077 -P5 +se_super_effective.mid: -E -R50 -G_rs_sfx_1 -V110 -P5 +se_switch.mid: -E -R50 -G_rs_sfx_1 -V100 -P4 +se_taillow_wing_flap.mid: -E -R50 -G_rs_sfx_2 -V105 -P5 +se_thunder.mid: -E -R50 -G_rs_sfx_2 -V110 -P3 +se_thunder2.mid: -E -R50 -G_rs_sfx_2 -V110 -P3 +se_thunderstorm_stop.mid: -E -R50 -G_rs_sfx_2 -V080 -P2 +se_thunderstorm.mid: -E -R50 -G_rs_sfx_2 -V080 -P2 +se_truck_door.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_truck_move.mid: -E -R50 -G_rs_sfx_2 -P4 +se_truck_stop.mid: -E -R50 -G_rs_sfx_2 -P4 +se_truck_unload.mid: -E -R50 -G_rs_sfx_1 -P4 +se_u.mid: -E -R50 -G_rs_sfx_2 -P4 +se_unlock.mid: -E -R50 -G_rs_sfx_2 -V100 -P4 +se_use_item.mid: -E -R50 -G_rs_sfx_1 -V100 -P5 +se_vend.mid: -E -R50 -G_rs_sfx_2 -V110 -P4 +se_warp_in.mid: -E -R50 -G_rs_sfx_1 -V090 -P4 +se_warp_out.mid: -E -R50 -G_rs_sfx_1 -V090 -P4 diff --git a/sound/songs/se_dex_page.s b/sound/songs/se_dex_page.s index 884f0d12a5..314d11d9fb 100644 --- a/sound/songs/se_dex_page.s +++ b/sound/songs/se_dex_page.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_dex_page_grp, voicegroup127 + .equ se_dex_page_grp, voicegroup_rs_sfx_1 .equ se_dex_page_pri, 5 .equ se_dex_page_rev, reverb_set+50 .equ se_dex_page_mvl, 127 diff --git a/sound/songs/se_dex_scroll.s b/sound/songs/se_dex_scroll.s index 6c7ad77461..6ea8f4783d 100644 --- a/sound/songs/se_dex_scroll.s +++ b/sound/songs/se_dex_scroll.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_dex_scroll_grp, voicegroup127 + .equ se_dex_scroll_grp, voicegroup_rs_sfx_1 .equ se_dex_scroll_pri, 5 .equ se_dex_scroll_rev, reverb_set+50 .equ se_dex_scroll_mvl, 127 diff --git a/sound/songs/se_m_absorb.s b/sound/songs/se_m_absorb.s index 6cd6223664..46b7e1fa20 100644 --- a/sound/songs/se_m_absorb.s +++ b/sound/songs/se_m_absorb.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_absorb_grp, voicegroup128 + .equ se_m_absorb_grp, voicegroup_rs_sfx_2 .equ se_m_absorb_pri, 4 .equ se_m_absorb_rev, reverb_set+50 .equ se_m_absorb_mvl, 127 diff --git a/sound/songs/se_m_absorb_2.s b/sound/songs/se_m_absorb_2.s index 6192013338..54166d9673 100644 --- a/sound/songs/se_m_absorb_2.s +++ b/sound/songs/se_m_absorb_2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_absorb_2_grp, voicegroup128 + .equ se_m_absorb_2_grp, voicegroup_rs_sfx_2 .equ se_m_absorb_2_pri, 4 .equ se_m_absorb_2_rev, reverb_set+50 .equ se_m_absorb_2_mvl, 127 diff --git a/sound/songs/se_m_acid_armor.s b/sound/songs/se_m_acid_armor.s index 346c766047..31f94275a7 100644 --- a/sound/songs/se_m_acid_armor.s +++ b/sound/songs/se_m_acid_armor.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_acid_armor_grp, voicegroup128 + .equ se_m_acid_armor_grp, voicegroup_rs_sfx_2 .equ se_m_acid_armor_pri, 4 .equ se_m_acid_armor_rev, reverb_set+50 .equ se_m_acid_armor_mvl, 127 diff --git a/sound/songs/se_m_attract.s b/sound/songs/se_m_attract.s index 8e18c16dce..ede9f4dd82 100644 --- a/sound/songs/se_m_attract.s +++ b/sound/songs/se_m_attract.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_attract_grp, voicegroup128 + .equ se_m_attract_grp, voicegroup_rs_sfx_2 .equ se_m_attract_pri, 4 .equ se_m_attract_rev, reverb_set+50 .equ se_m_attract_mvl, 127 diff --git a/sound/songs/se_m_attract2.s b/sound/songs/se_m_attract2.s index 9b846f13e4..ddcd230297 100644 --- a/sound/songs/se_m_attract2.s +++ b/sound/songs/se_m_attract2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_attract2_grp, voicegroup128 + .equ se_m_attract2_grp, voicegroup_rs_sfx_2 .equ se_m_attract2_pri, 4 .equ se_m_attract2_rev, reverb_set+50 .equ se_m_attract2_mvl, 127 diff --git a/sound/songs/se_m_barrier.s b/sound/songs/se_m_barrier.s index 54d57700f0..ebf6ddccb9 100644 --- a/sound/songs/se_m_barrier.s +++ b/sound/songs/se_m_barrier.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_barrier_grp, voicegroup128 + .equ se_m_barrier_grp, voicegroup_rs_sfx_2 .equ se_m_barrier_pri, 4 .equ se_m_barrier_rev, reverb_set+50 .equ se_m_barrier_mvl, 127 diff --git a/sound/songs/se_m_baton_pass.s b/sound/songs/se_m_baton_pass.s index 30027e5b68..ec8ddd542a 100644 --- a/sound/songs/se_m_baton_pass.s +++ b/sound/songs/se_m_baton_pass.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_baton_pass_grp, voicegroup128 + .equ se_m_baton_pass_grp, voicegroup_rs_sfx_2 .equ se_m_baton_pass_pri, 4 .equ se_m_baton_pass_rev, reverb_set+50 .equ se_m_baton_pass_mvl, 127 diff --git a/sound/songs/se_m_belly_drum.s b/sound/songs/se_m_belly_drum.s index 919c02b16c..5b5508ed41 100644 --- a/sound/songs/se_m_belly_drum.s +++ b/sound/songs/se_m_belly_drum.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_belly_drum_grp, voicegroup128 + .equ se_m_belly_drum_grp, voicegroup_rs_sfx_2 .equ se_m_belly_drum_pri, 4 .equ se_m_belly_drum_rev, reverb_set+50 .equ se_m_belly_drum_mvl, 127 diff --git a/sound/songs/se_m_bite.s b/sound/songs/se_m_bite.s index 15d690e2e8..c01e160c1a 100644 --- a/sound/songs/se_m_bite.s +++ b/sound/songs/se_m_bite.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bite_grp, voicegroup128 + .equ se_m_bite_grp, voicegroup_rs_sfx_2 .equ se_m_bite_pri, 4 .equ se_m_bite_rev, reverb_set+50 .equ se_m_bite_mvl, 127 diff --git a/sound/songs/se_m_blizzard.s b/sound/songs/se_m_blizzard.s index 6bce3c9872..a274da2211 100644 --- a/sound/songs/se_m_blizzard.s +++ b/sound/songs/se_m_blizzard.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_blizzard_grp, voicegroup128 + .equ se_m_blizzard_grp, voicegroup_rs_sfx_2 .equ se_m_blizzard_pri, 4 .equ se_m_blizzard_rev, reverb_set+50 .equ se_m_blizzard_mvl, 127 diff --git a/sound/songs/se_m_blizzard2.s b/sound/songs/se_m_blizzard2.s index 8c1518e637..2940d80d52 100644 --- a/sound/songs/se_m_blizzard2.s +++ b/sound/songs/se_m_blizzard2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_blizzard2_grp, voicegroup128 + .equ se_m_blizzard2_grp, voicegroup_rs_sfx_2 .equ se_m_blizzard2_pri, 4 .equ se_m_blizzard2_rev, reverb_set+50 .equ se_m_blizzard2_mvl, 127 diff --git a/sound/songs/se_m_bonemerang.s b/sound/songs/se_m_bonemerang.s index 9339809364..16f170b76b 100644 --- a/sound/songs/se_m_bonemerang.s +++ b/sound/songs/se_m_bonemerang.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bonemerang_grp, voicegroup128 + .equ se_m_bonemerang_grp, voicegroup_rs_sfx_2 .equ se_m_bonemerang_pri, 4 .equ se_m_bonemerang_rev, reverb_set+50 .equ se_m_bonemerang_mvl, 127 diff --git a/sound/songs/se_m_brick_break.s b/sound/songs/se_m_brick_break.s index ce13218d24..2270fc24b5 100644 --- a/sound/songs/se_m_brick_break.s +++ b/sound/songs/se_m_brick_break.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_brick_break_grp, voicegroup128 + .equ se_m_brick_break_grp, voicegroup_rs_sfx_2 .equ se_m_brick_break_pri, 4 .equ se_m_brick_break_rev, reverb_set+50 .equ se_m_brick_break_mvl, 127 diff --git a/sound/songs/se_m_bubble.s b/sound/songs/se_m_bubble.s index 4e1b988d59..9c7fb6fadd 100644 --- a/sound/songs/se_m_bubble.s +++ b/sound/songs/se_m_bubble.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bubble_grp, voicegroup128 + .equ se_m_bubble_grp, voicegroup_rs_sfx_2 .equ se_m_bubble_pri, 4 .equ se_m_bubble_rev, reverb_set+50 .equ se_m_bubble_mvl, 127 diff --git a/sound/songs/se_m_bubble2.s b/sound/songs/se_m_bubble2.s index 97e7cbbf85..1b009672bf 100644 --- a/sound/songs/se_m_bubble2.s +++ b/sound/songs/se_m_bubble2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bubble2_grp, voicegroup128 + .equ se_m_bubble2_grp, voicegroup_rs_sfx_2 .equ se_m_bubble2_pri, 4 .equ se_m_bubble2_rev, reverb_set+50 .equ se_m_bubble2_mvl, 127 diff --git a/sound/songs/se_m_bubble3.s b/sound/songs/se_m_bubble3.s index d9a7f1e82b..ea4c1e6fd4 100644 --- a/sound/songs/se_m_bubble3.s +++ b/sound/songs/se_m_bubble3.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bubble3_grp, voicegroup128 + .equ se_m_bubble3_grp, voicegroup_rs_sfx_2 .equ se_m_bubble3_pri, 4 .equ se_m_bubble3_rev, reverb_set+50 .equ se_m_bubble3_mvl, 127 diff --git a/sound/songs/se_m_bubble_beam.s b/sound/songs/se_m_bubble_beam.s index 621882b03f..b1eac882b7 100644 --- a/sound/songs/se_m_bubble_beam.s +++ b/sound/songs/se_m_bubble_beam.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bubble_beam_grp, voicegroup128 + .equ se_m_bubble_beam_grp, voicegroup_rs_sfx_2 .equ se_m_bubble_beam_pri, 4 .equ se_m_bubble_beam_rev, reverb_set+50 .equ se_m_bubble_beam_mvl, 127 diff --git a/sound/songs/se_m_bubble_beam2.s b/sound/songs/se_m_bubble_beam2.s index 0e8cbf5e41..970ef02897 100644 --- a/sound/songs/se_m_bubble_beam2.s +++ b/sound/songs/se_m_bubble_beam2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_bubble_beam2_grp, voicegroup128 + .equ se_m_bubble_beam2_grp, voicegroup_rs_sfx_2 .equ se_m_bubble_beam2_pri, 4 .equ se_m_bubble_beam2_rev, reverb_set+50 .equ se_m_bubble_beam2_mvl, 127 diff --git a/sound/songs/se_m_charge.s b/sound/songs/se_m_charge.s index 47d70a4bff..1ad07164f6 100644 --- a/sound/songs/se_m_charge.s +++ b/sound/songs/se_m_charge.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_charge_grp, voicegroup128 + .equ se_m_charge_grp, voicegroup_rs_sfx_2 .equ se_m_charge_pri, 4 .equ se_m_charge_rev, reverb_set+50 .equ se_m_charge_mvl, 127 diff --git a/sound/songs/se_m_charm.s b/sound/songs/se_m_charm.s index 2bb2e0ef37..9d27f1445a 100644 --- a/sound/songs/se_m_charm.s +++ b/sound/songs/se_m_charm.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_charm_grp, voicegroup128 + .equ se_m_charm_grp, voicegroup_rs_sfx_2 .equ se_m_charm_pri, 4 .equ se_m_charm_rev, reverb_set+50 .equ se_m_charm_mvl, 127 diff --git a/sound/songs/se_m_confuse_ray.s b/sound/songs/se_m_confuse_ray.s index 78407b8c11..e856fe495a 100644 --- a/sound/songs/se_m_confuse_ray.s +++ b/sound/songs/se_m_confuse_ray.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_confuse_ray_grp, voicegroup128 + .equ se_m_confuse_ray_grp, voicegroup_rs_sfx_2 .equ se_m_confuse_ray_pri, 4 .equ se_m_confuse_ray_rev, reverb_set+50 .equ se_m_confuse_ray_mvl, 127 diff --git a/sound/songs/se_m_cosmic_power.s b/sound/songs/se_m_cosmic_power.s index 3e3f53c5ec..3779ea9683 100644 --- a/sound/songs/se_m_cosmic_power.s +++ b/sound/songs/se_m_cosmic_power.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_cosmic_power_grp, voicegroup128 + .equ se_m_cosmic_power_grp, voicegroup_rs_sfx_2 .equ se_m_cosmic_power_pri, 4 .equ se_m_cosmic_power_rev, reverb_set+50 .equ se_m_cosmic_power_mvl, 127 diff --git a/sound/songs/se_m_crabhammer.s b/sound/songs/se_m_crabhammer.s index 6333150dc7..c629edc99c 100644 --- a/sound/songs/se_m_crabhammer.s +++ b/sound/songs/se_m_crabhammer.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_crabhammer_grp, voicegroup128 + .equ se_m_crabhammer_grp, voicegroup_rs_sfx_2 .equ se_m_crabhammer_pri, 4 .equ se_m_crabhammer_rev, reverb_set+50 .equ se_m_crabhammer_mvl, 127 diff --git a/sound/songs/se_m_detect.s b/sound/songs/se_m_detect.s index f06802802a..82196bb2d9 100644 --- a/sound/songs/se_m_detect.s +++ b/sound/songs/se_m_detect.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_detect_grp, voicegroup128 + .equ se_m_detect_grp, voicegroup_rs_sfx_2 .equ se_m_detect_pri, 4 .equ se_m_detect_rev, reverb_set+50 .equ se_m_detect_mvl, 127 diff --git a/sound/songs/se_m_dig.s b/sound/songs/se_m_dig.s index f8d3597d95..be16d77ac5 100644 --- a/sound/songs/se_m_dig.s +++ b/sound/songs/se_m_dig.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_dig_grp, voicegroup128 + .equ se_m_dig_grp, voicegroup_rs_sfx_2 .equ se_m_dig_pri, 4 .equ se_m_dig_rev, reverb_set+50 .equ se_m_dig_mvl, 127 diff --git a/sound/songs/se_m_dive.s b/sound/songs/se_m_dive.s index 83cc423564..879c41eefc 100644 --- a/sound/songs/se_m_dive.s +++ b/sound/songs/se_m_dive.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_dive_grp, voicegroup128 + .equ se_m_dive_grp, voicegroup_rs_sfx_2 .equ se_m_dive_pri, 4 .equ se_m_dive_rev, reverb_set+50 .equ se_m_dive_mvl, 127 diff --git a/sound/songs/se_m_dizzy_punch.s b/sound/songs/se_m_dizzy_punch.s index 31ab74a77f..ccd2a6c956 100644 --- a/sound/songs/se_m_dizzy_punch.s +++ b/sound/songs/se_m_dizzy_punch.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_dizzy_punch_grp, voicegroup128 + .equ se_m_dizzy_punch_grp, voicegroup_rs_sfx_2 .equ se_m_dizzy_punch_pri, 4 .equ se_m_dizzy_punch_rev, reverb_set+50 .equ se_m_dizzy_punch_mvl, 127 diff --git a/sound/songs/se_m_double_team.s b/sound/songs/se_m_double_team.s index 49bcfb13d3..3efab79b04 100644 --- a/sound/songs/se_m_double_team.s +++ b/sound/songs/se_m_double_team.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_double_team_grp, voicegroup128 + .equ se_m_double_team_grp, voicegroup_rs_sfx_2 .equ se_m_double_team_pri, 4 .equ se_m_double_team_rev, reverb_set+50 .equ se_m_double_team_mvl, 127 diff --git a/sound/songs/se_m_dragon_rage.s b/sound/songs/se_m_dragon_rage.s index 608d926115..3a0675c03a 100644 --- a/sound/songs/se_m_dragon_rage.s +++ b/sound/songs/se_m_dragon_rage.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_dragon_rage_grp, voicegroup128 + .equ se_m_dragon_rage_grp, voicegroup_rs_sfx_2 .equ se_m_dragon_rage_pri, 4 .equ se_m_dragon_rage_rev, reverb_set+50 .equ se_m_dragon_rage_mvl, 127 diff --git a/sound/songs/se_m_earthquake.s b/sound/songs/se_m_earthquake.s index 928ddfacd8..76c40d88ca 100644 --- a/sound/songs/se_m_earthquake.s +++ b/sound/songs/se_m_earthquake.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_earthquake_grp, voicegroup128 + .equ se_m_earthquake_grp, voicegroup_rs_sfx_2 .equ se_m_earthquake_pri, 4 .equ se_m_earthquake_rev, reverb_set+50 .equ se_m_earthquake_mvl, 127 diff --git a/sound/songs/se_m_ember.s b/sound/songs/se_m_ember.s index a685ca24c9..010ffaaf1a 100644 --- a/sound/songs/se_m_ember.s +++ b/sound/songs/se_m_ember.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_ember_grp, voicegroup128 + .equ se_m_ember_grp, voicegroup_rs_sfx_2 .equ se_m_ember_pri, 4 .equ se_m_ember_rev, reverb_set+50 .equ se_m_ember_mvl, 127 diff --git a/sound/songs/se_m_encore.s b/sound/songs/se_m_encore.s index cf13ab7618..0f212febb3 100644 --- a/sound/songs/se_m_encore.s +++ b/sound/songs/se_m_encore.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_encore_grp, voicegroup128 + .equ se_m_encore_grp, voicegroup_rs_sfx_2 .equ se_m_encore_pri, 4 .equ se_m_encore_rev, reverb_set+50 .equ se_m_encore_mvl, 127 diff --git a/sound/songs/se_m_encore2.s b/sound/songs/se_m_encore2.s index 61e522acac..86ebb5585b 100644 --- a/sound/songs/se_m_encore2.s +++ b/sound/songs/se_m_encore2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_encore2_grp, voicegroup128 + .equ se_m_encore2_grp, voicegroup_rs_sfx_2 .equ se_m_encore2_pri, 4 .equ se_m_encore2_rev, reverb_set+50 .equ se_m_encore2_mvl, 127 diff --git a/sound/songs/se_m_explosion.s b/sound/songs/se_m_explosion.s index 039c563f78..b0f98c6f40 100644 --- a/sound/songs/se_m_explosion.s +++ b/sound/songs/se_m_explosion.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_explosion_grp, voicegroup128 + .equ se_m_explosion_grp, voicegroup_rs_sfx_2 .equ se_m_explosion_pri, 4 .equ se_m_explosion_rev, reverb_set+50 .equ se_m_explosion_mvl, 127 diff --git a/sound/songs/se_m_faint_attack.s b/sound/songs/se_m_faint_attack.s index ce53c7173e..2011e58b4e 100644 --- a/sound/songs/se_m_faint_attack.s +++ b/sound/songs/se_m_faint_attack.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_faint_attack_grp, voicegroup128 + .equ se_m_faint_attack_grp, voicegroup_rs_sfx_2 .equ se_m_faint_attack_pri, 4 .equ se_m_faint_attack_rev, reverb_set+50 .equ se_m_faint_attack_mvl, 127 diff --git a/sound/songs/se_m_flame_wheel.s b/sound/songs/se_m_flame_wheel.s index 797073466a..f722ae3200 100644 --- a/sound/songs/se_m_flame_wheel.s +++ b/sound/songs/se_m_flame_wheel.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_flame_wheel_grp, voicegroup128 + .equ se_m_flame_wheel_grp, voicegroup_rs_sfx_2 .equ se_m_flame_wheel_pri, 4 .equ se_m_flame_wheel_rev, reverb_set+50 .equ se_m_flame_wheel_mvl, 127 diff --git a/sound/songs/se_m_flame_wheel2.s b/sound/songs/se_m_flame_wheel2.s index 21f911b0ba..09413e52aa 100644 --- a/sound/songs/se_m_flame_wheel2.s +++ b/sound/songs/se_m_flame_wheel2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_flame_wheel2_grp, voicegroup128 + .equ se_m_flame_wheel2_grp, voicegroup_rs_sfx_2 .equ se_m_flame_wheel2_pri, 4 .equ se_m_flame_wheel2_rev, reverb_set+50 .equ se_m_flame_wheel2_mvl, 127 diff --git a/sound/songs/se_m_flamethrower.s b/sound/songs/se_m_flamethrower.s index 4c0c892c1e..0536ae19fd 100644 --- a/sound/songs/se_m_flamethrower.s +++ b/sound/songs/se_m_flamethrower.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_flamethrower_grp, voicegroup128 + .equ se_m_flamethrower_grp, voicegroup_rs_sfx_2 .equ se_m_flamethrower_pri, 4 .equ se_m_flamethrower_rev, reverb_set+50 .equ se_m_flamethrower_mvl, 127 diff --git a/sound/songs/se_m_flatter.s b/sound/songs/se_m_flatter.s index 799fdba912..b6484bbf4f 100644 --- a/sound/songs/se_m_flatter.s +++ b/sound/songs/se_m_flatter.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_flatter_grp, voicegroup128 + .equ se_m_flatter_grp, voicegroup_rs_sfx_2 .equ se_m_flatter_pri, 4 .equ se_m_flatter_rev, reverb_set+50 .equ se_m_flatter_mvl, 127 diff --git a/sound/songs/se_m_giga_drain.s b/sound/songs/se_m_giga_drain.s index 4596a0252c..de8f951755 100644 --- a/sound/songs/se_m_giga_drain.s +++ b/sound/songs/se_m_giga_drain.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_giga_drain_grp, voicegroup128 + .equ se_m_giga_drain_grp, voicegroup_rs_sfx_2 .equ se_m_giga_drain_pri, 4 .equ se_m_giga_drain_rev, reverb_set+50 .equ se_m_giga_drain_mvl, 127 diff --git a/sound/songs/se_m_grasswhistle.s b/sound/songs/se_m_grasswhistle.s index 10c7447873..384908fd8a 100644 --- a/sound/songs/se_m_grasswhistle.s +++ b/sound/songs/se_m_grasswhistle.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_grasswhistle_grp, voicegroup128 + .equ se_m_grasswhistle_grp, voicegroup_rs_sfx_2 .equ se_m_grasswhistle_pri, 4 .equ se_m_grasswhistle_rev, reverb_set+50 .equ se_m_grasswhistle_mvl, 127 diff --git a/sound/songs/se_m_hail.s b/sound/songs/se_m_hail.s index 7f1d1c67da..46b25141b6 100644 --- a/sound/songs/se_m_hail.s +++ b/sound/songs/se_m_hail.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_hail_grp, voicegroup128 + .equ se_m_hail_grp, voicegroup_rs_sfx_2 .equ se_m_hail_pri, 4 .equ se_m_hail_rev, reverb_set+50 .equ se_m_hail_mvl, 127 diff --git a/sound/songs/se_m_harden.s b/sound/songs/se_m_harden.s index e9bd888de8..2171a3e067 100644 --- a/sound/songs/se_m_harden.s +++ b/sound/songs/se_m_harden.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_harden_grp, voicegroup128 + .equ se_m_harden_grp, voicegroup_rs_sfx_2 .equ se_m_harden_pri, 4 .equ se_m_harden_rev, reverb_set+50 .equ se_m_harden_mvl, 127 diff --git a/sound/songs/se_m_haze.s b/sound/songs/se_m_haze.s index 11497c8465..fb134ff042 100644 --- a/sound/songs/se_m_haze.s +++ b/sound/songs/se_m_haze.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_haze_grp, voicegroup128 + .equ se_m_haze_grp, voicegroup_rs_sfx_2 .equ se_m_haze_pri, 4 .equ se_m_haze_rev, reverb_set+50 .equ se_m_haze_mvl, 127 diff --git a/sound/songs/se_m_heal_bell.s b/sound/songs/se_m_heal_bell.s index fbe315c878..407af374fb 100644 --- a/sound/songs/se_m_heal_bell.s +++ b/sound/songs/se_m_heal_bell.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_heal_bell_grp, voicegroup128 + .equ se_m_heal_bell_grp, voicegroup_rs_sfx_2 .equ se_m_heal_bell_pri, 4 .equ se_m_heal_bell_rev, reverb_set+50 .equ se_m_heal_bell_mvl, 127 diff --git a/sound/songs/se_m_heat_wave.s b/sound/songs/se_m_heat_wave.s index da5842f8f8..5430cd4cad 100644 --- a/sound/songs/se_m_heat_wave.s +++ b/sound/songs/se_m_heat_wave.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_heat_wave_grp, voicegroup128 + .equ se_m_heat_wave_grp, voicegroup_rs_sfx_2 .equ se_m_heat_wave_pri, 4 .equ se_m_heat_wave_rev, reverb_set+50 .equ se_m_heat_wave_mvl, 127 diff --git a/sound/songs/se_m_hydro_pump.s b/sound/songs/se_m_hydro_pump.s index c214985e47..93f8459ec1 100644 --- a/sound/songs/se_m_hydro_pump.s +++ b/sound/songs/se_m_hydro_pump.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_hydro_pump_grp, voicegroup128 + .equ se_m_hydro_pump_grp, voicegroup_rs_sfx_2 .equ se_m_hydro_pump_pri, 4 .equ se_m_hydro_pump_rev, reverb_set+50 .equ se_m_hydro_pump_mvl, 127 diff --git a/sound/songs/se_m_hyper_beam.s b/sound/songs/se_m_hyper_beam.s index b6ffcfc2f7..34e49ac460 100644 --- a/sound/songs/se_m_hyper_beam.s +++ b/sound/songs/se_m_hyper_beam.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_hyper_beam_grp, voicegroup128 + .equ se_m_hyper_beam_grp, voicegroup_rs_sfx_2 .equ se_m_hyper_beam_pri, 4 .equ se_m_hyper_beam_rev, reverb_set+50 .equ se_m_hyper_beam_mvl, 127 diff --git a/sound/songs/se_m_hyper_beam2.s b/sound/songs/se_m_hyper_beam2.s index fb21834222..0fffa797c6 100644 --- a/sound/songs/se_m_hyper_beam2.s +++ b/sound/songs/se_m_hyper_beam2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_hyper_beam2_grp, voicegroup128 + .equ se_m_hyper_beam2_grp, voicegroup_rs_sfx_2 .equ se_m_hyper_beam2_pri, 4 .equ se_m_hyper_beam2_rev, reverb_set+50 .equ se_m_hyper_beam2_mvl, 127 diff --git a/sound/songs/se_m_icy_wind.s b/sound/songs/se_m_icy_wind.s index b7e83e0321..dff7f59487 100644 --- a/sound/songs/se_m_icy_wind.s +++ b/sound/songs/se_m_icy_wind.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_icy_wind_grp, voicegroup128 + .equ se_m_icy_wind_grp, voicegroup_rs_sfx_2 .equ se_m_icy_wind_pri, 4 .equ se_m_icy_wind_rev, reverb_set+50 .equ se_m_icy_wind_mvl, 127 diff --git a/sound/songs/se_m_lick.s b/sound/songs/se_m_lick.s index 1aa0c35a28..34f9cbfbbe 100644 --- a/sound/songs/se_m_lick.s +++ b/sound/songs/se_m_lick.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_lick_grp, voicegroup128 + .equ se_m_lick_grp, voicegroup_rs_sfx_2 .equ se_m_lick_pri, 4 .equ se_m_lick_rev, reverb_set+50 .equ se_m_lick_mvl, 127 diff --git a/sound/songs/se_m_lock_on.s b/sound/songs/se_m_lock_on.s index 9c9576d97c..c95eafb3b0 100644 --- a/sound/songs/se_m_lock_on.s +++ b/sound/songs/se_m_lock_on.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_lock_on_grp, voicegroup128 + .equ se_m_lock_on_grp, voicegroup_rs_sfx_2 .equ se_m_lock_on_pri, 4 .equ se_m_lock_on_rev, reverb_set+50 .equ se_m_lock_on_mvl, 127 diff --git a/sound/songs/se_m_metronome.s b/sound/songs/se_m_metronome.s index ba0a55d8b9..de8899b16a 100644 --- a/sound/songs/se_m_metronome.s +++ b/sound/songs/se_m_metronome.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_metronome_grp, voicegroup128 + .equ se_m_metronome_grp, voicegroup_rs_sfx_2 .equ se_m_metronome_pri, 4 .equ se_m_metronome_rev, reverb_set+50 .equ se_m_metronome_mvl, 127 diff --git a/sound/songs/se_m_milk_drink.s b/sound/songs/se_m_milk_drink.s index 57e3a581d6..6380ee398b 100644 --- a/sound/songs/se_m_milk_drink.s +++ b/sound/songs/se_m_milk_drink.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_milk_drink_grp, voicegroup128 + .equ se_m_milk_drink_grp, voicegroup_rs_sfx_2 .equ se_m_milk_drink_pri, 4 .equ se_m_milk_drink_rev, reverb_set+50 .equ se_m_milk_drink_mvl, 127 diff --git a/sound/songs/se_m_minimize.s b/sound/songs/se_m_minimize.s index 778e0ec7c9..32dd545a03 100644 --- a/sound/songs/se_m_minimize.s +++ b/sound/songs/se_m_minimize.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_minimize_grp, voicegroup128 + .equ se_m_minimize_grp, voicegroup_rs_sfx_2 .equ se_m_minimize_pri, 4 .equ se_m_minimize_rev, reverb_set+50 .equ se_m_minimize_mvl, 127 diff --git a/sound/songs/se_m_mist.s b/sound/songs/se_m_mist.s index f46eb130a6..7975b50cc9 100644 --- a/sound/songs/se_m_mist.s +++ b/sound/songs/se_m_mist.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_mist_grp, voicegroup128 + .equ se_m_mist_grp, voicegroup_rs_sfx_2 .equ se_m_mist_pri, 4 .equ se_m_mist_rev, reverb_set+50 .equ se_m_mist_mvl, 127 diff --git a/sound/songs/se_m_moonlight.s b/sound/songs/se_m_moonlight.s index f76181a874..35329544e9 100644 --- a/sound/songs/se_m_moonlight.s +++ b/sound/songs/se_m_moonlight.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_moonlight_grp, voicegroup128 + .equ se_m_moonlight_grp, voicegroup_rs_sfx_2 .equ se_m_moonlight_pri, 4 .equ se_m_moonlight_rev, reverb_set+50 .equ se_m_moonlight_mvl, 127 diff --git a/sound/songs/se_m_morning_sun.s b/sound/songs/se_m_morning_sun.s index 227098da1f..a1196f6fe9 100644 --- a/sound/songs/se_m_morning_sun.s +++ b/sound/songs/se_m_morning_sun.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_morning_sun_grp, voicegroup128 + .equ se_m_morning_sun_grp, voicegroup_rs_sfx_2 .equ se_m_morning_sun_pri, 5 .equ se_m_morning_sun_rev, reverb_set+50 .equ se_m_morning_sun_mvl, 127 diff --git a/sound/songs/se_m_nightmare.s b/sound/songs/se_m_nightmare.s index f995d13103..61e7cde1e3 100644 --- a/sound/songs/se_m_nightmare.s +++ b/sound/songs/se_m_nightmare.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_nightmare_grp, voicegroup128 + .equ se_m_nightmare_grp, voicegroup_rs_sfx_2 .equ se_m_nightmare_pri, 4 .equ se_m_nightmare_rev, reverb_set+50 .equ se_m_nightmare_mvl, 127 diff --git a/sound/songs/se_m_perish_song.s b/sound/songs/se_m_perish_song.s index af30e24579..85614227ed 100644 --- a/sound/songs/se_m_perish_song.s +++ b/sound/songs/se_m_perish_song.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_perish_song_grp, voicegroup128 + .equ se_m_perish_song_grp, voicegroup_rs_sfx_2 .equ se_m_perish_song_pri, 4 .equ se_m_perish_song_rev, reverb_set+50 .equ se_m_perish_song_mvl, 127 diff --git a/sound/songs/se_m_petal_dance.s b/sound/songs/se_m_petal_dance.s index df5752e4bd..6d4e015a77 100644 --- a/sound/songs/se_m_petal_dance.s +++ b/sound/songs/se_m_petal_dance.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_petal_dance_grp, voicegroup128 + .equ se_m_petal_dance_grp, voicegroup_rs_sfx_2 .equ se_m_petal_dance_pri, 4 .equ se_m_petal_dance_rev, reverb_set+50 .equ se_m_petal_dance_mvl, 127 diff --git a/sound/songs/se_m_poison_powder.s b/sound/songs/se_m_poison_powder.s index f48637385b..f9fcd6dc9a 100644 --- a/sound/songs/se_m_poison_powder.s +++ b/sound/songs/se_m_poison_powder.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_poison_powder_grp, voicegroup128 + .equ se_m_poison_powder_grp, voicegroup_rs_sfx_2 .equ se_m_poison_powder_pri, 4 .equ se_m_poison_powder_rev, reverb_set+50 .equ se_m_poison_powder_mvl, 127 diff --git a/sound/songs/se_m_psybeam.s b/sound/songs/se_m_psybeam.s index c7f68cffd6..416a8a9392 100644 --- a/sound/songs/se_m_psybeam.s +++ b/sound/songs/se_m_psybeam.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_psybeam_grp, voicegroup128 + .equ se_m_psybeam_grp, voicegroup_rs_sfx_2 .equ se_m_psybeam_pri, 4 .equ se_m_psybeam_rev, reverb_set+50 .equ se_m_psybeam_mvl, 127 diff --git a/sound/songs/se_m_psybeam2.s b/sound/songs/se_m_psybeam2.s index e26a844c91..2cce6098b1 100644 --- a/sound/songs/se_m_psybeam2.s +++ b/sound/songs/se_m_psybeam2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_psybeam2_grp, voicegroup128 + .equ se_m_psybeam2_grp, voicegroup_rs_sfx_2 .equ se_m_psybeam2_pri, 4 .equ se_m_psybeam2_rev, reverb_set+50 .equ se_m_psybeam2_mvl, 127 diff --git a/sound/songs/se_m_rain_dance.s b/sound/songs/se_m_rain_dance.s index bba4dc2b05..7e5b2d0098 100644 --- a/sound/songs/se_m_rain_dance.s +++ b/sound/songs/se_m_rain_dance.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_rain_dance_grp, voicegroup128 + .equ se_m_rain_dance_grp, voicegroup_rs_sfx_2 .equ se_m_rain_dance_pri, 4 .equ se_m_rain_dance_rev, reverb_set+50 .equ se_m_rain_dance_mvl, 127 diff --git a/sound/songs/se_m_reflect.s b/sound/songs/se_m_reflect.s index 56699c65ea..d5649ab360 100644 --- a/sound/songs/se_m_reflect.s +++ b/sound/songs/se_m_reflect.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_reflect_grp, voicegroup128 + .equ se_m_reflect_grp, voicegroup_rs_sfx_2 .equ se_m_reflect_pri, 4 .equ se_m_reflect_rev, reverb_set+50 .equ se_m_reflect_mvl, 127 diff --git a/sound/songs/se_m_reversal.s b/sound/songs/se_m_reversal.s index 5b62d7156e..56ed6d0576 100644 --- a/sound/songs/se_m_reversal.s +++ b/sound/songs/se_m_reversal.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_reversal_grp, voicegroup128 + .equ se_m_reversal_grp, voicegroup_rs_sfx_2 .equ se_m_reversal_pri, 4 .equ se_m_reversal_rev, reverb_set+50 .equ se_m_reversal_mvl, 127 diff --git a/sound/songs/se_m_rock_throw.s b/sound/songs/se_m_rock_throw.s index 71dddd4475..74ae936b76 100644 --- a/sound/songs/se_m_rock_throw.s +++ b/sound/songs/se_m_rock_throw.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_rock_throw_grp, voicegroup128 + .equ se_m_rock_throw_grp, voicegroup_rs_sfx_2 .equ se_m_rock_throw_pri, 4 .equ se_m_rock_throw_rev, reverb_set+50 .equ se_m_rock_throw_mvl, 127 diff --git a/sound/songs/se_m_sacred_fire.s b/sound/songs/se_m_sacred_fire.s index 0fda9c757a..58a40c9bfb 100644 --- a/sound/songs/se_m_sacred_fire.s +++ b/sound/songs/se_m_sacred_fire.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sacred_fire_grp, voicegroup128 + .equ se_m_sacred_fire_grp, voicegroup_rs_sfx_2 .equ se_m_sacred_fire_pri, 4 .equ se_m_sacred_fire_rev, reverb_set+50 .equ se_m_sacred_fire_mvl, 127 diff --git a/sound/songs/se_m_sacred_fire2.s b/sound/songs/se_m_sacred_fire2.s index f255e712a9..41582debdd 100644 --- a/sound/songs/se_m_sacred_fire2.s +++ b/sound/songs/se_m_sacred_fire2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sacred_fire2_grp, voicegroup128 + .equ se_m_sacred_fire2_grp, voicegroup_rs_sfx_2 .equ se_m_sacred_fire2_pri, 4 .equ se_m_sacred_fire2_rev, reverb_set+50 .equ se_m_sacred_fire2_mvl, 127 diff --git a/sound/songs/se_m_sand_tomb.s b/sound/songs/se_m_sand_tomb.s index 4c14aabcc4..e52a76d108 100644 --- a/sound/songs/se_m_sand_tomb.s +++ b/sound/songs/se_m_sand_tomb.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sand_tomb_grp, voicegroup128 + .equ se_m_sand_tomb_grp, voicegroup_rs_sfx_2 .equ se_m_sand_tomb_pri, 4 .equ se_m_sand_tomb_rev, reverb_set+50 .equ se_m_sand_tomb_mvl, 127 diff --git a/sound/songs/se_m_sandstorm.s b/sound/songs/se_m_sandstorm.s index 4cb12a3892..e4e81dcc62 100644 --- a/sound/songs/se_m_sandstorm.s +++ b/sound/songs/se_m_sandstorm.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sandstorm_grp, voicegroup128 + .equ se_m_sandstorm_grp, voicegroup_rs_sfx_2 .equ se_m_sandstorm_pri, 4 .equ se_m_sandstorm_rev, reverb_set+50 .equ se_m_sandstorm_mvl, 127 diff --git a/sound/songs/se_m_screech.s b/sound/songs/se_m_screech.s index 378cf71281..c28d8d2bbd 100644 --- a/sound/songs/se_m_screech.s +++ b/sound/songs/se_m_screech.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_screech_grp, voicegroup128 + .equ se_m_screech_grp, voicegroup_rs_sfx_2 .equ se_m_screech_pri, 4 .equ se_m_screech_rev, reverb_set+50 .equ se_m_screech_mvl, 127 diff --git a/sound/songs/se_m_self_destruct.s b/sound/songs/se_m_self_destruct.s index 645085e1e5..0ed13b83d4 100644 --- a/sound/songs/se_m_self_destruct.s +++ b/sound/songs/se_m_self_destruct.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_self_destruct_grp, voicegroup128 + .equ se_m_self_destruct_grp, voicegroup_rs_sfx_2 .equ se_m_self_destruct_pri, 4 .equ se_m_self_destruct_rev, reverb_set+50 .equ se_m_self_destruct_mvl, 127 diff --git a/sound/songs/se_m_sing.s b/sound/songs/se_m_sing.s index 8c48c82247..349f6839ce 100644 --- a/sound/songs/se_m_sing.s +++ b/sound/songs/se_m_sing.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sing_grp, voicegroup128 + .equ se_m_sing_grp, voicegroup_rs_sfx_2 .equ se_m_sing_pri, 4 .equ se_m_sing_rev, reverb_set+50 .equ se_m_sing_mvl, 127 diff --git a/sound/songs/se_m_sketch.s b/sound/songs/se_m_sketch.s index c17c4056f2..579a308743 100644 --- a/sound/songs/se_m_sketch.s +++ b/sound/songs/se_m_sketch.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sketch_grp, voicegroup128 + .equ se_m_sketch_grp, voicegroup_rs_sfx_2 .equ se_m_sketch_pri, 4 .equ se_m_sketch_rev, reverb_set+50 .equ se_m_sketch_mvl, 127 diff --git a/sound/songs/se_m_sky_uppercut.s b/sound/songs/se_m_sky_uppercut.s index bed6c19c5f..6a28b5bcd6 100644 --- a/sound/songs/se_m_sky_uppercut.s +++ b/sound/songs/se_m_sky_uppercut.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sky_uppercut_grp, voicegroup128 + .equ se_m_sky_uppercut_grp, voicegroup_rs_sfx_2 .equ se_m_sky_uppercut_pri, 4 .equ se_m_sky_uppercut_rev, reverb_set+50 .equ se_m_sky_uppercut_mvl, 127 diff --git a/sound/songs/se_m_snore.s b/sound/songs/se_m_snore.s index 13e2f6f52b..5774355f21 100644 --- a/sound/songs/se_m_snore.s +++ b/sound/songs/se_m_snore.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_snore_grp, voicegroup128 + .equ se_m_snore_grp, voicegroup_rs_sfx_2 .equ se_m_snore_pri, 4 .equ se_m_snore_rev, reverb_set+50 .equ se_m_snore_mvl, 127 diff --git a/sound/songs/se_m_solar_beam.s b/sound/songs/se_m_solar_beam.s index 6a12b4a10e..0ef97c6be2 100644 --- a/sound/songs/se_m_solar_beam.s +++ b/sound/songs/se_m_solar_beam.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_solar_beam_grp, voicegroup128 + .equ se_m_solar_beam_grp, voicegroup_rs_sfx_2 .equ se_m_solar_beam_pri, 4 .equ se_m_solar_beam_rev, reverb_set+50 .equ se_m_solar_beam_mvl, 127 diff --git a/sound/songs/se_m_spit_up.s b/sound/songs/se_m_spit_up.s index 1073ad01fc..20fe0697d7 100644 --- a/sound/songs/se_m_spit_up.s +++ b/sound/songs/se_m_spit_up.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_spit_up_grp, voicegroup128 + .equ se_m_spit_up_grp, voicegroup_rs_sfx_2 .equ se_m_spit_up_pri, 4 .equ se_m_spit_up_rev, reverb_set+50 .equ se_m_spit_up_mvl, 127 diff --git a/sound/songs/se_m_stat_decrease.s b/sound/songs/se_m_stat_decrease.s index 51218db1e7..8f242be04e 100644 --- a/sound/songs/se_m_stat_decrease.s +++ b/sound/songs/se_m_stat_decrease.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_stat_decrease_grp, voicegroup128 + .equ se_m_stat_decrease_grp, voicegroup_rs_sfx_2 .equ se_m_stat_decrease_pri, 4 .equ se_m_stat_decrease_rev, reverb_set+50 .equ se_m_stat_decrease_mvl, 127 diff --git a/sound/songs/se_m_stat_increase.s b/sound/songs/se_m_stat_increase.s index 2556b6afa7..d5d6b5e918 100644 --- a/sound/songs/se_m_stat_increase.s +++ b/sound/songs/se_m_stat_increase.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_stat_increase_grp, voicegroup128 + .equ se_m_stat_increase_grp, voicegroup_rs_sfx_2 .equ se_m_stat_increase_pri, 4 .equ se_m_stat_increase_rev, reverb_set+50 .equ se_m_stat_increase_mvl, 127 diff --git a/sound/songs/se_m_strength.s b/sound/songs/se_m_strength.s index bda5fc61e5..974a9f976f 100644 --- a/sound/songs/se_m_strength.s +++ b/sound/songs/se_m_strength.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_strength_grp, voicegroup128 + .equ se_m_strength_grp, voicegroup_rs_sfx_2 .equ se_m_strength_pri, 4 .equ se_m_strength_rev, reverb_set+50 .equ se_m_strength_mvl, 127 diff --git a/sound/songs/se_m_string_shot.s b/sound/songs/se_m_string_shot.s index d750d26b9b..ed0701953b 100644 --- a/sound/songs/se_m_string_shot.s +++ b/sound/songs/se_m_string_shot.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_string_shot_grp, voicegroup128 + .equ se_m_string_shot_grp, voicegroup_rs_sfx_2 .equ se_m_string_shot_pri, 4 .equ se_m_string_shot_rev, reverb_set+50 .equ se_m_string_shot_mvl, 127 diff --git a/sound/songs/se_m_string_shot2.s b/sound/songs/se_m_string_shot2.s index b885a7d1a8..ac17f52cc8 100644 --- a/sound/songs/se_m_string_shot2.s +++ b/sound/songs/se_m_string_shot2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_string_shot2_grp, voicegroup128 + .equ se_m_string_shot2_grp, voicegroup_rs_sfx_2 .equ se_m_string_shot2_pri, 4 .equ se_m_string_shot2_rev, reverb_set+50 .equ se_m_string_shot2_mvl, 127 diff --git a/sound/songs/se_m_supersonic.s b/sound/songs/se_m_supersonic.s index c975dad4b6..3029597d1d 100644 --- a/sound/songs/se_m_supersonic.s +++ b/sound/songs/se_m_supersonic.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_supersonic_grp, voicegroup128 + .equ se_m_supersonic_grp, voicegroup_rs_sfx_2 .equ se_m_supersonic_pri, 4 .equ se_m_supersonic_rev, reverb_set+50 .equ se_m_supersonic_mvl, 127 diff --git a/sound/songs/se_m_surf.s b/sound/songs/se_m_surf.s index d3e3077826..1b3fc5cb91 100644 --- a/sound/songs/se_m_surf.s +++ b/sound/songs/se_m_surf.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_surf_grp, voicegroup128 + .equ se_m_surf_grp, voicegroup_rs_sfx_2 .equ se_m_surf_pri, 4 .equ se_m_surf_rev, reverb_set+50 .equ se_m_surf_mvl, 127 diff --git a/sound/songs/se_m_swagger.s b/sound/songs/se_m_swagger.s index 9b4b5756bc..e673444ee4 100644 --- a/sound/songs/se_m_swagger.s +++ b/sound/songs/se_m_swagger.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_swagger_grp, voicegroup128 + .equ se_m_swagger_grp, voicegroup_rs_sfx_2 .equ se_m_swagger_pri, 4 .equ se_m_swagger_rev, reverb_set+50 .equ se_m_swagger_mvl, 127 diff --git a/sound/songs/se_m_swagger2.s b/sound/songs/se_m_swagger2.s index 0a0d767674..9e799ec333 100644 --- a/sound/songs/se_m_swagger2.s +++ b/sound/songs/se_m_swagger2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_swagger2_grp, voicegroup128 + .equ se_m_swagger2_grp, voicegroup_rs_sfx_2 .equ se_m_swagger2_pri, 4 .equ se_m_swagger2_rev, reverb_set+50 .equ se_m_swagger2_mvl, 127 diff --git a/sound/songs/se_m_sweet_scent.s b/sound/songs/se_m_sweet_scent.s index 3b9bd527c8..1099ba3c0f 100644 --- a/sound/songs/se_m_sweet_scent.s +++ b/sound/songs/se_m_sweet_scent.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_sweet_scent_grp, voicegroup128 + .equ se_m_sweet_scent_grp, voicegroup_rs_sfx_2 .equ se_m_sweet_scent_pri, 4 .equ se_m_sweet_scent_rev, reverb_set+50 .equ se_m_sweet_scent_mvl, 127 diff --git a/sound/songs/se_m_swift.s b/sound/songs/se_m_swift.s index c87cbea419..2c01cfcf48 100644 --- a/sound/songs/se_m_swift.s +++ b/sound/songs/se_m_swift.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_swift_grp, voicegroup128 + .equ se_m_swift_grp, voicegroup_rs_sfx_2 .equ se_m_swift_pri, 4 .equ se_m_swift_rev, reverb_set+50 .equ se_m_swift_mvl, 127 diff --git a/sound/songs/se_m_teeter_dance.s b/sound/songs/se_m_teeter_dance.s index 8238afeb27..04a1e61e03 100644 --- a/sound/songs/se_m_teeter_dance.s +++ b/sound/songs/se_m_teeter_dance.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_teeter_dance_grp, voicegroup128 + .equ se_m_teeter_dance_grp, voicegroup_rs_sfx_2 .equ se_m_teeter_dance_pri, 4 .equ se_m_teeter_dance_rev, reverb_set+50 .equ se_m_teeter_dance_mvl, 127 diff --git a/sound/songs/se_m_teleport.s b/sound/songs/se_m_teleport.s index 60f7945d7b..8a4f676ba5 100644 --- a/sound/songs/se_m_teleport.s +++ b/sound/songs/se_m_teleport.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_teleport_grp, voicegroup128 + .equ se_m_teleport_grp, voicegroup_rs_sfx_2 .equ se_m_teleport_pri, 4 .equ se_m_teleport_rev, reverb_set+50 .equ se_m_teleport_mvl, 127 diff --git a/sound/songs/se_m_thunder_wave.s b/sound/songs/se_m_thunder_wave.s index a0b06cb5de..6d0a585e3f 100644 --- a/sound/songs/se_m_thunder_wave.s +++ b/sound/songs/se_m_thunder_wave.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_thunder_wave_grp, voicegroup128 + .equ se_m_thunder_wave_grp, voicegroup_rs_sfx_2 .equ se_m_thunder_wave_pri, 4 .equ se_m_thunder_wave_rev, reverb_set+50 .equ se_m_thunder_wave_mvl, 127 diff --git a/sound/songs/se_m_thunderbolt.s b/sound/songs/se_m_thunderbolt.s index 3b37903131..7b1868fbe6 100644 --- a/sound/songs/se_m_thunderbolt.s +++ b/sound/songs/se_m_thunderbolt.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_thunderbolt_grp, voicegroup128 + .equ se_m_thunderbolt_grp, voicegroup_rs_sfx_2 .equ se_m_thunderbolt_pri, 4 .equ se_m_thunderbolt_rev, reverb_set+50 .equ se_m_thunderbolt_mvl, 127 diff --git a/sound/songs/se_m_thunderbolt2.s b/sound/songs/se_m_thunderbolt2.s index 5068203958..9725b58f52 100644 --- a/sound/songs/se_m_thunderbolt2.s +++ b/sound/songs/se_m_thunderbolt2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_thunderbolt2_grp, voicegroup128 + .equ se_m_thunderbolt2_grp, voicegroup_rs_sfx_2 .equ se_m_thunderbolt2_pri, 4 .equ se_m_thunderbolt2_rev, reverb_set+50 .equ se_m_thunderbolt2_mvl, 127 diff --git a/sound/songs/se_m_toxic.s b/sound/songs/se_m_toxic.s index ae460ad773..3008bc0312 100644 --- a/sound/songs/se_m_toxic.s +++ b/sound/songs/se_m_toxic.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_toxic_grp, voicegroup128 + .equ se_m_toxic_grp, voicegroup_rs_sfx_2 .equ se_m_toxic_pri, 4 .equ se_m_toxic_rev, reverb_set+50 .equ se_m_toxic_mvl, 127 diff --git a/sound/songs/se_m_tri_attack.s b/sound/songs/se_m_tri_attack.s index 13947e6f1a..2a0bd1d4ff 100644 --- a/sound/songs/se_m_tri_attack.s +++ b/sound/songs/se_m_tri_attack.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_tri_attack_grp, voicegroup128 + .equ se_m_tri_attack_grp, voicegroup_rs_sfx_2 .equ se_m_tri_attack_pri, 4 .equ se_m_tri_attack_rev, reverb_set+50 .equ se_m_tri_attack_mvl, 127 diff --git a/sound/songs/se_m_tri_attack2.s b/sound/songs/se_m_tri_attack2.s index 61f11c3967..a54ee3df0e 100644 --- a/sound/songs/se_m_tri_attack2.s +++ b/sound/songs/se_m_tri_attack2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_tri_attack2_grp, voicegroup128 + .equ se_m_tri_attack2_grp, voicegroup_rs_sfx_2 .equ se_m_tri_attack2_pri, 4 .equ se_m_tri_attack2_rev, reverb_set+50 .equ se_m_tri_attack2_mvl, 127 diff --git a/sound/songs/se_m_twister.s b/sound/songs/se_m_twister.s index bbb4f1ec03..a739c89c4f 100644 --- a/sound/songs/se_m_twister.s +++ b/sound/songs/se_m_twister.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_twister_grp, voicegroup128 + .equ se_m_twister_grp, voicegroup_rs_sfx_2 .equ se_m_twister_pri, 4 .equ se_m_twister_rev, reverb_set+50 .equ se_m_twister_mvl, 127 diff --git a/sound/songs/se_m_uproar.s b/sound/songs/se_m_uproar.s index c60cccee4e..2bf7804d52 100644 --- a/sound/songs/se_m_uproar.s +++ b/sound/songs/se_m_uproar.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_uproar_grp, voicegroup128 + .equ se_m_uproar_grp, voicegroup_rs_sfx_2 .equ se_m_uproar_pri, 4 .equ se_m_uproar_rev, reverb_set+50 .equ se_m_uproar_mvl, 127 diff --git a/sound/songs/se_m_vital_throw.s b/sound/songs/se_m_vital_throw.s index 3e04b43e5b..aebda904f2 100644 --- a/sound/songs/se_m_vital_throw.s +++ b/sound/songs/se_m_vital_throw.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_vital_throw_grp, voicegroup128 + .equ se_m_vital_throw_grp, voicegroup_rs_sfx_2 .equ se_m_vital_throw_pri, 4 .equ se_m_vital_throw_rev, reverb_set+50 .equ se_m_vital_throw_mvl, 127 diff --git a/sound/songs/se_m_vital_throw2.s b/sound/songs/se_m_vital_throw2.s index 0d1e64ecb5..34a758c6e2 100644 --- a/sound/songs/se_m_vital_throw2.s +++ b/sound/songs/se_m_vital_throw2.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_vital_throw2_grp, voicegroup128 + .equ se_m_vital_throw2_grp, voicegroup_rs_sfx_2 .equ se_m_vital_throw2_pri, 4 .equ se_m_vital_throw2_rev, reverb_set+50 .equ se_m_vital_throw2_mvl, 127 diff --git a/sound/songs/se_m_waterfall.s b/sound/songs/se_m_waterfall.s index 9e16b9ee76..ad91010e71 100644 --- a/sound/songs/se_m_waterfall.s +++ b/sound/songs/se_m_waterfall.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_waterfall_grp, voicegroup128 + .equ se_m_waterfall_grp, voicegroup_rs_sfx_2 .equ se_m_waterfall_pri, 4 .equ se_m_waterfall_rev, reverb_set+50 .equ se_m_waterfall_mvl, 127 diff --git a/sound/songs/se_m_whirlpool.s b/sound/songs/se_m_whirlpool.s index bf0b9cc722..67563395cc 100644 --- a/sound/songs/se_m_whirlpool.s +++ b/sound/songs/se_m_whirlpool.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_whirlpool_grp, voicegroup128 + .equ se_m_whirlpool_grp, voicegroup_rs_sfx_2 .equ se_m_whirlpool_pri, 4 .equ se_m_whirlpool_rev, reverb_set+50 .equ se_m_whirlpool_mvl, 127 diff --git a/sound/songs/se_m_yawn.s b/sound/songs/se_m_yawn.s index c6af1f3610..fdd6012a22 100644 --- a/sound/songs/se_m_yawn.s +++ b/sound/songs/se_m_yawn.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_m_yawn_grp, voicegroup128 + .equ se_m_yawn_grp, voicegroup_rs_sfx_2 .equ se_m_yawn_pri, 4 .equ se_m_yawn_rev, reverb_set+50 .equ se_m_yawn_mvl, 127 diff --git a/sound/songs/se_wall_hit.s b/sound/songs/se_wall_hit.s index feeeb03b1d..385da03739 100644 --- a/sound/songs/se_wall_hit.s +++ b/sound/songs/se_wall_hit.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_wall_hit_grp, voicegroup127 + .equ se_wall_hit_grp, voicegroup_rs_sfx_1 .equ se_wall_hit_pri, 2 .equ se_wall_hit_rev, reverb_set+50 .equ se_wall_hit_mvl, 127 diff --git a/sound/songs/se_win_open.s b/sound/songs/se_win_open.s index b5d582a8d9..07fb4fadd4 100644 --- a/sound/songs/se_win_open.s +++ b/sound/songs/se_win_open.s @@ -1,6 +1,6 @@ .include "MPlayDef.s" - .equ se_win_open_grp, voicegroup127 + .equ se_win_open_grp, voicegroup_rs_sfx_1 .equ se_win_open_pri, 5 .equ se_win_open_rev, reverb_set+50 .equ se_win_open_mvl, 127 diff --git a/sound/voice_groups.inc b/sound/voice_groups.inc index 8ee57619b6..eabcc5c752 100644 --- a/sound/voice_groups.inc +++ b/sound/voice_groups.inc @@ -1,192 +1,203 @@ -.include "sound/voicegroups/voicegroup000.inc" -.include "sound/voicegroups/voicegroup001.inc" -.include "sound/voicegroups/voicegroup002.inc" -.include "sound/voicegroups/voicegroup003.inc" -.include "sound/voicegroups/voicegroup004.inc" -.include "sound/voicegroups/voicegroup005.inc" -.include "sound/voicegroups/voicegroup006.inc" -.include "sound/voicegroups/voicegroup007.inc" -.include "sound/voicegroups/voicegroup008.inc" -.include "sound/voicegroups/voicegroup009.inc" -.include "sound/voicegroups/voicegroup010.inc" -.include "sound/voicegroups/voicegroup011.inc" -.include "sound/voicegroups/voicegroup012.inc" -.include "sound/voicegroups/voicegroup013.inc" -.include "sound/voicegroups/voicegroup014.inc" -.include "sound/voicegroups/voicegroup015.inc" -.include "sound/voicegroups/voicegroup016.inc" -.include "sound/voicegroups/voicegroup017.inc" -.include "sound/voicegroups/voicegroup018.inc" -.include "sound/voicegroups/voicegroup019.inc" -.include "sound/voicegroups/voicegroup020.inc" -.include "sound/voicegroups/voicegroup021.inc" -.include "sound/voicegroups/voicegroup022.inc" -.include "sound/voicegroups/voicegroup023.inc" -.include "sound/voicegroups/voicegroup024.inc" -.include "sound/voicegroups/voicegroup025.inc" -.include "sound/voicegroups/voicegroup026.inc" -.include "sound/voicegroups/voicegroup027.inc" -.include "sound/voicegroups/voicegroup028.inc" -.include "sound/voicegroups/voicegroup029.inc" -.include "sound/voicegroups/voicegroup030.inc" -.include "sound/voicegroups/voicegroup031.inc" -.include "sound/voicegroups/voicegroup032.inc" -.include "sound/voicegroups/voicegroup033.inc" -.include "sound/voicegroups/voicegroup034.inc" -.include "sound/voicegroups/voicegroup035.inc" -.include "sound/voicegroups/voicegroup036.inc" -.include "sound/voicegroups/voicegroup037.inc" -.include "sound/voicegroups/voicegroup038.inc" -.include "sound/voicegroups/voicegroup039.inc" -.include "sound/voicegroups/voicegroup040.inc" -.include "sound/voicegroups/voicegroup041.inc" -.include "sound/voicegroups/voicegroup042.inc" -.include "sound/voicegroups/voicegroup043.inc" -.include "sound/voicegroups/voicegroup044.inc" -.include "sound/voicegroups/voicegroup045.inc" -.include "sound/voicegroups/voicegroup046.inc" -.include "sound/voicegroups/voicegroup047.inc" -.include "sound/voicegroups/voicegroup048.inc" -.include "sound/voicegroups/voicegroup049.inc" -.include "sound/voicegroups/voicegroup050.inc" -.include "sound/voicegroups/voicegroup051.inc" -.include "sound/voicegroups/voicegroup052.inc" -.include "sound/voicegroups/voicegroup053.inc" -.include "sound/voicegroups/voicegroup054.inc" -.include "sound/voicegroups/voicegroup055.inc" -.include "sound/voicegroups/voicegroup056.inc" -.include "sound/voicegroups/voicegroup057.inc" -.include "sound/voicegroups/voicegroup058.inc" -.include "sound/voicegroups/voicegroup059.inc" -.include "sound/voicegroups/voicegroup060.inc" -.include "sound/voicegroups/voicegroup061.inc" -.include "sound/voicegroups/voicegroup062.inc" -.include "sound/voicegroups/voicegroup063.inc" -.include "sound/voicegroups/voicegroup064.inc" -.include "sound/voicegroups/voicegroup065.inc" -.include "sound/voicegroups/voicegroup066.inc" -.include "sound/voicegroups/voicegroup067.inc" -.include "sound/voicegroups/voicegroup068.inc" -.include "sound/voicegroups/voicegroup069.inc" -.include "sound/voicegroups/voicegroup070.inc" -.include "sound/voicegroups/voicegroup071.inc" -.include "sound/voicegroups/voicegroup072.inc" -.include "sound/voicegroups/voicegroup073.inc" -.include "sound/voicegroups/voicegroup074.inc" -.include "sound/voicegroups/voicegroup075.inc" -.include "sound/voicegroups/voicegroup076.inc" -.include "sound/voicegroups/voicegroup077.inc" -.include "sound/voicegroups/voicegroup078.inc" -.include "sound/voicegroups/voicegroup079.inc" -.include "sound/voicegroups/voicegroup080.inc" -.include "sound/voicegroups/voicegroup081.inc" -.include "sound/voicegroups/voicegroup082.inc" -.include "sound/voicegroups/voicegroup083.inc" -.include "sound/voicegroups/voicegroup084.inc" -.include "sound/voicegroups/voicegroup085.inc" -.include "sound/voicegroups/voicegroup086.inc" -.include "sound/voicegroups/voicegroup087.inc" -.include "sound/voicegroups/voicegroup088.inc" -.include "sound/voicegroups/voicegroup089.inc" -.include "sound/voicegroups/voicegroup090.inc" -.include "sound/voicegroups/voicegroup091.inc" -.include "sound/voicegroups/voicegroup092.inc" -.include "sound/voicegroups/voicegroup093.inc" -.include "sound/voicegroups/voicegroup094.inc" -.include "sound/voicegroups/voicegroup095.inc" -.include "sound/voicegroups/voicegroup096.inc" -.include "sound/voicegroups/voicegroup097.inc" -.include "sound/voicegroups/voicegroup098.inc" -.include "sound/voicegroups/voicegroup099.inc" -.include "sound/voicegroups/voicegroup100.inc" -.include "sound/voicegroups/voicegroup101.inc" -.include "sound/voicegroups/voicegroup102.inc" -.include "sound/voicegroups/voicegroup103.inc" -.include "sound/voicegroups/voicegroup104.inc" -.include "sound/voicegroups/voicegroup105.inc" -.include "sound/voicegroups/voicegroup106.inc" -.include "sound/voicegroups/voicegroup107.inc" -.include "sound/voicegroups/voicegroup108.inc" -.include "sound/voicegroups/voicegroup109.inc" -.include "sound/voicegroups/voicegroup110.inc" -.include "sound/voicegroups/voicegroup111.inc" -.include "sound/voicegroups/voicegroup112.inc" -.include "sound/voicegroups/voicegroup113.inc" -.include "sound/voicegroups/voicegroup114.inc" -.include "sound/voicegroups/voicegroup115.inc" -.include "sound/voicegroups/voicegroup116.inc" -.include "sound/voicegroups/voicegroup117.inc" -.include "sound/voicegroups/voicegroup118.inc" -.include "sound/voicegroups/voicegroup119.inc" -.include "sound/voicegroups/voicegroup120.inc" -.include "sound/voicegroups/voicegroup121.inc" -.include "sound/voicegroups/voicegroup122.inc" -.include "sound/voicegroups/voicegroup123.inc" -.include "sound/voicegroups/voicegroup124.inc" -.include "sound/voicegroups/voicegroup125.inc" -.include "sound/voicegroups/voicegroup126.inc" -.include "sound/voicegroups/voicegroup127.inc" -.include "sound/voicegroups/voicegroup128.inc" +.include "sound/voicegroups/dummy.inc" + +@ drumsets +.include "sound/voicegroups/drumsets/rs.inc" +.include "sound/voicegroups/drumsets/frlg.inc" +.include "sound/voicegroups/drumsets/emerald_1.inc" +.include "sound/voicegroups/drumsets/emerald_2.inc" + +@ key splits +.include "sound/voicegroups/keysplits/piano.inc" +.include "sound/voicegroups/keysplits/strings.inc" +.include "sound/voicegroups/keysplits/trumpet.inc" +.include "sound/voicegroups/unused.inc" +.include "sound/voicegroups/keysplits/tuba.inc" +.include "sound/voicegroups/keysplits/french_horn.inc" + +.include "sound/voicegroups/route110.inc" +.include "sound/voicegroups/route101.inc" +.include "sound/voicegroups/fanfare.inc" +.include "sound/voicegroups/gym.inc" +.include "sound/voicegroups/route120.inc" +.include "sound/voicegroups/petalburg.inc" +.include "sound/voicegroups/drumsets/petalburg.inc" +.include "sound/voicegroups/surf.inc" +.include "sound/voicegroups/petalburg_woods.inc" +.include "sound/voicegroups/oldale.inc" +.include "sound/voicegroups/lilycove_museum.inc" +.include "sound/voicegroups/route122.inc" +.include "sound/voicegroups/drumsets/route101.inc" +.include "sound/voicegroups/oceanic_museum.inc" +.include "sound/voicegroups/victory_gym_leader.inc" +.include "sound/voicegroups/victory_wild.inc" +.include "sound/voicegroups/evolution.inc" +.include "sound/voicegroups/encounter_girl.inc" +.include "sound/voicegroups/encounter_male.inc" +.include "sound/voicegroups/victory_league.inc" +.include "sound/voicegroups/abandoned_ship.inc" +.include "sound/voicegroups/drumsets/route110.inc" +.include "sound/voicegroups/fortree.inc" +.include "sound/voicegroups/birch_lab.inc" +.include "sound/voicegroups/littleroot_test.inc" +.include "sound/voicegroups/b_tower_rs.inc" +.include "sound/voicegroups/encounter_swimmer.inc" +.include "sound/voicegroups/cave_of_origin.inc" +.include "sound/voicegroups/roulette.inc" +.include "sound/voicegroups/link_contest_p1.inc" +.include "sound/voicegroups/link_contest_p2.inc" +.include "sound/voicegroups/link_contest_p3.inc" +.include "sound/voicegroups/link_contest_p4.inc" +.include "sound/voicegroups/encounter_rich.inc" +.include "sound/voicegroups/verdanturf.inc" +.include "sound/voicegroups/rustboro.inc" +.include "sound/voicegroups/poke_center.inc" +.include "sound/voicegroups/route104.inc" +.include "sound/voicegroups/route119.inc" +.include "sound/voicegroups/cycling.inc" +.include "sound/voicegroups/poke_mart.inc" +.include "sound/voicegroups/littleroot.inc" +.include "sound/voicegroups/mt_chimney.inc" +.include "sound/voicegroups/encounter_female.inc" +.include "sound/voicegroups/lilycove.inc" +.include "sound/voicegroups/route111.inc" +.include "sound/voicegroups/help.inc" +.include "sound/voicegroups/underwater.inc" +.include "sound/voicegroups/victory_trainer.inc" +.include "sound/voicegroups/title.inc" +.include "sound/voicegroups/intro.inc" +.include "sound/voicegroups/encounter_may.inc" +.include "sound/voicegroups/encounter_intense.inc" +.include "sound/voicegroups/encounter_cool.inc" +.include "sound/voicegroups/route113.inc" +.include "sound/voicegroups/encounter_aqua.inc" +.include "sound/voicegroups/follow_me.inc" +.include "sound/voicegroups/encounter_brendan.inc" +.include "sound/voicegroups/ever_grande.inc" +.include "sound/voicegroups/encounter_suspicious.inc" +.include "sound/voicegroups/victory_aqua_magma.inc" +.include "sound/voicegroups/cable_car.inc" +.include "sound/voicegroups/game_corner.inc" +.include "sound/voicegroups/dewford.inc" +.include "sound/voicegroups/safari_zone.inc" +.include "sound/voicegroups/victory_road.inc" +.include "sound/voicegroups/aqua_magma_hideout.inc" +.include "sound/voicegroups/sailing.inc" +.include "sound/voicegroups/mt_pyre.inc" +.include "sound/voicegroups/slateport.inc" +.include "sound/voicegroups/mt_pyre_exterior.inc" +.include "sound/voicegroups/school.inc" +.include "sound/voicegroups/hall_of_fame.inc" +.include "sound/voicegroups/fallarbor.inc" +.include "sound/voicegroups/sealed_chamber.inc" +.include "sound/voicegroups/contest_winner.inc" +.include "sound/voicegroups/contest.inc" +.include "sound/voicegroups/encounter_magma.inc" +.include "sound/voicegroups/intro_battle.inc" +.include "sound/voicegroups/abnormal_weather.inc" +.include "sound/voicegroups/weather_groudon.inc" +.include "sound/voicegroups/sootopolis.inc" +.include "sound/voicegroups/contest_results.inc" +.include "sound/voicegroups/hall_of_fame_room.inc" +.include "sound/voicegroups/trick_house.inc" +.include "sound/voicegroups/encounter_twins.inc" +.include "sound/voicegroups/encounter_elite_four.inc" +.include "sound/voicegroups/encounter_hiker.inc" +.include "sound/voicegroups/contest_lobby.inc" +.include "sound/voicegroups/encounter_interviewer.inc" +.include "sound/voicegroups/encounter_champion.inc" +.include "sound/voicegroups/credits.inc" +.include "sound/voicegroups/end.inc" +.include "sound/voicegroups/b_frontier.inc" +.include "sound/voicegroups/b_arena.inc" +.include "sound/voicegroups/register_match_call.inc" +.include "sound/voicegroups/b_pyramid.inc" +.include "sound/voicegroups/b_pyramid_top.inc" +.include "sound/voicegroups/b_palace.inc" +.include "sound/voicegroups/rayquaza_appears.inc" +.include "sound/voicegroups/b_tower.inc" +.include "sound/voicegroups/b_dome.inc" +.include "sound/voicegroups/b_pike.inc" +.include "sound/voicegroups/b_factory.inc" +.include "sound/voicegroups/vs_rayquaza.inc" +.include "sound/voicegroups/vs_frontier_brain.inc" +.include "sound/voicegroups/vs_mew.inc" +.include "sound/voicegroups/vs_wild.inc" +.include "sound/voicegroups/vs_aqua_magma.inc" +.include "sound/voicegroups/vs_trainer.inc" +.include "sound/voicegroups/vs_gym_leader.inc" +.include "sound/voicegroups/vs_champion.inc" +.include "sound/voicegroups/vs_regi.inc" +.include "sound/voicegroups/vs_kyogre_groudon.inc" @ duplicate of vs_rayquaza +.include "sound/voicegroups/vs_rival.inc" +.include "sound/voicegroups/vs_elite_four.inc" +.include "sound/voicegroups/vs_aqua_magma_leader.inc" +.include "sound/voicegroups/rs_sfx_1.inc" +.include "sound/voicegroups/rs_sfx_2.inc" .include "sound/cry_tables.inc" -.include "sound/voicegroups/voicegroup129.inc" -.include "sound/voicegroups/voicegroup130.inc" -.include "sound/voicegroups/voicegroup131.inc" -.include "sound/voicegroups/voicegroup132.inc" -.include "sound/voicegroups/voicegroup133.inc" -.include "sound/voicegroups/voicegroup134.inc" -.include "sound/voicegroups/voicegroup135.inc" -.include "sound/voicegroups/voicegroup136.inc" -.include "sound/voicegroups/voicegroup137.inc" -.include "sound/voicegroups/voicegroup138.inc" -.include "sound/voicegroups/voicegroup139.inc" -.include "sound/voicegroups/voicegroup140.inc" -.include "sound/voicegroups/voicegroup141.inc" -.include "sound/voicegroups/voicegroup142.inc" -.include "sound/voicegroups/voicegroup143.inc" -.include "sound/voicegroups/voicegroup144.inc" -.include "sound/voicegroups/voicegroup145.inc" -.include "sound/voicegroups/voicegroup146.inc" -.include "sound/voicegroups/voicegroup147.inc" -.include "sound/voicegroups/voicegroup148.inc" -.include "sound/voicegroups/voicegroup149.inc" -.include "sound/voicegroups/voicegroup150.inc" -.include "sound/voicegroups/voicegroup151.inc" -.include "sound/voicegroups/voicegroup152.inc" -.include "sound/voicegroups/voicegroup153.inc" -.include "sound/voicegroups/voicegroup154.inc" -.include "sound/voicegroups/voicegroup155.inc" -.include "sound/voicegroups/voicegroup156.inc" -.include "sound/voicegroups/voicegroup157.inc" -.include "sound/voicegroups/voicegroup158.inc" -.include "sound/voicegroups/voicegroup159.inc" -.include "sound/voicegroups/voicegroup160.inc" -.include "sound/voicegroups/voicegroup161.inc" -.include "sound/voicegroups/voicegroup162.inc" -.include "sound/voicegroups/voicegroup163.inc" -.include "sound/voicegroups/voicegroup164.inc" -.include "sound/voicegroups/voicegroup165.inc" -.include "sound/voicegroups/voicegroup166.inc" -.include "sound/voicegroups/voicegroup167.inc" -.include "sound/voicegroups/voicegroup168.inc" -.include "sound/voicegroups/voicegroup169.inc" -.include "sound/voicegroups/voicegroup170.inc" -.include "sound/voicegroups/voicegroup171.inc" -.include "sound/voicegroups/voicegroup172.inc" -.include "sound/voicegroups/voicegroup173.inc" -.include "sound/voicegroups/voicegroup174.inc" -.include "sound/voicegroups/voicegroup175.inc" -.include "sound/voicegroups/voicegroup176.inc" -.include "sound/voicegroups/voicegroup177.inc" -.include "sound/voicegroups/voicegroup178.inc" -.include "sound/voicegroups/voicegroup179.inc" -.include "sound/voicegroups/voicegroup180.inc" -.include "sound/voicegroups/voicegroup181.inc" -.include "sound/voicegroups/voicegroup182.inc" -.include "sound/voicegroups/voicegroup183.inc" -.include "sound/voicegroups/voicegroup184.inc" -.include "sound/voicegroups/voicegroup185.inc" -.include "sound/voicegroups/voicegroup186.inc" -.include "sound/voicegroups/voicegroup187.inc" -.include "sound/voicegroups/voicegroup188.inc" -.include "sound/voicegroups/voicegroup189.inc" -.include "sound/voicegroups/voicegroup190.inc" +.include "sound/voicegroups/frlg_sfx.inc" +.include "sound/voicegroups/bard.inc" +.include "sound/voicegroups/unused_2.inc" @ used by unused GSC radio tower takeover test track in RS + +@ FRLG +.include "sound/voicegroups/rg_follow_me.inc" +.include "sound/voicegroups/rg_game_corner.inc" +.include "sound/voicegroups/rg_rocket_hideout.inc" +.include "sound/voicegroups/rg_gym.inc" +.include "sound/voicegroups/rg_jigglypuff.inc" +.include "sound/voicegroups/rg_intro_fight.inc" +.include "sound/voicegroups/rg_title.inc" +.include "sound/voicegroups/rg_cinnabar.inc" +.include "sound/voicegroups/rg_lavender.inc" +.include "sound/voicegroups/rg_heal.inc" +.include "sound/voicegroups/rg_cycling.inc" +.include "sound/voicegroups/rg_encounter_rocket.inc" +.include "sound/voicegroups/rg_encounter_girl.inc" +.include "sound/voicegroups/rg_encounter_boy.inc" +.include "sound/voicegroups/rg_hall_of_fame.inc" +.include "sound/voicegroups/rg_viridian_forest.inc" +.include "sound/voicegroups/rg_mt_moon.inc" +.include "sound/voicegroups/rg_poke_mansion.inc" +.include "sound/voicegroups/rg_credits.inc" +.include "sound/voicegroups/rg_route1.inc" +.include "sound/voicegroups/rg_route24.inc" +.include "sound/voicegroups/rg_route3.inc" +.include "sound/voicegroups/rg_route11.inc" +.include "sound/voicegroups/rg_victory_road.inc" +.include "sound/voicegroups/rg_vs_gym_leader.inc" +.include "sound/voicegroups/rg_vs_trainer.inc" +.include "sound/voicegroups/rg_vs_wild.inc" +.include "sound/voicegroups/rg_vs_champion.inc" +.include "sound/voicegroups/rg_pallet.inc" +.include "sound/voicegroups/rg_oak_lab.inc" +.include "sound/voicegroups/rg_oak.inc" +.include "sound/voicegroups/rg_poke_center.inc" +.include "sound/voicegroups/rg_ss_anne.inc" +.include "sound/voicegroups/rg_surf.inc" +.include "sound/voicegroups/rg_poke_tower.inc" +.include "sound/voicegroups/rg_silph.inc" +.include "sound/voicegroups/rg_fuchsia.inc" +.include "sound/voicegroups/rg_celadon.inc" +.include "sound/voicegroups/rg_victory_trainer.inc" +.include "sound/voicegroups/rg_victory_wild.inc" +.include "sound/voicegroups/rg_victory_gym_leader.inc" +.include "sound/voicegroups/rg_vermillion.inc" +.include "sound/voicegroups/rg_pewter.inc" +.include "sound/voicegroups/rg_encounter_rival.inc" +.include "sound/voicegroups/rg_unused.inc" +.include "sound/voicegroups/rg_unused_2.inc" +.include "sound/voicegroups/rg_dex_rating.inc" +.include "sound/voicegroups/drumsets/frlg_fanfare_2.inc" +.include "sound/voicegroups/drumsets/frlg_fanfare_1.inc" +.include "sound/voicegroups/rg_obtain_key_item.inc" +.include "sound/voicegroups/rg_caught_intro.inc" +.include "sound/voicegroups/rg_photo.inc" +.include "sound/voicegroups/rg_game_freak.inc" +.include "sound/voicegroups/rg_new_game.inc" +.include "sound/voicegroups/rg_mystery_gift.inc" +.include "sound/voicegroups/rg_encounter_deoxys.inc" +.include "sound/voicegroups/rg_vs_deoxys.inc" +.include "sound/voicegroups/rg_teachy_tv_menu.inc" +.include "sound/voicegroups/rg_sevii_route.inc" +.include "sound/voicegroups/rg_sevii_45.inc" +.include "sound/voicegroups/rg_sevii_67.inc" +.include "sound/voicegroups/drumsets/rg_credits.inc" diff --git a/sound/voicegroups/abandoned_ship.inc b/sound/voicegroups/abandoned_ship.inc new file mode 100644 index 0000000000..dd4ab482fd --- /dev/null +++ b/sound/voicegroups/abandoned_ship.inc @@ -0,0 +1,97 @@ +voice_group abandoned_ship + voice_keysplit_all voicegroup_route110_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + diff --git a/sound/voicegroups/voicegroup089.inc b/sound/voicegroups/abnormal_weather.inc similarity index 96% rename from sound/voicegroups/voicegroup089.inc rename to sound/voicegroups/abnormal_weather.inc index 4b5e7d57bd..36547c4957 100644 --- a/sound/voicegroups/voicegroup089.inc +++ b/sound/voicegroups/abnormal_weather.inc @@ -1,6 +1,6 @@ - .align 2 -voicegroup089:: - voice_keysplit_all voicegroup001 + +voice_group abnormal_weather + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +48,7 @@ voicegroup089:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +60,7 @@ voicegroup089:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup076.inc b/sound/voicegroups/aqua_magma_hideout.inc similarity index 97% rename from sound/voicegroups/voicegroup076.inc rename to sound/voicegroups/aqua_magma_hideout.inc index 378a8ff669..5790be7e96 100644 --- a/sound/voicegroups/voicegroup076.inc +++ b/sound/voicegroups/aqua_magma_hideout.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup076:: - voice_keysplit_all voicegroup001 +voice_group aqua_magma_hideout + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup076:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup104.inc b/sound/voicegroups/b_arena.inc similarity index 98% rename from sound/voicegroups/voicegroup104.inc rename to sound/voicegroups/b_arena.inc index c1b623918b..bb35ad718c 100644 --- a/sound/voicegroups/voicegroup104.inc +++ b/sound/voicegroups/b_arena.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup104:: - voice_keysplit_all voicegroup003 +voice_group b_arena + voice_keysplit_all voicegroup_emerald_drumset_1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_unknown_koto_high, 255, 0, 206, 242 diff --git a/sound/voicegroups/voicegroup111.inc b/sound/voicegroups/b_dome.inc similarity index 98% rename from sound/voicegroups/voicegroup111.inc rename to sound/voicegroups/b_dome.inc index 27b418f462..e54ec9d99c 100644 --- a/sound/voicegroups/voicegroup111.inc +++ b/sound/voicegroups/b_dome.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup111:: - voice_keysplit_all voicegroup002 +voice_group b_dome + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup113.inc b/sound/voicegroups/b_factory.inc similarity index 96% rename from sound/voicegroups/voicegroup113.inc rename to sound/voicegroups/b_factory.inc index 0fa279c8a6..329741050d 100644 --- a/sound/voicegroups/voicegroup113.inc +++ b/sound/voicegroups/b_factory.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup113:: - voice_keysplit_all voicegroup002 +voice_group b_factory + voice_keysplit_all voicegroup_frlg_drumset voice_programmable_wave_alt 60, 0, ProgrammableWaveData_23, 0, 7, 15, 1 voice_programmable_wave_alt 60, 0, ProgrammableWaveData_25, 0, 7, 15, 1 voice_programmable_wave_alt 60, 0, ProgrammableWaveData_24, 0, 7, 15, 1 @@ -56,11 +55,11 @@ voicegroup113:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup103.inc b/sound/voicegroups/b_frontier.inc similarity index 95% rename from sound/voicegroups/voicegroup103.inc rename to sound/voicegroups/b_frontier.inc index cc743edb22..bcdcfded3d 100644 --- a/sound/voicegroups/voicegroup103.inc +++ b/sound/voicegroups/b_frontier.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup103:: +voice_group b_frontier voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit_all voicegroup002 + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup103:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup103:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup108.inc b/sound/voicegroups/b_palace.inc similarity index 97% rename from sound/voicegroups/voicegroup108.inc rename to sound/voicegroups/b_palace.inc index a92ee43c6a..1e0db2616d 100644 --- a/sound/voicegroups/voicegroup108.inc +++ b/sound/voicegroups/b_palace.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup108:: - voice_keysplit_all voicegroup004 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group b_palace + voice_keysplit_all voicegroup_emerald_drumset_2 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup112.inc b/sound/voicegroups/b_pike.inc similarity index 95% rename from sound/voicegroups/voicegroup112.inc rename to sound/voicegroups/b_pike.inc index 9cb2f415a9..deb900a599 100644 --- a/sound/voicegroups/voicegroup112.inc +++ b/sound/voicegroups/b_pike.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup112:: - voice_keysplit_all voicegroup003 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group b_pike + voice_keysplit_all voicegroup_emerald_drumset_1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_programmable_wave_alt 60, 0, ProgrammableWaveData_21, 0, 7, 15, 1 @@ -48,7 +47,7 @@ voicegroup112:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup112:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup106.inc b/sound/voicegroups/b_pyramid.inc similarity index 94% rename from sound/voicegroups/voicegroup106.inc rename to sound/voicegroups/b_pyramid.inc index 1a1125be8a..855088884f 100644 --- a/sound/voicegroups/voicegroup106.inc +++ b/sound/voicegroups/b_pyramid.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup106:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group b_pyramid + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup106:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup106:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup107.inc b/sound/voicegroups/b_pyramid_top.inc similarity index 96% rename from sound/voicegroups/voicegroup107.inc rename to sound/voicegroups/b_pyramid_top.inc index c43a518ec7..95707f5920 100644 --- a/sound/voicegroups/voicegroup107.inc +++ b/sound/voicegroups/b_pyramid_top.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup107:: - voice_keysplit_all voicegroup002 +voice_group b_pyramid_top + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup107:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup107:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup110.inc b/sound/voicegroups/b_tower.inc similarity index 94% rename from sound/voicegroups/voicegroup110.inc rename to sound/voicegroups/b_tower.inc index 25b6fdaae0..d8fd60920b 100644 --- a/sound/voicegroups/voicegroup110.inc +++ b/sound/voicegroups/b_tower.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup110:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group b_tower + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup110:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup110:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup035.inc b/sound/voicegroups/b_tower_rs.inc similarity index 91% rename from sound/voicegroups/voicegroup035.inc rename to sound/voicegroups/b_tower_rs.inc index 2c3ac4bddd..777e1b3a7c 100644 --- a/sound/voicegroups/voicegroup035.inc +++ b/sound/voicegroups/b_tower_rs.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup035:: - voice_keysplit_all voicegroup031 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group b_tower_rs + voice_keysplit_all voicegroup_route110_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 0, 1, 7, 1 @@ -48,7 +47,7 @@ voicegroup035:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup035:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/bard.inc b/sound/voicegroups/bard.inc new file mode 100644 index 0000000000..57ba0bfd1c --- /dev/null +++ b/sound/voicegroups/bard.inc @@ -0,0 +1,53 @@ +voice_group bard + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_1, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_2, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_3, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_4, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_5, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_6, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_7, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_8, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_9, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_10, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_11, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_12, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_13, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_14, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_15, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_16, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_17, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_18, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_19, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_20, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_21, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_22, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_23, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_24, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_25, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_26, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_27, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_28, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_29, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_30, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_31, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_32, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_33, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_34, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_35, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_36, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_37, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_38, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_39, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_40, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_41, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_42, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_43, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_44, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_45, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_46, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_47, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_48, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_49, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_50, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_Phoneme_51, 255, 0, 255, 0 + diff --git a/sound/voicegroups/voicegroup033.inc b/sound/voicegroups/birch_lab.inc similarity index 94% rename from sound/voicegroups/voicegroup033.inc rename to sound/voicegroups/birch_lab.inc index 34e7e43b71..2b10e4f1e2 100644 --- a/sound/voicegroups/voicegroup033.inc +++ b/sound/voicegroups/birch_lab.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup033:: - voice_keysplit_all voicegroup001 +voice_group birch_lab + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup033:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup033:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup071.inc b/sound/voicegroups/cable_car.inc similarity index 95% rename from sound/voicegroups/voicegroup071.inc rename to sound/voicegroups/cable_car.inc index a4cb9c721f..85d324b02d 100644 --- a/sound/voicegroups/voicegroup071.inc +++ b/sound/voicegroups/cable_car.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup071:: - voice_keysplit_all voicegroup001 +voice_group cable_car + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup071:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup037.inc b/sound/voicegroups/cave_of_origin.inc similarity index 93% rename from sound/voicegroups/voicegroup037.inc rename to sound/voicegroups/cave_of_origin.inc index 057891c01b..36ded3d35f 100644 --- a/sound/voicegroups/voicegroup037.inc +++ b/sound/voicegroups/cave_of_origin.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup037:: - voice_keysplit_all voicegroup031 +voice_group cave_of_origin + voice_keysplit_all voicegroup_route110_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup037:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup037:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup086.inc b/sound/voicegroups/contest.inc similarity index 95% rename from sound/voicegroups/voicegroup086.inc rename to sound/voicegroups/contest.inc index d5298f9b03..24ff586dfc 100644 --- a/sound/voicegroups/voicegroup086.inc +++ b/sound/voicegroups/contest.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup086:: - voice_keysplit_all voicegroup001 +voice_group contest + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup086:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup086:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup098.inc b/sound/voicegroups/contest_lobby.inc similarity index 96% rename from sound/voicegroups/voicegroup098.inc rename to sound/voicegroups/contest_lobby.inc index 3a927368bc..88b1402b39 100644 --- a/sound/voicegroups/voicegroup098.inc +++ b/sound/voicegroups/contest_lobby.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup098:: - voice_keysplit_all voicegroup001 +voice_group contest_lobby + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup098:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup092.inc b/sound/voicegroups/contest_results.inc similarity index 98% rename from sound/voicegroups/voicegroup092.inc rename to sound/voicegroups/contest_results.inc index 90e2858175..ba4f70b996 100644 --- a/sound/voicegroups/voicegroup092.inc +++ b/sound/voicegroups/contest_results.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup092:: - voice_keysplit_all voicegroup001 +voice_group contest_results + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup085.inc b/sound/voicegroups/contest_winner.inc similarity index 97% rename from sound/voicegroups/voicegroup085.inc rename to sound/voicegroups/contest_winner.inc index 6260fb198a..df323c002f 100644 --- a/sound/voicegroups/voicegroup085.inc +++ b/sound/voicegroups/contest_winner.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup085:: - voice_keysplit_all voicegroup001 +voice_group contest_winner + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup085:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup101.inc b/sound/voicegroups/credits.inc similarity index 92% rename from sound/voicegroups/voicegroup101.inc rename to sound/voicegroups/credits.inc index 768c18dea2..d05ac8025c 100644 --- a/sound/voicegroups/voicegroup101.inc +++ b/sound/voicegroups/credits.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup101:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group credits + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 1, 1, 5, 2, 4 @@ -48,7 +47,7 @@ voicegroup101:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup101:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup049.inc b/sound/voicegroups/cycling.inc similarity index 94% rename from sound/voicegroups/voicegroup049.inc rename to sound/voicegroups/cycling.inc index b6b0774cf3..a734c5fe60 100644 --- a/sound/voicegroups/voicegroup049.inc +++ b/sound/voicegroups/cycling.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup049:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group cycling + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup049:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup049:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup073.inc b/sound/voicegroups/dewford.inc similarity index 94% rename from sound/voicegroups/voicegroup073.inc rename to sound/voicegroups/dewford.inc index b10ab81d1a..e0fc659a9b 100644 --- a/sound/voicegroups/voicegroup073.inc +++ b/sound/voicegroups/dewford.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup073:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group dewford + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup073:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup073:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/drumsets/emerald_1.inc b/sound/voicegroups/drumsets/emerald_1.inc new file mode 100644 index 0000000000..80a9957f86 --- /dev/null +++ b/sound/voicegroups/drumsets/emerald_1.inc @@ -0,0 +1,56 @@ +voice_group emerald_drumset_1, 36 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 + voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 + voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 + voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 + voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 + diff --git a/sound/voicegroups/voicegroup004.inc b/sound/voicegroups/drumsets/emerald_2.inc similarity index 60% rename from sound/voicegroups/voicegroup004.inc rename to sound/voicegroups/drumsets/emerald_2.inc index 6aa28d6a9f..4ad57546e0 100644 --- a/sound/voicegroups/voicegroup004.inc +++ b/sound/voicegroups/drumsets/emerald_2.inc @@ -1,41 +1,4 @@ - .align 2 -voicegroup004:: - voice_directsound_no_resample 66, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 - voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 - voice_directsound_no_resample 64, 29, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_directsound_no_resample 64, 94, DirectSoundWaveData_unused_heart_of_asia_indian_drum, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 90, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 61, 84, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 79, DirectSoundWaveData_sd90_open_triangle, 255, 242, 103, 188 - voice_directsound_no_resample 64, 39, DirectSoundWaveData_sd90_open_triangle, 255, 165, 103, 188 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 +voice_group emerald_drumset_2, 36 voice_directsound 62, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 diff --git a/sound/voicegroups/voicegroup003.inc b/sound/voicegroups/drumsets/frlg.inc similarity index 94% rename from sound/voicegroups/voicegroup003.inc rename to sound/voicegroups/drumsets/frlg.inc index d77150fc12..c0a2e59729 100644 --- a/sound/voicegroups/voicegroup003.inc +++ b/sound/voicegroups/drumsets/frlg.inc @@ -1,5 +1,22 @@ - .align 2 -voicegroup003:: +voice_group frlg_drumset, 36 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 + voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 + voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 + voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 voice_directsound_no_resample 64, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 voice_directsound_no_resample 64, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 231, 0, 188 voice_directsound_no_resample 64, 89, DirectSoundWaveData_sd90_cowbell, 255, 0, 255, 242 @@ -36,22 +53,4 @@ voicegroup003:: voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 voice_directsound 50, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 voice_directsound 64, 84, DirectSoundWaveData_ethnic_flavours_kotsuzumi, 255, 0, 255, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 64, 104, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 diff --git a/sound/voicegroups/voicegroup177.inc b/sound/voicegroups/drumsets/frlg_fanfare_1.inc similarity index 72% rename from sound/voicegroups/voicegroup177.inc rename to sound/voicegroups/drumsets/frlg_fanfare_1.inc index bd0e738fd4..0ba197265c 100644 --- a/sound/voicegroups/voicegroup177.inc +++ b/sound/voicegroups/drumsets/frlg_fanfare_1.inc @@ -1,41 +1,4 @@ - .align 2 -voicegroup177:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 +voice_group frlg_fanfare_drumset_1, 36 voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 voice_directsound_no_resample 67, 71, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 diff --git a/sound/voicegroups/voicegroup176.inc b/sound/voicegroups/drumsets/frlg_fanfare_2.inc similarity index 89% rename from sound/voicegroups/voicegroup176.inc rename to sound/voicegroups/drumsets/frlg_fanfare_2.inc index ee3c97e493..acc72aa3b7 100644 --- a/sound/voicegroups/voicegroup176.inc +++ b/sound/voicegroups/drumsets/frlg_fanfare_2.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup176:: +voice_group frlg_fanfare_drumset_2, 36 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -28,14 +27,6 @@ voicegroup176:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,4 +39,12 @@ voicegroup176:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_jingle_bell, 255, 0, 255, 0 diff --git a/sound/voicegroups/voicegroup016.inc b/sound/voicegroups/drumsets/petalburg.inc similarity index 50% rename from sound/voicegroups/voicegroup016.inc rename to sound/voicegroups/drumsets/petalburg.inc index 1b17ac49c7..4008b40f7b 100644 --- a/sound/voicegroups/voicegroup016.inc +++ b/sound/voicegroups/drumsets/petalburg.inc @@ -1,41 +1,4 @@ - .align 2 -voicegroup016:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 0, 2 - voice_noise_alt 60, 0, 0, 0, 1, 0, 1 +voice_group petalburg_drumset, 36 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 diff --git a/sound/voicegroups/voicegroup190.inc b/sound/voicegroups/drumsets/rg_credits.inc similarity index 68% rename from sound/voicegroups/voicegroup190.inc rename to sound/voicegroups/drumsets/rg_credits.inc index 25a84e84ed..0af80106d6 100644 --- a/sound/voicegroups/voicegroup190.inc +++ b/sound/voicegroups/drumsets/rg_credits.inc @@ -1,41 +1,4 @@ - .align 2 -voicegroup190:: - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 7, 0 - voice_noise_alt 60, 0, 0, 0, 1, 9, 1 +voice_group rg_credits_drumset, 36 voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound_no_resample 64, 52, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 @@ -88,3 +51,4 @@ voicegroup190:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound_no_resample 64, 104, DirectSoundWaveData_ethnic_flavours_atarigane, 255, 0, 255, 0 voice_directsound 63, 64, DirectSoundWaveData_sc88pro_taiko, 255, 0, 255, 0 + diff --git a/sound/voicegroups/drumsets/route101.inc b/sound/voicegroups/drumsets/route101.inc new file mode 100644 index 0000000000..779831fc4e --- /dev/null +++ b/sound/voicegroups/drumsets/route101.inc @@ -0,0 +1,31 @@ +voice_group route101_drumset, 36 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + diff --git a/sound/voicegroups/drumsets/route110.inc b/sound/voicegroups/drumsets/route110.inc new file mode 100644 index 0000000000..3535f62927 --- /dev/null +++ b/sound/voicegroups/drumsets/route110.inc @@ -0,0 +1,27 @@ +voice_group route110_drumset, 40 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + diff --git a/sound/voicegroups/drumsets/rs.inc b/sound/voicegroups/drumsets/rs.inc new file mode 100644 index 0000000000..f15d9a514c --- /dev/null +++ b/sound/voicegroups/drumsets/rs.inc @@ -0,0 +1,31 @@ +voice_group rs_drumset, 36 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 + voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 + voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 + voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 + voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 + voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 + voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 + voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 + voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 + voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 + diff --git a/sound/voicegroups/dummy.inc b/sound/voicegroups/dummy.inc new file mode 100644 index 0000000000..43b431f856 --- /dev/null +++ b/sound/voicegroups/dummy.inc @@ -0,0 +1,100 @@ +voice_group dummy + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 0, 9, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 2, 0, 1, 6, 0 + voice_programmable_wave 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 + voice_square_2 60, 0, 3, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 + voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 + voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 + diff --git a/sound/voicegroups/voicegroup065.inc b/sound/voicegroups/encounter_aqua.inc similarity index 96% rename from sound/voicegroups/voicegroup065.inc rename to sound/voicegroups/encounter_aqua.inc index 163bce0c7e..f45e9843c4 100644 --- a/sound/voicegroups/voicegroup065.inc +++ b/sound/voicegroups/encounter_aqua.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup065:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group encounter_aqua + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup065:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup067.inc b/sound/voicegroups/encounter_brendan.inc similarity index 96% rename from sound/voicegroups/voicegroup067.inc rename to sound/voicegroups/encounter_brendan.inc index ed8ccef4f8..3e0f96b624 100644 --- a/sound/voicegroups/voicegroup067.inc +++ b/sound/voicegroups/encounter_brendan.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup067:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group encounter_brendan + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup067:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup100.inc b/sound/voicegroups/encounter_champion.inc similarity index 97% rename from sound/voicegroups/voicegroup100.inc rename to sound/voicegroups/encounter_champion.inc index 577d05c354..fde001b902 100644 --- a/sound/voicegroups/voicegroup100.inc +++ b/sound/voicegroups/encounter_champion.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup100:: - voice_keysplit_all voicegroup001 +voice_group encounter_champion + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup100:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup063.inc b/sound/voicegroups/encounter_cool.inc similarity index 97% rename from sound/voicegroups/voicegroup063.inc rename to sound/voicegroups/encounter_cool.inc index 966ae20809..b0e0b9b454 100644 --- a/sound/voicegroups/voicegroup063.inc +++ b/sound/voicegroups/encounter_cool.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup063:: - voice_keysplit_all voicegroup001 +voice_group encounter_cool + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup063:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup096.inc b/sound/voicegroups/encounter_elite_four.inc similarity index 97% rename from sound/voicegroups/voicegroup096.inc rename to sound/voicegroups/encounter_elite_four.inc index b0cb653caf..b7842d6d03 100644 --- a/sound/voicegroups/voicegroup096.inc +++ b/sound/voicegroups/encounter_elite_four.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup096:: - voice_keysplit_all voicegroup001 +voice_group encounter_elite_four + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup096:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup053.inc b/sound/voicegroups/encounter_female.inc similarity index 96% rename from sound/voicegroups/voicegroup053.inc rename to sound/voicegroups/encounter_female.inc index e5f1a4d7e8..e98854b173 100644 --- a/sound/voicegroups/voicegroup053.inc +++ b/sound/voicegroups/encounter_female.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup053:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group encounter_female + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup053:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup027.inc b/sound/voicegroups/encounter_girl.inc similarity index 97% rename from sound/voicegroups/voicegroup027.inc rename to sound/voicegroups/encounter_girl.inc index 517ee87d43..47426833b9 100644 --- a/sound/voicegroups/voicegroup027.inc +++ b/sound/voicegroups/encounter_girl.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup027:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group encounter_girl + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup097.inc b/sound/voicegroups/encounter_hiker.inc similarity index 95% rename from sound/voicegroups/voicegroup097.inc rename to sound/voicegroups/encounter_hiker.inc index fb0542dac6..826fe14025 100644 --- a/sound/voicegroups/voicegroup097.inc +++ b/sound/voicegroups/encounter_hiker.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup097:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group encounter_hiker + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup097:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup062.inc b/sound/voicegroups/encounter_intense.inc similarity index 97% rename from sound/voicegroups/voicegroup062.inc rename to sound/voicegroups/encounter_intense.inc index ad2e6cad7f..650fb2a8a3 100644 --- a/sound/voicegroups/voicegroup062.inc +++ b/sound/voicegroups/encounter_intense.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup062:: - voice_keysplit_all voicegroup001 +voice_group encounter_intense + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup062:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup099.inc b/sound/voicegroups/encounter_interviewer.inc similarity index 97% rename from sound/voicegroups/voicegroup099.inc rename to sound/voicegroups/encounter_interviewer.inc index e750f95831..1f3f5248a7 100644 --- a/sound/voicegroups/voicegroup099.inc +++ b/sound/voicegroups/encounter_interviewer.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup099:: - voice_keysplit_all voicegroup001 +voice_group encounter_interviewer + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup099:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup087.inc b/sound/voicegroups/encounter_magma.inc similarity index 96% rename from sound/voicegroups/voicegroup087.inc rename to sound/voicegroups/encounter_magma.inc index 1ccb69ea55..f41d1f5ad2 100644 --- a/sound/voicegroups/voicegroup087.inc +++ b/sound/voicegroups/encounter_magma.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup087:: - voice_keysplit_all voicegroup001 +voice_group encounter_magma + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup087:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup028.inc b/sound/voicegroups/encounter_male.inc similarity index 96% rename from sound/voicegroups/voicegroup028.inc rename to sound/voicegroups/encounter_male.inc index 9af19f1879..80cc90476c 100644 --- a/sound/voicegroups/voicegroup028.inc +++ b/sound/voicegroups/encounter_male.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup028:: - voice_keysplit_all voicegroup001 +voice_group encounter_male + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 3, 0, 1, 0, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup028:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup061.inc b/sound/voicegroups/encounter_may.inc similarity index 97% rename from sound/voicegroups/voicegroup061.inc rename to sound/voicegroups/encounter_may.inc index d73730ecbc..d4915bb36e 100644 --- a/sound/voicegroups/voicegroup061.inc +++ b/sound/voicegroups/encounter_may.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup061:: - voice_keysplit_all voicegroup001 +voice_group encounter_may + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup061:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup043.inc b/sound/voicegroups/encounter_rich.inc similarity index 94% rename from sound/voicegroups/voicegroup043.inc rename to sound/voicegroups/encounter_rich.inc index d6bd30bcba..d5ed5ddcc0 100644 --- a/sound/voicegroups/voicegroup043.inc +++ b/sound/voicegroups/encounter_rich.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup043:: +voice_group encounter_rich voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup043:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,7 +57,7 @@ voicegroup043:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup069.inc b/sound/voicegroups/encounter_suspicious.inc similarity index 96% rename from sound/voicegroups/voicegroup069.inc rename to sound/voicegroups/encounter_suspicious.inc index 26ea294051..41f59bc128 100644 --- a/sound/voicegroups/voicegroup069.inc +++ b/sound/voicegroups/encounter_suspicious.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup069:: - voice_keysplit_all voicegroup001 +voice_group encounter_suspicious + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup069:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,7 +57,7 @@ voicegroup069:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup036.inc b/sound/voicegroups/encounter_swimmer.inc similarity index 96% rename from sound/voicegroups/voicegroup036.inc rename to sound/voicegroups/encounter_swimmer.inc index c3d2df146c..eaafd5e332 100644 --- a/sound/voicegroups/voicegroup036.inc +++ b/sound/voicegroups/encounter_swimmer.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup036:: - voice_keysplit_all voicegroup001 +voice_group encounter_swimmer + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup036:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup036:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup095.inc b/sound/voicegroups/encounter_twins.inc similarity index 98% rename from sound/voicegroups/voicegroup095.inc rename to sound/voicegroups/encounter_twins.inc index 96b531f8ed..be0a7d70e9 100644 --- a/sound/voicegroups/voicegroup095.inc +++ b/sound/voicegroups/encounter_twins.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup095:: - voice_keysplit_all voicegroup001 +voice_group encounter_twins + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup102.inc b/sound/voicegroups/end.inc similarity index 99% rename from sound/voicegroups/voicegroup102.inc rename to sound/voicegroups/end.inc index 197ed891be..07da4dfad0 100644 --- a/sound/voicegroups/voicegroup102.inc +++ b/sound/voicegroups/end.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup102:: +voice_group end voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup068.inc b/sound/voicegroups/ever_grande.inc similarity index 96% rename from sound/voicegroups/voicegroup068.inc rename to sound/voicegroups/ever_grande.inc index 787ce997b7..bd8acc879e 100644 --- a/sound/voicegroups/voicegroup068.inc +++ b/sound/voicegroups/ever_grande.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup068:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group ever_grande + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup068:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup026.inc b/sound/voicegroups/evolution.inc similarity index 96% rename from sound/voicegroups/voicegroup026.inc rename to sound/voicegroups/evolution.inc index d18047d582..b3513a15e7 100644 --- a/sound/voicegroups/voicegroup026.inc +++ b/sound/voicegroups/evolution.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup026:: - voice_keysplit_all voicegroup001 +voice_group evolution + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup026:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup083.inc b/sound/voicegroups/fallarbor.inc similarity index 91% rename from sound/voicegroups/voicegroup083.inc rename to sound/voicegroups/fallarbor.inc index 4f2fcd809f..3cc2ba6bbe 100644 --- a/sound/voicegroups/voicegroup083.inc +++ b/sound/voicegroups/fallarbor.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup083:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group fallarbor + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup083:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup083:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup012.inc b/sound/voicegroups/fanfare.inc similarity index 92% rename from sound/voicegroups/voicegroup012.inc rename to sound/voicegroups/fanfare.inc index 2fe7cf8180..671564a9bc 100644 --- a/sound/voicegroups/voicegroup012.inc +++ b/sound/voicegroups/fanfare.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup012:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group fanfare + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_directsound 60, 0, DirectSoundWaveData_trinity_30303_mega_bass, 255, 178, 180, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup012:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup012:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup066.inc b/sound/voicegroups/follow_me.inc similarity index 98% rename from sound/voicegroups/voicegroup066.inc rename to sound/voicegroups/follow_me.inc index af4a7f8410..d1b4297392 100644 --- a/sound/voicegroups/voicegroup066.inc +++ b/sound/voicegroups/follow_me.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup066:: - voice_keysplit_all voicegroup001 +voice_group follow_me + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup032.inc b/sound/voicegroups/fortree.inc similarity index 97% rename from sound/voicegroups/voicegroup032.inc rename to sound/voicegroups/fortree.inc index dc60bbdf3b..6f12c7ad94 100644 --- a/sound/voicegroups/voicegroup032.inc +++ b/sound/voicegroups/fortree.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup032:: - voice_keysplit_all voicegroup016 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group fortree + voice_keysplit_all voicegroup_petalburg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup129.inc b/sound/voicegroups/frlg_sfx.inc similarity index 98% rename from sound/voicegroups/voicegroup129.inc rename to sound/voicegroups/frlg_sfx.inc index 8e136bdf48..eadd0959c4 100644 --- a/sound/voicegroups/voicegroup129.inc +++ b/sound/voicegroups/frlg_sfx.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup129:: +voice_group frlg_sfx voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 @@ -58,7 +57,7 @@ voicegroup129:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup072.inc b/sound/voicegroups/game_corner.inc similarity index 94% rename from sound/voicegroups/voicegroup072.inc rename to sound/voicegroups/game_corner.inc index 50fa4e4cfa..127fe4ea05 100644 --- a/sound/voicegroups/voicegroup072.inc +++ b/sound/voicegroups/game_corner.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup072:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group game_corner + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup072:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup072:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup013.inc b/sound/voicegroups/gym.inc similarity index 93% rename from sound/voicegroups/voicegroup013.inc rename to sound/voicegroups/gym.inc index f99c6f3cdc..c4297ff663 100644 --- a/sound/voicegroups/voicegroup013.inc +++ b/sound/voicegroups/gym.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup013:: - voice_keysplit_all voicegroup001 +voice_group gym + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup013:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup013:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup082.inc b/sound/voicegroups/hall_of_fame.inc similarity index 94% rename from sound/voicegroups/voicegroup082.inc rename to sound/voicegroups/hall_of_fame.inc index b6b5506f1a..82651a41e6 100644 --- a/sound/voicegroups/voicegroup082.inc +++ b/sound/voicegroups/hall_of_fame.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup082:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group hall_of_fame + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup082:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup082:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup093.inc b/sound/voicegroups/hall_of_fame_room.inc similarity index 95% rename from sound/voicegroups/voicegroup093.inc rename to sound/voicegroups/hall_of_fame_room.inc index 8cea357335..842ef77514 100644 --- a/sound/voicegroups/voicegroup093.inc +++ b/sound/voicegroups/hall_of_fame_room.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup093:: - voice_keysplit_all voicegroup001 +voice_group hall_of_fame_room + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup093:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup093:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup056.inc b/sound/voicegroups/help.inc similarity index 96% rename from sound/voicegroups/voicegroup056.inc rename to sound/voicegroups/help.inc index ec543b9b33..6bb535c8a3 100644 --- a/sound/voicegroups/voicegroup056.inc +++ b/sound/voicegroups/help.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup056:: - voice_keysplit_all voicegroup001 +voice_group help + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup056:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup056:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup060.inc b/sound/voicegroups/intro.inc similarity index 93% rename from sound/voicegroups/voicegroup060.inc rename to sound/voicegroups/intro.inc index 448841e625..66da0b3051 100644 --- a/sound/voicegroups/voicegroup060.inc +++ b/sound/voicegroups/intro.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup060:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group intro + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup060:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 128, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup060:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup088.inc b/sound/voicegroups/intro_battle.inc similarity index 93% rename from sound/voicegroups/voicegroup088.inc rename to sound/voicegroups/intro_battle.inc index 8f6f216884..8845d3c714 100644 --- a/sound/voicegroups/voicegroup088.inc +++ b/sound/voicegroups/intro_battle.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup088:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group intro_battle + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 @@ -48,7 +47,7 @@ voicegroup088:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup088:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup009.inc b/sound/voicegroups/keysplits/french_horn.inc similarity index 84% rename from sound/voicegroups/voicegroup009.inc rename to sound/voicegroups/keysplits/french_horn.inc index 4a51a02ca3..193fa3957c 100644 --- a/sound/voicegroups/voicegroup009.inc +++ b/sound/voicegroups/keysplits/french_horn.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup009:: +voice_group french_horn_keysplit voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_60, 255, 0, 224, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_french_horn_72, 255, 0, 218, 165 diff --git a/sound/voicegroups/voicegroup005.inc b/sound/voicegroups/keysplits/piano.inc similarity index 92% rename from sound/voicegroups/voicegroup005.inc rename to sound/voicegroups/keysplits/piano.inc index 584451a62f..93484ea8b2 100644 --- a/sound/voicegroups/voicegroup005.inc +++ b/sound/voicegroups/keysplits/piano.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup005:: +voice_group piano_keysplit voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_48, 255, 252, 0, 239 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_60, 255, 250, 0, 221 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_piano1_72, 255, 250, 0, 221 diff --git a/sound/voicegroups/voicegroup006.inc b/sound/voicegroups/keysplits/strings.inc similarity index 90% rename from sound/voicegroups/voicegroup006.inc rename to sound/voicegroups/keysplits/strings.inc index 52b2b335f2..27e445e359 100644 --- a/sound/voicegroups/voicegroup006.inc +++ b/sound/voicegroups/keysplits/strings.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup006:: +voice_group strings_keysplit voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_60, 255, 0, 255, 196 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_72, 255, 0, 255, 196 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_string_ensemble_84, 255, 0, 255, 196 diff --git a/sound/voicegroups/keysplits/trumpet.inc b/sound/voicegroups/keysplits/trumpet.inc new file mode 100644 index 0000000000..eb38b7de74 --- /dev/null +++ b/sound/voicegroups/keysplits/trumpet.inc @@ -0,0 +1,5 @@ +voice_group trumpet_keysplit + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 + diff --git a/sound/voicegroups/voicegroup008.inc b/sound/voicegroups/keysplits/tuba.inc similarity index 86% rename from sound/voicegroups/voicegroup008.inc rename to sound/voicegroups/keysplits/tuba.inc index 7fc874e87a..5d00a8000a 100644 --- a/sound/voicegroups/voicegroup008.inc +++ b/sound/voicegroups/keysplits/tuba.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup008:: +voice_group tuba_keysplit voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_39, 255, 0, 255, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tuba_51, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup054.inc b/sound/voicegroups/lilycove.inc similarity index 95% rename from sound/voicegroups/voicegroup054.inc rename to sound/voicegroups/lilycove.inc index ddd17ed995..8988ade2b1 100644 --- a/sound/voicegroups/voicegroup054.inc +++ b/sound/voicegroups/lilycove.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup054:: - voice_keysplit_all voicegroup001 +voice_group lilycove + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup054:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup054:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup020.inc b/sound/voicegroups/lilycove_museum.inc similarity index 94% rename from sound/voicegroups/voicegroup020.inc rename to sound/voicegroups/lilycove_museum.inc index 8449fbdd60..06ee86ea9d 100644 --- a/sound/voicegroups/voicegroup020.inc +++ b/sound/voicegroups/lilycove_museum.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup020:: - voice_keysplit voicegroup005, KeySplitTable1 +voice_group lilycove_museum + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup020:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,7 +57,7 @@ voicegroup020:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup041.inc b/sound/voicegroups/link_contest_p1.inc similarity index 95% rename from sound/voicegroups/voicegroup041.inc rename to sound/voicegroups/link_contest_p1.inc index def4e46b00..7b1857db1c 100644 --- a/sound/voicegroups/voicegroup041.inc +++ b/sound/voicegroups/link_contest_p1.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup041:: - voice_keysplit_all voicegroup001 +voice_group link_contest_p1 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup041:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup041:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup040.inc b/sound/voicegroups/link_contest_p2.inc similarity index 95% rename from sound/voicegroups/voicegroup040.inc rename to sound/voicegroups/link_contest_p2.inc index f390cb3d85..dd547e3662 100644 --- a/sound/voicegroups/voicegroup040.inc +++ b/sound/voicegroups/link_contest_p2.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup040:: - voice_keysplit_all voicegroup001 +voice_group link_contest_p2 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup040:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup040:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup042.inc b/sound/voicegroups/link_contest_p3.inc similarity index 95% rename from sound/voicegroups/voicegroup042.inc rename to sound/voicegroups/link_contest_p3.inc index 1298ddbd52..f9d5559a5e 100644 --- a/sound/voicegroups/voicegroup042.inc +++ b/sound/voicegroups/link_contest_p3.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup042:: - voice_keysplit_all voicegroup001 +voice_group link_contest_p3 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup042:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup042:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup039.inc b/sound/voicegroups/link_contest_p4.inc similarity index 95% rename from sound/voicegroups/voicegroup039.inc rename to sound/voicegroups/link_contest_p4.inc index 9e8d16df0b..2abcd10dab 100644 --- a/sound/voicegroups/voicegroup039.inc +++ b/sound/voicegroups/link_contest_p4.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup039:: - voice_keysplit_all voicegroup001 +voice_group link_contest_p4 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup039:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup039:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup051.inc b/sound/voicegroups/littleroot.inc similarity index 94% rename from sound/voicegroups/voicegroup051.inc rename to sound/voicegroups/littleroot.inc index d3a144622a..2817a022af 100644 --- a/sound/voicegroups/voicegroup051.inc +++ b/sound/voicegroups/littleroot.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup051:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group littleroot + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 2, 1, 4, 4, 2 @@ -48,7 +47,7 @@ voicegroup051:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 99 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup034.inc b/sound/voicegroups/littleroot_test.inc similarity index 94% rename from sound/voicegroups/voicegroup034.inc rename to sound/voicegroups/littleroot_test.inc index fe973b84c3..1788f263c0 100644 --- a/sound/voicegroups/voicegroup034.inc +++ b/sound/voicegroups/littleroot_test.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup034:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group littleroot_test + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 1, 4, 2 @@ -48,7 +47,7 @@ voicegroup034:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup052.inc b/sound/voicegroups/mt_chimney.inc similarity index 94% rename from sound/voicegroups/voicegroup052.inc rename to sound/voicegroups/mt_chimney.inc index 438e2d5f17..2255c50d75 100644 --- a/sound/voicegroups/voicegroup052.inc +++ b/sound/voicegroups/mt_chimney.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup052:: - voice_keysplit_all voicegroup001 +voice_group mt_chimney + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 3, 1, 2, 6, 0 voice_square_2 60, 0, 3, 1, 2, 6, 0 @@ -48,7 +47,7 @@ voicegroup052:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup052:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup078.inc b/sound/voicegroups/mt_pyre.inc similarity index 96% rename from sound/voicegroups/voicegroup078.inc rename to sound/voicegroups/mt_pyre.inc index e3ef10feb7..5d7caa771b 100644 --- a/sound/voicegroups/voicegroup078.inc +++ b/sound/voicegroups/mt_pyre.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup078:: - voice_keysplit_all voicegroup001 +voice_group mt_pyre + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup078:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup078:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup080.inc b/sound/voicegroups/mt_pyre_exterior.inc similarity index 96% rename from sound/voicegroups/voicegroup080.inc rename to sound/voicegroups/mt_pyre_exterior.inc index 6d627ad92e..7f4c2e4363 100644 --- a/sound/voicegroups/voicegroup080.inc +++ b/sound/voicegroups/mt_pyre_exterior.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup080:: - voice_keysplit_all voicegroup001 +voice_group mt_pyre_exterior + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup080:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup080:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup023.inc b/sound/voicegroups/oceanic_museum.inc similarity index 93% rename from sound/voicegroups/voicegroup023.inc rename to sound/voicegroups/oceanic_museum.inc index eede8dc019..1b072e2f44 100644 --- a/sound/voicegroups/voicegroup023.inc +++ b/sound/voicegroups/oceanic_museum.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup023:: - voice_keysplit voicegroup005, KeySplitTable1 - voice_keysplit_all voicegroup001 +voice_group oceanic_museum + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup023:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup023:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup019.inc b/sound/voicegroups/oldale.inc similarity index 94% rename from sound/voicegroups/voicegroup019.inc rename to sound/voicegroups/oldale.inc index a983659c39..177f45c53e 100644 --- a/sound/voicegroups/voicegroup019.inc +++ b/sound/voicegroups/oldale.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup019:: +voice_group oldale voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup019:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup019:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/petalburg.inc b/sound/voicegroups/petalburg.inc new file mode 100644 index 0000000000..ff49460b51 --- /dev/null +++ b/sound/voicegroups/petalburg.inc @@ -0,0 +1,130 @@ +voice_group petalburg + voice_keysplit_all voicegroup_petalburg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 + voice_square_2 60, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 0, 2 + voice_noise_alt 60, 0, 0, 0, 1, 0, 1 + diff --git a/sound/voicegroups/voicegroup018.inc b/sound/voicegroups/petalburg_woods.inc similarity index 96% rename from sound/voicegroups/voicegroup018.inc rename to sound/voicegroups/petalburg_woods.inc index 30b63bb26e..5dbe72c9a9 100644 --- a/sound/voicegroups/voicegroup018.inc +++ b/sound/voicegroups/petalburg_woods.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup018:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group petalburg_woods + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 0, 0, 1, 7, 1 @@ -48,7 +47,7 @@ voicegroup018:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup046.inc b/sound/voicegroups/poke_center.inc similarity index 97% rename from sound/voicegroups/voicegroup046.inc rename to sound/voicegroups/poke_center.inc index f653241e35..edcf645bfa 100644 --- a/sound/voicegroups/voicegroup046.inc +++ b/sound/voicegroups/poke_center.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup046:: - voice_keysplit voicegroup005, KeySplitTable1 +voice_group poke_center + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_programmable_wave_alt 60, 0, ProgrammableWaveData_14, 0, 1, 12, 0 voice_square_1_alt 60, 0, 0, 0, 1, 1, 9, 0 voice_square_2_alt 60, 0, 2, 0, 2, 6, 3 @@ -48,7 +47,7 @@ voicegroup046:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup050.inc b/sound/voicegroups/poke_mart.inc similarity index 97% rename from sound/voicegroups/voicegroup050.inc rename to sound/voicegroups/poke_mart.inc index 6b45664eb0..cc6580d5ae 100644 --- a/sound/voicegroups/voicegroup050.inc +++ b/sound/voicegroups/poke_mart.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup050:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group poke_mart + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup109.inc b/sound/voicegroups/rayquaza_appears.inc similarity index 97% rename from sound/voicegroups/voicegroup109.inc rename to sound/voicegroups/rayquaza_appears.inc index a999143737..f7cddd3881 100644 --- a/sound/voicegroups/voicegroup109.inc +++ b/sound/voicegroups/rayquaza_appears.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup109:: - voice_keysplit_all voicegroup004 +voice_group rayquaza_appears + voice_keysplit_all voicegroup_emerald_drumset_2 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup105.inc b/sound/voicegroups/register_match_call.inc similarity index 97% rename from sound/voicegroups/voicegroup105.inc rename to sound/voicegroups/register_match_call.inc index a1a1bc2d61..b35b30fb36 100644 --- a/sound/voicegroups/voicegroup105.inc +++ b/sound/voicegroups/register_match_call.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup105:: - voice_keysplit_all voicegroup002 +voice_group register_match_call + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup179.inc b/sound/voicegroups/rg_caught_intro.inc similarity index 88% rename from sound/voicegroups/voicegroup179.inc rename to sound/voicegroups/rg_caught_intro.inc index e69cace5b8..b2623ba7a0 100644 --- a/sound/voicegroups/voicegroup179.inc +++ b/sound/voicegroups/rg_caught_intro.inc @@ -1,8 +1,7 @@ - .align 2 -voicegroup179:: - voice_keysplit_all voicegroup177 - voice_keysplit_all voicegroup176 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_caught_intro + voice_keysplit_all voicegroup_frlg_fanfare_drumset_1 + voice_keysplit_all voicegroup_frlg_fanfare_drumset_2 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup179:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup179:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup168.inc b/sound/voicegroups/rg_celadon.inc similarity index 95% rename from sound/voicegroups/voicegroup168.inc rename to sound/voicegroups/rg_celadon.inc index ea6b59d2ef..9f9dc36cf9 100644 --- a/sound/voicegroups/voicegroup168.inc +++ b/sound/voicegroups/rg_celadon.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup168:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_celadon + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup168:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup168:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup138.inc b/sound/voicegroups/rg_cinnabar.inc similarity index 95% rename from sound/voicegroups/voicegroup138.inc rename to sound/voicegroups/rg_cinnabar.inc index 227538f5dc..90c207b675 100644 --- a/sound/voicegroups/voicegroup138.inc +++ b/sound/voicegroups/rg_cinnabar.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup138:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_cinnabar + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup138:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup138:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup149.inc b/sound/voicegroups/rg_credits.inc similarity index 91% rename from sound/voicegroups/voicegroup149.inc rename to sound/voicegroups/rg_credits.inc index c0239fef95..951a578236 100644 --- a/sound/voicegroups/voicegroup149.inc +++ b/sound/voicegroups/rg_credits.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup149:: - voice_keysplit_all voicegroup190 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_credits + voice_keysplit_all voicegroup_rg_credits_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1_alt 60, 0, 0, 2, 0, 0, 12, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup149:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 153 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup149:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup141.inc b/sound/voicegroups/rg_cycling.inc similarity index 95% rename from sound/voicegroups/voicegroup141.inc rename to sound/voicegroups/rg_cycling.inc index 1e556a21b6..57e225141b 100644 --- a/sound/voicegroups/voicegroup141.inc +++ b/sound/voicegroups/rg_cycling.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup141:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_cycling + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup141:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup141:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/rg_dex_rating.inc b/sound/voicegroups/rg_dex_rating.inc new file mode 100644 index 0000000000..b349e6a132 --- /dev/null +++ b/sound/voicegroups/rg_dex_rating.inc @@ -0,0 +1,90 @@ +voice_group rg_dex_rating + voice_keysplit_all voicegroup_frlg_fanfare_drumset_1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 7, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 0 + diff --git a/sound/voicegroups/voicegroup144.inc b/sound/voicegroups/rg_encounter_boy.inc similarity index 96% rename from sound/voicegroups/voicegroup144.inc rename to sound/voicegroups/rg_encounter_boy.inc index 87830a387b..27d34d9136 100644 --- a/sound/voicegroups/voicegroup144.inc +++ b/sound/voicegroups/rg_encounter_boy.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup144:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_encounter_boy + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup144:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup184.inc b/sound/voicegroups/rg_encounter_deoxys.inc similarity index 99% rename from sound/voicegroups/voicegroup184.inc rename to sound/voicegroups/rg_encounter_deoxys.inc index 86f392e65c..7b7fd5bd98 100644 --- a/sound/voicegroups/voicegroup184.inc +++ b/sound/voicegroups/rg_encounter_deoxys.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup184:: +voice_group rg_encounter_deoxys voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup143.inc b/sound/voicegroups/rg_encounter_girl.inc similarity index 96% rename from sound/voicegroups/voicegroup143.inc rename to sound/voicegroups/rg_encounter_girl.inc index 9cb286ac13..6e9989e6be 100644 --- a/sound/voicegroups/voicegroup143.inc +++ b/sound/voicegroups/rg_encounter_girl.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup143:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_encounter_girl + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup143:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/rg_encounter_rival.inc b/sound/voicegroups/rg_encounter_rival.inc new file mode 100644 index 0000000000..445cbad320 --- /dev/null +++ b/sound/voicegroups/rg_encounter_rival.inc @@ -0,0 +1,130 @@ +voice_group rg_encounter_rival + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 + voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 6, 0 + voice_noise_alt 60, 0, 0, 0, 1, 3, 1 + diff --git a/sound/voicegroups/voicegroup142.inc b/sound/voicegroups/rg_encounter_rocket.inc similarity index 98% rename from sound/voicegroups/voicegroup142.inc rename to sound/voicegroups/rg_encounter_rocket.inc index af5b809bf8..69fd532a0e 100644 --- a/sound/voicegroups/voicegroup142.inc +++ b/sound/voicegroups/rg_encounter_rocket.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup142:: - voice_keysplit_all voicegroup002 +voice_group rg_encounter_rocket + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup131.inc b/sound/voicegroups/rg_follow_me.inc similarity index 97% rename from sound/voicegroups/voicegroup131.inc rename to sound/voicegroups/rg_follow_me.inc index 029afa5be5..5f7563da82 100644 --- a/sound/voicegroups/voicegroup131.inc +++ b/sound/voicegroups/rg_follow_me.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup131:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_follow_me + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 128, 204, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup167.inc b/sound/voicegroups/rg_fuchsia.inc similarity index 97% rename from sound/voicegroups/voicegroup167.inc rename to sound/voicegroups/rg_fuchsia.inc index 0213b7aec0..c2b9ff1d16 100644 --- a/sound/voicegroups/voicegroup167.inc +++ b/sound/voicegroups/rg_fuchsia.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup167:: - voice_keysplit_all voicegroup002 +voice_group rg_fuchsia + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup167:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup132.inc b/sound/voicegroups/rg_game_corner.inc similarity index 94% rename from sound/voicegroups/voicegroup132.inc rename to sound/voicegroups/rg_game_corner.inc index 2806916bca..fb7c6f615e 100644 --- a/sound/voicegroups/voicegroup132.inc +++ b/sound/voicegroups/rg_game_corner.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup132:: - voice_keysplit_all voicegroup002 +voice_group rg_game_corner + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup132:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 165, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup132:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup181.inc b/sound/voicegroups/rg_game_freak.inc similarity index 95% rename from sound/voicegroups/voicegroup181.inc rename to sound/voicegroups/rg_game_freak.inc index 92df8710a8..8a7d475dc9 100644 --- a/sound/voicegroups/voicegroup181.inc +++ b/sound/voicegroups/rg_game_freak.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup181:: +voice_group rg_game_freak voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup134.inc b/sound/voicegroups/rg_gym.inc similarity index 93% rename from sound/voicegroups/voicegroup134.inc rename to sound/voicegroups/rg_gym.inc index 1bc01fed07..78791967fa 100644 --- a/sound/voicegroups/voicegroup134.inc +++ b/sound/voicegroups/rg_gym.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup134:: - voice_keysplit_all voicegroup001 +voice_group rg_gym + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup134:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup134:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup145.inc b/sound/voicegroups/rg_hall_of_fame.inc similarity index 95% rename from sound/voicegroups/voicegroup145.inc rename to sound/voicegroups/rg_hall_of_fame.inc index 96cda70e48..b982805140 100644 --- a/sound/voicegroups/voicegroup145.inc +++ b/sound/voicegroups/rg_hall_of_fame.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup145:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_hall_of_fame + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup145:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup145:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup140.inc b/sound/voicegroups/rg_heal.inc similarity index 71% rename from sound/voicegroups/voicegroup140.inc rename to sound/voicegroups/rg_heal.inc index 8206cca1d2..01efe859ed 100644 --- a/sound/voicegroups/voicegroup140.inc +++ b/sound/voicegroups/rg_heal.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup140:: - voice_keysplit_all voicegroup001 +voice_group rg_heal + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 diff --git a/sound/voicegroups/voicegroup136.inc b/sound/voicegroups/rg_intro_fight.inc similarity index 96% rename from sound/voicegroups/voicegroup136.inc rename to sound/voicegroups/rg_intro_fight.inc index 0428c8c004..3b7d70b77b 100644 --- a/sound/voicegroups/voicegroup136.inc +++ b/sound/voicegroups/rg_intro_fight.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup136:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_intro_fight + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup136:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup135.inc b/sound/voicegroups/rg_jigglypuff.inc similarity index 97% rename from sound/voicegroups/voicegroup135.inc rename to sound/voicegroups/rg_jigglypuff.inc index 2ea22bf969..8c0abfcb10 100644 --- a/sound/voicegroups/voicegroup135.inc +++ b/sound/voicegroups/rg_jigglypuff.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup135:: - voice_keysplit_all voicegroup002 +voice_group rg_jigglypuff + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup139.inc b/sound/voicegroups/rg_lavender.inc similarity index 94% rename from sound/voicegroups/voicegroup139.inc rename to sound/voicegroups/rg_lavender.inc index e8969de570..59dcb20293 100644 --- a/sound/voicegroups/voicegroup139.inc +++ b/sound/voicegroups/rg_lavender.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup139:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_lavender + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup139:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 @@ -58,9 +57,9 @@ voicegroup139:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup147.inc b/sound/voicegroups/rg_mt_moon.inc similarity index 94% rename from sound/voicegroups/voicegroup147.inc rename to sound/voicegroups/rg_mt_moon.inc index 4767815824..026bb7edc8 100644 --- a/sound/voicegroups/voicegroup147.inc +++ b/sound/voicegroups/rg_mt_moon.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup147:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_mt_moon + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup147:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup183.inc b/sound/voicegroups/rg_mystery_gift.inc similarity index 98% rename from sound/voicegroups/voicegroup183.inc rename to sound/voicegroups/rg_mystery_gift.inc index ff49e3763b..8f26abe0e0 100644 --- a/sound/voicegroups/voicegroup183.inc +++ b/sound/voicegroups/rg_mystery_gift.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup183:: - voice_keysplit_all voicegroup002 +voice_group rg_mystery_gift + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup182.inc b/sound/voicegroups/rg_new_game.inc similarity index 91% rename from sound/voicegroups/voicegroup182.inc rename to sound/voicegroups/rg_new_game.inc index ec39554958..ffcbcdf748 100644 --- a/sound/voicegroups/voicegroup182.inc +++ b/sound/voicegroups/rg_new_game.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup182:: - voice_keysplit_all voicegroup002 +voice_group rg_new_game + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup182:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 76 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup182:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup161.inc b/sound/voicegroups/rg_oak.inc similarity index 94% rename from sound/voicegroups/voicegroup161.inc rename to sound/voicegroups/rg_oak.inc index c334fa2647..be46da360b 100644 --- a/sound/voicegroups/voicegroup161.inc +++ b/sound/voicegroups/rg_oak.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup161:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_oak + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup161:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup161:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup160.inc b/sound/voicegroups/rg_oak_lab.inc similarity index 96% rename from sound/voicegroups/voicegroup160.inc rename to sound/voicegroups/rg_oak_lab.inc index 160d0cad8f..65fa559da3 100644 --- a/sound/voicegroups/voicegroup160.inc +++ b/sound/voicegroups/rg_oak_lab.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup160:: - voice_keysplit_all voicegroup001 +voice_group rg_oak_lab + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup160:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup178.inc b/sound/voicegroups/rg_obtain_key_item.inc similarity index 97% rename from sound/voicegroups/voicegroup178.inc rename to sound/voicegroups/rg_obtain_key_item.inc index 026d7bb3d8..e9f2bc0078 100644 --- a/sound/voicegroups/voicegroup178.inc +++ b/sound/voicegroups/rg_obtain_key_item.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup178:: - voice_keysplit_all voicegroup177 +voice_group rg_obtain_key_item + voice_keysplit_all voicegroup_frlg_fanfare_drumset_1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup159.inc b/sound/voicegroups/rg_pallet.inc similarity index 98% rename from sound/voicegroups/voicegroup159.inc rename to sound/voicegroups/rg_pallet.inc index f1d2046560..91836ad8dc 100644 --- a/sound/voicegroups/voicegroup159.inc +++ b/sound/voicegroups/rg_pallet.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup159:: +voice_group rg_pallet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup159:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup173.inc b/sound/voicegroups/rg_pewter.inc similarity index 96% rename from sound/voicegroups/voicegroup173.inc rename to sound/voicegroups/rg_pewter.inc index 46979c6258..bdac72177d 100644 --- a/sound/voicegroups/voicegroup173.inc +++ b/sound/voicegroups/rg_pewter.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup173:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_pewter + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup173:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup180.inc b/sound/voicegroups/rg_photo.inc similarity index 98% rename from sound/voicegroups/voicegroup180.inc rename to sound/voicegroups/rg_photo.inc index ea182d38e5..a871efd3d4 100644 --- a/sound/voicegroups/voicegroup180.inc +++ b/sound/voicegroups/rg_photo.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup180:: +voice_group rg_photo voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 64, 249, 0, 188 diff --git a/sound/voicegroups/voicegroup162.inc b/sound/voicegroups/rg_poke_center.inc similarity index 96% rename from sound/voicegroups/voicegroup162.inc rename to sound/voicegroups/rg_poke_center.inc index 3a532b23ee..26abb41add 100644 --- a/sound/voicegroups/voicegroup162.inc +++ b/sound/voicegroups/rg_poke_center.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup162:: - voice_keysplit_all voicegroup002 +voice_group rg_poke_center + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup162:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup148.inc b/sound/voicegroups/rg_poke_mansion.inc similarity index 96% rename from sound/voicegroups/voicegroup148.inc rename to sound/voicegroups/rg_poke_mansion.inc index 4fc324df88..a1d24e89fd 100644 --- a/sound/voicegroups/voicegroup148.inc +++ b/sound/voicegroups/rg_poke_mansion.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup148:: - voice_keysplit_all voicegroup002 +voice_group rg_poke_mansion + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup148:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,7 +57,7 @@ voicegroup148:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup165.inc b/sound/voicegroups/rg_poke_tower.inc similarity index 94% rename from sound/voicegroups/voicegroup165.inc rename to sound/voicegroups/rg_poke_tower.inc index c3262766cb..a05561c50a 100644 --- a/sound/voicegroups/voicegroup165.inc +++ b/sound/voicegroups/rg_poke_tower.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup165:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_poke_tower + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup165:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 226 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1_alt 60, 0, 0, 2, 0, 2, 10, 1 voice_square_2_alt 60, 0, 2, 0, 2, 6, 6 @@ -58,9 +57,9 @@ voicegroup165:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup133.inc b/sound/voicegroups/rg_rocket_hideout.inc similarity index 94% rename from sound/voicegroups/voicegroup133.inc rename to sound/voicegroups/rg_rocket_hideout.inc index be70f6ae33..8d3d81a008 100644 --- a/sound/voicegroups/voicegroup133.inc +++ b/sound/voicegroups/rg_rocket_hideout.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup133:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_rocket_hideout + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup133:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup133:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup150.inc b/sound/voicegroups/rg_route1.inc similarity index 98% rename from sound/voicegroups/voicegroup150.inc rename to sound/voicegroups/rg_route1.inc index c51150d782..237e091282 100644 --- a/sound/voicegroups/voicegroup150.inc +++ b/sound/voicegroups/rg_route1.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup150:: - voice_keysplit_all voicegroup002 +voice_group rg_route1 + voice_keysplit_all voicegroup_frlg_drumset voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup153.inc b/sound/voicegroups/rg_route11.inc similarity index 93% rename from sound/voicegroups/voicegroup153.inc rename to sound/voicegroups/rg_route11.inc index 7206c7ba3d..1ee794137b 100644 --- a/sound/voicegroups/voicegroup153.inc +++ b/sound/voicegroups/rg_route11.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup153:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_route11 + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup153:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup153:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup151.inc b/sound/voicegroups/rg_route24.inc similarity index 91% rename from sound/voicegroups/voicegroup151.inc rename to sound/voicegroups/rg_route24.inc index 29571169d6..7e50c4824f 100644 --- a/sound/voicegroups/voicegroup151.inc +++ b/sound/voicegroups/rg_route24.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup151:: - voice_keysplit_all voicegroup002 +voice_group rg_route24 + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup151:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 127 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup151:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup152.inc b/sound/voicegroups/rg_route3.inc similarity index 94% rename from sound/voicegroups/voicegroup152.inc rename to sound/voicegroups/rg_route3.inc index 06ccc3ae9d..781d2b9a41 100644 --- a/sound/voicegroups/voicegroup152.inc +++ b/sound/voicegroups/rg_route3.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup152:: - voice_keysplit_all voicegroup002 +voice_group rg_route3 + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup152:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup152:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup188.inc b/sound/voicegroups/rg_sevii_45.inc similarity index 96% rename from sound/voicegroups/voicegroup188.inc rename to sound/voicegroups/rg_sevii_45.inc index 8556bcd4d2..c81a569a9b 100644 --- a/sound/voicegroups/voicegroup188.inc +++ b/sound/voicegroups/rg_sevii_45.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup188:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_sevii_45 + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup188:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/rg_sevii_67.inc b/sound/voicegroups/rg_sevii_67.inc new file mode 100644 index 0000000000..6a35208337 --- /dev/null +++ b/sound/voicegroups/rg_sevii_67.inc @@ -0,0 +1,130 @@ +voice_group rg_sevii_67 + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 + voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 + voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 + voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_1, 0, 7, 15, 2 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 2, 7, 0 + voice_noise_alt 60, 0, 0, 0, 1, 9, 1 + diff --git a/sound/voicegroups/voicegroup187.inc b/sound/voicegroups/rg_sevii_route.inc similarity index 94% rename from sound/voicegroups/voicegroup187.inc rename to sound/voicegroups/rg_sevii_route.inc index 640912505a..5b5370a15e 100644 --- a/sound/voicegroups/voicegroup187.inc +++ b/sound/voicegroups/rg_sevii_route.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup187:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_sevii_route + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup187:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup187:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup166.inc b/sound/voicegroups/rg_silph.inc similarity index 94% rename from sound/voicegroups/voicegroup166.inc rename to sound/voicegroups/rg_silph.inc index edd94624c0..0de5b368fa 100644 --- a/sound/voicegroups/voicegroup166.inc +++ b/sound/voicegroups/rg_silph.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup166:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_silph + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup166:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup166:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup163.inc b/sound/voicegroups/rg_ss_anne.inc similarity index 95% rename from sound/voicegroups/voicegroup163.inc rename to sound/voicegroups/rg_ss_anne.inc index cd7c6ebef2..931b86ed10 100644 --- a/sound/voicegroups/voicegroup163.inc +++ b/sound/voicegroups/rg_ss_anne.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup163:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_ss_anne + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup163:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup163:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_unknown_18, 255, 0, 206, 204 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup164.inc b/sound/voicegroups/rg_surf.inc similarity index 96% rename from sound/voicegroups/voicegroup164.inc rename to sound/voicegroups/rg_surf.inc index d64cfd33ad..b134793f73 100644 --- a/sound/voicegroups/voicegroup164.inc +++ b/sound/voicegroups/rg_surf.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup164:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_surf + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 180, 108, 209 @@ -48,7 +47,7 @@ voicegroup164:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup186.inc b/sound/voicegroups/rg_teachy_tv_menu.inc similarity index 98% rename from sound/voicegroups/voicegroup186.inc rename to sound/voicegroups/rg_teachy_tv_menu.inc index 18dc71d70d..160fbf3d07 100644 --- a/sound/voicegroups/voicegroup186.inc +++ b/sound/voicegroups/rg_teachy_tv_menu.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup186:: +voice_group rg_teachy_tv_menu voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup137.inc b/sound/voicegroups/rg_title.inc similarity index 94% rename from sound/voicegroups/voicegroup137.inc rename to sound/voicegroups/rg_title.inc index cf7422cd23..abfea6de70 100644 --- a/sound/voicegroups/voicegroup137.inc +++ b/sound/voicegroups/rg_title.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup137:: - voice_keysplit_all voicegroup002 +voice_group rg_title + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup137:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup137:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup001.inc b/sound/voicegroups/rg_unused.inc similarity index 62% rename from sound/voicegroups/voicegroup001.inc rename to sound/voicegroups/rg_unused.inc index 20a2795dc1..8dac5129ad 100644 --- a/sound/voicegroups/voicegroup001.inc +++ b/sound/voicegroups/rg_unused.inc @@ -1,5 +1,8 @@ - .align 2 -voicegroup001:: +voice_group rg_unused + voice_keysplit_all voicegroup_frlg_fanfare_drumset_1 + voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -8,25 +11,17 @@ voicegroup001:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 1, 6, 0 - voice_programmable_wave 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 1, 6, 0 - voice_square_2 60, 0, 3, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 0, 0, 1, 6, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 diff --git a/sound/voicegroups/rg_unused_2.inc b/sound/voicegroups/rg_unused_2.inc new file mode 100644 index 0000000000..3b46ec9777 --- /dev/null +++ b/sound/voicegroups/rg_unused_2.inc @@ -0,0 +1,6 @@ +voice_group rg_unused_2 + voice_keysplit_all voicegroup_frlg_drumset + voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 + voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 + diff --git a/sound/voicegroups/voicegroup172.inc b/sound/voicegroups/rg_vermillion.inc similarity index 95% rename from sound/voicegroups/voicegroup172.inc rename to sound/voicegroups/rg_vermillion.inc index ffd981c830..8c840c14c1 100644 --- a/sound/voicegroups/voicegroup172.inc +++ b/sound/voicegroups/rg_vermillion.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup172:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_vermillion + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 @@ -48,7 +47,7 @@ voicegroup172:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup172:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup171.inc b/sound/voicegroups/rg_victory_gym_leader.inc similarity index 93% rename from sound/voicegroups/voicegroup171.inc rename to sound/voicegroups/rg_victory_gym_leader.inc index f4ae315ce5..76b53e7c32 100644 --- a/sound/voicegroups/voicegroup171.inc +++ b/sound/voicegroups/rg_victory_gym_leader.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup171:: - voice_keysplit_all voicegroup001 +voice_group rg_victory_gym_leader + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup171:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup171:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup154.inc b/sound/voicegroups/rg_victory_road.inc similarity index 92% rename from sound/voicegroups/voicegroup154.inc rename to sound/voicegroups/rg_victory_road.inc index ce70e65d57..5b578c74e4 100644 --- a/sound/voicegroups/voicegroup154.inc +++ b/sound/voicegroups/rg_victory_road.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup154:: - voice_keysplit_all voicegroup002 +voice_group rg_victory_road + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup154:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 127, 154, 235 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup154:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup169.inc b/sound/voicegroups/rg_victory_trainer.inc similarity index 96% rename from sound/voicegroups/voicegroup169.inc rename to sound/voicegroups/rg_victory_trainer.inc index 77ee6ffee4..eb1d34f117 100644 --- a/sound/voicegroups/voicegroup169.inc +++ b/sound/voicegroups/rg_victory_trainer.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup169:: - voice_keysplit_all voicegroup001 +voice_group rg_victory_trainer + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup169:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup025.inc b/sound/voicegroups/rg_victory_wild.inc similarity index 94% rename from sound/voicegroups/voicegroup025.inc rename to sound/voicegroups/rg_victory_wild.inc index 3449629469..bb48fcadea 100644 --- a/sound/voicegroups/voicegroup025.inc +++ b/sound/voicegroups/rg_victory_wild.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup025:: - voice_keysplit_all voicegroup001 +voice_group rg_victory_wild + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup025:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup146.inc b/sound/voicegroups/rg_viridian_forest.inc similarity index 97% rename from sound/voicegroups/voicegroup146.inc rename to sound/voicegroups/rg_viridian_forest.inc index b0f1b92d6f..4c703102c9 100644 --- a/sound/voicegroups/voicegroup146.inc +++ b/sound/voicegroups/rg_viridian_forest.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup146:: - voice_keysplit_all voicegroup002 +voice_group rg_viridian_forest + voice_keysplit_all voicegroup_frlg_drumset voice_directsound 60, 0, DirectSoundWaveData_steinway_b_piano, 255, 165, 103, 235 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup146:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup158.inc b/sound/voicegroups/rg_vs_champion.inc similarity index 94% rename from sound/voicegroups/voicegroup158.inc rename to sound/voicegroups/rg_vs_champion.inc index 50fa566068..9068f8d504 100644 --- a/sound/voicegroups/voicegroup158.inc +++ b/sound/voicegroups/rg_vs_champion.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup158:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_vs_champion + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @@ -48,7 +47,7 @@ voicegroup158:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 153 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup158:: voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 255, 0, 255, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 236, 188 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup185.inc b/sound/voicegroups/rg_vs_deoxys.inc similarity index 95% rename from sound/voicegroups/voicegroup185.inc rename to sound/voicegroups/rg_vs_deoxys.inc index 879a4e8883..172ec41bd0 100644 --- a/sound/voicegroups/voicegroup185.inc +++ b/sound/voicegroups/rg_vs_deoxys.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup185:: - voice_keysplit_all voicegroup002 +voice_group rg_vs_deoxys + voice_keysplit_all voicegroup_frlg_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup185:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup185:: voice_directsound 60, 0, DirectSoundWaveData_classical_choir_voice_ahhs, 85, 0, 154, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup155.inc b/sound/voicegroups/rg_vs_gym_leader.inc similarity index 94% rename from sound/voicegroups/voicegroup155.inc rename to sound/voicegroups/rg_vs_gym_leader.inc index 8150754aab..85d7705a27 100644 --- a/sound/voicegroups/voicegroup155.inc +++ b/sound/voicegroups/rg_vs_gym_leader.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup155:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_vs_gym_leader + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 @@ -48,7 +47,7 @@ voicegroup155:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup155:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup156.inc b/sound/voicegroups/rg_vs_trainer.inc similarity index 94% rename from sound/voicegroups/voicegroup156.inc rename to sound/voicegroups/rg_vs_trainer.inc index 374464fff9..265366c166 100644 --- a/sound/voicegroups/voicegroup156.inc +++ b/sound/voicegroups/rg_vs_trainer.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup156:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_vs_trainer + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup156:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup156:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup157.inc b/sound/voicegroups/rg_vs_wild.inc similarity index 94% rename from sound/voicegroups/voicegroup157.inc rename to sound/voicegroups/rg_vs_wild.inc index 7dd93abd0a..b006a5dc2b 100644 --- a/sound/voicegroups/voicegroup157.inc +++ b/sound/voicegroups/rg_vs_wild.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup157:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group rg_vs_wild + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @@ -48,7 +47,7 @@ voicegroup157:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup157:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup038.inc b/sound/voicegroups/roulette.inc similarity index 98% rename from sound/voicegroups/voicegroup038.inc rename to sound/voicegroups/roulette.inc index bcb211d6f5..351d232173 100644 --- a/sound/voicegroups/voicegroup038.inc +++ b/sound/voicegroups/roulette.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup038:: - voice_keysplit_all voicegroup001 +voice_group roulette + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup011.inc b/sound/voicegroups/route101.inc similarity index 97% rename from sound/voicegroups/voicegroup011.inc rename to sound/voicegroups/route101.inc index 5527cc3698..2fb66ade3e 100644 --- a/sound/voicegroups/voicegroup011.inc +++ b/sound/voicegroups/route101.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup011:: - voice_keysplit_all voicegroup022 +voice_group route101 + voice_keysplit_all voicegroup_route101_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup011:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup047.inc b/sound/voicegroups/route104.inc similarity index 94% rename from sound/voicegroups/voicegroup047.inc rename to sound/voicegroups/route104.inc index 84fa9335a8..9a4056df70 100644 --- a/sound/voicegroups/voicegroup047.inc +++ b/sound/voicegroups/route104.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup047:: - voice_keysplit_all voicegroup001 +voice_group route104 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup047:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup047:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup010.inc b/sound/voicegroups/route110.inc similarity index 91% rename from sound/voicegroups/voicegroup010.inc rename to sound/voicegroups/route110.inc index 8d0f7a56dd..30cb3dedf5 100644 --- a/sound/voicegroups/voicegroup010.inc +++ b/sound/voicegroups/route110.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup010:: - voice_keysplit_all voicegroup031 +voice_group route110 + voice_keysplit_all voicegroup_route110_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup010:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup010:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup055.inc b/sound/voicegroups/route111.inc similarity index 94% rename from sound/voicegroups/voicegroup055.inc rename to sound/voicegroups/route111.inc index 9157030e83..b4ef9e9fae 100644 --- a/sound/voicegroups/voicegroup055.inc +++ b/sound/voicegroups/route111.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup055:: - voice_keysplit_all voicegroup001 +voice_group route111 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup055:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup055:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup064.inc b/sound/voicegroups/route113.inc similarity index 96% rename from sound/voicegroups/voicegroup064.inc rename to sound/voicegroups/route113.inc index fa56af03ea..9751155097 100644 --- a/sound/voicegroups/voicegroup064.inc +++ b/sound/voicegroups/route113.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup064:: - voice_keysplit_all voicegroup001 +voice_group route113 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup064:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup064:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup048.inc b/sound/voicegroups/route119.inc similarity index 91% rename from sound/voicegroups/voicegroup048.inc rename to sound/voicegroups/route119.inc index eeb5b682a3..a6b76d54cd 100644 --- a/sound/voicegroups/voicegroup048.inc +++ b/sound/voicegroups/route119.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup048:: - voice_keysplit_all voicegroup001 +voice_group route119 + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup048:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup048:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup014.inc b/sound/voicegroups/route120.inc similarity index 91% rename from sound/voicegroups/voicegroup014.inc rename to sound/voicegroups/route120.inc index 6ce0897d10..b1a529d292 100644 --- a/sound/voicegroups/voicegroup014.inc +++ b/sound/voicegroups/route120.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup014:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group route120 + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 1, 6, 1 @@ -48,7 +47,7 @@ voicegroup014:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup014:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/route122.inc b/sound/voicegroups/route122.inc new file mode 100644 index 0000000000..a18d0142df --- /dev/null +++ b/sound/voicegroups/route122.inc @@ -0,0 +1,89 @@ +voice_group route122 + voice_keysplit_all voicegroup_rs_drumset + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 + voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 + voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 1 + voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 + diff --git a/sound/voicegroups/voicegroup127.inc b/sound/voicegroups/rs_sfx_1.inc similarity index 98% rename from sound/voicegroups/voicegroup127.inc rename to sound/voicegroups/rs_sfx_1.inc index 476d3f48f6..d07f1d8812 100644 --- a/sound/voicegroups/voicegroup127.inc +++ b/sound/voicegroups/rs_sfx_1.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup127:: +voice_group rs_sfx_1 voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 249, 103, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup127:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup128.inc b/sound/voicegroups/rs_sfx_2.inc similarity index 99% rename from sound/voicegroups/voicegroup128.inc rename to sound/voicegroups/rs_sfx_2.inc index 69b52d29d6..b93f29b0ff 100644 --- a/sound/voicegroups/voicegroup128.inc +++ b/sound/voicegroups/rs_sfx_2.inc @@ -1,5 +1,4 @@ - .align 2 -voicegroup128:: +voice_group rs_sfx_2 voice_directsound_no_resample 60, 0, DirectSoundWaveData_bicycle_bell, 255, 249, 0, 165 voice_directsound_alt 60, 0, DirectSoundWaveData_bicycle_bell, 255, 0, 255, 165 voice_directsound 60, 0, DirectSoundWaveData_unknown_synth_snare, 255, 0, 255, 165 diff --git a/sound/voicegroups/voicegroup045.inc b/sound/voicegroups/rustboro.inc similarity index 96% rename from sound/voicegroups/voicegroup045.inc rename to sound/voicegroups/rustboro.inc index 2e2016e439..035c96f073 100644 --- a/sound/voicegroups/voicegroup045.inc +++ b/sound/voicegroups/rustboro.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup045:: - voice_keysplit_all voicegroup001 +voice_group rustboro + voice_keysplit_all voicegroup_rs_drumset voice_square_1_alt 60, 0, 0, 1, 0, 2, 0, 1 voice_square_1_alt 60, 0, 0, 3, 1, 2, 6, 0 voice_square_2_alt 60, 0, 3, 1, 2, 6, 0 @@ -10,7 +9,7 @@ voicegroup045:: voice_programmable_wave_alt 60, 0, ProgrammableWaveData_4, 1, 7, 15, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup045:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup074.inc b/sound/voicegroups/safari_zone.inc similarity index 98% rename from sound/voicegroups/voicegroup074.inc rename to sound/voicegroups/safari_zone.inc index 1c3c67f8dc..29eb4db861 100644 --- a/sound/voicegroups/voicegroup074.inc +++ b/sound/voicegroups/safari_zone.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup074:: - voice_keysplit_all voicegroup001 +voice_group safari_zone + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup077.inc b/sound/voicegroups/sailing.inc similarity index 97% rename from sound/voicegroups/voicegroup077.inc rename to sound/voicegroups/sailing.inc index 994d9f411d..4dc40de7d9 100644 --- a/sound/voicegroups/voicegroup077.inc +++ b/sound/voicegroups/sailing.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup077:: - voice_keysplit_all voicegroup001 +voice_group sailing + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup077:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/school.inc b/sound/voicegroups/school.inc new file mode 100644 index 0000000000..8490de2e67 --- /dev/null +++ b/sound/voicegroups/school.inc @@ -0,0 +1,4 @@ +voice_group school + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_keysplit voicegroup_piano_keysplit, keysplit_piano + diff --git a/sound/voicegroups/voicegroup084.inc b/sound/voicegroups/sealed_chamber.inc similarity index 96% rename from sound/voicegroups/voicegroup084.inc rename to sound/voicegroups/sealed_chamber.inc index 510b37c23a..98fda0afa6 100644 --- a/sound/voicegroups/voicegroup084.inc +++ b/sound/voicegroups/sealed_chamber.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup084:: - voice_keysplit_all voicegroup001 +voice_group sealed_chamber + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup084:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup084:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup079.inc b/sound/voicegroups/slateport.inc similarity index 96% rename from sound/voicegroups/voicegroup079.inc rename to sound/voicegroups/slateport.inc index 42b51faea4..10aea36b33 100644 --- a/sound/voicegroups/voicegroup079.inc +++ b/sound/voicegroups/slateport.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup079:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group slateport + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup079:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup091.inc b/sound/voicegroups/sootopolis.inc similarity index 94% rename from sound/voicegroups/voicegroup091.inc rename to sound/voicegroups/sootopolis.inc index 28a64ab488..742e4e4dfa 100644 --- a/sound/voicegroups/voicegroup091.inc +++ b/sound/voicegroups/sootopolis.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup091:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group sootopolis + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup091:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup091:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup017.inc b/sound/voicegroups/surf.inc similarity index 93% rename from sound/voicegroups/voicegroup017.inc rename to sound/voicegroups/surf.inc index 06738d297b..924a9c7832 100644 --- a/sound/voicegroups/voicegroup017.inc +++ b/sound/voicegroups/surf.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup017:: - voice_keysplit_all voicegroup001 +voice_group surf + voice_keysplit_all voicegroup_rs_drumset voice_square_2_alt 60, 0, 2, 0, 3, 3, 1 voice_square_1_alt 60, 0, 0, 2, 0, 3, 3, 1 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup017:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 204 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup017:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup059.inc b/sound/voicegroups/title.inc similarity index 91% rename from sound/voicegroups/voicegroup059.inc rename to sound/voicegroups/title.inc index 5a45d437d3..629171779c 100644 --- a/sound/voicegroups/voicegroup059.inc +++ b/sound/voicegroups/title.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup059:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group title + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 1, 1, 1, 6, 2 @@ -48,7 +47,7 @@ voicegroup059:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 239 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup059:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup094.inc b/sound/voicegroups/trick_house.inc similarity index 95% rename from sound/voicegroups/voicegroup094.inc rename to sound/voicegroups/trick_house.inc index b52e958926..beb29c395f 100644 --- a/sound/voicegroups/voicegroup094.inc +++ b/sound/voicegroups/trick_house.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup094:: - voice_keysplit_all voicegroup001 +voice_group trick_house + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup094:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup094:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup057.inc b/sound/voicegroups/underwater.inc similarity index 97% rename from sound/voicegroups/voicegroup057.inc rename to sound/voicegroups/underwater.inc index 391b7cf8bc..40d42107de 100644 --- a/sound/voicegroups/voicegroup057.inc +++ b/sound/voicegroups/underwater.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup057:: - voice_keysplit_all voicegroup001 +voice_group underwater + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup057:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 0, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 193, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup007.inc b/sound/voicegroups/unused.inc similarity index 95% rename from sound/voicegroups/voicegroup007.inc rename to sound/voicegroups/unused.inc index 66bcd3fa6c..ee5a89b715 100644 --- a/sound/voicegroups/voicegroup007.inc +++ b/sound/voicegroups/unused.inc @@ -1,8 +1,4 @@ - .align 2 -voicegroup007:: - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_60, 255, 0, 193, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_72, 255, 0, 193, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_trumpet_84, 255, 0, 193, 127 +voice_group unused voice_square_1_alt 60, 0, 38, 2, 1, 0, 0, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/unused_2.inc b/sound/voicegroups/unused_2.inc new file mode 100644 index 0000000000..d2e1a4cf04 --- /dev/null +++ b/sound/voicegroups/unused_2.inc @@ -0,0 +1,130 @@ +voice_group unused_2 + voice_keysplit_all voicegroup_rs_drumset + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 + voice_noise_alt 60, 0, 0, 0, 1, 7, 1 + diff --git a/sound/voicegroups/voicegroup044.inc b/sound/voicegroups/verdanturf.inc similarity index 95% rename from sound/voicegroups/voicegroup044.inc rename to sound/voicegroups/verdanturf.inc index 9a057754b3..afaeca5043 100644 --- a/sound/voicegroups/voicegroup044.inc +++ b/sound/voicegroups/verdanturf.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup044:: - voice_keysplit voicegroup005, KeySplitTable1 +voice_group verdanturf + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup044:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 226, 0, 38 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup070.inc b/sound/voicegroups/victory_aqua_magma.inc similarity index 96% rename from sound/voicegroups/voicegroup070.inc rename to sound/voicegroups/victory_aqua_magma.inc index 59a43180df..f507d1fc98 100644 --- a/sound/voicegroups/voicegroup070.inc +++ b/sound/voicegroups/victory_aqua_magma.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup070:: - voice_keysplit_all voicegroup001 +voice_group victory_aqua_magma + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup070:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,7 +55,7 @@ voicegroup070:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup024.inc b/sound/voicegroups/victory_gym_leader.inc similarity index 93% rename from sound/voicegroups/voicegroup024.inc rename to sound/voicegroups/victory_gym_leader.inc index 3806b462d6..18dc32f568 100644 --- a/sound/voicegroups/voicegroup024.inc +++ b/sound/voicegroups/victory_gym_leader.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup024:: - voice_keysplit_all voicegroup001 +voice_group victory_gym_leader + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup024:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup024:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup029.inc b/sound/voicegroups/victory_league.inc similarity index 93% rename from sound/voicegroups/voicegroup029.inc rename to sound/voicegroups/victory_league.inc index 7c801afcb3..5e5b517bc4 100644 --- a/sound/voicegroups/voicegroup029.inc +++ b/sound/voicegroups/victory_league.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup029:: - voice_keysplit_all voicegroup001 +voice_group victory_league + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup029:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup029:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup075.inc b/sound/voicegroups/victory_road.inc similarity index 93% rename from sound/voicegroups/voicegroup075.inc rename to sound/voicegroups/victory_road.inc index 86af71af4b..eb20af9e8e 100644 --- a/sound/voicegroups/voicegroup075.inc +++ b/sound/voicegroups/victory_road.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup075:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group victory_road + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup075:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 0, 180, 246 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup075:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup058.inc b/sound/voicegroups/victory_trainer.inc similarity index 96% rename from sound/voicegroups/voicegroup058.inc rename to sound/voicegroups/victory_trainer.inc index 56dff5f5bb..c4674a9cde 100644 --- a/sound/voicegroups/voicegroup058.inc +++ b/sound/voicegroups/victory_trainer.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup058:: - voice_keysplit_all voicegroup001 +voice_group victory_trainer + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup058:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup170.inc b/sound/voicegroups/victory_wild.inc similarity index 94% rename from sound/voicegroups/voicegroup170.inc rename to sound/voicegroups/victory_wild.inc index 43c8ae6df7..de30836168 100644 --- a/sound/voicegroups/voicegroup170.inc +++ b/sound/voicegroups/victory_wild.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup170:: - voice_keysplit_all voicegroup001 +voice_group victory_wild + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,9 +55,9 @@ voicegroup170:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup000.inc b/sound/voicegroups/voicegroup000.inc deleted file mode 100644 index 7a2c5772f9..0000000000 --- a/sound/voicegroups/voicegroup000.inc +++ /dev/null @@ -1,65 +0,0 @@ - .align 2 -voicegroup000:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 2, 0, 0, 9, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_glockenspiel, 255, 165, 51, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_slap_bass, 255, 235, 128, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 115 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 204, 193, 239 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup002.inc b/sound/voicegroups/voicegroup002.inc deleted file mode 100644 index bd6f080aa4..0000000000 --- a/sound/voicegroups/voicegroup002.inc +++ /dev/null @@ -1,57 +0,0 @@ - .align 2 -voicegroup002:: - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_oboe, 255, 165, 154, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_sd90_oboe, 255, 165, 154, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_guitar_separates_power_chord, 255, 165, 206, 127 - voice_directsound 60, 0, DirectSoundWaveData_unused_sc88pro_unison_slap, 255, 165, 206, 127 - voice_directsound 60, 0, DirectSoundWaveData_unknown_snare, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_ohtsuzumi, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_ethnic_flavours_hyoushigi, 255, 0, 255, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 48, 44, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_close_hihat, 255, 127, 0, 188 - voice_directsound 51, 54, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 54, 64, DirectSoundWaveData_unused_sc55_tom, 255, 216, 77, 204 - voice_directsound_no_resample 60, 79, DirectSoundWaveData_unknown_open_hihat, 255, 242, 141, 0 - voice_directsound 57, 69, DirectSoundWaveData_unused_sc55_tom, 255, 210, 77, 204 - voice_directsound 60, 79, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 62, 84, DirectSoundWaveData_unused_sc55_tom, 255, 204, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 70, 49, DirectSoundWaveData_unknown_bell, 255, 165, 103, 231 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_directsound_no_resample 60, 14, DirectSoundWaveData_trinity_cymbal_crash, 255, 235, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_directsound_no_resample 30, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 104, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 94, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_drum_and_percussion_kick, 255, 0, 255, 0 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 180, 175, 228 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sd90_solo_snare, 255, 0, 255, 242 - voice_directsound_no_resample 64, 54, DirectSoundWaveData_sc88pro_tr909_hand_clap, 255, 255, 255, 127 - voice_directsound_no_resample 64, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 64, 24, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 64, 80, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_directsound 68, 34, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 72, 44, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_directsound 76, 84, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound 80, 94, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 226 - voice_directsound_no_resample 33, 89, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound 84, 104, DirectSoundWaveData_sd90_ambient_tom, 255, 0, 255, 235 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 63, 64, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 235, 0, 231 - voice_directsound_no_resample 64, 24, DirectSoundWaveData_dance_drums_ride_bell, 255, 165, 103, 231 - diff --git a/sound/voicegroups/voicegroup015.inc b/sound/voicegroups/voicegroup015.inc deleted file mode 100644 index a528476356..0000000000 --- a/sound/voicegroups/voicegroup015.inc +++ /dev/null @@ -1,95 +0,0 @@ - .align 2 -voicegroup015:: - voice_keysplit_all voicegroup016 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2 60, 0, 3, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 3, 0, 2, 0, 0 - voice_square_2 60, 0, 3, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 3, 0, 6, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 149 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_programmable_wave 60, 0, ProgrammableWaveData_1, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup021.inc b/sound/voicegroups/voicegroup021.inc deleted file mode 100644 index 43aa9150ee..0000000000 --- a/sound/voicegroups/voicegroup021.inc +++ /dev/null @@ -1,54 +0,0 @@ - .align 2 -voicegroup021:: - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 0, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 1, 6, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 1, 6, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 0, 6, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup022.inc b/sound/voicegroups/voicegroup022.inc deleted file mode 100644 index 877f57d6ce..0000000000 --- a/sound/voicegroups/voicegroup022.inc +++ /dev/null @@ -1,68 +0,0 @@ - .align 2 -voicegroup022:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 1, 7, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_7, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 1 - voice_square_1_alt 60, 0, 0, 0, 0, 0, 7, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_kick, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_rnd_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 32, 34, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 67, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 61, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - diff --git a/sound/voicegroups/voicegroup030.inc b/sound/voicegroups/voicegroup030.inc deleted file mode 100644 index 1e1b5088dd..0000000000 --- a/sound/voicegroups/voicegroup030.inc +++ /dev/null @@ -1,58 +0,0 @@ - .align 2 -voicegroup030:: - voice_keysplit_all voicegroup031 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_2_alt 60, 0, 3, 0, 2, 4, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 4, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 216, 90, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 37, 165, 180, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup031.inc b/sound/voicegroups/voicegroup031.inc deleted file mode 100644 index 178d7ec63d..0000000000 --- a/sound/voicegroups/voicegroup031.inc +++ /dev/null @@ -1,68 +0,0 @@ - .align 2 -voicegroup031:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_3, 0, 7, 15, 1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_trinity_big_boned, 255, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 60, 64, DirectSoundWaveData_sc88pro_orchestra_snare, 255, 0, 255, 242 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 32, 49, DirectSoundWaveData_sc88pro_tambourine, 255, 127, 77, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 8, 0, 255, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 30, 54, DirectSoundWaveData_sc88pro_orchestra_cymbal_crash, 255, 246, 0, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 79, DirectSoundWaveData_sc88pro_mute_high_conga, 255, 0, 255, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound_no_resample 72, 74, DirectSoundWaveData_sc88pro_open_low_conga, 255, 0, 255, 0 - diff --git a/sound/voicegroups/voicegroup081.inc b/sound/voicegroups/voicegroup081.inc deleted file mode 100644 index e9c2011e40..0000000000 --- a/sound/voicegroups/voicegroup081.inc +++ /dev/null @@ -1,5 +0,0 @@ - .align 2 -voicegroup081:: - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup005, KeySplitTable1 - diff --git a/sound/voicegroups/voicegroup130.inc b/sound/voicegroups/voicegroup130.inc deleted file mode 100644 index 7044bb38e4..0000000000 --- a/sound/voicegroups/voicegroup130.inc +++ /dev/null @@ -1,182 +0,0 @@ - .align 2 -voicegroup130:: - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_1, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_2, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_3, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_4, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_5, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_6, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_7, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_8, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_9, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_10, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_11, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_12, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_13, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_14, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_15, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_16, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_17, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_18, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_19, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_20, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_21, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_22, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_23, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_24, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_25, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_26, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_27, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_28, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_29, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_30, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_31, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_32, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_33, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_34, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_35, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_36, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_37, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_38, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_39, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_40, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_41, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_42, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_43, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_44, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_45, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_46, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_47, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_48, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_49, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_50, 255, 0, 255, 0 - voice_directsound 60, 0, DirectSoundWaveData_Phoneme_51, 255, 0, 255, 0 - voice_keysplit_all voicegroup001 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion_duplicate, 255, 249, 25, 248 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 1, 7, 1 - diff --git a/sound/voicegroups/voicegroup174.inc b/sound/voicegroups/voicegroup174.inc deleted file mode 100644 index ab7d43fc72..0000000000 --- a/sound/voicegroups/voicegroup174.inc +++ /dev/null @@ -1,160 +0,0 @@ - .align 2 -voicegroup174:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 249, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 255, 0, 255, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_accordion, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_overdrive_guitar, 128, 0, 255, 214 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_high, 128, 0, 255, 206 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_synth_bass, 255, 252, 0, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 209 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 - voice_square_2_alt 60, 0, 3, 0, 2, 3, 4 - voice_square_1_alt 60, 0, 0, 3, 0, 2, 3, 4 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_2, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_special_scream_drive, 255, 0, 255, 165 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_noise_alt 60, 0, 0, 0, 2, 6, 0 - voice_noise_alt 60, 0, 0, 0, 1, 3, 1 - voice_keysplit_all voicegroup177 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 9, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 9, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 255, 165, 154, 127 - voice_keysplit_all voicegroup002 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 3, 1 - voice_square_2_alt 60, 0, 2, 0, 2, 3, 1 - voice_programmable_wave_alt 60, 0, ProgrammableWaveData_5, 0, 7, 15, 0 - diff --git a/sound/voicegroups/voicegroup175.inc b/sound/voicegroups/voicegroup175.inc deleted file mode 100644 index a074f216dd..0000000000 --- a/sound/voicegroups/voicegroup175.inc +++ /dev/null @@ -1,55 +0,0 @@ - .align 2 -voicegroup175:: - voice_keysplit_all voicegroup177 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_xylophone, 255, 235, 0, 204 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 85, 165, 154, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup189.inc b/sound/voicegroups/voicegroup189.inc deleted file mode 100644 index 6c04cd8320..0000000000 --- a/sound/voicegroups/voicegroup189.inc +++ /dev/null @@ -1,95 +0,0 @@ - .align 2 -voicegroup189:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 255, 188, 128, 226 - voice_directsound 60, 65, DirectSoundWaveData_sd90_classical_detuned_ep1_high, 128, 204, 77, 246 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_tubular_bell, 255, 165, 90, 216 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_organ2, 51, 0, 203, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 128, 249, 25, 127 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_nylon_str_guitar, 64, 216, 51, 224 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_fretless_bass, 255, 253, 0, 188 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_directsound 60, 0, DirectSoundWaveData_sc88pro_flute, 255, 127, 231, 127 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1_alt 60, 0, 0, 2, 0, 2, 6, 3 - voice_square_2_alt 60, 0, 3, 0, 2, 7, 2 - voice_square_1_alt 60, 0, 0, 1, 0, 2, 6, 2 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - diff --git a/sound/voicegroups/voicegroup118.inc b/sound/voicegroups/vs_aqua_magma.inc similarity index 93% rename from sound/voicegroups/voicegroup118.inc rename to sound/voicegroups/vs_aqua_magma.inc index 89e66b21d2..4c1f5578dc 100644 --- a/sound/voicegroups/voicegroup118.inc +++ b/sound/voicegroups/vs_aqua_magma.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup118:: - voice_keysplit_all voicegroup001 +voice_group vs_aqua_magma + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup118:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -58,9 +57,9 @@ voicegroup118:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup126.inc b/sound/voicegroups/vs_aqua_magma_leader.inc similarity index 95% rename from sound/voicegroups/voicegroup126.inc rename to sound/voicegroups/vs_aqua_magma_leader.inc index 51959b4f1e..3ca3c3afa4 100644 --- a/sound/voicegroups/voicegroup126.inc +++ b/sound/voicegroups/vs_aqua_magma_leader.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup126:: - voice_keysplit_all voicegroup001 +voice_group vs_aqua_magma_leader + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup126:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup126:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup121.inc b/sound/voicegroups/vs_champion.inc similarity index 91% rename from sound/voicegroups/voicegroup121.inc rename to sound/voicegroups/vs_champion.inc index f09ddd7741..802dde8a45 100644 --- a/sound/voicegroups/voicegroup121.inc +++ b/sound/voicegroups/vs_champion.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup121:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_champion + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup121:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup121:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup125.inc b/sound/voicegroups/vs_elite_four.inc similarity index 92% rename from sound/voicegroups/voicegroup125.inc rename to sound/voicegroups/vs_elite_four.inc index 644002abf7..9c99b4e03b 100644 --- a/sound/voicegroups/voicegroup125.inc +++ b/sound/voicegroups/vs_elite_four.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup125:: - voice_keysplit_all voicegroup001 +voice_group vs_elite_four + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup125:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup125:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup115.inc b/sound/voicegroups/vs_frontier_brain.inc similarity index 94% rename from sound/voicegroups/voicegroup115.inc rename to sound/voicegroups/vs_frontier_brain.inc index eb4f52b878..0167389e38 100644 --- a/sound/voicegroups/voicegroup115.inc +++ b/sound/voicegroups/vs_frontier_brain.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup115:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_frontier_brain + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_detuned_ep1_low, 128, 249, 0, 188 @@ -48,7 +47,7 @@ voicegroup115:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 242, 51, 242 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup115:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 165, 180, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup120.inc b/sound/voicegroups/vs_gym_leader.inc similarity index 92% rename from sound/voicegroups/voicegroup120.inc rename to sound/voicegroups/vs_gym_leader.inc index 2c104fb10b..8aad0a65bc 100644 --- a/sound/voicegroups/voicegroup120.inc +++ b/sound/voicegroups/vs_gym_leader.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup120:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_gym_leader + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 2, 6, 1 @@ -48,7 +47,7 @@ voicegroup120:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup120:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup123.inc b/sound/voicegroups/vs_kyogre_groudon.inc similarity index 95% rename from sound/voicegroups/voicegroup123.inc rename to sound/voicegroups/vs_kyogre_groudon.inc index 6178994cca..326a190438 100644 --- a/sound/voicegroups/voicegroup123.inc +++ b/sound/voicegroups/vs_kyogre_groudon.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup123:: - voice_keysplit_all voicegroup001 +voice_group vs_kyogre_groudon + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup123:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup123:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup116.inc b/sound/voicegroups/vs_mew.inc similarity index 94% rename from sound/voicegroups/voicegroup116.inc rename to sound/voicegroups/vs_mew.inc index a86a87f5d1..052284f396 100644 --- a/sound/voicegroups/voicegroup116.inc +++ b/sound/voicegroups/vs_mew.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup116:: - voice_keysplit_all voicegroup002 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_mew + voice_keysplit_all voicegroup_frlg_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2_alt 60, 0, 3, 0, 2, 6, 5 @@ -48,7 +47,7 @@ voicegroup116:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup116:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sd90_classical_distortion_guitar_low, 255, 0, 255, 127 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup114.inc b/sound/voicegroups/vs_rayquaza.inc similarity index 95% rename from sound/voicegroups/voicegroup114.inc rename to sound/voicegroups/vs_rayquaza.inc index cb078d24c3..c004be789d 100644 --- a/sound/voicegroups/voicegroup114.inc +++ b/sound/voicegroups/vs_rayquaza.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup114:: - voice_keysplit_all voicegroup001 +voice_group vs_rayquaza + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup114:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup114:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup122.inc b/sound/voicegroups/vs_regi.inc similarity index 94% rename from sound/voicegroups/voicegroup122.inc rename to sound/voicegroups/vs_regi.inc index 65356a3d17..ebb9fabd1a 100644 --- a/sound/voicegroups/voicegroup122.inc +++ b/sound/voicegroups/vs_regi.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup122:: - voice_keysplit_all voicegroup001 +voice_group vs_regi + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup122:: voice_directsound 60, 0, DirectSoundWaveData_sc88pro_pizzicato_strings, 255, 216, 0, 165 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -60,7 +59,7 @@ voicegroup122:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup124.inc b/sound/voicegroups/vs_rival.inc similarity index 91% rename from sound/voicegroups/voicegroup124.inc rename to sound/voicegroups/vs_rival.inc index 274d76dcd1..8613db3964 100644 --- a/sound/voicegroups/voicegroup124.inc +++ b/sound/voicegroups/vs_rival.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup124:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_rival + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 2, 0, 2, 3, 1 @@ -48,7 +47,7 @@ voicegroup124:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup124:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup119.inc b/sound/voicegroups/vs_trainer.inc similarity index 92% rename from sound/voicegroups/voicegroup119.inc rename to sound/voicegroups/vs_trainer.inc index 8b7fe24c79..5c8f5b305e 100644 --- a/sound/voicegroups/voicegroup119.inc +++ b/sound/voicegroups/vs_trainer.inc @@ -1,7 +1,6 @@ - .align 2 -voicegroup119:: - voice_keysplit_all voicegroup001 - voice_keysplit voicegroup005, KeySplitTable1 +voice_group vs_trainer + voice_keysplit_all voicegroup_rs_drumset + voice_keysplit voicegroup_piano_keysplit, keysplit_piano voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_2 60, 0, 0, 0, 2, 4, 1 @@ -48,7 +47,7 @@ voicegroup119:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound_no_resample 60, 0, DirectSoundWaveData_sc88pro_timpani_with_snare, 255, 246, 0, 226 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup119:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup117.inc b/sound/voicegroups/vs_wild.inc similarity index 91% rename from sound/voicegroups/voicegroup117.inc rename to sound/voicegroups/vs_wild.inc index 3a86ec4f58..5ce57a0d54 100644 --- a/sound/voicegroups/voicegroup117.inc +++ b/sound/voicegroups/vs_wild.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup117:: - voice_keysplit_all voicegroup001 +voice_group vs_wild + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -48,7 +47,7 @@ voicegroup117:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_harp, 255, 246, 0, 235 voice_directsound 60, 0, DirectSoundWaveData_sc88pro_timpani, 255, 246, 0, 226 - voice_keysplit voicegroup006, KeySplitTable2 + voice_keysplit voicegroup_strings_keysplit, keysplit_strings voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 @@ -56,11 +55,11 @@ voicegroup117:: voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup007, KeySplitTable3 + voice_keysplit voicegroup_trumpet_keysplit, keysplit_trumpet voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup008, KeySplitTable4 + voice_keysplit voicegroup_tuba_keysplit, keysplit_tuba voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 - voice_keysplit voicegroup009, KeySplitTable5 + voice_keysplit voicegroup_french_horn_keysplit, keysplit_french_horn voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/sound/voicegroups/voicegroup090.inc b/sound/voicegroups/weather_groudon.inc similarity index 98% rename from sound/voicegroups/voicegroup090.inc rename to sound/voicegroups/weather_groudon.inc index 4039ad8d14..dde2a4637b 100644 --- a/sound/voicegroups/voicegroup090.inc +++ b/sound/voicegroups/weather_groudon.inc @@ -1,6 +1,5 @@ - .align 2 -voicegroup090:: - voice_keysplit_all voicegroup001 +voice_group weather_groudon + voice_keysplit_all voicegroup_rs_drumset voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 voice_square_1 60, 0, 0, 2, 0, 0, 15, 0 diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 5c0c0b0590..95ac1e43b3 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -4114,8 +4114,8 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) { if (aiData->holdEffects[battlerAtk] == HOLD_EFFECT_CURE_SLP || aiData->holdEffects[battlerAtk] == HOLD_EFFECT_CURE_STATUS - || HasMoveWithEffect(EFFECT_SLEEP_TALK, battlerAtk) - || HasMoveWithEffect(EFFECT_SNORE, battlerAtk) + || HasMoveWithEffect(battlerAtk, EFFECT_SLEEP_TALK) + || HasMoveWithEffect(battlerAtk, EFFECT_SNORE) || aiData->abilities[battlerAtk] == ABILITY_SHED_SKIN || aiData->abilities[battlerAtk] == ABILITY_EARLY_BIRD || (AI_GetWeather() & B_WEATHER_RAIN && gWishFutureKnock.weatherDuration != 1 && aiData->abilities[battlerAtk] == ABILITY_HYDRATION && aiData->holdEffects[battlerAtk] != HOLD_EFFECT_UTILITY_UMBRELLA)) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index c044ff2804..9c8061aabf 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -691,7 +691,7 @@ static bool32 ShouldSwitchIfBadlyStatused(u32 battler) && gAiLogicData->abilities[opposingBattler] != ABILITY_UNAWARE && gAiLogicData->abilities[opposingBattler] != ABILITY_KEEN_EYE && gAiLogicData->abilities[opposingBattler] != ABILITY_MINDS_EYE - && (B_ILLUMINATE_EFFECT >= GEN_9 && gAiLogicData->abilities[opposingBattler] != ABILITY_ILLUMINATE) + && (GetGenConfig(GEN_ILLUMINATE_EFFECT) >= GEN_9 && gAiLogicData->abilities[opposingBattler] != ABILITY_ILLUMINATE) && !(gBattleMons[battler].status2 & STATUS2_FORESIGHT) && !(gStatuses3[battler] & STATUS3_MIRACLE_EYED)) switchMon = FALSE; @@ -1507,6 +1507,24 @@ static u32 GetBestMonDmg(struct Pokemon *party, int firstId, int lastId, u8 inva return bestMonId; } +static u32 GetFirstNonIvalidMon(u32 firstId, u32 lastId, u32 invalidMons, u32 battlerIn1, u32 battlerIn2) +{ + if (!IsDoubleBattle()) + return PARTY_SIZE; + + if (PARTY_SIZE != gBattleStruct->monToSwitchIntoId[battlerIn1] + && PARTY_SIZE != gBattleStruct->monToSwitchIntoId[battlerIn2]) + return PARTY_SIZE; + + for (u32 chosenMonId = (lastId-1); chosenMonId >= firstId; chosenMonId--) + { + if ((1 << (chosenMonId)) & invalidMons) + continue; + return chosenMonId; // first non invalid mon found + } + return PARTY_SIZE; +} + bool32 IsMonGrounded(u16 heldItemEffect, u32 ability, u8 type1, u8 type2) { // List that makes mon not grounded @@ -2045,6 +2063,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, u32 aiMove, hitsToKOAI, maxHitsToKO = 0; u16 bestResist = UQ_4_12(1.0), bestResistEffective = UQ_4_12(1.0), typeMatchup; bool32 isFreeSwitch = IsFreeSwitch(switchType, battlerIn1, opposingBattler), isSwitchinFirst, canSwitchinWin1v1; + u32 invalidMons = 0; // Iterate through mons for (i = firstId; i < lastId; i++) @@ -2056,6 +2075,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, || i == gBattleStruct->monToSwitchIntoId[battlerIn1] || i == gBattleStruct->monToSwitchIntoId[battlerIn2]) { + invalidMons |= 1u << i; continue; } // Save Ace Pokemon for last @@ -2063,6 +2083,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, { aceMonId = i; aceMonCount++; + invalidMons |= 1u << i; continue; } else @@ -2212,6 +2233,11 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, && (IsSwitchOutEffect(GetMoveEffect(gCurrentMove)) || gAiLogicData->ejectButtonSwitch || gAiLogicData->ejectPackSwitch)) return aceMonId; + // Fallback + u32 bestMonId = GetFirstNonIvalidMon(firstId, lastId, invalidMons, battlerIn1, battlerIn2); + if (bestMonId != PARTY_SIZE) + return bestMonId; + return PARTY_SIZE; } @@ -2329,6 +2355,11 @@ u32 GetMostSuitableMonToSwitchInto(u32 battler, enum SwitchType switchType) && (IsSwitchOutEffect(GetMoveEffect(gCurrentMove)) || gAiLogicData->ejectButtonSwitch || gAiLogicData->ejectPackSwitch)) return aceMonId; + // Fallback + bestMonId = GetFirstNonIvalidMon(firstId, lastId, invalidMons, battlerIn1, battlerIn2); + if (bestMonId != PARTY_SIZE) + return bestMonId; + return PARTY_SIZE; } } diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 7b5e8e0d37..667c6199a4 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -1945,7 +1945,7 @@ bool32 ShouldLowerStat(u32 battlerAtk, u32 battlerDef, u32 abilityDef, u32 stat) if (stat == STAT_DEF) return FALSE; case ABILITY_ILLUMINATE: - if (B_ILLUMINATE_EFFECT < GEN_9) + if (GetGenConfig(GEN_ILLUMINATE_EFFECT) < GEN_9) break; case ABILITY_KEEN_EYE: case ABILITY_MINDS_EYE: @@ -2128,7 +2128,7 @@ bool32 ShouldLowerAccuracy(u32 battlerAtk, u32 battlerDef, u32 defAbility) && defAbility != ABILITY_FULL_METAL_BODY && defAbility != ABILITY_KEEN_EYE && defAbility != ABILITY_MINDS_EYE - && (B_ILLUMINATE_EFFECT >= GEN_9 && defAbility != ABILITY_ILLUMINATE) + && (GetGenConfig(GEN_ILLUMINATE_EFFECT) >= GEN_9 && defAbility != ABILITY_ILLUMINATE) && gAiLogicData->holdEffects[battlerDef] != HOLD_EFFECT_CLEAR_AMULET) return TRUE; return FALSE; diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 9bee760800..885b2a922a 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -3122,6 +3122,8 @@ static void LaunchKOAnimation(u32 battlerId, u16 animId, bool32 isFront) u32 species = GetBattlerVisualSpecies(battlerId); u32 spriteId = gBattlerSpriteIds[battlerId]; + gBattleStruct->battlerKOAnimsRunning++; + if (isFront) { LaunchAnimationTaskForFrontSprite(&gSprites[spriteId], animId); diff --git a/src/battle_end_turn.c b/src/battle_end_turn.c index efc790aadd..b3fc0d1d93 100644 --- a/src/battle_end_turn.c +++ b/src/battle_end_turn.c @@ -596,7 +596,7 @@ static bool32 HandleEndTurnLeechSeed(u32 battler) gBattleScripting.animArg2 = gBattlerAttacker; gBattleStruct->moveDamage[gBattlerAttacker] = max(1, GetNonDynamaxMaxHP(battler) / 8); gBattleStruct->moveDamage[gBattlerTarget] = GetDrainedBigRootHp(gBattlerTarget, gBattleStruct->moveDamage[gBattlerAttacker]); - gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE; + gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE; if (GetBattlerAbility(battler) == ABILITY_LIQUID_OOZE) { gBattleStruct->moveDamage[gBattlerTarget] = gBattleStruct->moveDamage[gBattlerTarget] * -1; diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 9b272a51b4..6ca847a272 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -1272,8 +1272,8 @@ void SpriteCB_EnemyShadow(struct Sprite *shadowSprite) } else if (transformSpecies != SPECIES_NONE) { - xOffset = gSpeciesInfo[transformSpecies].enemyShadowXOffset; - yOffset = gSpeciesInfo[transformSpecies].enemyShadowYOffset; + xOffset = gSpeciesInfo[transformSpecies].enemyShadowXOffset + (shadowSprite->tSpriteSide == SPRITE_SIDE_LEFT ? -16 : 16); + yOffset = gSpeciesInfo[transformSpecies].enemyShadowYOffset + 16; size = gSpeciesInfo[transformSpecies].enemyShadowSize; invisible = (B_ENEMY_MON_SHADOW_STYLE >= GEN_4 && P_GBA_STYLE_SPECIES_GFX == FALSE) diff --git a/src/battle_main.c b/src/battle_main.c index 6278d803ee..e96da9f9ce 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3960,7 +3960,7 @@ void BattleTurnPassed(void) gHitMarker &= ~HITMARKER_NO_ATTACKSTRING; gHitMarker &= ~HITMARKER_UNABLE_TO_USE_MOVE; gHitMarker &= ~HITMARKER_PLAYER_FAINTED; - gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; + gHitMarker &= ~HITMARKER_PASSIVE_HP_UPDATE; gBattleScripting.animTurn = 0; gBattleScripting.animTargetsHit = 0; gBattleScripting.moveendState = 0; @@ -5347,7 +5347,7 @@ static void RunTurnActionsFunctions(void) if (gCurrentTurnActionNumber >= gBattlersCount) // everyone did their actions, turn finished { - gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; + gHitMarker &= ~HITMARKER_PASSIVE_HP_UPDATE; gBattleMainFunc = sEndTurnFuncsTable[gBattleOutcome & 0x7F]; } else diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index d749d450d7..bc97a288d8 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1584,7 +1584,7 @@ u32 GetTotalAccuracy(u32 battlerAtk, u32 battlerDef, u32 move, u32 atkAbility, u accStage = gBattleMons[battlerAtk].statStages[STAT_ACC]; evasionStage = gBattleMons[battlerDef].statStages[STAT_EVASION]; if (atkAbility == ABILITY_UNAWARE || atkAbility == ABILITY_KEEN_EYE || atkAbility == ABILITY_MINDS_EYE - || (B_ILLUMINATE_EFFECT >= GEN_9 && atkAbility == ABILITY_ILLUMINATE)) + || (GetGenConfig(GEN_ILLUMINATE_EFFECT) >= GEN_9 && atkAbility == ABILITY_ILLUMINATE)) evasionStage = DEFAULT_STAT_STAGE; if (MoveIgnoresDefenseEvasionStages(move)) evasionStage = DEFAULT_STAT_STAGE; @@ -2272,6 +2272,9 @@ static void Cmd_adjustdamage(void) gBattleStruct->moveDamage[battlerDef] = gBattleMons[battlerDef].hp - 1; gSpecialStatuses[battlerDef].enduredDamage = TRUE; } + + if (gSpecialStatuses[battlerDef].enduredDamage) + gProtectStructs[battlerDef].assuranceDoubled = TRUE; } if (calcSpreadMoveDamage) @@ -2555,14 +2558,14 @@ static void Cmd_waitanimation(void) { CMD_ARGS(); - if (gBattleControllerExecFlags == 0) + if (gBattleControllerExecFlags == 0 && gBattleStruct->battlerKOAnimsRunning == 0) gBattlescriptCurrInstr = cmd->nextInstr; } static void DoublesHPBarReduction(void) { if (gBattleStruct->doneDoublesSpreadHit - || gHitMarker & (HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_DAMAGE)) + || gHitMarker & (HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_PASSIVE_HP_UPDATE)) return; for (u32 battlerDef = 0; battlerDef < gBattlersCount; battlerDef++) @@ -2594,7 +2597,7 @@ static void Cmd_healthbarupdate(void) if (gBattleControllerExecFlags) return; - if (!(gBattleStruct->moveResultFlags[battler] & MOVE_RESULT_NO_EFFECT) || (gHitMarker & HITMARKER_PASSIVE_DAMAGE)) + if (!(gBattleStruct->moveResultFlags[battler] & MOVE_RESULT_NO_EFFECT) || (gHitMarker & HITMARKER_PASSIVE_HP_UPDATE)) { if (DoesSubstituteBlockMove(gBattlerAttacker, battler, gCurrentMove) && gDisableStructs[battler].substituteHP && !(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE)) { @@ -2632,13 +2635,14 @@ static void Cmd_healthbarupdate(void) static void Cmd_datahpupdate(void) { CMD_ARGS(u8 battler); + bool32 isPassiveHpUpdate = gHitMarker & HITMARKER_PASSIVE_HP_UPDATE; if (gBattleControllerExecFlags) return; u32 battler = GetBattlerForBattleScript(cmd->battler); - if (!(gBattleStruct->moveResultFlags[battler] & MOVE_RESULT_NO_EFFECT) || (gHitMarker & HITMARKER_PASSIVE_DAMAGE)) + if (!(gBattleStruct->moveResultFlags[battler] & MOVE_RESULT_NO_EFFECT) || (gHitMarker & HITMARKER_PASSIVE_HP_UPDATE)) { if (DoesSubstituteBlockMove(gBattlerAttacker, battler, gCurrentMove) && gDisableStructs[battler].substituteHP && !(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE)) { @@ -2718,7 +2722,7 @@ static void Cmd_datahpupdate(void) // Note: While physicalDmg/specialDmg below are only distinguished between for Counter/Mirror Coat, they are // used in combination as general damage trackers for other purposes. specialDmg is additionally used // to help determine if a fire move should defrost the target. - if (IsBattleMovePhysical(gCurrentMove) && !(gHitMarker & HITMARKER_PASSIVE_DAMAGE) && effect != EFFECT_PAIN_SPLIT) + if (IsBattleMovePhysical(gCurrentMove) && !(gHitMarker & HITMARKER_PASSIVE_HP_UPDATE) && effect != EFFECT_PAIN_SPLIT) { gProtectStructs[battler].physicalDmg = gBattleStruct->moveDamage[battler]; gSpecialStatuses[battler].physicalDmg = gBattleStruct->moveDamage[battler]; @@ -2726,8 +2730,9 @@ static void Cmd_datahpupdate(void) gProtectStructs[battler].physicalBattlerId = gBattlerAttacker; else gProtectStructs[battler].physicalBattlerId = gBattlerTarget; + gProtectStructs[battler].assuranceDoubled = TRUE; } - else if (!IsBattleMovePhysical(gCurrentMove) && !(gHitMarker & HITMARKER_PASSIVE_DAMAGE) && effect != EFFECT_PAIN_SPLIT) + else if (!IsBattleMovePhysical(gCurrentMove) && !(gHitMarker & HITMARKER_PASSIVE_HP_UPDATE) && effect != EFFECT_PAIN_SPLIT) { // Record special damage/attacker for Mirror Coat gProtectStructs[battler].specialDmg = gBattleStruct->moveDamage[battler]; @@ -2736,22 +2741,25 @@ static void Cmd_datahpupdate(void) gProtectStructs[battler].specialBattlerId = gBattlerAttacker; else gProtectStructs[battler].specialBattlerId = gBattlerTarget; + gProtectStructs[battler].assuranceDoubled = TRUE; } } - gHitMarker &= ~HITMARKER_PASSIVE_DAMAGE; + gHitMarker &= ~HITMARKER_PASSIVE_HP_UPDATE; // Send updated HP BtlController_EmitSetMonData(battler, B_COMM_TO_CONTROLLER, REQUEST_HP_BATTLE, 0, sizeof(gBattleMons[battler].hp), &gBattleMons[battler].hp); MarkBattlerForControllerExec(battler); } if (gBattlerAttacker != gBattlerTarget + && !isPassiveHpUpdate && GetMoveCategory(gCurrentMove) != DAMAGE_CATEGORY_STATUS && IsBattlerTurnDamaged(gBattlerTarget)) gBattleStruct->timesGotHit[GetBattlerSide(gBattlerTarget)][gBattlerPartyIndexes[gBattlerTarget]]++; if (GetMoveEffect(gCurrentMove) == EFFECT_KNOCK_OFF + && !isPassiveHpUpdate && IsBattlerTurnDamaged(gBattlerTarget) - && gBattleMons[gBattlerTarget].item != 0 + && gBattleMons[gBattlerTarget].item != ITEM_NONE && !DoesSubstituteBlockMove(gBattlerAttacker, battler, gCurrentMove) && CanBattlerGetOrLoseItem(gBattlerTarget, gBattleMons[gBattlerTarget].item) && !NoAliveMonsForEitherParty()) @@ -3137,7 +3145,7 @@ void StealTargetItem(u8 battlerStealer, u8 battlerItem) gLastUsedItem = gBattleMons[battlerItem].item; gBattleMons[battlerItem].item = ITEM_NONE; - if (B_STEAL_WILD_ITEMS >= GEN_9 + if (GetGenConfig(GEN_STEAL_WILD_ITEMS) >= GEN_9 && !(gBattleTypeFlags & (BATTLE_TYPE_TRAINER | BATTLE_TYPE_PALACE)) && GetMoveEffect(gCurrentMove) == EFFECT_STEAL_ITEM && battlerStealer == gBattlerAttacker) // ensure that Pickpocket isn't activating this @@ -3722,7 +3730,7 @@ void SetMoveEffect(bool32 primary, bool32 certain) if (gBattleMons[gEffectBattler].statStages[i] != DEFAULT_STAT_STAGE) break; } - if ((gSpecialStatuses[gEffectBattler].physicalDmg || gSpecialStatuses[gEffectBattler].specialDmg) && i != NUM_BATTLE_STATS) + if (IsBattlerTurnDamaged(gEffectBattler) && i != NUM_BATTLE_STATS) { for (i = 0; i < NUM_BATTLE_STATS; i++) gBattleMons[gEffectBattler].statStages[i] = DEFAULT_STAT_STAGE; @@ -5971,7 +5979,7 @@ static void Cmd_playstatchangeanimation(void) && ability != ABILITY_FULL_METAL_BODY && ability != ABILITY_WHITE_SMOKE && !((ability == ABILITY_KEEN_EYE || ability == ABILITY_MINDS_EYE) && currStat == STAT_ACC) - && !(B_ILLUMINATE_EFFECT >= GEN_9 && ability == ABILITY_ILLUMINATE && currStat == STAT_ACC) + && !(GetGenConfig(GEN_ILLUMINATE_EFFECT) >= GEN_9 && ability == ABILITY_ILLUMINATE && currStat == STAT_ACC) && !(ability == ABILITY_HYPER_CUTTER && currStat == STAT_ATK) && !(ability == ABILITY_BIG_PECKS && currStat == STAT_DEF)) { @@ -6255,7 +6263,9 @@ static bool32 HandleMoveEndMoveBlock(u32 moveEffect) switch (moveEffect) { case EFFECT_KNOCK_OFF: - if (gBattleStruct->battlerState[gBattlerTarget].itemCanBeKnockedOff && IsBattlerAlive(gBattlerAttacker)) + if (gBattleStruct->battlerState[gBattlerTarget].itemCanBeKnockedOff + && gBattleMons[gBattlerTarget].item != ITEM_NONE + && IsBattlerAlive(gBattlerAttacker)) { u32 side = GetBattlerSide(gBattlerTarget); gLastUsedItem = gBattleMons[gBattlerTarget].item; @@ -6275,11 +6285,11 @@ static bool32 HandleMoveEndMoveBlock(u32 moveEffect) gWishFutureKnock.knockedOffMons[side] |= 1u << gBattlerPartyIndexes[gBattlerTarget]; } - gBattleStruct->battlerState[gBattlerTarget].itemCanBeKnockedOff = FALSE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_KnockedOff; effect = TRUE; } + gBattleStruct->battlerState[gBattlerTarget].itemCanBeKnockedOff = FALSE; break; case EFFECT_STEAL_ITEM: if (!CanStealItem(gBattlerAttacker, gBattlerTarget, gBattleMons[gBattlerTarget].item) @@ -6303,7 +6313,7 @@ static bool32 HandleMoveEndMoveBlock(u32 moveEffect) { StealTargetItem(gBattlerAttacker, gBattlerTarget); // Attacker steals target item - if (!(B_STEAL_WILD_ITEMS >= GEN_9 + if (!(GetGenConfig(GEN_STEAL_WILD_ITEMS) >= GEN_9 && !(gBattleTypeFlags & (BATTLE_TYPE_TRAINER | BATTLE_TYPE_PALACE)))) { gBattleMons[gBattlerAttacker].item = ITEM_NONE; // Item assigned later on with thief (see MOVEEND_CHANGED_ITEMS) @@ -6623,12 +6633,11 @@ static void Cmd_moveend(void) { gBattleStruct->moveDamage[gBattlerAttacker] = max(1, (gBattleStruct->moveDamage[gBattlerTarget] * GetMoveAbsorbPercentage(gCurrentMove) / 100)); gBattleStruct->moveDamage[gBattlerAttacker] = GetDrainedBigRootHp(gBattlerAttacker, gBattleStruct->moveDamage[gBattlerAttacker]); - gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE; + gHitMarker |= HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE | HITMARKER_PASSIVE_HP_UPDATE; effect = TRUE; if (GetBattlerAbility(gBattlerTarget) == ABILITY_LIQUID_OOZE) { gBattleStruct->moveDamage[gBattlerAttacker] *= -1; - gHitMarker |= HITMARKER_PASSIVE_DAMAGE; gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_ABSORB_OOZE; BattleScriptPushCursor(); gBattlescriptCurrInstr = BattleScript_EffectAbsorbLiquidOoze; @@ -11715,8 +11724,8 @@ static void TryResetProtectUseCounter(u32 battler) enum BattleMoveEffects lastEffect = GetMoveEffect(lastMove); if (lastMove == MOVE_UNAVAILABLE || (!gBattleMoveEffects[lastEffect].usesProtectCounter - && ((B_ALLY_SWITCH_FAIL_CHANCE >= GEN_9 && lastEffect != EFFECT_ALLY_SWITCH) - || B_ALLY_SWITCH_FAIL_CHANCE < GEN_9))) + && ((GetGenConfig(GEN_ALLY_SWITCH_FAIL_CHANCE) >= GEN_9 && lastEffect != EFFECT_ALLY_SWITCH) + || GetGenConfig(GEN_ALLY_SWITCH_FAIL_CHANCE) < GEN_9))) gDisableStructs[battler].protectUses = 0; } @@ -12418,7 +12427,7 @@ static u32 ChangeStatBuffs(s8 statValue, u32 statId, u32 flags, const u8 *BS_ptr } else if (!certain && (((battlerAbility == ABILITY_KEEN_EYE || battlerAbility == ABILITY_MINDS_EYE) && statId == STAT_ACC) - || (B_ILLUMINATE_EFFECT >= GEN_9 && battlerAbility == ABILITY_ILLUMINATE && statId == STAT_ACC) + || (GetGenConfig(GEN_ILLUMINATE_EFFECT) >= GEN_9 && battlerAbility == ABILITY_ILLUMINATE && statId == STAT_ACC) || (battlerAbility == ABILITY_HYPER_CUTTER && statId == STAT_ATK) || (battlerAbility == ABILITY_BIG_PECKS && statId == STAT_DEF))) { @@ -13444,13 +13453,12 @@ static void Cmd_counterdamagecalculator(void) && sideAttacker != sideTarget && gBattleMons[gProtectStructs[gBattlerAttacker].physicalBattlerId].hp) { - gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].physicalDmg * 2; - if (IsAffectedByFollowMe(gBattlerAttacker, sideTarget, gCurrentMove)) gBattlerTarget = gSideTimers[sideTarget].followmeTarget; else gBattlerTarget = gProtectStructs[gBattlerAttacker].physicalBattlerId; + gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].physicalDmg * 2; gBattlescriptCurrInstr = cmd->nextInstr; } else @@ -13471,13 +13479,13 @@ static void Cmd_mirrorcoatdamagecalculator(void) && sideAttacker != sideTarget && gBattleMons[gProtectStructs[gBattlerAttacker].specialBattlerId].hp) { - gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].specialDmg * 2; if (IsAffectedByFollowMe(gBattlerAttacker, sideTarget, gCurrentMove)) gBattlerTarget = gSideTimers[sideTarget].followmeTarget; else gBattlerTarget = gProtectStructs[gBattlerAttacker].specialBattlerId; + gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].specialDmg * 2; gBattlescriptCurrInstr = cmd->nextInstr; } else @@ -15609,7 +15617,7 @@ bool32 DoesDisguiseBlockMove(u32 battler, u32 move) { if (!(gBattleMons[battler].species == SPECIES_MIMIKYU_DISGUISED || gBattleMons[battler].species == SPECIES_MIMIKYU_TOTEM_DISGUISED) || gBattleMons[battler].status2 & STATUS2_TRANSFORMED - || (!gProtectStructs[battler].confusionSelfDmg && (IsBattleMoveStatus(move) || gHitMarker & HITMARKER_PASSIVE_DAMAGE)) + || (!gProtectStructs[battler].confusionSelfDmg && (IsBattleMoveStatus(move) || gHitMarker & HITMARKER_PASSIVE_HP_UPDATE)) || gHitMarker & HITMARKER_IGNORE_DISGUISE || GetBattlerAbility(battler) != ABILITY_DISGUISE) return FALSE; @@ -16725,26 +16733,26 @@ void BS_CalcMetalBurstDmg(void) && sideAttacker != (sideTarget = GetBattlerSide(gProtectStructs[gBattlerAttacker].physicalBattlerId)) && gBattleMons[gProtectStructs[gBattlerAttacker].physicalBattlerId].hp) { - gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].physicalDmg * 150 / 100; if (IsAffectedByFollowMe(gBattlerAttacker, sideTarget, gCurrentMove)) gBattlerTarget = gSideTimers[sideTarget].followmeTarget; else gBattlerTarget = gProtectStructs[gBattlerAttacker].physicalBattlerId; + gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].physicalDmg * 150 / 100; gBattlescriptCurrInstr = cmd->nextInstr; } else if (gProtectStructs[gBattlerAttacker].specialDmg && sideAttacker != (sideTarget = GetBattlerSide(gProtectStructs[gBattlerAttacker].specialBattlerId)) && gBattleMons[gProtectStructs[gBattlerAttacker].specialBattlerId].hp) { - gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].specialDmg * 150 / 100; if (IsAffectedByFollowMe(gBattlerAttacker, sideTarget, gCurrentMove)) gBattlerTarget = gSideTimers[sideTarget].followmeTarget; else gBattlerTarget = gProtectStructs[gBattlerAttacker].specialBattlerId; + gBattleStruct->moveDamage[gBattlerTarget] = gProtectStructs[gBattlerAttacker].specialDmg * 150 / 100; gBattlescriptCurrInstr = cmd->nextInstr; } else @@ -17759,7 +17767,7 @@ void BS_TryAllySwitch(void) { gBattlescriptCurrInstr = cmd->failInstr; } - else if (B_ALLY_SWITCH_FAIL_CHANCE >= GEN_9) + else if (GetGenConfig(GEN_ALLY_SWITCH_FAIL_CHANCE) >= GEN_9) { TryResetProtectUseCounter(gBattlerAttacker); if (sProtectSuccessRates[gDisableStructs[gBattlerAttacker].protectUses] < Random()) @@ -18170,6 +18178,16 @@ void BS_ActivateTerrainChangeAbilities(void) AbilityBattleEffects(ABILITYEFFECT_ON_TERRAIN, battler, 0, 0, 0); } +void BS_ResetTerrainAbilityFlags(void) +{ + NATIVE_ARGS(); + // reset terrain ability checks + for (u32 i = 0; i < gBattlersCount; i++) + gDisableStructs[i].terrainAbilityDone = 0; + + gBattlescriptCurrInstr = cmd->nextInstr; +} + void BS_StoreHealingWish(void) { NATIVE_ARGS(u8 battler); diff --git a/src/battle_util.c b/src/battle_util.c index fb28a6129c..18b8570579 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -855,7 +855,7 @@ void HandleAction_NothingIsFainted(void) gCurrentTurnActionNumber++; gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED - | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_DAMAGE + | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_OBEYS | HITMARKER_SYNCHRONIZE_EFFECT | HITMARKER_CHARGING); } @@ -868,7 +868,7 @@ void HandleAction_ActionFinished(void) gCurrentActionFuncId = gActionsByTurnOrder[gCurrentTurnActionNumber]; SpecialStatusesClear(); gHitMarker &= ~(HITMARKER_DESTINYBOND | HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_ATTACKSTRING_PRINTED - | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_DAMAGE + | HITMARKER_NO_PPDEDUCT | HITMARKER_STATUS_ABILITY_EFFECT | HITMARKER_PASSIVE_HP_UPDATE | HITMARKER_OBEYS | HITMARKER_SYNCHRONIZE_EFFECT | HITMARKER_CHARGING | HITMARKER_IGNORE_DISGUISE); @@ -2311,7 +2311,7 @@ static void CancellerProtean(u32 *effect) u32 moveType = GetBattleMoveType(gCurrentMove); if (ProteanTryChangeType(gBattlerAttacker, GetBattlerAbility(gBattlerAttacker), gCurrentMove, moveType)) { - if (B_PROTEAN_LIBERO == GEN_9) + if (GetGenConfig(GEN_PROTEAN_LIBERO) >= GEN_9) gDisableStructs[gBattlerAttacker].usedProteanLibero = TRUE; PREPARE_TYPE_BUFFER(gBattleTextBuff1, moveType); gBattlerAbility = gBattlerAttacker; @@ -3785,12 +3785,12 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 } break; case ABILITY_SNOW_WARNING: - if (B_SNOW_WARNING >= GEN_9 && TryChangeBattleWeather(battler, BATTLE_WEATHER_SNOW, TRUE)) + if (GetGenConfig(GEN_SNOW_WARNING) >= GEN_9 && TryChangeBattleWeather(battler, BATTLE_WEATHER_SNOW, TRUE)) { BattleScriptPushCursorAndCallback(BattleScript_SnowWarningActivatesSnow); effect++; } - else if (B_SNOW_WARNING < GEN_9 && TryChangeBattleWeather(battler, BATTLE_WEATHER_HAIL, TRUE)) + else if (GetGenConfig(GEN_SNOW_WARNING) < GEN_9 && TryChangeBattleWeather(battler, BATTLE_WEATHER_HAIL, TRUE)) { BattleScriptPushCursorAndCallback(BattleScript_SnowWarningActivatesHail); effect++; @@ -3890,7 +3890,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 { gBattleScripting.savedBattler = gBattlerAttacker; gBattlerAttacker = battler; - if (B_INTREPID_SWORD == GEN_9) + if (GetGenConfig(GEN_INTREPID_SWORD) >= GEN_9) gBattleStruct->partyState[GetBattlerSide(battler)][gBattlerPartyIndexes[battler]].intrepidSwordBoost = TRUE; gSpecialStatuses[battler].switchInAbilityDone = TRUE; SET_STATCHANGER(STAT_ATK, 1, FALSE); @@ -3904,7 +3904,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 { gBattleScripting.savedBattler = gBattlerAttacker; gBattlerAttacker = battler; - if (B_DAUNTLESS_SHIELD == GEN_9) + if (GetGenConfig(GEN_DAUNTLESS_SHIELD) >= GEN_9) gBattleStruct->partyState[GetBattlerSide(battler)][gBattlerPartyIndexes[battler]].dauntlessShieldBoost = TRUE; gSpecialStatuses[battler].switchInAbilityDone = TRUE; SET_STATCHANGER(STAT_DEF, 1, FALSE); @@ -7155,10 +7155,8 @@ u32 ItemBattleEffects(enum ItemCaseId caseID, u32 battler, bool32 moveTurn) case HOLD_EFFECT_LIFE_ORB: if (IsBattlerAlive(gBattlerAttacker) && !(gHitMarker & HITMARKER_UNABLE_TO_USE_MOVE) - && !IsBattleMoveStatus(gCurrentMove) - && (IsBattlerTurnDamaged(gBattlerTarget) || !(gBattleStruct->moveResultFlags[gBattlerTarget] & MOVE_RESULT_NO_EFFECT)) // Needs the second check in case of Substitute + && (IsBattlerTurnDamaged(gBattlerTarget) || gBattleScripting.savedDmg > 0) && GetBattlerAbility(gBattlerAttacker) != ABILITY_MAGIC_GUARD - && !gProtectStructs[gBattlerAttacker].confusionSelfDmg && !IsFutureSightAttackerInParty(gBattlerAttacker, gBattlerTarget, gCurrentMove)) { gBattleStruct->moveDamage[gBattlerAttacker] = GetNonDynamaxMaxHP(gBattlerAttacker) / 10; @@ -8157,7 +8155,7 @@ static inline u32 CalcMoveBasePower(struct DamageCalculationData *damageCalcData basePower = gBattleMons[battlerDef].hp * basePower / gBattleMons[battlerDef].maxHP; break; case EFFECT_ASSURANCE: - if (gProtectStructs[battlerDef].physicalDmg != 0 || gProtectStructs[battlerDef].specialDmg != 0 || gProtectStructs[battlerDef].confusionSelfDmg) + if (gProtectStructs[battlerDef].assuranceDoubled) basePower *= 2; break; case EFFECT_TRUMP_CARD: @@ -9495,7 +9493,7 @@ static inline s32 DoFixedDamageMoveCalc(struct DamageCalculationData *damageCalc dmg = gBattleMons[damageCalcData->battlerAtk].level; break; case EFFECT_PSYWAVE: - randDamage = B_PSYWAVE_DMG >= GEN_6 ? (Random() % 101) : ((Random() % 11) * 10); + randDamage = B_PSYWAVE_DMG >= GEN_5 ? (Random() % 101) : ((Random() % 11) * 10); dmg = gBattleMons[damageCalcData->battlerAtk].level * (randDamage + 50) / 100; break; case EFFECT_FIXED_DAMAGE_ARG: @@ -10889,7 +10887,7 @@ u16 GetUsedHeldItem(u32 battler) bool32 CantPickupItem(u32 battler) { // Used by RandomUniformExcept() for RNG_PICKUP - if (battler == gBattlerAttacker && (B_PICKUP_WILD < GEN_9 || gBattleTypeFlags & (BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK))) + if (battler == gBattlerAttacker && (GetGenConfig(GEN_PICKUP_WILD) < GEN_9 || gBattleTypeFlags & (BATTLE_TYPE_TRAINER | BATTLE_TYPE_LINK))) return TRUE; return !(IsBattlerAlive(battler) && GetUsedHeldItem(battler) && gBattleStruct->battlerState[battler].canPickupItem); } diff --git a/src/data/wild_encounters.json.txt b/src/data/wild_encounters.json.txt deleted file mode 100755 index 8ae70efc6e..0000000000 --- a/src/data/wild_encounters.json.txt +++ /dev/null @@ -1,103 +0,0 @@ -{{ doNotModifyHeader }} - -## for wild_encounter_group in wild_encounter_groups -{% if wild_encounter_group.for_maps %} -## for wild_encounter_field in wild_encounter_group.fields -{% if not existsIn(wild_encounter_field, "groups") %} -## for encounter_rate in wild_encounter_field.encounter_rates -{% if loop.index == 0 %} -#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ loop.index }} {{ encounter_rate }} {% else %}#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ loop.index }} ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ subtract(loop.index, 1) }} + {{ encounter_rate }}{% endif %} {{ setVarInt(wild_encounter_field.type, loop.index) }} -## endfor -#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_TOTAL (ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_SLOT_{{ getVar(wild_encounter_field.type) }}) -{% else %} -## for field_subgroup_key, field_subgroup_subarray in wild_encounter_field.groups -## for field_subgroup_index in field_subgroup_subarray -{% if loop.index == 0 %} -#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_{{ upper(field_subgroup_key) }}_SLOT_{{ field_subgroup_index }} {{ at(wild_encounter_field.encounter_rates, field_subgroup_index) }} {% else %}#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_{{ upper(field_subgroup_key) }}_SLOT_{{ field_subgroup_index }} ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_{{ upper(field_subgroup_key) }}_SLOT_{{ getVar("previous_slot") }} + {{ at(wild_encounter_field.encounter_rates, field_subgroup_index) }}{% endif %}{{ setVarInt(concat(wild_encounter_field.type, field_subgroup_key), field_subgroup_index) }}{{ setVarInt("previous_slot", field_subgroup_index) }} -## endfor -#define ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_{{ upper(field_subgroup_key) }}_TOTAL (ENCOUNTER_CHANCE_{{ upper(wild_encounter_field.type) }}_{{ upper(field_subgroup_key) }}_SLOT_{{ getVar(concat(wild_encounter_field.type, field_subgroup_key)) }}) -## endfor -{% endif %} -## endfor -{% endif %} - - - -## for encounter in wild_encounter_group.encounters -{% if existsIn(encounter, "land_mons") %} -const struct WildPokemon {{ encounter.base_label }}_LandMons[] = -{ -## for wild_mon in encounter.land_mons.mons - { {{ wild_mon.min_level }}, {{ wild_mon.max_level }}, {{ wild_mon.species }} }, -## endfor -}; - -const struct WildPokemonInfo {{ encounter.base_label }}_LandMonsInfo = { {{encounter.land_mons.encounter_rate}}, {{ encounter.base_label }}_LandMons }; -{% endif %} -{% if existsIn(encounter, "water_mons") %} -const struct WildPokemon {{ encounter.base_label }}_WaterMons[] = -{ -## for wild_mon in encounter.water_mons.mons - { {{ wild_mon.min_level }}, {{ wild_mon.max_level }}, {{ wild_mon.species }} }, -## endfor -}; - -const struct WildPokemonInfo {{ encounter.base_label }}_WaterMonsInfo = { {{encounter.water_mons.encounter_rate}}, {{ encounter.base_label }}_WaterMons }; -{% endif %} -{% if existsIn(encounter, "rock_smash_mons") %} -const struct WildPokemon {{ encounter.base_label }}_RockSmashMons[] = -{ -## for wild_mon in encounter.rock_smash_mons.mons - { {{ wild_mon.min_level }}, {{ wild_mon.max_level }}, {{ wild_mon.species }} }, -## endfor -}; - -const struct WildPokemonInfo {{ encounter.base_label }}_RockSmashMonsInfo = { {{encounter.rock_smash_mons.encounter_rate}}, {{ encounter.base_label }}_RockSmashMons }; -{% endif %} -{% if existsIn(encounter, "fishing_mons") %} -const struct WildPokemon {{ encounter.base_label }}_FishingMons[] = -{ -## for wild_mon in encounter.fishing_mons.mons - { {{ wild_mon.min_level }}, {{ wild_mon.max_level }}, {{ wild_mon.species }} }, -## endfor -}; - -const struct WildPokemonInfo {{ encounter.base_label }}_FishingMonsInfo = { {{encounter.fishing_mons.encounter_rate}}, {{ encounter.base_label }}_FishingMons }; -{% endif %} - -{% if existsIn(encounter, "hidden_mons") %} -const struct WildPokemon {{ encounter.base_label }}_HiddenMons[] = -{ -## for wild_mon in encounter.hidden_mons.mons - { {{ wild_mon.min_level }}, {{ wild_mon.max_level }}, {{ wild_mon.species }} }, -## endfor -}; - -const struct WildPokemonInfo {{ encounter.base_label }}_HiddenMonsInfo = { {{encounter.hidden_mons.encounter_rate}}, {{ encounter.base_label }}_HiddenMons }; -{% endif %} - -## endfor -const struct WildPokemonHeader {{ wild_encounter_group.label }}[] = -{ -## for encounter in wild_encounter_group.encounters - { - .mapGroup = {% if wild_encounter_group.for_maps %}MAP_GROUP({{ encounter.map }}){% else %}0{% endif %}, - .mapNum = {% if wild_encounter_group.for_maps %}MAP_NUM({{ encounter.map }}){% else %}{{ loop.index1 }}{% endif %}, - .landMonsInfo = {% if existsIn(encounter, "land_mons") %}&{{ encounter.base_label }}_LandMonsInfo{% else %}NULL{% endif %}, - .waterMonsInfo = {% if existsIn(encounter, "water_mons") %}&{{ encounter.base_label }}_WaterMonsInfo{% else %}NULL{% endif %}, - .rockSmashMonsInfo = {% if existsIn(encounter, "rock_smash_mons") %}&{{ encounter.base_label }}_RockSmashMonsInfo{% else %}NULL{% endif %}, - .fishingMonsInfo = {% if existsIn(encounter, "fishing_mons") %}&{{ encounter.base_label }}_FishingMonsInfo{% else %}NULL{% endif %}, - .hiddenMonsInfo = {% if existsIn(encounter, "hidden_mons") %}&{{ encounter.base_label }}_HiddenMonsInfo{% else %}NULL{% endif %}, - }, -## endfor - { - .mapGroup = MAP_GROUP(MAP_UNDEFINED), - .mapNum = MAP_NUM(MAP_UNDEFINED), - .landMonsInfo = NULL, - .waterMonsInfo = NULL, - .rockSmashMonsInfo = NULL, - .fishingMonsInfo = NULL, - .hiddenMonsInfo = NULL, - }, -}; -## endfor diff --git a/src/field_effect.c b/src/field_effect.c index 1f2feaba8f..82a5394821 100644 --- a/src/field_effect.c +++ b/src/field_effect.c @@ -1650,7 +1650,7 @@ static bool8 FallWarpEffect_End(struct Task *task) #define tState data[0] #define tGoingUp data[1] -static void HideFollowerForFieldEffect(void) +void HideFollowerForFieldEffect(void) { struct ObjectEvent *followerObj = GetFollowerObject(); if (!followerObj || followerObj->invisible) diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c index d02ecbd9fc..55542a3588 100644 --- a/src/field_player_avatar.c +++ b/src/field_player_avatar.c @@ -382,8 +382,16 @@ void PlayerStep(u8 direction, u16 newKeys, u16 heldKeys) DoPlayerAvatarTransition(); if (TryDoMetatileBehaviorForcedMovement() == 0) { - MovePlayerAvatarUsingKeypadInput(direction, newKeys, heldKeys); - PlayerAllowForcedMovementIfMovingSameDirection(); + if (GetFollowerNPCData(FNPC_DATA_FORCED_MOVEMENT) != FALSE) + { + gPlayerAvatar.preventStep = TRUE; + CreateTask(Task_MoveNPCFollowerAfterForcedMovement, 1); + } + else + { + MovePlayerAvatarUsingKeypadInput(direction, newKeys, heldKeys); + PlayerAllowForcedMovementIfMovingSameDirection(); + } } } } @@ -510,7 +518,11 @@ static bool8 DoForcedMovement(u8 direction, void (*moveFunc)(u8)) else { if (collision == COLLISION_LEDGE_JUMP) + { + SetFollowerNPCData(FNPC_DATA_FORCED_MOVEMENT, FALSE); PlayerJumpLedge(direction); + } + playerAvatar->flags |= PLAYER_AVATAR_FLAG_FORCED_MOVE; playerAvatar->runningState = MOVING; return TRUE; @@ -518,12 +530,11 @@ static bool8 DoForcedMovement(u8 direction, void (*moveFunc)(u8)) } else { + if (PlayerHasFollowerNPC()) + SetFollowerNPCData(FNPC_DATA_FORCED_MOVEMENT, TRUE); + playerAvatar->runningState = MOVING; moveFunc(direction); - if (PlayerHasFollowerNPC() - && gObjectEvents[GetFollowerNPCObjectId()].invisible == FALSE - && FindTaskIdByFunc(Task_MoveNPCFollowerAfterForcedMovement) == TASK_NONE) - CreateTask(Task_MoveNPCFollowerAfterForcedMovement, 3); return TRUE; } } diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 7b17f53666..0cf752fd6a 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -1571,12 +1571,14 @@ static void Task_ExitStairs(u8 taskId) tState++; break; } + gObjectEvents[gPlayerAvatar.objectEventId].noShadow = FALSE; } static void ForceStairsMovement(u32 metatileBehavior, s16 *speedX, s16 *speedY) { ObjectEventForceSetHeldMovement(&gObjectEvents[gPlayerAvatar.objectEventId], GetWalkInPlaceNormalMovementAction(GetPlayerFacingDirection())); GetStairsMovementDirection(metatileBehavior, speedX, speedY); + gObjectEvents[gPlayerAvatar.objectEventId].noShadow = TRUE; } #undef tSpeedX #undef tSpeedY @@ -1620,6 +1622,7 @@ static void Task_StairWarp(u8 taskId) LockPlayerFieldControls(); FreezeObjectEvents(); CameraObjectFreeze(); + HideFollowerForFieldEffect(); tState++; break; case 1: diff --git a/src/follower_npc.c b/src/follower_npc.c index d9882b61bf..fcfe60dda8 100644 --- a/src/follower_npc.c +++ b/src/follower_npc.c @@ -83,6 +83,9 @@ void SetFollowerNPCData(enum FollowerNPCDataTypes type, u32 value) case FNPC_DATA_COME_OUT_DOOR: gSaveBlock3Ptr->NPCfollower.comeOutDoorStairs = value; break; + case FNPC_DATA_FORCED_MOVEMENT: + gSaveBlock3Ptr->NPCfollower.forcedMovement = value; + break; case FNPC_DATA_OBJ_ID: gSaveBlock3Ptr->NPCfollower.objId = value; break; @@ -155,6 +158,8 @@ u32 GetFollowerNPCData(enum FollowerNPCDataTypes type) return gSaveBlock3Ptr->NPCfollower.createSurfBlob; case FNPC_DATA_COME_OUT_DOOR: return gSaveBlock3Ptr->NPCfollower.comeOutDoorStairs; + case FNPC_DATA_FORCED_MOVEMENT: + return gSaveBlock3Ptr->NPCfollower.forcedMovement; case FNPC_DATA_OBJ_ID: return gSaveBlock3Ptr->NPCfollower.objId; case FNPC_DATA_CURRENT_SPRITE: @@ -720,9 +725,7 @@ u32 DetermineFollowerNPCState(struct ObjectEvent *follower, u32 state, u32 direc MoveCoords(direction, &followerX, &followerY); nextBehavior = MapGridGetMetatileBehaviorAt(followerX, followerY); - - if (FindTaskIdByFunc(Task_MoveNPCFollowerAfterForcedMovement) == TASK_NONE) - follower->facingDirectionLocked = FALSE; + follower->facingDirectionLocked = FALSE; // Follower won't do delayed movement until player does a movement. if (!IsStateMovement(state) && delayedState) @@ -777,10 +780,6 @@ u32 DetermineFollowerNPCState(struct ObjectEvent *follower, u32 state, u32 direc RETURN_STATE(MOVEMENT_ACTION_WALK_NORMAL_DOWN, direction); case MOVEMENT_ACTION_WALK_FAST_DOWN ... MOVEMENT_ACTION_WALK_FAST_RIGHT: - // Handle player on waterfall. - if (PlayerIsUnderWaterfall(&gObjectEvents[gPlayerAvatar.objectEventId]) && (state == MOVEMENT_ACTION_WALK_FAST_UP)) - return MOVEMENT_INVALID; - // Handle ice tile (some walking animation). if (MetatileBehavior_IsIce(follower->currentMetatileBehavior) || MetatileBehavior_IsTrickHouseSlipperyFloor(follower->currentMetatileBehavior)) follower->disableAnim = TRUE; @@ -789,6 +788,9 @@ u32 DetermineFollowerNPCState(struct ObjectEvent *follower, u32 state, u32 direc if (GetFollowerNPCData(FNPC_DATA_CURRENT_SPRITE) == FOLLOWER_NPC_SPRITE_INDEX_SURF && GetFollowerNPCSprite() == GetFollowerNPCData(FNPC_DATA_GFX_ID)) RETURN_STATE(MOVEMENT_ACTION_SURF_STILL_DOWN, direction); + if (MetatileBehavior_IsMuddySlope(follower->currentMetatileBehavior)) + follower->facingDirectionLocked = TRUE; + RETURN_STATE(MOVEMENT_ACTION_WALK_FAST_DOWN, direction); case MOVEMENT_ACTION_WALK_FASTER_DOWN ... MOVEMENT_ACTION_WALK_FASTER_RIGHT: @@ -798,10 +800,6 @@ u32 DetermineFollowerNPCState(struct ObjectEvent *follower, u32 state, u32 direc RETURN_STATE(MOVEMENT_ACTION_WALK_FASTER_DOWN, direction); case MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN ... MOVEMENT_ACTION_RIDE_WATER_CURRENT_RIGHT: - // Handle player on waterfall. - if (PlayerIsUnderWaterfall(&gObjectEvents[gPlayerAvatar.objectEventId]) && IsPlayerSurfingNorth()) - return MOVEMENT_INVALID; - RETURN_STATE(MOVEMENT_ACTION_RIDE_WATER_CURRENT_DOWN, direction); // Acro bike. @@ -1544,37 +1542,20 @@ void FollowerNPC_TryRemoveFollowerOnWhiteOut(void) #undef tDoorY // Task data -#define PREVENT_PLAYER_STEP 0 -#define DO_ALL_FORCED_MOVEMENTS 1 -#define NPC_INTO_PLAYER 2 -#define ENABLE_PLAYER_STEP 3 +#define NPC_INTO_PLAYER 0 +#define ENABLE_PLAYER_STEP 1 void Task_MoveNPCFollowerAfterForcedMovement(u8 taskId) { struct ObjectEvent *follower = &gObjectEvents[GetFollowerNPCObjectId()]; struct ObjectEvent *player = &gObjectEvents[gPlayerAvatar.objectEventId]; - // Prevent player input until all forced mmovements are done and the follower is hidden. - if (gTasks[taskId].tState == PREVENT_PLAYER_STEP) + // The NPC will take an extra step and be on the same tile as the player. + if (gTasks[taskId].tState == NPC_INTO_PLAYER && ObjectEventClearHeldMovementIfFinished(player) != 0 && ObjectEventClearHeldMovementIfFinished(follower) != 0) { - gPlayerAvatar.preventStep = TRUE; - gTasks[taskId].tState = DO_ALL_FORCED_MOVEMENTS; - } - // The player will keep doing forced movments until they land on a non-forced-move metatile or hit collision. - else if (gTasks[taskId].tState == DO_ALL_FORCED_MOVEMENTS && ObjectEventClearHeldMovementIfFinished(player) != 0) - { - // Lock follower facing direction for muddy slope. if (follower->currentMetatileBehavior == MB_MUDDY_SLOPE) follower->facingDirectionLocked = TRUE; - if (TryDoMetatileBehaviorForcedMovement() == 0) - gTasks[taskId].tState = NPC_INTO_PLAYER; - - return; - } - // The NPC will take an extra step and be on the same tile as the player. - else if (gTasks[taskId].tState == NPC_INTO_PLAYER && ObjectEventClearHeldMovementIfFinished(player) != 0 && ObjectEventClearHeldMovementIfFinished(follower) != 0) - { ObjectEventSetHeldMovement(follower, GetWalkFastMovementAction(DetermineFollowerNPCDirection(player, follower))); gTasks[taskId].tState = ENABLE_PLAYER_STEP; return; @@ -1585,14 +1566,13 @@ void Task_MoveNPCFollowerAfterForcedMovement(u8 taskId) follower->facingDirectionLocked = FALSE; HideNPCFollower(); SetFollowerNPCData(FNPC_DATA_WARP_END, FNPC_WARP_REAPPEAR); + SetFollowerNPCData(FNPC_DATA_FORCED_MOVEMENT, FALSE); gPlayerAvatar.preventStep = FALSE; DestroyTask(taskId); } } #undef tState -#undef PREVENT_PLAYER_STEP -#undef DO_ALL_FORCED_MOVEMENTS #undef NPC_INTO_PLAYER #undef ENABLE_PLAYER_STEP @@ -1628,7 +1608,6 @@ void ScriptDestroyFollowerNPC(struct ScriptContext *ctx) return; RemoveObjectEvent(&gObjectEvents[GetFollowerNPCData(FNPC_DATA_OBJ_ID)]); - FlagSet(GetFollowerNPCData(FNPC_DATA_EVENT_FLAG)); ClearFollowerNPCData(); UpdateFollowingPokemon(); } diff --git a/src/item_use.c b/src/item_use.c index d726364d42..f13cc1cd4a 100644 --- a/src/item_use.c +++ b/src/item_use.c @@ -50,6 +50,7 @@ static void SetUpItemUseCallback(u8); static void FieldCB_UseItemOnField(void); static void Task_CallItemUseOnFieldCallback(u8); +static void Task_PartyMenuItemUseFromField(u8); static void Task_UseItemfinder(u8); static void Task_CloseItemfinderMessage(u8); static void Task_HiddenItemNearby(u8); @@ -128,15 +129,25 @@ static void SetUpItemUseCallback(u8 taskId) type = gTasks[taskId].tEnigmaBerryType - 1; else type = GetItemType(gSpecialVar_ItemId) - 1; - if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE) + + if (gTasks[taskId].tUsingRegisteredKeyItem && type == (ITEM_USE_PARTY_MENU - 1)) { - gBagMenu->newScreenCallback = sItemUseCallbacks[type]; - Task_FadeAndCloseBagMenu(taskId); + FadeScreen(FADE_TO_BLACK, 0); + gPartyMenu.data1 = DATA1_PARTY_MENU_FROM_FIELD; + gTasks[taskId].func = Task_PartyMenuItemUseFromField; } else { - gPyramidBagMenu->newScreenCallback = sItemUseCallbacks[type]; - CloseBattlePyramidBag(taskId); + if (CurrentBattlePyramidLocation() == PYRAMID_LOCATION_NONE) + { + gBagMenu->newScreenCallback = sItemUseCallbacks[type]; + Task_FadeAndCloseBagMenu(taskId); + } + else + { + gPyramidBagMenu->newScreenCallback = sItemUseCallbacks[type]; + CloseBattlePyramidBag(taskId); + } } } @@ -165,6 +176,16 @@ static void Task_CallItemUseOnFieldCallback(u8 taskId) sItemUseOnFieldCB(taskId); } +static void Task_PartyMenuItemUseFromField(u8 taskId) +{ + if (!gPaletteFade.active) + { + CleanupOverworldWindowsAndTilemaps(); + SetMainCallback2(CB2_ShowPartyMenuForItemUse); + DestroyTask(taskId); + } +} + static void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyItemOnField, const u8 *str) { StringExpandPlaceholders(gStringVar4, str); @@ -1380,82 +1401,36 @@ void ItemUseOutOfBattle_EnigmaBerry(u8 taskId) void ItemUseOutOfBattle_FormChange(u8 taskId) { - if (!gTasks[taskId].tUsingRegisteredKeyItem) - { - gItemUseCB = ItemUseCB_FormChange; - gTasks[taskId].data[0] = FALSE; - SetUpItemUseOnFieldCallback(taskId); - } - else - { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); - } + gItemUseCB = ItemUseCB_FormChange; + SetUpItemUseCallback(taskId); } void ItemUseOutOfBattle_FormChange_ConsumedOnUse(u8 taskId) { - if (!gTasks[taskId].tUsingRegisteredKeyItem) - { - gItemUseCB = ItemUseCB_FormChange_ConsumedOnUse; - gTasks[taskId].data[0] = TRUE; - SetUpItemUseOnFieldCallback(taskId); - } - else - { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); - } + gItemUseCB = ItemUseCB_FormChange_ConsumedOnUse; + SetUpItemUseCallback(taskId); } void ItemUseOutOfBattle_RotomCatalog(u8 taskId) { - if (!gTasks[taskId].tUsingRegisteredKeyItem) - { - gItemUseCB = ItemUseCB_RotomCatalog; - gTasks[taskId].data[0] = TRUE; - SetUpItemUseOnFieldCallback(taskId); - } - else - { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); - } + gItemUseCB = ItemUseCB_RotomCatalog; + SetUpItemUseCallback(taskId); } void ItemUseOutOfBattle_ZygardeCube(u8 taskId) { - if (!gTasks[taskId].tUsingRegisteredKeyItem) - { - gItemUseCB = ItemUseCB_ZygardeCube; - gTasks[taskId].data[0] = TRUE; - SetUpItemUseOnFieldCallback(taskId); - } - else - { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); - } + gItemUseCB = ItemUseCB_ZygardeCube; + SetUpItemUseCallback(taskId); } void ItemUseOutOfBattle_Fusion(u8 taskId) { - if (!gTasks[taskId].tUsingRegisteredKeyItem) - { - gItemUseCB = ItemUseCB_Fusion; - gTasks[taskId].data[0] = FALSE; - SetUpItemUseCallback(taskId); - } - else - { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); - } + gItemUseCB = ItemUseCB_Fusion; + SetUpItemUseCallback(taskId); } void Task_UseHoneyOnField(u8 taskId) { - //ResetInitialPlayerAvatarState(); StartSweetScentFieldEffect(); DestroyTask(taskId); } @@ -1466,7 +1441,6 @@ static void ItemUseOnFieldCB_Honey(u8 taskId) RemoveBagItem(gSpecialVar_ItemId, 1); CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gText_PlayerUsedVar2); - gTasks[taskId].data[0] = 0; DisplayItemMessageOnField(taskId, gStringVar4, Task_UseHoneyOnField); } @@ -1551,7 +1525,7 @@ static void Task_DisplayPokeFluteMessage(u8 taskId) { if (WaitFanfare(FALSE)) { - if (gTasks[taskId].data[3] == 0) + if (!gTasks[taskId].tUsingRegisteredKeyItem) DisplayItemMessage(taskId, FONT_NORMAL, sText_PokeFluteAwakenedMon, CloseItemMessage); else DisplayItemMessageOnField(taskId, sText_PokeFluteAwakenedMon, Task_CloseCantUseKeyItemMessage); @@ -1577,14 +1551,14 @@ void ItemUseOutOfBattle_PokeFlute(u8 taskId) if (wokeSomeoneUp) { - if (gTasks[taskId].data[3] == 0) + if (!gTasks[taskId].tUsingRegisteredKeyItem) DisplayItemMessage(taskId, FONT_NORMAL, sText_PlayedPokeFlute, Task_PlayPokeFlute); else DisplayItemMessageOnField(taskId, sText_PlayedPokeFlute, Task_PlayPokeFlute); } else { - if (gTasks[taskId].data[3] == 0) + if (!gTasks[taskId].tUsingRegisteredKeyItem) DisplayItemMessage(taskId, FONT_NORMAL, sText_PlayedPokeFluteCatchy, CloseItemMessage); else DisplayItemMessageOnField(taskId, sText_PlayedPokeFluteCatchy, Task_CloseCantUseKeyItemMessage); @@ -1609,8 +1583,7 @@ void ItemUseOutOfBattle_TownMap(u8 taskId) } else { - // TODO: handle key items with callbacks to menus allow to be used by registering them. - DisplayDadsAdviceCannotUseItemMessage(taskId, gTasks[taskId].tUsingRegisteredKeyItem); + gTasks[taskId].func = ItemUseOnFieldCB_TownMap; } } diff --git a/src/m4a_tables.c b/src/m4a_tables.c index 6fb3b273a3..5bc1075494 100644 --- a/src/m4a_tables.c +++ b/src/m4a_tables.c @@ -261,7 +261,7 @@ const struct PokemonCrySong gPokemonCrySongTemplate = .blockCount = 0, .priority = 255, .reverb = 0, - .tone = (struct ToneData *)&voicegroup000, + .tone = (struct ToneData *)&voicegroup_dummy, .part = {NULL, NULL}, .gap = 0, .part0 = TUNE, diff --git a/src/overworld.c b/src/overworld.c index d827d46a2c..2cd7d42b4f 100644 --- a/src/overworld.c +++ b/src/overworld.c @@ -916,7 +916,7 @@ static void LoadMapFromWarp(bool32 a1) ClearTempFieldEventData(); ResetDexNavSearch(); // reset hours override on every warp - sHoursOverride = 0; + sHoursOverride = 0; ResetCyclingRoadChallengeData(); RestartWildEncounterImmunitySteps(); #if FREE_MATCH_CALL == FALSE @@ -1559,7 +1559,7 @@ const struct BlendSettings gTimeOfDayBlend[] = }; #define DEFAULT_WEIGHT 256 -#define TIME_BLEND_WEIGHT(begin, end) (DEFAULT_WEIGHT - (DEFAULT_WEIGHT * ((hours - begin) * MINUTES_PER_HOUR + minutes) / ((end - begin) * MINUTES_PER_HOUR))) +#define TIME_BLEND_WEIGHT(begin, end) (DEFAULT_WEIGHT - (DEFAULT_WEIGHT * SAFE_DIV(((hours - begin) * MINUTES_PER_HOUR + minutes), ((end - begin) * MINUTES_PER_HOUR)))) #define MORNING_HOUR_MIDDLE (MORNING_HOUR_BEGIN + ((MORNING_HOUR_END - MORNING_HOUR_BEGIN) / 2)) diff --git a/src/party_menu.c b/src/party_menu.c index c525a03518..b5e9c77338 100644 --- a/src/party_menu.c +++ b/src/party_menu.c @@ -4559,6 +4559,12 @@ void CB2_ShowPartyMenuForItemUse(void) u8 msgId; TaskFunc task; + if (gPartyMenu.data1 == DATA1_PARTY_MENU_FROM_FIELD) + { + callback = CB2_ReturnToField; + gPartyMenu.data1 = 0; + } + if (gMain.inBattle) { menuType = PARTY_MENU_TYPE_IN_BATTLE; diff --git a/src/pokemon_animation.c b/src/pokemon_animation.c index 41bc400105..7f28bff4ce 100644 --- a/src/pokemon_animation.c +++ b/src/pokemon_animation.c @@ -523,6 +523,11 @@ static void Task_HandleMonAnimation(u8 taskId) sprite->data[2] = gTasks[taskId].tSpeciesId; sprite->data[1] = 0; + // Task_HandleMonAnimation handles more than just KO animations, + // but if the counter is non-zero then only KO animations are running. + // This assumption is not checked. + if (gBattleStruct->battlerKOAnimsRunning > 0) + gBattleStruct->battlerKOAnimsRunning--; DestroyTask(taskId); } } diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index c0ab952c5a..64306e1135 100644 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3765,7 +3765,7 @@ static void BufferStat(u8 *dst, u8 statIndex, u32 stat, u32 strId, u32 n) static const u8 sTextNatureNeutral[] = _("{COLOR}{01}"); u8 *txtPtr; - if (statIndex == 0 || !SUMMARY_SCREEN_NATURE_COLORS || gNaturesInfo[sMonSummaryScreen->summary.mintNature].statUp == gNaturesInfo[sMonSummaryScreen->summary.mintNature].statDown) + if (statIndex == 0 || !P_SUMMARY_SCREEN_NATURE_COLORS || gNaturesInfo[sMonSummaryScreen->summary.mintNature].statUp == gNaturesInfo[sMonSummaryScreen->summary.mintNature].statDown) txtPtr = StringCopy(dst, sTextNatureNeutral); else if (statIndex == gNaturesInfo[sMonSummaryScreen->summary.mintNature].statUp) txtPtr = StringCopy(dst, sTextNatureUp); diff --git a/test/battle/ability/bad_dreams.c b/test/battle/ability/bad_dreams.c index 41cedf8e3e..491d5a91a2 100644 --- a/test/battle/ability/bad_dreams.c +++ b/test/battle/ability/bad_dreams.c @@ -35,6 +35,8 @@ SINGLE_BATTLE_TEST("Bad Dreams causes the sleeping enemy Pokemon to lose 1/8 of } } +TO_DO_BATTLE_TEST("Bad Dreams affects Pokémon with Comatose") + DOUBLE_BATTLE_TEST("Bad Dreams does not activate if only the partner Pokemon is sleeping") { GIVEN { @@ -57,7 +59,7 @@ DOUBLE_BATTLE_TEST("Bad Dreams does not activate if only the partner Pokemon is } } -DOUBLE_BATTLE_TEST("Bad Dreams activates for both sleeping pokemon on the player side") +DOUBLE_BATTLE_TEST("Bad Dreams activates for both sleeping Pokémon on the player side") { GIVEN { PLAYER(SPECIES_WOBBUFFET) {Status1(STATUS1_SLEEP);} diff --git a/test/battle/ability/battle_bond.c b/test/battle/ability/battle_bond.c index 401df267b6..d268536964 100644 --- a/test/battle/ability/battle_bond.c +++ b/test/battle/ability/battle_bond.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(!IsBattleMoveStatus(MOVE_WATER_GUN)); } -// Battle Bond transforms the pokemon when fainting any battler(opposing or partner), unless it's the last pokemon and the battle ends. +// Battle Bond transforms the Pokémon when fainting any battler(opposing or partner), unless it's the last Pokémon and the battle ends. SINGLE_BATTLE_TEST("Battle Bond transforms player's Greninja - Singles") { u32 monsCountPlayer, monsCountOpponent; diff --git a/test/battle/ability/cheek_pouch.c b/test/battle/ability/cheek_pouch.c index 3c932c4aa1..ffd1c8416e 100644 --- a/test/battle/ability/cheek_pouch.c +++ b/test/battle/ability/cheek_pouch.c @@ -1,6 +1,15 @@ #include "global.h" #include "test/battle.h" +TO_DO_BATTLE_TEST("Cheek Pouch restores 33% max HP") +TO_DO_BATTLE_TEST("Cheek Pouch restores HP after the berry's effect") +TO_DO_BATTLE_TEST("Cheek Pouch activates via Bug Bite/Pluck if it would trigger an effect") +TO_DO_BATTLE_TEST("Cheek Pouch activates when receiving from Fling if it would trigger an effect") +TO_DO_BATTLE_TEST("Cheek Pouch doesn't activate when using Natural Gift") +TO_DO_BATTLE_TEST("Cheek Pouch doesn't activate when using Fling") +TO_DO_BATTLE_TEST("Cheek Pouch doesn't activate when using a berry from the bag") +TO_DO_BATTLE_TEST("Cheek Pouch doesn't activate under Heal Block's effect") + SINGLE_BATTLE_TEST("Cheek Pouch activation doesn't mutate damage when restoring HP mid battle") { s16 damage; diff --git a/test/battle/ability/comatose.c b/test/battle/ability/comatose.c index d714ee5e3d..c049d5624d 100644 --- a/test/battle/ability/comatose.c +++ b/test/battle/ability/comatose.c @@ -24,7 +24,7 @@ SINGLE_BATTLE_TEST("Comatose prevents status-inducing moves") } } -SINGLE_BATTLE_TEST("Comatose may be suppressed if pokemon transformed into a pokemon with Comatose ability and was under the effects of Gastro Acid") +SINGLE_BATTLE_TEST("Comatose may be suppressed if Pokémon transformed into a Pokémon with Comatose ability and was under the effects of Gastro Acid") { u32 move; @@ -56,7 +56,7 @@ SINGLE_BATTLE_TEST("Comatose may be suppressed if pokemon transformed into a pok } } -SINGLE_BATTLE_TEST("Comatose pokemon doesn't get poisoned by Toxic Spikes on switch-in") +SINGLE_BATTLE_TEST("Comatose Pokémon doesn't get poisoned by Toxic Spikes on switch-in") { GIVEN { PLAYER(SPECIES_WOBBUFFET); @@ -72,7 +72,7 @@ SINGLE_BATTLE_TEST("Comatose pokemon doesn't get poisoned by Toxic Spikes on swi } } -SINGLE_BATTLE_TEST("Comatose pokemon don't get poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker") +SINGLE_BATTLE_TEST("Comatose Pokémon don't get poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker") { GIVEN { PLAYER(SPECIES_WOBBUFFET); @@ -87,3 +87,8 @@ SINGLE_BATTLE_TEST("Comatose pokemon don't get poisoned by Toxic Spikes on switc NOT HP_BAR(player); } } + +TO_DO_BATTLE_TEST("Comatose makes Rest fail") +TO_DO_BATTLE_TEST("Comatose isn't affected by Mold Breaker, Turboblaze or Teravolt") +TO_DO_BATTLE_TEST("Comatose isn't affected by Poison Touch + Sunsteel Strike") +TO_DO_BATTLE_TEST("Comatose boosts Dream Ball's multiplier") diff --git a/test/battle/ability/competitive.c b/test/battle/ability/competitive.c index cc3e582eab..a4dd6db625 100644 --- a/test/battle/ability/competitive.c +++ b/test/battle/ability/competitive.c @@ -1,4 +1,335 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Competitive (Ability) test titles") +DOUBLE_BATTLE_TEST("Competitive sharply raises player's Sp. Atk after Intimidate") +{ + u32 abilityLeft, abilityRight; + + PARAMETRIZE { abilityLeft = ABILITY_FRIEND_GUARD; abilityRight = ABILITY_FRIEND_GUARD; } + PARAMETRIZE { abilityLeft = ABILITY_FRIEND_GUARD; abilityRight = ABILITY_COMPETITIVE; } + PARAMETRIZE { abilityLeft = ABILITY_COMPETITIVE; abilityRight = ABILITY_FRIEND_GUARD; } + PARAMETRIZE { abilityLeft = ABILITY_COMPETITIVE; abilityRight = ABILITY_COMPETITIVE; } + + GIVEN { + PLAYER(SPECIES_IGGLYBUFF) { Ability(abilityLeft); } + PLAYER(SPECIES_JIGGLYPUFF) { Ability(abilityRight); } + OPPONENT(SPECIES_GYARADOS) { Ability(ABILITY_INTIMIDATE); } + OPPONENT(SPECIES_ARBOK) { Ability(ABILITY_INTIMIDATE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_SCRATCH, target:opponentLeft); MOVE(playerRight, MOVE_SCRATCH, target:opponentRight); } + } SCENE { + //1st mon Intimidate + ABILITY_POPUP(opponentLeft, ABILITY_INTIMIDATE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("The opposing Gyarados's Intimidate cuts Igglybuff's Attack!"); + if (abilityLeft == ABILITY_COMPETITIVE) { + ABILITY_POPUP(playerLeft, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("The opposing Gyarados's Intimidate cuts Jigglypuff's Attack!"); + if (abilityRight == ABILITY_COMPETITIVE) { + ABILITY_POPUP(playerRight, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Jigglypuff's Sp. Atk sharply rose!"); + } + + //2nd mon Intimidate + ABILITY_POPUP(opponentRight, ABILITY_INTIMIDATE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("The opposing Arbok's Intimidate cuts Igglybuff's Attack!"); + if (abilityLeft == ABILITY_COMPETITIVE) { + ABILITY_POPUP(playerLeft, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("The opposing Arbok's Intimidate cuts Jigglypuff's Attack!"); + if (abilityRight == ABILITY_COMPETITIVE) { + ABILITY_POPUP(playerRight, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Jigglypuff's Sp. Atk sharply rose!"); + } + } THEN { + EXPECT_EQ(playerLeft->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + (abilityLeft == ABILITY_COMPETITIVE ? 4 : 0)); + EXPECT_EQ(playerRight->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + (abilityRight == ABILITY_COMPETITIVE ? 4 : 0)); + } +} + +// Same as above, but for opponent. +DOUBLE_BATTLE_TEST("Competitive sharply raises opponent's Sp. Atk after Intimidate") +{ + u32 abilityLeft, abilityRight; + + PARAMETRIZE { abilityLeft = ABILITY_FRIEND_GUARD; abilityRight = ABILITY_FRIEND_GUARD; } + PARAMETRIZE { abilityLeft = ABILITY_FRIEND_GUARD; abilityRight = ABILITY_COMPETITIVE; } + PARAMETRIZE { abilityLeft = ABILITY_COMPETITIVE; abilityRight = ABILITY_FRIEND_GUARD; } + PARAMETRIZE { abilityLeft = ABILITY_COMPETITIVE; abilityRight = ABILITY_COMPETITIVE; } + + GIVEN { + OPPONENT(SPECIES_IGGLYBUFF) { Ability(abilityLeft); } + OPPONENT(SPECIES_JIGGLYPUFF) { Ability(abilityRight); } + PLAYER(SPECIES_GYARADOS) { Ability(ABILITY_INTIMIDATE); } + PLAYER(SPECIES_ARBOK) { Ability(ABILITY_INTIMIDATE); } + } WHEN { + TURN { MOVE(opponentLeft, MOVE_SCRATCH, target:playerLeft); MOVE(opponentRight, MOVE_SCRATCH, target:playerRight); } + } SCENE { + //1st mon Intimidate + ABILITY_POPUP(playerLeft, ABILITY_INTIMIDATE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("Gyarados's Intimidate cuts the opposing Igglybuff's Attack!"); + if (abilityLeft == ABILITY_COMPETITIVE) { + ABILITY_POPUP(opponentLeft, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("The opposing Igglybuff's Sp. Atk sharply rose!"); + } + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("Gyarados's Intimidate cuts the opposing Jigglypuff's Attack!"); + if (abilityRight == ABILITY_COMPETITIVE) { + ABILITY_POPUP(opponentRight, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("The opposing Jigglypuff's Sp. Atk sharply rose!"); + } + + //2nd mon Intimidate + ABILITY_POPUP(playerRight, ABILITY_INTIMIDATE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("Arbok's Intimidate cuts the opposing Igglybuff's Attack!"); + if (abilityLeft == ABILITY_COMPETITIVE) { + ABILITY_POPUP(opponentLeft, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("The opposing Igglybuff's Sp. Atk sharply rose!"); + } + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("Arbok's Intimidate cuts the opposing Jigglypuff's Attack!"); + if (abilityRight == ABILITY_COMPETITIVE) { + ABILITY_POPUP(opponentRight, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("The opposing Jigglypuff's Sp. Atk sharply rose!"); + } + } THEN { + EXPECT_EQ(opponentLeft->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + (abilityLeft == ABILITY_COMPETITIVE ? 4 : 0)); + EXPECT_EQ(opponentRight->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + (abilityRight == ABILITY_COMPETITIVE ? 4 : 0)); + } +} + +SINGLE_BATTLE_TEST("Competitive activates after Sticky Web lowers Speed") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_STICKY_WEB); } + TURN { SWITCH(player, 1); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_STICKY_WEB, opponent); + // Switch-in - Sticky Web activates + SEND_IN_MESSAGE("Igglybuff"); + MESSAGE("Igglybuff was caught in a sticky web!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Speed fell!"); + // Competitive activates + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } +} + +SINGLE_BATTLE_TEST("Competitive doesn't activate after Sticky Web lowers Speed if Court Changed") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_STICKY_WEB); MOVE(opponent, MOVE_COURT_CHANGE); } + TURN { SWITCH(player, 1); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_STICKY_WEB, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_COURT_CHANGE, opponent); + // Switch-in - Sticky Web activates + SEND_IN_MESSAGE("Igglybuff"); + MESSAGE("Igglybuff was caught in a sticky web!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Speed fell!"); + // Competitive doesn't activate + NONE_OF { + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } + } +} + +SINGLE_BATTLE_TEST("Competitive correctly activates after Sticky Web lowers Speed if Court Changed") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_STICKY_WEB); MOVE(opponent, MOVE_COURT_CHANGE); } + TURN { SWITCH(player, 1); } + TURN { MOVE(opponent, MOVE_GROWL);} + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_STICKY_WEB, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_COURT_CHANGE, opponent); + // Switch-in - Sticky Web activates + SEND_IN_MESSAGE("Igglybuff"); + MESSAGE("Igglybuff was caught in a sticky web!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Speed fell!"); + // Competitive doesn't activate + NONE_OF { + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } + // Competitive triggers correctly after Sticky Web + ANIMATION(ANIM_TYPE_MOVE, MOVE_GROWL, opponent); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Attack fell!"); + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } +} + +DOUBLE_BATTLE_TEST("Competitive is activated by Cotton Down for non-ally pokemon") +{ + GIVEN { + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_ELDEGOSS) { Ability(ABILITY_COTTON_DOWN); } + OPPONENT(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_SCRATCH, target: opponentLeft); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, playerLeft); + ABILITY_POPUP(opponentLeft, ABILITY_COTTON_DOWN); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Igglybuff's Speed fell!"); + ABILITY_POPUP(playerLeft, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Igglybuff's Speed fell!"); + ABILITY_POPUP(playerRight, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("The opposing Igglybuff's Speed fell!"); + } THEN { + EXPECT_EQ(playerLeft->statStages[STAT_SPEED], DEFAULT_STAT_STAGE - 1); + EXPECT_EQ(playerRight->statStages[STAT_SPEED], DEFAULT_STAT_STAGE - 1); + EXPECT_EQ(opponentRight->statStages[STAT_SPEED], DEFAULT_STAT_STAGE - 1); + EXPECT_EQ(playerLeft->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + 2); + EXPECT_EQ(playerRight->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + 2); + } +} + +SINGLE_BATTLE_TEST("Competitive activates before White Herb") +{ + u32 move; + + PARAMETRIZE { move = MOVE_LEER; } + PARAMETRIZE { move = MOVE_CONFIDE; } + + GIVEN { + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); Item(ITEM_WHITE_HERB); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, move); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, move, opponent); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + + if (move == MOVE_LEER) { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, player); + MESSAGE("Igglybuff returned its stats to normal using its White Herb!"); + } else { + NONE_OF { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, player); + MESSAGE("Igglybuff returned its stats to normal using its White Herb!"); + } + } + } THEN { + if (move == MOVE_LEER) { + EXPECT_EQ(player->statStages[STAT_DEF], DEFAULT_STAT_STAGE); + EXPECT_EQ(player->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + 2); + } else { + EXPECT_EQ(player->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + 1); + } + } +} + +SINGLE_BATTLE_TEST("Competitive activates for each stat that is lowered") +{ + GIVEN { + ASSUME(GetMoveEffect(MOVE_TICKLE) == EFFECT_TICKLE); + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_TICKLE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TICKLE, opponent); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + + MESSAGE("Igglybuff's Attack fell!"); + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + + MESSAGE("Igglybuff's Defense fell!"); + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + + } THEN { + EXPECT_EQ(player->statStages[STAT_SPATK], DEFAULT_STAT_STAGE + 4); + } +} + +SINGLE_BATTLE_TEST("Competitive doesn't activate if the pokemon lowers it's own stats") +{ + u32 move; + + PARAMETRIZE { move = MOVE_SUPERPOWER; } + PARAMETRIZE { move = MOVE_CLOSE_COMBAT; } + PARAMETRIZE { move = MOVE_MAKE_IT_RAIN; } + PARAMETRIZE { move = MOVE_SPIN_OUT; } + + GIVEN { + ASSUME(MoveHasAdditionalEffectSelf(MOVE_SUPERPOWER, MOVE_EFFECT_ATK_DEF_DOWN)); + ASSUME(MoveHasAdditionalEffectSelf(MOVE_CLOSE_COMBAT, MOVE_EFFECT_DEF_SPDEF_DOWN)); + ASSUME(MoveHasAdditionalEffectSelf(MOVE_MAKE_IT_RAIN, MOVE_EFFECT_SP_ATK_MINUS_1)); + ASSUME(MoveHasAdditionalEffectSelf(MOVE_SPIN_OUT, MOVE_EFFECT_SPD_MINUS_2)); + PLAYER(SPECIES_IGGLYBUFF) { Ability(ABILITY_COMPETITIVE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, move); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, move, player); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + + NONE_OF { + ABILITY_POPUP(player, ABILITY_COMPETITIVE); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Igglybuff's Sp. Atk sharply rose!"); + } + } THEN { + if (move == MOVE_SUPERPOWER) + EXPECT_EQ(player->statStages[STAT_ATK], DEFAULT_STAT_STAGE - 1); + else + EXPECT_EQ(player->statStages[STAT_ATK], DEFAULT_STAT_STAGE); + } +} diff --git a/test/battle/ability/contrary.c b/test/battle/ability/contrary.c index e174427406..e11635ec67 100644 --- a/test/battle/ability/contrary.c +++ b/test/battle/ability/contrary.c @@ -241,3 +241,5 @@ SINGLE_BATTLE_TEST("Sticky Web raises Speed by 1 for Contrary mon on switch-in") MESSAGE("The opposing Snivy's Speed rose!"); } } + +TO_DO_BATTLE_TEST("Contrary does not invert stat changes that have been Baton-passed") diff --git a/test/battle/ability/corrosion.c b/test/battle/ability/corrosion.c index 1e589967db..ca6b602002 100644 --- a/test/battle/ability/corrosion.c +++ b/test/battle/ability/corrosion.c @@ -238,3 +238,10 @@ SINGLE_BATTLE_TEST("Corrosion's effect is lost if the move used by the Pokémon } } } + +TO_DO_BATTLE_TEST("Corrosion can poison Poison/Steel types if the Pokémon uses Baneful Bunker") +TO_DO_BATTLE_TEST("Corrosion can poison Poison/Steel types if the Pokémon uses Psycho Shift while poisoned") +TO_DO_BATTLE_TEST("Corrosion can poison Poison/Steel types if the Pokémon uses Fling while holding a Toxic Orb") +TO_DO_BATTLE_TEST("Corrosion can poison Poison/Steel types if the Pokémon uses Fling while holding a Poison Barb") +TO_DO_BATTLE_TEST("Dynamax: Corrosion can poison Poison/Steel types if the Pokémon uses G-Max Malodor") +TO_DO_BATTLE_TEST("Corrosion does not affect Poison Spikes") diff --git a/test/battle/ability/costar.c b/test/battle/ability/costar.c index 7107b00d61..3d041a8d53 100644 --- a/test/battle/ability/costar.c +++ b/test/battle/ability/costar.c @@ -28,3 +28,5 @@ DOUBLE_BATTLE_TEST("Costar copies an ally's stat stages upon entering battle") // Copy from Ruin ability tests TO_DO_BATTLE_TEST("Costar's message displays correctly after all battlers fainted - Player"); TO_DO_BATTLE_TEST("Costar's message displays correctly after all battlers fainted - Opponent"); + +TO_DO_BATTLE_TEST("Costar can copy an ally's critical hit ratio"); diff --git a/test/battle/ability/cud_chew.c b/test/battle/ability/cud_chew.c index 486e2e9dac..41d05c94d7 100644 --- a/test/battle/ability/cud_chew.c +++ b/test/battle/ability/cud_chew.c @@ -47,3 +47,5 @@ SINGLE_BATTLE_TEST("Cud Chew will activate Oran Berry effect again on the next t EXPECT_EQ(opponent->hp, 40); } } + +TO_DO_BATTLE_TEST("Cud Chew will activate Lum Berry effect again on the next turn") diff --git a/test/battle/ability/cursed_body.c b/test/battle/ability/cursed_body.c index 26d97a9f11..25dbdc4b5b 100644 --- a/test/battle/ability/cursed_body.c +++ b/test/battle/ability/cursed_body.c @@ -15,3 +15,11 @@ SINGLE_BATTLE_TEST("Cursed Body triggers 30% of the time") MESSAGE("Wobbuffet's Aqua Jet was disabled by the opposing Frillish's Cursed Body!"); } } + +TO_DO_BATTLE_TEST("Cursed Body cannot disable Struggle") +TO_DO_BATTLE_TEST("Cursed Body can trigger if the attacker is behind a Substitute") +TO_DO_BATTLE_TEST("Cursed Body cannot trigger if the target is behind a Substitute") +TO_DO_BATTLE_TEST("Cursed Body does not stop a multistrike move mid-execution") +TO_DO_BATTLE_TEST("Cursed Body disables the move that called another move instead of the called move") +TO_DO_BATTLE_TEST("Cursed Body disables damaging Z-Moves, but not the base move") // Rotom Powers can restore Z-Moves +TO_DO_BATTLE_TEST("Cursed Body disables the base move of a status Z-Move") diff --git a/test/battle/ability/cute_charm.c b/test/battle/ability/cute_charm.c index 0bba66b8ac..0813296a2e 100644 --- a/test/battle/ability/cute_charm.c +++ b/test/battle/ability/cute_charm.c @@ -46,7 +46,11 @@ SINGLE_BATTLE_TEST("Cute Charm cannot infatuate same gender") } } -SINGLE_BATTLE_TEST("Cute Charm triggers 30% of the time") +TO_DO_BATTLE_TEST("Cute Charm cannot infatuate if either Pokémon are Gender-unknown") + +TO_DO_BATTLE_TEST("Cute Charm triggers 1/3 of the time (Gen 3)") + +SINGLE_BATTLE_TEST("Cute Charm triggers 30% of the time (Gen 4+)") { PASSES_RANDOMLY(3, 10, RNG_CUTE_CHARM); GIVEN { diff --git a/test/battle/ability/dauntless_shield.c b/test/battle/ability/dauntless_shield.c index ada4ace786..6fed2f0b5c 100644 --- a/test/battle/ability/dauntless_shield.c +++ b/test/battle/ability/dauntless_shield.c @@ -1,11 +1,6 @@ #include "global.h" #include "test/battle.h" -ASSUMPTIONS -{ - ASSUME(B_DAUNTLESS_SHIELD == GEN_9); -} - SINGLE_BATTLE_TEST("Dauntless Shield raises Defense by one stage") { GIVEN { @@ -22,9 +17,32 @@ SINGLE_BATTLE_TEST("Dauntless Shield raises Defense by one stage") } } -SINGLE_BATTLE_TEST("Dauntless Shield raises Defense by one stage only once per battle") +SINGLE_BATTLE_TEST("Dauntless Shield raises Defense by one stage every time it switches in (Gen8)") { GIVEN { + WITH_CONFIG(GEN_DAUNTLESS_SHIELD, GEN_8); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_ZAMAZENTA) { Ability(ABILITY_DAUNTLESS_SHIELD); } + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { SWITCH(opponent, 1); } + TURN { SWITCH(opponent, 0); } + } SCENE { + ABILITY_POPUP(opponent, ABILITY_DAUNTLESS_SHIELD); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Zamazenta's Dauntless Shield raised its Defense!"); + ABILITY_POPUP(opponent, ABILITY_DAUNTLESS_SHIELD); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Zamazenta's Dauntless Shield raised its Defense!"); + } THEN { + EXPECT_EQ(opponent->statStages[STAT_DEF], DEFAULT_STAT_STAGE + 1); + } +} + +SINGLE_BATTLE_TEST("Dauntless Shield raises Defense by one stage only once per battle (Gen 9+)") +{ + GIVEN { + WITH_CONFIG(GEN_DAUNTLESS_SHIELD, GEN_9); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_ZAMAZENTA) { Ability(ABILITY_DAUNTLESS_SHIELD); } OPPONENT(SPECIES_WYNAUT); @@ -63,4 +81,3 @@ SINGLE_BATTLE_TEST("Dauntless Shield activates when it's no longer effected by N MESSAGE("The opposing Zamazenta's Dauntless Shield raised its Defense!"); } } - diff --git a/test/battle/ability/defiant.c b/test/battle/ability/defiant.c index 5ec4ebb093..1bb97aa59e 100644 --- a/test/battle/ability/defiant.c +++ b/test/battle/ability/defiant.c @@ -51,7 +51,7 @@ DOUBLE_BATTLE_TEST("Defiant sharply raises player's Attack after Intimidate") ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); MESSAGE("Primeape's Attack sharply rose!"); } - } FINALLY { + } THEN { // -2 from Intimidates and +4 from Defiants gets +2 total EXPECT_EQ(playerLeft->statStages[STAT_ATK], (abilityLeft == ABILITY_DEFIANT) ? DEFAULT_STAT_STAGE + 2 : DEFAULT_STAT_STAGE - 2); EXPECT_EQ(playerRight->statStages[STAT_ATK], (abilityRight == ABILITY_DEFIANT) ? DEFAULT_STAT_STAGE + 2 : DEFAULT_STAT_STAGE - 2); @@ -109,7 +109,7 @@ DOUBLE_BATTLE_TEST("Defiant sharply raises opponent's Attack after Intimidate") ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); MESSAGE("The opposing Primeape's Attack sharply rose!"); } - } FINALLY { + } THEN { // -2 from Intimidates and +4 from Defiants gets +2 total EXPECT_EQ(opponentLeft->statStages[STAT_ATK], (abilityLeft == ABILITY_DEFIANT) ? DEFAULT_STAT_STAGE + 2 : DEFAULT_STAT_STAGE - 2); EXPECT_EQ(opponentRight->statStages[STAT_ATK], (abilityRight == ABILITY_DEFIANT) ? DEFAULT_STAT_STAGE + 2 : DEFAULT_STAT_STAGE - 2); @@ -199,7 +199,7 @@ SINGLE_BATTLE_TEST("Defiant correctly activates after Sticky Web lowers Speed if } } -DOUBLE_BATTLE_TEST("Defiant is activated by Cotton Down for non-ally pokemon") +DOUBLE_BATTLE_TEST("Defiant is activated by Cotton Down for non-ally Pokémon") { GIVEN { PLAYER(SPECIES_MANKEY) { Ability(ABILITY_DEFIANT); } @@ -301,7 +301,7 @@ SINGLE_BATTLE_TEST("Defiant activates for each stat that is lowered") } } -SINGLE_BATTLE_TEST("Defiant doesn't activate if the pokemon lowers it's own stats") +SINGLE_BATTLE_TEST("Defiant doesn't activate if the Pokémon lowers it's own stats") { u32 move; diff --git a/test/battle/ability/desolate_land.c b/test/battle/ability/desolate_land.c index e058b7b514..0b99040189 100644 --- a/test/battle/ability/desolate_land.c +++ b/test/battle/ability/desolate_land.c @@ -53,7 +53,7 @@ DOUBLE_BATTLE_TEST("Desolate Land blocks damaging Water-type moves and prints th } } -SINGLE_BATTLE_TEST("Desolate Land does not block a move if pokemon is asleep and uses a Water-type move") // Sleep/confusion/paralysis all happen before the check for primal weather +SINGLE_BATTLE_TEST("Desolate Land does not block a move if Pokémon is asleep and uses a Water-type move") // Sleep/confusion/paralysis all happen before the check for primal weather { GIVEN { PLAYER(SPECIES_GROUDON) {Item(ITEM_RED_ORB);} diff --git a/test/battle/ability/flower_veil.c b/test/battle/ability/flower_veil.c index 2b36d08d60..cb72cd33ae 100644 --- a/test/battle/ability/flower_veil.c +++ b/test/battle/ability/flower_veil.c @@ -62,3 +62,5 @@ DOUBLE_BATTLE_TEST("Flower Veil prevents Toxic bad poison on partner - left targ MESSAGE("The opposing Chikorita surrounded itself with a veil of petals!"); } } + +TO_DO_BATTLE_TEST("Flower Veil's stat reduction protection considers Contrary") // Eg. If a move would reduce stats due to Contrary, it will be protected by Mist. diff --git a/test/battle/ability/frisk.c b/test/battle/ability/frisk.c index e6d7f275fb..e20d2f5205 100644 --- a/test/battle/ability/frisk.c +++ b/test/battle/ability/frisk.c @@ -1,7 +1,7 @@ #include "global.h" #include "test/battle.h" -DOUBLE_BATTLE_TEST("Frisk does not trigger when pokemon hold no items") +DOUBLE_BATTLE_TEST("Frisk does not trigger when Pokémon hold no items") { GIVEN { PLAYER(SPECIES_FURRET) { Ability(ABILITY_FRISK); }; diff --git a/test/battle/ability/immunity.c b/test/battle/ability/immunity.c index 81fbe1b8c1..88ff45d2a4 100644 --- a/test/battle/ability/immunity.c +++ b/test/battle/ability/immunity.c @@ -47,7 +47,7 @@ SINGLE_BATTLE_TEST("Immunity prevents Toxic Spikes poison") } } -SINGLE_BATTLE_TEST("Immunity doesn't prevent pokemon from being poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker, but it cures it immediately") +SINGLE_BATTLE_TEST("Immunity doesn't prevent Pokémon from being poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker, but it cures it immediately") { GIVEN { ASSUME(GetMoveEffect(MOVE_DRAGON_TAIL) == EFFECT_HIT_SWITCH_TARGET); diff --git a/test/battle/ability/insomnia.c b/test/battle/ability/insomnia.c index 61bb1931fa..c95b294907 100644 --- a/test/battle/ability/insomnia.c +++ b/test/battle/ability/insomnia.c @@ -40,7 +40,7 @@ SINGLE_BATTLE_TEST("Insomnia prevents yawn") } } -SINGLE_BATTLE_TEST("Insomnia prevents rest") +SINGLE_BATTLE_TEST("Insomnia prevents Rest") { GIVEN { ASSUME(GetMoveEffect(MOVE_REST) == EFFECT_REST); diff --git a/test/battle/ability/intimidate.c b/test/battle/ability/intimidate.c index cefda4d1b8..c7308bfdaf 100644 --- a/test/battle/ability/intimidate.c +++ b/test/battle/ability/intimidate.c @@ -376,7 +376,7 @@ DOUBLE_BATTLE_TEST("Intimidate will correctly decrease the attack of the second } } -SINGLE_BATTLE_TEST("Intimdate does not lose timing after mega evolution and switch out by a hit escape move") +SINGLE_BATTLE_TEST("Intimidate does not lose timing after mega evolution and switch out by a hit escape move") { GIVEN { ASSUME(GetMoveEffect(MOVE_U_TURN) == EFFECT_HIT_ESCAPE); diff --git a/test/battle/ability/intrepid_sword.c b/test/battle/ability/intrepid_sword.c index 58fd9883eb..a260e78d0d 100644 --- a/test/battle/ability/intrepid_sword.c +++ b/test/battle/ability/intrepid_sword.c @@ -1,11 +1,6 @@ #include "global.h" #include "test/battle.h" -ASSUMPTIONS -{ - ASSUME(B_INTREPID_SWORD == GEN_9); -} - SINGLE_BATTLE_TEST("Intrepid Sword raises Attack by one stage") { GIVEN { @@ -22,9 +17,32 @@ SINGLE_BATTLE_TEST("Intrepid Sword raises Attack by one stage") } } -SINGLE_BATTLE_TEST("Intrepid Sword raises Attack by one stage only once per battle") +SINGLE_BATTLE_TEST("Intrepid Sword raises Attack by one stage every time it switches in (Gen8)") { GIVEN { + WITH_CONFIG(GEN_INTREPID_SWORD, GEN_8); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_ZACIAN) { Ability(ABILITY_INTREPID_SWORD); } + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { SWITCH(opponent, 1); } + TURN { SWITCH(opponent, 0); } + } SCENE { + ABILITY_POPUP(opponent, ABILITY_INTREPID_SWORD); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Zacian's Intrepid Sword raised its Attack!"); + ABILITY_POPUP(opponent, ABILITY_INTREPID_SWORD); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + MESSAGE("The opposing Zacian's Intrepid Sword raised its Attack!"); + } THEN { + EXPECT_EQ(opponent->statStages[STAT_ATK], DEFAULT_STAT_STAGE + 1); + } +} + +SINGLE_BATTLE_TEST("Intrepid Sword raises Attack by one stage only once per battle (Gen9+)") +{ + GIVEN { + WITH_CONFIG(GEN_INTREPID_SWORD, GEN_9); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_ZACIAN) { Ability(ABILITY_INTREPID_SWORD); } OPPONENT(SPECIES_WYNAUT); diff --git a/test/battle/ability/keen_eye.c b/test/battle/ability/keen_eye.c index 6874e5a6bf..ee10c446fb 100644 --- a/test/battle/ability/keen_eye.c +++ b/test/battle/ability/keen_eye.c @@ -5,7 +5,6 @@ ASSUMPTIONS { ASSUME(GetMoveAccuracy(MOVE_SCRATCH) == 100); ASSUME(GetMoveEffect(MOVE_SAND_ATTACK) == EFFECT_ACCURACY_DOWN); - ASSUME(B_ILLUMINATE_EFFECT >= GEN_9); } SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye prevent accuracy stage reduction from moves") @@ -19,6 +18,7 @@ SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye prevent accuracy stag PASSES_RANDOMLY(100, 100, RNG_ACCURACY); GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); PLAYER(SPECIES_WOBBUFFET); OPPONENT(species) { Ability(ability); } } WHEN { @@ -47,6 +47,7 @@ SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye ignore target's evasi PASSES_RANDOMLY(100, 100, RNG_ACCURACY); GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); ASSUME(GetMoveEffect(MOVE_DOUBLE_TEAM) == EFFECT_EVASION_UP); PLAYER(SPECIES_WOBBUFFET); OPPONENT(species) { Ability(ability); } @@ -80,6 +81,7 @@ SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye are ignored by Mold B PASSES_RANDOMLY(GetMoveAccuracy(MOVE_SCRATCH) * 3 / 4, 100, RNG_ACCURACY); GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); PLAYER(speciesPlayer) { Ability(abilityPlayer); } OPPONENT(speciesOpponent) { Ability(abilityOpponent); } } WHEN { @@ -102,6 +104,7 @@ SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye don't prevent Topsy-T PARAMETRIZE { species = SPECIES_URSALUNA_BLOODMOON; ability = ABILITY_MINDS_EYE; } GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); ASSUME(GetMoveEffect(MOVE_HONE_CLAWS) == EFFECT_ATTACK_ACCURACY_UP); ASSUME(GetMoveEffect(MOVE_TOPSY_TURVY) == EFFECT_TOPSY_TURVY); PLAYER(SPECIES_WOBBUFFET); @@ -141,6 +144,7 @@ SINGLE_BATTLE_TEST("Keen Eye, Gen9+ Illuminate & Minds Eye don't prevent receivi PARAMETRIZE { species = SPECIES_URSALUNA_BLOODMOON; ability = ABILITY_MINDS_EYE; } GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); ASSUME(GetMoveEffect(MOVE_BATON_PASS) == EFFECT_BATON_PASS); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_WOBBUFFET); @@ -173,6 +177,7 @@ SINGLE_BATTLE_TEST("Keen Eye & Gen9+ Illuminate don't prevent Spectral Thief fro PARAMETRIZE { species = SPECIES_STARYU; ability = ABILITY_ILLUMINATE; } GIVEN { + WITH_CONFIG(GEN_ILLUMINATE_EFFECT, GEN_9); ASSUME(GetMoveEffect(MOVE_HONE_CLAWS) == EFFECT_ATTACK_ACCURACY_UP); ASSUME(GetMoveEffect(MOVE_SPECTRAL_THIEF) == EFFECT_SPECTRAL_THIEF); PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/ability/liquid_ooze.c b/test/battle/ability/liquid_ooze.c index fa8ca8e3b2..1bd3cbbdf8 100644 --- a/test/battle/ability/liquid_ooze.c +++ b/test/battle/ability/liquid_ooze.c @@ -109,7 +109,7 @@ SINGLE_BATTLE_TEST("Liquid Ooze causes Strength Sap users to lose HP instead of } /* * https://bulbapedia.bulbagarden.net/wiki/Liquid_Ooze_(Ability)#In_battle: - * If the recipient of Leech Seed's effect were to faint due to Liquid Ooze on the same turn as the victim of Leech Seed, then the victim faints before the recipient. This means that the victim's team loses the battle if both teams had their final Pokémon sent out. + * If the recipient of Leech Seed's effect were to faint due to Liquid Ooze on the same turn as the victim of Leech Seed, then the victim faints before the recipient. This means that the victim's team loses the battle if both teams had their final Pokémon sent out. */ SINGLE_BATTLE_TEST("Liquid Ooze causes leech seed victim to faint before seeder") { @@ -140,6 +140,7 @@ SINGLE_BATTLE_TEST("Liquid Ooze causes leech seed victim to faint before seeder" SINGLE_BATTLE_TEST("Liquid Ooze causes Dream Eater users to lose HP instead of heal (Gen 5+)") { + KNOWN_FAILING; s16 damage; GIVEN { ASSUME(GetMoveEffect(MOVE_SPORE) == EFFECT_NON_VOLATILE_STATUS); @@ -158,8 +159,30 @@ SINGLE_BATTLE_TEST("Liquid Ooze causes Dream Eater users to lose HP instead of h HP_BAR(opponent); HP_BAR(player, captureDamage: &damage); } THEN { - EXPECT_LT(damage, 0); + EXPECT_GT(damage, 0); // Positive damage } } -TO_DO_BATTLE_TEST("Liquid Ooze does not cause Dream Eater users to lose HP instead of heal (Gen 3-4") +SINGLE_BATTLE_TEST("Liquid Ooze does not cause Dream Eater users to lose HP instead of heal (Gen 3-4") +{ + s16 damage; + GIVEN { + ASSUME(GetMoveEffect(MOVE_SPORE) == EFFECT_NON_VOLATILE_STATUS); + ASSUME(GetMoveNonVolatileStatus(MOVE_SPORE) == MOVE_EFFECT_SLEEP); + ASSUME(GetMoveEffect(MOVE_DREAM_EATER) == EFFECT_DREAM_EATER); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_TENTACRUEL) { Ability(ABILITY_LIQUID_OOZE); } + } WHEN { + TURN { MOVE(opponent, MOVE_SCRATCH); MOVE(player, MOVE_SPORE); } + TURN { MOVE(player, MOVE_DREAM_EATER); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, opponent); + HP_BAR(player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SPORE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_DREAM_EATER, player); + HP_BAR(opponent); + HP_BAR(player, captureDamage: &damage); + } THEN { + EXPECT_LT(damage, 0); // Negative damage = Heal + } +} diff --git a/test/battle/ability/mimicry.c b/test/battle/ability/mimicry.c index fbdb5cf98a..b9c3bb5fc3 100644 --- a/test/battle/ability/mimicry.c +++ b/test/battle/ability/mimicry.c @@ -70,3 +70,28 @@ SINGLE_BATTLE_TEST("Mimicry restores the battler's types when terrain is removed EXPECT_EQ(gBattleMons[B_POSITION_OPPONENT_LEFT].types[1], TYPE_STEEL); } } + +DOUBLE_BATTLE_TEST("Mimicry can trigger multiple times in a turn") +{ + GIVEN { + PLAYER(SPECIES_STUNFISK_GALAR) { Speed(50); Ability(ABILITY_MIMICRY); } + PLAYER(SPECIES_MORELULL) { Speed(40); } + OPPONENT(SPECIES_IGGLYBUFF) { Speed(60); } + OPPONENT(SPECIES_BAGON) { Speed(70); } + } WHEN { + TURN { MOVE(opponentRight, MOVE_ELECTRIC_TERRAIN); MOVE(opponentLeft, MOVE_MISTY_TERRAIN); } + } SCENE { + MESSAGE("The opposing Bagon used Electric Terrain!"); + ABILITY_POPUP(playerLeft, ABILITY_MIMICRY); + MESSAGE("Stunfisk's type changed to Electric!"); + // igglybuff + MESSAGE("The opposing Igglybuff used Misty Terrain!"); + ABILITY_POPUP(playerLeft, ABILITY_MIMICRY); + MESSAGE("Stunfisk's type changed to Fairy!"); + } THEN { + EXPECT_EQ(gBattleMons[0].types[0], TYPE_FAIRY); + EXPECT_EQ(gBattleMons[0].types[1], TYPE_FAIRY); + EXPECT_EQ(gBattleMons[0].types[2], TYPE_MYSTERY); + } +} + diff --git a/test/battle/ability/mirror_armor.c b/test/battle/ability/mirror_armor.c index 66d7ad5284..7d027398f3 100644 --- a/test/battle/ability/mirror_armor.c +++ b/test/battle/ability/mirror_armor.c @@ -1,7 +1,7 @@ #include "global.h" #include "test/battle.h" -SINGLE_BATTLE_TEST("Mirror Armor lowers a stat of the attacking pokemon") +SINGLE_BATTLE_TEST("Mirror Armor lowers a stat of the attacking Pokémon") { u16 move, statId; diff --git a/test/battle/ability/moxie.c b/test/battle/ability/moxie.c index a39fb91df8..1dda9f7926 100644 --- a/test/battle/ability/moxie.c +++ b/test/battle/ability/moxie.c @@ -4,8 +4,8 @@ DOUBLE_BATTLE_TEST("Moxie/Chilling Neigh raises Attack by one stage after directly causing a Pokemon to faint") { u32 species = 0, ability = 0, abilityPopUp = 0; - PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } - PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } + PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } + PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } PARAMETRIZE { species = SPECIES_CALYREX_ICE; ability = ABILITY_AS_ONE_ICE_RIDER; abilityPopUp = ABILITY_CHILLING_NEIGH; } GIVEN { ASSUME(GetMoveTarget(MOVE_EARTHQUAKE) == MOVE_TARGET_FOES_AND_ALLY); @@ -37,8 +37,8 @@ DOUBLE_BATTLE_TEST("Moxie/Chilling Neigh raises Attack by one stage after direct DOUBLE_BATTLE_TEST("Moxie/Chilling Neigh does not trigger if Pokemon faint to indirect damage or damage from other Pokemon") { u32 species = 0, ability = 0, abilityPopUp = 0; - PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } - PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } + PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } + PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } PARAMETRIZE { species = SPECIES_CALYREX_ICE; ability = ABILITY_AS_ONE_ICE_RIDER; abilityPopUp = ABILITY_CHILLING_NEIGH; } GIVEN { PLAYER(species) { Ability(ability); } @@ -74,8 +74,8 @@ DOUBLE_BATTLE_TEST("Moxie/Chilling Neigh does not trigger if Pokemon faint to in SINGLE_BATTLE_TEST("Moxie/Chilling Neigh does not trigger when already at maximum Attack stage") { u32 species = 0, ability = 0, abilityPopUp = 0; - PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } - PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } + PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } + PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } PARAMETRIZE { species = SPECIES_CALYREX_ICE; ability = ABILITY_AS_ONE_ICE_RIDER; abilityPopUp = ABILITY_CHILLING_NEIGH; } GIVEN { ASSUME(GetMoveEffect(MOVE_BELLY_DRUM) == EFFECT_BELLY_DRUM); @@ -112,9 +112,9 @@ DOUBLE_BATTLE_TEST("Moxie/Chilling Neigh does not increase damage done by the sa { s16 damage[2]; u32 species = 0, ability = 0, abilityPopUp = 0; - PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } - PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } - PARAMETRIZE { species = SPECIES_CALYREX_ICE; ability = ABILITY_AS_ONE_ICE_RIDER; abilityPopUp = ABILITY_CHILLING_NEIGH; } + PARAMETRIZE { species = SPECIES_SALAMENCE; ability = ABILITY_MOXIE; abilityPopUp = ABILITY_MOXIE; } + PARAMETRIZE { species = SPECIES_GLASTRIER; ability = ABILITY_CHILLING_NEIGH; abilityPopUp = ABILITY_CHILLING_NEIGH; } + PARAMETRIZE { species = SPECIES_CALYREX_ICE; ability = ABILITY_AS_ONE_ICE_RIDER; abilityPopUp = ABILITY_CHILLING_NEIGH; } GIVEN { ASSUME(GetMoveTarget(MOVE_EARTHQUAKE) == MOVE_TARGET_FOES_AND_ALLY); diff --git a/test/battle/ability/opportunist.c b/test/battle/ability/opportunist.c index d48b7c1eeb..7c0bce4771 100644 --- a/test/battle/ability/opportunist.c +++ b/test/battle/ability/opportunist.c @@ -212,7 +212,7 @@ DOUBLE_BATTLE_TEST("Opportunist copies the stat increase of each opposing mon") } -DOUBLE_BATTLE_TEST("Opportunist copies the stat of each pokemon that were raised at the same time") +DOUBLE_BATTLE_TEST("Opportunist copies the stat of each Pokémon that were raised at the same time") { GIVEN { PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/ability/pickup.c b/test/battle/ability/pickup.c index 9db7c0f2de..cc9ae37e9d 100644 --- a/test/battle/ability/pickup.c +++ b/test/battle/ability/pickup.c @@ -23,10 +23,10 @@ SINGLE_BATTLE_TEST("Pickup grants an item used by another Pokémon") } } -WILD_BATTLE_TEST("Pickup grants an item used by itself in wild battles (Gen 9)") +WILD_BATTLE_TEST("Pickup grants an item used by itself in wild battles (Gen9+)") { GIVEN { - ASSUME(B_PICKUP_WILD >= GEN_9); + WITH_CONFIG(GEN_PICKUP_WILD, GEN_9); PLAYER(SPECIES_ZIGZAGOON) { Ability(ABILITY_PICKUP); MaxHP(100); HP(51); Item(ITEM_SITRUS_BERRY); } OPPONENT(SPECIES_WOBBUFFET); } WHEN { diff --git a/test/battle/ability/primordial_sea.c b/test/battle/ability/primordial_sea.c index e895d8ba48..39d350d3a0 100644 --- a/test/battle/ability/primordial_sea.c +++ b/test/battle/ability/primordial_sea.c @@ -52,7 +52,7 @@ DOUBLE_BATTLE_TEST("Primordial Sea blocks damaging Fire-type moves and prints th } } -SINGLE_BATTLE_TEST("Primordial Sea does not block a move if pokemon is asleep and uses a Fire-type move") // Sleep/confusion/paralysis all happen before the check for primal weather +SINGLE_BATTLE_TEST("Primordial Sea does not block a move if Pokémon is asleep and uses a Fire-type move") // Sleep/confusion/paralysis all happen before the check for primal weather { GIVEN { PLAYER(SPECIES_KYOGRE) {Item(ITEM_BLUE_ORB);} @@ -63,4 +63,4 @@ SINGLE_BATTLE_TEST("Primordial Sea does not block a move if pokemon is asleep an NOT MESSAGE("The Fire-type attack fizzled out in the heavy rain!"); MESSAGE("The opposing Wobbuffet is fast asleep."); } -} \ No newline at end of file +} diff --git a/test/battle/ability/protean.c b/test/battle/ability/protean.c index 88144670a1..c5d141d244 100644 --- a/test/battle/ability/protean.c +++ b/test/battle/ability/protean.c @@ -1,14 +1,36 @@ #include "global.h" #include "test/battle.h" -ASSUMPTIONS -{ - ASSUME(B_PROTEAN_LIBERO == GEN_9); -} - -SINGLE_BATTLE_TEST("Protean changes the type of the user only once per switch in") +SINGLE_BATTLE_TEST("Protean changes the type of the user to the move used every time (Gen6-8)") { GIVEN { + WITH_CONFIG(GEN_PROTEAN_LIBERO, GEN_6); + PLAYER(SPECIES_REGIROCK); + OPPONENT(SPECIES_KECLEON) { Ability(ABILITY_PROTEAN); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_WATER_GUN); } + TURN { MOVE(opponent, MOVE_SCRATCH); } + TURN { SWITCH(opponent, 1); } + TURN { SWITCH(opponent, 0); } + TURN { MOVE(opponent, MOVE_WATER_GUN); } + } SCENE { + ABILITY_POPUP(opponent, ABILITY_PROTEAN); + MESSAGE("The opposing Kecleon transformed into the Water type!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_GUN, opponent); + ABILITY_POPUP(opponent, ABILITY_PROTEAN); + MESSAGE("The opposing Kecleon transformed into the Normal type!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, opponent); + ABILITY_POPUP(opponent, ABILITY_PROTEAN); + MESSAGE("The opposing Kecleon transformed into the Water type!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_GUN, opponent); + } +} + +SINGLE_BATTLE_TEST("Protean changes the type of the user only once per switch in (Gen9+)") +{ + GIVEN { + WITH_CONFIG(GEN_PROTEAN_LIBERO, GEN_9); PLAYER(SPECIES_REGIROCK); OPPONENT(SPECIES_KECLEON) { Ability(ABILITY_PROTEAN); } OPPONENT(SPECIES_WOBBUFFET); diff --git a/test/battle/ability/purifying_salt.c b/test/battle/ability/purifying_salt.c index 49060e6596..23f097e8aa 100644 --- a/test/battle/ability/purifying_salt.c +++ b/test/battle/ability/purifying_salt.c @@ -105,7 +105,7 @@ SINGLE_BATTLE_TEST("Purifying Salt user can't be poisoned by Toxic Spikes") } } -SINGLE_BATTLE_TEST("Purifying Salt doesn't prevent pokemon from being poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker") +SINGLE_BATTLE_TEST("Purifying Salt doesn't prevent Pokémon from being poisoned by Toxic Spikes on switch-in if forced in by phazing with Mold Breaker") { GIVEN { ASSUME(GetMoveEffect(MOVE_DRAGON_TAIL) == EFFECT_HIT_SWITCH_TARGET); diff --git a/test/battle/ability/refrigerate.c b/test/battle/ability/refrigerate.c index 5f5092f93f..7b3af0277c 100644 --- a/test/battle/ability/refrigerate.c +++ b/test/battle/ability/refrigerate.c @@ -52,6 +52,7 @@ SINGLE_BATTLE_TEST("Refrigerate doesn't affect Weather Ball's type", s16 damage) PARAMETRIZE { move = MOVE_CELEBRATE; ability = ABILITY_REFRIGERATE; } PARAMETRIZE { move = MOVE_SUNNY_DAY; ability = ABILITY_REFRIGERATE; } GIVEN { + WITH_CONFIG(GEN_SNOW_WARNING, GEN_9); //To prevent capturing hail damage ASSUME(GetMoveEffect(MOVE_WEATHER_BALL) == EFFECT_WEATHER_BALL); ASSUME(gSpeciesInfo[SPECIES_PINSIR].types[0] == TYPE_BUG); PLAYER(SPECIES_AMAURA) { Ability(ability); } diff --git a/test/battle/ability/snow_warning.c b/test/battle/ability/snow_warning.c index 17f18814b8..171ad23b49 100644 --- a/test/battle/ability/snow_warning.c +++ b/test/battle/ability/snow_warning.c @@ -1,24 +1,30 @@ #include "global.h" #include "test/battle.h" -#if B_SNOW_WARNING < GEN_9 -SINGLE_BATTLE_TEST("Snow Warning summons hail") -#elif B_SNOW_WARNING >= GEN_9 -SINGLE_BATTLE_TEST("Snow Warning summons snow") -#endif +SINGLE_BATTLE_TEST("Snow Warning summons hail (Gen4-8)") { GIVEN { + WITH_CONFIG(GEN_SNOW_WARNING, GEN_8); PLAYER(SPECIES_ABOMASNOW) { Ability(ABILITY_SNOW_WARNING); } OPPONENT(SPECIES_WOBBUFFET); } WHEN { TURN {} } SCENE { - #if B_SNOW_WARNING < GEN_9 MESSAGE("It started to hail!"); ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HAIL_CONTINUES); - #elif B_SNOW_WARNING >= GEN_9 - MESSAGE("It started to snow!"); - ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SNOW_CONTINUES); - #endif + } +} + +SINGLE_BATTLE_TEST("Snow Warning summons snow (Gen9+)") +{ + GIVEN { + WITH_CONFIG(GEN_SNOW_WARNING, GEN_9); + PLAYER(SPECIES_ABOMASNOW) { Ability(ABILITY_SNOW_WARNING); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN {} + } SCENE { + MESSAGE("It started to snow!"); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SNOW_CONTINUES); } } diff --git a/test/battle/ability/volt_absorb.c b/test/battle/ability/volt_absorb.c index 5d88cb95e4..becc76fd13 100644 --- a/test/battle/ability/volt_absorb.c +++ b/test/battle/ability/volt_absorb.c @@ -61,7 +61,7 @@ SINGLE_BATTLE_TEST("Volt Absorb is only triggered once on multi strike moves") } } -DOUBLE_BATTLE_TEST("Volt Absorb does not stop Electric Typed Explosion from damaging other pokemon") // Fixed issue #1961 +DOUBLE_BATTLE_TEST("Volt Absorb does not stop Electric Typed Explosion from damaging other Pokémon") // Fixed issue #1961 { s16 damage1, damage2; GIVEN { diff --git a/test/battle/ai/ai_switching.c b/test/battle/ai/ai_switching.c index 03334e04c2..712076fc70 100644 --- a/test/battle/ai/ai_switching.c +++ b/test/battle/ai/ai_switching.c @@ -40,7 +40,7 @@ AI_SINGLE_BATTLE_TEST("AI switches if Perish Song is about to kill") } } -AI_DOUBLE_BATTLE_TEST("AI will not try to switch for the same pokemon for 2 spots in a double battle (all bad moves)") +AI_DOUBLE_BATTLE_TEST("AI will not try to switch for the same Pokémon for 2 spots in a double battle (all bad moves)") { u32 flags; @@ -98,7 +98,7 @@ AI_SINGLE_BATTLE_TEST("When AI switches out due to having no move that affects t } } -AI_DOUBLE_BATTLE_TEST("AI will not try to switch for the same pokemon for 2 spots in a double battle (Wonder Guard)") +AI_DOUBLE_BATTLE_TEST("AI will not try to switch for the same Pokémon for 2 spots in a double battle (Wonder Guard)") { PASSES_RANDOMLY(SHOULD_SWITCH_WONDER_GUARD_PERCENTAGE, 100, RNG_AI_SWITCH_WONDER_GUARD); GIVEN { @@ -842,6 +842,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will switch out if it has an PARAMETRIZE { aiMon = SPECIES_SHIFTRY; absorbingAbility = ABILITY_WIND_RIDER; move = MOVE_HURRICANE;} GIVEN { ASSUME(B_REDIRECT_ABILITY_IMMUNITY >= GEN_5); + ASSUME(P_UPDATED_ABILITIES >= GEN_9); //For the predicted ability for Shiftry AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING); PLAYER(SPECIES_ZIGZAGOON) { Moves(move); } OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_SCRATCH); } diff --git a/test/battle/gimmick/dynamax.c b/test/battle/gimmick/dynamax.c index a929c82068..0e9118252e 100644 --- a/test/battle/gimmick/dynamax.c +++ b/test/battle/gimmick/dynamax.c @@ -601,7 +601,7 @@ SINGLE_BATTLE_TEST("Dynamax: Dynamaxed Pokemon cannot use Max Guard while holdin // Almost anything that calculates damage based on HP has been changed to non-Dynamax HP. // This includes Leftovers, Life Orb, Heal Pulse, Rocky Helmet, Sandstorm, etc. etc. -// There are some redundant cases (i.e Substitute) that can never be used by a Dynamaxed pokemon. +// There are some redundant cases (i.e Substitute) that can never be used by a Dynamaxed Pokémon. // Anything that is conditional based off max HP still uses gBattleMons[battler].maxHP. // Below are some tests, but very far from all encompassing: @@ -1660,3 +1660,6 @@ SINGLE_BATTLE_TEST("Dynamax: Destiny Bond fails if a dynamaxed battler is presen MESSAGE("The move was blocked by the power of Dynamax!"); } } + +TO_DO_BATTLE_TEST("Dynamax: Contrary inverts stat-lowering Max Moves, without showing a message") +TO_DO_BATTLE_TEST("Dynamax: Contrary inverts stat-increasing Max Moves, without showing a message") diff --git a/test/battle/gimmick/terastal.c b/test/battle/gimmick/terastal.c index 7ce10a5942..66a34def92 100644 --- a/test/battle/gimmick/terastal.c +++ b/test/battle/gimmick/terastal.c @@ -755,7 +755,7 @@ SINGLE_BATTLE_TEST("(TERA) Terapagos retains its base defensive profile when Ter } } -SINGLE_BATTLE_TEST("(TERA) Illusion breaks if the pokemon Terastallizes when illusioned as a mon that changes forms by Terastallizing") +SINGLE_BATTLE_TEST("(TERA) Illusion breaks if the Pokémon Terastallizes when illusioned as a mon that changes forms by Terastallizing") { u32 species; PARAMETRIZE { species = SPECIES_TERAPAGOS; } @@ -791,19 +791,16 @@ SINGLE_BATTLE_TEST("(TERA) Illusion doesn't break upon Terastallizing when illus } } -/* -// This test freezes the emulator -SINGLE_BATTLE_TEST("(TERA) Transformed pokemon can't Terastalize") +SINGLE_BATTLE_TEST("(TERA) Transformed Pokémon can't Terastalize") { GIVEN { - PLAYER(SPECIES_DITTO); - OPPONENT(SPECIES_TERAPAGOS) { Moves(MOVE_CELEBRATE); } + PLAYER(SPECIES_DITTO) { Moves(MOVE_TRANSFORM, MOVE_CELEBRATE); } + OPPONENT(SPECIES_TERAPAGOS) { Moves(MOVE_TRANSFORM, MOVE_CELEBRATE); } } WHEN { TURN { MOVE(player, MOVE_TRANSFORM); } TURN { MOVE(player, MOVE_CELEBRATE, gimmick: GIMMICK_TERA); } } } -*/ SINGLE_BATTLE_TEST("(TERA) Pokemon with Tera forms change upon Terastallizing") { diff --git a/test/battle/gimmick/zmove.c b/test/battle/gimmick/zmove.c index 058d59c620..14457fa0b7 100644 --- a/test/battle/gimmick/zmove.c +++ b/test/battle/gimmick/zmove.c @@ -679,3 +679,7 @@ SINGLE_BATTLE_TEST("(Z-MOVE) Z-Revelation Dance always transforms into Breakneck ANIMATION(ANIM_TYPE_MOVE, MOVE_BREAKNECK_BLITZ, player); } } + +TO_DO_BATTLE_TEST("(Z-MOVE) Stat changes from status Z-Moves are not inverted by Contrary") +TO_DO_BATTLE_TEST("(Z-MOVE) Stat changes from Extreme Evoboost are inverted by Contrary") +TO_DO_BATTLE_TEST("(Z-MOVE) Stat changes from Clangorous Soulblaze are inverted by Contrary") diff --git a/test/battle/hold_effect/cure_status.c b/test/battle/hold_effect/cure_status.c index 133eeafb41..0fa0f7ba07 100644 --- a/test/battle/hold_effect/cure_status.c +++ b/test/battle/hold_effect/cure_status.c @@ -116,6 +116,8 @@ SINGLE_BATTLE_TEST("Chesto and Lum Berries cure sleep") } } +TO_DO_BATTLE_TEST("Chesto and Lum Berries don't trigger if the holder has Comatose") + SINGLE_BATTLE_TEST("Cheri and Lum Berries cure paralysis") { u16 item; @@ -158,7 +160,7 @@ SINGLE_BATTLE_TEST("Perism and Lum Berries cure confusion") } } -SINGLE_BATTLE_TEST("Berry hold effect cures status if a pokemon enters a battle") +SINGLE_BATTLE_TEST("Berry hold effect cures status if a Pokémon enters a battle") { u16 status; u16 item; @@ -289,6 +291,5 @@ DOUBLE_BATTLE_TEST("Lum Berry correctly cures all battlers if multiple fainted t EXPECT_EQ(playerLeft->status1, STATUS1_NONE); EXPECT_EQ(playerRight->status1, STATUS1_NONE); EXPECT_EQ(opponentLeft->status1, STATUS1_NONE); - } } diff --git a/test/battle/hold_effect/eject_pack.c b/test/battle/hold_effect/eject_pack.c index f33a59de21..208d656362 100644 --- a/test/battle/hold_effect/eject_pack.c +++ b/test/battle/hold_effect/eject_pack.c @@ -21,7 +21,7 @@ SINGLE_BATTLE_TEST("Eject Pack does not cause the new Pokémon to lose HP due to ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, player); MESSAGE("Wobbuffet is switched out with the Eject Pack!"); SEND_IN_MESSAGE("Wynaut"); - NOT MESSAGE("Wynaut was hurt by its Life Orb!"); + NOT HP_BAR(player); ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); } } diff --git a/test/battle/hold_effect/life_orb.c b/test/battle/hold_effect/life_orb.c index 92c545dfad..2f1514538c 100644 --- a/test/battle/hold_effect/life_orb.c +++ b/test/battle/hold_effect/life_orb.c @@ -81,3 +81,53 @@ SINGLE_BATTLE_TEST("Life Orb doesn't cause any HP loss if user is unable to atta } } } + +SINGLE_BATTLE_TEST("Life Orb does not activate if on a confusion hit") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Item(ITEM_LIFE_ORB); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_CONFUSE_RAY); MOVE(player, MOVE_POUND, WITH_RNG(RNG_CONFUSION, TRUE)); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CONFUSE_RAY, opponent); + HP_BAR(player); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, player); + HP_BAR(opponent); + HP_BAR(player); + MESSAGE("Wobbuffet was hurt by the Life Orb!"); + } + } +} + +SINGLE_BATTLE_TEST("Life Orb does not activate if move was absorbed by target") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Item(ITEM_LIFE_ORB); } + OPPONENT(SPECIES_RAICHU) { Ability(ABILITY_LIGHTNING_ROD); } + } WHEN { + TURN { MOVE(player, MOVE_SHOCK_WAVE); } + } SCENE { + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SHOCK_WAVE, player); + HP_BAR(opponent); + HP_BAR(player); + MESSAGE("Wobbuffet was hurt by the Life Orb!"); + } + } +} + +SINGLE_BATTLE_TEST("Life Orb activates if move connected but no damage was dealt") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Item(ITEM_LIFE_ORB); } + OPPONENT(SPECIES_WOBBUFFET) { HP(1); } + } WHEN { + TURN { MOVE(player, MOVE_FALSE_SWIPE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FALSE_SWIPE, player); + HP_BAR(player); + MESSAGE("Wobbuffet was hurt by the Life Orb!"); + } +} diff --git a/test/battle/hold_effect/red_card.c b/test/battle/hold_effect/red_card.c index a21318d246..6b5e08c450 100644 --- a/test/battle/hold_effect/red_card.c +++ b/test/battle/hold_effect/red_card.c @@ -455,7 +455,7 @@ SINGLE_BATTLE_TEST("Red Card does not cause the dragged out mon to lose hp due t ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, opponent); MESSAGE("The opposing Wobbuffet held up its Red Card against Wobbuffet!"); MESSAGE("Wynaut was dragged out!"); - NOT MESSAGE("Wynaut was hurt by its Life Orb!"); + NOT HP_BAR(player); } } diff --git a/test/battle/hold_effect/safety_goggles.c b/test/battle/hold_effect/safety_goggles.c index e2d329bcf6..346e41fbfe 100644 --- a/test/battle/hold_effect/safety_goggles.c +++ b/test/battle/hold_effect/safety_goggles.c @@ -44,4 +44,32 @@ SINGLE_BATTLE_TEST("Safety Goggles blocks damage from Sandstorm") } } -TO_DO_BATTLE_TEST("Safety Goggles blocks Effect Spore's effect"); +SINGLE_BATTLE_TEST("Safety Goggles blocks Effect Spore's effect") +{ + PASSES_RANDOMLY(100, 100, RNG_EFFECT_SPORE); + GIVEN { + ASSUME(MoveMakesContact(MOVE_SCRATCH)); + PLAYER(SPECIES_WOBBUFFET) { Item(ITEM_SAFETY_GOGGLES); } + OPPONENT(SPECIES_BRELOOM) { Ability(ABILITY_EFFECT_SPORE); } + } WHEN { + TURN { MOVE(player, MOVE_SCRATCH); } + TURN {} + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, player); + NONE_OF { + ABILITY_POPUP(opponent, ABILITY_EFFECT_SPORE); + + ANIMATION(ANIM_TYPE_STATUS, B_ANIM_STATUS_PSN, player); + MESSAGE("Wobbuffet was poisoned by the opposing Breloom's Effect Spore!"); + STATUS_ICON(player, poison: TRUE); + + ANIMATION(ANIM_TYPE_STATUS, B_ANIM_STATUS_PRZ, player); + MESSAGE("The opposing Breloom's Effect Spore paralyzed Wobbuffet, so it may be unable to move!"); + STATUS_ICON(player, paralysis: TRUE); + + ANIMATION(ANIM_TYPE_STATUS, B_ANIM_STATUS_SLP, player); + MESSAGE("The opposing Breloom's Effect Spore made Wobbuffet sleep!"); + STATUS_ICON(player, sleep: TRUE); + } + } +} diff --git a/test/battle/move.c b/test/battle/move.c index 541dc3812c..c2d2b6645f 100644 --- a/test/battle/move.c +++ b/test/battle/move.c @@ -226,7 +226,7 @@ DOUBLE_BATTLE_TEST("Moves do not fail if an alive partner is the target") } } -DOUBLE_BATTLE_TEST("Moves fail if they target into a pokemon that was fainted by the previous move") +DOUBLE_BATTLE_TEST("Moves fail if they target into a Pokémon that was fainted by the previous move") { GIVEN { ASSUME(GetMoveTarget(MOVE_HYPER_VOICE) == MOVE_TARGET_BOTH); diff --git a/test/battle/move_effect/after_you.c b/test/battle/move_effect/after_you.c index 42eb0f3ff9..222b94c7b6 100644 --- a/test/battle/move_effect/after_you.c +++ b/test/battle/move_effect/after_you.c @@ -52,7 +52,7 @@ DOUBLE_BATTLE_TEST("After You does nothing if the target has already moved") } } -DOUBLE_BATTLE_TEST("After You calculates correct turn order if only one pokemon is left on the opposing side") +DOUBLE_BATTLE_TEST("After You calculates correct turn order if only one Pokémon is left on the opposing side") { GIVEN { PLAYER(SPECIES_GRENINJA) { Speed(120); } diff --git a/test/battle/move_effect/ally_switch.c b/test/battle/move_effect/ally_switch.c index a8e9944e34..b808183fbd 100644 --- a/test/battle/move_effect/ally_switch.c +++ b/test/battle/move_effect/ally_switch.c @@ -90,7 +90,7 @@ DOUBLE_BATTLE_TEST("Ally Switch does not redirect the target of Snipe Shot") } } -DOUBLE_BATTLE_TEST("Ally Switch does not redirect moves done by pokemon with Stalwart and Propeller Tail") +DOUBLE_BATTLE_TEST("Ally Switch does not redirect moves done by Pokémon with Stalwart and Propeller Tail") { u16 ability; PARAMETRIZE { ability = ABILITY_STALWART; } @@ -185,10 +185,25 @@ DOUBLE_BATTLE_TEST("Ally Switch doesn't make self-targeting status moves fail") } } -DOUBLE_BATTLE_TEST("Ally Switch increases the Protect-like moves counter") +DOUBLE_BATTLE_TEST("Ally Switch doesn't increase the Protect-like moves counter (Gen5-8)") { GIVEN { - ASSUME(B_ALLY_SWITCH_FAIL_CHANCE >= GEN_9); + WITH_CONFIG(GEN_ALLY_SWITCH_FAIL_CHANCE, GEN_8); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerLeft, MOVE_ALLY_SWITCH); } + } THEN { + EXPECT(gDisableStructs[B_POSITION_PLAYER_RIGHT].protectUses == 0); + } +} + +DOUBLE_BATTLE_TEST("Ally Switch increases the Protect-like moves counter (Gen9+)") +{ + GIVEN { + WITH_CONFIG(GEN_ALLY_SWITCH_FAIL_CHANCE, GEN_9); PLAYER(SPECIES_WOBBUFFET); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_WOBBUFFET); @@ -319,7 +334,7 @@ DOUBLE_BATTLE_TEST("Ally switch updates last used moves for Mimic") OPPONENT(SPECIES_FEAROW) { Speed(20); } OPPONENT(SPECIES_ARON) { Speed(30); } } WHEN { - TURN { MOVE(playerRight, MOVE_FAKE_OUT, target: opponentRight); MOVE(playerLeft, MOVE_ALLY_SWITCH); + TURN { MOVE(playerRight, MOVE_FAKE_OUT, target: opponentRight); MOVE(playerLeft, MOVE_ALLY_SWITCH); MOVE(opponentLeft, MOVE_MIMIC, target: playerLeft); } } SCENE { diff --git a/test/battle/move_effect/assurance.c b/test/battle/move_effect/assurance.c index e6cbf72b9f..6eccb48f3f 100644 --- a/test/battle/move_effect/assurance.c +++ b/test/battle/move_effect/assurance.c @@ -6,3 +6,30 @@ TO_DO_BATTLE_TEST("Assurance doubles in power if the target has been damaged in TO_DO_BATTLE_TEST("Assurance doubles in power if the target has been damaged in the same turn - Crash"); TO_DO_BATTLE_TEST("Assurance doubles in power if the target has been damaged in the same turn - Confusion"); TO_DO_BATTLE_TEST("Assurance doubles in power if the target has been damaged in the same turn - Rocky Helmet"); + +DOUBLE_BATTLE_TEST("Assurance doubles in power if False Swipe connected but didn't do any damage") +{ + s16 hits[2]; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { HP(1); } + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_ASSURANCE, target: playerRight); } + TURN { + MOVE(opponentLeft, MOVE_FALSE_SWIPE, target: playerLeft); + MOVE(playerLeft, MOVE_RECOVER); + MOVE(opponentRight, MOVE_ASSURANCE, target: playerLeft); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_ASSURANCE, opponentLeft); + HP_BAR(playerRight, captureDamage: &hits[0]); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FALSE_SWIPE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_ASSURANCE, opponentRight); + HP_BAR(playerLeft, captureDamage: &hits[1]); + } THEN { + EXPECT_MUL_EQ(hits[0], Q_4_12(2.0), hits[1]); + } +} diff --git a/test/battle/move_effect/beak_blast.c b/test/battle/move_effect/beak_blast.c index 75796de13a..8c28e7f8ea 100644 --- a/test/battle/move_effect/beak_blast.c +++ b/test/battle/move_effect/beak_blast.c @@ -33,7 +33,7 @@ DOUBLE_BATTLE_TEST("Beak Blast's charging message is shown before other moves ar } } -DOUBLE_BATTLE_TEST("Beak Blast burns all who make contact with the pokemon") +DOUBLE_BATTLE_TEST("Beak Blast burns all who make contact with the Pokémon") { GIVEN { ASSUME(GetMovePriority(MOVE_BEAK_BLAST) < 0); diff --git a/test/battle/move_effect/beat_up.c b/test/battle/move_effect/beat_up.c index 5e11360531..dd0d19925f 100644 --- a/test/battle/move_effect/beat_up.c +++ b/test/battle/move_effect/beat_up.c @@ -3,6 +3,7 @@ // General TO_DO_BATTLE_TEST("Beat Up hits the target for each non-fainted, non-statused member in the party"); +TO_DO_BATTLE_TEST("Beat Up doesn't consider Comatose as a status") TO_DO_BATTLE_TEST("Beat Up's strikes have each an independent chance of a critical hit"); // B_BEAT_UP Gen2-4 diff --git a/test/battle/move_effect/belly_drum.c b/test/battle/move_effect/belly_drum.c index 1580487cca..20024f5b91 100644 --- a/test/battle/move_effect/belly_drum.c +++ b/test/battle/move_effect/belly_drum.c @@ -130,6 +130,91 @@ SINGLE_BATTLE_TEST("Belly Drum minimizes the user's Attack stat with Contrary", } } -TO_DO_BATTLE_TEST("Belly Drum maximizes the user's Attack stat, even when below 0"); -TO_DO_BATTLE_TEST("Belly Drum fails if the user's Attack is already at +6, even with Contrary"); -TO_DO_BATTLE_TEST("Belly Drum deducts HP if the user has contrary and is at -6"); +SINGLE_BATTLE_TEST("Belly Drum maximizes the user's Attack stat, even when below 0", s16 damage) +{ + bool32 raiseAttack; + PARAMETRIZE { raiseAttack = FALSE; } + PARAMETRIZE { raiseAttack = TRUE; } + GIVEN { + ASSUME(GetMoveCategory(MOVE_SCRATCH) == DAMAGE_CATEGORY_PHYSICAL); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + if (raiseAttack) TURN { MOVE(opponent, MOVE_GROWL); MOVE(player, MOVE_BELLY_DRUM); } + TURN { MOVE(player, MOVE_SCRATCH); } + } SCENE { + if (raiseAttack) { + ANIMATION(ANIM_TYPE_MOVE, MOVE_BELLY_DRUM, player); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Wobbuffet cut its own HP and maximized its Attack!"); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, player); + HP_BAR(opponent, captureDamage: &results[i].damage); + } THEN { + if (raiseAttack) EXPECT_EQ(player->statStages[STAT_ATK], DEFAULT_STAT_STAGE + 6); + } FINALLY { + EXPECT_MUL_EQ(results[0].damage, Q_4_12(4), results[1].damage); + } +} + +SINGLE_BATTLE_TEST("Belly Drum fails if the user's Attack is already at +6, even with Contrary") +{ + KNOWN_FAILING; + GIVEN { + ASSUME(GetMoveEffect(MOVE_CHARM) == EFFECT_ATTACK_DOWN_2); + PLAYER(SPECIES_SERPERIOR) { Ability(ABILITY_CONTRARY); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_CHARM); } + TURN { MOVE(opponent, MOVE_CHARM); } + TURN { MOVE(opponent, MOVE_CHARM); } + TURN { MOVE(player, MOVE_BELLY_DRUM); } + } SCENE { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack sharply rose!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack sharply rose!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack sharply rose!"); + + MESSAGE("But it failed!"); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_BELLY_DRUM, player); + HP_BAR(player); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + } + } +} + +SINGLE_BATTLE_TEST("Belly Drum deducts HP if the user has Contrary and is at -6") +{ + KNOWN_FAILING; + GIVEN { + ASSUME(GetMoveEffect(MOVE_SWORDS_DANCE) == EFFECT_ATTACK_UP_2); + PLAYER(SPECIES_SERPERIOR) { Ability(ABILITY_CONTRARY); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_SWORDS_DANCE); } + TURN { MOVE(player, MOVE_SWORDS_DANCE); } + TURN { MOVE(player, MOVE_SWORDS_DANCE); } + TURN { MOVE(player, MOVE_BELLY_DRUM); } + } SCENE { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack harshly fell!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack harshly fell!"); + + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, player); + MESSAGE("Serperior's Attack harshly fell!"); + + NOT MESSAGE("But it failed!"); + + ANIMATION(ANIM_TYPE_MOVE, MOVE_BELLY_DRUM, player); + s32 maxHP = GetMonData(&PLAYER_PARTY[0], MON_DATA_MAX_HP); + HP_BAR(player, hp: maxHP / 2); + MESSAGE("Wobbuffet cut its own HP and maximized its Attack!"); + } +} diff --git a/test/battle/move_effect/bolt_beak.c b/test/battle/move_effect/bolt_beak.c index fdd95da700..f7c11858da 100644 --- a/test/battle/move_effect/bolt_beak.c +++ b/test/battle/move_effect/bolt_beak.c @@ -1,5 +1,51 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Bolt Beak's base power is doubled if it attacks before the target"); -TO_DO_BATTLE_TEST("Bolt Beak's base power is doubled the target switches out"); +SINGLE_BATTLE_TEST("Bolt Beak's base power is doubled if it attacks before the target", s16 damage) +{ + u32 speed; + PARAMETRIZE { speed = 1; } + PARAMETRIZE { speed = 3; } + GIVEN { + ASSUME(GetMoveEffect(MOVE_BOLT_BEAK) == EFFECT_BOLT_BEAK); + PLAYER(SPECIES_DRACOZOLT) { Speed(speed); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); } + } WHEN { + TURN { MOVE(player, MOVE_BOLT_BEAK); } + } SCENE { + if (speed == 1) { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + } + ANIMATION(ANIM_TYPE_MOVE, MOVE_BOLT_BEAK, player); + HP_BAR(opponent, captureDamage: &results[i].damage); + if (speed == 3) { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + } + } FINALLY { + EXPECT_MUL_EQ(results[0].damage, Q_4_12(2.0), results[1].damage); + } +} + +SINGLE_BATTLE_TEST("Bolt Beak's base power is doubled the target switches out", s16 damage) +{ + bool32 switchOut; + PARAMETRIZE { switchOut = FALSE; } + PARAMETRIZE { switchOut = TRUE; } + GIVEN { + ASSUME(GetMoveEffect(MOVE_BOLT_BEAK) == EFFECT_BOLT_BEAK); + PLAYER(SPECIES_DRACOZOLT) { Speed(1); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); } + } WHEN { + TURN { + MOVE(player, MOVE_BOLT_BEAK); + if (switchOut) + SWITCH(opponent, 1); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_BOLT_BEAK, player); + HP_BAR(opponent, captureDamage: &results[i].damage); + } FINALLY { + EXPECT_MUL_EQ(results[0].damage, Q_4_12(2.0), results[1].damage); + } +} diff --git a/test/battle/move_effect/chloroblast.c b/test/battle/move_effect/chloroblast.c index 6452736478..d60449324f 100644 --- a/test/battle/move_effect/chloroblast.c +++ b/test/battle/move_effect/chloroblast.c @@ -137,9 +137,14 @@ SINGLE_BATTLE_TEST("Chloroblast is not affected by Reckless", s16 damage) u32 move; PARAMETRIZE { move = MOVE_CHLOROBLAST; } - PARAMETRIZE { move = MOVE_FRENZY_PLANT; } + if (B_UPDATED_MOVE_DATA >= GEN_9) { + PARAMETRIZE { move = MOVE_FRENZY_PLANT; } // 150 power + } else { + PARAMETRIZE { move = MOVE_SEED_FLARE; } // 120 power + } GIVEN { + ASSUME(GetMovePower(MOVE_CHLOROBLAST) == GetMovePower(move)); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_WOBBUFFET); } WHEN { diff --git a/test/battle/move_effect/counter.c b/test/battle/move_effect/counter.c index d45e75b478..ece0ea9a9f 100644 --- a/test/battle/move_effect/counter.c +++ b/test/battle/move_effect/counter.c @@ -1,6 +1,12 @@ #include "global.h" #include "test/battle.h" +ASSUMPTIONS +{ + ASSUME(GetMoveEffect(MOVE_COUNTER) == EFFECT_COUNTER); + ASSUME(GetMoveCategory(MOVE_POUND) == DAMAGE_CATEGORY_PHYSICAL); +} + SINGLE_BATTLE_TEST("Counter is not affected by Protect effects") { u32 move; @@ -38,9 +44,110 @@ SINGLE_BATTLE_TEST("Counter is not affected by Protect effects") } } -TO_DO_BATTLE_TEST("Counter will do twice as much damage received from the opponent"); -TO_DO_BATTLE_TEST("Counter cannot affect ally Pokémon"); -TO_DO_BATTLE_TEST("Counter hits the last opponent that hit the user"); //Doubles +SINGLE_BATTLE_TEST("Counter will do twice as much damage received from the opponent") +{ + s16 normalDmg; + s16 counterDmg; + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_POUND); MOVE(player, MOVE_COUNTER); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, opponent); + HP_BAR(player, captureDamage: &normalDmg); + ANIMATION(ANIM_TYPE_MOVE, MOVE_COUNTER, player); + HP_BAR(opponent, captureDamage: &counterDmg); + } THEN { + EXPECT_MUL_EQ(normalDmg, Q_4_12(2.0), counterDmg); + } +} + +DOUBLE_BATTLE_TEST("Counter cannot affect ally Pokémon") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { + MOVE(playerLeft, MOVE_POUND, target: playerRight); + MOVE(playerRight, MOVE_COUNTER, target: playerLeft); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, playerLeft); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_COUNTER, playerRight); + } +} + +DOUBLE_BATTLE_TEST("Counter hits the last opponent that hit the user") +{ + s16 normalDmg; + s16 counterDmg; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { + MOVE(opponentLeft, MOVE_POUND, target: playerLeft); + MOVE(opponentRight, MOVE_SLAM, target: playerLeft); + MOVE(playerLeft, MOVE_COUNTER); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SLAM, opponentRight); + HP_BAR(playerLeft, captureDamage: &normalDmg); + ANIMATION(ANIM_TYPE_MOVE, MOVE_COUNTER, playerLeft); + HP_BAR(opponentRight, captureDamage: &counterDmg); + } THEN { + EXPECT_MUL_EQ(normalDmg, Q_4_12(2.0), counterDmg); + } +} + +DOUBLE_BATTLE_TEST("Counter respects Follow me") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { + MOVE(opponentRight, MOVE_FOLLOW_ME); + MOVE(opponentLeft, MOVE_POUND, target: playerLeft); + MOVE(playerLeft, MOVE_COUNTER, target: opponentLeft); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FOLLOW_ME, opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_COUNTER, playerLeft); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Counter fails if mon that damaged counter user is no longer on the field") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET) { HP(1); }; + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { + MOVE(opponentLeft, MOVE_POUND, target: playerLeft); + MOVE(playerRight, MOVE_POUND, target: opponentLeft); + MOVE(playerLeft, MOVE_COUNTER, target: opponentLeft); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_POUND, playerRight); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_COUNTER, playerLeft); + } +} // Gen 1 TO_DO_BATTLE_TEST("Counter can only counter Normal and Fighting-type moves (Gen 1)"); diff --git a/test/battle/move_effect/double_power_on_arg_status.c b/test/battle/move_effect/double_power_on_arg_status.c index d733d04c4f..14bfdb57af 100644 --- a/test/battle/move_effect/double_power_on_arg_status.c +++ b/test/battle/move_effect/double_power_on_arg_status.c @@ -29,6 +29,8 @@ SINGLE_BATTLE_TEST("Hex deals double damage to foes with a status", s16 damage) } } +TO_DO_BATTLE_TEST("Hex deals double damage to Pokémon with Comatose") + SINGLE_BATTLE_TEST("Venoshock's power doubles if the target is poisoned/badly poisoned", s16 damage) { u32 status1; diff --git a/test/battle/move_effect/facade.c b/test/battle/move_effect/facade.c index cc1e21e34f..2ed337cd1c 100644 --- a/test/battle/move_effect/facade.c +++ b/test/battle/move_effect/facade.c @@ -1,4 +1,6 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Facade (Move Effect) test titles") +TO_DO_BATTLE_TEST("Facade doubles in power when the user is Paralyzed and Poisoned") +TO_DO_BATTLE_TEST("Facade does not ignore burn's attack-halving effect, cancelling out its power (Gen3-5)") +TO_DO_BATTLE_TEST("Facade ignores burn's attack-halving effect, making it double in power (Gen3-5)") diff --git a/test/battle/move_effect/fail_if_not_arg_type.c b/test/battle/move_effect/fail_if_not_arg_type.c index 368c3410c0..e1693f029c 100644 --- a/test/battle/move_effect/fail_if_not_arg_type.c +++ b/test/battle/move_effect/fail_if_not_arg_type.c @@ -32,12 +32,33 @@ SINGLE_BATTLE_TEST("Burn Up fails if the user isn't a Fire-type") } WHEN { TURN { MOVE(player, MOVE_BURN_UP); } } SCENE { - NONE_OF { ANIMATION(ANIM_TYPE_MOVE, MOVE_BURN_UP, player); } MESSAGE("Wobbuffet used Burn Up!"); + NONE_OF { ANIMATION(ANIM_TYPE_MOVE, MOVE_BURN_UP, player); } MESSAGE("But it failed!"); } } +TO_DO_BATTLE_TEST("Burn Up doesn't thaw the user if it fails due to the user not being Fire-type") + +SINGLE_BATTLE_TEST("Burn Up fails if the user has Protean/Libero and is not a Fire-type") +{ + KNOWN_FAILING; + GIVEN { + WITH_CONFIG(GEN_PROTEAN_LIBERO, GEN_6); + PLAYER(SPECIES_REGIROCK); + OPPONENT(SPECIES_KECLEON) { Ability(ABILITY_PROTEAN); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_BURN_UP); } + } SCENE { + MESSAGE("The opposing Kecleon used Burn Up!"); + NONE_OF { ANIMATION(ANIM_TYPE_MOVE, MOVE_BURN_UP, player); } + MESSAGE("But it failed!"); + } +} + +TO_DO_BATTLE_TEST("(TERA) Burn Up user does not lose their Fire type if they've Terastallized into Fire type") + SINGLE_BATTLE_TEST("Burn Up user loses its Fire-type if enemy faints") { GIVEN { diff --git a/test/battle/move_effect/fairy_lock.c b/test/battle/move_effect/fairy_lock.c index a42aa6aa48..e2a941d7e7 100644 --- a/test/battle/move_effect/fairy_lock.c +++ b/test/battle/move_effect/fairy_lock.c @@ -1,4 +1,9 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Fairy Lock (Move Effect) test titles") +TO_DO_BATTLE_TEST("Fairy Lock prevents all Pokémon from switching out on their next turn") +TO_DO_BATTLE_TEST("Fairy Lock does not prevent switch out via Dragon Tail") +TO_DO_BATTLE_TEST("Fairy Lock does not prevent switch out via Whirlwind") +TO_DO_BATTLE_TEST("Fairy Lock does not prevent switch out via Eject Button") +TO_DO_BATTLE_TEST("Fairy Lock does not prevent switch out via Red Card") +TO_DO_BATTLE_TEST("Fairy Lock prevents a Pokémon from switching out on the following turn after replacing a fainted mon") diff --git a/test/battle/move_effect/false_swipe.c b/test/battle/move_effect/false_swipe.c index da2cbf6a21..3e84404067 100644 --- a/test/battle/move_effect/false_swipe.c +++ b/test/battle/move_effect/false_swipe.c @@ -1,4 +1,6 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write False Swipe (Move Effect) test titles") +TO_DO_BATTLE_TEST("False Swipe always leaves the target with at least 1 HP") +TO_DO_BATTLE_TEST("False Swipe still hits the target if it has 1 HP") // Test with Rocky Helmet or something +TO_DO_BATTLE_TEST("False Swipe does not reduce its damage when hitting a substitute") diff --git a/test/battle/move_effect/fell_stinger.c b/test/battle/move_effect/fell_stinger.c index 994cba3457..a5112fe897 100644 --- a/test/battle/move_effect/fell_stinger.c +++ b/test/battle/move_effect/fell_stinger.c @@ -1,7 +1,7 @@ #include "global.h" #include "test/battle.h" -SINGLE_BATTLE_TEST("Fell Stinger raises user's Attack by 3 stages if it faints target") +SINGLE_BATTLE_TEST("Fell Stinger raises user's Attack by 2 stages (Gen6) or 3 stages (Gen7+) if it faints target") { u32 config; diff --git a/test/battle/move_effect/fillet_away.c b/test/battle/move_effect/fillet_away.c index f9b679bfe5..70f180a700 100644 --- a/test/battle/move_effect/fillet_away.c +++ b/test/battle/move_effect/fillet_away.c @@ -72,3 +72,5 @@ SINGLE_BATTLE_TEST("Fillet Away's HP cost doesn't trigger effects that trigger o NOT MESSAGE("Wobbuffet's Air Balloon popped!"); } } + +TO_DO_BATTLE_TEST("Fillet Away fails if the user's Attack, Sp. Atk and Speed are all maxed out") diff --git a/test/battle/move_effect/final_gambit.c b/test/battle/move_effect/final_gambit.c index be815abf5a..3ab65375c5 100644 --- a/test/battle/move_effect/final_gambit.c +++ b/test/battle/move_effect/final_gambit.c @@ -1,4 +1,16 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Final Gambit (Move Effect) test titles") +TO_DO_BATTLE_TEST("Final Gambit faints the user, and the target receives damage equal to the user's HP") // User should faint before the target +TO_DO_BATTLE_TEST("Final Gambit doesn't faint the user if it misses") +TO_DO_BATTLE_TEST("Final Gambit doesn't faint the user if the target is immune") +TO_DO_BATTLE_TEST("Final Gambit doesn't faint the user if the target is protected") +TO_DO_BATTLE_TEST("Final Gambit doesn't trigger the user's Focus Band") +TO_DO_BATTLE_TEST("Final Gambit doesn't trigger the user's Focus Sash") +TO_DO_BATTLE_TEST("Final Gambit doesn't trigger the user's Sturdy") +TO_DO_BATTLE_TEST("Final Gambit triggers the target's Focus Band") +TO_DO_BATTLE_TEST("Final Gambit triggers the target's Focus Sash") +TO_DO_BATTLE_TEST("Final Gambit triggers the target's Sturdy") +TO_DO_BATTLE_TEST("Final Gambit triggers the target's Endure") +TO_DO_BATTLE_TEST("Final Gambit fails in Max Raids") +TO_DO_BATTLE_TEST("Final Gambit fails in Tera Raids") diff --git a/test/battle/move_effect/first_turn_only.c b/test/battle/move_effect/first_turn_only.c index b26245a3d9..045a84f899 100644 --- a/test/battle/move_effect/first_turn_only.c +++ b/test/battle/move_effect/first_turn_only.c @@ -1,4 +1,8 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Fake Out/First Impression (Move Effect) test titles") +TO_DO_BATTLE_TEST("Fake Out can only be used on the user's first turn") +TO_DO_BATTLE_TEST("Fake Out fails if it's called via Instruct") + +TO_DO_BATTLE_TEST("First Impression can only be used on the user's first turn") +TO_DO_BATTLE_TEST("First Impression fails if it's called via Instruct") diff --git a/test/battle/move_effect/fixed_damage_arg.c b/test/battle/move_effect/fixed_damage_arg.c index 8cb2987072..e20498d3fd 100644 --- a/test/battle/move_effect/fixed_damage_arg.c +++ b/test/battle/move_effect/fixed_damage_arg.c @@ -27,7 +27,9 @@ SINGLE_BATTLE_TEST("Sonic Boom deals fixed damage", s16 damage) } } -SINGLE_BATTLE_TEST("Sonic Boom doesn't affect ghost types") +TO_DO_BATTLE_TEST("Sonic Boom affects ghost types (Gen1)") + +SINGLE_BATTLE_TEST("Sonic Boom doesn't affect ghost types (Gen2+)") { GIVEN { PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/move_effect/flail.c b/test/battle/move_effect/flail.c index af5544d9b4..e1ba1a2e5e 100644 --- a/test/battle/move_effect/flail.c +++ b/test/battle/move_effect/flail.c @@ -1,4 +1,21 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Flail (Move Effect) test titles") +TO_DO_BATTLE_TEST("Flail has 20 power when HP is greater or equal than 68.8% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 20 power when HP is greater or equal than 67.2% (Gen4+)") +TO_DO_BATTLE_TEST("Flail has 40 power when HP is greater or equal than 35.4% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 40 power when HP is greater or equal than 34.4% (Gen4+)") +TO_DO_BATTLE_TEST("Flail has 80 power when HP is greater or equal than 20.8% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 80 power when HP is greater or equal than 20.3% (Gen4+)") +TO_DO_BATTLE_TEST("Flail has 100 power when HP is greater or equal than 10.4% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 100 power when HP is greater or equal than 9.4% (Gen4+)") +TO_DO_BATTLE_TEST("Flail has 150 power when HP is greater or equal than 4.2% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 150 power when HP is greater or equal than 3.1% (Gen4+)") +TO_DO_BATTLE_TEST("Flail has 200 power when HP is less than 4.2% (Gen2-3)") +TO_DO_BATTLE_TEST("Flail has 200 power when HP is less than 3.1% (Gen4+)") + +TO_DO_BATTLE_TEST("Flail cannot get a Critical Hit (Gen2)") +TO_DO_BATTLE_TEST("Flail can get a Critical Hit (Gen3+)") + +TO_DO_BATTLE_TEST("Flail's damage doesn't vary by a random factor (Gen2)") +TO_DO_BATTLE_TEST("Flail's damage varies by a random factor (Gen3+)") diff --git a/test/battle/move_effect/flatter.c b/test/battle/move_effect/flatter.c index 7effb09329..d9d05a98f2 100644 --- a/test/battle/move_effect/flatter.c +++ b/test/battle/move_effect/flatter.c @@ -1,4 +1,9 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Flatter (Move Effect) test titles") +TO_DO_BATTLE_TEST("Flatter raises the target's Sp. Atk and confuses them") +TO_DO_BATTLE_TEST("Flatter raises the target's Sp. Atk even if they're already confused") +TO_DO_BATTLE_TEST("Flatter raises the target's Sp. Atk even when protected by Safeguard") +TO_DO_BATTLE_TEST("Flatter raises the target's Sp. Atk even when protected Own Tempo") +TO_DO_BATTLE_TEST("Flatter confuses the target even when they have their Sp. Atk maxed") +TO_DO_BATTLE_TEST("Flatter confuses the target even when at -6 Sp. Atk and has Contrary") diff --git a/test/battle/move_effect/fling.c b/test/battle/move_effect/fling.c index b98020474b..5435fbcafe 100644 --- a/test/battle/move_effect/fling.c +++ b/test/battle/move_effect/fling.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_FLING) == EFFECT_FLING); } -SINGLE_BATTLE_TEST("Fling fails if pokemon holds no item") +SINGLE_BATTLE_TEST("Fling fails if Pokémon holds no item") { u16 item; @@ -29,7 +29,7 @@ SINGLE_BATTLE_TEST("Fling fails if pokemon holds no item") } } -SINGLE_BATTLE_TEST("Fling fails if pokemon is under the effects of Embargo or Magic Room") +SINGLE_BATTLE_TEST("Fling fails if Pokémon is under the effects of Embargo or Magic Room") { u16 move; @@ -56,7 +56,7 @@ SINGLE_BATTLE_TEST("Fling fails if pokemon is under the effects of Embargo or Ma } } -SINGLE_BATTLE_TEST("Fling fails for pokemon with Klutz ability") +SINGLE_BATTLE_TEST("Fling fails for Pokémon with Klutz ability") { u16 ability; @@ -80,6 +80,9 @@ SINGLE_BATTLE_TEST("Fling fails for pokemon with Klutz ability") } } +TO_DO_BATTLE_TEST("Fling fails if the item changes the Pokémon's form") +TO_DO_BATTLE_TEST("Fling works if the item changes a Pokémon's form but not the one holding it") //Eg. non-matching Mega Stones + SINGLE_BATTLE_TEST("Fling's thrown item can be regained with Recycle") { GIVEN { @@ -150,7 +153,7 @@ SINGLE_BATTLE_TEST("Fling - Item is lost when target protects itself") } } -SINGLE_BATTLE_TEST("Fling doesn't consume the item if pokemon is asleep/frozen/paralyzed") +SINGLE_BATTLE_TEST("Fling doesn't consume the item if Pokémon is asleep/frozen/paralyzed") { u32 status; u16 item; @@ -446,14 +449,16 @@ SINGLE_BATTLE_TEST("Fling deals damage based on items fling power") PLAYER(SPECIES_WOBBUFFET) { Item(ITEM_VENUSAURITE); } OPPONENT(SPECIES_REGIROCK); } WHEN { - TURN { MOVE(player, MOVE_CRUNCH); } TURN { MOVE(player, MOVE_FLING); } + TURN { MOVE(player, MOVE_CRUNCH); } } SCENE { - ANIMATION(ANIM_TYPE_MOVE, MOVE_CRUNCH, player); - HP_BAR(opponent, captureDamage: &damage[0]); ANIMATION(ANIM_TYPE_MOVE, MOVE_FLING, player); + HP_BAR(opponent, captureDamage: &damage[0]); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CRUNCH, player); HP_BAR(opponent, captureDamage: &damage[1]); } THEN { EXPECT_EQ(damage[0], damage[1]); } } + +TO_DO_BATTLE_TEST("Fling deals damage based on a TM's move power") diff --git a/test/battle/move_effect/flower_shield.c b/test/battle/move_effect/flower_shield.c index 784cce99f2..634f0917de 100644 --- a/test/battle/move_effect/flower_shield.c +++ b/test/battle/move_effect/flower_shield.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_FLOWER_SHIELD) == EFFECT_FLOWER_SHIELD); } -DOUBLE_BATTLE_TEST("Flower Shield raises the defense of all grass type pokemon") +DOUBLE_BATTLE_TEST("Flower Shield raises the defense of all Grass-type Pokémon") { GIVEN { ASSUME(gSpeciesInfo[SPECIES_TANGELA].types[0] == TYPE_GRASS); @@ -35,3 +35,5 @@ DOUBLE_BATTLE_TEST("Flower Shield raises the defense of all grass type pokemon") MESSAGE("The opposing Sunflora's Defense rose!"); } } + +TO_DO_BATTLE_TEST("Flower Shield fails if there's no Grass-type Pokémon on the field") diff --git a/test/battle/move_effect/focus_energy.c b/test/battle/move_effect/focus_energy.c index 8ecb3ccb47..f42de5dd76 100644 --- a/test/battle/move_effect/focus_energy.c +++ b/test/battle/move_effect/focus_energy.c @@ -12,7 +12,7 @@ SINGLE_BATTLE_TEST("Focus Energy increases the user's critical hit ratio by 1 st u32 genConfig = 0, chance = 0; for (u32 j = GEN_1; j <= GEN_9; j++) { PARAMETRIZE { genConfig = j; useFocusEnergy = FALSE; chance = j >= GEN_7 ? 24 : 16; } // ~4.16%/6.25% with Wobbuffet's base speed - PARAMETRIZE { genConfig = j; useFocusEnergy = TRUE; + PARAMETRIZE { genConfig = j; useFocusEnergy = TRUE; if (j >= GEN_6) chance = 2; // 50% / 25% else if (j >= GEN_3) @@ -39,3 +39,6 @@ SINGLE_BATTLE_TEST("Focus Energy increases the user's critical hit ratio by 1 st MESSAGE("A critical hit!"); } } + +TO_DO_BATTLE_TEST("Focus Energy fails if critical hit stage was already increased by Dragon Cheer") +TO_DO_BATTLE_TEST("Baton Pass passes Focus Energy's effect"); diff --git a/test/battle/move_effect/focus_punch.c b/test/battle/move_effect/focus_punch.c index 7696831dab..e186c094a8 100644 --- a/test/battle/move_effect/focus_punch.c +++ b/test/battle/move_effect/focus_punch.c @@ -75,6 +75,18 @@ DOUBLE_BATTLE_TEST("Focus Punch activation is based on Speed") } } +TO_DO_BATTLE_TEST("Focus Punch activates when the user's Substitute is hit"); +TO_DO_BATTLE_TEST("Focus Punch activates when the user is hit by a status move"); +TO_DO_BATTLE_TEST("Focus Punch uses PP when losing focus (Gen 3-4)"); +TO_DO_BATTLE_TEST("Focus Punch doesn't use PP when losing focus (Gen 5+)"); +TO_DO_BATTLE_TEST("Focus Punch losing focus is considered as the last move used (Gen 3-4)"); //Eg. Encore +TO_DO_BATTLE_TEST("Focus Punch losing focus is not considered as the last move used (Gen 5+)"); //Eg. Encore +TO_DO_BATTLE_TEST("Focus Punch's initial message is not considered as using the move for Zoom Lens"); +TO_DO_BATTLE_TEST("Focus Punch's initial message is not shown if the user selected a different move and was Encored into using Focus Punch"); +TO_DO_BATTLE_TEST("Focus Punch will use the selected move's priority when being Encored into Focus Punch"); +TO_DO_BATTLE_TEST("Focus Punch will lose focus if damaged when used by selecting a different move and being Encored (Gen 3-4)"); +TO_DO_BATTLE_TEST("Focus Punch will NOT lose focus if damaged when used by selecting a different move and being Encored (Gen 5+)"); + AI_SINGLE_BATTLE_TEST("AI won't use Focus Punch if it predicts a damaging move") { GIVEN { diff --git a/test/battle/move_effect/follow_me.c b/test/battle/move_effect/follow_me.c index 89591b8c6e..1acf193864 100644 --- a/test/battle/move_effect/follow_me.c +++ b/test/battle/move_effect/follow_me.c @@ -34,6 +34,19 @@ DOUBLE_BATTLE_TEST("Follow Me redirects single target moves used by opponents to } } +TO_DO_BATTLE_TEST("Follow Me doesn't redirect opponent moves that can't affect opponents") //Eg. Helping Hand +TO_DO_BATTLE_TEST("Follow Me no longer redirects if the center of attention faints mid-turn") +TO_DO_BATTLE_TEST("Follow Me can only redirect charging moves on the turn that they would hit") +TO_DO_BATTLE_TEST("Follow Me can only redirect Future Sight/Doom Desire on the turn they were selected (Gen3-5)") +TO_DO_BATTLE_TEST("Follow Me does not redirect Future Sight/Doom Desire (Gen 6+)") +TO_DO_BATTLE_TEST("Follow Me draws Electric/Water moves even if there's a Pokémon with Lightning Rod/Storm Drain") +TO_DO_BATTLE_TEST("Follow Me prioritizes the first Pokémon that used it") // There can be 2 centers of attention. If the first is gone, the 2nd is used +//TO_DO_BATTLE_TEST("Triples: Follow Me can only draw non-adjacent moves if they use a long-range move") +TO_DO_BATTLE_TEST("Follow Me can be used in Single Battles (Gen3-SwSh)") +TO_DO_BATTLE_TEST("Follow Me fails in Single Battles (BDSP+)") +TO_DO_BATTLE_TEST("Follow Me cannot redirect Sky Drop") +TO_DO_BATTLE_TEST("Follow Me does not draw attack when the user is being Sky-Dropped") + DOUBLE_BATTLE_TEST("Spotlight redirects single target moves used by the opposing side to Spotlight's target") { struct BattlePokemon *moveTarget = NULL; diff --git a/test/battle/move_effect/foresight.c b/test/battle/move_effect/foresight.c index 082e2d6fa4..59209030d0 100644 --- a/test/battle/move_effect/foresight.c +++ b/test/battle/move_effect/foresight.c @@ -1,4 +1,14 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Foresight (Move Effect) test titles") +TO_DO_BATTLE_TEST("Foresight removes Ghost's type immunity to Normal and Fighting types") +TO_DO_BATTLE_TEST("Foresight causes accuracy/evasion stat changes only between the user/target when the user's accuracy stage is less than the target's evasion stage (Gen 2)") +TO_DO_BATTLE_TEST("Foresight causes all moves against the target to ignore evasion stat changes (Gen 3)") +TO_DO_BATTLE_TEST("Foresight causes all moves against the target to ignore only positive evasion stat changes (Gen 4+)") // Eg. Doesn't ignore Sweet Scent +TO_DO_BATTLE_TEST("Foresight doesn't cause moves used against the target to always hit (Gen 2-3)") +TO_DO_BATTLE_TEST("Foresight causes moves used against the target to always hit (Gen 4+)") +TO_DO_BATTLE_TEST("Foresight does not make moves hit semi-invulnerable targets") +TO_DO_BATTLE_TEST("Foresight fails if the target is already under its effect (Gen 2 and Gen5+)") +TO_DO_BATTLE_TEST("Foresight doesn't fail if the target is already under its effect (Gen 3-4)") +TO_DO_BATTLE_TEST("Baton Pass passes Foresight's effect (Gen 2)"); +TO_DO_BATTLE_TEST("Baton Pass doesn't pass Foresight's effect (Gen 3+)"); diff --git a/test/battle/move_effect/foul_play.c b/test/battle/move_effect/foul_play.c index 7df04201ef..58af6bc4f0 100644 --- a/test/battle/move_effect/foul_play.c +++ b/test/battle/move_effect/foul_play.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_FOUL_PLAY) == EFFECT_FOUL_PLAY); } -SINGLE_BATTLE_TEST("Foul Play uses physical attack stat of target", s16 damage) +SINGLE_BATTLE_TEST("Foul Play uses the target's Attack stat and stat stages of target", s16 damage) { u32 move; @@ -27,3 +27,7 @@ SINGLE_BATTLE_TEST("Foul Play uses physical attack stat of target", s16 damage) EXPECT_MUL_EQ(results[0].damage, Q_4_12(2.0), results[1].damage); } } + +TO_DO_BATTLE_TEST("Foul Play uses the user's attack modifiers - Held Item") +TO_DO_BATTLE_TEST("Foul Play uses the user's attack modifiers - Ability") +TO_DO_BATTLE_TEST("Foul Play uses the user's attack modifiers - Burn") diff --git a/test/battle/move_effect/frustration.c b/test/battle/move_effect/frustration.c index eb994c5076..bc9682a954 100644 --- a/test/battle/move_effect/frustration.c +++ b/test/battle/move_effect/frustration.c @@ -1,4 +1,6 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Frustration (Move Effect) test titles") +TO_DO_BATTLE_TEST("Frustration's power increases the lower friendship of the user is") +TO_DO_BATTLE_TEST("Frustration does 0 damage at max Friendship (Gen2)") +TO_DO_BATTLE_TEST("Frustration does 1 damage at max Friendship (Gen3+)") diff --git a/test/battle/move_effect/fury_cutter.c b/test/battle/move_effect/fury_cutter.c index 10d9d8a64e..74362c6316 100644 --- a/test/battle/move_effect/fury_cutter.c +++ b/test/battle/move_effect/fury_cutter.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_FURY_CUTTER) == EFFECT_FURY_CUTTER); } -SINGLE_BATTLE_TEST("Fury Cutter power doubles with each use, up to 160 power") +SINGLE_BATTLE_TEST("Fury Cutter's power doubles with each use, up to 160 power") { s16 damage[6]; int turn; @@ -37,6 +37,10 @@ SINGLE_BATTLE_TEST("Fury Cutter power doubles with each use, up to 160 power") } } +TO_DO_BATTLE_TEST("Fury Cutter's power is reset if the user misses") +TO_DO_BATTLE_TEST("Fury Cutter's power is reset if the user is switched out") +TO_DO_BATTLE_TEST("Fury Cutter's power is reset if the trainer uses an item") + SINGLE_BATTLE_TEST("Fury Cutter counter is the same for both hits of Parental Bond") { s16 damage[4]; diff --git a/test/battle/move_effect/fusion_combo.c b/test/battle/move_effect/fusion_combo.c index 7561536b11..30c4508a00 100644 --- a/test/battle/move_effect/fusion_combo.c +++ b/test/battle/move_effect/fusion_combo.c @@ -1,4 +1,6 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Fusion Flare/Bolt (Move Effect) test titles") +TO_DO_BATTLE_TEST("Fusion Flare and Fusion Bolt double in power if the other move was immediately used in the same turn") +TO_DO_BATTLE_TEST("Fusion Flare and Fusion Bolt do not double in power if there was a move used in-between the two of them") +TO_DO_BATTLE_TEST("Fusion Flare and Fusion Bolt double in power if used by the same Pokémon in the same turn") // Use Instruct to replicate this diff --git a/test/battle/move_effect/future_sight.c b/test/battle/move_effect/future_sight.c index 3995e8479f..246c384a07 100644 --- a/test/battle/move_effect/future_sight.c +++ b/test/battle/move_effect/future_sight.c @@ -60,13 +60,14 @@ SINGLE_BATTLE_TEST("Future Sight is not boosted by Life Orb is original user if ANIMATION(ANIM_TYPE_MOVE, MOVE_FUTURE_SIGHT, player); MESSAGE("The opposing Regice took the Future Sight attack!"); HP_BAR(opponent, captureDamage: &futureSightDmg); - NOT MESSAGE("Raichu was hurt by its Life Orb!"); + NOT HP_BAR(player); } THEN { EXPECT_EQ(seedFlareDmg, futureSightDmg); } } -SINGLE_BATTLE_TEST("Future Sight receives STAB from party mon") +TO_DO_BATTLE_TEST("Future Sight does not receive STAB from party mon (Gen 2-4)") +SINGLE_BATTLE_TEST("Future Sight receives STAB from party mon (Gen 5+)") { s16 seedFlareDmg; s16 futureSightDmg; @@ -91,7 +92,8 @@ SINGLE_BATTLE_TEST("Future Sight receives STAB from party mon") } } -SINGLE_BATTLE_TEST("Future Sight is affected by type effectiveness") +TO_DO_BATTLE_TEST("Future Sight is not affected by type effectiveness (Gen 2-4)") +SINGLE_BATTLE_TEST("Future Sight is affected by type effectiveness (Gen 5+)") { GIVEN { PLAYER(SPECIES_PIKACHU); @@ -113,6 +115,9 @@ SINGLE_BATTLE_TEST("Future Sight is affected by type effectiveness") } } +TO_DO_BATTLE_TEST("Future Sight ignores Wonder Guard (Gen 2-4)") +TO_DO_BATTLE_TEST("Future Sight doesn't ignore Wonder Guard (Gen 5+)") + SINGLE_BATTLE_TEST("Future Sight will miss timing if target faints before it is about to get hit") { GIVEN { diff --git a/test/battle/move_effect/grassy_terrain.c b/test/battle/move_effect/grassy_terrain.c index 8b1895928b..2b5e166bfd 100644 --- a/test/battle/move_effect/grassy_terrain.c +++ b/test/battle/move_effect/grassy_terrain.c @@ -81,7 +81,7 @@ SINGLE_BATTLE_TEST("Grassy Terrain lasts for 5 turns") } } -SINGLE_BATTLE_TEST("Grassy Terrain heals the pokemon on the field for the duration of the terrain, including last turn") +SINGLE_BATTLE_TEST("Grassy Terrain heals the Pokémon on the field for the duration of the terrain, including last turn") { GIVEN { PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/move_effect/haze.c b/test/battle/move_effect/haze.c index 81a30d5796..3f530834fe 100644 --- a/test/battle/move_effect/haze.c +++ b/test/battle/move_effect/haze.c @@ -30,3 +30,6 @@ SINGLE_BATTLE_TEST("Haze resets stat changes", s16 damage) EXPECT_EQ(results[0].damage, results[1].damage); } } + +TO_DO_BATTLE_TEST("Haze resets Focus Energy (Gen 1 and 4)") +TO_DO_BATTLE_TEST("Haze doesn't reset Focus Energy (Gen 2-3 and 5+)") diff --git a/test/battle/move_effect/healing_wish.c b/test/battle/move_effect/healing_wish.c index a29b04367c..f303456a38 100644 --- a/test/battle/move_effect/healing_wish.c +++ b/test/battle/move_effect/healing_wish.c @@ -49,7 +49,7 @@ DOUBLE_BATTLE_TEST("Lunar Dance causes the user to faint and fully heals the rep } } -SINGLE_BATTLE_TEST("Healing Wish effect activates only if the switched pokemon can be healed") +SINGLE_BATTLE_TEST("Healing Wish effect activates only if the switched Pokémon can be healed") { GIVEN { ASSUME(B_HEALING_WISH_SWITCH >= GEN_8); diff --git a/test/battle/move_effect/hit_escape.c b/test/battle/move_effect/hit_escape.c index a268f991b4..0ced64d7e5 100644 --- a/test/battle/move_effect/hit_escape.c +++ b/test/battle/move_effect/hit_escape.c @@ -159,7 +159,7 @@ SINGLE_BATTLE_TEST("Hit Escape: Held items are consumed immediately after a mon } } -SINGLE_BATTLE_TEST("Hit Escape: Electric Seed boost is received by the right pokemon after U-turn and Intimidate") +SINGLE_BATTLE_TEST("Hit Escape: Electric Seed boost is received by the right Pokémon after U-turn and Intimidate") { GIVEN { PLAYER(SPECIES_TAPU_KOKO) { Ability(ABILITY_ELECTRIC_SURGE); }; diff --git a/test/battle/move_effect/knock_off.c b/test/battle/move_effect/knock_off.c index 60be862c4c..eca09a33a6 100644 --- a/test/battle/move_effect/knock_off.c +++ b/test/battle/move_effect/knock_off.c @@ -394,3 +394,19 @@ SINGLE_BATTLE_TEST("Knock Off doesn't remove item if it's prevented by Sticky Ho ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_HELD_ITEM_EFFECT, opponent); } } + +SINGLE_BATTLE_TEST("Knock Off does not activate if the item was previously consumed") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET) { Item(ITEM_AIR_BALLOON); } + } WHEN { + TURN { MOVE(player, MOVE_KNOCK_OFF); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_KNOCK_OFF, player); + MESSAGE("The opposing Wobbuffet's Air Balloon popped!"); + NOT MESSAGE("Wobbuffet knocked off the opposing Wobbuffet's Air Balloon!"); + } THEN { + EXPECT(opponent->item == ITEM_NONE); + } +} diff --git a/test/battle/move_effect/mist.c b/test/battle/move_effect/mist.c index 332d82a6f9..dedf84cebc 100644 --- a/test/battle/move_effect/mist.c +++ b/test/battle/move_effect/mist.c @@ -2,3 +2,5 @@ #include "test/battle.h" TO_DO_BATTLE_TEST("TODO: Write Mist (Move Effect) test titles") + +TO_DO_BATTLE_TEST("Mist's protection considers Contrary") // Eg. If a move would reduce stats due to Contrary, it will be protected by Mist. diff --git a/test/battle/move_effect/nightmare.c b/test/battle/move_effect/nightmare.c index c243664f2d..4cf051ba7d 100644 --- a/test/battle/move_effect/nightmare.c +++ b/test/battle/move_effect/nightmare.c @@ -2,3 +2,5 @@ #include "test/battle.h" TO_DO_BATTLE_TEST("TODO: Write Nightmare (Move Effect) test titles") + +TO_DO_BATTLE_TEST("Nightmare affects Pokémon with Comatose") diff --git a/test/battle/move_effect/protect.c b/test/battle/move_effect/protect.c index 6dddfae4e7..b1bebf9123 100644 --- a/test/battle/move_effect/protect.c +++ b/test/battle/move_effect/protect.c @@ -162,7 +162,7 @@ SINGLE_BATTLE_TEST("Protect: Spiky Shield does 1/8 dmg of max hp of attackers ma } } -SINGLE_BATTLE_TEST("Protect: Baneful Bunker poisons pokemon for moves making contact") +SINGLE_BATTLE_TEST("Protect: Baneful Bunker poisons Pokémon for moves making contact") { u16 usedMove = MOVE_NONE; @@ -194,7 +194,7 @@ SINGLE_BATTLE_TEST("Protect: Baneful Bunker poisons pokemon for moves making con } } -SINGLE_BATTLE_TEST("Protect: Baneful Bunker can't poison pokemon if they are already statused") +SINGLE_BATTLE_TEST("Protect: Baneful Bunker can't poison Pokémon if they are already statused") { GIVEN { PLAYER(SPECIES_WOBBUFFET); @@ -215,7 +215,7 @@ SINGLE_BATTLE_TEST("Protect: Baneful Bunker can't poison pokemon if they are alr } } -SINGLE_BATTLE_TEST("Protect: Burning Bulwark burns pokemon for moves making contact") +SINGLE_BATTLE_TEST("Protect: Burning Bulwark burns Pokémon for moves making contact") { u16 usedMove = MOVE_NONE; @@ -247,7 +247,7 @@ SINGLE_BATTLE_TEST("Protect: Burning Bulwark burns pokemon for moves making cont } } -SINGLE_BATTLE_TEST("Protect: Burning Bulwark can't burn pokemon if they are already statused") +SINGLE_BATTLE_TEST("Protect: Burning Bulwark can't burn Pokémon if they are already statused") { GIVEN { PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/move_effect/purify.c b/test/battle/move_effect/purify.c index 134c96119f..d18cab76dd 100644 --- a/test/battle/move_effect/purify.c +++ b/test/battle/move_effect/purify.c @@ -2,3 +2,5 @@ #include "test/battle.h" TO_DO_BATTLE_TEST("TODO: Write Purify (Move Effect) test titles") + +TO_DO_BATTLE_TEST("Purify doesn't heal HP if the target has Comatose") diff --git a/test/battle/move_effect/quash.c b/test/battle/move_effect/quash.c index 1d2f89230c..0869b45aeb 100644 --- a/test/battle/move_effect/quash.c +++ b/test/battle/move_effect/quash.c @@ -44,7 +44,7 @@ DOUBLE_BATTLE_TEST("Quash is not affected by dynamic speed") } } -DOUBLE_BATTLE_TEST("Quash calculates correct turn order if only one pokemon is left on the opposing side") +DOUBLE_BATTLE_TEST("Quash calculates correct turn order if only one Pokémon is left on the opposing side") { GIVEN { PLAYER(SPECIES_GRENINJA) { Speed(120); } diff --git a/test/battle/move_effect/rage_fist.c b/test/battle/move_effect/rage_fist.c index e803a05a9d..ba8fcecc06 100644 --- a/test/battle/move_effect/rage_fist.c +++ b/test/battle/move_effect/rage_fist.c @@ -342,3 +342,28 @@ SINGLE_BATTLE_TEST("Rage Fist doesn't get increased power if Substitute is hit") EXPECT_EQ(timesGotHit[0], timesGotHit[1]); } } + +SINGLE_BATTLE_TEST("Rage Fist - X") +{ + s16 timesGotHit[2]; + + GIVEN { + ASSUME(GetMoveEffect(MOVE_GIGA_DRAIN) == EFFECT_ABSORB); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_RAGE_FIST); MOVE(opponent, MOVE_GIGA_DRAIN); } + TURN { MOVE(player, MOVE_RAGE_FIST); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_RAGE_FIST, player); + HP_BAR(opponent, captureDamage: ×GotHit[0]); + + ANIMATION(ANIM_TYPE_MOVE, MOVE_GIGA_DRAIN, opponent); + HP_BAR(player); + + ANIMATION(ANIM_TYPE_MOVE, MOVE_RAGE_FIST, player); + HP_BAR(opponent, captureDamage: ×GotHit[1]); + } THEN { + EXPECT_MUL_EQ(timesGotHit[0], Q_4_12(2.0), timesGotHit[1]); + } +} diff --git a/test/battle/move_effect/return.c b/test/battle/move_effect/return.c index 50945ca556..2a2614200d 100644 --- a/test/battle/move_effect/return.c +++ b/test/battle/move_effect/return.c @@ -1,4 +1,6 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Return (Move Effect) test titles") +TO_DO_BATTLE_TEST("Return's power increases the higher friendship of the user is") +TO_DO_BATTLE_TEST("Return does 0 damage at min Friendship (Gen2)") +TO_DO_BATTLE_TEST("Return does 1 damage at min Friendship (Gen3+)") diff --git a/test/battle/move_effect/rototiller.c b/test/battle/move_effect/rototiller.c index 34b62a2666..669d971269 100644 --- a/test/battle/move_effect/rototiller.c +++ b/test/battle/move_effect/rototiller.c @@ -51,7 +51,7 @@ SINGLE_BATTLE_TEST("Rototiller fails if there are no valid targets") } } -SINGLE_BATTLE_TEST("Rototiller doesn't affect pokemon that are semi-invulnerable") +SINGLE_BATTLE_TEST("Rototiller doesn't affect Pokémon that are semi-invulnerable") { GIVEN { ASSUME(gSpeciesInfo[SPECIES_TANGELA].types[0] == TYPE_GRASS); diff --git a/test/battle/move_effect/round.c b/test/battle/move_effect/round.c index 0bac324b0f..985822d46d 100644 --- a/test/battle/move_effect/round.c +++ b/test/battle/move_effect/round.c @@ -94,7 +94,7 @@ DOUBLE_BATTLE_TEST("Round still preserves the turn order outside of the other Ro } } -DOUBLE_BATTLE_TEST("Round causes opposing pokemon to use Round immediately") +DOUBLE_BATTLE_TEST("Round causes opposing Pokémon to use Round immediately") { GIVEN { ASSUME(gItemsInfo[ITEM_LAGGING_TAIL].holdEffect == HOLD_EFFECT_LAGGING_TAIL); diff --git a/test/battle/move_effect/shed_tail.c b/test/battle/move_effect/shed_tail.c index 4ce05c3f8c..68a6f62630 100644 --- a/test/battle/move_effect/shed_tail.c +++ b/test/battle/move_effect/shed_tail.c @@ -57,7 +57,7 @@ SINGLE_BATTLE_TEST("Shed Tail's HP cost can trigger a berry before the user swit } } -SINGLE_BATTLE_TEST("Shed Tail fails if there are no usable pokemon left") +SINGLE_BATTLE_TEST("Shed Tail fails if there are no usable Pokémon left") { GIVEN { PLAYER(SPECIES_WOBBUFFET) diff --git a/test/battle/move_effect/stealth_rock.c b/test/battle/move_effect/stealth_rock.c index ccd0ea496b..1ea6bea23b 100644 --- a/test/battle/move_effect/stealth_rock.c +++ b/test/battle/move_effect/stealth_rock.c @@ -31,7 +31,7 @@ SINGLE_BATTLE_TEST("Stealth Rock damage on switch in based on typing") } } -SINGLE_BATTLE_TEST("Stealth Rock damages the correct pokemon when Eject Button is triggered") +SINGLE_BATTLE_TEST("Stealth Rock damages the correct Pokémon when Eject Button is triggered") { GIVEN { PLAYER(SPECIES_METAPOD) { Item(ITEM_EJECT_BUTTON); } @@ -53,7 +53,7 @@ SINGLE_BATTLE_TEST("Stealth Rock damages the correct pokemon when Eject Button i } } -DOUBLE_BATTLE_TEST("Stealth Rock damages the correct pokemon when Eject Button is triggered in double battle") +DOUBLE_BATTLE_TEST("Stealth Rock damages the correct Pokémon when Eject Button is triggered in double battle") { GIVEN { PLAYER(SPECIES_METAPOD) { Item(ITEM_EJECT_BUTTON); } diff --git a/test/battle/move_effect/strength_sap.c b/test/battle/move_effect/strength_sap.c index c38048ba8f..675d5090ee 100644 --- a/test/battle/move_effect/strength_sap.c +++ b/test/battle/move_effect/strength_sap.c @@ -141,6 +141,8 @@ SINGLE_BATTLE_TEST("Strength Sap fails if target is at -6 Atk") } } +TO_DO_BATTLE_TEST("Strength Sap doesn't fail if target has Contrary and is at +6 Atk, restoring HP based on +5 Atk") + SINGLE_BATTLE_TEST("Strength Sap restores more HP if Big Root is held", s16 hp) { u32 item; diff --git a/test/battle/move_effect/swagger.c b/test/battle/move_effect/swagger.c index 5845d4292f..3217e48903 100644 --- a/test/battle/move_effect/swagger.c +++ b/test/battle/move_effect/swagger.c @@ -1,4 +1,10 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("TODO: Write Swagger (Move Effect) test titles") +TO_DO_BATTLE_TEST("Swagger raises the target's Attack and confuses them") +TO_DO_BATTLE_TEST("Swagger raises the target's Attack even if they're already confused") +TO_DO_BATTLE_TEST("Swagger raises the target's Attack even when protected by Safeguard") +TO_DO_BATTLE_TEST("Swagger raises the target's Attack even when protected Own Tempo") +TO_DO_BATTLE_TEST("Swagger doesn't confuse the target when they have their Attack maxed (Gen2)") +TO_DO_BATTLE_TEST("Swagger confuses the target even when they have their Attack maxed (Gen3+)") +TO_DO_BATTLE_TEST("Swagger confuses the target even when at -6 Attack and has Contrary") diff --git a/test/battle/move_effect/teleport.c b/test/battle/move_effect/teleport.c index f77dffc658..76fb499722 100644 --- a/test/battle/move_effect/teleport.c +++ b/test/battle/move_effect/teleport.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_TELEPORT) == EFFECT_TELEPORT); } -SINGLE_BATTLE_TEST("Teleport fails when there is no pokemon to switch in") +SINGLE_BATTLE_TEST("Teleport fails when there is no Pokémon to switch in") { GIVEN { PLAYER(SPECIES_WOBBUFFET); @@ -18,7 +18,7 @@ SINGLE_BATTLE_TEST("Teleport fails when there is no pokemon to switch in") } } -SINGLE_BATTLE_TEST("Teleport fails when there no alive pokemon left") +SINGLE_BATTLE_TEST("Teleport fails when there no alive Pokémon left") { GIVEN { PLAYER(SPECIES_WOBBUFFET); @@ -31,7 +31,7 @@ SINGLE_BATTLE_TEST("Teleport fails when there no alive pokemon left") } } -SINGLE_BATTLE_TEST("Teleport forces the pokemon to switch out") +SINGLE_BATTLE_TEST("Teleport forces the Pokémon to switch out") { GIVEN { PLAYER(SPECIES_WOBBUFFET); diff --git a/test/battle/move_effect/uproar.c b/test/battle/move_effect/uproar.c index cbe17ce066..23bcdce458 100644 --- a/test/battle/move_effect/uproar.c +++ b/test/battle/move_effect/uproar.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_UPROAR) == EFFECT_UPROAR); } -DOUBLE_BATTLE_TEST("Uproar status causes sleeping pokemon to wake up during an attack") +DOUBLE_BATTLE_TEST("Uproar status causes sleeping Pokémon to wake up during an attack") { PASSES_RANDOMLY(1, 2, RNG_RANDOM_TARGET); // test fails if we target soundproof mon GIVEN { diff --git a/test/battle/move_effect_secondary/bug_bite.c b/test/battle/move_effect_secondary/bug_bite.c index 70e0966caa..e6df81dc70 100644 --- a/test/battle/move_effect_secondary/bug_bite.c +++ b/test/battle/move_effect_secondary/bug_bite.c @@ -36,7 +36,7 @@ SINGLE_BATTLE_TEST("Bug Bite eats the target's berry and immediately gains its e PLAYER(SPECIES_WOBBUFFET) { HP(399); MaxHP(400); Status1(status1); Moves(MOVE_SLEEP_TALK, MOVE_BUG_BITE); } OPPONENT(SPECIES_WOBBUFFET) { Item(item); } } WHEN { - // Chesto Berry can only be applied if the pokemon is asleep and uses Sleep Talk. + // Chesto Berry can only be applied if the Pokémon is asleep and uses Sleep Talk. if (item == ITEM_CHESTO_BERRY) { TURN { MOVE(player, MOVE_SLEEP_TALK); } } else { diff --git a/test/battle/move_effect_secondary/clear_smog.c b/test/battle/move_effect_secondary/clear_smog.c new file mode 100644 index 0000000000..f8d7b0eb2f --- /dev/null +++ b/test/battle/move_effect_secondary/clear_smog.c @@ -0,0 +1,19 @@ +#include "global.h" +#include "test/battle.h" + +SINGLE_BATTLE_TEST("Clear Smog removes stat changes even if it did no damage") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { HP(1); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_SWORDS_DANCE); } + TURN { MOVE(player, MOVE_ENDURE); MOVE(opponent, MOVE_CLEAR_SMOG); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_SWORDS_DANCE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENDURE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CLEAR_SMOG, opponent); + } THEN { + EXPECT_EQ(player->statStages[STAT_ATK], DEFAULT_STAT_STAGE); + } +} diff --git a/test/battle/move_effect_secondary/dire_claw.c b/test/battle/move_effect_secondary/dire_claw.c index 35c6e73d94..ad9ffcc4e2 100644 --- a/test/battle/move_effect_secondary/dire_claw.c +++ b/test/battle/move_effect_secondary/dire_claw.c @@ -62,7 +62,7 @@ SINGLE_BATTLE_TEST("Dire Claw cannot poison/paralyze poison/electric types respe } } -SINGLE_BATTLE_TEST("Dire Claw cannot poison/paralyze/cause to fall asleep pokemon with abilities preventing respective statuses") +SINGLE_BATTLE_TEST("Dire Claw cannot poison/paralyze/cause to fall asleep Pokémon with abilities preventing respective statuses") { u8 statusAnim; u16 species, ability; diff --git a/test/battle/move_effect_secondary/remove_status.c b/test/battle/move_effect_secondary/remove_status.c index 0ff3d0f78c..0a07ef6368 100644 --- a/test/battle/move_effect_secondary/remove_status.c +++ b/test/battle/move_effect_secondary/remove_status.c @@ -113,6 +113,8 @@ SINGLE_BATTLE_TEST("Wake-Up Slap gets increased power against sleeping targets") } } +TO_DO_BATTLE_TEST("Wake-Up Slap gets increased power against Pokémon with Comatose") + DOUBLE_BATTLE_TEST("Sparkling Aria cures burns from all Pokemon on the field and behind substitutes") { GIVEN { diff --git a/test/battle/move_effect_secondary/steal_item.c b/test/battle/move_effect_secondary/steal_item.c index 7dd922e8b2..79c293757f 100644 --- a/test/battle/move_effect_secondary/steal_item.c +++ b/test/battle/move_effect_secondary/steal_item.c @@ -107,13 +107,13 @@ SINGLE_BATTLE_TEST("Thief and Covet don't steal target's held item if target has } // Test can't currently verify if the item is sent to Bag -WILD_BATTLE_TEST("Thief and Covet steal target's held item and it's added to Bag in wild battles (Gen 9)") +WILD_BATTLE_TEST("Thief and Covet steal target's held item and it's added to Bag in wild battles (Gen 9+)") { u32 move; PARAMETRIZE { move = MOVE_THIEF; } PARAMETRIZE { move = MOVE_COVET; } GIVEN { - ASSUME(B_STEAL_WILD_ITEMS >= GEN_9); + WITH_CONFIG(GEN_STEAL_WILD_ITEMS, GEN_9); PLAYER(SPECIES_WOBBUFFET); OPPONENT(SPECIES_WOBBUFFET) { Item(ITEM_HYPER_POTION); } } WHEN { diff --git a/test/battle/move_effect_secondary/tri_attack.c b/test/battle/move_effect_secondary/tri_attack.c index e84573dcdf..ab33561cf0 100644 --- a/test/battle/move_effect_secondary/tri_attack.c +++ b/test/battle/move_effect_secondary/tri_attack.c @@ -74,9 +74,9 @@ SINGLE_BATTLE_TEST("Tri Attack cannot paralyze/burn/freeze electric/fire/ice typ } #if B_USE_FROSTBITE == TRUE -SINGLE_BATTLE_TEST("Tri Attack cannot paralyze/burn/frostbite pokemon with abilities preventing respective statuses") +SINGLE_BATTLE_TEST("Tri Attack cannot paralyze/burn/frostbite Pokémon with abilities preventing respective statuses") #else -SINGLE_BATTLE_TEST("Tri Attack cannot paralyze/burn/freeze pokemon with abilities preventing respective statuses") +SINGLE_BATTLE_TEST("Tri Attack cannot paralyze/burn/freeze Pokémon with abilities preventing respective statuses") #endif { u8 statusAnim; diff --git a/test/battle/spread_moves.c b/test/battle/spread_moves.c index a37fb847db..9ea104597a 100644 --- a/test/battle/spread_moves.c +++ b/test/battle/spread_moves.c @@ -83,7 +83,7 @@ DOUBLE_BATTLE_TEST("Spread Moves: A spread move attack will activate both resist } } -DOUBLE_BATTLE_TEST("Spread Moves: If a spread move attack will activate a resist berries on one pokemon, only the damage for that mon will be reduced") +DOUBLE_BATTLE_TEST("Spread Moves: If a spread move attack will activate a resist berries on one Pokémon, only the damage for that mon will be reduced") { s16 opponentLeftDmg[2]; s16 opponentRightDmg[2]; diff --git a/test/battle/status1/frostbite.c b/test/battle/status1/frostbite.c index f45508f800..35503b00a3 100644 --- a/test/battle/status1/frostbite.c +++ b/test/battle/status1/frostbite.c @@ -23,7 +23,7 @@ SINGLE_BATTLE_TEST("Frostbite reduces the special attack by 50 percent") } THEN { EXPECT_EQ(reducedDamage * 2, normaleDamage); } } -SINGLE_BATTLE_TEST("Frostbite deals 1/16th (Gen7+) or 1/8th damage to affected pokemon") +SINGLE_BATTLE_TEST("Frostbite deals 1/16th (Gen7+) or 1/8th damage to affected Pokémon") { s16 frostbiteDamage; diff --git a/test/pokemon.c b/test/pokemon.c index ac57314f9c..47ec6af519 100644 --- a/test/pokemon.c +++ b/test/pokemon.c @@ -4,6 +4,7 @@ #include "pokemon.h" #include "test/overworld_script.h" #include "test/test.h" +#include "constants/characters.h" TEST("Nature independent from Hidden Nature") { @@ -450,3 +451,100 @@ TEST("Pokémon level up learnsets fit within MAX_LEVEL_UP_MOVES and MAX_RELEARNE EXPECT_LT(count, MAX_LEVEL_UP_MOVES); EXPECT_LT(count, MAX_RELEARNER_MOVES - 1); // - 1 because at least one move is already known } + +TEST("BoxPokemon encryption works") +{ + u32 raw[20] = + { + 990384375, + 2948624514, + 3907508686, + 14410461, + 35316705, + 3907508686, + 64742109, + 718729, + 3102307966, + 2160206402, + 49956971, + 2495766612, + 1424318580, + 273408756, + 2371630199, + 2708871082, + 3059937332, + 2529190026, + 2290634828, + 2870614922 + }; + + struct Pokemon mon; + BoxMonToMon((struct BoxPokemon *)&raw, &mon); + + EXPECT_EQ(GetMonData(&mon, MON_DATA_SANITY_IS_BAD_EGG), 0); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPECIES), SPECIES_TORCHIC); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MARKINGS), 3); + const u8 *actualNickname = COMPOUND_STRING("Testing mon"); + u8 nickname[12]; + GetMonData(&mon, MON_DATA_NICKNAME, nickname); + u32 charIndex = 0; + while (actualNickname[charIndex] != EOS) + { + EXPECT_EQ(actualNickname[charIndex], nickname[charIndex]); + charIndex++; + } + EXPECT_EQ(GetNature(&mon), NATURE_HARDY); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HIDDEN_NATURE), NATURE_ADAMANT); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HP_LOST), 10); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HELD_ITEM), ITEM_ORAN_BERRY); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MOVE1), MOVE_TACKLE); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MOVE2), MOVE_SCRATCH); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MOVE3), MOVE_POUND); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MOVE4), MOVE_GROWL); + EXPECT_EQ(GetMonData(&mon, MON_DATA_PP1), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_PP2), 2); + EXPECT_EQ(GetMonData(&mon, MON_DATA_PP3), 3); + EXPECT_EQ(GetMonData(&mon, MON_DATA_PP4), 4); + EXPECT_EQ(GetMonData(&mon, MON_DATA_PP_BONUSES), 255); + EXPECT_EQ(GetMonData(&mon, MON_DATA_COOL), 10); + EXPECT_EQ(GetMonData(&mon, MON_DATA_BEAUTY), 20); + EXPECT_EQ(GetMonData(&mon, MON_DATA_CUTE), 30); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SMART), 40); + EXPECT_EQ(GetMonData(&mon, MON_DATA_TOUGH), 50); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SHEEN), 150); + EXPECT_EQ(GetMonData(&mon, MON_DATA_EXP), 12345); + EXPECT_EQ(GetMonData(&mon, MON_DATA_MET_LEVEL), 20); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HP_EV), 11); + EXPECT_EQ(GetMonData(&mon, MON_DATA_ATK_EV), 22); + EXPECT_EQ(GetMonData(&mon, MON_DATA_DEF_EV), 33); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPEED_EV), 44); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPATK_EV), 55); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPDEF_EV), 66); + EXPECT_EQ(GetMonData(&mon, MON_DATA_FRIENDSHIP), 123); + EXPECT_EQ(GetMonData(&mon, MON_DATA_POKERUS), 2); + EXPECT_EQ(GetMonData(&mon, MON_DATA_POKEBALL), BALL_FRIEND); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HP_IV), 31); + EXPECT_EQ(GetMonData(&mon, MON_DATA_ATK_IV), 30); + EXPECT_EQ(GetMonData(&mon, MON_DATA_DEF_IV), 29); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPEED_IV), 28); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPATK_IV), 27); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SPDEF_IV), 26); + EXPECT_EQ(GetMonData(&mon, MON_DATA_CUTE_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_BEAUTY_RIBBON), 0); + EXPECT_EQ(GetMonData(&mon, MON_DATA_TOUGH_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_SMART_RIBBON), 0); + EXPECT_EQ(GetMonData(&mon, MON_DATA_CHAMPION_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_VICTORY_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_EFFORT_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_LAND_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_COUNTRY_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_EARTH_RIBBON), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_HP), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_ATK), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_DEF), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_SPEED), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_SPATK), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_HYPER_TRAINED_SPDEF), 1); + EXPECT_EQ(GetMonData(&mon, MON_DATA_DYNAMAX_LEVEL), 3); + EXPECT_EQ(GetMonData(&mon, MON_DATA_OT_GENDER), 0); +} diff --git a/test/test_runner_battle.c b/test/test_runner_battle.c index 20271a588d..ea26432137 100644 --- a/test/test_runner_battle.c +++ b/test/test_runner_battle.c @@ -1341,6 +1341,10 @@ void TestRunner_Battle_AfterLastTurn(void) static void TearDownBattle(void) { + // Zero out the parties, data in them could potentially carry over + ZeroPlayerPartyMons(); + ZeroEnemyPartyMons(); + FreeMonSpritesGfx(); FreeBattleSpritesData(); FreeBattleResources(); diff --git a/tools/mid2agb/agb.cpp b/tools/mid2agb/agb.cpp index 3bc4f601ac..ab89436373 100644 --- a/tools/mid2agb/agb.cpp +++ b/tools/mid2agb/agb.cpp @@ -46,7 +46,7 @@ static int s_memaccParam2; void PrintAgbHeader() { std::fprintf(g_outputFile, "\t.include \"MPlayDef.s\"\n\n"); - std::fprintf(g_outputFile, "\t.equ\t%s_grp, voicegroup%03u\n", g_asmLabel.c_str(), g_voiceGroup); + std::fprintf(g_outputFile, "\t.equ\t%s_grp, voicegroup%s\n", g_asmLabel.c_str(), g_voiceGroup.c_str()); std::fprintf(g_outputFile, "\t.equ\t%s_pri, %u\n", g_asmLabel.c_str(), g_priority); if (g_reverb >= 0) diff --git a/tools/mid2agb/main.cpp b/tools/mid2agb/main.cpp index ea2b294ac8..ca5a3da8a7 100644 --- a/tools/mid2agb/main.cpp +++ b/tools/mid2agb/main.cpp @@ -35,7 +35,7 @@ FILE* g_outputFile = nullptr; std::string g_asmLabel; int g_masterVolume = 127; -int g_voiceGroup = 0; +std::string g_voiceGroup = "_dummy"; int g_priority = 0; int g_reverb = -1; int g_clocksPerBeat = 1; @@ -52,7 +52,7 @@ bool g_compressionEnabled = true; "\n" "options -L??? label for assembler (default:output_file)\n" " -V??? master volume (default:127)\n" - " -G??? voice group number (default:0)\n" + " -G??? voice group label (default:_dummy)\n" " -P??? priority (default:0)\n" " -R??? reverb (default:off)\n" " -X 48 clocks/beat (default:24 clocks/beat)\n" @@ -149,7 +149,7 @@ int main(int argc, char** argv) arg = GetArgument(argc, argv, i); if (arg == nullptr) PrintUsage(); - g_voiceGroup = std::stoi(arg); + g_voiceGroup = arg; break; case 'L': arg = GetArgument(argc, argv, i); diff --git a/tools/mid2agb/main.h b/tools/mid2agb/main.h index 6e71e73fd4..76443e5db9 100644 --- a/tools/mid2agb/main.h +++ b/tools/mid2agb/main.h @@ -29,7 +29,7 @@ extern FILE* g_outputFile; extern std::string g_asmLabel; extern int g_masterVolume; -extern int g_voiceGroup; +extern std::string g_voiceGroup; extern int g_priority; extern int g_reverb; extern int g_clocksPerBeat;