Skip to content

Instantly share code, notes, and snippets.

Created October 24, 2014 06:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/2908b6ef27e6e2baf050 to your computer and use it in GitHub Desktop.
Save anonymous/2908b6ef27e6e2baf050 to your computer and use it in GitHub Desktop.
diff --git a/items/item_effects.asm b/items/item_effects.asm
index df9b642..9148733 100644
--- a/items/item_effects.asm
+++ b/items/item_effects.asm
@@ -332,19 +332,17 @@ ParkBall: ; e8a2
jr nz, .statuscheck
ld a, 1
.statuscheck
-; This routine is buggy. It was intended that SLP and FRZ provide a higher
-; catch rate than BRN/PSN/PAR, which in turn provide a higher catch rate than
-; no status effect at all. But instead, it makes BRN/PSN/PAR provide no
-; benefit.
+; SLP and FRZ provide a higher catch rate than BRN/PSN/PAR,
+; which in turn provide a higher catch rate than no status effect at all.
ld b, a
ld a, [EnemyMonStatus]
+ and a
+ ld c, 0
+ jr z, .addstatus
and 1 << FRZ | SLP
ld c, 10
jr nz, .addstatus
- and a
ld c, 5
- jr nz, .addstatus
- ld c, 0
.addstatus
ld a, b
add c
@@ -908,9 +906,7 @@ LureBallMultiplier:
ret
MoonBallMultiplier:
-; This function is buggy.
-; Intent: multiply catch rate by 4 if mon evolves with moon stone
-; Reality: no boost
+; multiply catch rate by 4 if mon evolves with moon stone
GLOBAL EvosAttacks
GLOBAL EvosAttacksPointers
@@ -944,7 +940,7 @@ GLOBAL EvosAttacksPointers
push bc
ld a, BANK(EvosAttacks)
call GetFarByte
- cp MOON_STONE_RED ; BURN_HEAL (in Red)
+ cp MOON_STONE
pop bc
ret nz
@@ -958,9 +954,7 @@ GLOBAL EvosAttacksPointers
ret
LoveBallMultiplier:
-; This function is buggy.
-; Intent: multiply catch rate by 8 if mons are of same species, different sex
-; Reality: multiply catch rate by 8 if mons are of same species, same sex
+; multiply catch rate by 8 if mons are of same species, different sex
; does species match?
ld a, [TempEnemyMonSpecies]
@@ -1003,7 +997,7 @@ LoveBallMultiplier:
pop de
cp d
pop bc
- ret nz ; for the intended effect, this should be “ret z”
+ ret z
sla b
jr c, .max
@@ -1023,11 +1017,7 @@ LoveBallMultiplier:
ret
FastBallMultiplier:
-; This function is buggy.
-; Intent: multiply catch rate by 4 if enemy mon is in one of the three
-; FleeMons tables.
-; Reality: multiply catch rate by 4 if enemy mon is one of the first three in
-; the first FleeMons table.
+; multiply catch rate by 4 if enemy mon is in one of the three FleeMons tables.
ld a, [TempEnemyMonSpecies]
ld c, a
ld hl, FleeMons
@@ -1041,7 +1031,7 @@ FastBallMultiplier:
cp -1
jr z, .next
cp c
- jr nz, .next ; for the intended effect, this should be “jr nz, .loop”
+ jr nz, .loop
sla b
jr c, .max
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment