shithub: pokecrystal

Download patch

ref: 48f5e7dfb8c94144170085959e2e2dd414f20514
parent: 5f4fcbfba2742a04bd0dff37b8d0d5a90e56e3c3
author: yenatch <yenatch@gmail.com>
date: Sun Apr 7 22:23:32 EDT 2013

Shuckle special

--- a/constants.asm
+++ b/constants.asm
@@ -3328,6 +3328,8 @@
 
 SPECIAL_LOADFACESTEP 		EQU $003f
 
+SPECIAL_GIVESHUCKLE       EQU $004b
+
 SPECIAL_SNORLAXAWAKE 		EQU $0060
 
 SPECIAL_GAMEBOYCHECK 		EQU $0066
--- a/main.asm
+++ b/main.asm
@@ -4384,9 +4384,90 @@
 	ret
 ; 6f07
 
-INCBIN "baserom.gbc", $6f07, $747b - $6f07
 
+INCBIN "baserom.gbc", $6f07, $7305 - $6f07
 
+
+SpecialGiveShuckle: ; 7305
+
+; Adding to the party.
+	xor a
+	ld [MonType], a
+
+; Level 15 Shuckle.
+	ld a, SHUCKLE
+	ld [CurPartySpecies], a
+	ld a, 15
+	ld [CurPartyLevel], a
+
+	ld a, PREDEF_ADDPARTYMON
+	call Predef
+	jr nc, .NotGiven
+
+; Caught data.
+	ld b, 0
+	ld a, $13
+	ld hl, $5ba3
+	rst $8
+
+; Holding a Berry.
+	ld bc, PartyMon2 - PartyMon1
+	ld a, [PartyCount]
+	dec a
+	push af
+	push bc
+	ld hl, PartyMon1Item
+	call AddNTimes
+	ld [hl], BERRY
+	pop bc
+	pop af
+
+; OT ID.
+	ld hl, PartyMon1ID
+	call AddNTimes
+	ld a, $2
+	ld [hli], a
+	ld [hl], $6
+
+; Nickname.
+	ld a, [PartyCount]
+	dec a
+	ld hl, PartyMon1Nickname
+	call SkipNames
+	ld de, .Shuckie
+	call CopyName2
+
+; OT.
+	ld a, [PartyCount]
+	dec a
+	ld hl, PartyMon1OT
+	call SkipNames
+	ld de, .Mania
+	call CopyName2
+
+; Bittable2 flag for this event.
+	ld hl, $dc1e
+	set 5, [hl]
+
+	ld a, 1
+	ld [ScriptVar], a
+	ret
+
+.NotGiven
+	xor a
+	ld [ScriptVar], a
+	ret
+
+.Mania
+	db "MANIA@"
+.Shuckie
+	db "SHUCKIE@"
+; 737e
+
+
+INCBIN "baserom.gbc", $737e, $747b - $737e
+
+
 SECTION "bank2",DATA,BANK[$2]
 
 INCBIN "baserom.gbc", $8000, $854b - $8000
@@ -4697,7 +4778,7 @@
 	dbw $03, $43fc
 	dbw $09, $6feb
 	dbw $09, $7043
-	dbw $01, $7305
+	dbw BANK(SpecialGiveShuckle), SpecialGiveShuckle
 	dbw $01, $737e
 	dbw $01, $73f7
 	dbw BANK(SpecialCheckPokerus),SpecialCheckPokerus
--- a/maps/ManiasHouse.asm
+++ b/maps/ManiasHouse.asm
@@ -16,7 +16,7 @@
 	2writetext UnknownText_0x9d303
 	yesorno
 	iffalse UnknownScript_0x9d2b6
-	special $004b
+	special SPECIAL_GIVESHUCKLE
 	iffalse UnknownScript_0x9d2b0
 	2writetext UnknownText_0x9d3ed
 	keeptextopen
--