Made the irrlicht branch the new trunk.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4300 178a84e3-b1eb-0310-8ba1-8eac791a3b58
45
INSTALL
@ -7,8 +7,7 @@ General
|
||||
First, make sure that you have the following packages installed:
|
||||
|
||||
* OpenGL (or Mesa 3.0 or later)
|
||||
* PLIB version 1.8.4 or later
|
||||
* SDL 1.2 or later
|
||||
* Irrlicht 1.6
|
||||
* OpenAL
|
||||
|
||||
Unpack the files from the tarball like this:
|
||||
@ -36,28 +35,43 @@ location, use the "--prefix" option of configure, e.g. --prefix=/usr
|
||||
See the --help output of configure for further options.
|
||||
|
||||
|
||||
SVN STK on Ubuntu Edgy
|
||||
----------------------
|
||||
Here are the compilation instructions for the current svn(05 oct. 2006) of
|
||||
Super Tux Kart on Ubuntu Edgy, contributed by Damien:
|
||||
SVN STK on Ubuntu
|
||||
-----------------
|
||||
Here are the compilation instructions for the current svn(2009-10-15) of
|
||||
Super Tux Kart originally contributed by Damien for Ubuntu Edgy, and updated
|
||||
to 9.04 version:
|
||||
|
||||
install following packages:
|
||||
# apt-get install libopenal-dev libmikmod2-dev plib1.8.4-dev
|
||||
# apt-get install libtool libxxf86vm-dev libopenal-dev
|
||||
libglu1-mesa-dev subversion autoconf automake1.9 g++ gcc
|
||||
|
||||
do a:
|
||||
$ svn checkout http://supertuxkart.svn.sourceforge.net/svnroot/supertuxkart/trunk/supertuxkart
|
||||
$ svn checkout https://supertuxkart.svn.sourceforge.net/svnroot/supertuxkart/main/branches/irrlicht
|
||||
|
||||
then:
|
||||
Get irrlicht-1.6.zip and unzip it, compile irrlicht:
|
||||
$ cd irrlicht-1.6/source/Irrlicht/
|
||||
$ make
|
||||
$ cd ../../..
|
||||
$ pwd
|
||||
/some/path/
|
||||
|
||||
then we can move to stk, remember to replace the output of pwd below:
|
||||
$ cd trunk
|
||||
$ ./autogen.sh && ./configure && make
|
||||
and if all went well:
|
||||
$ ./autogen.sh && ./configure --enable-irrlicht --with-irrlicht=/some/path/irrlicht-1.6/ && make
|
||||
and if all went well run the game:
|
||||
$ src/supertuxkart
|
||||
|
||||
tested with g++ 3.3 and 4.1 , both succeeded.
|
||||
|
||||
If you want to install the game system-wide, do 'make install'.
|
||||
|
||||
To update the source from inside trunk directory, one simple command:
|
||||
$ svn up
|
||||
and then, in most cases, just rebuild:
|
||||
$ make
|
||||
with the exception of changes to any Makefile.am, in which case:
|
||||
$ ./autogen.sh && ./configure --enable-irrlicht --with-irrlicht=/some/path/irrlicht-1.6/ && make
|
||||
|
||||
|
||||
But it didn't work!
|
||||
-------------------
|
||||
@ -71,15 +85,12 @@ http://supertuxkart.sourceforge.net/
|
||||
|
||||
|
||||
Also, the most common (by FAR) reason for problems is that your OpenGL/Mesa
|
||||
is incorrectly installed - so before you complain to any of the PLIB or
|
||||
is incorrectly installed - so before you complain to any of the Irrlicht or
|
||||
Supertuxkart mailing lists, first try running one of the example programs
|
||||
that comes with your OpenGL implementation - or one of the Mesa or GLUT
|
||||
sample programs.
|
||||
|
||||
If you those examples run OK - then go to the PLIB home page and download
|
||||
the PLIB examples.
|
||||
|
||||
If THOSE run correctly - but Supertuxkart doesn't then please get in touch
|
||||
with the SupertuxKart mailing list and we'll do our best to get you up and
|
||||
If THOSE run correctly - but Supertuxkart doesn't then please get in touch
|
||||
with the SupertuxKart mailing list and we'll do our best to get you up and
|
||||
racing.
|
||||
|
||||
|
@ -7,10 +7,7 @@ Some short instruction on how to compile supertuxkart with cygwin:
|
||||
This is part of the cygwin packages, so just select this in
|
||||
the cygwin setup program.
|
||||
|
||||
3) Compile and install plib
|
||||
This should work straight out of the box.
|
||||
|
||||
4) Install OpenAL
|
||||
3) Install OpenAL
|
||||
We have had some problems with this, so this might be the most difficult stage.
|
||||
|
||||
4) Unpack superuxkart and run ./configure and make.
|
||||
@ -22,8 +19,6 @@ Comments:
|
||||
1) A -DNOMINMAX is added for cygwin compilations, since otherwise
|
||||
min and max are #defined, causing problems with all std::min and
|
||||
std::max constructs.
|
||||
2) The order in which plib/pu.h and plib/pw.h are included appears
|
||||
to be important - pw should be included first.
|
||||
|
||||
If you have any problems, please post on the mailing list - I am
|
||||
not a regular windows user, so am probably not able to help you.
|
||||
|
115
README.macosx
@ -3,10 +3,6 @@ http://supertuxkart.sourceforge.net/Building_and_packaging_on_OSX
|
||||
(*) There is an experimental Xcode project in /src/ide/Xcode/. It will still require that all dependencies are installed as explained on the wiki.
|
||||
|
||||
The older instructions should still work, and are quite detailed.
|
||||
Note that we supply a modified version of plib (on our download page
|
||||
at http://sourceforge.net/project/showfiles.php?group_id=202302)
|
||||
which fixes a few compilation problems on Macs. We strongly recommend
|
||||
to use this version (unless a newer plib version is released).
|
||||
|
||||
System requirements Mac:
|
||||
PowerPC- or Intel-Mac with 800 MHz or more,
|
||||
@ -78,109 +74,7 @@ if [ "${BASH-no}" != "no" ]; then [ -r /etc/bashrc ] && . /etc/bashrc fi
|
||||
13.03 Change in the folder Contents:Frameworks. And copy Vorbis.framework and Ogg.framework to <hd>:Library:Frameworks.
|
||||
|
||||
|
||||
14. Installing plib: ////////////////////////////////////////
|
||||
|
||||
|
||||
14.01 Download PLIB from http://plib.sourceforge.net/download.html
|
||||
|
||||
|
||||
14.02 Unpack plib-1.8.4.tar.gz.
|
||||
|
||||
|
||||
14.03 Change in the folder PLIB.
|
||||
|
||||
|
||||
14.04 Download "pwMacOSX.cxx"-patch from ftp://ftp.berlios.de/pub/supertuxkart/plib_patch_for_osx.zip
|
||||
|
||||
|
||||
14.05 Installing pwMacOSX.cxx-patch.
|
||||
|
||||
|
||||
14.06 Run ./configure --prefix=<..... Universal/plib_ppc>" in the folder PLIB.
|
||||
|
||||
|
||||
e.g.: /Users/christian/Desktop/Universal/plib_ppc.
|
||||
|
||||
|
||||
14.07 Modify the plib:
|
||||
|
||||
|
||||
jsMacOSX.cxx:
|
||||
|
||||
|
||||
#include <IOKit/IOkitLib.h>
|
||||
|
||||
|
||||
replace with:
|
||||
|
||||
|
||||
#include <IOKit/IOKitLib.h>
|
||||
|
||||
|
||||
14.08 jsMacOSX.cxx:
|
||||
|
||||
|
||||
static void os_specific_s::elementEnumerator( const void *element, void* vjs)
|
||||
|
||||
|
||||
replace with:
|
||||
|
||||
|
||||
void os_specific_s::elementEnumerator( const void *element, void* vjs)
|
||||
|
||||
|
||||
14.09 make
|
||||
|
||||
14.10 make install
|
||||
|
||||
14.11 make clean
|
||||
|
||||
|
||||
14.12 Run "./configure --prefix=<..... Universal/plib_x86>" in the folder PLIB.
|
||||
|
||||
e.g.: /Users/christian/Desktop/Universal/plib_x86.
|
||||
|
||||
14.13 Edit the following Makefiles:
|
||||
|
||||
<PLIB-Ordner>/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/fnt/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/js/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/net/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/psl/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/puAux/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/pui/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/pw/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/sg/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/sl/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/ssg/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/ssgAux/Makefile
|
||||
|
||||
<PLIB-Ordner>/src/util/Makefile
|
||||
|
||||
replace the line: "CXXFLAGS =" with "CXXFLAGS = -g -O2 -Wall -arch i386"
|
||||
|
||||
14.14 make install
|
||||
|
||||
14.15 Create a universal (multi-architecture) plib:
|
||||
|
||||
lipo -create /Users/christian/Desktop/Universal/plib_ppc/lib/libplibfnt.a /Users/christian/Desktop/Universal/
|
||||
|
||||
plib_x86/lib/libplibfnt.a -output /usr/lib/libplibfnt.a
|
||||
|
||||
Repeat this step for all libraries.
|
||||
14. This step is not necessary anymore.
|
||||
|
||||
15. Installing Freealut-1.1.0 from OpenAL.org ////////////////////
|
||||
|
||||
@ -241,12 +135,7 @@ Libs: -framework OpenAL -L${libdir} -lalut Cflags: -framework OpenAL -I${include
|
||||
15.09 sudo make install
|
||||
|
||||
|
||||
16. Copy the plib files to "/usr/local":
|
||||
|
||||
16.01 sudo cp /usr/lib/libplib* /usr/local/lib/
|
||||
|
||||
16.02 sudo cp -R /usr/include/plib /usr/local/include/
|
||||
|
||||
16. This step is not necessary anymore.
|
||||
|
||||
Installing SuperTuxKart //////////
|
||||
|
||||
|
@ -25,13 +25,10 @@ Cygwin
|
||||
This is part of the cygwin packages, so just select this in
|
||||
the cygwin setup program.
|
||||
|
||||
2) Compile and install plib
|
||||
This should work straight out of the box.
|
||||
|
||||
3) Install OpenAL
|
||||
2) Install OpenAL
|
||||
We have had some problems with this in the past, so it might be tricky.
|
||||
|
||||
4) Unpack supertuxkart and run ./configure and make.
|
||||
3) Unpack supertuxkart and run ./configure and make.
|
||||
|
||||
That should be all.
|
||||
|
||||
@ -40,8 +37,6 @@ Comments:
|
||||
min and max are #defined, causing problems with all std::min and
|
||||
std::max constructs. This is done automatically by the configure
|
||||
script.
|
||||
2) The order in which plib/pu.h and plib/pw.h are included appears
|
||||
to be important - pw should be included first.
|
||||
|
||||
|
||||
|
||||
@ -55,17 +50,5 @@ The main project file is .../src/ide/vc8/supertuxkart.vcproj,
|
||||
and it includes a sub project for the bullet library. More details
|
||||
can be found in .../src/ide/vc8/README.
|
||||
|
||||
You still have to install all dependencies, and:
|
||||
1) Modify plib:
|
||||
Best choice would be to use the plib version from our download page,
|
||||
since it contains all bugfixes that are necessary. The latest
|
||||
release (1.8.5) might work, if you are using 1.8.4:
|
||||
In src/ssg/ssgLoadAC.cxx replace:
|
||||
loader_fd = fopen ( filename, "ra" ) ;
|
||||
with
|
||||
loader_fd = fopen ( filename, "r" ) ;
|
||||
This patch will be submitted to PLIB, but we don't know if and
|
||||
when it will be applied.
|
||||
|
||||
2) Compile plib (project files for visual c++ are included)
|
||||
You still have to install all dependencies.
|
||||
|
||||
|
16
SVN-CONFIG
@ -1,10 +1,10 @@
|
||||
Please, make sure your SVN client uses something that matches the
|
||||
following config. Specially the autoprops part, that way new files
|
||||
will be added with the right settings. Default config for command line
|
||||
svn is in ~/.subversion/config. If you use SVN for multiple projects
|
||||
simultaneously, remember you can use different configs, at least in
|
||||
cmd line (via --config-dir and for example ~/.subversion/supertuxkart/
|
||||
with a new config file inside).
|
||||
# Please, make sure your SVN client uses something that matches the
|
||||
# following config. Specially the autoprops part, that way new files
|
||||
# will be added with the right settings. Default config for command line
|
||||
# svn is in ~/.subversion/config. If you use SVN for multiple projects
|
||||
# simultaneously, remember you can use different configs, at least in
|
||||
# cmd line (via --config-dir and for example ~/.subversion/supertuxkart/
|
||||
# with a new config file inside).
|
||||
|
||||
[miscellany]
|
||||
global-ignores = *.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store
|
||||
@ -31,4 +31,4 @@ Makefile = svn:eol-style=native;svn:keywords=Author Date Id Revision
|
||||
*.pdf = svn:mime-type=application/pdf
|
||||
SConstruct = svn:eol-style=native;svn:keywords=Author Date Id Revision
|
||||
*.xml = svn:eol-style=native;svn:mime-type=text/xml
|
||||
*.py = svn:eol-style=native;svn:executable;svn:keywords=Author Date Id Revision
|
||||
*.py = svn:eol-style=native;svn:keywords=Author Date Id Revision
|
||||
|
222
configure.ac
@ -29,7 +29,6 @@ AC_PROG_CPP
|
||||
AC_PROG_CXX
|
||||
|
||||
# This macro defines WORDS_BIGENDIAN if building for a big endian machine.
|
||||
# This is required by ov_read (Ogg Vorbis)
|
||||
AC_C_BIGENDIAN
|
||||
|
||||
|
||||
@ -41,11 +40,6 @@ dnl Check for `configure' flags
|
||||
dnl ===========================
|
||||
SUMMARY="\nSummary of optional components:\n==============================="
|
||||
|
||||
if test "x$with_plib" != "x" ; then
|
||||
echo "plib prefix is $with_plib"
|
||||
EXTRA_DIRS="${EXTRA_DIRS} $with_plib"
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(debug, [AS_HELP_STRING(--enable-debug,
|
||||
[enable debugging info])])
|
||||
if test x$enable_debug = xyes; then
|
||||
@ -69,15 +63,6 @@ else
|
||||
SUMMARY="$SUMMARY\nDisabled compiler optimizations."
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(irrlicht, [AS_HELP_STRING(--enable-irrlicht,
|
||||
[enable irrlicht compilation (still early pre-alpha)])],,
|
||||
enable_irrlicht=false)
|
||||
if test x$enable_irrlicht = xyes; then
|
||||
AC_DEFINE([HAVE_IRRLICHT], [1], [enable irrlicht compilation])
|
||||
SUMMARY="$SUMMARY\nCompiling for irrlicht - be warned, pre-alpha!!"
|
||||
fi
|
||||
|
||||
|
||||
dnl ===================
|
||||
dnl Checks for programs.
|
||||
dnl ===================
|
||||
@ -117,7 +102,6 @@ case "${host}" in
|
||||
|
||||
save_LIBS=$LIBS
|
||||
AC_SEARCH_LIBS(glNewList, [ GL GLcore MesaGL ])
|
||||
AC_SEARCH_LIBS(gluLookAt, GLU)
|
||||
opengl_LIBS="$LIBS"
|
||||
LIBS=$save_LIBS
|
||||
if test "x$ac_cv_search_glNewList" = "x-lGLcore"; then
|
||||
@ -195,124 +179,74 @@ LIBS=$save_LIBS
|
||||
AC_LANG_PUSH(C++)
|
||||
|
||||
|
||||
# ==============================================
|
||||
# Check for "plib" without which we cannot go on
|
||||
# ==============================================
|
||||
# specify the plib location
|
||||
AC_ARG_WITH(plib, [AS_HELP_STRING(--with-plib=PREFIX,
|
||||
[specify the prefix path to plib])])
|
||||
if test "x$with_plib" != "x" ; then
|
||||
echo "plib prefix is $with_plib"
|
||||
EXTRA_DIRS="${EXTRA_DIRS} $with_plib"
|
||||
fi
|
||||
|
||||
AC_CHECK_HEADER(plib/ul.h)
|
||||
if test "x$ac_cv_header_plib_ul_h" != "xyes"; then
|
||||
AC_MSG_ERROR([[cannot find useable plib installation. You need to install plib 1.8.4 or newer.]])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for plib 1.8.4 or newer])
|
||||
AC_TRY_RUN([
|
||||
# include <plib/ul.h>
|
||||
|
||||
# define MIN_PLIB_VERSION 184
|
||||
int main() {
|
||||
if ( PLIB_VERSION < MIN_PLIB_VERSION ) {
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
],
|
||||
AC_MSG_RESULT(yes),
|
||||
[ AC_MSG_RESULT(wrong version);
|
||||
AC_MSG_ERROR([plib 1.8.4 or later is needed. Please intall it first.])],
|
||||
AC_MSG_RESULT(yes)
|
||||
)
|
||||
|
||||
|
||||
|
||||
dnl =======================
|
||||
dnl check for SDL libraries
|
||||
dnl =======================
|
||||
dnl Potentially sdl-config could be used, but apparently that might not
|
||||
dnl exist on all platforms, so doing the 'classical' test is safer :(
|
||||
case "${host}" in
|
||||
*)
|
||||
dnl default unix style machines
|
||||
|
||||
dnl check for libraries
|
||||
save_LIBS=$LIBS
|
||||
AC_SEARCH_LIBS(SDL_Init, SDL, have_SDL_lib=yes)
|
||||
sdl_LIBS="$LIBS"
|
||||
LIBS=$save_LIBS
|
||||
|
||||
dnl check for header files
|
||||
AC_CHECK_HEADER(SDL/SDL.h, have_SDL_hdr=yes)
|
||||
|
||||
if test x$have_SDL_hdr != xyes -o x$have_SDL_lib != xyes; then
|
||||
AC_MSG_ERROR([Install SDL first...])
|
||||
fi
|
||||
|
||||
AC_TRY_RUN([
|
||||
# include <SDL/SDL.h>
|
||||
int main() {
|
||||
if ( SDL_VERSION_ATLEAST(1,2,10)) {
|
||||
return 0;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
],
|
||||
:,
|
||||
AC_MSG_WARN([Your SDL version uses deprecated
|
||||
headers. Please update to version 1.2.10 or higher if possible.
|
||||
Currently this doesn't affects the game at all.])
|
||||
)
|
||||
|
||||
esac
|
||||
|
||||
|
||||
dnl ===============================
|
||||
dnl Check for irrlicht (if enabled)
|
||||
dnl ===============================
|
||||
if test x$enable_irrlicht = xyes; then
|
||||
AC_ARG_WITH(irrlicht, [AS_HELP_STRING(--with-irrlicht=PREFIX,
|
||||
[specify the prefix path to irrlicht])])
|
||||
if test "x$with_irrlicht" != "x" ; then
|
||||
CPPFLAGS="${CPPFLAGS} -I$with_irrlicht/include"
|
||||
AC_ARG_WITH(irrlicht, [AS_HELP_STRING(--with-irrlicht=PREFIX,
|
||||
[specify the prefix path to irrlicht])])
|
||||
if test "x$with_irrlicht" != "x" ; then
|
||||
CPPFLAGS="${CPPFLAGS} -I $with_irrlicht/include"
|
||||
AC_CHECK_HEADER(irrlicht.h, have_irrlicht_hdr=yes)
|
||||
if test x$have_irrlicht_hdr != xyes; then
|
||||
AC_MSG_ERROR([Can't find irrlicht in $with_irrlicht.])
|
||||
fi
|
||||
else
|
||||
CPPFLAGS_save=CPPFLAGS
|
||||
CPPFLAGS="${CPPFLAGS} -I /usr/local/include/irrlicht"
|
||||
AC_CHECK_HEADER(irrlicht.h, have_irrlicht_hdr=yes)
|
||||
if test x$have_irrlicht_hdr != xyes; then
|
||||
AC_MSG_ERROR([Can't find irrlicht installation, use --with-irrlicht...])
|
||||
fi
|
||||
case "${host}" in
|
||||
*-*-linux* )
|
||||
irrlicht_LIBS="-L/$with_irrlicht/lib/Linux -lIrrlicht"
|
||||
;;
|
||||
*darwin*|*macosx*)
|
||||
irrlicht_LIBS="-L/$with_irrlicht/lib/ -lIrrlicht"
|
||||
;;
|
||||
esac
|
||||
|
||||
dnl Test if we need Xxf86vm. For now assume that if any problems
|
||||
dnl occur with this simple program, it must be caused by this
|
||||
dnl missing library. FIXME: better tests should be done here!!
|
||||
dnl FIXME: this program when run prints out two lines (version numbers) to stdout
|
||||
echo "checking for irrlicht libraries."
|
||||
save_LIBS=$LIBS
|
||||
LIBS="$LIBS $irrlicht_LIBS $opengl_LIBS"
|
||||
AC_TRY_RUN([
|
||||
# include "irrlicht.h"
|
||||
int main() {
|
||||
irr::createDevice(irr::video::EDT_NULL);
|
||||
return 0;
|
||||
}
|
||||
],
|
||||
,
|
||||
irrlicht_LIBS="$irrlicht_LIBS -lXxf86vm"
|
||||
)
|
||||
LIBS=$save_LIBS
|
||||
|
||||
fi
|
||||
case "${host}" in
|
||||
*-*-linux* )
|
||||
irrlicht_LIBS="-L/$with_irrlicht/lib/Linux -lIrrlicht"
|
||||
;;
|
||||
*darwin*|*macosx*)
|
||||
irrlicht_LIBS="-L/$with_irrlicht/lib/ -lIrrlicht"
|
||||
;;
|
||||
*freebsd*)
|
||||
irrlicht_LIBS="-L/$with_irrlicht/lib/ -lIrrlicht"
|
||||
esac
|
||||
|
||||
dnl Test if we need Xxf86vm. For now assume that if any problems
|
||||
dnl occur with this simple program, it must be caused by this
|
||||
dnl missing library. FIXME: better tests should be done here!!
|
||||
dnl FIXME: this program when run prints out two lines (version numbers) to stdout
|
||||
echo "checking for irrlicht libraries."
|
||||
save_LIBS=$LIBS
|
||||
LIBS="$LIBS $irrlicht_LIBS $opengl_LIBS"
|
||||
|
||||
case "${host}" in
|
||||
*-*-linux* )
|
||||
AC_TRY_RUN([
|
||||
# include "irrlicht.h"
|
||||
int main() {
|
||||
irr::createDevice(irr::video::EDT_NULL);
|
||||
return 0;
|
||||
}
|
||||
],
|
||||
,
|
||||
irrlicht_LIBS="$irrlicht_LIBS -lXxf86vm"
|
||||
)
|
||||
;;
|
||||
*darwin*|*macosx*)
|
||||
AC_TRY_RUN([
|
||||
# include "irrlicht.h"
|
||||
int main() {
|
||||
irr::createDevice(irr::video::EDT_NULL);
|
||||
return 0;
|
||||
}
|
||||
],
|
||||
,
|
||||
irrlicht_LIBS="$irrlicht_LIBS"
|
||||
)
|
||||
;;
|
||||
*freebsd*)
|
||||
LDFLAGS="$LDFLAGS -lpthread"
|
||||
esac
|
||||
|
||||
LIBS=$save_LIBS
|
||||
|
||||
dnl ======================================================
|
||||
dnl Try to supply the SVN revision number for the compiler
|
||||
@ -323,21 +257,6 @@ if test x$have_svnversion != xno; then
|
||||
AC_DEFINE_UNQUOTED([SVNVERSION],"$SVNVERSION",["SVN revision number"])
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for gcc -fno-regmove option ])
|
||||
|
||||
dnl =========================
|
||||
dnl test regmove compiler bug
|
||||
dnl =========================
|
||||
dnl Test if -fno-regmove is supported, since -fregmove (which is part of -O2 on
|
||||
dnl g++) triggers an optimisation problem with static_ssg:
|
||||
ORIGCXXFLAGS="$CXXFLAGS"
|
||||
CXXFLAGS="$CXXFLAGS -fno-regmove"
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
|
||||
AC_MSG_RESULT(yes); NOREGMOVE=-fno-regmove,
|
||||
AC_MSG_RESULT(no); NOREGMOVE="")
|
||||
CXXFLAGS="$ORIGCXXFLAGS"
|
||||
AC_SUBST(NOREGMOVE)
|
||||
|
||||
dnl ==============================================
|
||||
dnl Glut (optional), used by bullet debugging only
|
||||
dnl ==============================================
|
||||
@ -416,27 +335,6 @@ ENETTREE="src/enet"
|
||||
# Check for gettext
|
||||
CHECK_GETTEXT(external)
|
||||
|
||||
dnl =======================================================
|
||||
dnl Add special compiler flags for SDL on certain platforms
|
||||
dnl =======================================================
|
||||
case "${host}" in
|
||||
*darwin*|*macosx*)
|
||||
dnl SDL on Macs needs to link in SDLmain, since it includes the
|
||||
dnl actual main program (on Macs #include "SDL/SDL.h" renames
|
||||
dnl main into SDL_main, which then gets called from the new
|
||||
dnl main program included in SDLmain. This is necessary to
|
||||
dnl install a proper framework for SDL).
|
||||
dnl This can't be done earlier, since all SDL tests program
|
||||
dnl from configure do NOT include SDL/SDL.h, therefore the
|
||||
dnl main program gets not replaced, and then getting an linking
|
||||
dnl error about main defined twice :((
|
||||
AC_CHECK_PROGS(have_sdl_config,[sdl-config],"no")
|
||||
if test x$have_sdl_config != xno; then
|
||||
LDFLAGS="$LDFLAGS `sdl-config --libs`"
|
||||
CXXFLAGS="$CXXFLAGS `sdl-config --cflags`"
|
||||
fi
|
||||
esac
|
||||
|
||||
# =========================
|
||||
# subst bars in Makefile.am
|
||||
# =========================
|
||||
@ -447,7 +345,6 @@ AC_SUBST(opengl_LIBS)
|
||||
AC_SUBST(openal_LIBS)
|
||||
AC_SUBST(oggvorbis_LIBS)
|
||||
AC_SUBST(glut_LIBS)
|
||||
AC_SUBST(sdl_LIBS)
|
||||
AC_SUBST(BULLETTREE)
|
||||
AC_SUBST(ENETTREE)
|
||||
|
||||
@ -459,6 +356,7 @@ AC_CONFIG_FILES([ \
|
||||
data/Makefile \
|
||||
data/fonts/Makefile \
|
||||
data/grandprix/Makefile \
|
||||
data/gui/Makefile \
|
||||
data/items/Makefile \
|
||||
data/karts/Makefile \
|
||||
data/models/Makefile \
|
||||
|
387
data/CREDITS
@ -1,274 +1,241 @@
|
||||
Super TuxKart - SVN
|
||||
=================
|
||||
Visit us at http://supertuxkart.sourceforge.net
|
||||
= Super TuxKart =
|
||||
A Libre Karting Game Featuring Tux & Friends
|
||||
- Version SVN
|
||||
- Visit us at http://supertuxkart.sf.net
|
||||
|
||||
|
||||
SuperTuxKart Administrators:
|
||||
----------------------------
|
||||
= SuperTuxKart Administrators =
|
||||
|
||||
Joerg Henrichs (hiker)
|
||||
- Project leader
|
||||
- Programming
|
||||
- Lead Programming
|
||||
- Windows Packaging
|
||||
|
||||
Marianne Gagnon (Auria)
|
||||
- Lead Programming
|
||||
- Art director
|
||||
- Programming
|
||||
- Mac OS X Packager
|
||||
|
||||
Constantin Pelikan (conso)
|
||||
- Add-ons administrator
|
||||
- Art director
|
||||
- Add-on package administrator
|
||||
|
||||
|
||||
Additional Programming
|
||||
----------------------
|
||||
= Additional Programming =
|
||||
|
||||
Stephen Dunn
|
||||
- Work on Audio
|
||||
|
||||
Damien
|
||||
- Ogg vorbis support
|
||||
|
||||
Yann Leprince (sciyann)
|
||||
- Improved build system
|
||||
- Bug fixes
|
||||
|
||||
Patrick Ammann
|
||||
- OpenAL support
|
||||
- Bug fixes
|
||||
- Code cleanup
|
||||
|
||||
Paul Elms (scifly)
|
||||
- Change resoluton GUI
|
||||
- Bug fixes
|
||||
|
||||
Robert Schuster
|
||||
- User settings updates
|
||||
- Input handling improvements
|
||||
- SDL port
|
||||
- Bug fixes
|
||||
Bug fixes & misc contributions
|
||||
- Damien
|
||||
- Yann Leprince (sciyann)
|
||||
- Robert Schuster
|
||||
- Patrick Ammann
|
||||
- Paul Elms (scifly)
|
||||
- Xapantu
|
||||
|
||||
|
||||
Visual art
|
||||
----------
|
||||
David
|
||||
- Work on flying items
|
||||
|
||||
= Visual art =
|
||||
|
||||
Minibjorn
|
||||
- Powerups and baddies : Bowling Ball, Cake, Plunger, Bubblegum, Anchor, Bomb, Gift-box, Nitro-tank (models + icons)
|
||||
- Powerups and baddies (models + icons)
|
||||
- (Bowling Ball, Cake, Plunger, Bubblegum,
|
||||
- Anchor, Bomb, Gift-box, Nitro-tank)
|
||||
- Fire and smoke particles
|
||||
- Puffy kart
|
||||
- Various textures
|
||||
|
||||
The BurningWell image collection
|
||||
|
||||
Tobias Beyrer
|
||||
- Wilber kart
|
||||
- elePHPant kart
|
||||
- main menu background (with modifications by Auria and MiniBjorn)
|
||||
|
||||
Thomas Oppl
|
||||
- 'Canyon' track
|
||||
- 'City' track
|
||||
- New 'racetrack' track
|
||||
- New banana model
|
||||
|
||||
Benjamin Arnaudet
|
||||
- GNU Kart
|
||||
Cheleb
|
||||
- Nolok kart
|
||||
- Pidgin kart
|
||||
|
||||
MacIO
|
||||
- Cave X arena
|
||||
Tobias Beyrer
|
||||
- Wilber kart
|
||||
- elePHPant kart
|
||||
|
||||
GUI Icons
|
||||
- onyum.com, commissioned by OpenGameArt.org/Bart Kelsey
|
||||
- yeKcim (Anthony Carré)
|
||||
|
||||
Ivar ten Cate (Varivar)
|
||||
- Old mine track
|
||||
- Tux Tollway track
|
||||
|
||||
Canarix, Andy (Needer)
|
||||
- 2D art
|
||||
|
||||
Startrack improvements:
|
||||
Canarix, Andy (Needer)
|
||||
Conso
|
||||
Paul Elms (scifly)
|
||||
|
||||
Marianne Gagnon (Auria)
|
||||
- 'SnowTux peak' track (Based on previous track 'Geeko peak' from original TuxKart)
|
||||
- 'Shifting sands', 'Around the Lighthouse' and 'On the beach' track improvements
|
||||
- 'Amazonian Journey' track
|
||||
- 'Fort Magma' track (based on previous track 'BSOD castle' from original TuxKart) (modified by conso)
|
||||
- 'Crescent Crossing' track (Based on previous track 'little volcano' from GOTM contributors)
|
||||
- New icon
|
||||
|
||||
Frederico de Oliveira Linhares
|
||||
- Hexley the platypus character (modified and arranged with modified Wilber-kart by conso)
|
||||
|
||||
Johannes Sjolund
|
||||
- 'The Island' track (with modifications by Wayne Dennis (Pixel_2ACF3))
|
||||
|
||||
Christian Framing
|
||||
- Updated EvilTux kart
|
||||
Other art contributions
|
||||
- Benjamin Arnaudet : GNU kart
|
||||
- MacIO : Cave X arena
|
||||
- abejones : Adiumy kart
|
||||
- Christian Framing (Updated EvilTux kart)
|
||||
- Andy (Needer)
|
||||
- Paul Elms (scifly)
|
||||
- Rudy85 : Character animations
|
||||
|
||||
Robert Howie
|
||||
- Skyline Track (with modifications by conso)
|
||||
|
||||
Elisee
|
||||
- Checker background
|
||||
|
||||
Marianne Gagnon (Auria)
|
||||
- 'SnowTux peak' (Based on older 'Geeko peak')
|
||||
- 'Shifting sands' improvements
|
||||
- 'Around the Lighthouse' improvements
|
||||
- 'On the beach' improvements
|
||||
- 'Amazonian Journey' track
|
||||
- 'Fort Magma' (based on older 'BSOD castle')
|
||||
- 'Crescent Crossing' (Based on older 'little volcano')
|
||||
- New icon
|
||||
|
||||
Frederico de Oliveira Linhares
|
||||
- Hexley kart character (modified
|
||||
- to use Wilber-kart by conso)
|
||||
|
||||
Johannes Sjolund
|
||||
- 'The Island' track (with modifications
|
||||
- by Wayne Dennis (Pixel_2ACF3))
|
||||
|
||||
Canis Lupus
|
||||
- Snow Mountain track
|
||||
- XR591 track (with modifications by conso)
|
||||
|
||||
Music
|
||||
-----
|
||||
Other media sources
|
||||
- BurningWell : public domain photos
|
||||
- Extreme Tux Racer
|
||||
- The Glest Jungle Set
|
||||
|
||||
Weirwood
|
||||
- 'Kart grand prix' song
|
||||
|
||||
Lukas Siewert (Dr.Sternhagel)
|
||||
- 'Caribbean music' song
|
||||
|
||||
Magne Djupvik
|
||||
- 'Penguin Party' song
|
||||
|
||||
Paul Esra Martin (P@ule)
|
||||
- 'G4M fan track' song
|
||||
|
||||
Marianne Gagnon (Auria)
|
||||
- Jungle song
|
||||
|
||||
Matt Thomas
|
||||
- Boom-boom-boom song
|
||||
|
||||
Chris Leutwyler (kronobil)
|
||||
- Old mine song
|
||||
- Snowy track song
|
||||
|
||||
Other music (not specifically created for STK):
|
||||
- Brad Sucks for 'Out of it' (modified by conso)
|
||||
- ChillCarrier for 'Druckverlust'
|
||||
- Deff Syndicate for 'hip hop 1'
|
||||
- Alessandro Bottura for 'MayDay Mayhem' (modified by conso)
|
||||
- Speedsound for 'Sky Vibe - High Frequency'
|
||||
- Daniel Bautista for 'Symphony No. 5' (modified by conso)
|
||||
- TheDeadRocks for 'GreenSecretFromAmazonia', 'EasyJob', 'OneMillionDollar'
|
||||
|
||||
SFX
|
||||
---
|
||||
|
||||
Stephan Wiefling
|
||||
- Menu sounds
|
||||
|
||||
Misc sound effects :
|
||||
- Daveincamas
|
||||
- Radio Mall
|
||||
- BLASTWAVEFX 02344
|
||||
- smcameron
|
||||
- SmiertSpionem
|
||||
- Battle For Wesnoth
|
||||
- FreqMan
|
||||
- Pogotron
|
||||
- roscoetoon
|
||||
- han1
|
||||
- lonemonk
|
||||
|
||||
The TORCS project for their engine sound
|
||||
= Music =
|
||||
|
||||
The Dead Rocks
|
||||
-Easy Job
|
||||
-Green Secret from Amazonia
|
||||
-One Million dollar
|
||||
- 'GreenSecretFromAmazonia'
|
||||
- 'EasyJob'
|
||||
- 'OneMillionDollar'
|
||||
|
||||
Misc songs
|
||||
- Weirwood : 'Kart grand prix'
|
||||
- Magne Djupvik : 'Penguin Party'
|
||||
- Paul Esra Martin (P@ule) 'G4M fan track'
|
||||
- Marianne Gagnon (Auria) : 'Jungle song'
|
||||
- Matt Thomas : 'Boom-boom-boom song'
|
||||
- Lukas Siewert (Dr.Sternhagel) : 'Caribbean music'
|
||||
- Chris Leutwyler (kronobil) : 'Old mine'
|
||||
|
||||
Stephen Dunn, based on work by morgantj
|
||||
- Engine sound
|
||||
Misc songs
|
||||
- Chris Leutwyler (kronobil) : 'Snowy track'
|
||||
- Brad Sucks - 'Out of it'
|
||||
- ChillCarrier - 'Druckverlust'
|
||||
- Deff Syndicate - 'hip hop 1'
|
||||
- Alessandro Bottura - 'MayDay Mayhem'
|
||||
- Speedsound - 'Sky Vibe Hi Frequency'
|
||||
- Daniel Bautista - 'Symphony No. 5'
|
||||
|
||||
Atheal Washington and Stephen Dunn
|
||||
- Skidding sound
|
||||
= Sound Effects =
|
||||
|
||||
Translations
|
||||
------------
|
||||
German: Dominique Leuenberger (dimstar), Stefan von Halenbach, Constantin Pelikan
|
||||
French: Marianne Gagnon (Auria), Yann Leprince (sciyann)
|
||||
Dutch: Frans van Rijn (Asciimonster)
|
||||
Spanish: David Ballesteros Mayo (Dividio), Samuel (netocp-1)
|
||||
Italian: Vincenzo (Gigugin)
|
||||
Swedish: Niklas Grahn (Respit)
|
||||
Romanian: Marina Muncescu
|
||||
Portugese: Flávio Zavan (nebososo)
|
||||
Irish: Aaron Kearns
|
||||
Finnish : Kristian Laakkonen
|
||||
Galician : Adrián Chaves Fernández, Proxecto Trasno
|
||||
Polish: Patryk Wychowaniec (patryk1303)
|
||||
Czech: Ondřej Hruška (Prasisko)
|
||||
Catalan : Albert Juhé Lluveras (Aljullu)
|
||||
Sound effects
|
||||
- Daveincamas, Radio Mall, BLASTWAVEFX 02344
|
||||
- smcameron, SmiertSpionem, lonemonk, han1
|
||||
- Pogotron, roscoetoon, FreqMan
|
||||
- Stephan Wiefling : Menu sounds
|
||||
|
||||
Mac OS X port
|
||||
-------------
|
||||
Sound effects
|
||||
- Stephen Dunn & morgantj : engine sound
|
||||
- Stephen Dunn & Atheal Washington : skidding
|
||||
- Battle For Wesnoth
|
||||
- The TORCS project
|
||||
|
||||
Marianne Gagnon (Auria)
|
||||
with additional and/or past involvement from
|
||||
Cherryprice, Nuke, Florian, JPenguin, TinGamer, Xeno74
|
||||
= Translations =
|
||||
|
||||
German
|
||||
- Dominique Leuenberger (dimstar)
|
||||
- Stefan von Halenbach
|
||||
- Constantin Pelikan
|
||||
|
||||
French
|
||||
- Marianne Gagnon (Auria)
|
||||
- Yann Leprince (sciyann)
|
||||
|
||||
Spanish
|
||||
- David Ballesteros Mayo (Dividio)
|
||||
- Samuel (netocp-1)
|
||||
|
||||
Galician
|
||||
- Adrián Chaves Fernández
|
||||
- Proxecto Trasno
|
||||
|
||||
More translations
|
||||
- Dutch : Frans van Rijn (Asciimonster)
|
||||
- Italian : Vincenzo (Gigugin)
|
||||
- Swedish : Niklas Grahn (Respit)
|
||||
- Romanian : Marina Muncescu
|
||||
- Portugese : Flávio Zavan (nebososo)
|
||||
- Danish : Joe Dalton
|
||||
|
||||
More translations
|
||||
- Irish : Aaron Kearns
|
||||
- Finnish : Kristian Laakkonen
|
||||
- Polish : Patryk Wychowaniec (patryk1303 / p98)
|
||||
- Czech : Ondřej Hruška (Prasisko)
|
||||
- Catalan : Albert Juhé Lluveras (Aljullu)
|
||||
- Slovenian : mufic
|
||||
|
||||
= Misc =
|
||||
|
||||
Website
|
||||
- Tom Jenkins : skin and layout
|
||||
- Remy le Guen (Vivelefrat)
|
||||
- Sebastian Rode
|
||||
- Hiker, Auria, Conso
|
||||
|
||||
Testing
|
||||
-------
|
||||
- Canarix
|
||||
- JPenguin
|
||||
- The Games4Mac Forum Community
|
||||
- (http://community.games4mac.de)
|
||||
|
||||
Canarix, JPenguin
|
||||
Donations
|
||||
- Markus Liukka
|
||||
- Michael Roessner (http://www.retrax.de)
|
||||
- Phelippeau Rudy (rudy251079)
|
||||
- Carl Olsson
|
||||
- Tux_penguin
|
||||
- OpenGameArt.org
|
||||
|
||||
The friendly people at the Games4Mac Forum
|
||||
Website: http://community.games4mac.de
|
||||
= Previous contributors =
|
||||
|
||||
No more active
|
||||
- Eduardo Hernandez Munoz (Coz) : Former Admin
|
||||
- Sam Clarke : Windows Installer
|
||||
- Hans "the farmer" Dzaack : Physics tuning
|
||||
- Maik Semder (Ikework) : Bug fixes
|
||||
|
||||
Webmasters
|
||||
----------
|
||||
|
||||
Constantin Pelikan (conso)
|
||||
- General improvements
|
||||
|
||||
Remy le Guen (Vivelefrat)
|
||||
- Website improvements
|
||||
|
||||
Sebastian Rode
|
||||
- STK description on the website
|
||||
|
||||
|
||||
Misc
|
||||
----
|
||||
|
||||
Hans Dzaack (Hans the farmer)
|
||||
- Physics tuning
|
||||
|
||||
Markus Liukka
|
||||
- Donator
|
||||
|
||||
Michael Roessner
|
||||
Website: http://www.retrax.de
|
||||
- Donator
|
||||
|
||||
Sam Clarke
|
||||
- Windows Installer
|
||||
|
||||
Previous contributors (version 0.5 and earlier):
|
||||
------------------------------------------------
|
||||
Eduardo Hernandez Munoz (Coz) (former Co-admin)
|
||||
|
||||
Maik Semder (Ikework)
|
||||
- Bug fixes
|
||||
|
||||
Canarix
|
||||
- Original user interface
|
||||
|
||||
Game of the Month, STK version 0.0.0 :
|
||||
See http://happypenguin.org/forums/viewforum.php?f=21
|
||||
Caleb Sawtell
|
||||
Craig Keogh
|
||||
Ingo Ruhnke
|
||||
Jacob Persson
|
||||
James Gregory
|
||||
Matthias Braun
|
||||
Oliver Jeeves
|
||||
Pascal Giard
|
||||
Paul Carley
|
||||
Ricardo Cruz
|
||||
Willian Padovani Germano
|
||||
Game of the Month (STK version 0.0)
|
||||
- Craig Keogh, Ingo Ruhnke, Jacob Persson
|
||||
- James Gregory, Pascal Giard
|
||||
- Matthias Braun, Oliver Jeeves
|
||||
- Paul Carley, Ricardo Cruz, Caleb Sawtell
|
||||
- Willian Padovani Germano, James Gregory
|
||||
|
||||
Original Tuxkart
|
||||
------------------
|
||||
- Steve Baker (http://www.sjbaker.org/)
|
||||
- Oliver Baker
|
||||
|
||||
Steve Baker, Oliver Baker
|
||||
Website: http://www.sjbaker.org/
|
||||
- Everything except the music
|
||||
= Thanks for Playing! =
|
||||
Do not hesistate to contribute!
|
||||
- Give feedback
|
||||
- Participate on the community
|
||||
- Donate
|
||||
- Make art
|
||||
- Code a feature
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
|
@ -1,6 +1,6 @@
|
||||
# data/
|
||||
|
||||
SUBDIRS = fonts items karts models music po sfx textures tracks grandprix
|
||||
SUBDIRS = fonts gui items karts models music po sfx textures tracks grandprix
|
||||
pkgdatadir = $(datadir)/games/$(PACKAGE)/data
|
||||
|
||||
dist_pkgdata_DATA = \
|
||||
@ -10,6 +10,7 @@ dist_pkgdata_DATA = \
|
||||
$(shell find $(srcdir) -name "*.cup") \
|
||||
$(shell find $(srcdir) -maxdepth 1 -name "*.challenge") \
|
||||
$(shell find $(srcdir) -name "*.collectable") \
|
||||
$(shell find $(srcdir) -name "*.projectile") \
|
||||
CREDITS
|
||||
|
||||
desktopdir = $(prefix)/share/applications
|
||||
|
@ -1,9 +1,9 @@
|
||||
;; -*- mode: lisp -*-
|
||||
|
||||
(tuxkart-collectable
|
||||
(name "anvil")
|
||||
(model "anvil.ac")
|
||||
(icon "anchor-icon.rgb")
|
||||
(name "anchor")
|
||||
(mesh "anchor.b3d")
|
||||
(icon "anchor-icon.png")
|
||||
)
|
||||
|
||||
;; EOF ;;
|
||||
|
@ -4,7 +4,7 @@
|
||||
(name "Bowling")
|
||||
(model "bowling.ac")
|
||||
(mesh "bowling.b3d")
|
||||
(icon "bowling-icon.rgb")
|
||||
(icon "bowling-icon.png")
|
||||
(speed 4.0)
|
||||
(min-height 0.2) ; height above terrain below which a ball is
|
||||
; started to be pulled up
|
||||
|
@ -3,7 +3,7 @@
|
||||
(tuxkart-collectable
|
||||
(name "Bubble Gum")
|
||||
(model "../items/bubblegum.ac")
|
||||
(icon "bubblegum-icon.rgb")
|
||||
(icon "bubblegum-icon.png")
|
||||
(speed 50.0)
|
||||
(min-height 0.3)
|
||||
(max-height 1.0)
|
||||
|
13
data/bubblegum.xml
Normal file
@ -0,0 +1,13 @@
|
||||
;; -*- mode: lisp -*-
|
||||
|
||||
(tuxkart-collectable
|
||||
(name "Bubble Gum")
|
||||
(mesh "../items/bubblegum.b3d")
|
||||
(icon "bubblegum-icon.png")
|
||||
(speed 50.0)
|
||||
(min-height 0.3)
|
||||
(max-height 1.0)
|
||||
(force-updown 20)
|
||||
)
|
||||
|
||||
;; EOF ;;
|
@ -2,9 +2,8 @@
|
||||
|
||||
(tuxkart-collectable
|
||||
(name "cake")
|
||||
(model "cake.ac")
|
||||
(mesh "cake.b3d")
|
||||
(icon "cake-icon.rgb")
|
||||
(icon "cake-icon.png")
|
||||
(speed 50.0)
|
||||
(min-height 0.2)
|
||||
(max-height 1.0)
|
||||
|
@ -1,17 +1,15 @@
|
||||
;; -*- mode: lisp -*-
|
||||
<?xml version="1.0"?>
|
||||
|
||||
(challenge
|
||||
(id "penguinplaygroundgp")
|
||||
(name _("Win Penguin Playground Grand\nPrix"))
|
||||
(description _("Win Penguin Playground Grand\nPrix with 3 'Racer' Level AI karts."))
|
||||
(unlock-mode "followtheleader" _("Follow the Leader"))
|
||||
(major "grandprix")
|
||||
(minor "quickrace")
|
||||
(gp "penguinplayground")
|
||||
(difficulty "hard")
|
||||
(karts 4)
|
||||
(position 1)
|
||||
)
|
||||
|
||||
;; EOF ;;
|
||||
<challenge
|
||||
id="penguinplaygroundgp"
|
||||
name="_("Win Penguin Playground Grand\nPrix")"
|
||||
description="_("Win Penguin Playground Grand\nPrix with 3 'Racer' Level AI karts.")"
|
||||
unlock-mode="followtheleader _(Follow the Leader)"
|
||||
major="grandprix"
|
||||
minor="quickrace"
|
||||
gp="penguinplayground"
|
||||
difficulty="hard"
|
||||
karts="4"
|
||||
position="1"
|
||||
/>
|
||||
|
||||
|
240
data/fonts/DomesticManners.xml
Normal file
@ -0,0 +1,240 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<font type="bitmap">
|
||||
|
||||
<Texture index="0" filename="DomesticManners0.png" hasAlpha="false" />
|
||||
<Texture index="1" filename="DomesticManners1.png" hasAlpha="false" />
|
||||
|
||||
<c c=" " r="0, 0, 1, 59" o="16" />
|
||||
<c c="!" r="2, 0, 8, 59" u="2" o="1" />
|
||||
<c c=""" r="9, 0, 19, 59" />
|
||||
<c c="#" r="20, 0, 49, 59" u="3" o="-2" />
|
||||
<c c="$" r="50, 0, 65, 59" u="1" />
|
||||
<c c="%" r="66, 0, 91, 59" u="4" o="-1" />
|
||||
<c c="&" r="92, 0, 110, 59" u="1" />
|
||||
<c c="'" r="111, 0, 115, 59" u="1" o="1" />
|
||||
<c c="(" r="116, 0, 129, 59" u="2" o="-1" />
|
||||
<c c=")" r="130, 0, 140, 59" u="3" />
|
||||
<c c="*" r="141, 0, 160, 59" u="1" />
|
||||
<c c="+" r="161, 0, 183, 59" u="1" o="-1" />
|
||||
<c c="," r="184, 0, 192, 59" u="1" o="1" />
|
||||
<c c="-" r="193, 0, 211, 59" u="1" o="-1" />
|
||||
<c c="." r="212, 0, 217, 59" u="2" o="1" />
|
||||
<c c="/" r="218, 0, 236, 59" o="-1" />
|
||||
<c c="0" r="237, 0, 257, 59" u="1" />
|
||||
<c c="1" r="258, 0, 281, 59" u="4" o="-1" />
|
||||
<c c="2" r="282, 0, 303, 59" u="1" o="-1" />
|
||||
<c c="3" r="304, 0, 323, 59" u="4" o="-1" />
|
||||
<c c="4" r="324, 0, 340, 59" u="3" o="-1" />
|
||||
<c c="5" r="341, 0, 368, 59" u="2" o="-1" />
|
||||
<c c="6" r="369, 0, 388, 59" u="2" o="2" />
|
||||
<c c="7" r="389, 0, 417, 59" u="3" o="-2" />
|
||||
<c c="8" r="418, 0, 435, 59" u="4" o="-1" />
|
||||
<c c="9" r="436, 0, 456, 59" u="2" o="-1" />
|
||||
<c c=":" r="457, 0, 462, 59" u="2" />
|
||||
<c c=";" r="463, 0, 471, 59" u="1" />
|
||||
<c c="<" r="472, 0, 490, 59" u="1" o="-1" />
|
||||
<c c="=" r="491, 0, 507, 59" o="-1" />
|
||||
<c c=">" r="0, 60, 17, 119" u="2" />
|
||||
<c c="?" r="18, 60, 37, 119" u="2" o="-1" />
|
||||
<c c="@" r="38, 60, 70, 119" u="2" o="-2" />
|
||||
<c c="A" r="71, 60, 98, 119" u="3" o="-2" />
|
||||
<c c="B" r="99, 60, 118, 119" u="2" />
|
||||
<c c="C" r="119, 60, 138, 119" u="5" o="-1" />
|
||||
<c c="D" r="139, 60, 162, 119" u="3" />
|
||||
<c c="E" r="163, 60, 186, 119" u="3" o="-2" />
|
||||
<c c="F" r="187, 60, 207, 119" u="3" o="-1" />
|
||||
<c c="G" r="208, 60, 232, 119" u="3" o="-1" />
|
||||
<c c="H" r="233, 60, 252, 119" u="1" />
|
||||
<c c="I" r="253, 60, 275, 119" u="1" o="-1" />
|
||||
<c c="J" r="276, 60, 300, 119" u="2" o="-1" />
|
||||
<c c="K" r="301, 60, 320, 119" u="2" />
|
||||
<c c="L" r="321, 60, 338, 119" u="1" o="-1" />
|
||||
<c c="M" r="339, 60, 364, 119" u="1" />
|
||||
<c c="N" r="365, 60, 390, 119" u="1" o="-1" />
|
||||
<c c="O" r="391, 60, 414, 119" u="3" o="-1" />
|
||||
<c c="P" r="415, 60, 434, 119" u="4" o="-1" />
|
||||
<c c="Q" r="435, 60, 462, 119" u="2" o="-1" />
|
||||
<c c="R" r="463, 60, 484, 119" u="3" o="-1" />
|
||||
<c c="S" r="485, 60, 501, 119" u="2" />
|
||||
<c c="T" r="0, 120, 21, 179" u="2" o="-1" />
|
||||
<c c="U" r="22, 120, 43, 179" u="4" o="-1" />
|
||||
<c c="V" r="44, 120, 62, 179" u="1" />
|
||||
<c c="W" r="63, 120, 87, 179" u="2" o="-1" />
|
||||
<c c="X" r="88, 120, 112, 179" u="2" o="-1" />
|
||||
<c c="Y" r="113, 120, 131, 179" u="2" o="-1" />
|
||||
<c c="Z" r="132, 120, 160, 179" u="2" o="-1" />
|
||||
<c c="[" r="161, 120, 180, 179" u="2" o="-1" />
|
||||
<c c="\" r="181, 120, 196, 179" u="1" />
|
||||
<c c="]" r="197, 120, 215, 179" u="1" />
|
||||
<c c="^" r="216, 120, 235, 179" u="1" o="-1" />
|
||||
<c c="_" r="236, 120, 261, 179" u="1" o="-2" />
|
||||
<c c="`" r="262, 120, 271, 179" u="2" />
|
||||
<c c="a" r="272, 120, 286, 179" u="2" o="1" />
|
||||
<c c="b" r="287, 120, 305, 179" u="1" />
|
||||
<c c="c" r="306, 120, 324, 179" u="2" o="1" />
|
||||
<c c="d" r="325, 120, 346, 179" u="2" o="-1" />
|
||||
<c c="e" r="347, 120, 365, 179" u="3" />
|
||||
<c c="f" r="366, 120, 392, 179" o="-1" />
|
||||
<c c="g" r="393, 120, 414, 179" u="1" o="-1" />
|
||||
<c c="h" r="415, 120, 430, 179" u="3" />
|
||||
<c c="i" r="431, 120, 442, 179" u="4" o="-1" />
|
||||
<c c="j" r="443, 120, 454, 179" u="1" o="-1" />
|
||||
<c c="k" r="455, 120, 473, 179" u="3" o="-1" />
|
||||
<c c="l" r="474, 120, 481, 179" u="3" />
|
||||
<c c="m" r="482, 120, 504, 179" u="3" o="1" />
|
||||
<c c="n" r="0, 180, 17, 239" u="1" o="1" />
|
||||
<c c="o" r="18, 180, 33, 239" u="3" />
|
||||
<c c="p" r="34, 180, 51, 239" u="1" o="1" />
|
||||
<c c="q" r="52, 180, 70, 239" u="4" />
|
||||
<c c="r" r="71, 180, 86, 239" u="2" o="-1" />
|
||||
<c c="s" r="87, 180, 103, 239" u="1" o="1" />
|
||||
<c c="t" r="104, 180, 122, 239" u="2" o="-1" />
|
||||
<c c="u" r="123, 180, 136, 239" u="2" o="1" />
|
||||
<c c="v" r="137, 180, 155, 239" u="1" o="1" />
|
||||
<c c="w" r="156, 180, 179, 239" u="3" />
|
||||
<c c="x" r="180, 180, 199, 239" u="3" />
|
||||
<c c="y" r="200, 180, 216, 239" u="3" o="1" />
|
||||
<c c="z" r="217, 180, 235, 239" u="2" />
|
||||
<c c="{" r="236, 180, 255, 239" u="1" o="-1" />
|
||||
<c c="|" r="256, 180, 262, 239" u="3" o="1" />
|
||||
<c c="}" r="263, 180, 283, 239" u="4" o="-1" />
|
||||
<c c="~" r="284, 180, 306, 239" u="4" o="-1" />
|
||||
<c c="¡" r="307, 180, 313, 239" u="3" />
|
||||
<c c="¢" r="314, 180, 326, 239" u="2" />
|
||||
<c c="£" r="327, 180, 355, 239" u="1" o="-1" />
|
||||
<c c="¤" r="356, 180, 386, 239" u="3" o="-1" />
|
||||
<c c="¥" r="387, 180, 411, 239" u="1" o="-1" />
|
||||
<c c="¦" r="412, 180, 417, 239" u="1" />
|
||||
<c c="§" r="418, 180, 431, 239" u="2" o="-1" />
|
||||
<c c="¨" r="432, 180, 443, 239" u="2" />
|
||||
<c c="©" r="444, 180, 471, 239" u="3" o="-1" />
|
||||
<c c="ª" r="472, 180, 484, 239" u="1" />
|
||||
<c c="«" r="485, 180, 510, 239" u="2" o="-2" />
|
||||
<c c="" r="0, 240, 26, 299" u="1" o="-1" />
|
||||
<c c="®" r="27, 240, 55, 299" u="1" o="-1" />
|
||||
<c c="¯" r="56, 240, 57, 299" o="36" />
|
||||
<c c="°" r="58, 240, 70, 299" u="2" />
|
||||
<c c="±" r="71, 240, 98, 299" u="1" o="-1" />
|
||||
<c c="²" r="99, 240, 112, 299" u="1" />
|
||||
<c c="³" r="113, 240, 124, 299" u="2" o="-1" />
|
||||
<c c="´" r="125, 240, 134, 299" u="3" />
|
||||
<c c="µ" r="135, 240, 136, 299" o="36" />
|
||||
<c c="¸" r="137, 240, 146, 299" u="6" o="-1" />
|
||||
<c c="¹" r="147, 240, 162, 299" u="1" o="-1" />
|
||||
<c c="º" r="163, 240, 164, 299" o="8" />
|
||||
<c c="»" r="165, 240, 190, 299" u="3" o="-2" />
|
||||
<c c="¼" r="191, 240, 220, 299" u="1" o="-1" />
|
||||
<c c="½" r="221, 240, 253, 299" u="1" o="-1" />
|
||||
<c c="¾" r="254, 240, 283, 299" u="1" o="-2" />
|
||||
<c c="¿" r="284, 240, 303, 299" u="1" o="-1" />
|
||||
<c c="À" r="304, 240, 332, 299" u="3" o="-3" />
|
||||
<c c="Á" r="333, 240, 361, 299" u="3" o="-3" />
|
||||
<c c="Â" r="362, 240, 390, 299" u="3" o="-3" />
|
||||
<c c="Ã" r="391, 240, 419, 299" u="3" o="-3" />
|
||||
<c c="Ä" r="420, 240, 448, 299" u="3" o="-3" />
|
||||
<c c="Å" r="449, 240, 477, 299" u="3" o="-3" />
|
||||
<c c="Æ" r="478, 240, 479, 299" o="36" />
|
||||
<c c="Ç" r="480, 240, 500, 299" u="5" o="-2" />
|
||||
<c c="È" r="0, 300, 23, 359" u="3" o="-2" />
|
||||
<c c="É" r="24, 300, 47, 359" u="3" o="-2" />
|
||||
<c c="Ê" r="48, 300, 71, 359" u="3" o="-2" />
|
||||
<c c="Ë" r="72, 300, 95, 359" u="3" o="-2" />
|
||||
<c c="Ì" r="96, 300, 119, 359" u="1" o="-2" />
|
||||
<c c="Í" r="120, 300, 143, 359" u="1" o="-2" />
|
||||
<c c="Î" r="144, 300, 167, 359" u="1" o="-2" />
|
||||
<c c="Ï" r="168, 300, 191, 359" u="1" o="-2" />
|
||||
<c c="Ñ" r="192, 300, 217, 359" u="1" o="-1" />
|
||||
<c c="Ò" r="218, 300, 242, 359" u="3" o="-2" />
|
||||
<c c="Ó" r="243, 300, 267, 359" u="3" o="-2" />
|
||||
<c c="Ô" r="268, 300, 292, 359" u="3" o="-2" />
|
||||
<c c="Õ" r="293, 300, 317, 359" u="3" o="-2" />
|
||||
<c c="Ö" r="318, 300, 342, 359" u="3" o="-2" />
|
||||
<c c="×" r="343, 300, 344, 359" o="36" />
|
||||
<c c="Ù" r="345, 300, 367, 359" u="4" o="-2" />
|
||||
<c c="Ú" r="368, 300, 390, 359" u="4" o="-2" />
|
||||
<c c="Û" r="391, 300, 413, 359" u="4" o="-2" />
|
||||
<c c="Ü" r="414, 300, 436, 359" u="4" o="-2" />
|
||||
<c c="Ý" r="437, 300, 456, 359" u="2" o="-2" />
|
||||
<c c="Þ" r="457, 300, 458, 359" o="36" />
|
||||
<c c="ß" r="459, 300, 460, 359" o="36" />
|
||||
<c c="à" r="461, 300, 476, 359" u="2" o="-1" />
|
||||
<c c="á" r="477, 300, 491, 359" u="2" />
|
||||
<c c="â" r="492, 300, 507, 359" u="2" />
|
||||
<c c="ã" r="0, 360, 19, 419" o="-1" />
|
||||
<c c="ä" r="20, 360, 35, 419" u="2" o="-1" />
|
||||
<c c="å" r="36, 360, 51, 419" u="2" o="-1" />
|
||||
<c c="æ" r="52, 360, 81, 419" u="2" o="-1" />
|
||||
<c c="ç" r="82, 360, 100, 419" u="2" o="1" />
|
||||
<c c="è" r="101, 360, 120, 419" u="3" o="-1" />
|
||||
<c c="é" r="121, 360, 140, 419" u="3" o="-1" />
|
||||
<c c="ê" r="141, 360, 160, 419" u="3" o="-1" />
|
||||
<c c="ë" r="161, 360, 180, 419" u="3" o="-1" />
|
||||
<c c="ì" r="181, 360, 192, 419" u="4" o="-2" />
|
||||
<c c="í" r="193, 360, 204, 419" u="4" o="-2" />
|
||||
<c c="î" r="205, 360, 219, 419" u="2" o="-1" />
|
||||
<c c="ï" r="220, 360, 232, 419" u="3" o="-1" />
|
||||
<c c="ð" r="233, 360, 234, 419" o="36" />
|
||||
<c c="ñ" r="235, 360, 255, 419" u="1" o="-2" />
|
||||
<c c="ò" r="256, 360, 273, 419" u="3" o="-2" />
|
||||
<c c="ó" r="274, 360, 290, 419" u="3" o="-2" />
|
||||
<c c="ô" r="291, 360, 307, 419" u="3" o="-1" />
|
||||
<c c="õ" r="308, 360, 327, 419" u="1" />
|
||||
<c c="ö" r="328, 360, 344, 419" u="3" o="-1" />
|
||||
<c c="ù" r="345, 360, 359, 419" u="2" o="-1" />
|
||||
<c c="ú" r="360, 360, 374, 419" u="2" o="-1" />
|
||||
<c c="û" r="375, 360, 390, 419" u="2" o="-1" />
|
||||
<c c="ü" r="391, 360, 405, 419" u="2" o="-1" />
|
||||
<c c="ý" r="406, 360, 422, 419" u="3" />
|
||||
<c c="þ" r="423, 360, 424, 419" o="36" />
|
||||
<c c="ÿ" r="425, 360, 442, 419" u="3" o="-1" />
|
||||
<c c="ı" r="443, 360, 453, 419" u="4" />
|
||||
<c c="Ł" r="454, 360, 474, 419" u="1" o="-1" />
|
||||
<c c="ł" r="475, 360, 490, 419" o="-1" />
|
||||
<c c="œ" r="0, 420, 30, 479" u="3" />
|
||||
<c c="Š" r="31, 420, 47, 479" u="2" />
|
||||
<c c="š" r="48, 420, 67, 479" u="1" o="-2" />
|
||||
<c c="Ÿ" r="68, 420, 87, 479" u="2" o="-2" />
|
||||
<c c="Ž" r="88, 420, 117, 479" u="2" o="-2" />
|
||||
<c c="ž" r="118, 420, 137, 479" u="2" o="-1" />
|
||||
<c c="ˆ" r="138, 420, 151, 479" u="3" o="1" />
|
||||
<c c="ˇ" r="152, 420, 165, 479" u="3" />
|
||||
<c c="ˉ" r="166, 420, 184, 479" />
|
||||
<c c="˚" r="185, 420, 193, 479" u="2" />
|
||||
<c c="˜" r="194, 420, 214, 479" o="-1" />
|
||||
<c c="Θ" r="215, 420, 216, 479" o="8" />
|
||||
<c c="Ξ" r="217, 420, 240, 479" u="1" o="-1" />
|
||||
<c c="Φ" r="241, 420, 270, 479" u="2" o="-2" />
|
||||
<c c="Ψ" r="271, 420, 298, 479" u="2" o="-1" />
|
||||
<c c="Ω" r="299, 420, 300, 479" o="8" />
|
||||
<c c="ε" r="301, 420, 316, 479" u="2" />
|
||||
<c c="θ" r="317, 420, 341, 479" u="2" o="-1" />
|
||||
<c c="μ" r="342, 420, 343, 479" o="36" />
|
||||
<c c="φ" r="344, 420, 365, 479" u="3" o="-1" />
|
||||
<c c="ω" r="366, 420, 388, 479" u="1" o="-1" />
|
||||
<c c="Ѱ" r="389, 420, 416, 479" u="2" o="-1" />
|
||||
<c c="Ѳ" r="417, 420, 418, 479" o="8" />
|
||||
<c c="ѳ" r="419, 420, 443, 479" u="2" o="-1" />
|
||||
<c c="‐" r="444, 420, 462, 479" u="1" o="-1" />
|
||||
<c c="–" r="463, 420, 491, 479" u="1" />
|
||||
<c c="—" i="1" r="0, 0, 39, 59" u="2" o="-1" />
|
||||
<c c="“" i="1" r="40, 0, 55, 59" u="5" o="-1" />
|
||||
<c c="”" i="1" r="56, 0, 71, 59" u="5" o="-1" />
|
||||
<c c="†" i="1" r="72, 0, 96, 59" u="1" o="-2" />
|
||||
<c c="•" i="1" r="97, 0, 108, 59" u="1" o="-1" />
|
||||
<c c="…" i="1" r="109, 0, 144, 59" u="2" />
|
||||
<c c="‰" i="1" r="145, 0, 184, 59" u="4" o="-1" />
|
||||
<c c="‹" i="1" r="185, 0, 198, 59" u="1" />
|
||||
<c c="›" i="1" r="199, 0, 212, 59" u="3" o="-1" />
|
||||
<c c="⁄" i="1" r="213, 0, 239, 59" u="1" o="-1" />
|
||||
<c c="™" i="1" r="240, 0, 275, 59" o="-2" />
|
||||
<c c="Ω" i="1" r="276, 0, 277, 59" o="8" />
|
||||
<c c="∂" i="1" r="278, 0, 296, 59" u="2" o="-1" />
|
||||
<c c="∑" i="1" r="297, 0, 336, 59" u="1" o="-2" />
|
||||
<c c="−" i="1" r="337, 0, 363, 59" u="1" o="-1" />
|
||||
<c c="≈" i="1" r="364, 0, 392, 59" u="1" o="-1" />
|
||||
<c c="≠" i="1" r="393, 0, 412, 59" u="1" />
|
||||
<c c="⋲" i="1" r="413, 0, 441, 59" u="1" o="-1" />
|
||||
<c c="" i="1" r="442, 0, 472, 59" o="-1" />
|
||||
<c c="" i="1" r="473, 0, 505, 59" o="-1" />
|
||||
</font>
|
BIN
data/fonts/DomesticManners0.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
data/fonts/DomesticManners1.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
@ -2,4 +2,5 @@
|
||||
|
||||
pkgdatadir = $(datadir)/games/$(PACKAGE)/data/fonts
|
||||
|
||||
dist_pkgdata_DATA = $(shell find $(srcdir) -name "*.txf")
|
||||
dist_pkgdata_DATA = $(shell find $(srcdir) -name "*.png") \
|
||||
$(shell find $(srcdir) -name "*.xml")
|
||||
|
@ -1,18 +1,16 @@
|
||||
;; -*- mode: lisp -*-
|
||||
<?xml version="1.0"?>
|
||||
|
||||
(challenge
|
||||
(id "worldsend")
|
||||
(name _("Win the At World's End\nGrand Prix"))
|
||||
(description _("Come first in the At World's End\nGrand Prix with 3 'Racer'\nLevel AI karts."))
|
||||
(unlock-gp "alltracks")
|
||||
(depend-on "islandfollow")
|
||||
(major "grandprix")
|
||||
(minor "quickrace")
|
||||
(gp "atworldsend")
|
||||
(difficulty "hard")
|
||||
(karts 4)
|
||||
(position 1)
|
||||
)
|
||||
|
||||
;; EOF ;;
|
||||
<challenge
|
||||
id="worldsend"
|
||||
name=_("Win the At World's End\nGrand Prix")
|
||||
description=_("Come first in the At World's End\nGrand Prix with 3 'Racer'\nLevel AI karts.")
|
||||
unlock-gp="alltracks"
|
||||
depend-on="islandfollow"
|
||||
major="grandprix"
|
||||
minor="quickrace"
|
||||
gp="atworldsend"
|
||||
difficulty="hard"
|
||||
karts="4"
|
||||
position="1"
|
||||
/>
|
||||
|
||||
|
@ -1,19 +1,18 @@
|
||||
;; -*- mode: lisp -*-
|
||||
<?xml version="1.0"?>
|
||||
|
||||
(challenge
|
||||
(id "islandfollow")
|
||||
(name _("Follow the Leader on a\nDesert Island"))
|
||||
(description _("Win a Follow the Leader race\nwith 3 AI karts\non a Desert Island."))
|
||||
(unlock-gp "atworldsend")
|
||||
(depend-on "tothemoonandbackgp" "tollwayhead2head" "tollwaytime" "citytime")
|
||||
(major "single")
|
||||
(minor "followtheleader")
|
||||
(track "islandtrack")
|
||||
(difficulty "easy")
|
||||
(laps 3)
|
||||
(karts 4)
|
||||
(position 2)
|
||||
)
|
||||
<challenge
|
||||
id="islandfollow"
|
||||
name=_("Follow the Leader on a\nDesert Island")
|
||||
description=_("Win a Follow the Leader race\nwith 3 AI karts\non a Desert Island.")
|
||||
unlock-gp="atworldsend"
|
||||
depend-on="tothemoonandbackgp tollwayhead2head tollwaytime citytime"
|
||||
major="single"
|
||||
minor="followtheleader"
|
||||
track="islandtrack"
|
||||
difficulty="easy"
|
||||
laps="3"
|
||||
karts="4"
|
||||
position="2"
|
||||
/>
|
||||
|
||||
;; EOF ;;
|
||||
|
||||
|
@ -1,18 +1,16 @@
|
||||
;; -*- mode: lisp -*-
|
||||
<?xml version="1.0"?>
|
||||
|
||||
(challenge
|
||||
(id "tothemoonandbackgp")
|
||||
(name _("Win To the Moon and Back\nGrand Prix"))
|
||||
(description _("Win the To the Moon and Back\nGrand Prix with 3 'Racer'\nLevel AI karts."))
|
||||
(unlock-gp "snagdrive")
|
||||
(depend-on "energyshiftingsands" "junglefollow")
|
||||
(major "grandprix")
|
||||
(minor "quickrace")
|
||||
(gp "tothemoonandback")
|
||||
(difficulty "hard")
|
||||
(karts 4)
|
||||
(position 1)
|
||||
)
|
||||
|
||||
;; EOF ;;
|
||||
<challenge
|
||||
id="tothemoonandbackgp"
|
||||
name=_("Win To the Moon and Back\nGrand Prix")
|
||||
description=_("Win the To the Moon and Back\nGrand Prix with 3 'Racer'\nLevel AI karts.")
|
||||
unlock-gp="snagdrive"
|
||||
depend-on="energyshiftingsands junglefollow"
|
||||
major="grandprix"
|
||||
minor="quickrace"
|
||||
gp="tothemoonandback"
|
||||
difficulty="hard"
|
||||
karts="4"
|
||||
position="1"
|
||||
/>
|
||||
|
||||
|
@ -1,20 +1,18 @@
|
||||
;; -*- mode: lisp -*-
|
||||
<?xml version="1.0"?>
|
||||
|
||||
(challenge
|
||||
(id "energyshiftingsands")
|
||||
(name _("Collect the Pharaohs Treasure"))
|
||||
(description _("Finish with at least 9 nitro \npoints on 3 laps of Shifting Sands\nin under 2:20 minutes."))
|
||||
(unlock-gp "tothemoonandback")
|
||||
(depend-on "energymathclass" "racetracktime")
|
||||
(major "single")
|
||||
(minor "quickrace")
|
||||
(track "sandtrack")
|
||||
(difficulty "medium")
|
||||
(karts 1)
|
||||
(laps 3)
|
||||
(energy 9)
|
||||
(time 140)
|
||||
)
|
||||
|
||||
;; EOF ;;
|
||||
<challenge
|
||||
id="energyshiftingsands"
|
||||
name=_("Collect the Pharaohs Treasure")
|
||||
description=_("Finish with at least 9 nitro \npoints on 3 laps of Shifting Sands\nin under 2:20 minutes.")
|
||||
unlock-gp="tothemoonandback"
|
||||
depend-on="energymathclass racetracktime"
|
||||
major="single"
|
||||
minor="quickrace"
|
||||
track="sandtrack"
|
||||
difficulty="medium"
|
||||
karts="1"
|
||||
laps="3"
|
||||
energy="9"
|
||||
time="140"
|
||||
/>
|
||||
|
||||
|
21
data/gui/License.txt
Normal file
@ -0,0 +1,21 @@
|
||||
All icons come from Open Game Art (art by onyum.com, comissionned by Bart Kelsey)
|
||||
* options_players & random_kart were tweaked by Marianne Gagnon
|
||||
|
||||
|
||||
Except :
|
||||
main_*.png icons, released under Creative-Commons BY-SA 3, By yeKcim (Anthony Carré)
|
||||
|
||||
mode_tt, released under Creative-Commons BY-SA 3, incorporatings artwork from yeKcim and onyum.com
|
||||
|
||||
Logo and Logo_slim : under CC-BY-SA 3.0+ by 'rastapax'
|
||||
|
||||
difficulty_*.png icons, released under Creative-Commons BY-SA 3, By Conso (Constantin Pelikan)
|
||||
|
||||
Okolaks font by Gluk, released under Open Font License
|
||||
|
||||
title_font, by Marianne Gagnon (Auria), released under CC-BY-SA 3+
|
||||
|
||||
====
|
||||
|
||||
Glass Skin by Auria, under CC-BY-SA 3+
|
||||
except background, under CC-BY-SA, by 'elisee'
|
12
data/gui/Makefile.am
Normal file
@ -0,0 +1,12 @@
|
||||
# data/gui/
|
||||
|
||||
pkgdatadir = $(datadir)/games/$(PACKAGE)/data/gui
|
||||
|
||||
nobase_dist_pkgdata_DATA = $(shell find $(srcdir) -name "*.png") \
|
||||
$(shell find $(srcdir) -name "*.jpg") \
|
||||
$(shell find $(srcdir) -name "*.stkgui") \
|
||||
$(shell find $(srcdir) -name "*.xml") \
|
||||
$(shell find $(srcdir) -name "*.stkskin")\
|
||||
License.txt
|
||||
|
||||
EXTRA_DIST = $(nobase_pkgdata_DATA)
|
BIN
data/gui/back.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
data/gui/challenge.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
22
data/gui/challenges.stkgui
Normal file
@ -0,0 +1,22 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="5%" y="2%" width="90%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header I18N="Title for challenges screen" text="Challenges : Trophy Room" text_align="center" width="100%" />
|
||||
|
||||
<box id="animated_area" width="100%" proportion="1" layout="vertical-row">
|
||||
|
||||
<ribbon_grid id="challenges" proportion="3" width="100%"
|
||||
I18N="Ignore" text="bottom" align="center" child_width="128" child_height="128" />
|
||||
|
||||
<spacer proportion="1" width="100%"/>
|
||||
|
||||
</box>
|
||||
|
||||
<spacer width="100%" height="45"/>
|
||||
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left" text="Back to main menu"/>
|
||||
|
||||
</stkgui>
|
19
data/gui/credits.stkgui
Normal file
@ -0,0 +1,19 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="5%" y="2%" width="90%" height="96%" layout="vertical-row" >
|
||||
|
||||
<icon id="logo" align="center" proportion="4" width="100%" icon="gui/logo_slim.png"/>
|
||||
|
||||
<header I18N="Title in credits screen" text="Credits" width="100%" />
|
||||
|
||||
<box id="animated_area" width="100%" proportion="10">
|
||||
|
||||
</box>
|
||||
|
||||
<spacer width="50" height="45" />
|
||||
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left" text="Back to main menu"/>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/difficulty_easy.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
data/gui/difficulty_hard.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
data/gui/difficulty_medium.png
Normal file
After Width: | Height: | Size: 16 KiB |
5
data/gui/feature_unlocked.stkgui
Normal file
@ -0,0 +1,5 @@
|
||||
<stkgui>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left" text="Continue"/>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/gamepad.png
Normal file
After Width: | Height: | Size: 9.2 KiB |
62
data/gui/help1.stkgui
Normal file
@ -0,0 +1,62 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Help"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="category" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="page1" width="128" height="128" icon="gui/track_random.png"
|
||||
I18N="Tab in help menu" text="General"/>
|
||||
<icon-button id="page2" width="128" height="128" icon="gui/weapons.png"
|
||||
I18N="Tab in help menu" text="Weapons"/>
|
||||
<icon-button id="page3" width="128" height="128" icon="gui/mode_ftl.png"
|
||||
I18N="Tab in help menu" text="Game Modes"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
|
||||
<label align="center" I18N="In the help menu" text="Make your rivals bite dust!"/>
|
||||
|
||||
<spacer height="25" width="10"/>
|
||||
|
||||
<div width="100%" proportion="2" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/bonusblock2.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="Collect blue boxes : they will give you weapons or other powerups"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="2" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/nitro-particle.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="Collecting nitro allows you to get speed boosts whenever you wish by pressing the appropriate key. You can see your current level of nitro in the bar at the right of the game screen."/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="2" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/gui_lock.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="If you see a button with a lock like this one, you need to complete a challenge to unlock it."/>
|
||||
</div>
|
||||
|
||||
<label align="left" word_wrap="true" width="100%" proportion="2"
|
||||
I18N="in the help menu"
|
||||
text="The 'sharp turn' key allows you to do sharp turns and have better control in tight curves"/>
|
||||
|
||||
<spacer proportion="1" width="10"/>
|
||||
|
||||
<label align="center" I18N="in the help screen" text="* Current key bindings can be seen/changed in menu Options"/>
|
||||
|
||||
</box>
|
||||
<spacer width="50" height="45" />
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the help menu, to return to the previous screen" text="Back"/>
|
||||
|
||||
</stkgui>
|
66
data/gui/help2.stkgui
Normal file
@ -0,0 +1,66 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Help"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="category" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="page1" width="128" height="128" icon="gui/track_random.png"
|
||||
I18N="Tab in help menu" text="General"/>
|
||||
<icon-button id="page2" width="128" height="128" icon="gui/weapons.png"
|
||||
I18N="Tab in help menu" text="Weapons"/>
|
||||
<icon-button id="page3" width="128" height="128" icon="gui/mode_ftl.png"
|
||||
I18N="Tab in help menu" text="Game Modes"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
<label align="center" I18N="In the help menu" text="To help you win, there are some powerups you can collect :"/>
|
||||
|
||||
<spacer height="25" width="10"/>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/bubblegum-icon.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true" text="BubbleGum - leave a sticky pink puddle behind you"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/cake-icon.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
text="Cake - thrown at the closest rival, best on short ranges and long straights"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/plunger-icon.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true" text="Plunger - throw straight to pull an opponent back, or throw while looking back to make one lose sight!"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/bowling-icon.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
text="Bowling Ball - bounces off walls. If you are looking back, it will be thrown backwards."/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/parachute.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true" text="Parachute - slows down all karts in a better position!"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="textures/anchor-icon.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true" text="Anchor - slows down greatly the kart in the first position"/>
|
||||
</div>
|
||||
|
||||
</box>
|
||||
<spacer width="50" height="45" />
|
||||
</div>
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the help menu, to return to the previous screen" text="Back"/>
|
||||
|
||||
</stkgui>
|
66
data/gui/help3.stkgui
Normal file
@ -0,0 +1,66 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Help"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="category" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="page1" width="128" height="128" icon="gui/track_random.png"
|
||||
I18N="Tab in help menu" text="General"/>
|
||||
<icon-button id="page2" width="128" height="128" icon="gui/weapons.png"
|
||||
I18N="Tab in help menu" text="Weapons"/>
|
||||
<icon-button id="page3" width="128" height="128" icon="gui/mode_ftl.png"
|
||||
I18N="Tab in help menu" text="Game Modes"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
<label align="center" text="SuperTuxKart features several game modes"/>
|
||||
|
||||
<spacer height="25" width="10"/>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="gui/mode_normal.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="Regular Race - all blows allowed, so catch weapons and make clever use of them!"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="gui/mode_tt.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="Time Trial: Contains no powerups, so only your driving skills matter!"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="gui/mode_ftl.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="Follow the leader: run for second place, as the last kart will be disqualified every time the counter hits zero. Beware : going in front of the leader will get you eliminated too!"/>
|
||||
</div>
|
||||
|
||||
<div width="100%" proportion="1" layout="horizontal-row">
|
||||
<icon align="center" icon="gui/mode_3strikes.png"/>
|
||||
<spacer width="25" height="25"/>
|
||||
<label proportion="1" height="100%" align="left" word_wrap="true"
|
||||
I18N="In the help menu"
|
||||
text="3 Strikes Battle : only in multiplayer games. Hit others with weapons until they lose all their lives."/>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<label proportion="1" width="100%" align="left" word_wrap="true" I18N="In the help menu"
|
||||
text="* Most of these game modes can also be played in a Grand Prix fashion : instead of playing a single race, you play many in a row. The better you rank, the more points you get. In the end, the player with the most points wins the cup."/>
|
||||
|
||||
</box>
|
||||
<spacer width="50" height="45" />
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the help menu, to return to the previous screen" text="Back"/>
|
||||
|
||||
</stkgui>
|
36
data/gui/karts.stkgui
Normal file
@ -0,0 +1,36 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="1%" width="96%" height="99%" layout="vertical-row" >
|
||||
|
||||
<header width="100%"
|
||||
I18N="In the kart selection (player setup) screen"
|
||||
text="Choose a Kart"
|
||||
align="center" text_align="center" />
|
||||
|
||||
<label width="100%" height="25"
|
||||
I18N="In the kart selection (player setup) screen"
|
||||
text="(more players can join by pressing 'fire' now)"
|
||||
align="center" text_align="center" />
|
||||
|
||||
<placeholder id="playerskarts" width="100%" proportion="4">
|
||||
<!-- Contents is added programatically -->
|
||||
</placeholder>
|
||||
|
||||
<spacer height="15" width="25"/>
|
||||
|
||||
<box proportion="2" width="100%" layout="vertical-row">
|
||||
<ribbon_grid id="karts" proportion="1" square_items="true" width="100%" align="center"
|
||||
child_width="80" child_height="80"/>
|
||||
</box>
|
||||
<tabs width="100%" height="25" id="kartgroups">
|
||||
<button id="standard" I18N="Kart group" text="Standard"/>
|
||||
<button id="addons" I18N="Kart group" text="Add-Ons"/>
|
||||
<button id="special" I18N="Kart group" text="Special"/>
|
||||
<button id="all" I18N="Kart group" text="All"/>
|
||||
</tabs>
|
||||
|
||||
<spacer height="15" width="25"/>
|
||||
|
||||
</div>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/karts0.png
Normal file
After Width: | Height: | Size: 7.5 KiB |
BIN
data/gui/karts1.png
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
data/gui/karts2.png
Normal file
After Width: | Height: | Size: 9.8 KiB |
BIN
data/gui/karts3.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
data/gui/karts4.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
data/gui/karts5.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
data/gui/karts6.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
data/gui/karts7.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
data/gui/karts8.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
data/gui/keyboard.png
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
data/gui/logo.png
Normal file
After Width: | Height: | Size: 127 KiB |
BIN
data/gui/logo_slim.png
Normal file
After Width: | Height: | Size: 122 KiB |
34
data/gui/main.stkgui
Normal file
@ -0,0 +1,34 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="5%" y="0" width="90%" height="98%" layout="vertical-row" >
|
||||
|
||||
<icon id="logo" align="center" proportion="8" width="100%" icon="gui/logo.png"/>
|
||||
|
||||
<buttonbar id="menu_toprow" proportion="3" width="75%" align="center">
|
||||
<icon-button id="new" width="128" height="128" icon="gui/main_race.png"
|
||||
I18N="Main menu button" text="Race"/>
|
||||
<icon-button id="network" width="128" height="128" icon="gui/main_network.png"
|
||||
I18N="Main menu button" text="Networking"/>
|
||||
<icon-button id="challenges" width="128" height="128"
|
||||
icon="gui/challenge.png"
|
||||
I18N="Main menu button" text="Challenges"/>
|
||||
</buttonbar>
|
||||
|
||||
<spacer width="10" proportion="1"/>
|
||||
|
||||
<buttonbar id="menu_bottomrow" proportion="3" width="85%" align="center">
|
||||
<icon-button id="options" width="128" height="128" icon="gui/main_options.png"
|
||||
I18N="Main menu button" text="Options"/>
|
||||
<icon-button id="help" width="128" height="128" icon="gui/main_help.png"
|
||||
I18N="Main menu button" text="Help"/>
|
||||
<icon-button id="about" width="128" height="128" icon="gui/main_about.png"
|
||||
I18N="Main menu button" text="About"/>
|
||||
<icon-button id="quit" width="128" height="128" icon="gui/main_quit.png"
|
||||
I18N="Main menu button" text="Quit"/>
|
||||
</buttonbar>
|
||||
|
||||
<spacer width="10" proportion="1"/>
|
||||
|
||||
</div>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/main_about.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
data/gui/main_challenges.png
Normal file
After Width: | Height: | Size: 6.7 KiB |
BIN
data/gui/main_help.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
data/gui/main_network.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
data/gui/main_options.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
data/gui/main_quit.png
Normal file
After Width: | Height: | Size: 6.3 KiB |
BIN
data/gui/main_race.png
Normal file
After Width: | Height: | Size: 7.7 KiB |
BIN
data/gui/mode_3strikes.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
data/gui/mode_ftl.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
BIN
data/gui/mode_normal.png
Normal file
After Width: | Height: | Size: 6.9 KiB |
BIN
data/gui/mode_tt.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
data/gui/okolaks.xml
Normal file
BIN
data/gui/okolaks0.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
data/gui/okolaks1.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
data/gui/okolaks2.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
data/gui/okolaks3.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
data/gui/options_audio_video.png
Normal file
After Width: | Height: | Size: 9.2 KiB |
77
data/gui/options_av.stkgui
Normal file
@ -0,0 +1,77 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Options"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="options_choice" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="audio_video" width="128" height="128" icon="gui/options_audio_video.png"
|
||||
I18N="Section in the settings menu" text="Audio/Video"/>
|
||||
<icon-button id="players" width="128" height="128" icon="gui/options_players.png"
|
||||
I18N="Section in the settings menu" text="Players"/>
|
||||
<icon-button id="controls" width="128" height="128" icon="gui/options_input.png"
|
||||
I18N="Section in the settings menu" text="Controls"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<div width="75%" height="40" layout="horizontal-row" >
|
||||
<label proportion="2" height="100%"
|
||||
I18N="Section in the audio/video settings submenu" text="Music"/>
|
||||
<checkbox id="music_enabled" width="40" icon="gui/glasscheckbox.png" height="40"/>
|
||||
<spacer width="20" height="100%" />
|
||||
<label proportion="1" height="100%" I18N="Next to checkbox in settings menu" text="Enabled"/>
|
||||
</div>
|
||||
<div width="75%" height="30" layout="horizontal-row" >
|
||||
<spacer proportion="1" height="100%"/>
|
||||
<gauge id="music_volume" proportion="1" height="100%" min_value="0" max_value="10"/>
|
||||
</div>
|
||||
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<div width="75%" height="40" layout="horizontal-row" >
|
||||
<label proportion="2" height="100%"
|
||||
I18N="Section in audio/video settings submenu" text="Sound Effects"/>
|
||||
<checkbox id="sfx_enabled" width="40" height="40"/>
|
||||
<spacer width="20" height="100%" />
|
||||
<label proportion="1" height="100%" I18N="Next to checkbox in settings menu" text="Enabled"/>
|
||||
</div>
|
||||
<div width="75%" height="30" layout="horizontal-row" >
|
||||
<spacer proportion="1" height="100%"/>
|
||||
<gauge id="sfx_volume" proportion="1" height="100%" min_value="0" max_value="10"/>
|
||||
</div>
|
||||
|
||||
|
||||
<spacer height="20" width="10"/>
|
||||
|
||||
|
||||
<div width="75%" height="40" layout="horizontal-row" >
|
||||
<label proportion="2" height="100%"
|
||||
I18N="Section in the audio/video settings submenu" text="Video"/>
|
||||
<checkbox id="fullscreen" width="40" height="40"/>
|
||||
<spacer width="20" height="100%" />
|
||||
<label proportion="1" height="100%" I18N="In the video settings" text="Fullscreen"/>
|
||||
</div>
|
||||
|
||||
<scrollable_ribbon id="resolutions" proportion="2" I18N="Ignore" text="all"
|
||||
width="100%" square_items="false"
|
||||
align="center" child_width="128" child_height="128" max_height="150" />
|
||||
|
||||
<spacer height="10" width="10"/>
|
||||
|
||||
<button id="apply_resolution" width="40%" height="30"
|
||||
I18N="In the video settings menu" text="Apply video changes" />
|
||||
|
||||
</box>
|
||||
|
||||
<spacer width="50" height="40" />
|
||||
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the options menu, to go back to the main menu or game" text="Back"/>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/options_input.png
Normal file
After Width: | Height: | Size: 12 KiB |
114
data/gui/options_input.stkgui
Normal file
@ -0,0 +1,114 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Options"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="options_choice" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="audio_video" width="128" height="128" icon="gui/options_audio_video.png"
|
||||
I18N="Section in the settings menu" text="Audio/Video"/>
|
||||
<icon-button id="players" width="128" height="128" icon="gui/options_players.png"
|
||||
I18N="Section in the settings menu" text="Players"/>
|
||||
<icon-button id="controls" width="128" height="128" icon="gui/options_input.png"
|
||||
I18N="Section in the settings menu" text="Controls"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
|
||||
<scrollable_ribbon id="devices" proportion="3" I18N="Ignore" text="all" width="100%"
|
||||
square_items="false" align="center" child_width="256" child_height="128" />
|
||||
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Accelerate" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_up" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Brake" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_down" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Left" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_left" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Right" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_right" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Fire" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_fire" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center" >
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Nitro" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_nitro" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Sharp Turn" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_drift" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Rescue" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_rescue" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
<spacer height="5" width="10"/>
|
||||
|
||||
<div width="85%" proportion="1" layout="horizontal-row" align="center">
|
||||
<label proportion="2" height="100%" I18N="Key binding" text="Look Back" text_align="right"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
<button id="binding_look_back" proportion="3" height="100%"
|
||||
I18N="Unbound key binding" text="[none]"/>
|
||||
<spacer proportion="1" height="100%" />
|
||||
</div>
|
||||
|
||||
<spacer width="50" height="10" />
|
||||
|
||||
</box>
|
||||
|
||||
<spacer width="50" height="40" />
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the options menu, to go back to the main menu or game" text="Back"/>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/options_players.png
Normal file
After Width: | Height: | Size: 8.7 KiB |
51
data/gui/options_players.stkgui
Normal file
@ -0,0 +1,51 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="2%" y="2%" width="96%" height="96%" layout="vertical-row" >
|
||||
|
||||
<header align="center" text="SuperTuxKart Options"/>
|
||||
<spacer height="15" width="10"/>
|
||||
|
||||
<tabs id="options_choice" height="10%" max_height="110" width="100%" align="center">
|
||||
<icon-button id="audio_video" width="128" height="128" icon="gui/options_audio_video.png"
|
||||
I18N="Section in the settings menu" text="Audio/Video"/>
|
||||
<icon-button id="players" width="128" height="128" icon="gui/options_players.png"
|
||||
I18N="Section in the settings menu" text="Players"/>
|
||||
<icon-button id="controls" width="128" height="128" icon="gui/options_input.png"
|
||||
I18N="Section in the settings menu" text="Controls"/>
|
||||
</tabs>
|
||||
|
||||
<box proportion="1" width="100%" layout="vertical-row">
|
||||
|
||||
<spacer width="5" height="5"/>
|
||||
|
||||
<label width="100%"
|
||||
I18N="In players configuration menu"
|
||||
text="Press enter or double-click on a player to edit him/her"
|
||||
text_align="center" />
|
||||
|
||||
<spacer width="5" height="20"/>
|
||||
<list id="players" proportion="5" width="75%" align="center"/>
|
||||
<spacer width="20" height="25"/>
|
||||
|
||||
<button id="addplayer" x="20" width="35%" height="30"
|
||||
I18N="In players configuration menu"
|
||||
text="Add Player" align="center"/>
|
||||
<!--
|
||||
<spacer width="50" height="10" />
|
||||
<button id="renameplayer" x="20" width="35%" height="30" text="Rename Player" align="center"/>
|
||||
<spacer width="50" height="10" />
|
||||
<button id="rempayer" x="20" width="35%" height="30" text="Remove Player" align="center"/>
|
||||
-->
|
||||
|
||||
<spacer width="20" height="15"/>
|
||||
</box>
|
||||
|
||||
<spacer width="50" height="40" />
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<button id="back" x="20" y="-40" width="250" height="35" align="left"
|
||||
I18N="In the options menu, to go back to the main menu or game" text="Back"/>
|
||||
|
||||
</stkgui>
|
37
data/gui/racesetup.stkgui
Normal file
@ -0,0 +1,37 @@
|
||||
<stkgui>
|
||||
|
||||
<div x="5%" y="5%" width="90%" height="90%" layout="vertical-row" >
|
||||
|
||||
<header width="100%" height="25" text="Race Setup" align="center" text_align="center" />
|
||||
|
||||
<spacer proportion="1" width="25"/>
|
||||
|
||||
<div layout="horizontal-row" width="100%" height="75" align="center">
|
||||
<label proportion="1" height="100%"
|
||||
I18N="In race setup menu" text="Number of AI karts" text_align="right" />
|
||||
<spacer width="50" height="25"/>
|
||||
<spinner id="aikartamount" proportion="3" height="100%" min_value="0" max_value="8" icon="gui/karts%i.png"/>
|
||||
</div>
|
||||
|
||||
<spacer proportion="2" width="25"/>
|
||||
|
||||
<ribbon id="difficulty" height="135" width="65%" 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"/>
|
||||
</ribbon>
|
||||
|
||||
<spacer proportion="2" width="25"/>
|
||||
|
||||
<label width="100%" height="25" text="Select a game mode" align="center" text_align="left" />
|
||||
|
||||
<scrollable_toolbar id="gamemode" height="135" width="85%" text="bottom" align="center" child_width="135" child_height="135" />
|
||||
|
||||
|
||||
<spacer proportion="2" width="25"/>
|
||||
</div>
|
||||
|
||||
</stkgui>
|
BIN
data/gui/random_kart.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
BIN
data/gui/restart.png
Normal file
After Width: | Height: | Size: 7.9 KiB |
BIN
data/gui/screen1610.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
data/gui/screen32.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
data/gui/screen43.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
data/gui/screen53.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
data/gui/screen54.png
Normal file
After Width: | Height: | Size: 13 KiB |
171
data/gui/skins/glass.stkskin
Normal file
@ -0,0 +1,171 @@
|
||||
<!--
|
||||
|
||||
Glass skin by Marianne Gagnon, released under creative-commons BY-SA 3.0+
|
||||
Except background.jpg, by elisee
|
||||
|
||||
To make your own skin, I suggest simply duplicating this file and modifying it as needed.
|
||||
There are two types of images : some will be simply stretched as a whole, others will
|
||||
have non-stretchable borders (you cannot choose which one you must use, it's hardcoded
|
||||
for each element type; though, as you will see below, for all "advanced stretching" images
|
||||
you can easily fake "simple stretch")
|
||||
|
||||
All elements will have at least 2 properties :
|
||||
type="X" sets what you're skinning with this entry
|
||||
image="skinDirectory/imageName.png" sets which image is used for this element
|
||||
|
||||
Most elements also support states :
|
||||
state="neutral"
|
||||
state="focused"
|
||||
state="down"
|
||||
You can thus give different looks for different states. Not all widgets support all states,
|
||||
see entries and comments below to know what's supported.
|
||||
Note that checkboxes are an exception and have the following styles :
|
||||
"neutral+unchecked"
|
||||
"neutral+checked"
|
||||
"focused+unchecked"
|
||||
"focused+checked"
|
||||
|
||||
"Advanced stretching" images are split this way :
|
||||
|
||||
+----+--------------------+----+
|
||||
| | | |
|
||||
+----+--------------------+----+
|
||||
| | | |
|
||||
| | | |
|
||||
| | | |
|
||||
+----+--------------------+----+
|
||||
| | | |
|
||||
+----+--------------------+----+
|
||||
|
||||
The center border will be stretched in all directions. The 4 corners will not stretch at all.
|
||||
Horizontal borders will stretch horizontally, verticallt borders will stretch vertically.
|
||||
Use properties left_border="X" right_border="X" top_border="X" bottom_border="X" to specify
|
||||
the size of each border in pixels (setting all borders to '0' makes the whole image scaled).
|
||||
|
||||
In some cases, you may not want vertical stretching to occur (like if the left and right sides
|
||||
of the image must not be stretched vertically, e.g. for the spinner). In this case, pass
|
||||
parameter preserve_h_aspect_ratios="true" to make the left and right areas stretch by keeping
|
||||
their aspect ratio.
|
||||
|
||||
Some components may fill the full inner area with stuff; others will only take a smaller
|
||||
area at the center. To adjust for this, there are properties "hborder_out_portion" and "vborder_out_portion"
|
||||
that take a float from 0 to 1, representing the percentage of each border that goes out of the widget's
|
||||
area (this might include stuff like shadows, etc.). The 'h' one is for horizontal borders,
|
||||
the 'v' one is for vertical borders.
|
||||
|
||||
Finnally : the image is split, as shown above, into 9 areas. In osme cases, you may not want
|
||||
all areas to be rendered. Then you can pass parameter areas="body+left+right+top+bottom"
|
||||
and explicitely specify which parts you want to see. The 4 corner areas are only visible
|
||||
when the border that intersect at this corner are enabled.
|
||||
|
||||
-->
|
||||
|
||||
<skin name="Glass" author="Marianne Gagnon (Auria)">
|
||||
|
||||
<!-- Stateless -->
|
||||
<element type="background" image="glass/background.jpg" />
|
||||
|
||||
<element type="button" state="focused" image="glass/glassbutton_focused.png"
|
||||
left_border="80" right_border="80" top_border="0" bottom_border="36"
|
||||
preserve_h_aspect_ratios="true" />
|
||||
|
||||
<element type="button" state="neutral" image="glass/glassbutton.png"
|
||||
left_border="80" right_border="80" top_border="0" bottom_border="36"
|
||||
preserve_h_aspect_ratios="true" />
|
||||
|
||||
<!-- TODO : buttons could support 'pressed' state -->
|
||||
|
||||
|
||||
<element type="tab" state="neutral" image="glass/glasstab.png"
|
||||
left_border="75" right_border="75" top_border="0" bottom_border="15"
|
||||
hborder_out_portion="0.2" />
|
||||
|
||||
<element type="tab" state="focused" image="glass/glasstab_focus.png"
|
||||
left_border="75" right_border="75" top_border="0" bottom_border="15"
|
||||
hborder_out_portion="0.2" />
|
||||
|
||||
<element type="tab" state="down" image="glass/glasstab_down.png"
|
||||
left_border="75" right_border="75" top_border="0" bottom_border="15"
|
||||
hborder_out_portion="0.2" />
|
||||
|
||||
|
||||
<!-- Stateless -->
|
||||
<element type="squareFocusHalo" image="glass/glass_square_focused.png"
|
||||
left_border="6" right_border ="6" top_border="6" bottom_border="6"
|
||||
hborder_out_portion="1.0" />
|
||||
<element type="squareFocusHalo2" image="glass/glass_square_focused2.png"
|
||||
left_border="6" right_border ="6" top_border="6" bottom_border="6"
|
||||
hborder_out_portion="1.0" />
|
||||
<element type="squareFocusHalo3" image="glass/glass_square_focused3.png"
|
||||
left_border="6" right_border ="6" top_border="6" bottom_border="6"
|
||||
hborder_out_portion="1.0" />
|
||||
<element type="squareFocusHalo4" image="glass/glass_square_focused4.png"
|
||||
left_border="6" right_border ="6" top_border="6" bottom_border="6"
|
||||
hborder_out_portion="1.0" />
|
||||
|
||||
<!-- Stateless. No splitting into 9 areas is done; the image is just stretched. -->
|
||||
<element type="selectionHalo" image="glass/bubble.png" />
|
||||
<element type="focusHalo" image="glass/glass_iconhighlight_focus.png" />
|
||||
|
||||
<element type="spinner" state="neutral" image="glass/glassspinner.png"
|
||||
left_border="110" right_border="110" top_border="0" bottom_border="36"
|
||||
preserve_h_aspect_ratios="true" hborder_out_portion="0.0" />
|
||||
|
||||
<element type="spinner" state="focused" image="glass/glassspinner_focus.png"
|
||||
left_border="110" right_border="110" top_border="0" bottom_border="36"
|
||||
preserve_h_aspect_ratios="true" hborder_out_portion="0.0" />
|
||||
|
||||
<!-- This one is a bit special. Only area(s) LEFT and/or RIGHT will be rendered. They will be overlaid
|
||||
on top of the spinner's background -->
|
||||
<element type="spinner" state="down" image="glass/glassspinner_down.png"
|
||||
left_border="110" right_border="110" top_border="0" bottom_border="36"
|
||||
preserve_h_aspect_ratios="true" hborder_out_portion="0.0" />
|
||||
|
||||
<!-- For checkboxes, no splitting into 9 areas is done; the image is just stretched -->
|
||||
<element type="checkbox" state="neutral+unchecked" image="glass/glasscheckbox.png"/>
|
||||
<element type="checkbox" state="neutral+checked" image="glass/glasscheckbox_checked.png"/>
|
||||
<element type="checkbox" state="focused+unchecked" image="glass/glasscheckbox_focus.png"/>
|
||||
<element type="checkbox" state="focused+checked" image="glass/glasscheckbox_checked_focus.png"/>
|
||||
|
||||
<!-- are always in neutral state for now. No splitting into 9 areas is done; the image is just stretched.
|
||||
Note: the body of a guage is the same as for for spinners. -->
|
||||
<element type="gaugefill" image="glass/glasssgauge_fill.png" />
|
||||
|
||||
<!-- Lists are always in neutral state for now -->
|
||||
<element type="list" image="glass/glass_section.png"
|
||||
left_border="15" right_border="15" top_border="15" bottom_border="15"
|
||||
hborder_out_portion="0.5" vborder_out_portion="1.0" />
|
||||
|
||||
<element type="listitem" state="focused" image="glass/glasssgauge_fill.png"
|
||||
left_border="0" right_border="0" top_border="0" bottom_border="0"
|
||||
hborder_out_portion="0.0" vborder_out_portion="0.0" />
|
||||
|
||||
<element type="listitem" state="down" image="glass/glassbutton.png"
|
||||
left_border="80" right_border="80" top_border="0" bottom_border="36"
|
||||
hborder_out_portion="1.0" vborder_out_portion="1.0"
|
||||
areas="body" />
|
||||
|
||||
<!-- Stateless -->
|
||||
<element type="section" image="glass/glass_section.png"
|
||||
left_border="15" right_border="15" top_border="15" bottom_border="15"
|
||||
hborder_out_portion="1.0" vborder_out_portion="0.2" />
|
||||
|
||||
<!-- Stateless -->
|
||||
<element type="window" image="glass/dialog.png"
|
||||
left_border="7" right_border="7" top_border="50" bottom_border="50"
|
||||
hborder_out_portion="1.0" vborder_out_portion="0.2" />
|
||||
|
||||
<!-- Colors -->
|
||||
<color type="text" state="neutral" r="0" g="0" b="0" />
|
||||
|
||||
<!-- For highlighted items, e.g. in list -->
|
||||
<color type="text" state="focused" r="255" g="255" b="255" />
|
||||
|
||||
<!-- Color used to fade out background when a dialog is shown -->
|
||||
<color type="dialog_background" state="neutral" a="120" r="0" g="0" b="0" />
|
||||
|
||||
<!-- Text field color -->
|
||||
<color type="text_field" state="neutral" a="255" r="215" g="215" b="215" />
|
||||
<color type="text_field" state="focused" a="255" r="0" g="150" b="0" />
|
||||
|
||||
</skin>
|
BIN
data/gui/skins/glass/background.jpg
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
data/gui/skins/glass/bubble.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
data/gui/skins/glass/dialog.png
Normal file
After Width: | Height: | Size: 7.4 KiB |
BIN
data/gui/skins/glass/glass_iconhighlight_focus.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
data/gui/skins/glass/glass_section.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
data/gui/skins/glass/glass_square_focused.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
data/gui/skins/glass/glass_square_focused2.png
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
data/gui/skins/glass/glass_square_focused3.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
data/gui/skins/glass/glass_square_focused4.png
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
data/gui/skins/glass/glassbutton.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
data/gui/skins/glass/glassbutton_focused.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
data/gui/skins/glass/glasscheckbox.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
data/gui/skins/glass/glasscheckbox_checked.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
data/gui/skins/glass/glasscheckbox_checked_focus.png
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
data/gui/skins/glass/glasscheckbox_focus.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
data/gui/skins/glass/glasssgauge_fill.png
Normal file
After Width: | Height: | Size: 891 B |