Commit Graph

4 Commits (010af46277e2d2e7a96588ade3fee18c8f986524)

Author SHA1 Message Date
Dennis Schridde 194026f379 Rewritten mod loading
This patch includes:
- Strongly modified way of adding mods, maps and addons
- Make nearly everything use PhysFS (just netlog and debug stay)
- Convert several DBERRORs etc. to debug()

The new modloader works like this:
For every mod supplied on the commandline ("-mod") (maximum of MAX_MODS=100) keep it in mind (char * global_mods[]).
After initializing PhysFS do scanDataDirs(), which tries to register all possible paths, global_mods[] and maps with PhysFS. Dont check wether we succeed, only at the very end check if we got a "gamedesc.lev".

When we buildMapList(), mark "gamedesc.lev" as MOD_CAMPAIGN, "addon.lev" and every user supplied map as MOD_MULTIPLAY.

When we loadMods() modify the searchPath according to the supplied mods.
Note: T1 maps like Sk-Rush come from gamedesc.lev, are marked MOD_CAMPAIGN and thus wont load any multiplay_mods[], even if the user starts a multplayer game. Instead those maps are threated as campaignmode and will only load campaign_mods[].

This patch requires the "mp" patches to be either in ProgramDir/mp, in ProgramDir/data/mp or in ProgramDir/mp.wz
This is because one cannot add warzone.wz/mp to the search path if warzone.wz is an archive.

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@436 4a71c877-e1ca-e34f-864e-861f7616d084
2006-06-16 19:10:23 +00:00
Dennis Schridde 9b0a31e9b2 Made Warzone compile using MSVC!
- Fixed several files for being C89 compatible, so MSVC compiles them. (No variable declarations after function calls allowed.)
- Added function definitions (lib/framework/win32fixes.h) for functions with different names under Win32/Linux. (Aiming at moving all platform specific defines into such headers. Everywhere included frame.h should make this easy.)
- Please take a look at lib/gamelib/audp_parser.y. I had to convert the lowercase token "text" to uppercase "TEXT", so it doesn't collide with msxml.h (mysteriously included by some windows headers).

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@433 4a71c877-e1ca-e34f-864e-861f7616d084
2006-06-03 23:46:03 +00:00
Dennis Schridde fe689a39ec - Cleaned up iVis a bit by "commonalizing" it.
- Added a WZ_DEPRECATED macro (lib/framework/macros.h) to mark deprecated functions.
  (See http://websvn.kde.org/trunk/KDE/kdelibs/kdemacros.h.in?view=markup -> KDE_DEPRECATED for usage.)

git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@406 4a71c877-e1ca-e34f-864e-861f7616d084
2006-03-18 01:59:59 +00:00
No Author 5ba7ddac6b Create final repository structure.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@362 4a71c877-e1ca-e34f-864e-861f7616d084
2007-06-28 17:47:08 +00:00