aboutsummaryrefslogtreecommitdiffstats
path: root/games/ufoai
diff options
context:
space:
mode:
authormadpilot <madpilot@FreeBSD.org>2014-08-25 18:16:42 +0800
committermadpilot <madpilot@FreeBSD.org>2014-08-25 18:16:42 +0800
commit6e53519c3a06414a04c8308b49ab124be8c56f28 (patch)
treea8e34f4ca66423e32bb096a0b480025f13293af6 /games/ufoai
parent54031ff8d8fb9d9b8dab871767977881dd9cfd33 (diff)
downloadfreebsd-ports-gnome-6e53519c3a06414a04c8308b49ab124be8c56f28.tar.gz
freebsd-ports-gnome-6e53519c3a06414a04c8308b49ab124be8c56f28.tar.zst
freebsd-ports-gnome-6e53519c3a06414a04c8308b49ab124be8c56f28.zip
- Update games/ufoai and games/ufoai-data to 2.5
- Stagify games/ufoai - Modernize port - Fix UFORADIANT option (off by default) - Assign maintainership to submitter [1] PR: 192419 Submitted by: m.tsatsenko at gmail.com Approved by: portmgr [1]
Diffstat (limited to 'games/ufoai')
-rw-r--r--games/ufoai/Makefile118
-rw-r--r--games/ufoai/distinfo4
-rw-r--r--games/ufoai/files/patch-src__client__battlescape__cl_particle.cpp11
-rw-r--r--games/ufoai/files/patch-src__client__renderer__r_state.cpp22
-rw-r--r--games/ufoai/files/patch-src__game__g_ai.cpp11
-rw-r--r--games/ufoai/files/patch-src__libs__vorbis__config.h11
-rw-r--r--games/ufoai/files/patch-src__tools__radiant__radiant__exec.cpp11
-rw-r--r--games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourScheme.h11
-rw-r--r--games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourSchemeManager.cpp113
-rw-r--r--games/ufoai/pkg-descr2
-rw-r--r--games/ufoai/pkg-plist65
11 files changed, 323 insertions, 56 deletions
diff --git a/games/ufoai/Makefile b/games/ufoai/Makefile
index 9c6acc71b06f..06919ca087cc 100644
--- a/games/ufoai/Makefile
+++ b/games/ufoai/Makefile
@@ -2,32 +2,32 @@
# $FreeBSD$
PORTNAME= ufoai
-PORTVERSION= 2.4
-PORTREVISION= 3
+PORTVERSION= 2.5
CATEGORIES= games
MASTER_SITES= SF/${PORTNAME}/UFO_AI%202.x/${PORTVERSION}
DISTNAME= ${PORTNAME:S/$/-/}${PORTVERSION}-source
DIST_SUBDIR= ${PORTNAME}
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= m.tsatsenko@gmail.com
COMMENT= Strategy game featuring tactical combat
LIB_DEPENDS= libvorbis.so:${PORTSDIR}/audio/libvorbis \
libjpeg.so:${PORTSDIR}/graphics/jpeg \
libpng15.so:${PORTSDIR}/graphics/png \
libcurl.so:${PORTSDIR}/ftp/curl \
- libexecinfo.so:${PORTSDIR}/devel/libexecinfo \
libtheora.so:${PORTSDIR}/multimedia/libtheora \
libxvidcore.so:${PORTSDIR}/multimedia/xvid \
libmxml.so:${PORTSDIR}/textproc/mxml
-BUILD_DEPENDS= ${LOCALBASE}/include/mxml.h:${PORTSDIR}/textproc/mxml
+BUILD_DEPENDS= zip:${PORTSDIR}/archivers/zip
RUN_DEPENDS= ${LOCALBASE}/share/${PORTNAME}/base/default.cfg:${PORTSDIR}/games/ufoai-data
USE_GL= yes
USE_SDL= sdl image mixer ttf
-USES= gettext gmake openal:soft pkgconfig tar:bzip2
+USE_CXXSTD= c++11
+USES= compiler:c++11-lang execinfo gettext gmake openal:soft pkgconfig \
+ python:build tar:bzip2
HAS_CONFIGURE= yes
-CONFIGURE_ARGS+= --enable-release
+CONFIGURE_ARGS+= --enable-release --target-os=freebsd
CPPFLAGS+= -I${LOCALBASE}/include ${PTHREAD_CFLAGS}
LDFLAGS+= -L${LOCALBASE}/lib ${PTHREAD_LIBS} -lexecinfo
CFLAGS+= -I${LOCALBASE}/include
@@ -45,10 +45,9 @@ SERVER_DESC= Install dedicated server
UFO2MAP_DESC= Install UFO tools
UFORADIANT_DESC= Install UFO map editor
-NO_STAGE= yes
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
-.if $(PORT_OPTIONS:MSERVER)
+.if ${PORT_OPTIONS:MSERVER}
CONFIGURE_ARGS+= --enable-ufoded
UFO_FILES+= ufoded
PLIST_SUB+= UFOSERVER=""
@@ -57,7 +56,7 @@ CONFIGURE_ARGS+= --disable-ufoded
PLIST_SUB+= UFOSERVER="@comment "
.endif
-.if $(PORT_OPTIONS:MUFO2MAP)
+.if ${PORT_OPTIONS:MUFO2MAP}
CONFIGURE_ARGS+= --enable-ufo2map
UFO_FILES+= ufo2map
PLIST_SUB+= UFO2MAP=""
@@ -66,11 +65,11 @@ CONFIGURE_ARGS+= --disable-ufo2map
PLIST_SUB+= UFO2MAP="@comment "
.endif
-.if $(PORT_OPTIONS:MUFORADIANT)
+.if ${PORT_OPTIONS:MUFORADIANT}
CONFIGURE_ARGS+=--enable-uforadiant
USE_GNOME+= gtk20 glib20 gtksourceview2 libxml2
LIB_DEPENDS+= libgtkglext-x11-1.0.so:${PORTSDIR}/x11-toolkits/gtkglext
-RADIANT_FILE= uforadiant
+RADIANT_FILES= colours.xml game.xml input.xml mapdef.template menu.xml user.xml
RADIANT_DIRS= bitmaps i18n prefabs sourceviewer
PLIST_SUB+= UFORADIANT=""
.else
@@ -78,58 +77,71 @@ CONFIGURE_ARGS+=--disable-uforadiant
PLIST_SUB+= UFORADIANT="@comment "
.endif
+.if ${OSVERSION} < 1000024
+FAVORITE_COMPILER= gcc
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 900000
+BROKEN= Fails to build on 8.x
+.endif
+
post-extract:
@${MKDIR} ${WRKSRC}/base/maps ${WRKSRC}/base/models
-
-# Resolve name collision with jpeg-8 and API png
-post-patch:
- ${REINPLACE_CMD} -e 's|jpeg_mem_src|local_jpeg_mem_src|' \
- -e 's|png_set_gray_1_2_4_to_8|png_set_expand_gray_1_2_4_to_8|' \
- -e 's|png_check_sig(PngFileBuffer.buffer, 8)|!png_sig_cmp(PngFileBuffer.buffer, 0, 8)|' \
- ${WRKSRC}/src/client/renderer/r_image.c
+ ${REINPLACE_CMD} \
+ -e 's|DEFAULT_COMPILER_CC=cc|DEFAULT_COMPILER_CC=${CC}|' \
+ -e 's|DEFAULT_COMPILER_CXX=c++|DEFAULT_COMPILER_CXX=${CXX}|' \
+ ${WRKSRC}/configure
+.if ${CHOSEN_COMPILER_TYPE} == "clang"
+ ${REINPLACE_CMD} \
+ -e 's|-falign-loops=2 -falign-jumps=2 -falign-functions=2||' \
+ ${WRKSRC}/build/modes/release.mk
+.endif
post-build:
@cd ${WRKSRC} && ${MAKE_CMD} lang
-. if defined(WITH_UFORADIANT)
- @cd ${WRKSRC} && ${MAKE_CMD} uforadiant
-. endif
+.if $(PORT_OPTIONS:MUFORADIANT)
+ @cd ${WRKSRC} && ${MAKE_CMD} uforadiant
+.endif
do-install:
- @${MKDIR} ${UFO_DIR}
-. for FILE in ${UFO_FILES}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}
+.for FILE in ${UFO_FILES}
@${SED} \
-e 's|@UFODIR@|${UFO_DIR}|' \
-e 's|@APP@|${FILE}|' \
${FILESDIR}/run.sh.in > ${WRKDIR}/${FILE}
- ${INSTALL_PROGRAM} ${WRKSRC}/${FILE} ${UFO_DIR}
- ${INSTALL_SCRIPT} ${WRKDIR}/${FILE} ${PREFIX}/bin
-. endfor
-
- ${INSTALL_PROGRAM} ${WRKSRC}/base/game.so ${PREFIX}/${DATADIR}/base
-
-. if defined(WITH_UFORADIANT)
- @${MKDIR} ${UFO_DIR}/radiant
+ ${INSTALL_PROGRAM} ${WRKSRC}/${FILE} ${STAGEDIR}${UFO_DIR}
+ ${INSTALL_SCRIPT} ${WRKDIR}/${FILE} ${STAGEDIR}${PREFIX}/bin
+.endfor
+ ${MKDIR} ${STAGEDIR}${PREFIX}/${DATADIR}/base
+ ${INSTALL_PROGRAM} ${WRKSRC}/base/game.so ${STAGEDIR}${PREFIX}/${DATADIR}/base
+
+.if ${PORT_OPTIONS:MUFORADIANT}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}/radiant
@${SED} \
-e 's|@UFODIR@|${UFO_DIR}/radiant|' \
- -e 's|@APP@|${RADIANT_FILE}|' \
- ${FILESDIR}/run.sh.in > ${WRKDIR}/${RADIANT_FILE}
- ${INSTALL_PROGRAM} ${WRKSRC}/radiant/${RADIANT_FILE} ${UFO_DIR}/radiant
- ${INSTALL_SCRIPT} ${WRKDIR}/${RADIANT_FILE} ${PREFIX}/bin
-
-. for DIRE in ${RADIANT_DIRS}
- @${MKDIR} ${UFO_DIR}/radiant/${DIRE}
- @cd ${WRKSRC}/radiant/${DIRE} && \
- ${FIND} * -type d -exec ${MKDIR} "${UFO_DIR}/radiant/${DIRE}/{}" \; && \
- ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${UFO_DIR}/radiant/${DIRE}/{}" \;
-. endfor
-. endif
-
- @cd ${WRKSRC}/base/i18n && \
- ${FIND} * -type d -exec ${MKDIR} "${PREFIX}/${DATADIR}/base/i18n/{}" \; && \
- ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${PREFIX}/${DATADIR}/base/i18n/{}" \;
- ${LN} -s ${PREFIX}/${DATADIR}/base ${UFO_DIR}/base
-
-post-install:
- @${CAT} ${PKGMESSAGE}
+ -e 's|@APP@|uforadiant|' \
+ ${FILESDIR}/run.sh.in > ${WRKDIR}/uforadiant
+ ${INSTALL_PROGRAM} ${WRKSRC}/radiant/uforadiant ${STAGEDIR}${UFO_DIR}/radiant
+ ${INSTALL_SCRIPT} ${WRKDIR}/uforadiant ${STAGEDIR}${PREFIX}/bin
+
+.for FILE in ${RADIANT_FILES}
+ ${INSTALL_DATA} ${WRKSRC}/radiant/${FILE} ${STAGEDIR}${UFO_DIR}/radiant
+.endfor
+
+.for DIRE in ${RADIANT_DIRS}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}/radiant/${DIRE}
+ cd ${WRKSRC}/radiant/${DIRE} && \
+ ${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${UFO_DIR}/radiant/${DIRE}/{}" \; && \
+ ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${STAGEDIR}${UFO_DIR}/radiant/${DIRE}/{}" \;
+.endfor
+.endif
+
+ cd ${WRKSRC}/base/i18n && \
+ ${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${PREFIX}/${DATADIR}/base/i18n/{}" \; && \
+ ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${STAGEDIR}${PREFIX}/${DATADIR}/base/i18n/{}" \;
+ ${LN} -s ${PREFIX}/${DATADIR}/base ${STAGEDIR}${UFO_DIR}/base
.include <bsd.port.post.mk>
diff --git a/games/ufoai/distinfo b/games/ufoai/distinfo
index 5546ec444a68..2d4b5a5a3c0d 100644
--- a/games/ufoai/distinfo
+++ b/games/ufoai/distinfo
@@ -1,2 +1,2 @@
-SHA256 (ufoai/ufoai-2.4-source.tar.bz2) = 254a61b770f141374d57e5c2589048be9298d0a920e914c6e72c2b98255bb94f
-SIZE (ufoai/ufoai-2.4-source.tar.bz2) = 16875353
+SHA256 (ufoai/ufoai-2.5-source.tar.bz2) = 0c7cc3bc9efeb276f71cbe6ee8ff7c76f98d183de79f1a069fa63059cf182a8f
+SIZE (ufoai/ufoai-2.5-source.tar.bz2) = 24239539
diff --git a/games/ufoai/files/patch-src__client__battlescape__cl_particle.cpp b/games/ufoai/files/patch-src__client__battlescape__cl_particle.cpp
new file mode 100644
index 000000000000..b1bb9ee2dd40
--- /dev/null
+++ b/games/ufoai/files/patch-src__client__battlescape__cl_particle.cpp
@@ -0,0 +1,11 @@
+--- ./src/client/battlescape/cl_particle.cpp.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/client/battlescape/cl_particle.cpp 2014-08-07 16:49:53.693302810 +0200
+@@ -138,7 +138,7 @@
+ CASSERT(lengthof(pc_strings) == PC_NUM_PTLCMDS);
+
+ /** @brief particle commands parameter and types */
+-static const int pc_types[PC_NUM_PTLCMDS] = {
++static const unsigned int pc_types[PC_NUM_PTLCMDS] = {
+ 0,
+
+ V_UNTYPED, V_UNTYPED, V_UNTYPED,
diff --git a/games/ufoai/files/patch-src__client__renderer__r_state.cpp b/games/ufoai/files/patch-src__client__renderer__r_state.cpp
new file mode 100644
index 000000000000..70f77c7e0c57
--- /dev/null
+++ b/games/ufoai/files/patch-src__client__renderer__r_state.cpp
@@ -0,0 +1,22 @@
+--- ./src/client/renderer/r_state.cpp.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/client/renderer/r_state.cpp 2014-08-07 16:49:53.695310143 +0200
+@@ -147,7 +147,8 @@
+
+ void R_BindArray (GLenum target, GLenum type, const void* array)
+ {
+- switch (target) {
++ const int v = static_cast<int>(target);
++ switch (v) {
+ case GL_VERTEX_ARRAY:
+ glVertexPointer(COMPONENTS_VERTEX_ARRAY3D, type, 0, array);
+ break;
+@@ -180,7 +181,8 @@
+ */
+ void R_BindDefaultArray (GLenum target)
+ {
+- switch (target) {
++ const int v = static_cast<int>(target);
++ switch (v) {
+ case GL_VERTEX_ARRAY:
+ R_BindArray(target, GL_FLOAT, r_state.vertex_array_3d);
+ break;
diff --git a/games/ufoai/files/patch-src__game__g_ai.cpp b/games/ufoai/files/patch-src__game__g_ai.cpp
new file mode 100644
index 000000000000..903691bed08e
--- /dev/null
+++ b/games/ufoai/files/patch-src__game__g_ai.cpp
@@ -0,0 +1,11 @@
+--- ./src/game/g_ai.cpp.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/game/g_ai.cpp 2014-08-07 16:49:53.698302816 +0200
+@@ -35,6 +35,8 @@
+ #include "g_vis.h"
+ #include "g_reaction.h"
+
++#include <cstdlib>
++
+ typedef struct aiAction_s {
+ pos3_t to; /**< grid pos to walk to for performing the action */
+ pos3_t stop; /**< grid pos to end turn at (e.g. hiding spots) */
diff --git a/games/ufoai/files/patch-src__libs__vorbis__config.h b/games/ufoai/files/patch-src__libs__vorbis__config.h
new file mode 100644
index 000000000000..3cac30c20488
--- /dev/null
+++ b/games/ufoai/files/patch-src__libs__vorbis__config.h
@@ -0,0 +1,11 @@
+--- ./src/libs/vorbis/config.h.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/libs/vorbis/config.h 2014-08-07 16:49:53.700302995 +0200
+@@ -14,7 +14,7 @@
+
+ /* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
+ */
+-#define HAVE_ALLOCA_H 1
++/* #define HAVE_ALLOCA_H 1 */
+
+ /* Define to 1 if you have the <dlfcn.h> header file. */
+ #define HAVE_DLFCN_H 1
diff --git a/games/ufoai/files/patch-src__tools__radiant__radiant__exec.cpp b/games/ufoai/files/patch-src__tools__radiant__radiant__exec.cpp
new file mode 100644
index 000000000000..810b64bbe519
--- /dev/null
+++ b/games/ufoai/files/patch-src__tools__radiant__radiant__exec.cpp
@@ -0,0 +1,11 @@
+--- ./src/tools/radiant/radiant/exec.cpp.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/tools/radiant/radiant/exec.cpp 2014-08-07 16:49:53.703302732 +0200
+@@ -28,6 +28,8 @@
+
+ #if defined (__FreeBSD__) || defined(__OpenBSD__)
+ # include <signal.h>
++# include <sys/types.h>
++# include <sys/wait.h>
+ #elif defined(__linux__)
+ # include <sys/wait.h>
+ #endif
diff --git a/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourScheme.h b/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourScheme.h
new file mode 100644
index 000000000000..a66d6d9c0dae
--- /dev/null
+++ b/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourScheme.h
@@ -0,0 +1,11 @@
+--- ./src/tools/radiant/radiant/ui/colourscheme/ColourScheme.h.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/tools/radiant/radiant/ui/colourscheme/ColourScheme.h 2014-08-07 16:51:10.093299939 +0200
+@@ -52,8 +52,6 @@
+ ColourItem _emptyColour;
+
+ public:
+- // Constructors
+- ColourScheme() {};
+ // Constructs a ColourScheme from a given xml::node
+ ColourScheme(xml::Node& schemeNode);
+
diff --git a/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourSchemeManager.cpp b/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourSchemeManager.cpp
new file mode 100644
index 000000000000..a2876e8917fb
--- /dev/null
+++ b/games/ufoai/files/patch-src__tools__radiant__radiant__ui__colourscheme__ColourSchemeManager.cpp
@@ -0,0 +1,113 @@
+--- ./src/tools/radiant/radiant/ui/colourscheme/ColourSchemeManager.cpp.orig 2014-06-05 06:18:39.000000000 +0200
++++ ./src/tools/radiant/radiant/ui/colourscheme/ColourSchemeManager.cpp 2014-08-07 16:55:49.627279079 +0200
+@@ -5,13 +5,15 @@
+ #include "stream/stringstream.h"
+ #include "stream/textfilestream.h"
+
++#include <stdexcept>
++
+ namespace ui {
+
+ /* returns true, if the scheme called <name> exists
+ */
+ bool ColourSchemeManager::schemeExists(const std::string& name) {
+ ColourSchemeMap::iterator it = _colourSchemes.find(name);
+- return (it != _colourSchemes.end());
++ return it != _colourSchemes.end();
+ }
+
+ ColourSchemeMap& ColourSchemeManager::getSchemeList() {
+@@ -19,11 +21,15 @@
+ }
+
+ ColourScheme& ColourSchemeManager::getActiveScheme() {
+- return _colourSchemes[_activeScheme];
++ return getScheme(_activeScheme);
+ }
+
+ ColourScheme& ColourSchemeManager::getScheme(const std::string& name) {
+- return _colourSchemes[name];
++ ColourSchemeMap::iterator i = _colourSchemes.find(name);
++ if (i == _colourSchemes.end()) {
++ throw std::runtime_error("ColourSchemeManager: active scheme not found");
++ }
++ return i->second;
+ }
+
+ /* Returns true, if the scheme called <name> is currently active
+@@ -32,9 +38,7 @@
+ if (schemeExists(name)) {
+ return (name == _activeScheme);
+ }
+- else {
+- return false;
+- }
++ return false;
+ }
+
+ void ColourSchemeManager::setActive(const std::string& name) {
+@@ -53,7 +57,7 @@
+ globalOutputStream() << "Dump: Schemename: " << it->first << "\n";
+
+ // Retrieve the list with all the ColourItems of this scheme
+- ColourItemMap& colourMap = _colourSchemes[it->first].getColourMap();
++ ColourItemMap& colourMap = getScheme(it->first).getColourMap();
+
+ //globalOutputStream() << "Dump: Number of ColourItems: " << colourMap.size();
+ globalOutputStream() << "\n";
+@@ -95,7 +99,8 @@
+ xml::Node schemeNode = GlobalRegistry().createKeyWithName(basePath, "colourscheme", name);
+
+ // Set the readonly attribute if necessary
+- if (_colourSchemes[name].isReadOnly()) {
++ ColourScheme& scheme = getScheme(name);
++ if (scheme.isReadOnly()) {
+ schemeNode.setAttributeValue("readonly", "1");
+ }
+
+@@ -108,7 +113,7 @@
+ std::string schemePath = basePath + "/colourscheme[@name='" + name + "']";
+
+ // Retrieve the list with all the ColourItems of this scheme
+- ColourItemMap& colourMap = _colourSchemes[name].getColourMap();
++ ColourItemMap& colourMap = scheme.getColourMap();
+
+ // Cycle through all the ColourItems and save them into the registry
+ for (ColourItemMap::iterator it = colourMap.begin(); it != colourMap.end(); ++it) {
+@@ -157,7 +162,7 @@
+ // If the scheme is already in the list, skip it
+ if (!schemeExists(schemeName)) {
+ // Construct the ColourScheme class from the xml::node
+- _colourSchemes[schemeName] = ColourScheme(schemeNodes[i]);
++ _colourSchemes.insert(std::pair<std::string,ColourScheme>(schemeName, ColourScheme(schemeNodes[i])));
+
+ // Check, if this is the currently active scheme
+ if (schemeNodes[i].getAttributeValue("active") == "1") {
+@@ -179,8 +184,11 @@
+ void ColourSchemeManager::copyScheme(const std::string& fromName, const std::string& toName) {
+ if (schemeExists(fromName)) {
+ // Copy the actual entry
+- _colourSchemes[toName] = _colourSchemes[fromName];
+- _colourSchemes[toName].setReadOnly(false);
++ ColourScheme& copy = getScheme(fromName);
++ std::pair<ColourSchemeMap::iterator, bool> i = _colourSchemes.insert(std::pair<std::string,ColourScheme>(toName, copy));
++ if (i.second) {
++ i.first->second.setReadOnly(false);
++ }
+ }
+ else {
+ globalOutputStream() << "ColourSchemeManager: Scheme " << fromName << " does not exist!\n";
+@@ -189,11 +197,11 @@
+
+ Vector3 ColourSchemeManager::getColourVector3(const std::string& colourName) {
+ // Cast the ColourItem object onto a Vector3
+- return _colourSchemes[_activeScheme].getColour(colourName);
++ return getActiveScheme().getColour(colourName);
+ }
+
+ ColourItem& ColourSchemeManager::getColour(const std::string& colourName) {
+- return _colourSchemes[_activeScheme].getColour(colourName);
++ return getActiveScheme().getColour(colourName);
+ }
+
+ } // namespace ui
diff --git a/games/ufoai/pkg-descr b/games/ufoai/pkg-descr
index fc96cff299d2..7a8ff981fe9e 100644
--- a/games/ufoai/pkg-descr
+++ b/games/ufoai/pkg-descr
@@ -5,4 +5,4 @@ strike force. To be successful on the long run, you will also have to have a
research team study the aliens and their technologies in order to learn as much
as possible about their technology, their goals and the aliens themselves.
-WWW: http://ufoai.ninex.info/
+WWW: http://ufoai.org/
diff --git a/games/ufoai/pkg-plist b/games/ufoai/pkg-plist
index af75c6fd80f7..3704176f0e0f 100644
--- a/games/ufoai/pkg-plist
+++ b/games/ufoai/pkg-plist
@@ -111,6 +111,7 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/pathfinding.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/redo.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/refresh_models.png
+%%UFORADIANT%%lib/ufoai/radiant/bitmaps/rotation_pivot_origin.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/select_mouseresize.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/select_mouserotate.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/select_mousescale.png
@@ -142,10 +143,15 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/view_forcelight.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/window_regular.png
%%UFORADIANT%%lib/ufoai/radiant/bitmaps/window_split.png
+%%UFORADIANT%%lib/ufoai/radiant/colours.xml
+%%UFORADIANT%%lib/ufoai/radiant/game.xml
%%UFORADIANT%%lib/ufoai/radiant/i18n/de/LC_MESSAGES/uforadiant.mo
%%UFORADIANT%%lib/ufoai/radiant/i18n/en/LC_MESSAGES/uforadiant.mo
%%UFORADIANT%%lib/ufoai/radiant/i18n/ru/LC_MESSAGES/uforadiant.mo
%%UFORADIANT%%lib/ufoai/radiant/i18n/zh_CN/LC_MESSAGES/uforadiant.mo
+%%UFORADIANT%%lib/ufoai/radiant/input.xml
+%%UFORADIANT%%lib/ufoai/radiant/mapdef.template
+%%UFORADIANT%%lib/ufoai/radiant/menu.xml
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/gas_tank_01.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/stand.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/katana.jpg
@@ -200,10 +206,14 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/puma.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/trailer.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/trailer.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/transport.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/transport.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/van.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/van.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/van3.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/cars/van3.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/city/fountain01.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/city/fountain01.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/city/street_corner.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/city/sign01.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/city/powerline.map
@@ -252,6 +262,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles.txt
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles_2.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles_2.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles_pod.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_herakles_pod.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/dropships/drop_raptor.jpg
@@ -308,6 +320,10 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/kitchen/sink.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/armchair.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/armchair.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/armchair2_small.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/armchair2_small.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/bench2_small.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/bench2_small.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/couch.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/couch.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/household/living_room/couch2.jpg
@@ -380,6 +396,12 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/crate_sqb_1.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/barrel.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/crate_rec_1.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/alien_battery1.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/alien_battery1.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/alien_seat1.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/alien_seat1.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/box001.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/alien/box001.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/houses/house1.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/houses/storage.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/houses/storage.mat
@@ -407,6 +429,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/generator.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/generator_big.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/generator_big.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/minicrane.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/minicrane.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/mixer.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/mixer.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/three_forklifts.jpg
@@ -415,6 +439,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/workbench.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/cons_lights.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/machines/workbench.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/barrel.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/barrel.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/barrel1.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/barrel1.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/barrel2.jpg
@@ -459,6 +485,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/carton4.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/carton5.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/carton5.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/cartwheel.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/cartwheel.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/cash_point.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/cash_point.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/cliff.jpg
@@ -471,6 +499,10 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container2.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container2_open.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container2_open.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container3.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container3.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container3_open.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/container3_open.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/crate1.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/crate1.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/crate2.jpg
@@ -529,6 +561,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/rack2.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/rack_newspaper.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/rack_newspaper.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/radar.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/radar.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/sawmill.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/sawmill.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/seesaw.jpg
@@ -595,6 +629,8 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/sunshade.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/swing.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/swing.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/switchboard.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/switchboard.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/tabletennistable.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/tabletennistable.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/misc/telephone.jpg
@@ -676,18 +712,45 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/prefabs/trucks/truck_red.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/trucks/water_truck.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/trucks/water_truck.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_bomber.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_bomber.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_corrupter.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_corrupter.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_fighter.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_fighter.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_gunboat.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_gunboat.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_gunboat.mat
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout/back_01.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout/back_01.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout/back_03.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/crashed_scout/back_03.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_bomber.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_bomber.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_bomber.mat
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_corrupter.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_corrupter.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_fighter.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_fighter.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_gunboat.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_gunboat.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_gunboat.mat
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_harvester.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_harvester.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_scout.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_scout.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_supply.jpg
%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_supply.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_supply_new.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/ufos/ufo_supply_new.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/fir2_medium.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/fir2_medium.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/palm_a.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/palm_a.map
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/pine.jpg
+%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/pine.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/fern2.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/gumtree2.map
%%UFORADIANT%%lib/ufoai/radiant/prefabs/vegetation/plant12.map
@@ -777,6 +840,7 @@ lib/ufoai/base
%%UFORADIANT%%lib/ufoai/radiant/sourceviewer/ufo.lang
%%UFORADIANT%%lib/ufoai/radiant/sourceviewer/ump.lang
%%UFORADIANT%%lib/ufoai/radiant/uforadiant
+%%UFORADIANT%%lib/ufoai/radiant/user.xml
@dirrm %%DATADIR%%/base/i18n/zh_CN/LC_MESSAGES
@dirrm %%DATADIR%%/base/i18n/zh_CN
@dirrm %%DATADIR%%/base/i18n/uk/LC_MESSAGES
@@ -864,6 +928,7 @@ lib/ufoai/base
%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs/misc
%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs/office
%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs/trucks
+%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs/ufos/crashed_scout
%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs/ufos
%%UFORADIANT%%@dirrm lib/ufoai/radiant/prefabs
%%UFORADIANT%%@dirrm lib/ufoai/radiant/sourceviewer