summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconstants/item_constants.asm1
-rw-r--r--constants/pokedex_constants.asm3
-rw-r--r--constants/pokemon_constants.asm2
-rwxr-xr-xdata/baseStats/glaceon.asm28
-rwxr-xr-xdata/base_stats.asm1
-rwxr-xr-xdata/cries.asm2
-rwxr-xr-xdata/evos_moves.asm11
-rwxr-xr-xdata/item_prices.asm1
-rwxr-xr-xdata/key_items.asm2
-rwxr-xr-xdata/mon_palettes.asm1
-rwxr-xr-xdata/mon_party_sprites.asm1
-rwxr-xr-xdata/pokedex_entries.asm9
-rwxr-xr-xdata/pokedex_order.asm2
-rwxr-xr-xengine/evos_moves.asm4
-rwxr-xr-xengine/items/items.asm15
-rwxr-xr-xengine/menu/party_menu.asm4
-rwxr-xr-xengine/menu/start_sub_menus.asm1
-rwxr-xr-xengine/save.asm4
-rw-r--r--home.asm4
-rwxr-xr-xmain.asm2
-rwxr-xr-xpic/bmon/glaceon.pngbin0 -> 441 bytes
-rwxr-xr-xpic/monback/glaceonb.pngbin0 -> 501 bytes
-rwxr-xr-xtext/item_names.asm1
-rwxr-xr-xtext/monster_names.asm2
-rw-r--r--text/pokedex.asm10
-rwxr-xr-xwram.asm13
26 files changed, 107 insertions, 17 deletions
diff --git a/constants/item_constants.asm b/constants/item_constants.asm
index fe6fcb15..08799908 100755
--- a/constants/item_constants.asm
+++ b/constants/item_constants.asm
@@ -99,6 +99,7 @@ SAFARI_ROCK EQU $16 ; overload
const FLOOR_10F ; $5F
const FLOOR_11F ; $60
const FLOOR_B4F ; $61
+ const ICE_STONE ; $62
const_value = $C4
diff --git a/constants/pokedex_constants.asm b/constants/pokedex_constants.asm
index 8add08bc..2f229aa5 100644
--- a/constants/pokedex_constants.asm
+++ b/constants/pokedex_constants.asm
@@ -152,5 +152,6 @@ const_value = 1
const DEX_MEWTWO ; 150
const DEX_MEW ; 151
const DEX_LEAFEON ; 152
+ const DEX_GLACEON ; 153
-NUM_POKEMON EQU 152
+NUM_POKEMON EQU 153
diff --git a/constants/pokemon_constants.asm b/constants/pokemon_constants.asm
index 5958effa..ab5d9152 100644
--- a/constants/pokemon_constants.asm
+++ b/constants/pokemon_constants.asm
@@ -31,7 +31,7 @@ const_value = 1
const PINSIR ; $1D
const TANGELA ; $1E
const LEAFEON ; $1F
- const MISSINGNO_20 ; $20
+ const GLACEON ; $20
const GROWLITHE ; $21
const ONIX ; $22
const FEAROW ; $23
diff --git a/data/baseStats/glaceon.asm b/data/baseStats/glaceon.asm
new file mode 100755
index 00000000..e61c1d60
--- /dev/null
+++ b/data/baseStats/glaceon.asm
@@ -0,0 +1,28 @@
+db DEX_GLACEON ; pokedex id
+db 130 ; base hp
+db 65 ; base attack
+db 60 ; base defense
+db 65 ; base speed
+db 110 ; base special
+db ICE ; species type 1
+db ICE ; species type 2
+db 45 ; catch rate
+db 196 ; base exp yield
+INCBIN "pic/bmon/glaceon.pic",0,1 ; 77, sprite dimensions
+dw GlaceonPicFront
+dw GlaceonPicBack
+; attacks known at lvl 0
+db TACKLE
+db SAND_ATTACK
+db QUICK_ATTACK
+db ICE_BEAM
+db 0 ; growth rate
+; learnset
+ tmlearn 6,8
+ tmlearn 9,10,11,12,13,14,15
+ tmlearn 20
+ tmlearn 31,32
+ tmlearn 33,34,39,40
+ tmlearn 44
+ tmlearn 50,53
+db 0 ; padding
diff --git a/data/base_stats.asm b/data/base_stats.asm
index f3774118..4ca36dd3 100755
--- a/data/base_stats.asm
+++ b/data/base_stats.asm
@@ -150,3 +150,4 @@ INCLUDE "data/baseStats/dragonite.asm"
INCLUDE "data/baseStats/mewtwo.asm"
INCLUDE "data/baseStats/mew.asm"
INCLUDE "data/baseStats/leafeon.asm"
+INCLUDE "data/baseStats/glaceon.asm"
diff --git a/data/cries.asm b/data/cries.asm
index 1a1e68fe..b048c002 100755
--- a/data/cries.asm
+++ b/data/cries.asm
@@ -31,7 +31,7 @@ CryData:
db $14, $00, $80; Pinsir
db $12, $00, $80; Tangela
db $1A, $AA, $FF; Leafeon
- db $00, $00, $00; MissingNo.
+ db $1A, $AA, $FF; Glaceon
db $1F, $20, $40; Growlithe
db $17, $FF, $C0; Onix
db $18, $40, $A0; Fearow
diff --git a/data/evos_moves.asm b/data/evos_moves.asm
index 38f2e63d..ff3e86a4 100755
--- a/data/evos_moves.asm
+++ b/data/evos_moves.asm
@@ -30,7 +30,7 @@ EvosMovesPointerTable:
dw Mon127_EvosMoves
dw Mon114_EvosMoves
dw Mon152_EvosMoves
- dw Mon153_EvosMoves ;MissingNo
+ dw Mon153_EvosMoves
dw Mon058_EvosMoves
dw Mon095_EvosMoves
dw Mon022_EvosMoves
@@ -580,10 +580,16 @@ Mon152_EvosMoves:
db 0
Mon153_EvosMoves:
-;MISSINGNO
+;GLACEON
;Evolutions
db 0
;Learnset
+ db 27,QUICK_ATTACK
+ db 31,AURORA_BEAM
+ db 37,TAIL_WHIP
+ db 40,BITE
+ db 48,MIST
+ db 54,BLIZZARD
db 0
Mon058_EvosMoves:
@@ -1348,6 +1354,7 @@ Mon040_EvosMoves:
Mon133_EvosMoves:
;EEVEE
;Evolutions
+ db EV_ITEM,ICE_STONE,1,GLACEON
db EV_ITEM,LEAF_STONE,1,LEAFEON
db EV_ITEM,FIRE_STONE,1,FLAREON
db EV_ITEM,THUNDER_STONE,1,JOLTEON
diff --git a/data/item_prices.asm b/data/item_prices.asm
index 15a1bd34..4198ccff 100755
--- a/data/item_prices.asm
+++ b/data/item_prices.asm
@@ -96,3 +96,4 @@ ItemPrices:
money 0 ; FLOOR_10F
money 0 ; FLOOR_11F
money 0 ; FLOOR_B4F
+ money 2100 ; ICE_STONE
diff --git a/data/key_items.asm b/data/key_items.asm
index afa586af..8e1c89f7 100755
--- a/data/key_items.asm
+++ b/data/key_items.asm
@@ -10,3 +10,5 @@ KeyItemBitfield:
db %11110000
db %00111011
db %00000000
+ db %00000000
+ db %00000000
diff --git a/data/mon_palettes.asm b/data/mon_palettes.asm
index 7bbea1fd..31fbf81c 100755
--- a/data/mon_palettes.asm
+++ b/data/mon_palettes.asm
@@ -152,3 +152,4 @@ MonsterPalettes:
db PAL_MEWMON ; MEWTWO
db PAL_MEWMON ; MEW
db PAL_GREENMON ; LEAFEON
+ db PAL_CYANMON ; GLACEON
diff --git a/data/mon_party_sprites.asm b/data/mon_party_sprites.asm
index 1535d25a..76ccaecd 100755
--- a/data/mon_party_sprites.asm
+++ b/data/mon_party_sprites.asm
@@ -75,3 +75,4 @@ MonPartyData:
dn SPRITE_SNAKE, SPRITE_SNAKE ;Dratini/Dragonair
dn SPRITE_SNAKE, SPRITE_MON ;Dragonite/Mewtwo
dn SPRITE_MON, SPRITE_QUADRUPED ;Mew/Leafeon
+ dn SPRITE_QUADRUPED, 0 ;Glaceon/Padding
diff --git a/data/pokedex_entries.asm b/data/pokedex_entries.asm
index 3af53f3a..98a9bb2e 100755
--- a/data/pokedex_entries.asm
+++ b/data/pokedex_entries.asm
@@ -30,7 +30,7 @@ PokedexEntryPointers:
dw PinsirDexEntry
dw TangelaDexEntry
dw LeafeonDexEntry
- dw MissingNoDexEntry
+ dw GlaceonDexEntry
dw GrowlitheDexEntry
dw OnixDexEntry
dw FearowDexEntry
@@ -412,6 +412,13 @@ LeafeonDexEntry:
TX_FAR _LeafeonDexEntry
db "@"
+GlaceonDexEntry:
+ db "ICE@"
+ db 3,3
+ dw 640
+ TX_FAR _GlaceonDexEntry
+ db "@"
+
GrowlitheDexEntry:
db "PUPPY@"
db 2,4
diff --git a/data/pokedex_order.asm b/data/pokedex_order.asm
index 79cd933e..dc4d36eb 100755
--- a/data/pokedex_order.asm
+++ b/data/pokedex_order.asm
@@ -30,7 +30,7 @@ PokedexOrder:
db DEX_PINSIR
db DEX_TANGELA
db DEX_LEAFEON
- db 0 ; MISSINGNO.
+ db DEX_GLACEON
db DEX_GROWLITHE
db DEX_ONIX
db DEX_FEAROW
diff --git a/engine/evos_moves.asm b/engine/evos_moves.asm
index f50f8081..27526bd1 100755
--- a/engine/evos_moves.asm
+++ b/engine/evos_moves.asm
@@ -207,7 +207,11 @@ Evolution_PartyMonLoop: ; loop over party mons
ld [wd11e], a
xor a
ld [wMonDataLocation], a
+ ld a, [wcf91]
+ push af
call LearnMoveFromLevelUp
+ pop af
+ ld [wcf91], a
pop hl
predef SetPartyMonTypes
ld a, [wIsInBattle]
diff --git a/engine/items/items.asm b/engine/items/items.asm
index f8873a6e..95fea960 100755
--- a/engine/items/items.asm
+++ b/engine/items/items.asm
@@ -99,6 +99,21 @@ ItemUsePtrTable:
dw ItemUsePPRestore ; MAX_ETHER
dw ItemUsePPRestore ; ELIXER
dw ItemUsePPRestore ; MAX_ELIXER
+ dw UnusableItem ; FLOOR_B2F
+ dw UnusableItem ; FLOOR_B1F
+ dw UnusableItem ; FLOOR_1F
+ dw UnusableItem ; FLOOR_2F
+ dw UnusableItem ; FLOOR_3F
+ dw UnusableItem ; FLOOR_4F
+ dw UnusableItem ; FLOOR_5F
+ dw UnusableItem ; FLOOR_6F
+ dw UnusableItem ; FLOOR_7F
+ dw UnusableItem ; FLOOR_8F
+ dw UnusableItem ; FLOOR_9F
+ dw UnusableItem ; FLOOR_10F
+ dw UnusableItem ; FLOOR_11F
+ dw UnusableItem ; FLOOR_B4F
+ dw ItemUseEvoStone ; ICE_STONE
ItemUseBall:
diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm
index a35524ed..5988f7e5 100755
--- a/engine/menu/party_menu.asm
+++ b/engine/menu/party_menu.asm
@@ -148,11 +148,11 @@ RedrawPartyMenu_:
ld a,[hli]
ld h,[hl]
ld l,a
- ld de,wcd6d
+ ld de,wEvolutionData
ld a,BANK(EvosMovesPointerTable)
ld bc,Mon133_EvosEnd - Mon133_EvosMoves
call FarCopyData
- ld hl,wcd6d
+ ld hl,wEvolutionData
ld de,.notAbleToEvolveText
; loop through the pokemon's evolution entries
.checkEvolutionsLoop
diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm
index 251d7ae4..d3baeb0e 100755
--- a/engine/menu/start_sub_menus.asm
+++ b/engine/menu/start_sub_menus.asm
@@ -484,6 +484,7 @@ UsableItems_PartyMenu:
db MAX_ETHER
db ELIXER
db MAX_ELIXER
+ db ICE_STONE
db $ff
; items which close the item menu when used
diff --git a/engine/save.asm b/engine/save.asm
index 4fb2c4c8..59f81db7 100755
--- a/engine/save.asm
+++ b/engine/save.asm
@@ -117,7 +117,7 @@ LoadSAV2:
call CopyData
ld hl, sMainData
ld de, wPokedexOwned
- ld bc, wPokedexSeenEnd - wPokedexOwned
+ ld bc, wPokedexSeenEndOld - wPokedexOwned
call CopyData
and a
jp SAVGoodChecksum
@@ -260,7 +260,7 @@ SaveSAVtoSRAM2:
call CopyData
ld hl, wPokedexOwned ; pokédex only
ld de, sMainData
- ld bc, wPokedexSeenEnd - wPokedexOwned
+ ld bc, wPokedexSeenEndOld - wPokedexOwned
call CopyData
ld hl, sPlayerName
ld bc, sMainDataCheckSum - sPlayerName
diff --git a/home.asm b/home.asm
index 56652171..c4cbfdfe 100644
--- a/home.asm
+++ b/home.asm
@@ -740,6 +740,10 @@ UncompressMonSprite::
ld a,BANK(LeafeonPicFront)
jr z,.GotBank
ld a,b
+ cp GLACEON
+ ld a,BANK(GlaceonPicFront)
+ jr z,.GotBank
+ ld a,b
cp FOSSIL_KABUTOPS
ld a,BANK(FossilKabutopsPic)
jr z,.GotBank
diff --git a/main.asm b/main.asm
index 9bd4a1ea..a0a5b879 100755
--- a/main.asm
+++ b/main.asm
@@ -6717,3 +6717,5 @@ SECTION "Pics 6", ROMX, BANK[PICS_6]
LeafeonPicFront:: INCBIN "pic/bmon/leafeon.pic"
LeafeonPicBack:: INCBIN "pic/monback/leafeonb.pic"
+GlaceonPicFront:: INCBIN "pic/bmon/glaceon.pic"
+GlaceonPicBack:: INCBIN "pic/monback/glaceonb.pic"
diff --git a/pic/bmon/glaceon.png b/pic/bmon/glaceon.png
new file mode 100755
index 00000000..c81ebeea
--- /dev/null
+++ b/pic/bmon/glaceon.png
Binary files differ
diff --git a/pic/monback/glaceonb.png b/pic/monback/glaceonb.png
new file mode 100755
index 00000000..35fa1857
--- /dev/null
+++ b/pic/monback/glaceonb.png
Binary files differ
diff --git a/text/item_names.asm b/text/item_names.asm
index e436d74d..f20c8b8c 100755
--- a/text/item_names.asm
+++ b/text/item_names.asm
@@ -96,3 +96,4 @@ ItemNames:
db "10F@"
db "11F@"
db "B4F@"
+ db "ICE STONE@"
diff --git a/text/monster_names.asm b/text/monster_names.asm
index dcb96e5f..dc8d2395 100755
--- a/text/monster_names.asm
+++ b/text/monster_names.asm
@@ -30,7 +30,7 @@ MonsterNames:
db "PINSIR@@@@"
db "TANGELA@@@"
db "LEAFEON@@@"
- db "MISSINGNO."
+ db "GLACEON@@@"
db "GROWLITHE@"
db "ONIX@@@@@@"
db "FEAROW@@@@"
diff --git a/text/pokedex.asm b/text/pokedex.asm
index a777b9d8..3598f785 100644
--- a/text/pokedex.asm
+++ b/text/pokedex.asm
@@ -308,6 +308,16 @@ _LeafeonDexEntry::
next "just like a plant"
dex
+_GlaceonDexEntry::
+ text "The Fresh Snow"
+ next "#MON. It can"
+ next "freeze the fur on"
+
+ page "its body, and make"
+ next "it stick out like"
+ next "sharp needles"
+ dex
+
_GrowlitheDexEntry::
text "Very protective"
next "of its territory."
diff --git a/wram.asm b/wram.asm
index 0321545c..2a61e6e6 100755
--- a/wram.asm
+++ b/wram.asm
@@ -2341,10 +2341,8 @@ wPokedexOwned:: ; d2f7
flag_array NUM_POKEMON
wPokedexOwnedEnd::
-wPokedexSeen:: ; d30a
- flag_array NUM_POKEMON
-wPokedexSeenEnd::
-
+ ds 152 / 8 * 2 - (wPokedexOwnedEnd - wPokedexOwned)
+wPokedexSeenEndOld::
wNumBagItems:: ; d31d
ds 1
@@ -2574,7 +2572,11 @@ wDestinationWarpID:: ; d42f
; if $ff, the player's coordinates are not updated when entering the map
ds 1
- ds 128
+wPokedexSeen::
+ flag_array NUM_POKEMON
+wPokedexSeenEnd::
+
+ ds 128 - (wPokedexSeenEnd - wPokedexSeen)
wNumSigns:: ; d4b0
; number of signs in the current map (up to 16)
@@ -2914,6 +2916,7 @@ wRoute18GateCurScript:: ; d669
ds 78
wGameProgressFlagsEnd::
+wEvolutionData::
ds 56
wObtainedHiddenItemsFlags::