Skip to content

Instantly share code, notes, and snippets.

@HS39
Created November 17, 2018 00:49
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 HS39/cae2873781d7df84690fed30319a8276 to your computer and use it in GitHub Desktop.
Save HS39/cae2873781d7df84690fed30319a8276 to your computer and use it in GitHub Desktop.
import asm65816
import ASMRef
define Rockin_A_Power = 80
define Rockin_B_Power = 180
define Rockin_G_Power = 320
define Rockin_O_Power = 640
Rockin_General: {
REP (0x31)
PHD
PHA
TDC
ADC_i (0xFFEA)
TCD
PLA
TAX
STX_d (0x14)
JSL (PSI_Shield_Nullify) //Checks for PSI Shield
CMP_i (0x0000)
BNE_a (Rockin_Return)
LDX_d (0x14)
TXA
JSL (Mult_A_x_Rand_050_150) //Multiplies the damage output by 50%-150%
STA_d (0x12)
JSL (Determine_Dodge) //Standard dodge formula
TAX
BEQ_a (Rockin_Hit)
BText (0xEF766E)
BRA_a (Rockin_Shield) //Still depletes a shield charge if it misses
Rockin_Hit:
LDX_i (0x00FF)
LDA_d (0x12)
JSL (Damage_Reduction) //Inflicts damage
Rockin_Shield:
JSL (Weaken_Shield) //Deplete one shield charge
Rockin_Return:
PLD
RTL
}
Rockin_Alpha: {
REP (0x31)
LDA_i (Rockin_A_Power)
JSL (Rockin_General)
RTL
}
Rockin_Beta: {
REP (0x31)
LDA_i (Rockin_B_Power)
JSL (Rockin_General)
RTL
}
Rockin_Gamma: {
REP (0x31)
LDA_i (Rockin_G_Power)
JSL (Rockin_General)
RTL
}
Rockin_Omega: {
REP (0x31)
LDA_i (Rockin_O_Power)
JSL (Rockin_General)
RTL
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment