diff options
Diffstat (limited to 'event/bug_contest_judging.asm')
-rwxr-xr-x | event/bug_contest_judging.asm | 465 |
1 files changed, 0 insertions, 465 deletions
diff --git a/event/bug_contest_judging.asm b/event/bug_contest_judging.asm deleted file mode 100755 index 0d400bb39..000000000 --- a/event/bug_contest_judging.asm +++ /dev/null @@ -1,465 +0,0 @@ -_BugContestJudging: ; 1369d - call ContestScore - callba TrainerRankings_BugContestScore - call BugContest_JudgeContestants - ld a, [wBugContestThirdPlacePersonID] - call LoadContestantName - ld a, [wBugContestThirdPlaceMon] - ld [wNamedObjectIndexBuffer], a - call GetPokemonName - ld hl, BugContest_ThirdPlaceText - call PrintText - ld a, [wBugContestSecondPlacePersonID] - call LoadContestantName - ld a, [wBugContestSecondPlaceMon] - ld [wNamedObjectIndexBuffer], a - call GetPokemonName - ld hl, BugContest_SecondPlaceText - call PrintText - ld a, [wBugContestFirstPlacePersonID] - call LoadContestantName - ld a, [wBugContestFirstPlaceMon] - ld [wNamedObjectIndexBuffer], a - call GetPokemonName - ld hl, BugContest_FirstPlaceText - call PrintText - jp BugContest_GetPlayersResult -; 136eb - -BugContest_FirstPlaceText: ; 0x136eb - text_jump ContestJudging_FirstPlaceText - start_asm - ld de, SFX_1ST_PLACE - call PlaySFX - call WaitSFX - ld hl, BugContest_FirstPlaceScoreText - ret -; 136fd - -BugContest_FirstPlaceScoreText: ; 0x136fd - ; The winning score was @ points! - text_jump ContestJudging_FirstPlaceScoreText - db "@" -; 0x13702 - -BugContest_SecondPlaceText: ; 0x13702 - ; Placing second was @ , who caught a @ !@ @ - text_jump ContestJudging_SecondPlaceText - start_asm - ld de, SFX_2ND_PLACE - call PlaySFX - call WaitSFX - ld hl, BugContest_SecondPlaceScoreText - ret -; 13714 - -BugContest_SecondPlaceScoreText: ; 0x13714 - ; The score was @ points! - text_jump ContestJudging_SecondPlaceScoreText - db "@" -; 0x13719 - -BugContest_ThirdPlaceText: ; 0x13719 - ; Placing third was @ , who caught a @ !@ @ - text_jump ContestJudging_ThirdPlaceText - start_asm - ld de, SFX_3RD_PLACE - call PlaySFX - call WaitSFX - ld hl, BugContest_ThirdPlaceScoreText - ret -; 1372b - -BugContest_ThirdPlaceScoreText: ; 0x1372b - ; The score was @ points! - text_jump ContestJudging_ThirdPlaceScoreText - db "@" -; 0x13730 - -LoadContestantName: ; 13730 - -; If a = 0, get your name. - dec a - jr z, .player -; Find the pointer for the trainer class of the Bug Catching Contestant whose ID is in a. - ld c, a - ld b, 0 - ld hl, BugContestantPointers - add hl, bc - add hl, bc - ld a, [hli] - ld h, [hl] - ld l, a -; Copy the Trainer Class to c. - ld a, [hli] - ld c, a -; Save hl and bc for later. - push hl - push bc -; Get the Trainer Class name and copy it into wBugContestWinnerName. - callab GetTrainerClassName - ld hl, StringBuffer1 - ld de, wBugContestWinnerName - ld bc, TRAINER_CLASS_NAME_LENGTH - call CopyBytes - ld hl, wBugContestWinnerName -; Delete the trailing terminator and replace it with a space. -.next - ld a, [hli] - cp "@" - jr nz, .next - dec hl - ld [hl], " " - inc hl - ld d, h - ld e, l -; Restore the Trainer Class ID and Trainer ID pointer. Save de for later. - pop bc - pop hl - push de -; Get the name of the trainer with class c and ID b. - ld a, [hl] - ld b, a - callab GetTrainerName -; Append the name to wBugContestWinnerName. - ld hl, StringBuffer1 - pop de - ld bc, NAME_LENGTH - 1 - jp CopyBytes - -.player - ld hl, PlayerName - ld de, wBugContestWinnerName - ld bc, NAME_LENGTH - jp CopyBytes -; 13783 - -BugContestantPointers: ; 13783 - dw BugContestant_BugCatcherDon ; This reverts back to the player - dw BugContestant_BugCatcherDon - dw BugContestant_BugCatcherEd - dw BugContestant_CooltrainerMNick - dw BugContestant_PokefanMWilliam - dw BugContestant_BugCatcherBenny - dw BugContestant_CamperBarry - dw BugContestant_PicnickerCindy - dw BugContestant_BugCatcherJosh - dw BugContestant_YoungsterSamuel - dw BugContestant_SchoolboyKipp -; 13799 - -BugContestant_BugCatcherDon: - db BUG_CATCHER, DON - dbw KAKUNA, 300 - dbw METAPOD, 285 - dbw CATERPIE, 226 - -BugContestant_BugCatcherEd: - db BUG_CATCHER, ED - dbw BUTTERFREE, 286 - dbw BUTTERFREE, 251 - dbw CATERPIE, 237 - -BugContestant_CooltrainerMNick: - db COOLTRAINERM, NICK - dbw SCYTHER, 357 - dbw BUTTERFREE, 349 - dbw PINSIR, 368 - -BugContestant_PokefanMWilliam: - db POKEFANM, WILLIAM - dbw PINSIR, 332 - dbw BUTTERFREE, 324 - dbw VENONAT, 321 - -BugContestant_BugCatcherBenny: - db BUG_CATCHER, BUG_CATCHER_BENNY - dbw BUTTERFREE, 318 - dbw WEEDLE, 295 - dbw CATERPIE, 285 - -BugContestant_CamperBarry: - db CAMPER, BARRY - dbw PINSIR, 366 - dbw VENONAT, 329 - dbw KAKUNA, 314 - -BugContestant_PicnickerCindy: - db PICNICKER, CINDY - dbw BUTTERFREE, 341 - dbw METAPOD, 301 - dbw CATERPIE, 264 - -BugContestant_BugCatcherJosh: - db BUG_CATCHER, JOSH - dbw SCYTHER, 326 - dbw BUTTERFREE, 292 - dbw METAPOD, 282 - -BugContestant_YoungsterSamuel: - db YOUNGSTER, SAMUEL - dbw WEEDLE, 270 - dbw PINSIR, 282 - dbw CATERPIE, 251 - -BugContestant_SchoolboyKipp: - db SCHOOLBOY, KIPP - dbw VENONAT, 267 - dbw PARAS, 254 - dbw KAKUNA, 259 -; 13807 - -BugContest_GetPlayersResult: ; 13807 - ld hl, wBugContestThirdPlacePersonID - ld de, -4 - ld b, 3 -.loop - ld a, [hl] - cp 1 ; Player - jr z, .done - add hl, de - dec b - jr nz, .loop - -.done - ret -; 13819 - -BugContest_JudgeContestants: ; 13819 - call ClearContestResults - call ComputeAIContestantScores - ld hl, wBugContestTempPersonID - ld a, 1 ; Player - ld [hli], a - ld a, [wContestMon] - ld [hli], a - ld a, [hProduct] - ld [hli], a - ld a, [hProduct + 1] - ld [hl], a - call DetermineContestWinners - ret -; 13833 - -ClearContestResults: ; 13833 - ld hl, wBugContestResults - ld b, wBugContestWinnersEnd - wBugContestResults - xor a -.loop - ld [hli], a - dec b - jr nz, .loop - ret -; 1383e - -DetermineContestWinners: ; 1383e - ld de, wBugContestTempScore - ld hl, wBugContestFirstPlaceScore - ld c, 2 - call StringCmp - jr c, .not_first_place - ld hl, wBugContestSecondPlacePersonID - ld de, wBugContestThirdPlacePersonID - ld bc, 4 - call CopyBytes - ld hl, wBugContestFirstPlacePersonID - ld de, wBugContestSecondPlacePersonID - ld bc, 4 - call CopyBytes - ld hl, wBugContestFirstPlacePersonID - call CopyTempContestant - jr .done - -.not_first_place - ld de, wBugContestTempScore - ld hl, wBugContestSecondPlaceScore - ld c, 2 - call StringCmp - jr c, .not_second_place - ld hl, wBugContestSecondPlacePersonID - ld de, wBugContestThirdPlacePersonID - ld bc, 4 - call CopyBytes - ld hl, wBugContestSecondPlacePersonID - call CopyTempContestant - jr .done - -.not_second_place - ld de, wBugContestTempScore - ld hl, wBugContestThirdPlaceScore - ld c, 2 - call StringCmp - jr c, .done - ld hl, wBugContestThirdPlacePersonID - call CopyTempContestant - -.done - ret -; 138a0 - -CopyTempContestant: ; 138a0 -; Could've just called CopyBytes. - ld de, wBugContestTempPersonID -rept 3 - ld a, [de] - inc de - ld [hli], a -endr - ld a, [de] - inc de - ld [hl], a - ret -; 138b0 - -ComputeAIContestantScores: ; 138b0 - ld e, 0 -.loop - push de - call Special_CheckBugContestContestantFlag - pop de - jr nz, .done - ld a, e - inc a - inc a - ld [wBugContestTempPersonID], a - dec a - ld c, a - ld b, 0 - ld hl, BugContestantPointers - add hl, bc - add hl, bc - ld a, [hli] - ld h, [hl] - ld l, a - inc hl - inc hl -.loop2 - call Random - and 3 - cp 3 - jr z, .loop2 - ld c, a - ld b, 0 - add hl, bc - add hl, bc - add hl, bc - ld a, [hli] - ld [wBugContestTempMon], a - ld a, [hli] - ld h, [hl] - ld l, a - call Random - and 7 - ld c, a - ld b, 0 - add hl, bc - ld a, h - ld [wBugContestTempScore], a - ld a, l - ld [wBugContestTempScore + 1], a - push de - call DetermineContestWinners - pop de - -.done - inc e - ld a, e - cp 10 - jr nz, .loop - ret -; 13900 - -ContestScore: ; 13900 -; Determine the player's score in the Bug Catching Contest. - - xor a - ld [hProduct], a - ld [hMultiplicand], a - - ld a, [wContestMonSpecies] ; Species - and a - jr z, .done - - ; Tally the following: - - ; Max HP * 4 - ld a, [wContestMonMaxHP + 1] - call .AddContestStat - ld a, [wContestMonMaxHP + 1] - call .AddContestStat - ld a, [wContestMonMaxHP + 1] - call .AddContestStat - ld a, [wContestMonMaxHP + 1] - call .AddContestStat - - ; Stats - ld a, [wContestMonAttack + 1] - call .AddContestStat - ld a, [wContestMonDefense + 1] - call .AddContestStat - ld a, [wContestMonSpeed + 1] - call .AddContestStat - ld a, [wContestMonSpclAtk + 1] - call .AddContestStat - ld a, [wContestMonSpclDef + 1] - call .AddContestStat - - ; DVs - ld a, [wContestMonDVs + 0] - ld b, a - and 2 - add a - add a - ld c, a - - swap b - ld a, b - and 2 - add a - add c - ld d, a - - ld a, [wContestMonDVs + 1] - ld b, a - and 2 - ld c, a - - swap b - ld a, b - and 2 - srl a - add c - add c - add d - add d - - call .AddContestStat - - ; Remaining HP / 8 - ld a, [wContestMonHP + 1] - srl a - srl a - srl a - call .AddContestStat - - ; Whether it's holding an item - ld a, [wContestMonItem] - and a - jr z, .done - - ld a, 1 - call .AddContestStat - -.done - ret -; 1397f - -.AddContestStat: ; 1397f - ld hl, hMultiplicand - add [hl] - ld [hl], a - ret nc - dec hl - inc [hl] - ret -; 13988 |