r1150 "made it return FALSE when sound is disabled. The attached
patch corrects this, and also removes the redundant function
audio_LoadTrackFromBuffer which was only a very thin wrapper for
sound_LoadTrackFromBuffer. The check if sound is enabled is again in
dataAudioLoad."
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1157 4a71c877-e1ca-e34f-864e-861f7616d084
checks for lack of double buffering and too small
texture support. Use --debug texture to see your
texture size (first line in output).
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1156 4a71c877-e1ca-e34f-864e-861f7616d084
yes (as before), relaxed (-O2 & -Wextra), and no
(as before). Fix two more reported warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1151 4a71c877-e1ca-e34f-864e-861f7616d084
- the function dataAudioLoad first checked whether the audio system is disabled and if it is sets return buffer (*ppData) to NULL, even though this functionality is already performed by the function it calls (audio_LoadTrackFromBuffer)
- this is similar for dataAudioRelease, additionally I moved the (low-level) call FREE(psTrack) to lib/sound/track.c which is also the file in which it gets malloc'ed
* while at it I directly changed sound_ReleaseTrack from returning BOOL to void since its return value was meaningless anyway (would always be TRUE no matter what), not to mention it was completely ignored by its only caller (dataAudioRelease)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1150 4a71c877-e1ca-e34f-864e-861f7616d084
for compilers other than gcc. Thanks to devurandom for bringing
this problem to my attention. Also update documentation for
WZ_DECL_DEPRECATED, which had bitrotted.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1149 4a71c877-e1ca-e34f-864e-861f7616d084
unused code. Also add -Wno-unused-label to Makefile.raw builds, too, to
skip the warning generated by flex that we cannot fix.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1148 4a71c877-e1ca-e34f-864e-861f7616d084
debug builds. Hopefully this will not cause too much pain, but
rather increase code quality for the future.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1144 4a71c877-e1ca-e34f-864e-861f7616d084
This allows files to be decoded by OggVorbis directly through PHYSFS. Previously PHYSFS was used to read the entire file into memory and then to decode it from that memory buffer.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1138 4a71c877-e1ca-e34f-864e-861f7616d084
* remove function `static void sound_SaveTrackData` because the operation it performs doesn't justify a whole function (and its calling overhead)
* some cleanup in functions sound_ReadTrackFromBuffer and sound_ReadTrackFromFile
* commented operation of both functions
* moved the content of function sound_SaveTrackData (only one statement) to sound_ReadTrackFromBuffer
* modified sound_ReadTrackFromFile to not allocate double the size of the needed memory for a buffer
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1137 4a71c877-e1ca-e34f-864e-861f7616d084
functions of dubious usefulness. The log calls are still
present, with protos in ivi.h, in case someone wants to
build something better with them.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1128 4a71c877-e1ca-e34f-864e-861f7616d084
- when script runtime error occurs wz first outputs error information and then asserts, not vice versa
- printCallStack() script function will output script call stack to standard output
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1107 4a71c877-e1ca-e34f-864e-861f7616d084
-added script call stack trace output on script runtime error
-added STRUCTURE getTileStructure(INT tileX, INT tileY) script function to get a structure on a certain map position
-fixed two stackPopParams() calls with too many actual parameters
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1087 4a71c877-e1ca-e34f-864e-861f7616d084
- Add 2 new backdrops from Terminator (http://wz2100.net/forum/index.php?topic=109.0)
- Remove unused pal parameter from pie_PNGLoadMem()
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1075 4a71c877-e1ca-e34f-864e-861f7616d084
C macro M_PI (if available, or we will define it on our own in fractions.h).
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1033 4a71c877-e1ca-e34f-864e-861f7616d084
anyway prepare to add our own, new music tracks to the game.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@997 4a71c877-e1ca-e34f-864e-861f7616d084
The include changes might break other buildsystem, I'll fix that when I am back on Linux.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@983 4a71c877-e1ca-e34f-864e-861f7616d084
* remove -fno-gnu-keywords from GCC because it seems to be only for C++/ObjectC (Doh!), and the variant for C (being -fno-asm) additionally disables inlines which we definitely don't want disabled
* remove a large function which reserves memory without it ever being used *at*all* (from hci.*, mapdisplay.* and intelmap.c), also remove a function parameter from another function in mapdisplay.c, (it was this parameter that required the other functions to reserve memory)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@971 4a71c877-e1ca-e34f-864e-861f7616d084
* moved several #defines to the enums where they belong
* changed some datatypes on declaration
* prepended casts to malloc calls (using typeof() style)
* changed some (void*) casts to (void**) where required
* removed several #defines and there instances and then replaced them with their corresponding values from an enum
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@969 4a71c877-e1ca-e34f-864e-861f7616d084
-Fixed endless recursion in one of the lexical parser rules.
-Disabled log warnings when no meaningful information could be extracted form a player chat message.
-Small update to the lexical chat parser rules.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@966 4a71c877-e1ca-e34f-864e-861f7616d084
* remove file-global var `ALfloat listenerPos[3]` and replaced with function calls to alListener{Get}{n}{fi}{v}( AL_POSITION, ... )
* modified sound_SetObjectPosition() to be better human-readable (removed some unnecessary temporary vars)
* modified sound_SetPlayerOrientation() to a more verbose writing (+Doxygen comment)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@962 4a71c877-e1ca-e34f-864e-861f7616d084
- except for script and sound all libs can now be compiled using -Werror (means they generate no warnings) and without -fpermissive except for the files generated by flex
- netplay/netplay.c: changed variable size from unsigned to signed according to SDL spec ( http://www.libsdl.org/cgi/docwiki.cgi/SDLNet_5fTCP_5fSend )
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@958 4a71c877-e1ca-e34f-864e-861f7616d084
- removed these functions and all calls to it if REALLY_DEBUG_MALLOC isn't defined, because they don't do anything currently when REALLY_DEBUG_MALLOC isn't defined
- moved the declaration of memRecReport from memint.h to mem.h where it is, together with memMemoryReport, optionally declared depending on REALLY_DEBUG_MALLOC
* fixed yet another set of signed/unsigned errors (src/seqdisp.c & textdraw.c/h)
* removed a cast from char* to char* (that's what I call unnecessary; transforming something into something it already is)
* memory system:
- added some comments to clarify what certain pieces of code actually do
- removed some redundant code (e.g. why would you ever want to overwrite memory to zero just before passing it to free()?)
- made debug-version of free() return immediately when being passed a NULL pointer (i.e. after raising an assert)
- moved some variable declarations down to the first point of usage
- *IMPORTANT*: commented the definition of MEMORY_SET out (line 38 mem.c), this might break code that expects freshly malloc'ed memory to be pre-initialized, if you experience any problems due to commenting this out please say so on the mailinglists!
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@957 4a71c877-e1ca-e34f-864e-861f7616d084
* remove some unused things: variables, macros (MEMORYREPORT, MEMORYTREAP)
* fix some signing errors:
* change assignments of/comparisons with -1 to unsigned variables ((-1) directly, not through a preprocessor directive) to ~0 (left OpenAL-code alone)
* remove some casts to (SDWORD) in comparisons which actually cause signed/unsigned errors rather than fix them
* redefine some vars as unsigned
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@955 4a71c877-e1ca-e34f-864e-861f7616d084
Example:
#include "multiplay/skirmish/my_include.slo"
-Implemented C-like #define preprocessor directive. Nested macros allowed with up to depth of MAX_SCR_MACRO_DEPTH.
-Added a script function for a fast feature iteration (returns burning as well as non-burning oil resources)
-Replaced some custom Pumpkin routines with default FLEX routines
-Some cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@950 4a71c877-e1ca-e34f-864e-861f7616d084
- Removed unneeded check for psTarget == NULL from the establishTarget* functions, would have crashed before anyway
- Patch by Watermelon: Projectile Fix 7: 1.Fixed a crash with VTOL bomber with NULL weapon pIMD.
- Fix include of lib/framework/frame.h
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@942 4a71c877-e1ca-e34f-864e-861f7616d084
lib/ivis_common/pietypes.h : Add a depth field to bitmap so different bitdepths can be supported
Some minor cleanups (remainders from a failed abitrary-tiles attempt).
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@902 4a71c877-e1ca-e34f-864e-861f7616d084
-void pointer is now compatible with any other pointer type
-strings can now be directly compared using '==' and '!=' operators
-added a linguistic chat message parser with some generic messages predefined - to be used for Human<->AI and AI<->AI communication
Note: chat_lexer.l should be compiled using an additional -i switch for case-insensitive lexer
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@898 4a71c877-e1ca-e34f-864e-861f7616d084
-fixed MSVC compilation issues and wrong casts in initializations
Scripting Engine:
-lexer will now skip all macros in script files - allows to use macros in IDEs
-float data type can now be used in boolean expressions
-fixed visibility check in initEnumStruct() script function
-fixed playerLoaded() script function
-added some new script functions
-Object.weapon now also works with structures
-added decrement/increment operators
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@889 4a71c877-e1ca-e34f-864e-861f7616d084
034 - Reorganized src-warcam.c
036 - Cleanup includes and function declarations
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@884 4a71c877-e1ca-e34f-864e-861f7616d084
Changes several DBPx macros to debug() calls and:
I introduced 2 new categories: LOG_MOVEMENT and LOG_ATTACK
and what didn't fit in was set to LOG_NEVER.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@876 4a71c877-e1ca-e34f-864e-861f7616d084
- Fix a lot of char* related warnings (fixing of scripttabs.c needs to be finished like I started it)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@867 4a71c877-e1ca-e34f-864e-861f7616d084
- Move two global variables only used in PlayList_Read into that
function.
- Remove a useless comparison (unsigned int can never be < 0)
- Check for '\r' as well as '\n'. This should make playlists with DOS
line endings work.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@860 4a71c877-e1ca-e34f-864e-861f7616d084
-compiler and parts of interpreter now use union to store different data types
-got rid of a great deal of pointer->integer casts
-ASSERT() now outputs last event (or function) called by scripts
-implemented float data type support for the scripting engine - basic functionality at the moment
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@846 4a71c877-e1ca-e34f-864e-861f7616d084
- *WarzoneKeyNumeric definition changed to SDWORD
- Report wrong tracknumbers to LOG_SOUND and don't crash in sound_Play*DTrack
- Correct --help text
- Make console backlog key configurable
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@810 4a71c877-e1ca-e34f-864e-861f7616d084
- Remove lots of unused functions (Windows/DDraw related)
- Now store the used bitdepth in the config and thus make it configurable without having to modify the sourcecode
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@808 4a71c877-e1ca-e34f-864e-861f7616d084
-fixed line endings in macro.h
-applied Christian Ohm's "032 - Fixes for src-aiexperience.c-h" and "037 - g++ fix" patches
-made warzone report loading of all *.lev files
Scripting:
-fixed implicit bool/int to string convertion for the scripting language
-STRUCTURESTAT can now be checked for being 0 with NULLSTRUCTURESTAT
-minor scripting function fixes
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@794 4a71c877-e1ca-e34f-864e-861f7616d084
-It is now possible to win in a team in 'Locked Alliances' mode, also in this mode a player doesn't lose until all of his team members were defeated
-Game now shows a text message when player has won/lost the game (just a temporary solution to bug #7317)
-Added extra heap debug, should be there at least until we fix bug #6530, as PTRVALID() doesn't seem to detect corrupted DROID pointers on win
-Increased number of iterations A* is allowed to do per frame, which will hopefully speed up pathfinding
-Fixed multiplayer menu slider bug (bug #6529)
-Fixed players not forwarding enemy units visibility to their allies in 'TEAMPLAY' and 'Locked Alliances' modes
-Further scripting engine improvements
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@780 4a71c877-e1ca-e34f-864e-861f7616d084
- Because savegame filenames are converted to lowercase old savegames won't work anymore. You can simply fix that by renaming them to lowercase.
- All unix_path, unix_fopen and PHYSFSEXT_locateCorectCase functions and calls to them have been removed. (So you _will_ notice when a file is not found, at least on Unix systems.)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@776 4a71c877-e1ca-e34f-864e-861f7616d084
-Prevented NETbcast() from flooding the log in games with no network communication.
-orderDroidObj() scripting function will no longer cause ASSERT when DORDER_DROIDPERAIR is passed as parameter.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@773 4a71c877-e1ca-e34f-864e-861f7616d084
-Added ability to rename players through scripts
-New savegame version: 34 (as a result of the previous point)
-Fixed double messages in online games
-Minor cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@771 4a71c877-e1ca-e34f-864e-861f7616d084
The whole system has to be tuned further but this shows the direction.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@762 4a71c877-e1ca-e34f-864e-861f7616d084
-Added now frontend texture to frend.img
-Disabled "Allied players send vision to each other automatically (only once)" for "Allow alliances" alliance mode, since (x allied y) is not a transitive relation in this mode
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@744 4a71c877-e1ca-e34f-864e-861f7616d084
- Define WORD and BYTE types to SDL types
- Let SDL handle some more of the win32fixes
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@739 4a71c877-e1ca-e34f-864e-861f7616d084
Mainly explicit casts, some type changes, a few fixes.
We need to have a look if this line creates any problems:
lib/script/interp.c @@ -329,7 +329,7 @@
- if(!RetStackRemember(CurEvent, (ip + 2))) //Remember where to jump back later
+ if(!RetStackRemember(CurEvent, *(ip + 2))) //Remember where to jump back later
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@719 4a71c877-e1ca-e34f-864e-861f7616d084
Patch marks several read-only function parameters and datastructures as such by adding const.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@709 4a71c877-e1ca-e34f-864e-861f7616d084
Patch marks several function & datastructures without prototypes, which aren't used outside their declaring sourcefiles as static.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@708 4a71c877-e1ca-e34f-864e-861f7616d084
Comment by him:
Patch removes the playlist prototypes from the c-file cdaudio.c and add an extra header playlist.h for them.
This is then included in both cdaudio.c and playlist.c
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@707 4a71c877-e1ca-e34f-864e-861f7616d084
- Replace every occurence of VOID with void (and LPVOID with void*)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@703 4a71c877-e1ca-e34f-864e-861f7616d084
- Don't declare stdint declarations which are allready declared in SDL_config
- Change only use of stdint type to use SDL type instead
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@700 4a71c877-e1ca-e34f-864e-861f7616d084
This seems to also fix the rader flickering without shadows. (Or was this fixed in a previous commit?)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@681 4a71c877-e1ca-e34f-864e-861f7616d084
raise and lower tile height, and use 'k' to flip tiles. You must trash your
keymap again before you can use this.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@667 4a71c877-e1ca-e34f-864e-861f7616d084
Christian Ohm also reported that this fixes a bug in shadow rendering:
"And a shadow error (a shadow painted between the object casting it and
the floor where the shadow is) seems to be gone."
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@660 4a71c877-e1ca-e34f-864e-861f7616d084
Define DEBUG_SCRIPT to get some more Bison/Flex debug output
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@648 4a71c877-e1ca-e34f-864e-861f7616d084
Allied players send vision to each other automatically (only once)
Fixed caching problems for variables of type GROUP
Some other scripting engine updates and cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@647 4a71c877-e1ca-e34f-864e-861f7616d084
- Clean warnings and a wrapper function for widgets
- Add an assert to intDisplayMessageButton to catch crashes better
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@631 4a71c877-e1ca-e34f-864e-861f7616d084
netplay.c got a bunch of new LOG_NET debug()s whose effects on performance have not been tested
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@619 4a71c877-e1ca-e34f-864e-861f7616d084
- Make MinGW actually compile (it defines __MINGW32__ and not __MINGW__)
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@614 4a71c877-e1ca-e34f-864e-861f7616d084
- Simplify definition of ASSERT(). Now is the same for GCC and MSVC.
This may not work on versions older than MSVC 2005. If you experience this, please report it!
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@613 4a71c877-e1ca-e34f-864e-861f7616d084
frame.h: Sync MAX_PATH with windef.h and require IE5 for SHGetFolderPath
types.h: Use stdint.h on MinGW and use __int* types on MSVC
lib/netplay/: Remove empty files
main.c: Use "Documents and Settings\Username\My Documents\Warzone 2.0" (in local lang) as writedir on Windows
Fix double definitions in last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@612 4a71c877-e1ca-e34f-864e-861f7616d084