Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- there's a "result" variable that's just an 8-bit number
- "if" doesn't directly branch to anything, but if the condition is false then the next command is skipped
- "if" statements can be stacked on each other, too:
- @if> 5
- @if< 10
- @ifflag+ someflag
- @ifflag- anotherflag
- @goto wherever
- "if the result is greater than 5 but less than 10, and if someflag is set but anotherflag isn't, goto wherever"
- SYNTAX:
- %whatever directly insert stuff inline into the compiled file, mostly for directives
- bla bla bla bare text just directly displays onto the screen
- @runasm start of an ASM section. A = result
- clc
- adc #1
- @endasm end of an ASM section. result = A
- CONDITIONS:
- @ifflag+ FLAG if flag is set...
- @ifflag- FLAG if flag is unset...
- @if< value if the result is less than a value
- @if> value if the result is greater than a value
- @if= value if the result is equal to a specific value
- @if<> value if the result is NOT a specific value
- @ifyes ask yes/no, then if the player answered yes...
- @ifno ask yes/no, then if the player answered no...
- MAP ACTIONS:
- @npc+ 0, 1, 2, 3, 4, 5, 6, 7 specify a list of NPCs to hide
- @npc- 0. 1, 2, 3, 4, 5, 6, 7 specify a list of NPCs to unhide
- RESULT ACTIONS:
- @info? info set result to a piece of information from a table (like coins collected, etc)
- @ram? address set result to an address
- @itemamount? item set result to the quantity of an item
- @result value set the result to a constant value
- DIALOG ACTIONS:
- @speaker FACE, NAME+FLAGS switch speaker and set a face and name
- @delay time delay an amount of time (probably frames?)
- @endmsg wait for key press, clear, close balloon
- @endpage wait for key press, clear, keep balloon open
- @say switch to speech balloon
- @think switch to thought balloon
- @balloon switch to normal balloon
- @textonly switch to no balloon, just text
- @actors (syntax to be determined) sets up the scene and the characters in it
- FLAG ACTIONS:
- @flag+ FLAG set flag
- @flag- FLAG unset flag
- @flag~ FLAG toggle flag
- PROGRAM FLOW ACTIONS:
- @goto Label either an 8-bit or 16-bit goto depending on distance
- @rgoto Label forced 8-bit goto
- @jgoto Label forced 16-bit goto
- @call Label call a subroutine in the current bank (16-bit label)
- @libcall RoutineNumber call a subroutine in a bank holding common routines
- @return return from a call or libcall
- @choices "1", Label1, "2", Label2, ... present multiple choices and go to a different 16-bit label for each
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement