Changes by CrystalDaEevee:
- Fix some UI elements that were incorrectly using the base Cartoon variant instead of the correctly contrasted Cartoon Coal variant
- Use a dark table-header to fix contrast issues
- Fix Licenses.txt
- Use new 'base theme name' and 'variant name' values for skins to determine spinner values
- Ensure the skin is correctly set based on the values of both spinners
- Keep the options in the 'variant' spinners correct when updating the base spinner, as different base themes may have different variants (or no variants)
- Many other small changes to make it all work smoothly.
- Rename the folders of the classic skins, as the order of variants is determined by folder name alphabetic order. Using the same structure as with the cartoon skins ensure the variant order is the same.
- Also remove some redundant comments that were missed in the previous commit.
Remaining:
- Tidying up the code
- Ensure that if a variant exists in both the previous 'base theme' and the new 'base theme', switching the base theme while this variant is active doesn't reset to the default variant.
Instead of duplicating the general skin-making advice in all 12 stkskin.xml files, centralize it in one place.
Also correct header comments regarding the theme names.
The variants use the same accent colors as variants of the standard skin : blue (ocean), green (forest), black (coal), pink (ruby), yellow (desert). Made by CrystalDaEevee with help from QwertyChouskie (base theme advice, original cartoon theme) and myself (forest screenshot, advice regarding screenshots, initiative to get it merged)
- Change the colors of the background and borders of the textbox to ensure they always contrast with each other
- Make the color of the textbox cursor the same as the skin's text color - this ensure it always has good contrast
- Offset the display of text slightly in the textbox. This avoids the cursor 'blending in' with the textbox border
- Add and use new icons
- Make some labels more explicit
- Properly document copyright of both the new icons, and the icons used to make them
- Note that the Cartoon icons fall under the same copyright as all other Cartoon icons, so no licenses.txt update is needed
Anything not provided or defined by a skin will be used from the defined base skin, if specified.
For example, if a skin provides a base_theme of "cartoon", any icons/buttons/etc. not provided by the skin will be pulled from "cartoon".
* Modern skin
The culmination of years worth of work! Thanks to all who helped make this as amazing as possible!
PNGs were ran through `pngquant` then `optimize_data.sh` for maximum smallness
* Shrink a multitude of icons
Ran through `optipng` then `optimize_data.sh`
* Implement box model spacing for skin elements
* Account for padding when spacing out on-screen keyboard
* Fix padding for Tutorial button on Help screen
* Reduce spacing between tabs
(Also removed a couple duplicated files.)
* Change verticalTab margin as per Benau's request
Uses `vborder_out_portion`, which is how it was done before.
* Remove duplicate files
* Adjust spacings after PNGs were adjusted in a previous commit
* Improve spacing of verticalTabs
* Slightly increase the tabbar width in the Options screens
* Slightly increase the tabbar width in the help screens
* License for new coal skin
* Coal skin elements
* New coal skin
* Better contrast for coal skin select
* Lighter white text.
* Improved contrasts for actionable UI elements
* Make the theme back to a darker background while improving contrast again
* Ranking formula refinements (#3288)
* Reduce the maximum scaling time from 600s to 500s
8m20s is already much longer than nearly all ranked races will be, so it matters most for eliminated players. It would be too punishing if kept to 600 with the new time scaling method.
* New helper function for ranking computations
* Make short races less important for ranking points
And long races more important
* Use double for calculation
* Fix as alayan suggested
* Fix possible empty race event manager instance
* Show remote player in the past
* Allow to set commandline arguments on android
* Fix#3242
* More on #3242
* FIx#2912
* Better checkboxes (#3291)
* Better checkboxes for forest skin
* Better checkboxes for ocean skin
* Better checkboxes for peach skin
* Better checkboxes for ruby skin
* Try to create external/internal directory if it's not available.
Typically it always exists on new phones, but I didn't find any information if it's guaranteed to exist and it's missing on my old phone.
* Always set blend func in GLES 2.0.
It's often changed in STK engine and the value stored in irrlicht variable may be invalid.
Fixes#3296
* Avoid a crash when user name is empty
* Unlock cutscene improvements (#3298)
* Don't display unlocked features out of screen when there are 4 to 6-7
And more regular spacing between them
* Remove outdated workaround
* Store the previous number of story mode point
* Allow to get the previous points from player profile
* Fix points estimation for finding unlocked tracks
- Updated to reflect that the player's points are now updated before this function
- Use the real previous number of points rather than trying to estimate the point change (otherwise, the points computation method would have to be duplicated here to not have a bug with GPs who give more points than single race challenges).
* Fix#3100 (#3299)
* Fix#3100
* Fix server only compilation
* Fix stupidly long line full of whitespace (#3303)
* Don't use pkg-config on macOS
Fixes#3305
* Fix#3309
* Great improvements to skin data (#3312)
* Add vertical tab support and get common files from a common folder
* License file for the common folder
* UI images shared by all 4 colored themes
* Delete redundant pictures
* Delete background.jpg
* Delete dialog.png
* Delete glassbutton_deactivated.png
* Delete glasscheckbox_checked_deactivated.png
* Delete glasscheckbox_deactivated.png
* Delete glass_rsection.png
* Delete glass_section.png
* Delete glassspinner.png
* Delete glassspinner_deactivated.png
* Delete glass_square_focused_bw.png
* Delete left_arrow.png
* Delete list_sort_down.png
* Delete list_sort_up.png
* Delete rating_star.png
* Delete right_arrow.png
* Delete scrollbar_bg.png
* Delete scrollbar_btn.png
* Delete table_header.png
* Delete tooltip.png
* Optimize image size and add vertical tabs
* Optimize image size and add vertical tabs for ocean skin
* The multiplayer colored squares are also shared
* Use the multiplayer colored squares from common
* Remove more redundant skin images
* Delete glass_square1.png
* Delete glass_square2.png
* Delete glass_square3.png
* Delete glass_square4.png
* Delete glass_square_focused.png
* Delete glass_square_focused2.png
* Delete glass_square_focused3.png
* Delete glass_square_focused4.png
* Optimize image size and add vertical tabs for peach skin
* Optimize image size and add vertical tabs for forest skin
* Special focus halo for ruby skin
Currently, the halo used in single player is shared with the one used for the first player in local multiplayer, despite the color of the top spinner widget not matching in this situation.
Better having this mismatch that a not-so-great halo in single-player.
I put it in common as it may be reused for multiplayer focus by other skins.
* Use pink selection halo
* Put the bottom bar among skinnable UI images
* Make the bottom bar part of the skins
* Coding style fix
* Delete bar.png
* Load bottom bar texture from skin rather than gui folder
Also rename bg_image to m_bg_image
* Move black focus halo to the common folder
* Remove duplicate image, use common folder
* Delete glass_square1.png
* Delete glass_square2.png
* Delete glass_square3.png
* Delete glass_square4.png
* Delete glass_square_focused.png
* Delete glass_square_focused2.png
* Delete glass_square_focused3.png
* Delete glass_square_focused4.png
* Delete glass_square_focused_bw.png
* Delete left_arrow.png
* Delete rating_star.png
* Delete right_arrow.png
* Delete list_sort_down.png
* Delete list_sort_up.png
* Delete glassbutton_deactivated.png
* Delete glasscheckbox_deactivated.png
* Delete glassspinner.png
* Delete glassspinner_deactivated.png
* Delete scrollbar_bg.png
* Delete scrollbar_btn.png
* Delete tooltip.png
* Delete glasscheckbox_checked_deactivated.png
* Use common folder, support vertical tabs, and small tweaks
* Optimize image size, add vertical tabs, add custom bottom bar
* Add vertical tab support and get common files from a common folder
* License file for the common folder
* UI images shared by all 4 colored themes
* Delete redundant pictures
* Delete background.jpg
* Delete dialog.png
* Delete glassbutton_deactivated.png
* Delete glasscheckbox_checked_deactivated.png
* Delete glasscheckbox_deactivated.png
* Delete glass_rsection.png
* Delete glass_section.png
* Delete glassspinner.png
* Delete glassspinner_deactivated.png
* Delete glass_square_focused_bw.png
* Delete left_arrow.png
* Delete list_sort_down.png
* Delete list_sort_up.png
* Delete rating_star.png
* Delete right_arrow.png
* Delete scrollbar_bg.png
* Delete scrollbar_btn.png
* Delete table_header.png
* Delete tooltip.png
* Optimize image size and add vertical tabs
* Optimize image size and add vertical tabs for ocean skin
* The multiplayer colored squares are also shared
* Use the multiplayer colored squares from common
* Remove more redundant skin images
* Delete glass_square1.png
* Delete glass_square2.png
* Delete glass_square3.png
* Delete glass_square4.png
* Delete glass_square_focused.png
* Delete glass_square_focused2.png
* Delete glass_square_focused3.png
* Delete glass_square_focused4.png
* Optimize image size and add vertical tabs for peach skin
* Optimize image size and add vertical tabs for forest skin
* Special focus halo for ruby skin
Currently, the halo used in single player is shared with the one used for the first player in local multiplayer, despite the color of the top spinner widget not matching in this situation.
Better having this mismatch that a not-so-great halo in single-player.
I put it in common as it may be reused for multiplayer focus by other skins.
* Use pink selection halo
* Put the bottom bar among skinnable UI images
* Make the bottom bar part of the skins
* Coding style fix
* Delete bar.png
* Load bottom bar texture from skin rather than gui folder
Also rename bg_image to m_bg_image
* Initial SplitScreen
All are upside down and player 1, 5 player does 6 even...
* Working version of splitscreen
* black screen fix
* te fix
* Update race_gui.cpp
* Change item
* wrong way fix and refactorings
* Fix icon scale, cleaning code for lap count
* Remove tabs
* Add settings option
* Fix FOV
Right now the FOV gradually decreases when going from 1,2,3,4 players. Then after 4 players it wont drop any lower. This behaviour can easily be replaced in the future
* Prevent overflow
* Unlimited splitscreen
* Space out duplicate skins across additional players
* Update stk_config.cpp
* Update irr_driver.cpp
* Update options_screen_ui.cpp
* Update irr_driver.cpp
* Update options_screen_ui.cpp
* Update race_gui.cpp
* Update irr_driver.cpp
* Fix for empty pixels at edges
* Fix referring to template not int
* Fix compile errors
* Progress towards fixing selection screen
* Begin process for selections
* Fix selection screen for >4 people
Important GUI changes included
* Disable changing rows/cols ingame
* fix sp related crash
* Styling fixes