-
Notifications
You must be signed in to change notification settings - Fork 3
Custom Song Cards
This is a new addition that is to come for this engine modification, by default, it'll load up as a black box in the center of your screen with VHS OSD Mono font displaying your song name and composer name (from your chart file) along with the icons of your current opponent and bf character.
There is a new folder under the data folder called "cardData", that folder will contain your unique settings for the card you want to display on a specific song!
A template has already been left there, so feel free to play with it here
In order for it to take action and run your card settings, you must name it after the song you want to override the default settings for, kinda like how you would name a chart file.
Well, this is what this section will be for, so let's go over them!
- "customArt" - loads in your image name and will replace the black box with the following image [NOTE: This is the ONLY setting that CAN be done without a json, but MUST be named after your song or it won't load, every other option, isn't available without it]
- "playerIcon" - replaces the built-in icon loader for your bf icon with your custom icon instead [YOUR ICON MUST BE SET UP THE SAME WAY AS IF IT WERE A CHARACTER, OR IT WILL RESULT IN A CRASH]
- "opponentIcon" - same thing as the previous setting but for the opponent icon
- "cardAlpha" - Determines what alpha value the card itself shall fade into instead of using alpha value: 1 when fading onto the screen
- "cardScale" - Resizes the card if you want it to look different
- "cardOffsets" - Initializes the offset upon loading in
- "isScreenCenter" - For lazy people that like it in the center.
- "isAnimated" - Decides if the card will be animated, if true, you grant yourself access to all the other options within this setting category
- "animName" - Gets your animation name from your xml (xml is also named AFTER your image name under "customArt")
- animFramerate" - Customizes how fast your animation should be
- "isLooped" - Determines whether your animation should loop or not
- "font" - Replaces the default font with your font file in the folder
- "fontSize" - Overrides the default size with the value inputted here
- "fontColor" - Uses FlxColor.fromRGBFloat() to determine your new font color
- "fontAlignType" - Overrides the center alignment with the value inputted here
- "fontScale" - Just when you thought you couldn't get any fancier with the stylizing for the font
- "fontAlpha" - Determines the visibility of your text when it fades on screen
- "fontOffset" - Initializes the offset upon loading in
- "playerOffset"/"opponentOffset" - Overrides the default position of either icon when loaded in
- "playerScale"/"opponentScale" - Rescales the icons when loaded in
- "playerAlpha"/"opponentAlpha" - Determines the visibility of both icons when fading onto your screen
- "cardShader"/"playerShader"/"opponentShader" - Optional value that'll apply a shader to either of the 3 assets
- "cardBlend"/"playerBlend"/"opponentBlend" - Optional value that'll apply a different blend to either of the 3 assets
- "tweenIn" - Loads in whatever ease type you prefer to use when fading in
- "tweenOut" - Separate ease type if you want it to use a different ease when fading out
- "cardMoveIntro"/"playerMoveIntro"/"oppMoveIntro"/"fontMoveIntro" - Moves the position of either offsets you initialized them in to a new position upon fading in
- "cardMoveOutro"/"playerMoveOutro"/"oppMoveOutro"/"fontMoveOutro" - Moves either assets to a new position when fading out from either the initial offset or after your intro tween
{
"baseSettings": {
"customArt": "aiHorror",
"playerIcon": "bf",
"opponentIcon": "gf"
},
"extraSettings": {
"cardAlpha": [0.75],
"cardScale": [3, 0.5],
"cardOffsets": [500, 300],
"isScreenCenter": false
},
"animationSettings": {
"isAnimated": false,
"animName": "your-animation-name-here",
"animFramerate": 24,
"isLooped": false
},
"fontSettings": {
"font": "VanillaExtractRegular",
"fontSize": [55],
"fontColor": [255, 0, 0, 255],
"fontAlignType": "center",
"fontScale": [4, 0.5],
"fontAlpha": [1],
"fontOffset": [450, 280]
},
"iconSettings": {
"playerOffset": [850, 460],
"playerScale": [1, 1],
"playerAlpha": [1],
"opponentOffset": [260, 130],
"opponentScale": [1, 1],
"opponentAlpha": [1]
},
"graphicSettings": {
"cardShader": null,
"playerShader": null,
"opponentShader": null,
"cardBlend": "normal",
"playerBlend": "normal",
"opponentBlend": "normal"
},
"tweenSettings": {
"tweenIn": "sineInOut",
"tweenOut": "sineInOut",
"cardMoveIntro": [330, 180],
"cardMoveOutro": [330, 180],
"playerMoveIntro": [850, 460],
"playerMoveOutro": [850, 460],
"oppMoveIntro": [260, 130],
"oppMoveOutro": [260, 130],
"fontMoveIntro": [450, 280],
"fontMoveOutro": [450, 280]
}
}