import java.nio.file.Path ;
import readers.DDRReader ;
import readers.LoveLiveReader ;
import readers.PopnReader ;
public class ArcadeReader {
/ *
* Important data we would like to know for all games :
* Score
* Rank ( Probably implementation - specific )
* Note accuracy [ List ]
* Marvelous
* Perfect
* Great
* Good
* Bad
* OK
* Miss
* Difficulty
* Song Name / Title
* Percentage ( Can be EX Score , a percentage accuracy or survival percent )
* Max Combo
* Other ( Not used by the auto detecter , used for storing misc . data . )
*
* Notes about Readers :
* Love Live
* - Does not use : Marvelous , OK
* Project Diva
* - Does not use : Marvelous , OK
* - Fail condition is MISSxTAKE
* DDR
* - Does not use : Max Combo ( Cannot calculate in combo carryover mode ) , Bad
* - Fail condition is E rank .
* Pop ' n Music
* - Does not use : Marvelous , Bad , OK
* - Stores number of bars filled in Percentage .
* - Fail condition is < 17 in the meter ( max is 24 )
* Sound Voltex
* - Sound Voltex uses the note accuracy list slots as follows :
* Early :
* Error - Marvelous
* Near - Perfect
* Critical - Great
* S - Critical - Good
* Critical - Bad
* Near - OK
* Error - Miss
* - Sound Voltex stores EX score in Percentage .
* - Max Combo is Max Chain
* - Sound Voltex will store additional data about accuracy of note types as such :
* { "chip" : { "scritical" : 0 , "critical" : 0 , "near" : 0 , "error" : 0 } , "long" : { "scritical" : 0 , "error" : 0 } , "vol" : { "scritical" : 0 , "error" : 0 } , "gauge" : < excessive | normal > , "gauge_pct" : 100 }
* //Also storing what type of clear gauge was met and the % of the gauge.
* - Fail condition is < 70 % normal gauge .
* IIDX
* - Not going to support right now .
*
* /
public static void retrieveData ( Path img ) {
new LoveLiveReader ( ) . interpretBoxes ( img ) ;
}
}