Commit graph

40 commits

Author SHA1 Message Date
46299a089b
add HitSample 2024-04-27 14:15:09 +02:00
6ff75669a0
clean up macros in the osuparser header 2024-04-26 20:48:46 +02:00
3aa342d46b
name section structs in Difficulty 2024-04-26 20:00:24 +02:00
b978fb2288
fix pretty much everything, read description
this is a big (or dare I say, huge) commit that pretty much fixes every
problem I've had so far with the basic parsing

I still need to do a custom operator>> for some types but at this point
the parser goes through the entire file and prints out everything which
is a large milestone I'd say

changes in this commit:
- add SECTION_LIST for a section containing a single list of values
  examples: TimingPoints, HitObjects
- improve operator>> for enums making it accept int values and fail
  properly when the value is incorrect (there's a warning I need to get
  rid of but it's ok for now)
- skip over blank lines: adding this single line (src/osuparser.cpp:52)
  made the parser go from shitting itself to actually going through the
  whole file and printing everything (with some errors but still)
- new string util: isBlank() used for the above
- new __VA_ARGS__ util: ARG_COUNT() and rename foreach.hpp to
  va_args_util.hpp as that name no longer fits
2024-04-26 19:05:35 +02:00
e693260eff
fix difficulty.hpDrainRate's prefix 2024-04-25 22:38:12 +02:00
725cae21eb
handle parsing ints to enums 2024-04-25 22:35:14 +02:00
ad03011871
create separate header for string util functions 2024-04-25 22:34:51 +02:00
a918f155b4
update separators to be chars instead of strings 2024-04-25 19:17:23 +02:00
a95e79ac35
Revert "remove redundant struct"
This reverts commit d0b5c4d514.
2024-04-25 17:46:08 +02:00
b710520724
get rid of config.hpp in osuparser.hpp when pp debugging 2024-04-25 12:14:41 +02:00
d0b5c4d514
remove redundant struct 2024-04-25 11:53:51 +02:00
19ff37e7b8
massively improve the awk fuckery
thank you krizej I actually forgot about g++ -D
2024-04-25 11:49:09 +02:00
c967207520
awk marker comments to save necessary macros
I restructured the beginnings of the preprocessed files for debugging to
make the awks in the makefile not eat headers which are needed for
debugging (e.g. the FOR_EACH macro)

it's done by putting awk marker comments:

// awk stop marker (check make pp)

after the macros to be eaten by awk and before the ones we wanna keep

I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this I hate this
2024-04-24 23:36:25 +02:00
29d00653eb
minor issue 2024-04-23 16:42:24 +02:00
1f4416aa0a
major formatting change 2024-04-23 16:23:29 +02:00
43f138b7b2
formatting fix 2024-04-21 13:34:18 +02:00
becc44a098
add separated list with a prefix 2024-04-21 10:40:43 +02:00
019d55afd2
whoops forgot about that 2024-04-21 10:40:07 +02:00
05ce1f309b
put timingPoints and hitObjects into sections 2024-04-21 10:39:43 +02:00
8d7b193cf6
remove newline in struct output stream op 2024-04-20 13:41:03 +02:00
c5491dbc9f
refactor a huge part of the code
this allows for creating only input and output streams and allows me to
finally print out the generated config struct
2024-04-20 13:37:06 +02:00
82929e16bf
add util stream ops and print difficulty on -p 2024-04-20 12:08:55 +02:00
512bbeac51
remove unnecessary undefs in config 2024-04-19 10:15:57 +02:00
a8ae6b931e
add prefixed vars and fix format version parsing 2024-04-19 10:14:45 +02:00
8c401c785b
generate the parse function in the header from macros 2024-04-19 09:39:57 +02:00
3fb74a4f09
add break to enum stream op (smartest c++ dev) 2024-04-18 22:32:01 +02:00
1d506e50e9
undef struct stream ops for a second time 2024-04-18 20:42:57 +02:00
35e53c239d
undef stream op macros 2024-04-18 20:41:40 +02:00
9af4bc02e1
Revert "remove another macro"
This reverts commit 00e4f89cc1.
2024-04-18 20:30:10 +02:00
00e4f89cc1
remove another macro 2024-04-18 20:29:33 +02:00
c1463fabbc
remove more type macros 2024-04-18 20:29:06 +02:00
1e7b355480
and fix the rest of lists 2024-04-18 20:18:57 +02:00
a3efb3f9d7
fix removed type macro 2024-04-18 20:17:54 +02:00
f6784c2848
get rid of VAR_BITS
I hate this stupid fucking thing you can't print them normally
2024-04-18 20:16:01 +02:00
7d34861da8
a LOT of things (read description)
I might not list everything in this commit but:
- fix struct stream operators while making them a bit less convenient
- refactor some stuff around like the FOR_EACH macros
- fix 2/3 minor bugs I stumbled upon when actually trying to compile
2024-04-18 20:11:33 +02:00
559e0a27ca
move list var macros to the others 2024-03-19 19:47:06 +01:00
2e36a703be
oops 2024-03-19 14:24:47 +01:00
a168e830f0
Revert "remove beatmaps.hpp (it's in the generated struct now)"
This reverts commit ae97d0dd46.

turns out this is still used xd
2024-03-19 11:43:41 +01:00
ae97d0dd46
remove beatmaps.hpp (it's in the generated struct now) 2024-03-19 11:42:14 +01:00
bb2bb992d7
init 2024-03-18 11:25:15 +01:00