Go Back   The PokéCommunity Forums > ROM Hacking > ROM Hacking Hub
Reload this Page Script Help Thread (DO NOT REQUEST SCRIPTS)

Notices
For all updates, view the main page.

ROM Hacking Hub General discussions about ROM Hacking and Emulation. Not sure where to start? This is the place for you.
Posting links to ROMs is illegal and is not tolerated anywhere on the forum.
New threads in this forum are to be approved by a moderator before they are displayed.



Closed Thread
 
Thread Tools
  #7876    
Old February 9th, 2013 (11:02 PM).
machomuu's Avatar
machomuu machomuu is offline
We'll practice like it's 1999!
Team Kanto
Moderator
 
Join Date: Apr 2008
Location: Americalanavania
Gender: Male
Nature: Relaxed
Posts: 7,338
Quote originally posted by zephern:
In the past I've been more familiar with Pokescript; would it be better to just use XSE instead?
Yes, it would. The start may be rocky, but you'll come to find that XSE is more user friendly, has more support, and is all around easier to use.
__________________
  #7877    
Old February 10th, 2013 (07:05 AM).
TheUltimateG.J's Avatar
TheUltimateG.J TheUltimateG.J is offline
Team Hoenn
 
Join Date: Oct 2011
Location: Bihar,Darbhanga
Age: 16
Gender: Male
Nature: Jolly
Posts: 105
hi I want to know what's the problem in this script as whn the pidgeotto section of the script after battling pidgeotto the screen turns black forever and whenever I step on the script tile the script again starts to go on and I again got a free mankey and battle a pidgeotto sohow should I stop these errors?

Here is the script

'---------------
#org 0x802781
applymovement 0x2 0x8802824
waitmovement 0x0
msgbox 0x880282F MSG_YESNO '"A wild Mankey wants to join your\n..."
compare LASTRESULT 0x1
if 0x1 goto 0x88027AB
compare LASTRESULT 0x0
if 0x0 goto 0x8802819
end

'---------------
#org 0x8027AB
msgbox 0x880286C MSG_NORMAL '"Mankey happily joined your party!"
applymovement 0x2 0x88028A9
givepokemon 0x38 0xA 0xCF 0x0 0x0 0x0
fanfare 0x13E
msgbox 0x88028B1 MSG_KEEPOPEN '"[player]recieved a Mankey!!"
waitfanfare
closeonkeypress
setflag 0x754
fadescreen 0x1
fadescreen 0x0
showsprite 0x3
msgbox 0x88028C9 MSG_NORMAL '"A Pidgey wants to battle but it is..."
fadescreen 0x1
hidesprite 0x3
fadescreen 0x0
showsprite 0x4
cry 0x11 0x0
msgbox 0x88028FA MSG_NORMAL '"The evolved Pidgeotto is\nattackin..."
waitcry
wildbattle 0x11 0x8 0xD2
fadescreen 0x0
hidesprite 0x4
fadescreen 0x1
setflag 0x755
release
end

'---------------
#org 0x802819
msgbox 0x8802890 MSG_NORMAL '"Mankey seems very sad!"
release
end


'---------
' Strings
'---------
#org 0x80282F
= A wild Mankey wants to join your\nparty should you take it?

#org 0x80286C
= Mankey happily joined your party!

#org 0x8028B1
= [player]recieved a Mankey!!

#org 0x8028C9
= A Pidgey wants to battle but it is\nnot strong.

#org 0x8028FA
= The evolved Pidgeotto is\nattacking with rage!!

#org 0x802890
= Mankey seems very sad!


'-----------
' Movements
'-----------
#org 0x802824
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x0 'Face Down
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x8028A9
#raw 0x4E 'Jump Down
#raw 0x60 'Hide
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0xFE 'End of Movements
__________________


A lover of Pokemon and their Hacks this is no other than?

Only he can be----->G.J
  #7878    
Old February 10th, 2013 (07:26 AM).
FBI agent's Avatar
FBI agent FBI agent is offline
If my PM box is full, VM instead :x
Team Johto
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Posts: 823
Quote originally posted by Ganeshwar:
hi I want to know what's the problem in this script as whn the pidgeotto section of the script after battling pidgeotto the screen turns black forever and whenever I step on the script tile the script again starts to go on and I again got a free mankey and battle a pidgeotto sohow should I stop these errors?

Here is the script

'---------------
#org 0x802781
applymovement 0x2 0x8802824
waitmovement 0x0
msgbox 0x880282F MSG_YESNO '"A wild Mankey wants to join your\n..."
compare LASTRESULT 0x1
if 0x1 goto 0x88027AB
compare LASTRESULT 0x0
if 0x0 goto 0x8802819
end

'---------------
#org 0x8027AB
msgbox 0x880286C MSG_NORMAL '"Mankey happily joined your party!"
applymovement 0x2 0x88028A9
givepokemon 0x38 0xA 0xCF 0x0 0x0 0x0
fanfare 0x13E
msgbox 0x88028B1 MSG_KEEPOPEN '"[player]recieved a Mankey!!"
waitfanfare
closeonkeypress
setflag 0x754
fadescreen 0x1
fadescreen 0x0
showsprite 0x3
msgbox 0x88028C9 MSG_NORMAL '"A Pidgey wants to battle but it is..."
fadescreen 0x1
hidesprite 0x3
fadescreen 0x0
showsprite 0x4
cry 0x11 0x0
msgbox 0x88028FA MSG_NORMAL '"The evolved Pidgeotto is\nattackin..."
waitcry
wildbattle 0x11 0x8 0xD2
fadescreen 0x0
hidesprite 0x4
fadescreen 0x1
setflag 0x755
release
end

'---------------
#org 0x802819
msgbox 0x8802890 MSG_NORMAL '"Mankey seems very sad!"
release
end


'---------
' Strings
'---------
#org 0x80282F
= A wild Mankey wants to join your\nparty should you take it?

#org 0x80286C
= Mankey happily joined your party!

#org 0x8028B1
= [player]recieved a Mankey!!

#org 0x8028C9
= A Pidgey wants to battle but it is\nnot strong.

#org 0x8028FA
= The evolved Pidgeotto is\nattacking with rage!!

#org 0x802890
= Mankey seems very sad!


'-----------
' Movements
'-----------
#org 0x802824
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x13 'Step Right (Normal)
#raw 0x0 'Face Down
#raw 0x10 'Step Down (Normal)
#raw 0x10 'Step Down (Normal)
#raw 0xFE 'End of Movements

#org 0x8028A9
#raw 0x4E 'Jump Down
#raw 0x60 'Hide
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0x20 'Step Right (Fast)
#raw 0xFE 'End of Movements
I fixed this script for you guys a long time ago. I'm kinda sad no one bothered to read all that detailed post I wrote...
Anyways, I encourage you to go and read it again, if there are things you don't understand you are free to ask me.

link: http://www.pokecommunity.com/showpost.php?p=7525168&postcount=7838
__________________
...

My name forum name is FBI Agent, though you can call me FBI because it's shorter.

Some of my stuff:
ASM request/resource thread
ASM tutorials thread
ASM Workshop
  #7879    
Old February 10th, 2013 (01:45 PM).
sonicshuffler42 sonicshuffler42 is offline
Team Kalos
 
Join Date: Feb 2013
Gender: Male
Posts: 17
So basically what I want to do is make it so that the game thinks you already visited the pokemon center of a town. So that you can use fly at the very beginning of the game to get to all the towns.

I looked at the level script for the poke-centers and this is what came up.
Game: Fire Red
Editor: exe (extreme script editor)
Script:
Spoiler:
;---------------
#org 0x16B0FA
sethealingplace 0x5 (Note: number for sethealingplace 0x gets higher each town and starts at 0x0 at your hometown)
end


Is this the code that makes the game recognize that flying to that pokemon center is enabled? Or do I need to set something else? I could make it so that my creepy pasta game is supposed to be played through normally, but setting the fly stuff to be working would make testing it sooo much easier. (And recording it for youtube videos)
  #7880    
Old February 10th, 2013 (04:12 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by sonicshuffler42:
So basically what I want to do is make it so that the game thinks you already visited the pokemon center of a town. So that you can use fly at the very beginning of the game to get to all the towns.

I looked at the level script for the poke-centers and this is what came up.
Game: Fire Red
Editor: exe (extreme script editor)
Script:
Spoiler:
;---------------
#org 0x16B0FA
sethealingplace 0x5 (Note: number for sethealingplace 0x gets higher each town and starts at 0x0 at your hometown)
end


Is this the code that makes the game recognize that flying to that pokemon center is enabled? Or do I need to set something else? I could make it so that my creepy pasta game is supposed to be played through normally, but setting the fly stuff to be working would make testing it sooo much easier. (And recording it for youtube videos)
Aren't fly locations just flags? Why not set them all at the beginning of the game?

This post is something that every rom hacker needs book marked, even if just as a reference: http://www.pokecommunity.com/showthread.php?p=6829256#post6829256
__________________

Paired with Simba
  #7881    
Old February 11th, 2013 (12:02 PM).
Csmusic99 Csmusic99 is offline
Team Kanto
 
Join Date: Jan 2013
Gender: Male
Posts: 2
Hi, im new to hacking and i want to know how to change scripts and such. Help is really appreciated, thanks in advance
  #7882    
Old February 11th, 2013 (01:51 PM).
sonicshuffler42 sonicshuffler42 is offline
Team Kalos
 
Join Date: Feb 2013
Gender: Male
Posts: 17
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:
#dynamic 0x8000

#org @Start
lock
checkflag *flag for first gym badge*
If 0x1 goto @warp1
*warp script to go to a "normal" house.*
release
end

#org @warp1
lock
checkflag *flag for second badge*
If 0x1 goto @warp2
*warp script to go to a slightly-glitchy looking house*
release
end


And So on?
  #7883    
Old February 11th, 2013 (02:05 PM). Edited February 11th, 2013 by FBI agent.
FBI agent's Avatar
FBI agent FBI agent is offline
If my PM box is full, VM instead :x
Team Johto
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Posts: 823
Quote originally posted by sonicshuffler42:
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:
#dynamic 0x8000

#org @Start
lock
checkflag *flag for first gym badge*
If 0x1 goto @warp1
*warp script to go to a "normal" house.*
release
end

#org @warp1
lock
checkflag *flag for second badge*
If 0x1 goto @warp2
*warp script to go to a slightly-glitchy looking house*
release
end


And So on?
No it will always warp you to the first gym's warp from badges 1-8.

Hint: Introduce a variable that increments per badge.

Better Hint: Noossab Blue's super cheap mode way.

Quote originally posted by Csmusic99:
Hi, im new to hacking and i want to know how to change scripts and such. Help is really appreciated, thanks in advance
There are many tutorials for scripting in the tutorial section. I suggest you read up :P
__________________
...

My name forum name is FBI Agent, though you can call me FBI because it's shorter.

Some of my stuff:
ASM request/resource thread
ASM tutorials thread
ASM Workshop
  #7884    
Old February 11th, 2013 (05:48 PM).
Noossab Blue's Avatar
Noossab Blue Noossab Blue is offline
Team Johto
 
Join Date: Dec 2012
Location: USA
Gender: Female
Nature: Quirky
Posts: 243
Quote originally posted by sonicshuffler42:
So I'm thinking of making a new 'house' in Viridian forest that teleports you to different areas (new maps mind you) depending on how many badges you have. Would this script work?

Spoiler:
#dynamic 0x8000

#org @Start
lock
checkflag *flag for first gym badge*
If 0x1 goto @warp1
*warp script to go to a "normal" house.*
release
end

#org @warp1
lock
checkflag *flag for second badge*
If 0x1 goto @warp2
*warp script to go to a slightly-glitchy looking house*
release
end


And So on?
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.
__________________
IGN: Anna/Noossab Blue
3DS FC: 3196 3609 8450

Thanks to SilverGrey for the awesome banner! Click to see!
Current as of 1/31/14: I updated again!

  #7885    
Old February 11th, 2013 (05:56 PM).
FBI agent's Avatar
FBI agent FBI agent is offline
If my PM box is full, VM instead :x
Team Johto
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Posts: 823
Quote originally posted by Noossab Blue:
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.
That's straight up cheating.
__________________
...

My name forum name is FBI Agent, though you can call me FBI because it's shorter.

Some of my stuff:
ASM request/resource thread
ASM tutorials thread
ASM Workshop
  #7886    
Old February 11th, 2013 (06:00 PM).
sonicshuffler42 sonicshuffler42 is offline
Team Kalos
 
Join Date: Feb 2013
Gender: Male
Posts: 17
Quote originally posted by Noossab Blue:
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.
Wait, do you mean do the warps in order of 1-8 badges but check for the badges in reverse order?

Quote originally posted by FBI agent:
No it will always warp you to the first gym's warp from badges 1-8.

Hint: Introduce a variable that increments per badge
Ah so more like

Spoiler:
*start of script*
Lock
Check flag : *flag for first badge*
If 0x1 goto @warp1
*warp for the normal house before the first badge*
release
end

#org @warp1
Setvariable : *random variable*
check flag: *flag for second badge*
If 0x1 goto @warp2
*warp for house from the first badge being active*


And so on?
  #7887    
Old February 11th, 2013 (06:14 PM).
FBI agent's Avatar
FBI agent FBI agent is offline
If my PM box is full, VM instead :x
Team Johto
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Posts: 823
Quote originally posted by sonicshuffler42:
Wait, do you mean do the warps in order of 1-8 badges but check for the badges in reverse order?



Ah so more like

Spoiler:
*start of script*
Lock
Check flag : *flag for first badge*
If 0x1 goto @warp1
*warp for the normal house before the first badge*
release
end

#org @warp1
Setvariable : *random variable*
check flag: *flag for second badge*
If 0x1 goto @warp2
*warp for house from the first badge being active*


And so on?
She means like this:

Code:
start of script*
checkflag for gym badge 8
if true jump @warp8
checkflag for gym badge 7
if true jump @warp7
....
....
end
I was suggesting something more complicated, but if you're interested it's like:

Code:
compare variable 0x1
if == first warp
compare variable 0x2
if == second warp
...
...
end
Where the variable was incremented the same time the flag is set.
The way she said is easier for you. You shouldn't do my way unless you're doing some sneaky business with the variables later :P
__________________
...

My name forum name is FBI Agent, though you can call me FBI because it's shorter.

Some of my stuff:
ASM request/resource thread
ASM tutorials thread
ASM Workshop
  #7888    
Old February 11th, 2013 (06:24 PM).
sonicshuffler42 sonicshuffler42 is offline
Team Kalos
 
Join Date: Feb 2013
Gender: Male
Posts: 17
Quote originally posted by Noossab Blue:
I believe it would work if you reverse it. That is, start with the eighth badge and work your way to the first.
Quote originally posted by FBI agent:
She means like this:

Code:
start of script*
checkflag for gym badge 8
if true jump @warp8
checkflag for gym badge 7
if true jump @warp7
....
....
end
I was suggesting something more complicated, but if you're interested it's like:

Code:
compare variable 0x1
if == first warp
compare variable 0x2
if == second warp
...
...
end
Where the variable was incremented the same time the flag is set.
The way she said is easier for you. You shouldn't do my way unless you're doing some sneaky business with the variables later
Ahhh girls on the interwebsssss1!!! *runs and hides* (lol I kid )

Ah, that makes it so much simpler o.o funny how something sounds so complex in your head but turns out to be really simple. :3
I'm kinda slow to catch on, but when I do it usually sticks
I don't plan on doing much sneaky business with variables except making 'ghost' trainers disappear after you beat them. that one I know how to do.

For me the simpler the code stuff is the better. Hum...now to figure out how to set all the flying stuff to work at the beginning of the game (or just not at all but maybe will be useful in a later build)

I think before I do ANYTHING I'll get that script to work, and then work on the rest of the stuff.
Cause the creepy pasta as a whole matures throughout the entire game as you go through it.
  #7889    
Old February 11th, 2013 (08:27 PM).
Noossab Blue's Avatar
Noossab Blue Noossab Blue is offline
Team Johto
 
Join Date: Dec 2012
Location: USA
Gender: Female
Nature: Quirky
Posts: 243
Ok now I have my own question.

I'm editing the Nurse Joy script to make you pay based on how many badges you have. Everything is working, except that the when it checks if you have enough money I think it checks for $0x4001 ($16385) instead of what is stored in that variable...

Or at least, it doesn't think I have enough money when I test it, even though I do.

Any thoughts?

Spoiler:
'---------------
#org 0x800000
lock
faceplayer
call 0x880000A
release
end

'---------------
#org 0x80000A
special 0x187
compare LASTRESULT 0x2
if 0x1 goto 0x81A7AE0
showmoney 0x0 0x0 0x0
call 0x8800058
buffernumber 0x0 0x4001
preparemsg 0x88001CB '"Welcome to our POKéMON CENTER!\pWo..."
waitmsg
multichoice 0x13 0x8 0x0 0x2
copyvar 0x8000 LASTRESULT
compare 0x8000 0x0
if 0x1 goto 0x88000E1
compare 0x8000 0x1
if 0x1 goto 0x8800116
compare 0x8000 0x7F
if 0x1 goto 0x8800116
end

'---------------
#org 0x1A7AE0
release
end

'---------------
#org 0x800058
setvar 0x4001 0x32
checkflag 0x820
if 0x1 call 0x88000A7
checkflag 0x821
if 0x1 call 0x88000AE
checkflag 0x822
if 0x1 call 0x88000B5
checkflag 0x823
if 0x1 call 0x88000BC
checkflag 0x824
if 0x1 call 0x88000C3
checkflag 0x825
if 0x1 call 0x88000CA
checkflag 0x826
if 0x1 call 0x88000D1
checkflag 0x827
if 0x1 call 0x88000D8
return

'---------------
#org 0x8000E1
cmdc3 0xF
checkmoney 0x4001 0x0 <-here is seemingly the problem...
compare LASTRESULT 0x0
if 0x1 goto 0x8800108
preparemsg 0x81A54E1 '"Okay, I'll take your POKéMON for a..."
waitmsg
call 0x8800123
special 0x169
goto 0x81A65EC

'---------------
#org 0x800116
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org 0x8000A7
setvar 0x4001 0x64
return

'---------------
#org 0x8000AE
setvar 0x4001 0x96
return

'---------------
#org 0x8000B5
setvar 0x4001 0xFA
return

'---------------
#org 0x8000BC
setvar 0x4001 0x190
return

'---------------
#org 0x8000C3
setvar 0x4001 0x258
return

'---------------
#org 0x8000CA
setvar 0x4001 0x384
return

'---------------
#org 0x8000D1
setvar 0x4001 0x4B0
return

'---------------
#org 0x8000D8
setvar 0x4001 0x5DC
return

'---------------
#org 0x800108
msgbox 0x88002FD MSG_KEEPOPEN '"I'm sorry, but it appears that you..."
hidemoney 0x0 0x0
release
end

'---------------
#org 0x800123
applymovement LASTTALKED 0x81A75E7
waitmovement 0x0
doanimation 0x19
checkanimation 0x19
applymovement LASTTALKED 0x81A75ED
waitmovement 0x0
special 0x0
paymoney 0x4001 0x0
return

'---------------
#org 0x1A65EC
special2 LASTRESULT 0x1B1
compare LASTRESULT 0x0
if 0x1 goto 0x8800179
special2 LASTRESULT 0x183
copyvar 0x8008 LASTRESULT
compare 0x8008 0x0
if 0x1 goto 0x8800179
compare 0x8008 0x1
if 0x1 goto 0x880019A
end

'---------------
#org 0x800179
updatemoney 0x0 0x0 0x0
preparemsg 0x81A552B '"Thank you for waiting.\nWe've rest..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org 0x80019A
checkflag 0x842
if 0x1 goto 0x8800179
msgbox 0x81A552B MSG_KEEPOPEN '"Thank you for waiting.\nWe've rest..."
setflag 0x842
preparemsg 0x81BCCCA '"It appears as if [buffer1] is play..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return


'---------
' Strings
'---------
#org 0x8001CB
= Welcome to our POKéMON CENTER!\pWould you like me to heal your\nPOKéMON back to perfect health?\pIt will cost [$][buffer1].

#org 0x1A54E1
= Okay, I'll take your POKéMON for a\nfew seconds.

#org 0x1A5511
= Come again anytime!

#org 0x8002FD
= I'm sorry, but it appears that you\ndon't have enough money to heal\pyour POKéMON[.]

#org 0x1A552B
= Thank you for waiting.\nWe've restored your POKéMON to\lfull health.

#org 0x1BCCCA
= It appears as if [buffer1] is playing\nright now.\lGo for it!


'-----------
' Movements
'-----------
#org 0x1A75E7
#raw 0x2F 'Face Left (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A75ED
#raw 0x2D 'Face Down (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A666C
#raw 0x5B 'mov5B
#raw 0x1A 'Delay3
#raw 0xFE 'End of Movements
__________________
IGN: Anna/Noossab Blue
3DS FC: 3196 3609 8450

Thanks to SilverGrey for the awesome banner! Click to see!
Current as of 1/31/14: I updated again!

  #7890    
Old February 11th, 2013 (10:44 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by Noossab Blue:
Ok now I have my own question.

I'm editing the Nurse Joy script to make you pay based on how many badges you have. Everything is working, except that the when it checks if you have enough money I think it checks for $0x4001 ($16385) instead of what is stored in that variable...

Or at least, it doesn't think I have enough money when I test it, even though I do.

Any thoughts?

Spoiler:
'---------------
#org 0x800000
lock
faceplayer
call 0x880000A
release
end

'---------------
#org 0x80000A
special 0x187
compare LASTRESULT 0x2
if 0x1 goto 0x81A7AE0
showmoney 0x0 0x0 0x0
call 0x8800058
buffernumber 0x0 0x4001
preparemsg 0x88001CB '"Welcome to our POKéMON CENTER!\pWo..."
waitmsg
multichoice 0x13 0x8 0x0 0x2
copyvar 0x8000 LASTRESULT
compare 0x8000 0x0
if 0x1 goto 0x88000E1
compare 0x8000 0x1
if 0x1 goto 0x8800116
compare 0x8000 0x7F
if 0x1 goto 0x8800116
end

'---------------
#org 0x1A7AE0
release
end

'---------------
#org 0x800058
setvar 0x4001 0x32
checkflag 0x820
if 0x1 call 0x88000A7
checkflag 0x821
if 0x1 call 0x88000AE
checkflag 0x822
if 0x1 call 0x88000B5
checkflag 0x823
if 0x1 call 0x88000BC
checkflag 0x824
if 0x1 call 0x88000C3
checkflag 0x825
if 0x1 call 0x88000CA
checkflag 0x826
if 0x1 call 0x88000D1
checkflag 0x827
if 0x1 call 0x88000D8
return

'---------------
#org 0x8000E1
cmdc3 0xF
checkmoney 0x4001 0x0 <-here is seemingly the problem...
compare LASTRESULT 0x0
if 0x1 goto 0x8800108
preparemsg 0x81A54E1 '"Okay, I'll take your POKéMON for a..."
waitmsg
call 0x8800123
special 0x169
goto 0x81A65EC

'---------------
#org 0x800116
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org 0x8000A7
setvar 0x4001 0x64
return

'---------------
#org 0x8000AE
setvar 0x4001 0x96
return

'---------------
#org 0x8000B5
setvar 0x4001 0xFA
return

'---------------
#org 0x8000BC
setvar 0x4001 0x190
return

'---------------
#org 0x8000C3
setvar 0x4001 0x258
return

'---------------
#org 0x8000CA
setvar 0x4001 0x384
return

'---------------
#org 0x8000D1
setvar 0x4001 0x4B0
return

'---------------
#org 0x8000D8
setvar 0x4001 0x5DC
return

'---------------
#org 0x800108
msgbox 0x88002FD MSG_KEEPOPEN '"I'm sorry, but it appears that you..."
hidemoney 0x0 0x0
release
end

'---------------
#org 0x800123
applymovement LASTTALKED 0x81A75E7
waitmovement 0x0
doanimation 0x19
checkanimation 0x19
applymovement LASTTALKED 0x81A75ED
waitmovement 0x0
special 0x0
paymoney 0x4001 0x0
return

'---------------
#org 0x1A65EC
special2 LASTRESULT 0x1B1
compare LASTRESULT 0x0
if 0x1 goto 0x8800179
special2 LASTRESULT 0x183
copyvar 0x8008 LASTRESULT
compare 0x8008 0x0
if 0x1 goto 0x8800179
compare 0x8008 0x1
if 0x1 goto 0x880019A
end

'---------------
#org 0x800179
updatemoney 0x0 0x0 0x0
preparemsg 0x81A552B '"Thank you for waiting.\nWe've rest..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org 0x80019A
checkflag 0x842
if 0x1 goto 0x8800179
msgbox 0x81A552B MSG_KEEPOPEN '"Thank you for waiting.\nWe've rest..."
setflag 0x842
preparemsg 0x81BCCCA '"It appears as if [buffer1] is play..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return


'---------
' Strings
'---------
#org 0x8001CB
= Welcome to our POKéMON CENTER!\pWould you like me to heal your\nPOKéMON back to perfect health?\pIt will cost [$][buffer1].

#org 0x1A54E1
= Okay, I'll take your POKéMON for a\nfew seconds.

#org 0x1A5511
= Come again anytime!

#org 0x8002FD
= I'm sorry, but it appears that you\ndon't have enough money to heal\pyour POKéMON[.]

#org 0x1A552B
= Thank you for waiting.\nWe've restored your POKéMON to\lfull health.

#org 0x1BCCCA
= It appears as if [buffer1] is playing\nright now.\lGo for it!


'-----------
' Movements
'-----------
#org 0x1A75E7
#raw 0x2F 'Face Left (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A75ED
#raw 0x2D 'Face Down (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A666C
#raw 0x5B 'mov5B
#raw 0x1A 'Delay3
#raw 0xFE 'End of Movements
Checkmoney checks if the player has the amount of money specified where you tried to put the var. It works like checkflag does essentially.

So, you would use it to see if the player has enough money to pay for his/her purchase.
__________________

Paired with Simba
  #7891    
Old February 12th, 2013 (06:49 AM).
BullZai BullZai is offline
Team Kanto
 
Join Date: Feb 2013
Gender: Male
Posts: 6
Spoiler:
Quote:
#dynamic 0x800800

#org @start
checkflag 0x828
if 0x1 goto @done
message @Message 0x6
applymovement 0xFF @Move
waitmovement 0x0
release
end

#org @done
release
end

#org @Message
= [Player}: I better get my pokèmon\nbefore leaving!

#org @Move
#raw 0x11


I've written this script, and it crashes the game if you walk on the scripttile. I've written a couple scripts and the only ones that don't work have applymovement in them, so I think the problem lies there, but i'm not sure. I'm being very ambitious, and try to make scripts while i don't fully understand the language. I try to learn it good though, some help would be appriciated...
  #7892    
Old February 12th, 2013 (08:15 AM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by BullZai:

I've written this script, and it crashes the game if you walk on the scripttile. I've written a couple scripts and the only ones that don't work have applymovement in them, so I think the problem lies there, but i'm not sure. I'm being very ambitious, and try to make scripts while i don't fully understand the language. I try to learn it good though, some help would be appriciated...
With scripts that go on script tiles, they require a var and value correct? Well, the script will only run if that var equals that value, so just use a setvar at the end of your script to disable. Easy and simple, no more flags for these type of scripts.

That being said, there are only two problems that I see:

-verify that message is a command. I'm not sure since I always use msgbox.

-[player} should be [player]

Hope this helps.
__________________

Paired with Simba
  #7893    
Old February 12th, 2013 (12:57 PM).
sonicshuffler42 sonicshuffler42 is offline
Team Kalos
 
Join Date: Feb 2013
Gender: Male
Posts: 17
Okay so if I am understanding your suggestions correctly, I should make the warp that goes IN to the houses not be a warp at all, but instead be a script event that acts like a warp. I haven't filled in the warp data for the other warps but I just want to confirm.

Script:
Spoiler:
#dynamic 0x34EC2E

#org @start
lock
checkflag 0x827
if 0x1 jump @warp8
checkflag 0c826
if 0x1 jump @warp7
checkflag 0x825
if 0x1 jump @warp6
checkflag 0x824
if 0x1 jump @warp5
checkflag 0x823
if 0x1 jump @warp4
checkflag 0x822
if 0x1 jump @warp3
checkflag 0x821
if 0x1 jump @warp2
checkflag 0x820
if 0x1 jump @warp1
else jump @warp
release
end

#org @warp
warpwalk 0x4 0x0 0x1 0x0 0x0

#org @warp1

#org @warp2

#org @warp3

#org @warp4

#org @warp5

#org @warp6

#org @warp7

#org @warp8


Also I'll see if there are other applications which I can use this script for :3 (probably for making character-based events that only happen during certain points in the game)

I'm not sure if "else" command works since that's more of a visual basic term (what little VB I know XD) so yeah thought I'd double-check with you guys before I go destroy all the hard work I already have done
  #7894    
Old February 12th, 2013 (01:12 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by sonicshuffler42:
Okay so if I am understanding your suggestions correctly, I should make the warp that goes IN to the houses not be a warp at all, but instead be a script event that acts like a warp. I haven't filled in the warp data for the other warps but I just want to confirm.

Script:
Spoiler:
#dynamic 0x34EC2E

#org @start
lock
checkflag 0x827
if 0x1 jump @warp8
checkflag 0c826
if 0x1 jump @warp7
checkflag 0x825
if 0x1 jump @warp6
checkflag 0x824
if 0x1 jump @warp5
checkflag 0x823
if 0x1 jump @warp4
checkflag 0x822
if 0x1 jump @warp3
checkflag 0x821
if 0x1 jump @warp2
checkflag 0x820
if 0x1 jump @warp1
else jump @warp
release
end

#org @warp
warpwalk 0x4 0x0 0x1 0x0 0x0

#org @warp1

#org @warp2

#org @warp3

#org @warp4

#org @warp5

#org @warp6

#org @warp7

#org @warp8


Also I'll see if there are other applications which I can use this script for :3 (probably for making character-based events that only happen during certain points in the game)

I'm not sure if "else" command works since that's more of a visual basic term (what little VB I know XD) so yeah thought I'd double-check with you guys before I go destroy all the hard work I already have done
I understand your thoughts, but "else" will not work. If it doesn't jump after the last flag, it will do what your "else" line says, without the "else".
__________________

Paired with Simba
  #7895    
Old February 12th, 2013 (03:42 PM).
Noossab Blue's Avatar
Noossab Blue Noossab Blue is offline
Team Johto
 
Join Date: Dec 2012
Location: USA
Gender: Female
Nature: Quirky
Posts: 243
Quote originally posted by karatekid552:
Checkmoney checks if the player has the amount of money specified where you tried to put the var. It works like checkflag does essentially.

So, you would use it to see if the player has enough money to pay for his/her purchase.
So basically the only way to do it is to have 8 calls that check each amount of money separately? Will checkmoney never understand a var value?
__________________
IGN: Anna/Noossab Blue
3DS FC: 3196 3609 8450

Thanks to SilverGrey for the awesome banner! Click to see!
Current as of 1/31/14: I updated again!

  #7896    
Old February 12th, 2013 (03:49 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by Noossab Blue:
So basically the only way to do it is to have 8 calls that check each amount of money separately? Will checkmoney never understand a var value?
Yeah, 8 check calls sounds about right... Sorry, I don't think there was ever a need to check a var value. An ASM routine could do it, but that would be complicated. Sorry.
__________________

Paired with Simba
  #7897    
Old February 12th, 2013 (04:53 PM).
Noossab Blue's Avatar
Noossab Blue Noossab Blue is offline
Team Johto
 
Join Date: Dec 2012
Location: USA
Gender: Female
Nature: Quirky
Posts: 243
Thanks.

I added the checks, and now that works as well, however...

Now, once you get a badge, everything goes smoothly until the end of the script, but it repeats the end part of the script about 4 times...I can't find what is causing the loop, or any reason for it to occur 4 times before ending...

Since the checks make this quite a bit longer, I'll show the dynamic script to make following along a little easier.

Spoiler:
#dynamic 0x800000
#org @begin
lock
faceplayer
call @spend
release
end

'---------------
#org @spend
special 0x187
compare LASTRESULT 0x2
if 0x1 goto 0x81A7AE0
showmoney 0x0 0x0 0x0
call @badgecheck
buffernumber 0x0 0x4001
preparemsg @msg1
waitmsg
multichoice 0x13 0x8 0x0 0x2
copyvar 0x8000 LASTRESULT
compare 0x8000 0x0
if 0x1 goto @moneycheck
compare 0x8000 0x1
if 0x1 goto @nope
compare 0x8000 0x7F
if 0x1 goto @nope
end

#org @badgecheck
setvar 4001 0x32
checkflag 0x820
if 0x1 call @1
checkflag 0x821
if 0x1 call @2
checkflag 0x822
if 0x1 call @3
checkflag 0x823
if 0x1 call @4
checkflag 0x824
if 0x1 call @5
checkflag 0x825
if 0x1 call @6
checkflag 0x826
if 0x1 call @7
checkflag 0x827
if 0x1 call @8
return

#org @1
setvar 4001 0x64
return

#org @2
setvar 4001 0x96
return

#org @3
setvar 4001 0xFA
return

#org @4
setvar 4001 0x190
return

#org @5
setvar 4001 0x258
return

#org @6
setvar 4001 0x384
return

#org @7
setvar 4001 0x4B0
return

#org @8
setvar 4001 0x5Dc
return

#org @moneycheck
checkflag 0x827
if 0x1 call @eight
checkflag 0x826
if 0x1 call @seven
checkflag 0x825
if 0x1 call @six
checkflag 0x824
if 0x1 call @five
checkflag 0x823
if 0x1 call @four
checkflag 0x822
if 0x1 call @three
checkflag 0x821
if 0x1 call @two
checkflag 0x820
if 0x1 call @one
checkmoney 0x32 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @eight
checkmoney 0x5DC 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @seven
checkmoney 0x4B0 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @six
checkmoney 0x384 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @five
checkmoney 0x258 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @four
checkmoney 0x190 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @three
checkmoney 0xFA 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @two
checkmoney 0x96 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @one
checkmoney 0x64 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

'---------------
#org 0x1A7AE0
release
end

'---------------
#org @continue
cmdc3 0xF
preparemsg 0x81A54E1 '"Okay, I'll take your POKéMON for a..."
waitmsg
call @heal
goto @almost
end

#org @poor
msgbox @broke MSG_KEEPOPEN
hidemoney 0x0 0x0
release
end

'---------------
#org @nope
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org @heal
applymovement LASTTALKED 0x81A75E7
waitmovement 0x0
doanimation 0x19
checkanimation 0x19
applymovement LASTTALKED 0x81A75ED
waitmovement 0x0
special 0x0
call @paying
return

#org @paying
checkflag 0x827
if 0x1 call @viii
checkflag 0x826
if 0x1 call @vii
checkflag 0x825
if 0x1 call @vi
checkflag 0x824
if 0x1 call @v
checkflag 0x823
if 0x1 call @iv
checkflag 0x822
if 0x1 call @iii
checkflag 0x821
if 0x1 call @ii
checkflag 0x820
if 0x1 call @i
paymoney 0x32 0x0
return

#org @viii
paymoney 0x5DC 0x0
goto @almost
end

#org @vii
paymoney 0x480 0x0
goto @almost
end

#org @vi
paymoney 0x384 0x0
goto @almost
end

#org @v
paymoney 0x258 0x0
goto @almost
end

#org @iv
paymoney 0x190 0x0
goto @almost
end

#org @iii
paymoney 0xFA 0x0
goto @almost
end

#org @ii
paymoney 0x96 0x0
goto @almost
end

#org @i
paymoney 0x64 0x0
goto @almost
end


'---------------
#org @almost
special 0x169
special2 LASTRESULT 0x1B1
compare LASTRESULT 0x0
if 0x1 goto @ending
special2 LASTRESULT 0x183
copyvar 0x8008 LASTRESULT
compare 0x8008 0x0
if 0x1 goto @ending
compare 0x8008 0x1
if 0x1 goto @what
end

'---------------
#org @ending
updatemoney 0x0 0x0 0x0
preparemsg 0x81A552B '"Thank you for waiting.\nWe've rest..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org @what
checkflag 0x842
if 0x1 goto @ending
msgbox 0x81A552B MSG_KEEPOPEN '"Thank you for waiting.\nWe've rest..."
setflag 0x842
preparemsg 0x81BCCCA '"It appears as if [buffer1] is play..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return


'---------
' Strings
'---------
#org @msg1
= Welcome to our POKéMON CENTER!\pWould you like me to heal your\nPOKéMON back to perfect health?\pIt will cost [$][buffer1].

#org 0x1A54E1
= Okay, I'll take your POKéMON for a\nfew seconds.

#org 0x1A5511
= Come again anytime!

#org 0x1A552B
= Thank you for waiting.\nWe've restored your POKéMON to\lfull health.

#org 0x1BCCCA
= It appears as if [buffer1] is playing\nright now.\lGo for it!

#org @broke
= I'm sorry, but it appears that you\ndon't have enough money to heal\pyour POKéMON[.]


'-----------
' Movements
'-----------
#org 0x1A75E7
#raw 0x2F 'Face Left (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A75ED
#raw 0x2D 'Face Down (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A666C
#raw 0x5B 'mov5B
#raw 0x1A 'Delay3
#raw 0xFE 'End of Movements


Also, is it necessary to have release and/or end at the end of portions of script that will never be completed? Something that sends you to another portion of a script and doesn't come back, for instance...
__________________
IGN: Anna/Noossab Blue
3DS FC: 3196 3609 8450

Thanks to SilverGrey for the awesome banner! Click to see!
Current as of 1/31/14: I updated again!

  #7898    
Old February 12th, 2013 (06:17 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by Noossab Blue:
Thanks.

I added the checks, and now that works as well, however...

Now, once you get a badge, everything goes smoothly until the end of the script, but it repeats the end part of the script about 4 times...I can't find what is causing the loop, or any reason for it to occur 4 times before ending...

Since the checks make this quite a bit longer, I'll show the dynamic script to make following along a little easier.

Spoiler:
#dynamic 0x800000
#org @begin
lock
faceplayer
call @spend
release
end

'---------------
#org @spend
special 0x187
compare LASTRESULT 0x2
if 0x1 goto 0x81A7AE0
showmoney 0x0 0x0 0x0
call @badgecheck
buffernumber 0x0 0x4001
preparemsg @msg1
waitmsg
multichoice 0x13 0x8 0x0 0x2
copyvar 0x8000 LASTRESULT
compare 0x8000 0x0
if 0x1 goto @moneycheck
compare 0x8000 0x1
if 0x1 goto @nope
compare 0x8000 0x7F
if 0x1 goto @nope
end

#org @badgecheck
setvar 4001 0x32
checkflag 0x820
if 0x1 call @1
checkflag 0x821
if 0x1 call @2
checkflag 0x822
if 0x1 call @3
checkflag 0x823
if 0x1 call @4
checkflag 0x824
if 0x1 call @5
checkflag 0x825
if 0x1 call @6
checkflag 0x826
if 0x1 call @7
checkflag 0x827
if 0x1 call @8
return

#org @1
setvar 4001 0x64
return

#org @2
setvar 4001 0x96
return

#org @3
setvar 4001 0xFA
return

#org @4
setvar 4001 0x190
return

#org @5
setvar 4001 0x258
return

#org @6
setvar 4001 0x384
return

#org @7
setvar 4001 0x4B0
return

#org @8
setvar 4001 0x5Dc
return

#org @moneycheck
checkflag 0x827
if 0x1 call @eight
checkflag 0x826
if 0x1 call @seven
checkflag 0x825
if 0x1 call @six
checkflag 0x824
if 0x1 call @five
checkflag 0x823
if 0x1 call @four
checkflag 0x822
if 0x1 call @three
checkflag 0x821
if 0x1 call @two
checkflag 0x820
if 0x1 call @one
checkmoney 0x32 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @eight
checkmoney 0x5DC 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @seven
checkmoney 0x4B0 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @six
checkmoney 0x384 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @five
checkmoney 0x258 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @four
checkmoney 0x190 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @three
checkmoney 0xFA 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @two
checkmoney 0x96 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

#org @one
checkmoney 0x64 0x0
compare LASTRESULT 0x0
if 0x1 goto @poor
goto @continue
end

'---------------
#org 0x1A7AE0
release
end

'---------------
#org @continue
cmdc3 0xF
preparemsg 0x81A54E1 '"Okay, I'll take your POKéMON for a..."
waitmsg
call @heal
goto @almost
end

#org @poor
msgbox @broke MSG_KEEPOPEN
hidemoney 0x0 0x0
release
end

'---------------
#org @nope
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org @heal
applymovement LASTTALKED 0x81A75E7
waitmovement 0x0
doanimation 0x19
checkanimation 0x19
applymovement LASTTALKED 0x81A75ED
waitmovement 0x0
special 0x0
call @paying
return

#org @paying
checkflag 0x827
if 0x1 call @viii
checkflag 0x826
if 0x1 call @vii
checkflag 0x825
if 0x1 call @vi
checkflag 0x824
if 0x1 call @v
checkflag 0x823
if 0x1 call @iv
checkflag 0x822
if 0x1 call @iii
checkflag 0x821
if 0x1 call @ii
checkflag 0x820
if 0x1 call @i
paymoney 0x32 0x0
return

#org @viii
paymoney 0x5DC 0x0
goto @almost
end

#org @vii
paymoney 0x480 0x0
goto @almost
end

#org @vi
paymoney 0x384 0x0
goto @almost
end

#org @v
paymoney 0x258 0x0
goto @almost
end

#org @iv
paymoney 0x190 0x0
goto @almost
end

#org @iii
paymoney 0xFA 0x0
goto @almost
end

#org @ii
paymoney 0x96 0x0
goto @almost
end

#org @i
paymoney 0x64 0x0
goto @almost
end


'---------------
#org @almost
special 0x169
special2 LASTRESULT 0x1B1
compare LASTRESULT 0x0
if 0x1 goto @ending
special2 LASTRESULT 0x183
copyvar 0x8008 LASTRESULT
compare 0x8008 0x0
if 0x1 goto @ending
compare 0x8008 0x1
if 0x1 goto @what
end

'---------------
#org @ending
updatemoney 0x0 0x0 0x0
preparemsg 0x81A552B '"Thank you for waiting.\nWe've rest..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return

'---------------
#org @what
checkflag 0x842
if 0x1 goto @ending
msgbox 0x81A552B MSG_KEEPOPEN '"Thank you for waiting.\nWe've rest..."
setflag 0x842
preparemsg 0x81BCCCA '"It appears as if [buffer1] is play..."
waitmsg
applymovement LASTTALKED 0x81A666C
waitmovement 0x0
msgbox 0x81A5511 MSG_KEEPOPEN '"Come again anytime!"
hidemoney 0x0 0x0
return


'---------
' Strings
'---------
#org @msg1
= Welcome to our POKéMON CENTER!\pWould you like me to heal your\nPOKéMON back to perfect health?\pIt will cost [$][buffer1].

#org 0x1A54E1
= Okay, I'll take your POKéMON for a\nfew seconds.

#org 0x1A5511
= Come again anytime!

#org 0x1A552B
= Thank you for waiting.\nWe've restored your POKéMON to\lfull health.

#org 0x1BCCCA
= It appears as if [buffer1] is playing\nright now.\lGo for it!

#org @broke
= I'm sorry, but it appears that you\ndon't have enough money to heal\pyour POKéMON[.]


'-----------
' Movements
'-----------
#org 0x1A75E7
#raw 0x2F 'Face Left (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A75ED
#raw 0x2D 'Face Down (Delayed)
#raw 0xFE 'End of Movements

#org 0x1A666C
#raw 0x5B 'mov5B
#raw 0x1A 'Delay3
#raw 0xFE 'End of Movements


Also, is it necessary to have release and/or end at the end of portions of script that will never be completed? Something that sends you to another portion of a script and doesn't come back, for instance...
Don't use return at the end of @ending, just end the script, other wise it takes you back to what called it, which also has other calls to @ending.
__________________

Paired with Simba
  #7899    
Old February 12th, 2013 (06:17 PM). Edited February 12th, 2013 by LocksmithArmy.
LocksmithArmy's Avatar
LocksmithArmy LocksmithArmy is offline
Mew!
Team Hoenn
 
Join Date: Feb 2013
Age: 26
Gender: Male
Posts: 402
so i made an event in Fire Red where the 2 dogs that you dont get roaming, are chilling in various places...

as far as which dog shows up where depending on your starter, it works fine...

BUT after catching the dog, he does not dissapear, only after killing or running...

and when he does dissapear... he takes the other event dog (totally different flags) with him... so you can only get one of them... I DONT GET IT... these 2 new events are unrelated... they are on different maps with different flags, the only similarity is that they work the same way and are turned off and on at the same time (the flags are set in mt moon at the fossils and cleared on One Island)

if anyone thinks they can help I would love you forever

Here are the dog events, if you need any other scripts (map scripts, the setflag or clearflag event scripts or whatever) just ask

Mystical Dog 1:
Spoiler:
#org 0x871D206
'-----------------------------------
compare 0x4031 0x0
if == call 0x871D308 ' Equal To
compare 0x4031 0x2
if == call 0x871D40A ' Equal To
compare 0x4031 0x1
if == call 0x871D50C ' Equal To
end

#org 0x871D308
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry SUICUNE 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle SUICUNE 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D001 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D001 ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x81A7AE0
'-----------------------------------
release
end

#org 0x871D40A
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry RAIKOU 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle RAIKOU 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D60E ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D60E ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x871CEF9
'-----------------------------------
setflag 0x202
jump 0x81A922D

#org 0x81A922D
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
release
end

#org 0x871D60E
'-----------------------------------
setvar 0x8004 0xF3
jump 0x834EE61

#org 0x834EE61
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
storepokemon 0x0 0x8004
msgbox 0x834EF61 ' The \v\h02 ran away!
callstd MSG_NOCLOSE ' Non-closing message
release
' Release commands close any open messages
end

#org 0x871D50C
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry ENTEI 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle ENTEI 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D710 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D710 ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x871D710
'-----------------------------------
setvar 0x8004 0xF4
jump 0x834EE61

#org 0x871D001
'-----------------------------------
setvar 0x8004 0xF5
jump 0x834EE61


#org 0x81A7291
= Wroooooooaaaaaarrrr!

#org 0x834EF61
= The \v\h02 ran away!


Mystical Dog 2:
Spoiler:
#org 0x8871DA3
'-----------------------------------
compare 0x4031 0x1
if == call 0x871DB33 ' Equal To
compare 0x4031 0x0
if == call 0x871DC35 ' Equal To
compare 0x4031 0x2
if == call 0x871DD37 ' Equal To
end

#org 0x871DB33
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry SUICUNE 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle SUICUNE 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D001 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D001 ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x81A7AE0
'-----------------------------------
release
end

#org 0x871DC35
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry RAIKOU 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle RAIKOU 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D60E ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D60E ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x871D72B
'-----------------------------------
setflag 0x204
jump 0x81A922D

#org 0x81A922D
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
release
end

#org 0x871D60E
'-----------------------------------
setvar 0x8004 0xF3
jump 0x834EE61

#org 0x834EE61
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
storepokemon 0x0 0x8004
msgbox 0x834EF61 ' The \v\h02 ran away!
callstd MSG_NOCLOSE ' Non-closing message
release
' Release commands close any open messages
end

#org 0x871DD37
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry ENTEI 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle ENTEI 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D710 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D710 ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x871D710
'-----------------------------------
setvar 0x8004 0xF4
jump 0x834EE61

#org 0x871D001
'-----------------------------------
setvar 0x8004 0xF5
jump 0x834EE61


#org 0x81A7291
= Wroooooooaaaaaarrrr!

#org 0x834EF61
= The \v\h02 ran away!


UPDATE:
now my Mew event (that used to work properly) is also not dissapearing... I havent even worked on mew in a long time...
__________________
  #7900    
Old February 12th, 2013 (06:28 PM).
karatekid552's Avatar
karatekid552 karatekid552 is offline
What happens if I push it?....
Team Johto
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Posts: 1,767
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote originally posted by LocksmithArmy:
so i made an event in Fire Red where the 2 dogs that you dont get roaming, are chilling in various places...

as far as which dog shows up where depending on your starter, it works fine...

BUT after catching the dog, he does not dissapear, only after killing or running...

and when he does dissapear... he takes the other event dog (totally different flags) with him... so you can only get one of them... I DONT GET IT... these 2 new events are unrelated... they are on different maps with different flags, the only similarity is that they work the same way and are turned off and on at the same time (the flags are set in mt moon at the fossils and cleared on One Island)

if anyone thinks they can help I would love you forever

Here are the dog events, if you need any other scripts (map scripts, the setflag or clearflag event scripts or whatever) just ask

Mystical Dog 1:
Spoiler:
#org 0x871D206
'-----------------------------------
compare 0x4031 0x0
if == call 0x871D308 ' Equal To
compare 0x4031 0x2
if == call 0x871D40A ' Equal To
compare 0x4031 0x1
if == call 0x871D50C ' Equal To
end

#org 0x871D308
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry SUICUNE 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle SUICUNE 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D001 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D001 ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x81A7AE0
'-----------------------------------
release
end

#org 0x871D40A
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry RAIKOU 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle RAIKOU 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D60E ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D60E ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x871CEF9
'-----------------------------------
setflag 0x202
jump 0x81A922D

#org 0x81A922D
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
release
end

#org 0x871D60E
'-----------------------------------
setvar 0x8004 0xF3
jump 0x834EE61

#org 0x834EE61
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
storepokemon 0x0 0x8004
msgbox 0x834EF61 ' The \v\h02 ran away!
callstd MSG_NOCLOSE ' Non-closing message
release
' Release commands close any open messages
end

#org 0x871D50C
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry ENTEI 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle ENTEI 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871CEF9 ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D710 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D710 ' Equal To
disappear LASTTALKED
setflag 0x202
release
end

#org 0x871D710
'-----------------------------------
setvar 0x8004 0xF4
jump 0x834EE61

#org 0x871D001
'-----------------------------------
setvar 0x8004 0xF5
jump 0x834EE61


#org 0x81A7291
= Wroooooooaaaaaarrrr!

#org 0x834EF61
= The \v\h02 ran away!


Mystical Dog 2:
Spoiler:
#org 0x8871DA3
'-----------------------------------
compare 0x4031 0x1
if == call 0x871DB33 ' Equal To
compare 0x4031 0x0
if == call 0x871DC35 ' Equal To
compare 0x4031 0x2
if == call 0x871DD37 ' Equal To
end

#org 0x871DB33
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry SUICUNE 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle SUICUNE 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D001 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D001 ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x81A7AE0
'-----------------------------------
release
end

#org 0x871DC35
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry RAIKOU 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle RAIKOU 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D60E ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D60E ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x871D72B
'-----------------------------------
setflag 0x204
jump 0x81A922D

#org 0x81A922D
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
release
end

#org 0x871D60E
'-----------------------------------
setvar 0x8004 0xF3
jump 0x834EE61

#org 0x834EE61
'-----------------------------------
fadescreen FADEOUT_BLACK
disappear LASTTALKED
fadescreen FADEIN_BLACK
storepokemon 0x0 0x8004
msgbox 0x834EF61 ' The \v\h02 ran away!
callstd MSG_NOCLOSE ' Non-closing message
release
' Release commands close any open messages
end

#org 0x871DD37
'-----------------------------------
special INIT_STEPCOUNT
compare LASTRESULT 0x2
if == jump 0x81A7AE0 ' Equal To
special GET_STEPCOUNT
lock
faceplayer
checksound
cry ENTEI 0x2
message 0x81A7291 ' Wroooooooaaaaaarrrr!
showmsg
waitcry
pause 0x14
playsound 0x2 0x2
waitbutton
battle ENTEI 50 NONE
setflag 0x807
special BATTLE_PIXELLATE
waitspecial
clearflag 0x807
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if == jump 0x871D72B ' Equal To
compare LASTRESULT 0x4
if == jump 0x871D710 ' Equal To
compare LASTRESULT 0x5
if == jump 0x871D710 ' Equal To
disappear LASTTALKED
setflag 0x204
release
end

#org 0x871D710
'-----------------------------------
setvar 0x8004 0xF4
jump 0x834EE61

#org 0x871D001
'-----------------------------------
setvar 0x8004 0xF5
jump 0x834EE61


#org 0x81A7291
= Wroooooooaaaaaarrrr!

#org 0x834EF61
= The \v\h02 ran away!
Look in JPANs study on specials. Special B4 does not ever return 0x5, I don't know why people think it does. It returns 0x7 for capture.

Could you please post a link of where you learned special b4 from?

I can't fix the other problem off of the top of my head, and I don't have time to look at it right now, but I will download your scripts and look at them in study hall tomorrow.
__________________

Paired with Simba
Closed Thread
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are UTC -8. The time now is 10:03 PM.