Made Shoot.cpp ASM-accurate

This commit is contained in:
Clownacy 2019-05-06 18:09:19 +01:00
parent 75e062c775
commit c9ac9d446d
4 changed files with 622 additions and 511 deletions

View file

@ -554,6 +554,54 @@ addr = 0x41C8F0
name = "MakePixelWaveData" name = "MakePixelWaveData"
addr = 0x41CB10 addr = 0x41CB10
[[func]]
name = "ShootBullet_Frontia1"
addr = 0x41DBD0
[[func]]
name = "ShootBullet_PoleStar"
addr = 0x41DE60
[[func]]
name = "ShootBullet_FireBall"
addr = 0x41E110
[[func]]
name = "ShootBullet_Machinegun1"
addr = 0x41E3D0
[[func]]
name = "ShootBullet_Missile"
addr = 0x41E7B0
[[func]]
name = "ShootBullet_Bubblin1"
addr = 0x41EFD0
[[func]]
name = "ShootBullet_Bubblin2"
addr = 0x41F280
[[func]]
name = "ShootBullet_Sword"
addr = 0x41F580
[[func]]
name = "ShootBullet_Nemesis"
addr = 0x41F710
[[func]]
name = "ResetSpurCharge"
addr = 0x41F9E0
[[func]]
name = "ShootBullet_Spur"
addr = 0x41FA10
[[func]]
name = "ShootBullet"
addr = 0x41FE70
[[func]] [[func]]
name = "PlaySoundObject" name = "PlaySoundObject"
addr = 0x420640 addr = 0x420640

View file

@ -2,6 +2,8 @@
#include "SDL.h" #include "SDL.h"
#include "WindowsWrapper.h"
#include "ArmsItem.h" #include "ArmsItem.h"
#include "CommonDefines.h" #include "CommonDefines.h"
#include "Caret.h" #include "Caret.h"
@ -92,7 +94,7 @@ void ZeroExpMyChar()
gArmsData[gSelectedArms].exp = 0; gArmsData[gSelectedArms].exp = 0;
} }
bool IsMaxExpMyChar() BOOL IsMaxExpMyChar()
{ {
return gArmsData[gSelectedArms].level == 3 return gArmsData[gSelectedArms].level == 3
&& gArmsData[gSelectedArms].exp >= gArmsLevelTable[gArmsData[gSelectedArms].code].exp[2]; && gArmsData[gSelectedArms].exp >= gArmsLevelTable[gArmsData[gSelectedArms].code].exp[2];

View file

@ -2,6 +2,8 @@
#include <stdint.h> #include <stdint.h>
#include "WindowsWrapper.h"
struct ARMS_LEVEL struct ARMS_LEVEL
{ {
int exp[3]; int exp[3];
@ -17,7 +19,7 @@ extern ARMS_LEVEL gArmsLevelTable[14];
void AddExpMyChar(int x); void AddExpMyChar(int x);
void ZeroExpMyChar(); void ZeroExpMyChar();
bool IsMaxExpMyChar(); BOOL IsMaxExpMyChar();
void DamageMyChar(int damage); void DamageMyChar(int damage);
void ZeroArmsEnergy_All(); void ZeroArmsEnergy_All();
void AddBulletMyChar(int no, int val); void AddBulletMyChar(int no, int val);

File diff suppressed because it is too large Load diff