* Added gradle task of Atlas texture packing for Android build
* ImagePackers check also for creation date
Co-authored-by: tunerzinc@gmail.com <vfylfhby>
* Replaced all occurrences of deprecated NinePatch
function calls
This makes a lot of UI elements already moddable but documentation is still missing
* Added "How to create a UI skin for Unciv" to wiki
* Added image
* Fixed two typos and updated directory image
Old image was missing a folder
* Added clear color to skin config
to support picker screen backgrounds
* Removed deprecated functions in ImageGetter
* Fixed lowercase ui element names
they should always be UpperCamelCase to be consistent
* Added UiElementDocsWriter
to modify the docs for UI elements automatically
* Added default shape to UiElementsDocsWriter.kt
* Revert unintended merge errors
* Rerun file auto generation
* Added SkinStrings and SkinConfig
TODO SkinCache
* Deprecated all old ui background getters
* Added SkinCache
for SkinConfigs to take effect
* Modable or moddable? idk ¯\_(ツ)_/¯
* Added separate alpha to config
* Add serialization version to GameInfo
* Add handling of incompatible saves due to a dfiferent save version
* Fix compilation?
* Fix ios compilation
* Refactor: Make it clearer that GameInfo serialization version is only supposed to be incremented when it's guaranteed to cause issues & rename to compatibility version
* Update initial version
* Update initial version
* Fix merge mistake
* Fix OutOfMemory error when loading game state after already having a game loaded
* Fix screen resize not being handled correctly
* Add withContext shortcut functions
* Add more logging
* Fix multiplayer games sometimes being loaded twice
* Make the loading screen nicer
* Make the loading screen hide previous popups for making the screenshot
* Don't do custom rendering & dispose the texture
Sometimes it makes sense to understand the library you're using...
* Fix missing GL context
* Refactor: increase readability of loadGame function
* Refactor: Consistent usage of coroutines
* Add usage comments to the different threads
* Refactor: Properly separate crash handling into its platform-specific parts
* Fix autoSave never finishing
* Correctly handle coroutines when the GL thread is not accepting runnables anymore
Co-authored-by: Yair Morgenstern <yairm210@hotmail.com>
* Refactor: Make Popups work on Stages instead of BaseScreens
* Refactor: Change UncivGame.worldScreen and UncivGame.gameInfo to be of nullable type
* Fix "Resume" game loading not fully handling exceptions
* Fix one missed refactoring
* Refactor: remove useless postRunnable
* Load and Save Game Screens rework - Linting
* Load and Save Game Screens rework - Modularize and Keyboard
* Load and Save Game Screens rework - error handling
* Load and Save Game Screens rework - Move other save/load code
* Load and Save Game Screens rework - More Keyboard
* Load and Save Game Screens rework - Increase clipboard limit
* Load and Save Game Screens rework - Post-merge patch
* Load and Save Game Screens rework - Home, End, harden
* Load and Save Game Screens rework - Post-merge patch again
* Load and Save Game Screens rework - reviews
* Refactor: change GameSaver from singleton to single instance pattern & move autosave logic info GameSaver
Singleton just doesn't make sense anymore when we have to `init(..)` with different arguments, then we should just make a normal class out of it
* Fix not correctly checking for missing external files dir
* Refactor: use more appropriate library method
* Add logging for external files dir
In the repository, this file definitely has Unix line endings (\n). So generating it with \r\n causes it to always show changes, even though there aren't any
* Replacements for existing UniqueTypes
* More typed uniques are added
* Migration to the typed uniques
* Minor optimization
* More general approach on UniqueType usage
* Better wording for the UniqueType
* vpn/proxy issues when creating new mp game
replaced redundant ping with opening a connection to dropbox to fix the proxy issue
* updated error message to include dropbox
* check multiplayerServer url if the user is playing on it
* use `https://content.dropboxapi.com` instead of `https://www.dropbox.com`
* fixed proxy issues on android
if connected to proxy but no internet access it will freeze for a couple seconds (until it finishes the for loop) but it works
* forgot to add the imports
* removed android sdk network check to fix proxy issues
* check for internet now separate from check for multiplayerServer
removed frunctions from PlatformSpecificHelpers__
* added improvements made by touhidurrr
* removed unused imports and replaced setter with property access syntax
Co-authored-by: Md. Touhidur Rahman <46617994+touhidurrr@users.noreply.github.com>
* Move UncivServer to own module (and jar)
* UncivServer isalive logged
* Separate UncivServer - some wiki hints
* Separate UncivServer - how to build UncivServer.jar
Co-authored-by: Yair Morgenstern <yairm210@hotmail.com>
* Fix Barbarian Camp Spawned notification not revealing the camp on the map in multiplayer
* Fix lastSeenImprovement not being cloned
* Use HashMapVector2 in BarbarianManager
* Fix value not having its class written out for proper deserializing
* Refactor: various code improvements
* Create turn notifier for when the game is running for Windows
If playing on Desktop, you often put the game into background, but still want to know if it's your turn. A standard Windows function for that is `FlashWindow` from winuser.h, which is implemented here
* Fix: Use the window from the listener instead of the static one from libGDL
* Only notify if it's the turn of the player that is playing
* Always notify spectators of the next players' turn
* Refactor: Move notifier into GeneralPlatformSpecificHelpers
* Only load Windows DLL when we're actually on Windows
* Fixed issue #6649 by checking for internet connection before starting the game if "online multiplayer" is selected
Many thanks to SomeTroglodyte for most of the code and for explanations
* check for internet before starting a mp game to avoid freeze
Fixed issue #6649 by checking for internet connection before starting the game if "online multiplayer" is selected.
Many thanks to SomeTroglodyte for most of the code and for explanations. A slight modification has been done to the code to catch an error caused by InetAddress
* Revert "Merge remote-tracking branch 'origin/master-noInternet' into master-noInternet"
This reverts commit bd6474b50d, reversing
changes made to f52ad60b51.
* Comments to 'link' implementation (matchFilter) to UniqueParameterType
* Comments to 'link' UniqueParameterType to implementation (matchFilter)
* Fix two mistakes in UniqueParameterType
* Make "and" filter logic for MapUnit and BaseUnit modular, fix mistake
* Make UnitMovementMemory immutable and without lateinit
* Keep UniqueType comment promise that instances can override parameter types
* Reorg UniqueDocsWriter so UniqueParameterType-specific text is moved to the enum
Also some minor improvements - e.g. abbreviations sorted & consistent punctuation, less memory allocations, a/b/c type params get an example,...
* New abilities for UniqueDocsWriter concerning UniqueTarget and inheritsFrom (initially deactivated)
* Actually implement the wish for distinction between absolute and relative amounts
* Change UniqueParameterType.UnitName.docExample to Xander's choice