This commit is contained in:
Qwerty Chouskie 2018-05-02 18:09:13 -07:00
commit b0c061290f
621 changed files with 23593 additions and 37567 deletions

View File

@ -3,6 +3,7 @@ cmake_minimum_required(VERSION 2.8.4)
# root CMakeLists for the SuperTuxKart project
project(SuperTuxKart)
set(PROJECT_VERSION "git")
add_definitions( -DSUPERTUXKART_VERSION="${PROJECT_VERSION}" )
if(NOT (CMAKE_MAJOR_VERSION VERSION_LESS 3))
cmake_policy(SET CMP0043 OLD)
@ -11,15 +12,8 @@ endif()
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
include(CMakeDependentOption)
set(DEPENDENCIES "dependencies")
# In case of 64-bit windows, use a different path for dependencies
# so that both dependencies can be installed next to each other
if ( WIN32 AND (CMAKE_SIZEOF_VOID_P EQUAL 8 ) )
set(DEPENDENCIES "dependencies-64bit")
endif()
include(BuildTypeSTKRelease)
if (NOT CMAKE_BUILD_TYPE)
if(NOT CMAKE_BUILD_TYPE)
message(STATUS "No build type selected, default to STKRelease")
set(CMAKE_BUILD_TYPE "STKRelease")
endif()
@ -28,12 +22,13 @@ option(SERVER_ONLY "Create a server only (i.e. no graphics or sound)" OFF)
option(USE_FRIBIDI "Support for right-to-left languages" ON)
option(CHECK_ASSETS "Check if assets are installed in ../stk-assets" ON)
option(USE_SYSTEM_ANGELSCRIPT "Use system angelscript instead of built-in angelscript. If you enable this option, make sure to use a compatible version." OFF)
option(USE_SYSTEM_ENET "Use system ENET instead of the built-in version, when available." ON)
option(USE_SYSTEM_GLEW "Use system GLEW instead of the built-in version, when available." ON)
CMAKE_DEPENDENT_OPTION(BUILD_RECORDER "Build opengl recorder" ON
"NOT SERVER_ONLY;NOT USE_GLES2;NOT APPLE" OFF)
if ((UNIX AND NOT APPLE) AND NOT SERVER_ONLY)
if((UNIX AND NOT APPLE) AND NOT SERVER_ONLY)
option(ENABLE_WAYLAND_DEVICE "Enable Wayland device for linux build" ON)
option(USE_GLES2 "Use OpenGL ES2 renderer" OFF)
endif()
@ -73,6 +68,32 @@ set(STK_INSTALL_BINARY_DIR "bin" CACHE
set(STK_INSTALL_DATA_DIR "share/supertuxkart" CACHE
STRING "Install data folder to this directory, absolute or relative to CMAKE_INSTALL_PREFIX")
# Define dependencies path
if(MSVC)
set(DEPENDENCIES "dependencies-vs")
elseif(MINGW)
set(DEPENDENCIES "dependencies-mingw")
else()
set(DEPENDENCIES "dependencies")
endif()
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(DEPENDENCIES "${DEPENDENCIES}-64bit")
endif()
if(WIN32)
if(NOT IS_DIRECTORY "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}")
set(DEPENDENCIES "dependencies")
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
set(DEPENDENCIES "${DEPENDENCIES}-64bit")
endif()
endif()
if(NOT IS_DIRECTORY "${PROJECT_SOURCE_DIR}/${DEPENDENCIES}")
message(FATAL_ERROR "Dependencies directory not found.")
endif()
endif()
# These variables enable MSVC to find libraries located in "dependencies"
if(WIN32)
set(ENV{PATH} "$ENV{PATH};${PROJECT_SOURCE_DIR}/${DEPENDENCIES}/include")
@ -107,14 +128,24 @@ endif()
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/bullet")
include_directories("${PROJECT_SOURCE_DIR}/lib/bullet/src")
# Build the ENet UDP network library
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet")
include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include")
# Find system ENet library or build it if missing
if((UNIX AND NOT APPLE) AND USE_SYSTEM_ENET)
find_package(ENet)
endif()
if(ENET_FOUND)
include_directories(${ENet_INCLUDE_DIRS})
else()
# Fallback to built-in version
add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet")
include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include")
set(ENet_LIBRARIES "enet")
endif()
# Find system GLEW library or build it if missing
if(NOT USE_GLES2 AND NOT SERVER_ONLY)
add_definitions(-DGLEW_NO_GLU)
if(USE_SYSTEM_GLEW)
if((UNIX AND NOT APPLE) AND USE_SYSTEM_GLEW)
find_package(PkgConfig)
if(PKGCONFIG_FOUND)
pkg_check_modules(GLEW glew>=2.1)
@ -434,7 +465,7 @@ target_link_libraries(supertuxkart
bulletdynamics
bulletcollision
bulletmath
enet
${ENet_LIBRARIES}
stkirrlicht
${Angelscript_LIBRARIES}
${CURL_LIBRARIES}
@ -575,7 +606,7 @@ install(FILES ${STK_DATA_DIR}/supertuxkart.desktop DESTINATION share/application
install(FILES data/supertuxkart_48.png DESTINATION share/icons/hicolor/48x48/apps RENAME supertuxkart.png)
install(FILES data/supertuxkart_128.png DESTINATION share/icons/hicolor/128x128/apps RENAME supertuxkart.png)
install(FILES data/supertuxkart_48.png DESTINATION share/pixmaps RENAME supertuxkart.png)
install(FILES data/supertuxkart.appdata.xml DESTINATION share/appdata)
install(FILES data/supertuxkart.appdata.xml DESTINATION share/metainfo)
if(MINGW)
install(DIRECTORY ${CMAKE_BINARY_DIR}/bin/ DESTINATION ${STK_INSTALL_BINARY_DIR}

View File

@ -64,13 +64,13 @@ mesa-common-dev pkg-config zlib1g-dev
```
### In-game recorder
In order to build the in-game recorder for STK, you have to install
To build the in-game recorder for STK, you have to install
libopenglrecorder from your distribution, or compile it yourself from [here](https://github.com/Benau/libopenglrecorder).
Compilation instruction is explained there. If you don't need this feature, pass `-DBUILD_RECORDER=off` to cmake.
### Compiling
Run the following commands inside `stk-code` directory to compile SuperTuxKart:
To compile SuperTuxKart, run the following commands inside `stk-code` directory:
```bash
mkdir cmake_build
@ -80,6 +80,21 @@ make -j4
```
STK can then be run from the build directory with `bin/supertuxkart`
#### Keeping your build up to date
To recompile the latest code without redownloading the entire source, first run the ```svn up``` command inside the 'stk-assets' directory, then run the following commands inside the 'stk-code' directory:
```bash
git pull
cd cmake_build
cmake ..
make -j4
```
##### Build Speed Optimization
"-j4" is an example, for a faster build, use "-jx" instead, where "x" is the amount of CPU threads you have, minus one.
### Further options
To create a debug version of STK, run:
@ -106,7 +121,7 @@ location, specify `CMAKE_INSTALL_PREFIX` when running cmake, e.g.:
To Build SuperTuxKart on Windows, follow these instructions:
1. Download and install Visual Studio from here: [Visual Studio - Download](https://www.visualstudio.com/downloads/). The free Visual Studio Community edition works fine.
2. Download the SuperTuxKart source package from either [SuperTuxKart download area - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/0.9.2) or [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control), and unpack it.
2. Download the SuperTuxKart source package from either [SuperTuxKart download area - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/) or [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control), and unpack it.
*Note: If you downloaded the source package from here: [SuperTuxKart.net - Source Control](https://supertuxkart.net/Source_control), then both `stk-code` and `stk-assets` **must** be in the same directory, otherwise the build can result in failure*
3. Download the Windows dependencies package from either [SuperTuxKart download area: Dependencies - SourceForge.net](https://sourceforge.net/projects/supertuxkart/files/SuperTuxKart%20Dependencies/Windows/)
or [SuperTuxKart on GitHub - Dependencies](https://github.com/supertuxkart/dependencies), and unpack it; then, copy the `dependencies` directory from either the `windows` or the `windows_64bit` directories into the `stk-code` directory, rename it to `dependencies-64bit` if you want to compile a 64bit build.

View File

@ -162,6 +162,9 @@ LOCAL_CFLAGS := -I../lib/angelscript/include \
-DUSE_GLES2 \
-DHAVE_OGGVORBIS \
-DNDEBUG \
-DANDROID_PACKAGE_NAME=\"$(PACKAGE_NAME)\" \
-DANDROID_APP_DIR_NAME=\"$(APP_DIR_NAME)\" \
-DSUPERTUXKART_VERSION=\"$(PROJECT_VERSION)\" \
-std=gnu++0x
LOCAL_STATIC_LIBRARIES := irrlicht bullet enet freetype ifaddrs angelscript \

View File

@ -1,16 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.supertuxkart.stk"
package="org.supertuxkart.stk_dbg"
android:versionCode="1"
android:versionName="1.0"
android:versionName="git"
android:installLocation="auto">
<!-- This .apk has no Java code itself, so set hasCode to false. -->
<application android:label="@string/app_name"
android:icon="@drawable/icon"
android:banner="@drawable/banner"
android:hasCode="false"
android:isGame="true"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:hardwareAccelerated="true">
android:hardwareAccelerated="true"
android:resizeableActivity="false">
<activity android:name="android.app.NativeActivity"
android:label="@string/app_name"
@ -24,12 +27,17 @@
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="19" />
<uses-sdk android:minSdkVersion="19"
android:targetSdkVersion="26" />
<uses-feature android:glEsVersion="0x00020000" />
<uses-feature android:name="android.software.leanback" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<uses-feature android:name="android.hardware.gamepad" android:required="false"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

View File

@ -44,13 +44,12 @@ and extract it to stk-code/lib. It contains sources of libraries that are used
in STK, but are not availiable in stk-code repository (curl, freetype, openal).
You need also Android SDK for android-19 platform (the API for Android 4.4) and
Android NDK. Note that NDK >= r15b is atm. not supported. Version r12b is
Android NDK. Note that NDK >= r15 is atm. not supported. Version r12b is
strongly recommended, because it's known that it works without issues.
You need to create proper "android-sdk" and "android-ndk" symlinks in the
directory with Android project, so that the compilation script will have access
to the SDK and NDK. These paths can be also set in SDK_PATH and NDK_PATH
environmental variables.
to the SDK and NDK.
Before running the compilation, run the generate_assets script, so that
selected assets will be copied to "assets" directory, and then included in the
@ -67,22 +66,6 @@ If the assets directory is already prepared, you can run "./make.sh" command to
build the project and create an apk file. Note that all arguments are passed to
the make command, so that you can run "./make.sh -j5" for multi-threaded build.
If you want to prepare a package for particular architecture, you can choose it
by setting the COMPILE_ARCH environmental variable. At this stage, supported
architectures are "armv7", "x86" and "aarch64". The default is "armv7".
You can choose build type by setting BUILD_TYPE environment variable to "debug"
or "release". The default is debug build. Note that if you choose release build,
you have to manually sign the apk with your key and run zipalign.
Additionally you can choose the build tool by setting BUILD_TOOL environment
variable to "gradle" or "ant". Note that ant has been already removed from
Android SDK, so you have to use SDK <= 25.2.5 for building with ant. By default
the BUILD_TOOL is set to "gradle".
You can override the SDK build-tools version by setting the BUILD_TOOLS_VER
environment variable.
Basically if all dependencies are installed in the system, it should be enough
to just run:
@ -93,6 +76,41 @@ to just run:
--------------------------------------------------------------------------------
ENVIRONMENT VARIABLES
--------------------------------------------------------------------------------
COMPILE_ARCH - Allows to choose CPU architecture for which the package will
be compiled.
Possible values: armv7, aarch64, x86, x86_64.
Default is: armv7.
BUILD_TYPE - Allows to set build type.
Possible values: debug, release, beta.
Default is: debug.
BUILD_TOOL - Allows to choose a tool that is used for creating package.
Note that ant has been already removed from Android SDK, so
you have to use SDK <= 25.2.5 for building with ant.
Possible values: ant, gradle.
Default is: gradle.
BUILD_TOOLS_VER - Allows to override the SDK build-tools version.
SDK_PATH - Path to SDK directory
NDK_PATH - Path to NDK directory
PROJECT_VERSION - Set Supertuxkart version number, for example "0.9.3" or
"git20170409" or whatever.
Default is: git.
PROJECT_CODE - Set Supertuxkart version code that is used in the manifest
file.
Default is: 1.
--------------------------------------------------------------------------------
RELEASE BUILD
--------------------------------------------------------------------------------
@ -100,29 +118,13 @@ to just run:
Making a release build is similar to typical compilation, but there are few
additional things to do.
You have to change version numbers. This is important, because assets manager
in STK checks these numbers and detects if already extracted data files are
You have to set PROJECT_VERSION variable. This is important, because assets
manager in STK checks that value and detects if already extracted data files are
up to date. So that when you will install new STK version, this will force new
data extraction automatically.
So that you have to:
1. Change "data/supertuxkart.git" to "data/supertuxkart.VERSION_NUMBER"
2. Open "src/utils/constants.cpp" and change:
const char STK_VERSION[] = "git";
to
const char STK_VERSION[] = "VERSION_NUMBER";
where "VERSION_NUMBER" is for example "0.9.3" or "git20170409" or whatever.
3. You can also update these lines in "android/AndroidManifest.xml":
android:versionCode="1"
android:versionName="1.0"
The PROJECT_CODE variable typically should be set to a value higher than for
previous release, so that users will receive the upgrade.
Before compilation you have to set:

BIN
android/banner.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

View File

@ -15,7 +15,7 @@ apply plugin: 'com.android.application'
android
{
compileSdkVersion sdk_version.toInteger()
compileSdkVersion compile_sdk_version.toInteger()
buildToolsVersion build_tools_ver
sourceSets

View File

@ -43,7 +43,8 @@ export RUN_OPTIMIZE_SCRIPT=0
export DECREASE_QUALITY=1
export CONVERT_TO_JPG=1
export CONVERT_TO_JPG_BLACKLIST="data/karts/hexley/hexley_kart_diffuse.png"
export CONVERT_TO_JPG_BLACKLIST="data/karts/hexley/hexley_kart_diffuse.png \
data/models/traffic_light.png"
export BLACKLIST_FILES="data/music/cocoa_river_fast.ogg2"
@ -179,6 +180,9 @@ convert_image()
echo "Couldn't convert $FILE file"
return
fi
SCALE_CMD=""
QUALITY_CMD=""
if [ $W -gt $TEXTURE_SIZE ] || [ $H -gt $TEXTURE_SIZE ]; then
if [ $W -gt $H ]; then

View File

@ -22,25 +22,47 @@ export NDK_ABI_ARMV7=armeabi-v7a
export ARCH_ARMV7=arm
export HOST_ARMV7=arm-linux-androideabi
export NDK_PLATFORM_ARMV7=android-19
export SDK_VERSION_ARMV7=19
export NDK_ABI_X86=x86
export ARCH_X86=x86
export HOST_X86=i686-linux-android
export NDK_PLATFORM_X86=android-19
export SDK_VERSION_X86=19
export MIN_SDK_VERSION_ARMV7=19
export TARGET_SDK_VERSION_ARMV7=26
export COMPILE_SDK_VERSION_ARMV7=26
export NDK_ABI_AARCH64=arm64-v8a
export ARCH_AARCH64=arm64
export HOST_AARCH64=aarch64-linux-android
export NDK_PLATFORM_AARCH64=android-21
export SDK_VERSION_AARCH64=21
export MIN_SDK_VERSION_AARCH64=21
export TARGET_SDK_VERSION_AARCH64=26
export COMPILE_SDK_VERSION_AARCH64=26
export NDK_ABI_X86=x86
export ARCH_X86=x86
export HOST_X86=i686-linux-android
export NDK_PLATFORM_X86=android-19
export MIN_SDK_VERSION_X86=19
export TARGET_SDK_VERSION_X86=26
export COMPILE_SDK_VERSION_X86=26
export NDK_ABI_X86_64=x86_64
export ARCH_X86_64=x86_64
export HOST_X86_64=x86_64-linux-android
export NDK_PLATFORM_X86_64=android-21
export MIN_SDK_VERSION_X86_64=21
export TARGET_SDK_VERSION_X86_64=26
export COMPILE_SDK_VERSION_X86_64=26
export APP_NAME_RELEASE="SuperTuxKart"
export APP_NAME_DEBUG="SuperTuxKart Debug"
export PACKAGE_NAME_RELEASE="org.supertuxkart.stk"
export PACKAGE_NAME_DEBUG="org.supertuxkart.stk_dev"
export APP_DIR_NAME_RELEASE="supertuxkart"
export APP_ICON_RELEASE="$DIRNAME/icon.png"
export APP_NAME_BETA="SuperTuxKart Beta"
export PACKAGE_NAME_BETA="org.supertuxkart.stk_beta"
export APP_DIR_NAME_BETA="supertuxkart-beta"
export APP_ICON_BETA="$DIRNAME/icon-dbg.png"
export APP_NAME_DEBUG="SuperTuxKart Debug"
export PACKAGE_NAME_DEBUG="org.supertuxkart.stk_dbg"
export APP_DIR_NAME_DEBUG="supertuxkart-dbg"
export APP_ICON_DEBUG="$DIRNAME/icon-dbg.png"
@ -88,22 +110,36 @@ if [ "$COMPILE_ARCH" = "armv7" ]; then
export NDK_ABI=$NDK_ABI_ARMV7
export ARCH=$ARCH_ARMV7
export HOST=$HOST_ARMV7
export SDK_VERSION=$SDK_VERSION_ARMV7
elif [ "$COMPILE_ARCH" = "x86" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_X86
export NDK_ABI=$NDK_ABI_X86
export ARCH=$ARCH_X86
export HOST=$HOST_X86
export SDK_VERSION=$SDK_VERSION_X86
export MIN_SDK_VERSION=$MIN_SDK_VERSION_ARMV7
export TARGET_SDK_VERSION=$TARGET_SDK_VERSION_ARMV7
export COMPILE_SDK_VERSION=$COMPILE_SDK_VERSION_ARMV7
elif [ "$COMPILE_ARCH" = "aarch64" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_AARCH64
export NDK_ABI=$NDK_ABI_AARCH64
export ARCH=$ARCH_AARCH64
export HOST=$HOST_AARCH64
export SDK_VERSION=$SDK_VERSION_AARCH64
export MIN_SDK_VERSION=$MIN_SDK_VERSION_AARCH64
export TARGET_SDK_VERSION=$TARGET_SDK_VERSION_AARCH64
export COMPILE_SDK_VERSION=$COMPILE_SDK_VERSION_AARCH64
elif [ "$COMPILE_ARCH" = "x86" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_X86
export NDK_ABI=$NDK_ABI_X86
export ARCH=$ARCH_X86
export HOST=$HOST_X86
export MIN_SDK_VERSION=$MIN_SDK_VERSION_X86
export TARGET_SDK_VERSION=$TARGET_SDK_VERSION_X86
export COMPILE_SDK_VERSION=$COMPILE_SDK_VERSION_X86
elif [ "$COMPILE_ARCH" = "x86_64" ]; then
export NDK_PLATFORM=$NDK_PLATFORM_X86_64
export NDK_ABI=$NDK_ABI_X86_64
export ARCH=$ARCH_X86_64
export HOST=$HOST_X86_64
export MIN_SDK_VERSION=$MIN_SDK_VERSION_X86_64
export TARGET_SDK_VERSION=$TARGET_SDK_VERSION_X86_64
export COMPILE_SDK_VERSION=$COMPILE_SDK_VERSION_X86_64
else
echo "Unknow COMPILE_ARCH: $COMPILE_ARCH. Possible values are: " \
"armv7, aarch64, x86"
"armv7, aarch64, x86, x86_64"
exit
fi
@ -118,6 +154,7 @@ if [ "$BUILD_TYPE" = "debug" ] || [ "$BUILD_TYPE" = "Debug" ]; then
export IS_DEBUG_BUILD=1
export APP_NAME="$APP_NAME_DEBUG"
export PACKAGE_NAME="$PACKAGE_NAME_DEBUG"
export APP_DIR_NAME="$APP_DIR_NAME_DEBUG"
export APP_ICON="$APP_ICON_DEBUG"
elif [ "$BUILD_TYPE" = "release" ] || [ "$BUILD_TYPE" = "Release" ]; then
export ANT_BUILD_TYPE="release"
@ -125,7 +162,16 @@ elif [ "$BUILD_TYPE" = "release" ] || [ "$BUILD_TYPE" = "Release" ]; then
export IS_DEBUG_BUILD=0
export APP_NAME="$APP_NAME_RELEASE"
export PACKAGE_NAME="$PACKAGE_NAME_RELEASE"
export APP_DIR_NAME="$APP_DIR_NAME_RELEASE"
export APP_ICON="$APP_ICON_RELEASE"
elif [ "$BUILD_TYPE" = "beta" ] || [ "$BUILD_TYPE" = "Beta" ]; then
export ANT_BUILD_TYPE="release"
export GRADLE_BUILD_TYPE="assembleRelease"
export IS_DEBUG_BUILD=0
export APP_NAME="$APP_NAME_BETA"
export PACKAGE_NAME="$PACKAGE_NAME_BETA"
export APP_DIR_NAME="$APP_DIR_NAME_BETA"
export APP_ICON="$APP_ICON_BETA"
else
echo "Unsupported BUILD_TYPE: $BUILD_TYPE. Possible values are: " \
"debug, release"
@ -186,6 +232,47 @@ if [ -z "$BUILD_TOOLS_VER" ] || [ ! -d "$SDK_PATH/build-tools/$BUILD_TOOLS_VER"
exit
fi
# Set project version and code
if [ -f "$DIRNAME/obj/project_version" ]; then
PROJECT_VERSION_PREV=$(cat "$DIRNAME/obj/project_version")
if [ -z "$PROJECT_VERSION" ]; then
PROJECT_VERSION="$PROJECT_VERSION_PREV"
elif [ "$PROJECT_VERSION" != "$PROJECT_VERSION_PREV" ]; then
echo "Different project version has been set. Forcing recompilation..."
touch -c "$DIRNAME/Android.mk"
fi
fi
if [ -z "$PROJECT_VERSION" ]; then
if [ $IS_DEBUG_BUILD -ne 0 ]; then
PROJECT_VERSION="git"
else
echo "Error: Variable PROJECT_VERSION is not set. It must have unique" \
"value for release build."
exit
fi
fi
if [ -z "$PROJECT_CODE" ]; then
if [ $IS_DEBUG_BUILD -ne 0 ]; then
PROJECT_CODE="1"
else
echo "Error: Variable PROJECT_CODE is not set."
exit
fi
fi
if [ -d "$DIRNAME/assets/data" ]; then
if [ ! -f "$DIRNAME/assets/data/supertuxkart.$PROJECT_VERSION" ]; then
echo "Error: supertuxkart.$PROJECT_VERSION doesn't exist in" \
"assets/data directory."
exit
fi
fi
echo "$PROJECT_VERSION" > "$DIRNAME/obj/project_version"
# Standalone toolchain
if [ ! -f "$DIRNAME/obj/make_standalone_toolchain.stamp" ]; then
@ -370,27 +457,41 @@ echo "<resources>" >> "$STRINGS_FILE"
echo " <string name=\"app_name\">$APP_NAME</string>" >> "$STRINGS_FILE"
echo "</resources>" >> "$STRINGS_FILE"
sed -i "s/minSdkVersion=\".*\"/minSdkVersion=\"$SDK_VERSION\"/g" \
sed -i "s/minSdkVersion=\".*\"/minSdkVersion=\"$MIN_SDK_VERSION\"/g" \
"$DIRNAME/AndroidManifest.xml"
sed -i "s/targetSdkVersion=\".*\"/targetSdkVersion=\"$TARGET_SDK_VERSION\"/g" \
"$DIRNAME/AndroidManifest.xml"
sed -i "s/package=\".*\"/package=\"$PACKAGE_NAME\"/g" \
"$DIRNAME/AndroidManifest.xml"
sed -i "s/versionName=\".*\"/versionName=\"$PROJECT_VERSION\"/g" \
"$DIRNAME/AndroidManifest.xml"
sed -i "s/versionCode=\".*\"/versionCode=\"$PROJECT_CODE\"/g" \
"$DIRNAME/AndroidManifest.xml"
cp "banner.png" "$DIRNAME/res/drawable/banner.png"
cp "$APP_ICON" "$DIRNAME/res/drawable/icon.png"
convert -scale 72x72 "$APP_ICON" "$DIRNAME/res/drawable-hdpi/icon.png"
convert -scale 48x48 "$APP_ICON" "$DIRNAME/res/drawable-mdpi/icon.png"
convert -scale 96x96 "$APP_ICON" "$DIRNAME/res/drawable-xhdpi/icon.png"
convert -scale 144x144 "$APP_ICON" "$DIRNAME/res/drawable-xxhdpi/icon.png"
if [ -f "/usr/lib/jvm/java-8-openjdk-amd64/bin/java" ]; then
export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
export PATH=$JAVA_HOME/bin:$PATH
fi
if [ "$BUILD_TOOL" = "gradle" ]; then
export ANDROID_HOME="$SDK_PATH"
gradle -Psdk_version=$SDK_VERSION \
-Pbuild_tools_ver="$BUILD_TOOLS_VER" \
gradle -Pcompile_sdk_version=$COMPILE_SDK_VERSION \
-Pbuild_tools_ver="$BUILD_TOOLS_VER" \
$GRADLE_BUILD_TYPE
elif [ "$BUILD_TOOL" = "ant" ]; then
ant -Dsdk.dir="$SDK_PATH" \
-Dtarget=$NDK_PLATFORM \
-Dtarget="android-$TARGET_SDK_VERSION" \
$ANT_BUILD_TYPE
fi

48
cmake/FindENet.cmake Normal file
View File

@ -0,0 +1,48 @@
# - Try to find enet
# Once done this will define
#
# ENET_FOUND - system has enet
# ENet_INCLUDE_DIRS - the enet include directory
# ENet_LIBRARIES - the libraries needed to use enet
#
# $ENETDIR is an environment variable used for finding enet.
#
# Borrowed from The Mana World
# http://themanaworld.org/
#
# Several changes and additions by Fabian 'x3n' Landau
# Lots of simplifications by Adrian Friedli
# > www.orxonox.net <
FIND_PATH(ENet_INCLUDE_DIRS enet/enet.h
PATHS
$ENV{ENETDIR}
/usr/local
/usr
PATH_SUFFIXES include
)
FIND_LIBRARY(ENet_LIBRARY
NAMES enet
PATHS
$ENV{ENETDIR}
/usr/local
/usr
PATH_SUFFIXES lib
)
# handle the QUIETLY and REQUIRED arguments and set ENET_FOUND to TRUE if
# all listed variables are TRUE
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(ENet DEFAULT_MSG ENet_LIBRARY ENet_INCLUDE_DIRS)
IF (ENET_FOUND)
IF(WIN32)
SET(WINDOWS_ENET_DEPENDENCIES "ws2_32;winmm")
SET(ENet_LIBRARIES ${ENet_LIBRARY} ${WINDOWS_ENET_DEPENDENCIES})
ELSE(WIN32)
SET(ENet_LIBRARIES ${ENet_LIBRARY})
ENDIF(WIN32)
ENDIF (ENET_FOUND)
MARK_AS_ADVANCED(ENet_LIBRARY ENet_LIBRARIES ENet_INCLUDE_DIRS)

View File

@ -13,7 +13,7 @@ SET(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
execute_process(COMMAND sh -c "ls /usr/lib/gcc/x86_64-w64-mingw32/ | grep posix | tr -d '\n'" OUTPUT_VARIABLE MINGW_DEPS_FOLDER)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /usr/lib/gcc/x86_64-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies-64bit)
SET(CMAKE_FIND_ROOT_PATH /usr/x86_64-w64-mingw32 /usr/lib/gcc/x86_64-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies-mingw-64bit ${PROJECT_SOURCE_DIR}/dependencies-64bit)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search

View File

@ -13,7 +13,7 @@ SET(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
execute_process(COMMAND sh -c "ls /usr/lib/gcc/i686-w64-mingw32/ | grep posix | tr -d '\n'" OUTPUT_VARIABLE MINGW_DEPS_FOLDER)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32 /usr/lib/gcc/i686-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies)
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32 /usr/lib/gcc/i686-w64-mingw32/${MINGW_DEPS_FOLDER}/ ${PROJECT_SOURCE_DIR}/dependencies-mingw ${PROJECT_SOURCE_DIR}/dependencies)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search

View File

@ -1,6 +1,6 @@
= SuperTuxKart =
A Kart Racing Game Featuring Tux & Friends
- Version git
- Version $STKVERSION$
- Visit us at supertuxkart.net
- SuperTuxKart is released under GPL 3.0
- Assets are released under Creative Commons and other licenses

View File

@ -1,15 +1,20 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="abyss" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<best>
<karts number="7"/>
<requirements position="1" time="150"/>
</best>
<hard>
<karts number="5"/>
<requirements position="1" time="160"/>
<karts number="6"/>
<requirements position="1" time="165"/>
</hard>
<medium>
<karts number="4"/>
<karts number="5"/>
<requirements time="197"/>
</medium>
<easy>

View File

@ -1,21 +1,26 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="candela_city" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="70"/>
<requirements trophies="75"/>
<best>
<karts number="9"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="8"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="7"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="6"/>
<requirements position="1"/>
</easy>
<unlock kart="sara_the_wizard"/>
<unlock kart="sara_the_racer"/>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="cocoa_temple" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="5"/>
<best>
<karts number="8"/>
<requirements position="1" time="140"/>
</best>
<hard>
<karts number="5"/>
<karts number="7"/>
<requirements position="1" time="170"/>
</hard>
<medium>
<karts number="4"/>
<karts number="6"/>
<requirements time="210"/>
</medium>
<easy>
<karts number="4"/>
<karts number="5"/>
<requirements time="300"/>
</easy>
</challenge>

View File

@ -1,15 +1,20 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="cornfield_crossing" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<best>
<karts number="7"/>
<requirements position="1" time="140"/>
</best>
<hard>
<karts number="5"/>
<karts number="6"/>
<requirements position="1" time="165"/>
</hard>
<medium>
<karts number="4"/>
<karts number="5"/>
<requirements time="195"/>
</medium>
<easy>

View File

@ -1,9 +1,14 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="fortmagma" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="180"/>
<requirements trophies="190"/>
<best>
<karts number="2" aiIdent="nolok" superPower="nolokBoss"/>
<requirements position="1"/>
</best>
<hard>
<karts number="2" aiIdent="nolok" superPower="nolokBoss"/>
<requirements position="1"/>
@ -19,6 +24,5 @@
<unlock kart="gnu"/>
<unlock kart="nolok"/>
<unlock difficulty="difficulty_best"/>
<unlock track="fortmagma"/>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<grandprix id="1_penguinplayground"/>
<mode major="grandprix" minor="quickrace"/>
<requirements trophies="40"/>
<requirements trophies="30"/>
<best>
<karts number="7"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="6"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="5"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="4"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<grandprix id="2_offthebeatentrack"/>
<mode major="grandprix" minor="quickrace"/>
<requirements trophies="85"/>
<requirements trophies="70"/>
<best>
<karts number="8"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="7"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="6"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="5"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<grandprix id="3_tothemoonandback"/>
<mode major="grandprix" minor="quickrace"/>
<requirements trophies="125"/>
<requirements trophies="120"/>
<best>
<karts number="9"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="8"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="7"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="6"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<grandprix id="4_atworldsend"/>
<mode major="grandprix" minor="quickrace"/>
<requirements trophies="165"/>
<best>
<karts number="10"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="9"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="8"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="7"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,20 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="gran_paradiso_island" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="95"/>
<requirements trophies="80"/>
<best>
<karts number="9"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="8"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="7"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="6"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="greenvalley" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="95"/>
<requirements trophies="90"/>
<best>
<karts number="9"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="8"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="7"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="4"/>
<karts number="6"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="hacienda" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="45"/>
<requirements trophies="25"/>
<best>
<karts number="8"/>
<requirements position="1" time="130"/>
</best>
<hard>
<karts number="5"/>
<requirements position="2" time="170"/>
<karts number="7"/>
<requirements position="1" time="160"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="187"/>
<karts number="6"/>
<requirements position="2" time="187"/>
</medium>
<easy>
<karts number="4"/>
<karts number="5"/>
<requirements time="260"/>
</easy>
</challenge>

View File

@ -1,20 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="lighthouse" laps="3"/>
<challenge version="3">
<unlock_list list="false"/>
<track id="lighthouse" laps="4"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="135"/>
<requirements trophies="125"/>
<best>
<karts number="10"/>
<requirements position="1" time="120"/>
</best>
<hard>
<karts number="5"/>
<requirements time="110" position="1"/>
<karts number="9"/>
<requirements position="1" time="140"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="145" position="1"/>
<karts number="8"/>
<requirements position="1" time="190"/>
</medium>
<easy>
<karts number="3"/>
<requirements time="185"/>
<karts number="7"/>
<requirements time="250"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="mansion" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="110"/>
<requirements trophies="100"/>
<best>
<karts number="9"/>
<requirements position="1" time="100"/>
</best>
<hard>
<karts number="5"/>
<requirements time="130"/>
<karts number="8"/>
<requirements position="1" time="115"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="130"/>
<karts number="7"/>
<requirements time="140"/>
</medium>
<easy>
<karts number="4"/>
<requirements time="160"/>
<karts number="6"/>
<requirements time="180"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="mines" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="150"/>
<requirements trophies="140"/>
<best>
<karts number="10"/>
<requirements position="1" time="140"/>
</best>
<hard>
<karts number="4"/>
<requirements time="170"/>
<karts number="9"/>
<requirements position="1" time="160"/>
</hard>
<medium>
<karts number="4"/>
<requirements time="190"/>
<karts number="8"/>
<requirements position="2" time="190"/>
</medium>
<easy>
<karts number="4"/>
<karts number="7"/>
<requirements time="255"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="minigolf" laps="3"/>
<challenge version="3">
<unlock_list list="false"/>
<track id="minigolf" laps="4"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="150"/>
<requirements trophies="130"/>
<best>
<karts number="10"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="9"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="8"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="3"/>
<karts number="7"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,20 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="olivermath" laps="3"/>
<challenge version="3">
<unlock_list list="false"/>
<track id="olivermath" laps="5"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<best>
<karts number="7"/>
<requirements position="1" time="95"/>
</best>
<hard>
<karts number="5"/>
<requirements position="1" time="65"/>
<karts number="6"/>
<requirements position="1" time="110"/>
</hard>
<medium>
<karts number="5"/>
<requirements position="1" time="85"/>
<requirements position="1" time="140"/>
</medium>
<easy>
<karts number="5"/>
<requirements position="1" time="130"/>
<karts number="4"/>
<requirements position="1" time="210"/>
</easy>
</challenge>

View File

@ -1,12 +1,17 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="sandtrack" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<best>
<karts number="1"/>
<requirements energy="20" time="135"/>
</best>
<hard>
<karts number="1"/>
<requirements energy="18" time="167"/>
<requirements energy="18" time="165"/>
</hard>
<medium>
<karts number="1"/>

View File

@ -1,15 +1,20 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="scotland" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="0"/>
<best>
<karts number="7"/>
<requirements position="1" time="140"/>
</best>
<hard>
<karts number="5"/>
<karts number="6"/>
<requirements position="1" time="165"/>
</hard>
<medium>
<karts number="4"/>
<karts number="5"/>
<requirements time="185"/>
</medium>
<easy>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="snowmountain" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="60"/>
<requirements trophies="115"/>
<best>
<karts number="10"/>
<requirements position="1" time="120"/>
</best>
<hard>
<karts number="5"/>
<requirements time="160"/>
<karts number="9"/>
<requirements position="2" time="145"/>
</hard>
<medium>
<karts number="4"/>
<karts number="8"/>
<requirements time="187"/>
</medium>
<easy>
<karts number="4"/>
<karts number="7"/>
<requirements time="250"/>
</easy>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="snowtuxpeak" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="60"/>
<requirements trophies="45"/>
<best>
<karts number="8"/>
<requirements position="1" time="120"/>
</best>
<hard>
<karts number="5"/>
<requirements position="1" time="145"/>
<karts number="7"/>
<requirements position="1" time="140"/>
</hard>
<medium>
<karts number="4"/>
<karts number="6"/>
<requirements time="170"/>
</medium>
<easy>
<karts number="4"/>
<requirements time="195"/>
<karts number="5"/>
<requirements time="210"/>
</easy>
</challenge>

View File

@ -1,19 +0,0 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="stk_enterprise" laps="3"/>
<mode major="single" minor="followtheleader"/>
<requirements trophies="110"/>
<hard>
<karts number="6"/>
<requirements position="2"/>
</hard>
<medium>
<karts number="6"/>
<requirements position="2"/>
</medium>
<easy>
<karts number="5"/>
<requirements position="2"/>
</easy>
</challenge>

View File

@ -0,0 +1,24 @@
<?xml version="1.0"?>
<challenge version="3">
<unlock_list list="false"/>
<track id="stk_enterprise" laps="3"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="105"/>
<best>
<karts number="9"/>
<requirements position="1"/>
</best>
<hard>
<karts number="8"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="7"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="6"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<challenge version="3">
<unlock_list list="true"/>
<!-- This is the (rounded) point equivalent of finishing all challenges
in easy, except the final challenge -->
<requirements trophies="190"/>
<unlock kart="amanda"/>
</challenge>

View File

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<challenge version="3">
<unlock_list list="true"/>
<!-- This is the point equivalent of finishing the
story mode with 8 supertux challenges and the rest in gold -->
<requirements trophies="280"/>
<unlock kart="sara_the_wizard"/>
</challenge>

View File

@ -0,0 +1,8 @@
<?xml version="1.0"?>
<challenge version="3">
<unlock_list list="true"/>
<!-- This is the point equivalent of finishing the
story mode with all gold except 14 silver challenges -->
<requirements trophies="250"/>
<unlock difficulty="difficulty_best"/>
</challenge>

View File

@ -1,19 +1,24 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="volcano_island" laps="2"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="15"/>
<best>
<karts number="8"/>
<requirements position="1"/>
</best>
<hard>
<karts number="5"/>
<karts number="7"/>
<requirements position="1"/>
</hard>
<medium>
<karts number="4"/>
<karts number="6"/>
<requirements position="1"/>
</medium>
<easy>
<karts number="4"/>
<karts number="5"/>
<requirements position="1"/>
</easy>
</challenge>

View File

@ -1,12 +1,17 @@
<?xml version="1.0"?>
<challenge version="2">
<challenge version="3">
<unlock_list list="false"/>
<track id="xr591" laps="2"/>
<mode major="single" minor="quickrace"/>
<requirements trophies="135"/>
<best>
<karts number="1"/>
<requirements energy="20" time="100"/>
</best>
<hard>
<karts number="1"/>
<requirements energy="18" time="120"/>
<requirements energy="18" time="115"/>
</hard>
<medium>
<karts number="1"/>
@ -17,5 +22,3 @@
<requirements energy="12" time="180"/>
</easy>
</challenge>

View File

@ -1,9 +1,14 @@
<?xml version="1.0"?>
<challenge version="2">
<track id="zengarden" laps="3"/>
<challenge version="3">
<unlock_list list="false"/>
<track id="zengarden" laps="4"/>
<mode major="single" minor="timetrial"/>
<requirements trophies="45"/>
<requirements trophies="35"/>
<best>
<karts number="3"/>
<requirements position="1"/>
</best>
<hard>
<karts number="2"/>
<requirements position="1"/>

View File

@ -3,7 +3,7 @@
<track id="sandtrack" laps="3" reverse="false" />
<track id="cornfield_crossing" laps="3" reverse="false" />
<track id="olivermath" laps="4" reverse="false" />
<track id="olivermath" laps="5" reverse="false" />
<track id="abyss" laps="3" reverse="false" />
<track id="scotland" laps="3" reverse="false" />

View File

@ -1,10 +1,10 @@
<supertuxkart_grand_prix name="Off the beaten track">
<track id="cocoa_temple" laps="3" reverse="false" />
<track id="snowmountain" laps="3" reverse="false" />
<track id="hacienda" laps="3" reverse="false" />
<track id="zengarden" laps="4" reverse="false" />
<track id="snowtuxpeak" laps="3" reverse="false" />
<track id="cocoa_temple" laps="3" reverse="false" />
<track id="hacienda" laps="3" reverse="false" />
<track id="zengarden" laps="4" reverse="false" />
<track id="volcano_island" laps="2" reverse="false" />
<track id="snowtuxpeak" laps="3" reverse="false" />
</supertuxkart_grand_prix>

View File

@ -2,10 +2,9 @@
<supertuxkart_grand_prix name="To the moon and back">
<track id="gran_paradiso_island" laps="3" reverse="false" />
<track id="greenvalley" laps="2" reverse="false" />
<track id="greenvalley" laps="3" reverse="false" />
<track id="mansion" laps="3" reverse="false" />
<track id="stk_enterprise" laps="3" reverse="false" />
<track id="volcano_island" laps="2" reverse="false" />
<track id="candela_city" laps="3" reverse="false" />
</supertuxkart_grand_prix>

View File

@ -1,11 +1,10 @@
<supertuxkart_grand_prix name="At World's End">
<track id="fortmagma" laps="3" reverse="false" />
<track id="minigolf" laps="3" reverse="false" />
<track id="lighthouse" laps="4" reverse="false" />
<track id="snowmountain" laps="3" reverse="false" />
<track id="minigolf" laps="4" reverse="false" />
<track id="xr591" laps="3" reverse="false" />
<track id="mines" laps="3" reverse="false" />
<track id="lighthouse" laps="4" reverse="false" />
</supertuxkart_grand_prix>

View File

@ -24,7 +24,11 @@ title_font, by Marianne Gagnon (Auria), released under CC-BY-SA 3+
screen*.png, by Marianne Gagnon (Auria), including elements from the public domain Tango icon set
Gauge and bar by Totoplus62, released under CC-BY-SA 3
speed.png by Alayan, with elements by Totoplus62, released under CC-BY-SA 3
speed*.png by Alayan, released under CC-0
gauge*.png by Alayan, released under CC-0
menu_story by tavariz91, released under CC-0
@ -32,6 +36,8 @@ mass.png by Auria, released under CC-0
power.png by Auria, based on https://openclipart.org/detail/193925/check-engine and https://openclipart.org/detail/144799/power-icon, released under CC-0
crown.png by glitch, from https://openclipart.org/detail/210257/misc-game-crown, released under public domain
====
Glass Skin by Auria, under CC-BY-SA 3+

View File

@ -10,10 +10,13 @@
<box id="filter_box" width="97%" height="75" layout="vertical-row" align="center">
<div x="0" y="0" width="98%" height="100%" layout="horizontal-row" align="center">
<textbox id="filter_name" proportion="7" align="center" />
<spacer width="10" />
<spacer width="20" />
<label text="Updated" align="center" I18N="In addons screen, in the filtering bar, to enable a filter that will show only recently updated items"/>
<spacer width="10" />
<spinner id="filter_date" proportion="8" align="center" min_value="0" wrap_around="true"/>
<spacer width="10" />
<label text="Rating >=" align="center" I18N="In addons screen, in the filtering bar, to enable a filter that will show only items with good rating"/>
<spacer width="10" />
<spinner id="filter_rating" proportion="5" align="center" min_value="0" wrap_around="true"/>
<icon-button id="filter_search" height="100%" icon="gui/search.png"/>
</div>

View File

@ -2,7 +2,7 @@
Icons firstly made for SuperTuxKart UI on Android.
Files: blur_bg_button ; blur_bg_button_focus ; directionnal_wheel ; drift ; nitro ; nitro_empty ; pause ; thunderbird_reset ; wing_mirror
Files: blur_bg_button ; blur_bg_button_focus ; steering_wheel ; drift ; nitro ; nitro_empty ; pause ; thunderbird_reset ; wing_mirror
- CC BY-SA 4.0 / author: Néd J. Édoire
# License information:

View File

Before

Width:  |  Height:  |  Size: 144 KiB

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@ -15,7 +15,7 @@
<spacer width="20" height="13" />
</box>
<tabs width="100%" height="25" id="trackgroups">
<tabs width="100%" height="5%" id="trackgroups">
<button id="standard" I18N="track group" text="Standard"/>
<button id="addons" I18N="track group" text="Add-Ons"/>
<button id="all" I18N="track group" text="All"/>

BIN
data/gui/crown.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
data/gui/cup_platinum.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -136,7 +136,7 @@
<div layout="horizontal-row" width="100%" proportion="1">
<label text="Particles Effects" I18N="Video settings" width="40%"/>
<spacer width="10" height="10"/>
<gauge id="particles_effects" min_value="0" max_value="2" width="50%" />
<gauge id="particles_effects" min_value="1" max_value="2" width="50%" />
</div>
<spacer height="4" width="10" />

View File

@ -15,7 +15,7 @@
<spacer width="20" height="13" />
</box>
<tabs width="100%" height="25" id="trackgroups">
<tabs width="100%" height="5%" id="trackgroups">
<button id="standard" I18N="track group" text="Standard"/>
<button id="addons" I18N="track group" text="Add-Ons"/>
<button id="all" I18N="track group" text="All"/>

View File

@ -15,7 +15,7 @@
</box>
<!-- Populated dynamically at runtime -->
<tabs width="100%" height="30" id="trackgroups"> </tabs>
<tabs width="100%" height="5%" id="trackgroups"> </tabs>
<spacer height="50" />

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -16,7 +16,7 @@
</box>
<!-- Populated dynamically at runtime -->
<tabs width="100%" height="30" id="gpgroups"> </tabs>
<tabs width="100%" height="5%" id="gpgroups"> </tabs>
<spacer height="20" />

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
<box width="100%" height="80%" padding="10" layout="vertical-row">
<bright width="100%" text="Select a type of control that you prefer" align="center" text_align="left" word_wrap="true"/>
<spacer height="7%" width="10"/>
<ribbon id="control_type" proportion="1" width="100%" align="center">
<icon-button id="accelerometer" width="fit" height="fit" icon="gui/difficulty_medium.png"
I18N="Control type" text="Accelerometer"/>
<icon-button id="steering_wheel" width="fit" height="fit" icon="gui/difficulty_hard.png"
I18N="Control type" text="Steering wheel"/>
</ribbon>
<spacer height="12%" width="10"/>
<label width="100%" text="You can change it later in touch device settings." text_align="left" word_wrap="true"/>
</box>
<spacer height="7%" width="10"/>
<div width="25%" height="10%" layout="horizontal-row" align="center">
<button id="close" text="Apply" width="100%" height="100%" align="center"/>
</div>
</div>
</stkgui>

View File

@ -1,16 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="2%" y="10%" width="96%" height="70%" layout="vertical-row">
<div id="kart-screen" layout="horizontal-row" width="100%" height="60%" proportion="10" align="center">
<placeholder width="100%" layout="horizontal-row" height="100%">
<!-- Content is added programmatically -->
</placeholder>
<div x="2%" y="0%" width="96%" height="95%" layout="vertical-row">
<div id="kart-screen" layout="horizontal-row" width="100%" proportion="1" align="center">
<model id="model" width="100%" layout="horizontal-row" height="100%">
</model>
</div>
<label text="0 to use the original color, otherwise pick one from slider."
width="100%" text_align="center" word_wrap="true"
I18N="In the kart color slider dialog"/>
<spacer height="30" width="10"/>
<div proportion="1" width="100%" layout="horizontal-row">
<div height="fit" width="100%" layout="horizontal-row">
<gauge id="color-slider" min_value="0" max_value="100" proportion="1"/>
</div>
<spacer height="30" width="10"/>

View File

@ -19,7 +19,7 @@
</box>
<!-- Groups will be added dynamically at runtime -->
<tabs width="98%" x="1%" height="25" id="kartgroups">
<tabs width="98%" x="1%" height="5%" id="kartgroups">
</tabs>
<spacer width="100%" height="2%"/>
</div>

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="1%" y="1%" width="98%" height="99%" layout="vertical-row" >
<header width="80%"
I18N="In the kart selection (player setup) screen"
text="Choose a Kart"
align="center" text_align="center" />
<placeholder id="playerskarts" width="100%" align="center" proportion="4">
<!-- Contents is added programatically -->
</placeholder>
<spacer height="15" width="25"/>
<box proportion="2" width="100%" layout="vertical-row" padding="2">
<ribbon_grid id="karts" proportion="1" square_items="true" width="100%" align="center"
child_width="90" child_height="90" max_rows="3"/>
</box>
<!-- Groups will be added dynamically at runtime -->
<tabs width="98%" x="1%" height="25" id="kartgroups">
</tabs>
<spacer width="100%" height="2%"/>
</div>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
</stkgui>

View File

@ -35,7 +35,7 @@
<label proportion="1" align="center" text_align="right" I18N="In the multitouch settings screen" text="Accelerometer"/>
<div proportion="1" align="center" height="fit" layout="horizontal-row" >
<spacer width="40" height="10" />
<spinner id="accelerometer" proportion="1"/>
<checkbox id="accelerometer"/>
</div>
</div>

BIN
data/gui/mystery_unlock.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@ -2,69 +2,70 @@
<stkgui>
<div x="0" y="0" width="100%" height="100%" layout="vertical-row" >
<header id="title" text_align="center" width="80%" align="center" I18N="In the server creation screen" text="Server Creation"/>
<spacer height="15" width="10"/>
<box proportion="4" width="90%" layout="vertical-row" align="center">
<div width="90%" align="center" layout="vertical-row" y="2%" height="96%">
<div width="100%" align="center" layout="vertical-row" height="fit" >
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Name of the server"/>
<textbox proportion="1" id="name" I18N="In the server creation screen"/>
</div>
<box proportion="1" width="90%" layout="vertical-row" align="center">
<spacer height="20" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Max. number of players"/>
<gauge id="max_players" proportion="1" min_value="2" max_value="12"/>
</div>
<spacer height="20" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Password (optional)"/>
<textbox proportion="1" id="password" I18N="In the server creation screen"/>
</div>
<spacer height="20" width="20"/>
<label width="100%" height="fit" text_align="left" I18N="In the server creation screen" text="Difficulty"/>
<!--<gauge id="difficulty" proportion="1" min_value="1" max_value="4"/>-->
<ribbon id="difficulty" height="135" width="90%" align="center">
<icon-button id="novice" width="128" height="128" icon="gui/difficulty_easy.png"
I18N="Difficulty" text="Novice"/>
<icon-button id="intermediate" width="128" height="128" icon="gui/difficulty_medium.png"
I18N="Difficulty" text="Intermediate"/>
<icon-button id="expert" width="128" height="128" icon="gui/difficulty_hard.png"
I18N="Difficulty" text="Expert"/>
<icon-button id="best" width="128" height="128" icon="gui/difficulty_best.png"
I18N="Difficulty" text="SuperTux"/>
</ribbon>
<spacer height="20" width="20"/>
<label width="100%" height="fit" text_align="left" I18N="In the server creation screen" text="Game mode"/>
<ribbon id="gamemode" height="135" width="50%" align="center">
<icon-button id="normal" width="128" height="128" icon="gui/mode_normal.png"
I18N="Multiplayer game mode" text="Normal Race"/>
<icon-button id="timetrial" width="128" height="128" icon="gui/mode_tt.png"
I18N="Multiplayer game mode" text="Time Trial"/>
</ribbon>
<!--
<scrollable_toolbar id="gamemode" height="135" width="90%" label_location="bottom" align="center"
child_width="135" child_height="135" />
-->
</div>
<label id="info" proportion="1" width="100%" align="center" text_align="center" word_wrap="true" text=""/>
<buttonbar id="options" x="0" y="0" width="25%" height="12%" align="center">
<icon-button id="create" width="64" height="64" icon="gui/green_check.png"
I18N="In the server creation screen" text="Create" label_location="bottom"/>
<icon-button id="cancel" width="64" height="64" icon="gui/main_quit.png"
I18N="In the server creation screen" text="Cancel" label_location="bottom"/>
</buttonbar>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Name of the server"/>
<textbox proportion="1" id="name" I18N="In the server creation screen"/>
</div>
<spacer height="10" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Max. number of players"/>
<gauge id="max_players" proportion="1" min_value="2"/>
</div>
<spacer height="10" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the server creation screen" text="Password (optional)"/>
<textbox proportion="1" id="password" I18N="In the server creation screen"/>
</div>
<spacer height="5" width="20"/>
<label width="100%" height="fit" text_align="left" I18N="In the server creation screen" text="Difficulty"/>
<ribbon id="difficulty" height="15%" width="90%" align="center">
<icon-button id="novice" width="128" height="128" icon="gui/difficulty_easy.png"
I18N="Difficulty" text="Novice"/>
<icon-button id="intermediate" width="128" height="128" icon="gui/difficulty_medium.png"
I18N="Difficulty" text="Intermediate"/>
<icon-button id="expert" width="128" height="128" icon="gui/difficulty_hard.png"
I18N="Difficulty" text="Expert"/>
<icon-button id="best" width="128" height="128" icon="gui/difficulty_best.png"
I18N="Difficulty" text="SuperTux"/>
</ribbon>
<label width="100%" height="fit" text_align="left" I18N="In the server creation screen" text="Game mode"/>
<ribbon id="gamemode" height="15%" width="90%" align="center">
<icon-button id="normal" width="128" height="128" icon="gui/mode_normal.png"
I18N="Multiplayer game mode" text="Normal Race"/>
<icon-button id="timetrial" width="128" height="128" icon="gui/mode_tt.png"
I18N="Multiplayer game mode" text="Time Trial"/>
<icon-button id="3strikes" width="128" height="128" icon="gui/mode_3strikes.png"
I18N="Multiplayer game mode" text="3 Strikes Battle"/>
<icon-button id="soccer" width="128" height="128" icon="gui/mode_soccer.png"
I18N="Multiplayer game mode" text="Soccer"/>
</ribbon>
<spacer height="10" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label id="more-options" proportion="1" text_align="left"/>
<spinner id="more-options-spinner" proportion="1" wrap_around="true"/>
</div>
<label id="info" proportion="1" width="100%" align="center" text_align="center" word_wrap="true" text=""/>
<buttonbar id="options" x="0" y="0" width="25%" height="12%" align="center">
<icon-button id="create" width="64" height="64" icon="gui/green_check.png"
I18N="In the server creation screen" text="Create" label_location="bottom"/>
<icon-button id="cancel" width="64" height="64" icon="gui/main_quit.png"
I18N="In the server creation screen" text="Cancel" label_location="bottom"/>
</buttonbar>
<spacer width="10" height="20"/>
</box>
<spacer height="15" width="10"/>
<spacer width="10" height="10"/>
</div>
</stkgui>

View File

@ -1,60 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="0" y="0" width="100%" height="100%" layout="vertical-row" >
<header text_align="center" width="80%" align="center" I18N="In networking lobby" text="Lobby"/>
<header id="lobby-text" text_align="center" width="80%" align="center" I18N="In networking lobby" text="Lobby"/>
<spacer height="15" width="10"/>
<div proportion="1" x="2%" width="96%" layout="vertical-row">
<div proportion="4" x="2%" width="96%" layout="vertical-row">
<div width="100%" proportion="2" layout="horizontal-row">
<box id="info" proportion="2" height="100%" layout="vertical-row">
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the networking lobby" text="Server name:"/>
<label proportion="2" text_align="left" id="server_name" text=""/>
</div>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the networking lobby" text="Difficulty:"/>
<label proportion="2" text_align="left" id="server_difficulty" text=""/>
</div>
<div width="100%" height="fit" layout="horizontal-row" >
<label proportion="1" text_align="left" I18N="In the networking lobby" text="Game mode:"/>
<label proportion="2" text_align="left" id="server_game_mode" text=""/>
</div>
<label word_wrap="true" id="text" proportion="3" width="100%" height="100%" text_valign="top"/>
</box>
<spacer width="20" height="20"/>
<box proportion="1" height="100%" layout="vertical-row">
<list id="players" width="100%" height="100%"/>
</box>
</div>
<spacer width="20" height="20"/>
<div width="100%" proportion="1" layout="horizontal-row">
<box proportion="2" height="100%" layout="vertical-row">
<list id="chat" width="100%" height="100%"/>
</box>
<spacer width="20" height="20"/>
<box id="actions" proportion="1" height="100%" layout="vertical-row">
<!-- <label I18N="In networking lobby" word_wrap="true" text="actions" align="center" text-align="center"/>
-->
<icon-button id="start" width="64" height="64" icon="gui/green_check.png" align="center"
I18N="In the network lobby" text="Start Race"/>
</box>
</div>
</div>
<spacer width="10" height="7%"/>
<bottombar x="2%" width="96%" height="10%" layout="horizontal-row">
<label text_align="left" align="center" height="100%" id="online_status" proportion="1" text=""/>
<spacer width="10" height="10" />
<buttonbar id="menu_bottomrow" x="0" y="0" width="20%" height="100%" align="center">
<icon-button id="exit" width="64" height="64" icon="gui/main_quit.png" extend_label="50"
I18N="In the networking lobby" text="Exit" label_location="hover"/>
<spacer height="10"/>
<div width="100%" proportion="1" layout="horizontal-row">
<spacer width="20" height="20"/>
<box proportion="2" height="100%" layout="vertical-row">
<textbox id="chat" width="100%" height="30%"/>
<spacer height="20"/>
<button id="send" height="30%" width="fit" I18N="In the network lobby" text="Send" />
</box>
<spacer width="40"/>
<buttonbar id="actions" proportion="1" width="75%" height="75%">
<icon-button id="start" width="64" height="64" icon="gui/green_check.png" align="center"
I18N="In the network lobby" text="Start race"/>
<icon-button id="exit" width="64" height="64" icon="gui/main_quit.png" align="center"
I18N="In the network lobby" text="Exit"/>
</buttonbar>
</bottombar>
</div>
<spacer height="10"/>
</div>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
</stkgui>

View File

@ -4,18 +4,32 @@
<header text_align="center" width="80%" align="center" text="Online"/>
<spacer height="15" width="10"/>
<button id="user-id" width="20%" height="fit" align="center"/>
<spacer height="20"/>
<box width="50%" height="10%" layout="horizontal-row" align="center" valign="center">
<spacer proportion="1"/>
<label I18N="In the networking menu" align="center"
text="Enable splitscreen or player handicaps" text_align="right"/>
<spacer width="25"/>
<checkbox id="enable-splitscreen" align="center" />
<spacer proportion="1"/>
</box>
<spacer height="15" width="10"/>
<icon id="logo" align="center" proportion="4" width="100%" icon="gui/logo.png"/>
<spacer height="15" width="10"/>
<buttonbar id="menu_toprow" proportion="3" width="90%" align="center">
<icon-button id="lan" width="128" height="128"
icon="gui/menu_multi.png" focus_icon="gui/menu_multi_focus.png"
I18N="Networking menu button" text="Local Networking"/>
I18N="Networking menu button" text="Local networking"/>
<icon-button id="wan" width="128" height="128"
icon="gui/menu_multi.png" focus_icon="gui/menu_multi_focus.png"
I18N="Networking menu button" text="Global Networking"/>
I18N="Networking menu button" text="Global networking"/>
<icon-button id="enter-address" width="128" height="128"
icon="gui/online/menu_quick_play.png" focus_icon="gui/online/menu_quick_play_hover.png"
I18N="Networking menu button" text="Enter server address"/>
<icon-button id="online" width="128" height="128"
icon="gui/menu_online.png" focus_icon="gui/menu_online_focus.png"
I18N="Networking menu button" text="Your profile"/>

View File

@ -26,6 +26,10 @@
<label proportion="1" text_align="left" I18N="In the networking lobby" text="Game mode:"/>
<label proportion="2" text_align="left" id="server_game_mode" text=""/>
</div>
<div width="100%" height="fit" layout="horizontal-row" >
<label id="label_password" text_align="left" proportion="1" text="Password"/>
<textbox id="password" proportion="2" height="fit"/>
</div>
</div>
<spacer height="20" width="50"/>

View File

@ -11,5 +11,13 @@
<box proportion="1" width="98%" align="center" layout="vertical-row" padding="6">
<list id="server_list" x="0" y="0" width="100%" height="100%"/>
</box>
<div width="99%" align="center" layout="vertical-row" height="fit">
<div width="100%" height="fit" layout="horizontal-row" >
<checkbox width="fit" id="private_server" text_align="left"/>
<spacer width="10"/>
<label proportion="1" height="100%" text_align="left"
I18N="In the server selection screen" text="Show only private server(s)"/>
</div>
</div>
</div>
</stkgui>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="2%" y="5%" width="96%" height="85%" layout="vertical-row" >
<header id="title" width="96%" height="fit" text_align="center" word_wrap="true"
I18N="Splitscreen player in network" text="Add player"/>
<spacer height="20" width="50"/>
<div width="80%" align="center" layout="vertical-row" height="fit" >
<div width="100%" height="fit" layout="horizontal-row" >
<label id="name-text" proportion="1" text_align="left" I18N="Splitscreen player in network" text="Name"/>
<spinner id="name-spinner" width="50%" align="center" wrap_around="true" />
</div>
</div>
<spacer height="20" width="50"/>
<div id="handicap-row" width="80%" align="center" layout="vertical-row" height="fit" >
<div width="100%" height="fit" layout="horizontal-row" >
<label id="handicap-text" proportion="1" text_align="left" I18N="Splitscreen player in network" text="Handicap"/>
<checkbox id="handicap" align="center" />
</div>
</div>
<spacer height="20" width="50"/>
<div width="80%" align="center" layout="vertical-row" height="fit" >
<div width="100%" height="fit" layout="horizontal-row" >
<label id="message-label" proportion="1" text_align="left" I18N="Splitscreen player in network"
text="Press the 'All players ready' button after the player list is ready."/>
</div>
</div>
<spacer height="20" width="50"/>
<buttonbar id="options" width="90%" height="20%" align="center">
<icon-button id="add" width="64" height="64" icon="gui/blue_plus.png"
I18N="Splitscreen player in network" text="Add player" label_location="bottom"/>
<icon-button id="connect" width="64" height="64" icon="gui/green_check.png"
I18N="Splitscreen player in network" text="All players ready" label_location="bottom"/>
<icon-button id="cancel" width="64" height="64" icon="gui/main_quit.png"
I18N="Splitscreen player in network" text="Cancel" label_location="bottom"/>
<icon-button id="reset" width="64" height="64" icon="gui/remove.png"
I18N="Splitscreen player in network" text="Clear added player" label_location="bottom"/>
</buttonbar>
</div>
</stkgui>

View File

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="2%" y="5%" width="96%" height="90%" layout="vertical-row" >
<header id="title" width="96%" height="fit" text_align="center" I18N="Networking screen" text="Waiting for the others..."/>
<spacer height="40" width="50"/>
<label proportion="1" width="100%" text_align="left" id="lblDetails"/>
</div>
</stkgui>

View File

@ -26,7 +26,7 @@
<div proportion="1" height="fit" layout="horizontal-row" >
<spacer width="40" height="100%" />
<!-- FIXME: don't hardcode height -->
<checkbox id="music_enabled" width="40" height="40"/>
<checkbox id="music_enabled"/>
</div>
</div>
<div width="75%" height="fit" layout="horizontal-row" >
@ -47,7 +47,7 @@
<div proportion="1" height="fit" layout="horizontal-row" >
<spacer width="40" height="100%" />
<!-- FIXME: don't hardcode height -->
<checkbox id="sfx_enabled" width="40" height="40"/>
<checkbox id="sfx_enabled"/>
</div>
</div>
<div width="75%" height="fit" layout="horizontal-row" >

View File

@ -72,8 +72,22 @@
</div>
<spacer height="4" width="10" />
<div layout="horizontal-row" proportion="1" height="fit">
<checkbox id="split_screen_horizontally"/>
<spacer width="20" height="100%" />
<label height="100%" I18N="In the ui settings" text="Multiplayer splits screen horizontally"/>
</div>
</div>
<!-- Nothing here yet -->
<spacer height="4" width="10" />
<div layout="horizontal-row" width="100%" height="fit">
<div proportion="1" height="fit" layout="horizontal-row" >
<checkbox id="enable-lobby-chat"/>
<spacer width="20" height="100%" />
<label height="100%" id="label-lobby-chat" I18N="In the ui settings" text="Enable chatting in networking lobby"/>
</div>
</div>
<spacer height="18" width="4"/>

View File

@ -2,7 +2,7 @@
<stkgui>
<div x="2%" y="10%" width="96%" height="80%" layout="vertical-row" >
<label id="title" width="100%" text_align="center" text="Press a key" proportion="1" />
<label id="title" width="100%" text_align="center" text="Press fully and release..." proportion="1" I18N="When changing input configurations" word_wrap="true"/>
<spacer height="25" width="10" />

View File

@ -5,27 +5,30 @@
<header height="5%" width="80%" text="Race Setup" align="center" text_align="center" />
<spacer height="5%" width="25"/>
<box width="100%" height="40%" padding="10" layout="vertical-row">
<bright width="100%" text="Select a difficulty" align="center" text_align="left" />
<ribbon id="difficulty" height="135" width="100%" align="center">
<icon-button id="novice" width="128" height="128" icon="gui/difficulty_easy.png"
<bright width="100%" text="Select a difficulty" align="center" text_align="left" />
<spacer height="10" width="25"/>
<box width="100%" proportion="3" padding="10" layout="vertical-row">
<ribbon id="difficulty" height="85%" width="100%" align="center">
<icon-button id="novice" width="fit" height="fit" icon="gui/difficulty_easy.png"
I18N="Difficulty" text="Novice"/>
<icon-button id="intermediate" width="128" height="128" icon="gui/difficulty_medium.png"
<icon-button id="intermediate" width="fit" height="fit" icon="gui/difficulty_medium.png"
I18N="Difficulty" text="Intermediate"/>
<icon-button id="expert" width="128" height="128" icon="gui/difficulty_hard.png"
<icon-button id="expert" width="fit" height="fit" icon="gui/difficulty_hard.png"
I18N="Difficulty" text="Expert"/>
<icon-button id="best" width="128" height="128" icon="gui/difficulty_best.png"
<icon-button id="best" width="fit" height="fit" icon="gui/difficulty_best.png"
I18N="Difficulty" text="SuperTux"/>
</ribbon>
</box>
<spacer height="5%" width="25"/>
<box width="100%" height="40%" padding="10" layout="vertical-row">
<bright width="100%" text="Select a game mode" align="center" text_align="left" />
<scrollable_toolbar id="gamemode" height="135" width="85%" label_location="bottom" align="center"
child_width="135" child_height="135" />
<bright width="100%" text="Select a game mode" align="center" text_align="left" />
<spacer height="10" width="25"/>
<box width="100%" proportion="4" padding="10" layout="vertical-row">
<spacer height="5%" width="25" />
<scrollable_toolbar id="gamemode" height="60%" width="95%" label_location="bottom" align="center"
child_width="256" child_height="256" />
<spacer proportion="1" width="25" />
</box>
</div>

View File

@ -21,7 +21,7 @@
<label id="novice_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
<spacer height="6%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="intermediate" icon="gui/difficulty_medium.png"
@ -30,7 +30,7 @@
<label id="intermediate_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
<spacer height="6%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="expert" icon="gui/difficulty_hard.png"
@ -39,7 +39,16 @@
<label id="difficult_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
<spacer height="6%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="supertux" icon="gui/difficulty_best.png"
I18N="Difficulty" text="SuperTux" height="100%"/>
<spacer width="5%" height="1"/>
<label id="supertux_label" proportion="1" height="100%"/>
</div>
<spacer height="2%" width="1"/>
</div>
</stkgui>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<stkgui>
<div x="5%" y="5%" width="90%" height="90%" layout="vertical-row" >
<header id="title" width="100%" text="Race Setup" align="center" text_align="center" />
<spacer height="2%" width="1"/>
<div width="100%" layout="horizontal-row" height="fit">
<label id="race_type" text="Type:" I18N="Type of race, in a challenge"/>
<spacer width="5" height="1"/>
<label id="race_type_val" proportion="1"/>
</div>
<spacer height="2%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="novice" icon="gui/difficulty_easy.png"
I18N="Difficulty" text="Novice" height="100%"/>
<spacer width="5%" height="1"/>
<label id="novice_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="intermediate" icon="gui/difficulty_medium.png"
I18N="Difficulty" text="Intermediate" height="100%"/>
<spacer width="5%" height="1"/>
<label id="intermediate_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
<div width="100%" proportion="1" layout="horizontal-row">
<icon-button id="expert" icon="gui/difficulty_hard.png"
I18N="Difficulty" text="Expert" height="100%"/>
<spacer width="5%" height="1"/>
<label id="difficult_label" proportion="1" height="100%"/>
</div>
<spacer height="8%" width="1"/>
</div>
</stkgui>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 73 KiB

View File

@ -2,20 +2,47 @@
<stkgui>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>
<div x="1%" y="1%" width="98%" height="96%" layout="vertical-row" >
<div id="all-track" x="1%" y="1%" width="60%" height="96%" layout="vertical-row" >
<header width="80%" I18N="In the track selection screen" text="All Tracks"
align="center" text_align="center" />
<box proportion="1" width="100%" layout="vertical-row" padding="1">
<ribbon_grid id="tracks" proportion="1" width="100%" square_items="true"
label_location="bottom" align="center" max_rows="4"
label_location="bottom" align="center" max_rows="3"
child_width="160" child_height="120" />
<spacer width="20" height="13" />
</box>
<!-- Populated dynamically at runtime -->
<tabs width="100%" height="25" id="trackgroups"> </tabs>
<tabs width="100%" height="5%" id="trackgroups"> </tabs>
<spacer width="100%" height="2%" />
<box id="rect-box" width="100%" height="20%" padding="15" layout="vertical-row">
<div width="100%" height="fit" layout="horizontal-row" >
<label id="lap-text" proportion="1" I18N="In the track screen" text_align="right"/>
<spacer width="40"/>
<div proportion="1" height="fit" layout="horizontal-row">
<spinner id="lap-spinner" width="50%" min_value="1" max_value="20" align="center"
wrap_around="true" />
</div>
</div>
<spacer height="10"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label id="reverse-text" proportion="1" I18N="In the track screen" text_align="right"/>
<spacer width="40"/>
<div proportion="1" height="fit" layout="horizontal-row">
<div width="50%" height="fit" text-align="center" layout="vertical-row" >
<checkbox id="reverse" align="center"/>
</div>
</div>
</div>
</box>
</div>
<div id="vote" x="63%" y="1%" width="37%" height="96%" layout="vertical-row">
<div width="95%" proportion="2" layout="horizontal-row">
<box proportion="2" height="100%" layout="vertical-row">
<label id="vote-text" word_wrap="true" id="text" proportion="3" width="100%" height="100%" text_valign="top"/>
</box>
</div>
</div>
</stkgui>

View File

@ -17,13 +17,13 @@
<box proportion="1" width="100%" layout="vertical-row" padding="1">
<ribbon_grid id="tracks" proportion="1" width="100%" square_items="true"
label_location="bottom" align="center" max_rows="4"
label_location="bottom" align="center" max_rows="3"
child_width="160" child_height="120" />
<spacer width="20" height="13" />
</box>
<!-- Populated dynamically at runtime -->
<tabs width="100%" height="25" id="trackgroups"> </tabs>
<tabs width="100%" height="5%" id="trackgroups"> </tabs>
<spacer width="100%" height="2%" />
</div>

View File

@ -7,12 +7,12 @@
<box proportion="1" width="98%" layout="vertical-row">
<spacer height="15" width="10"/>
<spacer height="2%" width="10"/>
<scrollable_ribbon id="players" height="120" y="10" x="10" width="98%" align="center" label_location="each"
<scrollable_ribbon id="players" height="18%" y="10" x="10" width="98%" align="center" label_location="each"
square_items="true" child_width="128" child_height="128" />
<spacer height="15" width="10"/>
<spacer height="2%" width="10"/>
<div width="90%" align="center" layout="vertical-row" proportion="1">
<div width="100%" height="fit" layout="horizontal-row" >
<checkbox width="fit" id="online" I18N="In the user screen" text_align="left"/>
@ -37,7 +37,7 @@
I18N="In the user screen" text="Username"/>
<textbox id="username" proportion="2" height="fit" I18N="In the user screen"/>
</div>
<spacer height="20" width="20"/>
<spacer height="10%" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label id="label_password" width="40%" height="100%" text_align="left"
@ -45,30 +45,30 @@
<textbox id="password" proportion="2" height="fit" I18N="In the user screen"/>
</div>
<spacer height="20" width="20"/>
<spacer height="5%" width="20"/>
<label id="message" width="100%" text_align="center"/>
</div>
<spacer width="20" proportion="1"/>
<spacer width="20" height="2%"/>
<div width="90%" align="center" layout="vertical-row" height="fit">
<buttonbar id="options" width="100%" height="80" align="center">
<icon-button id="ok" width="64" height="64" icon="gui/green_check.png"
<div width="90%" align="center" layout="vertical-row" height="18%">
<buttonbar id="options" width="100%" height="100%" align="center">
<icon-button id="ok" width="fit" height="fit" icon="gui/green_check.png"
I18N="In the user screen" text="OK" label_location="bottom"/>
<icon-button id="new_user" width="64" height="64" icon="gui/blue_plus.png"
<icon-button id="new_user" width="fit" height="fit" icon="gui/blue_plus.png"
I18N="In the user screen" text="Add user" label_location="bottom"/>
<icon-button id="delete" width="64" height="64" icon="gui/remove.png"
<icon-button id="delete" width="fit" height="fit" icon="gui/remove.png"
I18N="In the user screen" text="Delete" label_location="bottom"/>
<icon-button id="rename" width="64" height="64" icon="gui/rename.png"
<icon-button id="rename" width="fit" height="fit" icon="gui/rename.png"
I18N="In the user screen" text="Rename" label_location="bottom"/>
<icon-button id="default_kart_color" width="64" height="64" icon="gui/edit.png"
<icon-button id="default_kart_color" width="fit" height="fit" icon="gui/edit.png"
I18N="In the user screen" text="Default kart color" label_location="bottom"/>
<icon-button id="cancel" width="64" height="64" icon="gui/main_quit.png"
<icon-button id="cancel" width="fit" height="fit" icon="gui/main_quit.png"
I18N="In the user screen" text="Cancel" label_location="bottom"/>
</buttonbar>
</div>
<spacer width="20" height="25"/>
<spacer width="20" height="5%"/>
</box>
<spacer width="20" height="15"/>
</div>

View File

@ -14,15 +14,15 @@
<icon-button id="tab_controls" width="128" height="128" icon="gui/options_input.png"/>
</tabs>
<box proportion="1" width="100%" layout="vertical-row">
<box proportion="1" width="98%" layout="vertical-row">
<spacer height="15" width="10"/>
<spacer height="2%" width="10"/>
<scrollable_ribbon id="players" height="120" y="10" x="10" width="98%" align="center" label_location="each"
<scrollable_ribbon id="players" height="18%" y="10" x="10" width="98%" align="center" label_location="each"
square_items="true" child_width="128" child_height="128" />
<spacer height="15" width="10"/>
<div width="90%" align="center" layout="vertical-row" height="fit">
<spacer height="2%" width="10"/>
<div width="90%" align="center" layout="vertical-row" proportion="1">
<div width="100%" height="fit" layout="horizontal-row" >
<checkbox width="fit" id="online" I18N="In the user screen" text_align="left"/>
<spacer width="10"/>
@ -31,48 +31,55 @@
<div width="100%" height="fit" layout="horizontal-row" >
<checkbox width="fit" id="remember-user" I18N="In the user screen" text_align="left"/>
<spacer width="10"/>
<label id="label_remember" proportion="1" height="100%" text_align="left"
<label proportion="1" id="label_remember" height="100%" text_align="left"
I18N="In the user screen" text="Remember password"/>
</div>
<!-- Disable guest accounts for now
<div width="100%" height="fit" layout="horizontal-row" >
<label id="label_guest" proportion="1" height="100%" text_align="left"
<label width="40%" id="label_guest" height="100%" text_align="left"
I18N="In the user screen" text="Guest login"/>
<checkbox id="guest" I18N="In the user screen" text_align="left"/>
</div>
-->
<div width="100%" height="fit" layout="horizontal-row" >
<label id="label_username" width="40%" height="100%" text_align="left"
<label width="40%" id="label_username" height="100%" text_align="left"
I18N="In the user screen" text="Username"/>
<textbox id="username" proportion="2" height="fit" I18N="In the user screen"/>
</div>
<spacer height="20" width="20"/>
<spacer height="10%" width="20"/>
<div width="100%" height="fit" layout="horizontal-row" >
<label id="label_password" width="40%" height="100%" text_align="left"
I18N="In the registration dialog" text="Password"/>
<textbox id="password" proportion="2" height="fit" I18N="In the registration dialog"/>
I18N="In the user screen" text="Password"/>
<textbox id="password" proportion="2" height="fit" I18N="In the user screen"/>
</div>
<spacer height="5%" width="20"/>
<label id="message" width="100%" text_align="center"/>
</div>
<div width="80%" align="center" layout="vertical-row" height="fit">
<label id="message" width="80%" align="center" text_align="left"/>
</div>
<spacer width="20" height="25"/>
<buttonbar id="options" width="90%" height="13%" align="center">
<icon-button id="ok" width="64" height="64" icon="gui/green_check.png"
I18N="In the user screen" text="OK" label_location="bottom"/>
<icon-button id="new_user" width="64" height="64" icon="gui/blue_plus.png"
I18N="In the user screen" text="Add user" label_location="bottom"/>
<icon-button id="delete" width="64" height="64" icon="gui/remove.png"
I18N="In the user screen" text="Delete" label_location="bottom"/>
<icon-button id="rename" width="64" height="64" icon="gui/rename.png"
I18N="In the user screen" text="Rename" label_location="bottom"/>
<icon-button id="default_kart_color" width="64" height="64" icon="gui/edit.png"
I18N="In the user screen" text="Default kart color" label_location="bottom"/>
<icon-button id="cancel" width="64" height="64" icon="gui/main_quit.png"
I18N="In the user screen" text="Cancel" label_location="bottom"/>
</buttonbar>
<spacer width="20" height="2%"/>
<div width="90%" align="center" layout="vertical-row" height="18%">
<buttonbar id="options" width="100%" height="100%" align="center">
<icon-button id="ok" width="fit" height="fit" icon="gui/green_check.png"
I18N="In the user screen" text="OK" label_location="bottom"/>
<icon-button id="new_user" width="fit" height="fit" icon="gui/blue_plus.png"
I18N="In the user screen" text="Add user" label_location="bottom"/>
<icon-button id="delete" width="fit" height="fit" icon="gui/remove.png"
I18N="In the user screen" text="Delete" label_location="bottom"/>
<icon-button id="rename" width="fit" height="fit" icon="gui/rename.png"
I18N="In the user screen" text="Rename" label_location="bottom"/>
<icon-button id="default_kart_color" width="fit" height="fit" icon="gui/edit.png"
I18N="In the user screen" text="Default kart color" label_location="bottom"/>
<icon-button id="cancel" width="fit" height="fit" icon="gui/main_quit.png"
I18N="In the user screen" text="Cancel" label_location="bottom"/>
</buttonbar>
</div>
<spacer width="20" height="5%"/>
</box>
<spacer width="20" height="15"/>
</div>
<icon-button id="back" x="0" y="0" height="8%" icon="gui/back.png"/>

View File

@ -312,21 +312,27 @@
max-speed-increase="5" duration="1" fade-out-time="2" max="20" />
<!-- Slipstream
base-speed: the speed for which length and width are valid.
They are upscaled when faster and downscaled when slower.
length: How far behind a kart slipstream works
(note : this helps OTHER karts)
width: how wide slipstream works furthest away from the kart.
collect-time: How many seconds of sstream give maximum benefit
use-time: How long the benefit will last.
add-power: Additional power due to sstreaming. 1 = +100%
inner-factor: The proportion of the slipstreaming area with
twice faster slipstream "credits" collection.
min-collect-time: How many seconds of sstream are needed to get a bonus
it can be accumulated faster if in the inner quad)
max-collect-time: How many seconds of sstream bonus can be accumulated at most
add-power: Additional power due to sstreaming.
min-speed: Minimum speed necessary for slipstream to take effect.
max-speed-increase: How much the speed of the kart might exceed
its normal maximum speed.
duration: How long the higher speed lasts after slipstream stopped
working.
duration-factor: A multiplicator to how long the higher speed lasts
1 means it last as long the total time collected
fade-out-time: How long the slip stream speed increase will
gradually be reduced. -->
<slipstream length="10" width="2" collect-time="2" use-time="5"
add-power="3" min-speed="10" max-speed-increase="5"
duration="1" fade-out-time="2" />
<slipstream base-speed="20" length="8" width="4" inner-factor="0.5"
min-collect-time="3" max-collect-time="8" add-power="300" min-speed="8"
max-speed-increase="5" duration-factor="1" fade-out-time="2" />
</characteristic>
<!-- The different difficulties (like easy, medium, hard) -->
@ -360,9 +366,8 @@
invulnerability-time="7" />
<nitro engine-force="350" max-speed-increase="4.5" duration="1.5"
fade-out-time="2.5" />
<slipstream length="11" collect-time="1.5" use-time="2.5" add-power="3.2"
min-speed="9" max-speed-increase="4" duration="1.2"
fade-out-time="2.3" />
<slipstream length="*0.9" collect-time="*0.9"
duration-factor="*1" fade-out-time="*1" />
</characteristic>
<characteristic name="medium">
<engine power="*0.63" max-speed="*1" brake-factor="*0.73"
@ -374,8 +379,7 @@
<explosion time="1.8" radius="5"
invulnerability-time="6" />
<nitro engine-force="425" consumption="1.4" duration="1" />
<slipstream use-time="3.3" add-power="2.8" duration="0.9"
fade-out-time="1.6" />
<slipstream duration-factor="*0.8" fade-out-time="*1" />
</characteristic>
<characteristic name="heavy">
<engine power="*1" max-speed="*1" brake-factor="*0.66"
@ -390,8 +394,8 @@
invulnerability-time="6" />
<nitro engine-force="600" consumption="2" max-speed-increase="8"
duration="0.7" fade-out-time="1.3" />
<slipstream length="8.5" use-time="4" add-power="2.7" min-speed="10.5"
max-speed-increase="8" duration="0.7" fade-out-time="1" />
<slipstream length="*1.1" collect-time="*1.1"
duration-factor="*0.6" fade-out-time="*1" />
</characteristic>
</kart-types>
@ -399,17 +403,17 @@
<player-characteristics>
<characteristic name="normal" />
<characteristic name="handicap">
<engine brake-factor="*0.8" brake-time-increase="*0.85" max-speed-reverse-ratio="*0.8" />
<bubblegum duration="*1.5" speed-fraction="*1.5" torque="*1.5" />
<zipper duration="*0.8" force="*0.8" speed-gain="*0.8" max-speed-increase="*0.8" />
<swatter duration="*0.8" squash-duration="*1.5" squash-slowdown="*1.8" />
<engine power="*0.9" max-speed="*0.9" brake-factor="*0.8" brake-time-increase="*0.85" max-speed-reverse-ratio="*0.8" />
<skid time-till-bonus="*1.2 1.0" bonus-speed="*0.9 0.8" bonus-force="*0.9 0.9" />
<bubblegum duration="*1.5" torque="*1.5" />
<zipper force="*0.8" speed-gain="*0.8" max-speed-increase="*0.8" />
<swatter duration="*0.8" squash-duration="*1.3" />
<plunger band-max-length="*0.8" band-speed-increase="*0.8" in-face-time="*1.3" />
<startup time="*0.8 0.8" boost="*0.8 0.8" />
<rescue duration="*1.5" />
<explosion duration="*1.3" invulnerability-time="*0.7" />
<nitro engine-force="*0.8" consumption="*1.1" max-speed-increase="*0.9" max="*0.8" />
<slipstream length="*0.8" width="*0.8" collect-time="*1.5" use-time="*0.8"
add-power="*0.8" min-speed="*0.8" max-speed-increase="*0.9" duration="*0.8" />
<nitro engine-force="*0.8" max-speed-increase="*0.9" max="*0.8" />
<slipstream min-collect-time="*1.2" add-power="*0.9"
max-speed-increase="*0.9" duration-factor="*0.9" />
</characteristic>
</player-characteristics>
</characteristics>

File diff suppressed because it is too large Load Diff

View File

@ -4,14 +4,14 @@
#
# Translators:
# , 2015
# Viktar Vauchkevich, 2017
# Viktar Vauchkevich, 2017-2018
msgid ""
msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Auria <auria.mg@gmail.com>\n"
"PO-Revision-Date: 2018-01-18 18:02+0000\n"
"Last-Translator: Viktar Vauchkevich\n"
"Language-Team: Belarusian (http://www.transifex.com/supertuxkart/supertuxkart/language/be/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -49,7 +49,7 @@ msgstr "Марафонец"
#. I18N: ./data/achievements.xml
msgid "Make a race with 5 laps or more."
msgstr "Зрабі гонку на 5 ці больш кругоў."
msgstr "Зрабі гонку на 5 ці больш колаў."
#. I18N: ./data/achievements.xml
msgid "Skid-row"
@ -57,7 +57,7 @@ msgstr "Дрыфтэр"
#. I18N: ./data/achievements.xml
msgid "Make 5 skidding in a single lap."
msgstr "Зрабі 5 заносаў за 1 круг."
msgstr "Зрабі 5 заносаў за 1 кола."
#. I18N: ./data/achievements.xml
msgid "Gold driver"
@ -274,7 +274,7 @@ msgstr "Стваральнікі"
#. I18N: ./data/gui/custom_video_settings.stkgui
msgid "Graphics Settings"
msgstr "Настаўленні графікі"
msgstr "Налады графікі"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
@ -299,7 +299,7 @@ msgstr "Зіхаценне (Bloom)"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
msgid "Light shaft (God rays)"
msgstr "Промні святла"
msgstr "Промні святла (гало)"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
@ -354,17 +354,17 @@ msgstr "Анімацыя персанажаў"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
msgid "Rendered image quality"
msgstr ""
msgstr "Якасць апрацаванай выявы"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
msgid "Geometry detail"
msgstr ""
msgstr "Дэталі геаметрыі"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: Video settings
msgid "* Restart STK to apply new settings"
msgstr "* Перазапусціце STK, каб ужыць новыя настаўленні"
msgstr "* Перазапусціце STK, каб ужыць новыя налады"
#. I18N: ./data/gui/custom_video_settings.stkgui
#. I18N: ./data/gui/multitouch_settings.stkgui
@ -620,11 +620,11 @@ msgstr "Сумесная гульня"
#. I18N: ./data/gui/help5.stkgui
#. I18N: Tab in help menu
msgid "Bananas"
msgstr ""
msgstr "Бананы"
#. I18N: ./data/gui/help1.stkgui
msgid "Start the tutorial"
msgstr ""
msgstr "Пачаць навучанне"
#. I18N: ./data/gui/help1.stkgui
#. I18N: In the help menu
@ -656,7 +656,7 @@ msgstr "Калі вы бачыце замок, то гэта азначае, ш
#. I18N: ./data/gui/help1.stkgui
#. I18N: in the help menu
msgid "The 'skidding' key allows you to skid in sharp turns and get a boost."
msgstr "Кнопка «заноса» дазваляе слізгаць у крутым павароце і атрымаць паскарэнне."
msgstr "Кнопка «заносу» дазваляе слізгаць у крутым павароце і атрымаць паскарэнне."
#. I18N: ./data/gui/help1.stkgui
#. I18N: in the help screen
@ -796,24 +796,24 @@ msgstr "Пасля настройкі прылад увода вы гатовы
msgid ""
"Hitting a banana can result in one of the following being attached to the "
"kart:"
msgstr ""
msgstr "Наезд на банан прывядзе да далучэння да карта аднаго з наступных прадметаў:"
#. I18N: ./data/gui/help5.stkgui
#. I18N: In the help menu
msgid "Anchor - slows down the kart."
msgstr ""
msgstr "Якар запавольвае карт."
#. I18N: ./data/gui/help5.stkgui
#. I18N: In the help menu
msgid "Parachute - slows down the kart less than the anchor."
msgstr ""
msgstr "Парашут запавольвае карт менш, чым якар."
#. I18N: ./data/gui/help5.stkgui
#. I18N: In the help menu
msgid ""
"Bomb - detonates after a short amount of time to throw the kart up in the "
"air. Bump into another kart to transfer the bomb to another player."
msgstr ""
msgstr "Бомба ўзрываецца пасля кароткага прамежку часу і падкідвае карт у паветра. Ударце іншы карт каб перадаць бомбу іншаму гульцу."
#. I18N: ./data/gui/karts.stkgui
#. I18N: In the kart selection (player setup) screen
@ -902,46 +902,46 @@ msgstr "Выйсці"
#. I18N: ./data/gui/multitouch_settings.stkgui
msgid "Touch Device Settings"
msgstr ""
msgstr "Налады сэнсарнай прылады"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Device enabled"
msgstr ""
msgstr "Пралада ўключаная"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Inverted buttons"
msgstr ""
msgstr "Інвертаваныя кнопкі"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Buttons scale"
msgstr ""
msgstr "Маштаб кнопак"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Accelerometer"
msgstr ""
msgstr "Паскарэнне"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Advanced"
msgstr ""
msgstr "Пашыраныя"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Deadzone"
msgstr ""
msgstr "Мёртвая зона"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Sensitivity"
msgstr ""
msgstr "Адчувальнасць"
#. I18N: ./data/gui/multitouch_settings.stkgui
msgid "Restore defaults"
msgstr ""
msgstr "Аднавіць агаданыя"
#. I18N: ./data/gui/online/change_password.stkgui
#. I18N: In the change password dialog
@ -1232,7 +1232,7 @@ msgstr "Хуткая гульня"
#. I18N: Section in the profile screen
#: src/states_screens/online_profile_base.cpp:113
msgid "Account Settings"
msgstr "Настаўленні конта"
msgstr "Налады конту"
#. I18N: ./data/gui/online/profile_settings.stkgui
#. I18N: In the online account settings screen
@ -1248,7 +1248,7 @@ msgstr "Змяніць"
#. I18N: ./data/gui/online/recovery_input.stkgui
#. I18N: In the recovery dialog
msgid "Account Recovery"
msgstr "Аднаўленне конта"
msgstr "Аднаўленне конту"
#. I18N: ./data/gui/online/recovery_info.stkgui
#. I18N: In the recovery dialog
@ -1326,7 +1326,7 @@ msgid ""
"You can play without creating an online account by selecting an offline "
"account. Though then you can not connect to friends, vote for addons etc. "
"Please read our privacy statement at http://privacy.supertuxkart.net"
msgstr "Вы можаце гуляць без стварэння анлайн-конта, выбраўшы афлайн-конт. Але пры гэтым вы не зможаце злучыцца з сябрамі, галасаваць за дадаткі і інш. Азнаёмцеся з нашай заявай аб канфідэнцыйнасці на http://privacy.supertuxkart.net"
msgstr "Вы можаце гуляць без стварэння анлайн-конту, выбраўшы афлайн-конт. Але пры гэтым вы не зможаце злучыцца з сябрамі, галасаваць за дадаткі і інш. Азнаёмцеся з нашай заявай аб канфідэнцыйнасці на http://privacy.supertuxkart.net"
#. I18N: ./data/gui/online/registration_terms.stkgui
#. I18N: In the registration dialog
@ -1564,7 +1564,7 @@ msgstr "Узровень графічных эфектаў"
#. I18N: ./data/gui/options_video.stkgui
#. I18N: In the video settings
msgid "Custom settings..."
msgstr "Свае настаўленні"
msgstr "Асабістыя налады…"
#. I18N: ./data/gui/options_video.stkgui
#. I18N: In the video settings
@ -1762,7 +1762,7 @@ msgstr "Баявая выспа"
#. I18N: ../stk-assets/tracks/candela_city/track.xml
msgid "Candela City"
msgstr ""
msgstr "Горад Кандэла"
#. I18N: ../stk-assets/tracks/cave/track.xml
msgid "Cave X"
@ -1774,7 +1774,7 @@ msgstr "Храм какавы"
#. I18N: ../stk-assets/tracks/cornfield_crossing/track.xml
msgid "Cornfield Crossing"
msgstr ""
msgstr "Кукурузнае перакрыжаванне"
#. I18N: ../stk-assets/tracks/fortmagma/track.xml
msgid "Fort Magma"
@ -1799,7 +1799,7 @@ msgstr "Ледзяное футбольнае поле"
#. I18N: Cutscene subtitle from ../stk-assets/tracks/introcutscene2/scene.xml
#. I18N: ../stk-assets/tracks/introcutscene2/scene.xml
msgid "What's wrong, little hippies? Your great gnu leader is missing?"
msgstr "Штосці не так, маленькі хіпі? Твой вялікі гну лідар знік?"
msgstr "Штосці не так, маленькі хіпі? Твой вялікі лідар гну знік?"
#. I18N: Cutscene subtitle from ../stk-assets/tracks/introcutscene2/scene.xml
#. I18N: ../stk-assets/tracks/introcutscene2/scene.xml
@ -1825,7 +1825,7 @@ msgstr "Але ты, гаротны валацуга, ніколі не змож
#. I18N: ../stk-assets/tracks/lasdunasarena/track.xml
msgid "Las Dunas Arena"
msgstr ""
msgstr "Лас-Дунас-Арэна"
#. I18N: ../stk-assets/tracks/lighthouse/track.xml
msgid "Around the lighthouse"
@ -1921,7 +1921,7 @@ msgstr "Хекслі"
#. I18N: ../stk-assets/karts/kiki/kart.xml
msgid "Kiki"
msgstr ""
msgstr "Кікі"
#. I18N: ../stk-assets/karts/konqi/kart.xml
msgid "Konqi"
@ -1970,7 +1970,7 @@ msgstr "Завершанае дасягненне «%s»."
#: src/addons/addons_manager.cpp:104 src/addons/news_manager.cpp:322
msgid "Failed to connect to the SuperTuxKart add-ons server."
msgstr ""
msgstr "Не атрымалася злучыцца з северам дадаткаў SuperTuxKart."
#: src/addons/news_manager.cpp:179
#, c-format
@ -2042,16 +2042,16 @@ msgstr "Ваш файл канфігурацыі занадта стары. Ён
#: src/graphics/irr_driver.cpp:535
msgid "Video recording started."
msgstr ""
msgstr "Пачаўся запіс відэа."
#: src/graphics/irr_driver.cpp:541
#, c-format
msgid "Video saved in \"%s\"."
msgstr ""
msgstr "Відэа захаванае ў «%s»."
#: src/graphics/irr_driver.cpp:545
msgid "Encoding progress:"
msgstr ""
msgstr "Прагрэс кадавання:"
#: src/graphics/irr_driver.cpp:1682
#, c-format
@ -2726,11 +2726,11 @@ msgstr "Не едзьце да сігналу!"
#: src/karts/controller/spare_tire_ai.cpp:147
msgid "You can have at most 3 lives!"
msgstr ""
msgstr "Вы можаце мець максімум 3 жыцці!"
#: src/karts/controller/spare_tire_ai.cpp:153
msgid "+1 life."
msgstr ""
msgstr "+1 жыццё."
#: src/karts/kart.cpp:908 src/karts/kart.cpp:913
msgid "You won the race!"
@ -2753,7 +2753,7 @@ msgstr "SuperTuxKart можа падлучацца да сервера, каб
#: src/main.cpp:1654
msgid "Your screen resolution is too low to run STK."
msgstr ""
msgstr "Разрозненне вашага экрана занадта малое для STK."
#: src/main.cpp:1668
msgid ""
@ -2803,10 +2803,10 @@ msgstr "НЯПРАВІЛЬНЫ НАПРАМАК!"
#, c-format
msgid "%i spare tire kart has been spawned!"
msgid_plural "%i spare tire karts have been spawned!"
msgstr[0] ""
msgstr[1] ""
msgstr[2] ""
msgstr[3] ""
msgstr[0] "%i запаска для карта з'явілася!"
msgstr[1] "%i запаскі для карта з'явіліся!"
msgstr[2] "%i запасак для карта з'явілася!"
msgstr[3] "%i запасак для карта з'явілася!"
#: src/modes/world.cpp:1202
msgid "You have been eliminated!"
@ -2820,7 +2820,7 @@ msgstr "«%s» дыскваліфікаваны."
#: src/network/protocols/server_lobby.cpp:318
#, c-format
msgid "Failed to register server: %s"
msgstr ""
msgstr "Не атрымалася зарэгістраваць сервер: %s"
#: src/network/servers_manager.cpp:198
msgid "No LAN server detected"
@ -3149,7 +3149,7 @@ msgstr "Адключана"
#: src/states_screens/dialogs/custom_video_settings.cpp:67
#: src/states_screens/options_screen_video.cpp:462
msgid "Important only"
msgstr ""
msgstr "Толькі важнае"
#. I18N: animations setting (only karts with human players are animated)
#: src/states_screens/dialogs/custom_video_settings.cpp:74
@ -3168,7 +3168,7 @@ msgstr "Для ўсіх"
#: src/states_screens/dialogs/custom_video_settings.cpp:102
#: src/states_screens/options_screen_video.cpp:469
msgid "Low"
msgstr ""
msgstr "Нізкі"
#. I18N: Geometry level high : everything is displayed
#. I18N: in the graphical options tooltip;
@ -3178,21 +3178,21 @@ msgstr ""
#: src/states_screens/dialogs/custom_video_settings.cpp:103
#: src/states_screens/options_screen_video.cpp:472
msgid "High"
msgstr ""
msgstr "Высокі"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very low
#: src/states_screens/dialogs/custom_video_settings.cpp:94
#: src/states_screens/options_screen_video.cpp:466
msgid "Very Low"
msgstr ""
msgstr "Вельмі нізкі"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very high
#: src/states_screens/dialogs/custom_video_settings.cpp:97
#: src/states_screens/options_screen_video.cpp:475
msgid "Very High"
msgstr ""
msgstr "Вельмі высокі"
#: src/states_screens/dialogs/message_dialog.cpp:129
#: src/states_screens/edit_gp_screen.cpp:257
@ -3202,11 +3202,11 @@ msgstr "Не"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:60
msgid "Tablet"
msgstr ""
msgstr "Планшэт"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:61
msgid "Phone"
msgstr ""
msgstr "Тэлефон"
#: src/states_screens/dialogs/recovery_dialog.cpp:121
msgid "Username and/or email address invalid."
@ -3220,7 +3220,7 @@ msgid ""
"the box below, you are confirming that you understand these terms. If you "
"have any questions or comments regarding these terms, one of the members of "
"the development team would gladly assist you."
msgstr ""
msgstr "Калі ласка, азнаёмцеся з умовамі карыстання SuperTuxKart на «%s». Вы павінны пагадзіцца з гэтымі ўмовамі для таго, каб зарэгістраваць конт для STK. Усталяваўшы сцяжок ніжэй, вы пацвярджаеце, што вы разумееце гэтыя ўмовы. Калі вы маеце пытанні ці каменты адносна ўмоў, адзін з чальцоў каманды распрацоўнікаў з задавальненнем дапаможа вам."
#: src/states_screens/dialogs/select_challenge.cpp:52
#, c-format
@ -3390,7 +3390,7 @@ msgstr "Час фінішу"
#: src/states_screens/ghost_replay_selection.cpp:83
msgid "User"
msgstr ""
msgstr "Карыстальнік"
#: src/states_screens/gp_info_screen.cpp:74
msgid "Default"
@ -3674,7 +3674,7 @@ msgstr "Клавіятура %i"
#: src/states_screens/options_screen_input.cpp:138
msgid "Touch Device"
msgstr ""
msgstr "Сэнсарная прылада"
#: src/states_screens/options_screen_ui.cpp:159
msgid ""
@ -3785,7 +3785,7 @@ msgstr "Глабальнае асвятленне: %s"
#: src/states_screens/options_screen_video.cpp:534
#, c-format
msgid "Rendered image quality: %s"
msgstr ""
msgstr "Якасць апрацаванай выявы: %s"
#: src/states_screens/race_gui.cpp:358 src/states_screens/race_gui.cpp:360
msgid "Challenge Failed"
@ -3842,7 +3842,7 @@ msgstr "Ранг"
#: src/states_screens/race_gui_overworld.cpp:518
msgid "Press fire to start the tutorial"
msgstr ""
msgstr "Націсніце Атаку, каб пачаць навучанне"
#: src/states_screens/race_gui_overworld.cpp:557
msgid "Type: Grand Prix"
@ -3989,7 +3989,7 @@ msgstr "Некарэктны Email!"
msgid ""
"You will receive an email with further instructions regarding account "
"activation. Please be patient and be sure to check your spam folder."
msgstr "Вы атрымаеце электронны ліст з далейшымі інструкцыямі для актывацыі конта. Калі ласка, будзьце церпялівымі і не забудзьце праверыць тэчку са спамам."
msgstr "Вы атрымаеце электронны ліст з далейшымі інструкцыямі для актывацыі конту. Калі ласка, будзьце церпялівымі і не забудзьце праверыць тэчку са спамам."
#: src/states_screens/register_screen.cpp:402
#: src/states_screens/user_screen.cpp:338
@ -4133,7 +4133,7 @@ msgstr "Ой! Калі ў вас праблемы, націсніце <%s> дл
msgid ""
"Accelerate and press the <%s> key while turning to skid. Skidding for a "
"short while can help you turn faster to take sharp turns."
msgstr "Разганіцеся і націсніце <%s> пад час заноса. Коўзанне дапаможа вам прайсць крутыя павароты хутчэй."
msgstr "Разганіцеся і націсніце <%s> пад час заносу. Коўзанне дапаможа вам прайсць крутыя павароты хутчэй."
#: ../stk-assets/tracks/tutorial/scripting.as:77
#: ../stk-assets/tracks/tutorial/triggers.as:78

View File

@ -6,7 +6,7 @@
# Alan Monfort <alan.monfort@free.fr>, 2015-2016
# FIRST AUTHOR <EMAIL@ADDRESS>, 2013
# Gwenn M <tornoz@laposte.net>, 2015
# Irriep Nala Novram <allannkorh@yahoo.fr>, 2017
# Irriep Nala Novram <allannkorh@yahoo.fr>, 2017-2018
# Irriep Nala Novram <allannkorh@yahoo.fr>, 2016
# Irriep Nala Novram <allannkorh@yahoo.fr>, 2016
msgid ""
@ -14,8 +14,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Auria <auria.mg@gmail.com>\n"
"PO-Revision-Date: 2018-01-08 18:45+0000\n"
"Last-Translator: Irriep Nala Novram <allannkorh@yahoo.fr>\n"
"Language-Team: Breton (http://www.transifex.com/supertuxkart/supertuxkart/language/br/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -624,11 +624,11 @@ msgstr "Liesc'hoarier"
#. I18N: ./data/gui/help5.stkgui
#. I18N: Tab in help menu
msgid "Bananas"
msgstr ""
msgstr "Bananez"
#. I18N: ./data/gui/help1.stkgui
msgid "Start the tutorial"
msgstr ""
msgstr "Kregiñ gant an tutorial"
#. I18N: ./data/gui/help1.stkgui
#. I18N: In the help menu
@ -931,21 +931,21 @@ msgstr ""
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Advanced"
msgstr ""
msgstr "Aroakaet"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Deadzone"
msgstr ""
msgstr "Zonennvarv"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Sensitivity"
msgstr ""
msgstr "Kizidigezh"
#. I18N: ./data/gui/multitouch_settings.stkgui
msgid "Restore defaults"
msgstr ""
msgstr "Adderaouekaat"
#. I18N: ./data/gui/online/change_password.stkgui
#. I18N: In the change password dialog
@ -1766,7 +1766,7 @@ msgstr "Enezenn ar gad"
#. I18N: ../stk-assets/tracks/candela_city/track.xml
msgid "Candela City"
msgstr ""
msgstr "Kêr Gandela"
#. I18N: ../stk-assets/tracks/cave/track.xml
msgid "Cave X"
@ -1925,7 +1925,7 @@ msgstr "Heksley"
#. I18N: ../stk-assets/karts/kiki/kart.xml
msgid "Kiki"
msgstr ""
msgstr "Kiki"
#. I18N: ../stk-assets/karts/konqi/kart.xml
msgid "Konqi"
@ -2732,7 +2732,7 @@ msgstr ""
#: src/karts/controller/spare_tire_ai.cpp:153
msgid "+1 life."
msgstr ""
msgstr "+1 vuhez."
#: src/karts/kart.cpp:908 src/karts/kart.cpp:913
msgid "You won the race!"
@ -3160,7 +3160,7 @@ msgstr "Gweredekaet evit an holl anezho"
#: src/states_screens/dialogs/custom_video_settings.cpp:102
#: src/states_screens/options_screen_video.cpp:469
msgid "Low"
msgstr ""
msgstr "Izel"
#. I18N: Geometry level high : everything is displayed
#. I18N: in the graphical options tooltip;
@ -3170,21 +3170,21 @@ msgstr ""
#: src/states_screens/dialogs/custom_video_settings.cpp:103
#: src/states_screens/options_screen_video.cpp:472
msgid "High"
msgstr ""
msgstr "Uhel"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very low
#: src/states_screens/dialogs/custom_video_settings.cpp:94
#: src/states_screens/options_screen_video.cpp:466
msgid "Very Low"
msgstr ""
msgstr "Izel-kenañ"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very high
#: src/states_screens/dialogs/custom_video_settings.cpp:97
#: src/states_screens/options_screen_video.cpp:475
msgid "Very High"
msgstr ""
msgstr "Uhel-kenañ"
#: src/states_screens/dialogs/message_dialog.cpp:129
#: src/states_screens/edit_gp_screen.cpp:257
@ -3194,11 +3194,11 @@ msgstr "Ket"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:60
msgid "Tablet"
msgstr ""
msgstr "Tabletezenn"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:61
msgid "Phone"
msgstr ""
msgstr "Pellgomz"
#: src/states_screens/dialogs/recovery_dialog.cpp:121
msgid "Username and/or email address invalid."
@ -3382,7 +3382,7 @@ msgstr "Amzer echuiñ"
#: src/states_screens/ghost_replay_selection.cpp:83
msgid "User"
msgstr ""
msgstr "Implijer"
#: src/states_screens/gp_info_screen.cpp:74
msgid "Default"

View File

@ -4,7 +4,7 @@
#
# Translators:
# Jakub Vaněk <vanek.jakub4@seznam.cz>, 2015-2016
# Pavel Borecki <pavel.borecki@gmail.com>, 2015-2017
# Pavel Borecki <pavel.borecki@gmail.com>, 2015-2018
# ToMáš Marný, 2015
# ToMáš Marný, 2015-2016
msgid ""
@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: ToMáš Marný\n"
"PO-Revision-Date: 2018-01-02 07:15+0000\n"
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
"Language-Team: Czech (http://www.transifex.com/supertuxkart/supertuxkart/language/cs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -2049,7 +2049,7 @@ msgstr "Zahájeno nahrávání videa."
#: src/graphics/irr_driver.cpp:541
#, c-format
msgid "Video saved in \"%s\"."
msgstr "Video uloženo do \"%s\"."
msgstr "Video uloženo do „%s“."
#: src/graphics/irr_driver.cpp:545
msgid "Encoding progress:"
@ -2058,7 +2058,7 @@ msgstr "Průběh enkódování:"
#: src/graphics/irr_driver.cpp:1682
#, c-format
msgid "FPS: %d/%d/%d - %d KTris"
msgstr "FPS: %d/%d/%d - %d tisíc trojúhelníků"
msgstr "Sním./s.: %d/%d/%d %d tisíc trojúhelníků"
#: src/guiengine/engine.cpp:1296
msgid "Loading"
@ -2687,7 +2687,7 @@ msgstr "Levý palec nahoru"
#: src/input/input_manager.cpp:807
#, c-format
msgid "Ignoring '%s'. You needed to join earlier to play!"
msgstr "Ignoruji '%s'. Musíte se do hry připojit dříve!"
msgstr "„%s“ je ignorováno. Abyste se mohli zúčastnit, je třeba se do hry připojit dříve!"
#: src/input/input_manager.cpp:837
msgid "Only the Game Master may act at this point!"
@ -2697,13 +2697,13 @@ msgstr "V tomto okamžiku může jednat pouze hráč zakládající hru!"
msgid ""
"Connect your wiimote to the Bluetooth manager, then click on Ok. Detailed "
"instructions at supertuxkart.net/Wiimote"
msgstr "Připojte svůj Wiimote ovladač do správce Bluetooth a poté klikněte na tlačítko Budiž. Podrobný návod je na supertuxkart.net/Wiimote"
msgstr "Připojte svůj Wiimote ovladač do správce Bluetooth a poté klikněte na tlačítko OK. Podrobný návod je na supertuxkart.net/Wiimote"
#: src/input/wiimote_manager.cpp:391
msgid ""
"Press the buttons 1+2 simultaneously on your wiimote to put it in discovery "
"mode, then click on Ok. Detailed instructions at supertuxkart.net/Wiimote"
msgstr "Stiskněte současně tlačítka 1 + 2 na vašem Wiimote ovladači, přepnete jej do režimu vyhledávání, poté klikněte na tlačítko Budiž. Podrobný návod je na supertuxkart.net/Wiimote"
msgstr "Stiskněte současně tlačítka 1 + 2 na svém Wiimote ovladači, přepnete jej do režimu vyhledávání, poté klikněte na tlačítko Budiž. Podrobný návod je na supertuxkart.net/Wiimote"
#: src/input/wiimote_manager.cpp:414
#, c-format
@ -2775,7 +2775,7 @@ msgstr "Vejce: %d / %d"
#: src/modes/follow_the_leader.cpp:62 src/modes/follow_the_leader.cpp:285
msgid "Leader"
msgstr "Vůdce"
msgstr "Vedoucí"
#: src/modes/linear_world.cpp:287
msgid "Final lap!"
@ -2866,7 +2866,7 @@ msgstr "Máte novou žádost o kamarádství!"
msgid ""
"Unable to connect to the server. Check your internet connection or try again"
" later."
msgstr "Nelze se připojit k serveru. Zkontrolujte své připojení k internetu a případně\npřed dalším pokusem zkuste počkat."
msgstr "Nelze se připojit k serveru. Zkontrolujte své připojení k Internetu a případně\npřed dalším pokusem zkuste počkat."
#: src/race/grand_prix_data.hpp:171
msgid "Random Grand Prix"
@ -2881,7 +2881,7 @@ msgstr "Soubor s nejvyšším skóre byl příliš starý,\nvšechna nejvyšší
#. I18N: Game mode
#: src/race/race_manager.hpp:179
msgid "Follow the Leader"
msgstr "Následujte vůdce"
msgstr "Následujte vedoucího"
#. I18N: Game mode
#: src/race/race_manager.hpp:181
@ -2991,7 +2991,7 @@ msgstr "standardní"
#: src/states_screens/kart_selection.cpp:1481
#: src/states_screens/race_setup_screen.cpp:99
msgid "Locked : solve active challenges to gain access to more!"
msgstr "Zamčeno: splň aktivní výzvy k získání přístupu!"
msgstr "Zamčeno: splňte aktivní výzvy k získání přístupu!"
#: src/states_screens/arenas_screen.cpp:339
msgid "Random Arena"

View File

@ -9,7 +9,7 @@
# Flakebi, 2015
# hiker <joerg@chiu-henrichs.id.au>, 2015
# konstin <konsti.schuetze@t-online.de>, 2015
# Maximilian Wagenbach <foaly.f@web.de>, 2016
# Maximilian Wagenbach <foaly@posteo.de>, 2016
# Tobias Markus <tobbi@supertuxproject.org>, 2015-2016
# Wasilis Mandratzis-Walz, 2015
# wesen <yannick.lapp@web.de>, 2016
@ -18,7 +18,7 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"PO-Revision-Date: 2017-11-26 08:20+0000\n"
"Last-Translator: Wuzzy <almikes@aol.com>\n"
"Language-Team: German (http://www.transifex.com/supertuxkart/supertuxkart/language/de/)\n"
"MIME-Version: 1.0\n"
@ -439,7 +439,7 @@ msgstr "Anzahl der Runden:"
#. I18N: ./data/gui/edit_track.stkgui
#. I18N: In the edit track screen
msgid "Reverse:"
msgstr "Umkehren:"
msgstr "Rückwärts:"
#. I18N: ./data/gui/edit_track.stkgui
#. I18N: ./data/gui/general_text_field_dialog.stkgui
@ -3324,7 +3324,7 @@ msgstr "Runden"
#: src/states_screens/edit_gp_screen.cpp:68
msgid "Reversed"
msgstr "Umgekehrt"
msgstr "Rückwärts"
#: src/states_screens/edit_gp_screen.cpp:124
#: src/states_screens/ghost_replay_selection.cpp:177
@ -4031,7 +4031,7 @@ msgstr "Maximal unterstützte Spieler: %d"
#. I18N: In the track info screen
#: src/states_screens/track_info_screen.cpp:213
msgid "Drive in reverse"
msgstr "Spiegelverkehrte Strecke"
msgstr "Rückwärts fahren"
#. I18N: In the track info screen
#: src/states_screens/track_info_screen.cpp:218

View File

@ -13,8 +13,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Auria <auria.mg@gmail.com>\n"
"PO-Revision-Date: 2017-11-21 20:34+0000\n"
"Last-Translator: Vangelis Skarmoutsos <skarmoutsosv@gmail.com>\n"
"Language-Team: Greek (http://www.transifex.com/supertuxkart/supertuxkart/language/el/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -1828,7 +1828,7 @@ msgstr "Είσαι λίγο αξιολύπητος twerps δεν θα είσαι
#. I18N: ../stk-assets/tracks/lasdunasarena/track.xml
msgid "Las Dunas Arena"
msgstr ""
msgstr "Λας Ντούνας Αρένα"
#. I18N: ../stk-assets/tracks/lighthouse/track.xml
msgid "Around the lighthouse"
@ -1924,7 +1924,7 @@ msgstr "Έξλι"
#. I18N: ../stk-assets/karts/kiki/kart.xml
msgid "Kiki"
msgstr ""
msgstr "Kiki"
#. I18N: ../stk-assets/karts/konqi/kart.xml
msgid "Konqi"

View File

@ -5,6 +5,7 @@
# Translators:
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011
# Jonas Marx <hallo@jonas-marx.com>, 2017
# Rachel Singh <rachel@moosader.com>, 2018
# Robin van der Vliet <info@robinvandervliet.nl>, 2015
# Любомир Василев, 2016
# Любомир Василев, 2016-2017
@ -13,8 +14,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Auria <auria.mg@gmail.com>\n"
"PO-Revision-Date: 2018-04-06 18:13+0000\n"
"Last-Translator: Rachel Singh <rachel@moosader.com>\n"
"Language-Team: Esperanto (http://www.transifex.com/supertuxkart/supertuxkart/language/eo/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -3159,7 +3160,7 @@ msgstr "Enŝaltita por ĉiuj"
#: src/states_screens/dialogs/custom_video_settings.cpp:102
#: src/states_screens/options_screen_video.cpp:469
msgid "Low"
msgstr ""
msgstr "Malalta"
#. I18N: Geometry level high : everything is displayed
#. I18N: in the graphical options tooltip;
@ -3169,21 +3170,21 @@ msgstr ""
#: src/states_screens/dialogs/custom_video_settings.cpp:103
#: src/states_screens/options_screen_video.cpp:472
msgid "High"
msgstr ""
msgstr "Alta"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very low
#: src/states_screens/dialogs/custom_video_settings.cpp:94
#: src/states_screens/options_screen_video.cpp:466
msgid "Very Low"
msgstr ""
msgstr "Malaltega"
#. I18N: in the graphical options tooltip;
#. indicates the rendered image quality is very high
#: src/states_screens/dialogs/custom_video_settings.cpp:97
#: src/states_screens/options_screen_video.cpp:475
msgid "Very High"
msgstr ""
msgstr "Altega"
#: src/states_screens/dialogs/message_dialog.cpp:129
#: src/states_screens/edit_gp_screen.cpp:257
@ -3193,11 +3194,11 @@ msgstr "Ne"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:60
msgid "Tablet"
msgstr ""
msgstr "Tabulkomputilo"
#: src/states_screens/dialogs/multitouch_settings_dialog.cpp:61
msgid "Phone"
msgstr ""
msgstr "Poŝtelefono"
#: src/states_screens/dialogs/recovery_dialog.cpp:121
msgid "Username and/or email address invalid."
@ -3381,7 +3382,7 @@ msgstr "Fina tempo"
#: src/states_screens/ghost_replay_selection.cpp:83
msgid "User"
msgstr ""
msgstr "Uzanto"
#: src/states_screens/gp_info_screen.cpp:74
msgid "Default"
@ -3958,7 +3959,7 @@ msgstr "Ne sukcesis krei ludiston '%s'."
#: src/states_screens/register_screen.cpp:277
msgid "Emails don't match!"
msgstr ""
msgstr "Retpoŝtadresoj ne estas sama!"
#: src/states_screens/register_screen.cpp:281
msgid "Online username has to be between 3 and 30 characters long!"

View File

@ -3,7 +3,7 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
# Marc Coll Carrillo <marc.coll.carrillo@gmail.com>, 2015-2017
# Marc Coll Carrillo <marc.coll.carrillo@gmail.com>, 2015-2018
# Veronica Sanchez, 2017
# William Beltrán <wbeltranc@gmail.com>, 2016
# William Beltrán <wbeltranc@gmail.com>, 2017
@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Veronica Sanchez\n"
"PO-Revision-Date: 2018-04-07 11:31+0000\n"
"Last-Translator: Marc Coll Carrillo <marc.coll.carrillo@gmail.com>\n"
"Language-Team: Spanish (http://www.transifex.com/supertuxkart/supertuxkart/language/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -23,7 +23,7 @@ msgstr ""
#. I18N: ./data/achievements.xml
msgid "Christoffel Columbus"
msgstr "Cristófal Colón"
msgstr "Cristóbal Colón"
#. I18N: ./data/achievements.xml
msgid "Play every official track at least once."
@ -1208,7 +1208,7 @@ msgstr "Servidores"
#. I18N: ./data/gui/online/profile_servers.stkgui
msgid "Local Networking"
msgstr "Red Local"
msgstr "Red local"
#. I18N: ./data/gui/online/profile_servers.stkgui
#. I18N: In the online multiplayer screen
@ -1223,7 +1223,7 @@ msgstr "Crear servidor"
#. I18N: ./data/gui/online/profile_servers.stkgui
msgid "Global Networking"
msgstr "Red Global"
msgstr "Red global"
#. I18N: ./data/gui/online/profile_servers.stkgui
#. I18N: In the online multiplayer screen
@ -1395,7 +1395,7 @@ msgstr "Votar"
#. I18N: ./data/gui/online/waiting_for_others.stkgui
#. I18N: Networking screen
msgid "Waiting for the others..."
msgstr "Esperando a los otros..."
msgstr "Esperando a los demás..."
#. I18N: ./data/gui/options_audio.stkgui
#. I18N: ./data/gui/options_device.stkgui
@ -3376,7 +3376,7 @@ msgstr "Has desbloqueado el campeonato %0"
#: src/states_screens/ghost_replay_selection.cpp:82
msgid "Finish Time"
msgstr "Tiempo de Llegada"
msgstr "Tiempo de llegada"
#: src/states_screens/ghost_replay_selection.cpp:83
msgid "User"
@ -3895,7 +3895,7 @@ msgstr "Empatados"
#: src/states_screens/race_result_gui.cpp:1098
#: src/states_screens/race_result_gui.cpp:1154
msgid "(Own Goal)"
msgstr "(Autogol)"
msgstr "(En propia puerta)"
#: src/states_screens/race_result_gui.cpp:1220
#, c-format
@ -4020,7 +4020,7 @@ msgstr "Circuito creado por %s"
#: src/states_screens/track_info_screen.cpp:120
#, c-format
msgid "Max players supported: %d"
msgstr "Jugadores máximos soportados: %d"
msgstr "Máximos jugadores permitidos: %d"
#. I18N: In the track info screen
#: src/states_screens/track_info_screen.cpp:213

View File

@ -3,14 +3,14 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
# Aaron Kearns <ajkearns6@gmail.com>, 2017
# Aaron Kearns <ajkearns6@gmail.com>, 2017-2018
msgid ""
msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Auria <auria.mg@gmail.com>\n"
"PO-Revision-Date: 2018-02-21 22:27+0000\n"
"Last-Translator: Aaron Kearns <ajkearns6@gmail.com>\n"
"Language-Team: Irish (http://www.transifex.com/supertuxkart/supertuxkart/language/ga/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -20,7 +20,7 @@ msgstr ""
#. I18N: ./data/achievements.xml
msgid "Christoffel Columbus"
msgstr ""
msgstr "Christoffel Columbus"
#. I18N: ./data/achievements.xml
msgid "Play every official track at least once."
@ -544,7 +544,7 @@ msgstr "Athainmnigh"
#. I18N: ./data/gui/grand_prix_lose.stkgui
#. I18N: ./data/gui/grand_prix_win.stkgui
msgid "Save Grand Prix"
msgstr ""
msgstr "Sábháil Grand Prix"
#. I18N: ./data/gui/help1.stkgui
#. I18N: ./data/gui/help2.stkgui
@ -1892,7 +1892,7 @@ msgstr "Gairdín Zen"
#. I18N: ../stk-assets/karts/adiumy/kart.xml
msgid "Adiumy"
msgstr ""
msgstr "Adiumy"
#. I18N: ../stk-assets/karts/amanda/kart.xml
msgid "Amanda"
@ -1904,7 +1904,7 @@ msgstr ""
#. I18N: ../stk-assets/karts/emule/kart.xml
msgid "Emule"
msgstr ""
msgstr "Emule"
#. I18N: ../stk-assets/karts/gavroche/kart.xml
msgid "Gavroche"
@ -1916,7 +1916,7 @@ msgstr "Gnu"
#. I18N: ../stk-assets/karts/hexley/kart.xml
msgid "Hexley"
msgstr ""
msgstr "Hexley"
#. I18N: ../stk-assets/karts/kiki/kart.xml
msgid "Kiki"
@ -1936,7 +1936,7 @@ msgstr "Pidgin"
#. I18N: ../stk-assets/karts/puffy/kart.xml
msgid "Puffy"
msgstr ""
msgstr "Puffy"
#. I18N: ../stk-assets/karts/sara_the_racer/kart.xml
msgid "Sara the Racer"
@ -2172,13 +2172,13 @@ msgstr ""
#: src/input/binding.cpp:144
msgctxt "input_key"
msgid "Kana"
msgstr ""
msgstr "Kana"
#. I18N: input configuration screen: keyboard key
#: src/input/binding.cpp:146
msgctxt "input_key"
msgid "Junja"
msgstr ""
msgstr "Junja"
#. I18N: input configuration screen: keyboard key
#. I18N: input configuration screen: keyboard key

View File

@ -11,7 +11,7 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"PO-Revision-Date: 2017-11-15 14:31+0000\n"
"Last-Translator: GunChleoc\n"
"Language-Team: Gaelic, Scottish (http://www.transifex.com/supertuxkart/supertuxkart/language/gd/)\n"
"MIME-Version: 1.0\n"
@ -608,7 +608,7 @@ msgstr "Modhan-\r\ngeama"
#. I18N: ./data/gui/help5.stkgui
#. I18N: Tab in help menu
msgid "Multi-player"
msgstr "Ioma-chluicheadair"
msgstr "Ioma-\nchluicheadair"
#. I18N: ./data/gui/help1.stkgui
#. I18N: Tab in help menu

View File

@ -8,6 +8,7 @@
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010
# GenghisKhan <genghiskhan@gmx.ca>, 2015-2016
# Liran <liranvaknin@gmail.com>, 2016-2017
# Yaroslav Serhieiev <noomorph@gmail.com>, 2018
# Yevgney Sliosarenko, 2015
# ‫רואי לוי‬‎ <roei1234567@gmail.com>, 2016
msgid ""
@ -15,8 +16,8 @@ msgstr ""
"Project-Id-Version: SuperTuxKart\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-10-04 20:58-0400\n"
"PO-Revision-Date: 2017-11-13 00:19+0000\n"
"Last-Translator: Liran <liranvaknin@gmail.com>\n"
"PO-Revision-Date: 2018-03-25 14:36+0000\n"
"Last-Translator: Yaroslav Serhieiev <noomorph@gmail.com>\n"
"Language-Team: Hebrew (http://www.transifex.com/supertuxkart/supertuxkart/language/he/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -937,7 +938,7 @@ msgstr "מתקדם"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
msgid "Deadzone"
msgstr ""
msgstr "שטח מת"
#. I18N: ./data/gui/multitouch_settings.stkgui
#. I18N: In the multitouch settings screen
@ -1830,7 +1831,7 @@ msgstr " אבל טיפשים קטנים ועלובים שכמותכם לעולם
#. I18N: ../stk-assets/tracks/lasdunasarena/track.xml
msgid "Las Dunas Arena"
msgstr ""
msgstr "ארנה לאס דונאס"
#. I18N: ../stk-assets/tracks/lighthouse/track.xml
msgid "Around the lighthouse"
@ -1926,7 +1927,7 @@ msgstr "הקסלי"
#. I18N: ../stk-assets/karts/kiki/kart.xml
msgid "Kiki"
msgstr ""
msgstr "קיקי"
#. I18N: ../stk-assets/karts/konqi/kart.xml
msgid "Konqi"

Some files were not shown because too many files have changed in this diff Show More