Commit graph

1082 commits

Author SHA1 Message Date
Gabriel Ravier
358423aa38
Some nice commenting and reordering of stuff and staticing of stuff
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-16 15:30:38 +02:00
Clownacy
602315fa39 Deobfuscate a value without affecting ASM
Doing 'fx / 32 / 0x200' produces different assembly.
2019-09-15 18:46:52 +01:00
Clownacy
bc5a9b2d9f These macros produced inaccurate assembly 2019-09-15 18:44:03 +01:00
Clownacy
a55361ec2c
Merge pull request #54 from GabrielRavier/commentBalfrog
Comment BossFrog
2019-09-15 18:43:42 +01:00
Gabriel Ravier
cc4de5e44c
Remove NPC utility macros
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 18:16:46 +02:00
Clownacy
f099e0694d Enable optimisations in the VS2017 project
Honestly, it might be worth remaking the VS2017 project from scratch:
the current one is just a conversion of the VS2003 one, so a lot of
VS2017's new options are just blank. If it's remade from scratch,
we'll get the defaults instead.
2019-09-15 15:41:56 +01:00
Gabriel Ravier
c68923fdd5
Corrected erroneous "PIXELS_TO_UNITS(24)"s to "PIXELS_TO_UNITS(20)"s
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 16:13:13 +02:00
Gabriel Ravier
c9517bffc4
Un-abbreviated "SPRITE" from "SPRT" in sprite macro names
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 16:10:46 +02:00
Gabriel Ravier
0cf2a20a9a
Corrected erroneous PIXELS_TO_UNITS(32) to PIXELS_TO_UNITS(16)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 16:07:03 +02:00
Gabriel Ravier
9e5e2a0e26
Indented some comments
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 16:05:24 +02:00
Gabriel Ravier
002e0f7760
Changed erroneous "=" to "+="
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 16:00:06 +02:00
Gabriel Ravier
58a02a609c
Defined TILES_TO_UNITS and UNITS_TO_TILES in terms of TILES_TO_PIXELS, PIXELS_TO_TILES, PIXELS_TO_UNITS and UNITS_TO_PIXELS
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 15:58:04 +02:00
Gabriel Ravier
04113870a5
Removed tiles comments when useless
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 15:51:32 +02:00
Gabriel Ravier
6eadf6c4a5
Changed view stuff to be measured in pixels, not tiles
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 14:16:44 +02:00
Gabriel Ravier
08131d527a
Converted hitbox measurements to pixels
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 14:12:35 +02:00
Gabriel Ravier
4070f1b972
Changed some stuff to conform to Clownacy's PR review
Changed BalfrogAnims to BalfrogSprites
Changed BALFANI_[name] to BALFROG_SPRT_[name]
Changed -[macro](val) to [macro](-val)

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 10:58:55 +02:00
Gabriel Ravier
0d833b38a8
Prevent some annoying warnings popping up everywhere
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 10:50:46 +02:00
Gabriel Ravier
fcc1e3cc23
Added some common macro utilities used by most NPCs
I'm pretty sure Pixel didn't actually use macros for this but I don't think just having this kind of stuff copied around everywhere is really great either

Forgot to commit and push this yesterday

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-15 10:48:18 +02:00
Gabriel Ravier
041bd0e5f9
Used doubles for TILES_TO_UNITS weirdly written stuff
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-14 20:47:28 +02:00
Gabriel Ravier
ac498c2be4
After intense debate with Cucky and BLink, ended up changing "PIXELS_TO_UNITS(3) - 1" to "0x5FF"
🙄

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-14 20:07:35 +02:00
Gabriel Ravier
e2c57e6dbc
Alphabetized macros in BossFrog and re-ordered some stuff to go along with Clownacy's coding standards
Also changed NPC_NULL_DELETES_ITSELF to NPC_DAMAGE_TEXT_HOLDER as Fayti pointed out the misnomer

Note to self : Make a PR with coding standards

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-13 20:35:37 +02:00
Gabriel Ravier
aeb1e292b7
Merge branch 'accurate' into commentBalfrog 2019-09-13 19:01:03 +02:00
Gabriel Ravier
8329ec2d16
Merge branch 'accurate' of https://github.com/GabrielRavier/Cave-Story-Engine-2 into accurate 2019-09-13 19:00:32 +02:00
Gabriel Ravier
9bef4b1d49
Commented BossFrog entirely
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-13 18:49:17 +02:00
Clownacy
69292f99f6 Add a new bugfix 2019-09-12 14:50:06 +00:00
Gabriel Ravier
861064bf12
Started improving on balfrog.cpp
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-12 16:47:14 +02:00
Gabriel Ravier
75baabf934
Merge branch 'accurate' of https://github.com/GabrielRavier/Cave-Story-Engine-2 into accurate 2019-09-10 16:19:08 +02:00
Clownacy
7ac0fa91a2
Add a list of branches to the readme 2019-09-10 13:27:32 +00:00
Clownacy
5430ccaabf Fix uncommented comment in .gitignore
Thanks again to GabrielRavier.
2019-09-10 12:33:07 +00:00
Clownacy
3889bd9f1d Add missing #include to Draw.cpp
Thanks to GabrielRavier for noticing.
2019-09-10 12:31:38 +00:00
Clownacy
2cb7bfbd3d Tiny cleanup 2019-09-10 01:59:26 +00:00
Clownacy
751daaf42f Ignore another VS2017 file 2019-09-10 01:27:12 +01:00
Clownacy
271f86e009 Add 64-bit targets to VS2017 project 2019-09-10 01:25:47 +01:00
Clownacy
385d7e5844 Clean up Back.cpp a little 2019-09-10 01:04:09 +01:00
Clownacy
9ca503a96e Add Visual Studio 2017 project files
This required hacking-in DirectInput8 support since Visual Studio
hasn't supported DirectInput7 and earlier since 2007.
2019-09-10 00:43:23 +01:00
Clownacy
a81fe10fc7 Move Visual Studio 2003 files to their own folder
We don't want these conflicting with the upcoming Visual Studio 2017
files.
2019-09-10 00:41:32 +01:00
Clownacy
f8c2e17655 Clean up Map.cpp 2019-09-09 23:46:35 +01:00
Clownacy
c368734a5c Fix the resource file in MinGW-w64
I hate all these headers
2019-09-09 23:43:48 +01:00
Gabriel Ravier
c492f9add1
Merge Clownacy/accurate into accurate (#28)
Merge Clownacy/accurate into accurate
2019-09-09 20:53:22 +02:00
Gabriel Ravier
3ce23e87aa
Merge Clownacy/master into master (#26)
Merge Clownacy/master into master
2019-09-09 19:22:09 +02:00
Clownacy
c5a4a3cb4c Future-proof the Windows resource file
Now it works with newer versions of Visual Studio
2019-09-06 21:04:40 +01:00
Clownacy
0532e2afa2 Shut up a warning 2019-09-06 20:08:07 +01:00
Clownacy
8114f88dd1 Shut up some build warnings 2019-09-06 15:21:43 +00:00
Clownacy
b6fccd509d Add a missing comment translation 2019-09-06 14:47:13 +00:00
Clownacy
9aa97205b7
Get Peter Mackay's name right 2019-09-05 23:35:59 +00:00
Clownacy
4d42842742
More readme work 2019-09-05 22:00:29 +00:00
Clownacy
d80adf9cc8 Comment on a bug in MakePixToneObject 2019-09-05 21:41:40 +00:00
Clownacy
7300157f54
Convert the Makefile setting list to a table 2019-09-05 19:48:27 +00:00
Clownacy
14442eaaba
Add some background information to the readme
Also removed the link to the woefully-neglected 'Bug Fixes.txt'.
2019-09-05 19:37:44 +00:00
Clownacy
7f7553bef2 An accuracy improvement in Triangle.cpp
This one's weird: it doesn't affect the actual generation of ASM in
the function, but rather it affects the ASM of sinf and cosf.

You see, sinf and cosf are static - they're built right into the EXE.
Since the previous code used cosf and sinf, they were embedded into
the EXE, and InitTriangleTable would call them directly.

However, this isn't what the original EXE does: instead,
InitTriangleTable calls an intermediary function, that in turn calls
the real cosf and sinf. Turns out this strange code generation is
caused by calling cos and sin instead of cosf and sinf, but still
using float parameters.
2019-09-05 17:04:07 +01:00