summaryrefslogtreecommitdiff
path: root/src/hexen/p_enemy.c
AgeCommit message (Collapse)Author
2015-05-08warnings: fix "iteration XY invokes undefined behavior" warningsFabian Greffrath
These were caused by loops which caused overflow of variables of type angle_t (= unsigned) by multiplication with iterators of typed int in angle calculations. Changing the type of the iterator variables to "unsigned int" prevents the undefined behavior.
2015-03-30Turn maxplayers into a global variableFabian Greffrath
... and decrease its value from MAXPLAYERS (i.e. 8) to 4 if (gamemode == shareware). It seems that it was hard-coded to this value until some time between the releases of the Demo and the Full version. Arrays are still declared with their full width of 8, though, they are just not iterated over the whole range anymore. This fixes playback of the IWAD demos.
2014-11-27hexen: audit calls to P_StartACS().Simon Howard
Scripts can have a maximum of three arguments when started (see ACS_Execute / #80 linedef special type). This means that the array of arguments passed must be at least three elements in length. When loading scripts, check the argument count never exceeds 3, and print a warning message if it does. Don't pass pointers to structure members implicitly treating them as elements of an array (as this relies on compiler-dependent behavior as to how structure members are laid out). Instead, copy values into a temporary array to make the intended behavior explicit. This fixes #477. Thanks to Quasar for reporting it.
2014-11-27hexen: Store minotaur start time as little endian.Simon Howard
The minotaur uses the first four bytes of the mobj_t args[] array to store its spawn time; after a certain amount of time has passed the minotaur self-destructs. But the level time was being copied from the leveltime variable without any endian conversion taking place. For compatibility with Vanilla Hexen savegames we need to store the start time in little endian format. This fixes the first issue noted in #477 (thanks Quasar).
2014-05-05Clean up file headers.Simon Howard
This change rewrites and simplifies the copyright headers at the top of all source files: * Remove "Emacs style mode select" line; this line was included in the headers for the originally released source files and appears to be to set the file type for old versions of Emacs. I'm not sure entirely why it was required but I don't think it is any more. * Remove "You should have received a copy of..." text from copyright header. This refers to the old 59 Temple Place address where the FSF headquarters used to be located and is no longer correct. Rather than change to the new address, just remove the paragraph as it is superfluous anyway. This fixes #311. * Remove ---- separator lines so that the file headers are barer and more simplified.
2014-03-24Fix various Clang compiler warnings.Simon Howard
2012-12-24Fix compiler warnings by removing variables that are set but not used.Simon Howard
Subversion-branch: /branches/v2-branch Subversion-revision: 2555
2011-10-23Fix compiler warnings (thanks Edward-San).Simon Howard
Subversion-branch: /branches/v2-branch Subversion-revision: 2459
2011-10-19Fix lockups in Hexen and Strife when playing with more than fourSimon Howard
players. Subversion-branch: /branches/v2-branch Subversion-revision: 2444
2011-09-25Fix special1/special2 values in Hexen code so that they can properlySimon Howard
hold pointer values. Subversion-branch: /branches/v2-branch Subversion-revision: 2407
2008-11-02Fix up raven-branch copyright notices.Simon Howard
Subversion-branch: /branches/raven-branch Subversion-revision: 1375
2008-10-30Factor out Heretic and Hexen versions of m_misc.c. Make -file forSimon Howard
Heretic and Hexen use WAD path lookup. Subversion-branch: /branches/raven-branch Subversion-revision: 1368
2008-10-23Fix Heretic/Hexen demo desyncs.Simon Howard
Subversion-branch: /branches/raven-branch Subversion-revision: 1360
2008-10-02Split out high-level sound code from hexen/i_ibm.c and refactor to useSimon Howard
common interface. Subversion-branch: /branches/raven-branch Subversion-revision: 1324
2008-10-01Use common versions of ticcmd_t and event_t for Hexen code. Remove oldSimon Howard
i_video definitions and use common i_video.c interface. Subversion-branch: /branches/raven-branch Subversion-revision: 1312
2008-10-01Merge Hexen fixed_t and angle definitions to common code, plus byteSimon Howard
swapping macros, bounding box checking, read/write file, screenshot and command line argument code. Update Heretic code to use ANG1_X rather than the new (correct) ANG1 definition. Subversion-branch: /branches/raven-branch Subversion-revision: 1311
2008-09-16Clean up some warnings in the Hexen code.Simon Howard
Subversion-branch: /branches/raven-branch Subversion-revision: 1232
2008-09-05Reformat (beautify) Raven sources and add GPL headers.Simon Howard
Subversion-branch: /branches/raven-branch Subversion-revision: 1197
2008-09-04Add GPLed Heretic/Hexen source.Simon Howard
Subversion-branch: /branches/raven-branch Subversion-revision: 1195