debian/0000775000000000000000000000000012236575603007201 5ustar debian/README.Debian0000664000000000000000000000065011545526463011245 0ustar ogre-plugins-cgprogrammanager =============================================================================== Funguloids can be played with or without the Ogre Cg plugin (provided by the ogre-plugins-cgprogrammanager package). Without the Ogre Cg plugin, the game's visual quality will be slightly diminished. Funguloids will use a symlink pointing to /etc/OGRE/plugins.cfg to determine if the Ogre Cg plugin is available. debian/source/0000775000000000000000000000000012213546132010467 5ustar debian/source/format0000664000000000000000000000001411545530577011712 0ustar 3.0 (quilt) debian/copyright0000664000000000000000000000630312033744425011131 0ustar This package was debianized by Andres Mejia on Sat, 23 Jun 2007 15:59:37 -0400. It was downloaded from . The (sources + data) tarball was downloaded. Files that are generated by autotools are removed from original tarball. Credits: Code: Mika Halttunen Game Design: Teemu Ruokolainen Artwork: Mika Halttunen Sound Design & Music: Teemu Ruokolainen We're using Ogre graphics engine for visuals, OIS for input, Lua for scripting and OpenAL for audio output. SimpleIni is used for the configuration reading/writing. Hosted by SourceForge. Comments, ideas, patches, bug reports, etc. are always welcome and appreciated! :) Use the SourceForge trackers, or just mail me at the e-mail address above. And be sure to check out Funguloids website at http://funguloids.sourceforge.net for the latest stuff! Copyright and License: "Those Funny Funguloids!" is licensed under the zlib/libpng license. Copyright © 2006-2007, Mika Halttunen & Teemu Ruokolainen This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. The Debian packaging is Copyright 2007, Andres Mejia and is licensed under the GPL, see `/usr/share/common-licenses/GPL'. Copyright and License for debian/mpak.py: MPAK package handling utility Version 1.5 (Python-implementation) Copyright (c) 2008, 2012, Mika Halttunen. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. debian/funguloids.menu0000664000000000000000000000025311545530042012234 0ustar ?package(funguloids):needs="X11" \ section="Games/Action" \ title="Funguloids" \ longtitle="Those Funny Funguloids!" \ command="/usr/games/funguloids >/dev/null 2>&1" debian/manpages0000664000000000000000000000002411621547023010703 0ustar debian/funguloids.6 debian/funguloids-data.install0000664000000000000000000000001212033744425013643 0ustar usr/share debian/changelog0000664000000000000000000001604612236575600011057 0ustar funguloids (1.06-11ubuntu2) trusty; urgency=low * No change rebuild against boost1.54 -- Dmitrijs Ledkovs Thu, 07 Nov 2013 02:31:28 +0000 funguloids (1.06-11ubuntu1) trusty; urgency=low * Link against boost_system. -- Dmitrijs Ledkovs Sat, 26 Oct 2013 16:30:03 +0100 funguloids (1.06-11) unstable; urgency=low [ Evgeni Golov ] * Correct Vcs-* URLs to point to anonscm.debian.org [ Fabian Greffrath ] * Build against Ogre-1.8 with a little help from another patch courtesy of openSUSE Build Service (Closes: #704785). * Add a "Build-Conflicts: libboost-date-time1.49-dev (<< 1.49.0-4~)" to avoid the notorious TIME_UTC bug. -- Fabian Greffrath Fri, 07 Jun 2013 10:44:45 +0200 funguloids (1.06-10) unstable; urgency=low * Team upload. * Fix Vcs-Browser field in debian/control. * Move the plugins.cfg file from funguloids-data to funguloids, as it contains a hard-coded architecture-specific path (Closes: #693134). * Run "wrap-and-sort -asb". * No need to second-guess dh_auto_clean. -- Fabian Greffrath Tue, 13 Nov 2012 15:01:58 +0100 funguloids (1.06-9) unstable; urgency=low [ Paul Wise ] * Improve the menu file * Wrap the build-deps and deps one per line * Switch to dpkg-source v3 format * Switch to debhelper 7 dh & dh-autoreconf * Fix FTBFS due to newer GCC (Closes: #633297) * Drop use of ogre-plugins-cgprogrammanager and move the package to main instead of contrib. - Add the OpenSUSE patch to make it optional (Closes: #578089) * Drop Micheal Koch from uploaders since he seems inactive and add myself in his place (Closes: #654144) * Use the same long description in the FreeDesktop menu as in the Debian menu * Don't use reserved characters outside of quotes in the menu file * Clean up the watch file * Add DEP-3 headers to the patches * Use ${misc:Depends} since debhelper might need it * Use Copyright instead of (C) in since the latter is not legally valid * Bump Standards-Version, no changes needed * Add Pre-Depends to ensure an xz-capable dpkg is installed [ Fabian Greffrath ] * Fix compilation with g++-4.7. * Add MPAK package handling utility from upstream, licensed under the MIT license, to fix broken data packages during package building. - fixes crash due to Ogre update (Closes: #564547) * Fix install location of documentation and add an architecture- independent funguloids-data package for all the game data (Closes: #602735). * Compress binary packages with xz. * Bump debhelper compat to 9 to build with hardening flags. * Fix linking order against liblua5.1. * Avoid unnecessary package dependencies. -- Paul Wise Sun, 14 Oct 2012 13:03:29 +0800 funguloids (1.06-8) unstable; urgency=low * Added debian/patches/ogre-1.6.1.patch to work with newer ogre (Closes: #546353). * Improve clean target to delete files generated by autotools. * Comment out unused entry in watch file. * Added debian debian/README.source. * Added myself to Uploaders. * Updated Standards-Version to 3.8.3. -- Michael Koch Tue, 15 Sep 2009 21:04:00 +0200 funguloids (1.06-7) unstable; urgency=low * Fix compiling error with g++-4.3. Closes: #482649 * Ensure that funguloids is built with libogre-dev 1.4.9 or higher. * Bumped Standards-Version to 3.8.0. * Make sure build-aux directory is there. -- Andres Mejia Tue, 22 Jul 2008 00:31:14 -0400 funguloids (1.06-6) unstable; urgency=low [ Andres Mejia ] * Fix problem with running funguloids with ogre-1.4.7. Closes: #478105 * Fix up patches and rules file. * Support disabling of keyboard and mouse capture for debugging. * Fix check where AL errors were being checked while working with AL contexts instead of ALC errors. * Move packaging from svn to git. * Add DM-Upload-Allowed: yes field in control file. * Need build dependency of pkg-config. -- Andres Mejia Mon, 19 May 2008 19:22:00 -0400 funguloids (1.06-5) unstable; urgency=low [ Barry deFreese ] * Add watch file. [ Andres Mejia ] * Removing XS- prefix for Vcs-* fields. * Bumped Standards-Version to 3.7.3. * Moved Homepage field to source package stanza. * Changed Priority to extra. + nvidia-cg-toolkit and ogre-plugins-cgprogrammanager will be Priority extra in the future. * Allowing funguloids to degrade gracefully if ogre cg plugin is not installed. + Uses a symlink to /etc/OGRE/plugins.cfg. + No longer need to patch included plugins.cfg. + No longer need Build-Depends of tofrodos. + Updated README.Debian. + Closes: #449330 * Removed autoconf as Build-Depends, it's a dependency of automake. * Fixed up debian/rules. + Leave files generate by autotools alone. + Use $(MAKE) clean distclean. + No need to make temporary directory debian/tmp. + Set proper tests in debian/rules so as to not depend on --force option for rm. + Adding option to use noopt. + Adding proper CXXFLAGS. + Adding option to use nostrip. + Calling GNU configure properly (from autotools-dev documentation). + Don't use CXX variable. + Provide binary-indep to comply with Debian policy. * Providing another scan for watchfile. * Give exact link used to download upstream tarball in copyright file. * Provide get-orig-source rule. * Switch from dpatch to quilt. * Removed deprecated Encoding field for desktop file. -- Andres Mejia Mon, 14 Jan 2008 02:06:40 -0500 funguloids (1.06-4) unstable; urgency=low [ Andres Mejia ] * Addressing lintian debian-rules-ignores-make-clean-error warning. * Added --force-missing option in automake. * Added -f option in autoheader and autoconf. * Repacked tarball to remove files that are added by --force-missing option. -- Andres Mejia Thu, 16 Aug 2007 16:47:16 -0400 funguloids (1.06-3) unstable; urgency=low [ Jon Dowland ] * update menu section to "Games/Action" for menu transition (thanks Linas Žvirblis) [ Cyril Brulebois ] * Added XS-Vcs-Svn and XS-Vcs-Browser fields in the control file. -- Andres Mejia Sun, 12 Aug 2007 12:58:58 -0400 funguloids (1.06-2) unstable; urgency=low * Repacked orig tarball to take out tar-in-tar method. + Modified debian/rules and patches for this change. + Also took out files that are generated by autotools. * Added dependency of tofrodos for patching files using DOS carraige return. + Added to-dos and from-dos targets in debian/rules to use this. + Removed message about Newline convention in README.Debian. * Corrected some mistakes in patches where incorrect files would be cleaned. * Ensured text in README.Debian and debian/copyright didn't exceed 80 columns. -- Andres Mejia Fri, 10 Aug 2007 00:56:31 -0400 funguloids (1.06-1) unstable; urgency=low * New upstream release (Closes: #428718) -- Andres Mejia Sun, 08 Jul 2007 02:38:08 -0400 debian/mpak.py0000775000000000000000000002516612033744425010513 0ustar #!/usr/bin/python """ MPAK package handling utility Version 1.5 (Python-implementation) Copyright (c) 2008, 2012, Mika Halttunen. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Description follows: This command line tool allows creation and extraction of MPAK (.mpk) packages used in several of my games. MPAK is a simple WAD-like file format of mine, that allows storing the game data in one single .mpk file. I originally had a very crude command line program bit like this one (written in C++), and decided to write this Python-implementation as an Python-programming excercise. So, it's my first Python program. :) Version history: v1.5: Licensed under MIT license (no functional changes) v1.4: The first Python version v1.0 -- v1.31: The original C++ implementation """ import getopt, sys import os import traceback import struct import binascii import fnmatch import shutil from ctypes import c_uint32 def usage(): """ Prints the program usage. """ print "MPAK package handling utility" print "Version 1.5 (Python-implementation)" print "Copyright (c) 2008, 2012, Mika Halttunen." print "" print "Usage:", sys.argv[0],"[switch]","-f pakfile.mpk","[file1]","[file2]", "[...]", "[fileN]" print "where [switch] is one of the following:" print " -f, --file=FILE Use package FILE" print " -c, --create Create a new package with files 'file1' to 'fileN'" print " -l, --list List the files from given package" print " -e, --extract Extract all files (by default) from given package. If you" print " want to only extract some specific files, you can name" print " them individually, and/or use wildcards (i.e. *.png)." print " You can supply path where to extract with -p." print " -p, --path=PATH Extract to PATH (created if doesn't exist)" print " -h, --help Print this usage text" print "" def errorMsg(msg): """ Prints an error message and exits. """ try: pos = traceback.extract_stack(limit=2) if pos: print "ERROR: In %s:%s, line %d:" % (pos[0][0], pos[0][2], pos[0][1]) else: print "ERROR:" print "\t",msg except: if __debug__: traceback.print_exc() pass sys.exit(2) def separator(): """ Prints the separator line. """ print "-"*75 def computeCRC(file, offset): """ Computes the CRC32 for the file, starting at given offset. """ f = open(file, "rb") f.seek(offset) crc = 0 # Compute a running CRC32 for the file in 16kb chunks while True: buffer = f.read(16384) if buffer == "": break # End of file crc = binascii.crc32(buffer, crc) f.close() return crc def createPackage(pakFile, files): """ Creates a new MPAK package. This copies the given files into the new package file, writes the file table and closes the package. MPAK doesn't support adding new files to an existing package. """ print "Creating '%s'.." % pakFile if len(files) < 1: errorMsg("No input files specified!") separator() # Open the package file for writing out = open(pakFile, "wb") # Write the header and reserve 4+4 bytes for CRC32 and file table offset out.write("MPK1") out.write("."*8) # Write each file package = { "fileNames": [], "fileOffsets": [] } count = 0 for file in files: # Get the basename filename = os.path.basename(file) print " <",filename,"...", package["fileNames"].append(filename) # Get the file size in bytes stats = os.stat(file) # Store the current offset package["fileOffsets"].append(out.tell()) # Open the file and copy its contents f = open(file, "rb") shutil.copyfileobj(f, out, 16384) f.close() print "OK. (%.1f KB)" % (stats.st_size / 1024.0) count = count + 1 separator() # Grab the file table offset and write the table ftOffset = out.tell() # Write the number of files out.write(struct.pack(" 0: for filter in filters: if fnmatch.fnmatch(package["fileNames"][i], filter): break else: continue print " >", package["fileNames"][i],"...", # Seek to the correct offset f.seek(package["fileOffsets"][i]) # Open a new file for writing, and write the file out in 16kb chunks out = open(os.path.join(path, package["fileNames"][i]), "wb") bytesWritten = 0 bytesTotal = package["fileSizes"][i]; while True: # We have to watch not to write too much bytesLeft = bytesTotal - bytesWritten if bytesLeft > 16384: bytesLeft = 16384 buffer = f.read(bytesLeft) out.write(buffer) bytesWritten = bytesWritten + bytesLeft if bytesWritten == bytesTotal: break out.close() print "OK." count = count + 1 f.close() separator() print "%d (of %d) files extracted to %s." % (count, package["numFiles"], path) def main(): """ Main method. """ try: # Get the optiosn opts, args = getopt.getopt(sys.argv[1:], "f:clep:h", ["file=", "create", "list", "extract", "path=", "help"]) except getopt.GetoptError, err: # Print the program usage and exit print "ERROR:", str(err) usage() sys.exit(2) extractPath = os.getcwd() pakFile = None action = None # Handle the options for o, a in opts: if o in ("-f", "--file"): pakFile = a # Grab the pakfile elif o in ("-c", "--create"): action = "create" elif o in ("-l", "--list"): action = "list" elif o in ("-e", "--extract"): action = "extract" elif o in ("-p", "--path"): extractPath = a # Grab the path elif o in ("-h", "--help"): usage() sys.exit() else: assert False, "Unhandled option" # Check that we got a pakfile if pakFile == None: usage() sys.exit(2) if action == "create": createPackage(pakFile, args) elif action == "list": listPackage(pakFile) elif action == "extract": extractPackage(pakFile, extractPath, args) else: usage() sys.exit() if __name__ == "__main__": main() debian/control0000664000000000000000000000334712232760016010601 0ustar Source: funguloids Priority: extra Section: games Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Debian Games Team Uploaders: Paul Wise Build-Depends: debhelper (>= 9), dh-autoreconf, autoconf-archive, libalut-dev, liblua5.1-0-dev, libmad0-dev, libogg-dev, libogre-1.8-dev, libois-dev, libopenal-dev, libvorbis-dev, pkg-config, python Build-Conflicts: libboost-date-time1.49-dev (<< 1.49.0-4~) Standards-Version: 3.9.4 Vcs-Svn: svn://anonscm.debian.org/pkg-games/packages/trunk/funguloids/ Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-games/packages/trunk/funguloids/ Homepage: http://funguloids.sourceforge.net Package: funguloids Architecture: any Pre-Depends: dpkg (>= 1.15.6~) Depends: funguloids-data (= ${source:Version}), ${misc:Depends}, ${shlibs:Depends} Breaks: funguloids-data (<< 1.06-10~) Replaces: funguloids-data (<< 1.06-10~) Description: space-flying-mushroom-picking-simulator game "Those Funny Funguloids!" is actually a nice little piece of entertainment. You collect mushrooms, bring them back to your home base and profit! That's the basic idea in a nutshell. It has smooth, appealing 3d graphics and nice atmospheric sound effects. Go ahead and try it out - it has sounds too! Package: funguloids-data Architecture: all Pre-Depends: dpkg (>= 1.15.6~) Depends: ${misc:Depends} Breaks: funguloids (<< 1.06-9~) Replaces: funguloids (<< 1.06-9~) Description: space-flying-mushroom-picking-simulator game (data files) This package contains data files for "Those Funny Funguloids!". . It contains music, sound effects, textures, models, bitmap fonts, shaders, backgrounds, graphics and documentation. debian/rules0000775000000000000000000000304312232757766010271 0ustar #! /usr/bin/make -f #export DH_VERBOSE=1 LDFLAGS += -Wl,-z,defs -Wl,-O1 -Wl,--as-needed ifneq (,$(findstring nomousecapture,$(DEB_BUILD_OPTIONS))) CXXFLAGS += -DDISABLE_MOUSE_CAPTURE endif %: dh $@ --parallel --with autoreconf override_dh_auto_configure: LIBS="-lboost_system" CXXFLAGS="$(CXXFLAGS)" dh_auto_configure -- --with-fmod=no chmod +x debian/mpak.py if test ! -e bin/bootstrap.mpk.orig ; then \ cp bin/bootstrap.mpk bin/bootstrap.mpk.orig ; \ ./debian/mpak.py -e -f bin/bootstrap.mpk -p _bootstrap ; \ sed -ri '/^[A-Z]/ s/(.*)/overlay \1/' _bootstrap/*.overlay ; \ ./debian/mpak.py -c -f bin/bootstrap.mpk _bootstrap/* ; \ rm -rf _bootstrap ; \ fi if test ! -e bin/funguloids.mpk.orig ; then \ cp bin/funguloids.mpk bin/funguloids.mpk.orig ; \ ./debian/mpak.py -e -f bin/funguloids.mpk -p _gamedata ; \ sed -ri '/^[A-Z]/ s/(.*)/overlay \1/' _gamedata/*.overlay ; \ sed -ri '/^[A-Z]/ s/(.*)/particle_system \1/' _gamedata/*.particle ; \ sed -ri 's/^(\t\t\t)(texture_unit) 1/\1\2\n\1{\n\1}\n\1\2/' _gamedata/materials.material ; \ ./debian/mpak.py -c -f bin/funguloids.mpk _gamedata/* ; \ rm -rf _gamedata ; \ fi override_dh_auto_clean: dh_auto_clean if test -e bin/bootstrap.mpk.orig ; then \ mv bin/bootstrap.mpk.orig bin/bootstrap.mpk ; \ fi if test -e bin/funguloids.mpk.orig ; then \ mv bin/funguloids.mpk.orig bin/funguloids.mpk ; \ fi override_dh_install: dh_install -a /usr/share/games/funguloids/plugins.cfg dh_install -Xplugins.cfg --list-missing override_dh_builddeb: dh_builddeb -- -Zxz debian/watch0000664000000000000000000000014511723341271010222 0ustar version=3 http://sf.net/funguloids/funguloids-(?:linux-)(\d[-\d\.]+)\.(?:zip|(?:tar\.(?:gz|bz2|xz))) debian/funguloids.install0000664000000000000000000000007312033744425012743 0ustar debian/funguloids.desktop usr/share/applications usr/games debian/clean0000664000000000000000000000015711621470642010203 0ustar */*/Makefile */Makefile aclocal.m4 build-aux/* configure config.log include/config.h.in bin/music/playlist.lua debian/patches/0000775000000000000000000000000012213546132010616 5ustar debian/patches/optional_cg.patch0000664000000000000000000000217711621550626014151 0ustar Author: Cristian Morales Vega Origin: https://build.opensuse.org/package/view_file?file=funguloids-optional_cg.patch&package=funguloids&project=games Description: make the Ogre Cg plugin optional Bug-Debian: http://bugs.debian.org/578089 --- a/bin/plugins.cfg.in +++ b/bin/plugins.cfg.in @@ -7,6 +7,6 @@ Plugin=RenderSystem_GL Plugin=Plugin_ParticleFX Plugin=Plugin_OctreeSceneManager -Plugin=Plugin_CgProgramManager +#Plugin=Plugin_CgProgramManager --- a/src/ogreapp.cpp +++ b/src/ogreapp.cpp @@ -23,6 +23,7 @@ // //***************************************************************************/ +#include #include "ogreapp.h" #include "objectsystem.h" #include "effects.h" @@ -71,6 +72,13 @@ OGRE_CONFIG_AND_LOG_PATH + "Ogre.log" ); + ConfigFile cfg; + cfg.load(String(OGRE_PLUGINS_AND_RESOURCES_PATH) + "plugins.cfg"); + String pluginDir = cfg.getSetting("PluginFolder"); + struct stat sb; + if (stat((pluginDir + "Plugin_CgProgramManager.so").c_str(), &sb) == 0) + mRoot->loadPlugin(pluginDir + "Plugin_CgProgramManager"); + // Random seed srand(time(NULL)); debian/patches/doc_path.patch0000664000000000000000000000116512033744425013430 0ustar Author: Fabian Greffrath Subject: Fix location of documentation. --- a/configure.ac +++ b/configure.ac @@ -254,8 +254,8 @@ bininstalldir="${prefix}/games" gameinstalldir="${prefix}/share/games/funguloids" iconinstalldir="${prefix}/share/games/funguloids/icon" musicinstalldir="${prefix}/share/games/funguloids/music" -docinstalldir="${prefix}/share/docs/funguloids" -docimageinstalldir="${prefix}/share/docs/funguloids/docs" +docinstalldir="${prefix}/share/doc/funguloids" +docimageinstalldir="${prefix}/share/doc/funguloids/docs" pixmapinstalldir="${prefix}/share/pixmaps" AC_SUBST(prefix) debian/patches/g++4.3_fix.patch0000664000000000000000000000057611621551417013322 0ustar Author: Andres Mejia Description: Fix for compiling with g++4.3 Bug-Debian: http://bugs.debian.org/482649 Forwarded: http://funguloids.sourceforge.net/files/funguloids-patches.tar.bz2 --- a/src/mp3stream.cpp +++ b/src/mp3stream.cpp @@ -35,6 +35,7 @@ #include #include #include "Ogre.h" +#include #include "mp3stream.h" debian/patches/ogre-1.6.1.patch0000664000000000000000000000263711621551152013244 0ustar Author: Michael Koch Description: Allow building and working with newer Ogre Forwarded: http://funguloids.sourceforge.net/files/funguloids-patches.tar.bz2 Bug-Debian: http://bugs.debian.org/546353 --- a/include/mpakogre.h +++ b/include/mpakogre.h @@ -56,6 +56,7 @@ FileInfoListPtr findFileInfo(const String &pattern, bool recursive, bool dirs = false); bool exists(const String &filename); + time_t getModifiedTime(const String& filename); }; --- a/src/mpakogre.cpp +++ b/src/mpakogre.cpp @@ -198,6 +198,11 @@ return (i != -1); } +time_t MPakArchive::getModifiedTime(const String& filename) { + // TODO: This is currently only a dummy implementation. + return 0; +} + const String &MPakArchiveFactory::getType(void) const { static String name = "MPK"; return name; --- a/src/scriptsystem.cpp +++ b/src/scriptsystem.cpp @@ -137,7 +137,6 @@ Asteroid *roid = new Asteroid(String(name), ScriptSystem::getSingleton().getSceneMgr(), String(mesh), String(mat), pos); roid->setScale(scale, scale, scale); roid->setMass(scale * 10.0f); - roid->getEntity()->setNormaliseNormals(true); return 0; } @@ -435,6 +434,7 @@ ScriptSystem::ScriptSystem(SceneManager *mgr, const char *startup_file) { assert(mgr); mSceneMgr = mgr; + mgr->setNormaliseNormalsOnScale(true); scriptLights.clear(); LogManager::getSingleton().logMessage("Using " + String(LUA_VERSION)); debian/patches/disable_mouse_capture.patch0000664000000000000000000000262011621547742016207 0ustar Author: Andres Mejia Description: Support disabling of keyboard and mouse capture for debugging. Forwarded: http://funguloids.sourceforge.net/disable_mouse_capture.patch --- a/src/input.cpp +++ b/src/input.cpp @@ -37,6 +37,21 @@ OIS::ParamList pl; pl.insert(OIS::ParamList::value_type("WINDOW", Ogre::StringConverter::toString(hWnd))); + // Disable mouse capture for debugging. + #ifdef DISABLE_MOUSE_CAPTURE + #if defined OIS_WIN32_PLATFORM + pl.insert(std::make_pair(std::string("w32_mouse"), std::string("DISCL_FOREGROUND" ))); + pl.insert(std::make_pair(std::string("w32_mouse"), std::string("DISCL_NONEXCLUSIVE"))); + pl.insert(std::make_pair(std::string("w32_keyboard"), std::string("DISCL_FOREGROUND"))); + pl.insert(std::make_pair(std::string("w32_keyboard"), std::string("DISCL_NONEXCLUSIVE"))); + #elif defined OIS_LINUX_PLATFORM + pl.insert(std::make_pair(std::string("x11_mouse_grab"), std::string("false"))); + pl.insert(std::make_pair(std::string("x11_mouse_hide"), std::string("false"))); + pl.insert(std::make_pair(std::string("x11_keyboard_grab"), std::string("false"))); + pl.insert(std::make_pair(std::string("XAutoRepeatOn"), std::string("true"))); + #endif + #endif + mHWnd = hWnd; mInputManager = OIS::InputManager::createInputSystem(pl); mMouse = static_cast(mInputManager->createInputObject(OIS::OISMouse, true)); debian/patches/makefile_modifications.diff0000664000000000000000000000273711621550757016160 0ustar Description: Some modifications to get some of the data files installed in the correct places. This is mainly for the purpose of building Debian packages. Forwarded: http://funguloids.sourceforge.net/files/funguloids-patches.tar.bz2 --- a/bin/Makefile.am +++ b/bin/Makefile.am @@ -4,7 +4,7 @@ dist_pixmapinstall_DATA = funguloids.png dist_gameinstall_DATA = gamesettings.cfg dist_docinstall_DATA = readme.html -gameinstall_DATA = plugins.cfg resources.cfg +gameinstall_DATA = plugins.cfg resources.cfg bootstrap.mpk funguloids.mpk plugins.cfg: plugins.cfg.in cat plugins.cfg.in | sed 's,%%ogreplugindir%%,@ogreplugindir@/,' > plugins.cfg @@ -22,9 +22,7 @@ if test ! -e "@highscoredir@/hiscore.lst"; then cp hiscore.lst.in "@highscoredir@/hiscore.lst"; fi; \ chgrp -R @highscoregroup@ "@highscoredir@"; \ chmod -R g+w "@highscoredir@"; \ - fi; \ - if test -r bootstrap.mpk; then cp bootstrap.mpk "@gameinstalldir@"; fi; \ - if test -r funguloids.mpk; then cp funguloids.mpk "@gameinstalldir@"; fi + fi uninstall-hook: rm -rf "@docinstalldir@" --- a/bin/music/Makefile.am +++ b/bin/music/Makefile.am @@ -1,12 +1,10 @@ -musicinstall_DATA = playlist.lua +musicinstall_DATA = playlist.lua MarylandInMay.ogg EXTRA_DIST = playlist.lua.in playlist.lua: playlist.lua.in cat playlist.lua.in | sed 's,%%musicinstalldir%%,@musicinstalldir@,' > playlist.lua -install-data-hook: - if test -r MarylandInMay.ogg; then cp MarylandInMay.ogg "@musicinstalldir@"; fi; distclean: clean debian/patches/ogre-1.8.patch0000664000000000000000000000577412155373720013122 0ustar Description: Fix compilation with Ogre-1.8 Origin: https://build.opensuse.org/package/files?package=funguloids&project=games --- a/include/mpakogre.h +++ b/include/mpakogre.h @@ -54,7 +54,7 @@ public: FileInfoListPtr listFileInfo(bool recursive = true, bool dirs = false); StringVectorPtr find(const String &pattern, bool recursive = true, bool dirs = false); - FileInfoListPtr findFileInfo(const String &pattern, bool recursive, bool dirs = false); + FileInfoListPtr findFileInfo(const String &pattern, bool recursive, bool dirs = false) const; bool exists(const String &filename); time_t getModifiedTime(const String& filename); --- a/src/mpakogre.cpp +++ b/src/mpakogre.cpp @@ -180,10 +180,10 @@ StringVectorPtr MPakArchive::find(const return ret; } -FileInfoListPtr MPakArchive::findFileInfo(const String &pattern, bool recursive, bool dirs) { +FileInfoListPtr MPakArchive::findFileInfo(const String &pattern, bool recursive, bool dirs) const { FileInfoListPtr ret = FileInfoListPtr(new FileInfoList()); - FileInfoList::iterator i, iend; + FileInfoList::const_iterator i, iend; iend = mFileList.end(); for(i = mFileList.begin(); i != iend; ++i) { if(StringUtil::match(i->filename, pattern, true)) --- a/src/openalsoundsystem.cpp +++ b/src/openalsoundsystem.cpp @@ -35,16 +35,16 @@ #include "playlist.h" #include "mpakogre.h" -template<> OpenALSoundSystem* Singleton::ms_Singleton = 0; +template<> OpenALSoundSystem* Singleton::msSingleton = 0; OpenALSoundSystem* OpenALSoundSystem::getSingletonPtr() { - return ms_Singleton; + return msSingleton; } OpenALSoundSystem& OpenALSoundSystem::getSingleton() { - assert(ms_Singleton); - return *ms_Singleton; + assert(msSingleton); + return *msSingleton; } --- a/src/objectsystem.cpp +++ b/src/objectsystem.cpp @@ -26,7 +26,7 @@ #include "objectsystem.h" #include "game.h" -template<> ObjectSystem* Singleton::ms_Singleton = 0; +template<> ObjectSystem* Singleton::msSingleton = 0; // ObjectSystem constructor @@ -135,11 +135,11 @@ void ObjectSystem::findFreePosition(Vect ObjectSystem *ObjectSystem::getSingletonPtr() { - return ms_Singleton; + return msSingleton; } ObjectSystem &ObjectSystem::getSingleton() { - assert(ms_Singleton); - return *ms_Singleton; + assert(msSingleton); + return *msSingleton; } --- a/src/scriptsystem.cpp +++ b/src/scriptsystem.cpp @@ -38,7 +38,7 @@ #include "mpakogre.h" #include -template<> ScriptSystem* Singleton::ms_Singleton = 0; +template<> ScriptSystem* Singleton::msSingleton = 0; // Log error messages @@ -564,12 +564,12 @@ bool ScriptSystem::executeScript(const c ScriptSystem *ScriptSystem::getSingletonPtr() { - return ms_Singleton; + return msSingleton; } ScriptSystem &ScriptSystem::getSingleton() { - assert(ms_Singleton); - return *ms_Singleton; + assert(msSingleton); + return *msSingleton; } debian/patches/libs_lua5.1.patch0000664000000000000000000000055712033744425013671 0ustar Author: Fabian Greffrath Subject: Link against liblua5.1 in LIBS, not LDFLAGS. --- a/configure.ac +++ b/configure.ac @@ -68,7 +68,7 @@ if test "x$FUNGU_FOUND_HEADER" = "xno"; else CFLAGS="$CFLAGS $FUNGU_FOUND_HEADER" CPPFLAGS="$CPPFLAGS $FUNGU_FOUND_HEADER" - LDFLAGS="$LDFLAGS -llua5.1" + LIBS="$LIBS -llua5.1" fi AC_LANG_POP debian/patches/g++4.6.patch0000664000000000000000000000307211621551253012447 0ustar Author: Paul Wise Description: Fix FTBFS with g++ 4.6 Bug-Debian: http://bugs.debian.org/633297 Forwarded: no --- a/include/openalsoundsystem.h +++ b/include/openalsoundsystem.h @@ -47,7 +47,7 @@ using namespace std; -typedef map SoundMapType; +typedef std::map SoundMapType; // Number of independent channels for sound fx const int NUM_SOUND_CHANNELS = 32; --- a/include/objectsystem.h +++ b/include/objectsystem.h @@ -34,7 +34,7 @@ using namespace std; using namespace Ogre; -typedef map ObjectMapType; +typedef std::map ObjectMapType; // ObjectSystem class ObjectSystem : public Singleton { --- a/include/mpakogre.h +++ b/include/mpakogre.h @@ -49,6 +49,7 @@ void unload(); DataStreamPtr open(const String &filename) const; + DataStreamPtr open(const String &filename, bool) const { return open(filename); }; StringVectorPtr list(bool recursive = true, bool dirs = false); FileInfoListPtr listFileInfo(bool recursive = true, bool dirs = false); --- a/src/scriptsystem.cpp +++ b/src/scriptsystem.cpp @@ -48,7 +48,7 @@ // This keeps track of the lights created in script -static vector scriptLights; +static std::vector scriptLights; // File locator for script files --- a/src/playlist.cpp +++ b/src/playlist.cpp @@ -42,7 +42,7 @@ using namespace std; // Play list files -static vector playList; +static std::vector playList; static unsigned int currentSong = -1; debian/patches/alc_error.patch0000664000000000000000000000165511621547615013627 0ustar Author: Andres Mejia Description: Check ALC errors instead of AL errors. Forwarded: http://funguloids.sourceforge.net/files/funguloids-patches.tar.bz2 --- a/src/openalsoundsystem.cpp +++ b/src/openalsoundsystem.cpp @@ -266,14 +266,14 @@ int attributes[] = { 0 }; mContext = alcCreateContext(mDevice, attributes); - if ( (err = alGetError()) != AL_NO_ERROR) { + if ( (err = alcGetError(mDevice)) != ALC_NO_ERROR) { LogManager::getSingleton().logMessage("OpanAL: error creating context: " + lastALError(err) ); return 1; } // check_alc_error("Couldn't create audio context: "); alcMakeContextCurrent(mContext); // check_alc_error("Couldn't select audio context: "); - if ( (err = alGetError()) != AL_NO_ERROR) { + if ( (err = alcGetError(mDevice)) != ALC_NO_ERROR) { LogManager::getSingleton().logMessage("OpanAL: error making context current: " + lastALError(err) ); return 2; } debian/patches/size_chunks_reverse.patch0000664000000000000000000000100011621550102015700 0ustar Description: Correction for MPakDataStream::read(). This reflects what's done in the FileHandleDataStream::read() method in OgreDataStream.cpp in the Ogre library. Forwarded: http://funguloids.sourceforge.net/files/funguloids-patches.tar.bz2 --- a/src/mpakogre.cpp +++ b/src/mpakogre.cpp @@ -219,7 +219,7 @@ } size_t MPakDataStream::read(void *buf, size_t count) { - return fread(buf, count, 1, mFileHandle); + return fread(buf, 1, count, mFileHandle); } void MPakDataStream::skip(long count) { debian/patches/series0000664000000000000000000000034012155373720012036 0ustar makefile_modifications.diff size_chunks_reverse.patch disable_mouse_capture.patch alc_error.patch g++4.3_fix.patch ogre-1.6.1.patch g++4.6.patch optional_cg.patch g++4.7.patch doc_path.patch libs_lua5.1.patch ogre-1.8.patch debian/patches/g++4.7.patch0000664000000000000000000000102212033744425012444 0ustar Description: Fix compilation with g++-4.7 Origin: https://build.opensuse.org/package/files?package=funguloids&project=games --- a/include/SimpleIni/SimpleIni.h +++ b/include/SimpleIni/SimpleIni.h @@ -407,7 +407,7 @@ public: return *this; } bool ConvertToStore(const SI_CHAR * a_pszString) { - size_t uLen = SizeToStore(a_pszString); + size_t uLen = this->SizeToStore(a_pszString); if (uLen == (size_t)(-1)) { return false; } debian/funguloids.60000664000000000000000000000324411621551622011442 0ustar .TH FUNGULOIDS 6 "July 10, 2007" .SH NAME funguloids \- "Those Funny Funguloids!" .SH SYNOPSIS .B funguloids .SH DESCRIPTION This manual page documents briefly the .B funguloids command. .PP \fBfunguloids\fP is a the command to run and play the game "Those Funny Funguloids!". .SH SEE ALSO .BR /usr/share/doc/funguloids .br .BR http://funguloids.sourceforge.net .SH CREDITS "Those Funny Funguloids!" was primarily developed by: .br .br \fBCode:\fP Mika Halttunen .br \fBGame Design:\fP Teemu Ruokolainen .br \fBArtwork:\fP Mika Halttunen .br \fBSound Design & Music:\fP Teemu Ruokolainen .SH LICENSE "Those Funny Funguloids!" is licensed under the zlib/libpng license. Copyright (C) 2006-2007, Mika Halttunen & Teemu Ruokolainen This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. This manual page was written by Andres Mejia , for the Debian project (but may be used by others). debian/compat0000664000000000000000000000000212033744425010372 0ustar 9 debian/funguloids.desktop0000664000000000000000000000027711621546176012761 0ustar [Desktop Entry] Name=Funguloids Comment=Those Funny Funguloids! Icon=funguloids Exec=sh -c "/usr/games/funguloids >/dev/null 2>&1" Terminal=false Type=Application Categories=Game;ArcadeGame;