diff --git a/data/pokemon/dex_entries.asm b/data/pokemon/dex_entries.asm index 0713ae3735..4674fcc826 100644 --- a/data/pokemon/dex_entries.asm +++ b/data/pokemon/dex_entries.asm @@ -527,7 +527,7 @@ GolemDexEntry: text_end MagmarDexEntry: - db "СПИТФАЙР@" + db "ОГНЕДЫШ.@" db 13 dw 445 text_far _MagmarDexEntry diff --git a/data/pokemon/female_species.asm b/data/pokemon/female_species.asm index 68958fe024..a970c2b7b2 100644 --- a/data/pokemon/female_species.asm +++ b/data/pokemon/female_species.asm @@ -7,6 +7,10 @@ db PONYTA db RAPIDASH db GOLDEEN db SEAKING +db HORSEA +db SEADRA +db STARYU +db STARMIE db CHANSEY db JYNX db KANGASKHAN diff --git a/data/text/text_2.asm b/data/text/text_2.asm index 2af09ea16d..624d671a4f 100644 --- a/data/text/text_2.asm +++ b/data/text/text_2.asm @@ -1056,21 +1056,41 @@ _WokeUpText:: line "проснулся!" prompt +_WokeUpText_Female:: + text "" + line "проснулась!" + prompt + _IsFrozenText:: text "" line "заморожен!" prompt +_IsFrozenText_Female:: + text "" + line "заморожена!" + prompt + _FullyParalyzedText:: text "" line "парализован!" prompt +_FullyParalyzedText_Female:: + text "" + line "парализована!" + prompt + _FlinchedText:: text "" line "дрогнул!" prompt +_FlinchedText_Female:: + text "" + line "дрогнула!" + prompt + _MustRechargeText:: text "" line "перезаряжается!" @@ -1191,12 +1211,23 @@ _AttackMissedText:: line "промахнулся!" prompt +_AttackMissedText_Female:: + text "" + line "промахнулась!" + prompt + _KeptGoingAndCrashedText:: text "" line "продолжил и" cont "упал!" prompt +_KeptGoingAndCrashedText_Female:: + text "" + line "продолжила и" + cont "упала!" + prompt + _UnaffectedText:: text "Без эффекта на" line "!" @@ -1228,6 +1259,12 @@ _BeganToNapText:: line "начал спать!" prompt +_BeganToNapText_Female:: + text_ram wBattleMonNick + text_start + line "начала спать!" + prompt + _WontObeyText:: text_ram wBattleMonNick text_start @@ -1240,6 +1277,12 @@ _TurnedAwayText:: line "отвернулся!" prompt +_TurnedAwayText_Female:: + text_ram wBattleMonNick + text_start + line "отвернулась!" + prompt + _IgnoredOrdersText:: text_ram wBattleMonNick text_start @@ -1302,6 +1345,14 @@ _GrewLevelText:: text "!@" text_end +_GrewLevelText_Female:: + text_ram wcd6d + text " выросла" + line "до уровня @" + text_decimal wCurEnemyLVL, 1, 3 + text "!@" + text_end + _WildMonAppearedText:: text "Появился дикий" line "@" @@ -1339,7 +1390,7 @@ _TrainerWantsToFightText:: _UnveiledGhostText:: text "SILPH SCOPE" line "раскрыл сущность" - cont "ПРИЗРАКА!" + cont "ПРИЗРАКа!" prompt _GhostCantBeIDdText:: @@ -1558,14 +1609,12 @@ _FullHealText_Female:: _ReviveText:: text_ram wcd6d text " был" - text_start line "возрождён!" done _ReviveText_Female:: text_ram wcd6d text " была" - text_start line "возрождена!" done diff --git a/data/text/text_3.asm b/data/text/text_3.asm index 6d95a729f1..e6a23f47ac 100644 --- a/data/text/text_3.asm +++ b/data/text/text_3.asm @@ -205,9 +205,19 @@ _MadeWhirlwindText:: line "вызвал вихрь!" prompt +_MadeWhirlwindText_Female:: + text_start + line "вызвала вихрь!" + prompt + _TookInSunlightText:: text_start - line "собирает солнце!" + line "собрал солнце!" + prompt + +_TookInSunlightText_Female:: + text_start + line "собрала солнце!" prompt _LoweredItsHeadText:: @@ -215,6 +225,11 @@ _LoweredItsHeadText:: line "опустил голову!" prompt +_LoweredItsHeadText_Female:: + text_start + line "опустила голову!" + prompt + _SkyAttackGlowingText:: text_start text " сияет!" @@ -225,11 +240,21 @@ _FlewUpHighText:: line "взлетел ввысь!" prompt +_FlewUpHighText_Female:: + text_start + line "взлетела ввысь!" + prompt + _DugAHoleText:: text_start line "вырыл нору!" prompt +_DugAHoleText_Female:: + text_start + line "вырыла нору!" + prompt + _BecameConfusedText:: text "" line "в смятении!" @@ -374,8 +399,16 @@ _RegainedHealthText:: _TransformedText:: text "" - line "transformed into" - cont "@" + line "трансформировался" + cont "в @" + text_ram wcd6d + text "!" + prompt + +_TransformedText_Female:: + text "" + line "трансформирова-" + cont "лась в @" text_ram wcd6d text "!" prompt diff --git a/data/text/text_4.asm b/data/text/text_4.asm index b9b85eb2c1..b42a908f9e 100644 --- a/data/text/text_4.asm +++ b/data/text/text_4.asm @@ -6,7 +6,13 @@ _PokemartGreetingText:: _PokemonFaintedText:: text_ram wcd6d text_start - line "fainted!" + line "повержен!" + done + +_PokemonFaintedText_Female:: + text_ram wcd6d + text_start + line "повержена!" done _PlayerBlackedOutText:: diff --git a/data/text/text_6.asm b/data/text/text_6.asm index 67401a4b42..60ea10e645 100644 --- a/data/text/text_6.asm +++ b/data/text/text_6.asm @@ -139,14 +139,14 @@ _CoinCaseNumCoinsText:: prompt _ItemfinderFoundItemText:: - text "Yes! ITEMFINDER" - line "indicates there's" - cont "an item nearby." + text "Да! ВЕЩЕИСКАТЕЛЬ" + line "указывает, что" + cont "рядом есть вещь." prompt _ItemfinderFoundNothingText:: - text "Nope! ITEMFINDER" - line "isn't responding." + text "Неа! ВЕЩЕИСКАТЕЛЬ" + line "не отвечает." prompt _RaisePPWhichTechniqueText:: @@ -160,7 +160,7 @@ _RestorePPWhichTechniqueText:: done _PPMaxedOutText:: - text "ОС" + text "ОС техники" line "@" text_ram wStringBuffer text_start @@ -168,7 +168,7 @@ _PPMaxedOutText:: prompt _PPIncreasedText:: - text "ОС" + text "ОС техники" line "@" text_ram wStringBuffer text_start diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 24f777200a..f5d6d2a8e7 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -3447,8 +3447,25 @@ CheckPlayerStatusConditions: call PrintText jr .sleepDone .WakeUp + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .WakeUpFemale + ;shara-add end +.WakeUpStandard + pop af ld hl, WokeUpText call PrintText + jr .sleepDone +.WakeUpFemale + pop af + ld hl, WokeUpText_Female + call PrintText .sleepDone xor a ld [wPlayerUsedMove], a @@ -3458,8 +3475,26 @@ CheckPlayerStatusConditions: .FrozenCheck bit FRZ, [hl] ; frozen? jr z, .HeldInPlaceCheck + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .FrozenTextFemale + ;shara-add end +.FrozenTextStandard + pop af ld hl, IsFrozenText call PrintText + jr .FrozenCheckContinue +.FrozenTextFemale + pop af + ld hl, IsFrozenText_Female + call PrintText +.FrozenCheckContinue xor a ld [wPlayerUsedMove], a ld hl, ExecutePlayerMoveDone ; player can't move this turn @@ -3479,8 +3514,24 @@ CheckPlayerStatusConditions: bit FLINCHED, [hl] jp z, .HyperBeamCheck res FLINCHED, [hl] ; reset player's flinch status + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .FlincheckTextFemale + ;shara-add end +.FlinchedTextStandard + ld hl, FlinchedText + call PrintText + jr .FlinchedTextContinue +.FlincheckTextFemale ld hl, FlinchedText call PrintText +.FlinchedTextContinue ld hl, ExecutePlayerMoveDone ; player can't move this turn jp .returnToHL @@ -3572,8 +3623,25 @@ CheckPlayerStatusConditions: call BattleRandom cp $3F ; 25% to be fully paralyzed jr nc, .BideCheck + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .ParalysisCheckFemale + ;shara-add end +.ParalysisCheckStandard ;shara-add + pop af ld hl, FullyParalyzedText call PrintText + jr .MonHurtItselfOrFullyParalysed +.ParalysisCheckFemale ;shara-add + pop af + ld hl, FullyParalyzedText_Female + call PrintText .MonHurtItselfOrFullyParalysed ld hl, wPlayerBattleStatus1 @@ -3713,18 +3781,34 @@ WokeUpText: text_far _WokeUpText text_end +WokeUpText_Female: ;shara-add + text_far _WokeUpText_Female + text_end + IsFrozenText: text_far _IsFrozenText text_end +IsFrozenText_Female: ;shara-add + text_far _IsFrozenText ;shara-add + text_end + FullyParalyzedText: text_far _FullyParalyzedText text_end +FullyParalyzedText_Female: ;shara-add + text_far _FullyParalyzedText_Female + text_end + FlinchedText: text_far _FlinchedText text_end +FlinchedText_Female: ;shara-add + text_far _FlinchedText_Female + text_end + MustRechargeText: text_far _MustRechargeText text_end @@ -4006,7 +4090,28 @@ PrintMoveFailureText: ld a, [wDamageMultipliers] and $7f jr z, .gotTextToPrint + ;shara-add begin + ldh a, [hWhoseTurn] + and a + jr z, .AttackMissedFemaleCheck + ;shara-add end +.AttackMissedStandard ;shara-add + pop af ld hl, AttackMissedText + jr .gotText +.AttackMissedFemaleCheck ;shara-add + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .AttackMissedFemale + jr .AttackMissedStandard +.AttackMissedFemale ;shara-add + pop af + ld hl, AttackMissedText_Female +.gotText ;shara-add ld a, [wCriticalHitOrOHKO] cp $ff jr nz, .gotTextToPrint @@ -4041,8 +4146,31 @@ PrintMoveFailureText: inc a ld [hl], a .applyRecoil + ;shara-add begin + push af + ldh a, [hWhoseTurn] + and a + jr z, .KeptGoingAndCrashedFemaleCheck + ;shara-add end +.KeptGoingAndCrashedStandard + pop af ld hl, KeptGoingAndCrashedText call PrintText + jr .KeptGoingAndCrashedGotText +.KeptGoingAndCrashedFemaleCheck + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .KeptGoingAndCrashedFemale + jr .KeptGoingAndCrashedStandard +.KeptGoingAndCrashedFemale + pop af + ld hl, KeptGoingAndCrashedText_Female + call PrintText +.KeptGoingAndCrashedGotText ld b, $4 predef PredefShakeScreenHorizontally ldh a, [hWhoseTurn] @@ -4056,10 +4184,18 @@ AttackMissedText: text_far _AttackMissedText text_end +AttackMissedText_Female: ;shara-add + text_far _AttackMissedText_Female + text_end + KeptGoingAndCrashedText: text_far _KeptGoingAndCrashedText text_end +KeptGoingAndCrashedText_Female: ;shara-add + text_far _KeptGoingAndCrashedText_Female + text_end + UnaffectedText: text_far _UnaffectedText text_end @@ -4192,8 +4328,24 @@ CheckForDisobedience: and SLP ; sleep mask jr z, .monNaps ; keep trying until we get at least 1 turn of sleep ld [wBattleMonStatus], a + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .monNapsFemale + ;shara-add end +.monNapsStandard ;shara-add + pop af ld hl, BeganToNapText jr .printText +.monNapsFemale ;shara-add + pop af + ld hl, BeganToNapText_Female + jr .printText .monDoesNothing call BattleRandom and $3 @@ -4203,10 +4355,28 @@ CheckForDisobedience: ld hl, WontObeyText dec a jr z, .printText - ld hl, TurnedAwayText + ;shara-add begin dec a - jr z, .printText + jr z, .printTurnedAwayText + ;shara-add end ld hl, IgnoredOrdersText + jr .printText +.printTurnedAwayText ;shara-add + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .monDoesNothingFemale +.monDoesNothingStandard ;shara-add + pop af + ld hl, TurnedAwayText + jr .printText +.monDoesNothingFemale ;shara-add + pop af + ld hl, TurnedAwayText_Female .printText call PrintText jr .cannotUseMove @@ -4294,6 +4464,10 @@ BeganToNapText: text_far _BeganToNapText text_end +BeganToNapText_Female: ;shara-add + text_far _BeganToNapText_Female + text_end + WontObeyText: text_far _WontObeyText text_end @@ -4302,6 +4476,10 @@ TurnedAwayText: text_far _TurnedAwayText text_end +TurnedAwayText_Female: ;shara-add + text_far _TurnedAwayText_Female + text_end + IgnoredOrdersText: text_far _IgnoredOrdersText text_end diff --git a/engine/battle/effects.asm b/engine/battle/effects.asm index d7f295d9dc..5533815e1d 100644 --- a/engine/battle/effects.asm +++ b/engine/battle/effects.asm @@ -62,8 +62,27 @@ SleepEffect: jr z, .setSleepCounter ld [de], a call PlayCurrentMoveAnimation2 + ;shara-add begin + ldh a, [hWhoseTurn] + and a + jp z, .FellAsleepStandard + ;shara-add end +.FellAsleepFemaleCheck ;shara-add + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .FellAsleepFemale +.FellAsleepStandard ;shara-add + pop af ld hl, FellAsleepText jp PrintText +.FellAsleepFemale ;shara-add + pop af + ld hl, FellAsleepText_Female + jp PrintText .didntAffect jp PrintDidntAffectText @@ -71,6 +90,10 @@ FellAsleepText: text_far _FellAsleepText text_end +FellAsleepText_Female: ;shara-add + text_far _FellAsleepText_Female + text_end + AlreadyAsleepText: text_far _AlreadyAsleepText text_end @@ -151,15 +174,14 @@ PoisonEffect: pop bc pop de jr c, .badPoisonFemale - jr .badPoisonStandard -.badPoisonFemale ;shara-add - pop af - ld hl, BadlyPoisonedText_Female - jr .continue .badPoisonStandard ;shara-add pop af ld hl, BadlyPoisonedText jr .continue +.badPoisonFemale ;shara-add + pop af + ld hl, BadlyPoisonedText_Female + jr .continue .normalPoison ;shara-add begin push af @@ -340,23 +362,61 @@ FreezeBurnParalyzeEffect: ld a, 1 << BRN ld [wBattleMonStatus], a call HalveAttackDueToBurn + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .burn2Female + pop af + ;shara-add end ld hl, BurnedText jp PrintText +.burn2Female ;shara-add + pop af + ld hl, BurnedText_Female + jp PrintText .freeze2 ; hyper beam bits aren't reseted for opponent's side ld a, 1 << FRZ ld [wBattleMonStatus], a + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .freeze2Female + pop af + ;shara-add end ld hl, FrozenText jp PrintText +.freeze2Female ;shara-add + pop af + ld hl, FrozenText_Female + jp PrintText BurnedText: text_far _BurnedText text_end +BurnedText_Female: ;shara-add + text_far _BurnedText_Female + text_end + FrozenText: text_far _FrozenText text_end +FrozenText_Female: ;shara-add + text_far _FrozenText_Female + text_end + CheckDefrost: ; any fire-type move that has a chance inflict burn (all but Fire Spin) will defrost a frozen target and 1 << FRZ ; are they frozen? @@ -1158,8 +1218,29 @@ ChargeEffect: call PlayBattleAnimation ld a, [de] ld [wChargeMoveNum], a + ;shara-add begin: Re-routing depending on whose turn. + push af + ldh a, [hWhoseTurn] + and a + jr z, .femaleCheck + ;shara-add end +.standard ;shara-add + pop af ld hl, ChargeMoveEffectText jp PrintText +.femaleCheck ;shara-add + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .female + jr .standard +.female ;shara-add + pop af + ld hl, ChargeMoveEffectText_Female + jp PrintText ChargeMoveEffectText: text_far _ChargeMoveEffectText @@ -1185,18 +1266,54 @@ ChargeMoveEffectText: .gotText ret +ChargeMoveEffectText_Female: ;shara-add + text_far _ChargeMoveEffectText + text_asm + ld a, [wChargeMoveNum] + cp RAZOR_WIND + ld hl, MadeWhirlwindText_Female + jr z, .gotText + cp SOLARBEAM + ld hl, TookInSunlightText_Female + jr z, .gotText + cp SKULL_BASH + ld hl, LoweredItsHeadText_Female + jr z, .gotText + cp SKY_ATTACK + ld hl, SkyAttackGlowingText + jr z, .gotText + cp FLY + ld hl, FlewUpHighText_Female + jr z, .gotText + cp DIG + ld hl, DugAHoleText_Female +.gotText + ret + MadeWhirlwindText: text_far _MadeWhirlwindText text_end +MadeWhirlwindText_Female: ;shara-add + text_far _MadeWhirlwindText_Female + text_end + TookInSunlightText: text_far _TookInSunlightText text_end +TookInSunlightText_Female: ;shara-add + text_far _TookInSunlightText_Female + text_end + LoweredItsHeadText: text_far _LoweredItsHeadText text_end +LoweredItsHeadText_Female: ;shara-add + text_far _LoweredItsHeadText_Female + text_end + SkyAttackGlowingText: text_far _SkyAttackGlowingText text_end @@ -1205,10 +1322,18 @@ FlewUpHighText: text_far _FlewUpHighText text_end +FlewUpHighText_Female: ;shara-add + text_far _FlewUpHighText_Female + text_end + DugAHoleText: text_far _DugAHoleText text_end +DugAHoleText_Female: ;shara-add + text_far _DugAHoleText_Female + text_end + TrappingEffect: ld hl, wPlayerBattleStatus1 ld de, wPlayerNumAttacksLeft @@ -1597,7 +1722,7 @@ PrintMayNotAttackText: pop bc pop de jr c, .female -.standard +.standard ;shara-add: Continuing standard behavior. pop af ld hl, ParalyzedMayNotAttackText jp PrintText @@ -1610,8 +1735,8 @@ ParalyzedMayNotAttackText: text_far _ParalyzedMayNotAttackText text_end -ParalyzedMayNotAttackText_Female: - text_far _ParalyzedMayNotAttackText +ParalyzedMayNotAttackText_Female: ;shara-add + text_far _ParalyzedMayNotAttackText_Female text_end CheckTargetSubstitute: diff --git a/engine/battle/experience.asm b/engine/battle/experience.asm index 0eab6e085b..7a9f7edebd 100644 --- a/engine/battle/experience.asm +++ b/engine/battle/experience.asm @@ -240,7 +240,24 @@ GainExperience: callfar PrintEmptyString call SaveScreenTilesToBuffer1 .printGrewLevelText + ;shara-add begin + push af + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .printGreLevelTextFemale + ;shara-add end +.printGrewLevelTextStandard ;shara-add + pop af ld hl, GrewLevelText + jr .printGrewLevelTextGotText +.printGreLevelTextFemale ;shara-add + pop af + ld hl, GrewLevelText_Female +.printGrewLevelTextGotText ;shara-add call PrintText xor a ; PLAYER_PARTY_DATA ld [wMonDataLocation], a @@ -370,3 +387,8 @@ GrewLevelText: text_far _GrewLevelText sound_level_up text_end + +GrewLevelText_Female: ;shara-add + text_far _GrewLevelText + sound_level_up + text_end diff --git a/engine/battle/move_effects/transform.asm b/engine/battle/move_effects/transform.asm index 56dda7f491..466ed5ce33 100644 --- a/engine/battle/move_effects/transform.asm +++ b/engine/battle/move_effects/transform.asm @@ -124,8 +124,29 @@ TransformEffect_: ld hl, wEnemyMonStatMods ld de, wPlayerMonStatMods call .copyBasedOnTurn ; stat mods + ;shara-add begin + push af + ldh a, [hWhoseTurn] + and a + jr z, .femaleCheck + ;shara-add end +.standard ;shara-add + pop af ld hl, TransformedText jp PrintText +.femaleCheck + ld a, [wBattleMonSpecies2] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .female + jr .standard +.female + pop af + ld hl, TransformedText_Female + jp PrintText .copyBasedOnTurn ldh a, [hWhoseTurn] @@ -146,3 +167,7 @@ TransformEffect_: TransformedText: text_far _TransformedText text_end + +TransformedText_Female: ;shara-add + text_far _TransformedText_Female + text_end diff --git a/engine/link/print_waiting_text.asm b/engine/link/print_waiting_text.asm index 89c71b787a..2c918b2d1b 100644 --- a/engine/link/print_waiting_text.asm +++ b/engine/link/print_waiting_text.asm @@ -19,4 +19,4 @@ PrintWaitingText:: jp DelayFrames WaitingText: - db "ОЖИДАНИЕ...!@" + db "Ожидание...!@" diff --git a/engine/menus/party_menu.asm b/engine/menus/party_menu.asm index f6966604c2..b4801096d1 100644 --- a/engine/menus/party_menu.asm +++ b/engine/menus/party_menu.asm @@ -201,7 +201,7 @@ RedrawPartyMenu_:: and $0F ;shara-add begin: Jumping to .female section for certain Pokemon. push af - ld a, [wEnemyMonSpecies2] + ld a, [wBattleMonSpecies2] push de push bc call IsFemaleSpecie diff --git a/home/text_script.asm b/home/text_script.asm index 9e1ba275f4..8b274ced4b 100644 --- a/home/text_script.asm +++ b/home/text_script.asm @@ -185,14 +185,34 @@ DisplaySafariGameOverText:: jp AfterDisplayingTextID DisplayPokemonFaintedText:: + ;shara-add begin + push af + ld a, [wd11e] + push de + push bc + call IsFemaleSpecie + pop bc + pop de + jr c, .female + pop af + ;shara-add end ld hl, PokemonFaintedText call PrintText jp AfterDisplayingTextID +.female ;shara-add + pop af + ld hl, PokemonFaintedText_Female + call PrintText + jp AfterDisplayingTextID PokemonFaintedText:: text_far _PokemonFaintedText text_end +PokemonFaintedText_Female:: ;shara-add + text_far _PokemonFaintedText_Female + text_end + DisplayPlayerBlackedOutText:: ld hl, PlayerBlackedOutText call PrintText