Commit graph

24 commits

Author SHA1 Message Date
Simon Bruder 3ab224414f
ddr::ssq: Fix difficulty display
Tests don’t help if they are wrong
2020-07-25 14:08:25 +02:00
Simon Bruder f1d460cffe
ddr::ssq::Difficulty: Refactor and rename to Level
* New name reflects contents better
 * Uses explicit functions instead of Into for only converting the
   difficulty
 * Uses errors instead of defaults for invalid values
 * Difficulty mapping is separate function
 * Simplified tests
2020-07-23 15:36:22 +02:00
Simon Bruder 161f472a19
ddr::ssq::Difficulty: Fix comment for to_level 2020-07-23 13:26:54 +02:00
Simon Bruder e70d9f6cea
ddr::ssq::Row: Test Into<Vec<bool>> 2020-07-23 13:10:39 +02:00
Simon Bruder 087c190e63
ddr::ssq::Row: Test intersection for different player counts 2020-07-23 12:53:53 +02:00
Simon Bruder 240257197a
ddr::ssq::Row: Test negative intersection results 2020-07-23 12:53:40 +02:00
Simon Bruder 7700e511f9
ddr::ssq::Row: Return error on invalid player count 2020-07-23 12:37:29 +02:00
Simon Bruder dad3a7ff13
Refactor arc parsing and add internal tests for it 2020-07-09 14:47:53 +02:00
Simon Bruder 36d3b5b6bf
Test internal functionality of ddr::ssq 2020-07-05 09:28:38 +02:00
Simon Bruder 19eebdc345
Implement Deref for newtypes 2020-07-04 23:17:17 +02:00
Simon Bruder d0d33de51e
Store time as u32 2020-06-30 12:48:47 +02:00
Simon Bruder 7e76a21609
Fix read_n_i32 function name 2020-06-30 12:21:11 +02:00
Simon Bruder d8af20a703
Fix difficulty mapping 2020-06-30 09:53:33 +02:00
Simon Bruder b49425751e
Add musicdb support to ddr2osu 2020-06-30 09:37:27 +02:00
Simon Bruder 63d75fd6b6
Implement support for musicdb 2020-06-28 20:22:31 +02:00
Simon Bruder 56d36f2732
Avoid truncation
Error where truncation can occurr and prevent truncation in the future
by using `type::from()` (which checks for truncation) instead of `as
type` (which doesn’t).
2020-06-27 19:43:50 +02:00
Simon Bruder e64ae362ef
Add unarc mode 2020-06-27 17:15:37 +02:00
Simon Bruder e7e4a85d70
Add tests for ssq::{Row, PlayerRow} 2020-06-26 23:48:53 +02:00
Simon Bruder 4f6c971ec7
Fix difficulty names
Expert ↔ Challenge
2020-06-26 21:21:38 +02:00
Simon Bruder b7f60302ee
Implement freeze 2020-06-26 21:16:09 +02:00
Simon Bruder dc27f999c5
Implement Display for ddr::ssq::Row
This makes debugging easier
2020-06-26 21:11:45 +02:00
Simon Bruder 5a77d86fe7
Switch from nom to custom parser
The reason for the switch is mostly related to error handling (and me
being unable to unterstand how nom does it). Using byteorder and a few
handwritten helper functions for parsing makes error handling much
easier. It also allows me to return more helpful error messages.
2020-06-26 13:25:21 +02:00
Simon Bruder 8c8f954bbe
Use Option instead of Result where applicable 2020-06-25 13:25:47 +02:00
Simon Bruder 8319ee42d9
Initial commit 2020-06-22 20:39:20 +02:00