Commit graph

110 commits

Author SHA1 Message Date
Jaime Moreira
8d203ad0f2 Added missing include for USHRT_MAX 2023-09-15 12:10:00 -03:00
Yamagi
5f60bc3cb9
Merge pull request #37 from protocultor/general_update
General update to reach Yamagi features
2023-09-14 21:17:16 +02:00
Jaime Moreira
0fedfa14af Better validation for g_swap_speed value
Port of yquake2's #1049
2023-08-27 00:12:16 -04:00
Yamagi
2f78575086
Merge pull request #36 from BjossiAlfreds/tdam-dir
T_Damage no longer modifies dir parameter
2023-07-16 09:50:05 +02:00
BjossiAlfreds
30b91965e2 T_Damage no longer modifies dir parameter 2023-07-07 23:49:27 +00:00
Jaime Moreira
1e7596aeef Implemented Yamagi's commands to switch weapons
'cycleweap' defines a custom group of weapons. Press the bound key
repeteadly to to skip weapons inside this group.
'prefweap' defines a "panic button" where the first weapon found will be
used, no cycling.
2023-07-05 16:24:39 -04:00
Jaime Moreira
82f72cca77 Added Yamagi cheat cvars
"g_machinegun_norecoil" and "g_swap_speed"
2023-07-05 16:18:13 -04:00
Jaime Moreira
e3743c5b2c Added support for ANIM_REVERSE
Allows to define animations that go in the opposite direction of the
usual flow.
Added a couple of animations from Q2 3.21 that use ANIM_REVERSE.
Make the "laser trip bomb" to use Weapon_Generic instead of the "copy &
paste" version it used.
Modified the original Weapon_Generic function to get the proper ammo
quantity the weapon uses; useful for IT_AMMO weapons.
2023-07-05 15:50:12 -04:00
Yamagi
50f18732f6
Merge pull request #35 from BjossiAlfreds/makronjmp
Fixes for makron jump sequence
2023-06-17 16:35:47 +02:00
BjossiAlfreds
cf01efd347 Fixes for makron jump sequence 2023-06-07 13:38:22 +00:00
Yamagi
81f809bea3
Merge pull request #34 from BjossiAlfreds/makrondeath
Fixed ungibbable makron parts
2023-05-13 15:22:28 +02:00
BjossiAlfreds
d1e26350b4 Fixed ungibbable makron parts 2023-05-10 17:32:37 +00:00
Yamagi
d4b117d946 Mark all required CFLAGS and LDFLAGS definition as override.
This fixes the build with the current Windows build environment.

Fixes #31.
2023-05-08 21:45:38 +02:00
Yamagi
bd7cc48abb
Merge pull request #33 from BjossiAlfreds/intersight
Fixed monsters seeing players during intermissions
2023-05-08 18:09:09 +02:00
Yamagi
d4698d39dc
Merge pull request #32 from BjossiAlfreds/gladrange
Fixed stand-ground gladiators not attacking at certain range
2023-05-08 18:07:59 +02:00
BjossiAlfreds
544c0e383a Fixed monsters seeing players during intermissions 2023-04-26 01:40:13 +00:00
BjossiAlfreds
d379a25b8c Fixed stand-ground gladiators not attacking at certain range 2023-04-23 18:47:45 +00:00
Yamagi
cbc0fa522d
Merge pull request #30 from Dremor8484/Dremor8484-zaero-doublebarrelshotgun-aimfix
Update weapon.c
2022-12-03 17:15:16 +01:00
Dremor8484
4733f22e6f
Update weapon.c
the aimfix was working only on half of the attack, since the supershotgun shoots 2 times (half bullets left, half bullets right)

to carefully test it i tried to comment out 1 of the 2 shots while also keep yaw change to 0
in 1 case the bullets hit around the crossair, in the other case the bullets were not centered around the crossair.

i added the same fix to the shot that did not have it, and it worked.

i tested it out with yaw-5 and yaw+5 with both shots shooting at the same time and the bullets appeared to gather into 2 distinct clusters one left side of crossair, one right side of crossair like 2 eyes on the wall
2022-12-03 15:58:53 +01:00
Dremor8484
588ebb0ea8
Update weapon.c
zaero-doublebarrelshotgun-aimfix
2022-06-10 19:23:47 +02:00
Yamagi
d52ee31d93 Normalize arm64 to aarch64.
This ensures that we call ARM64 `aarch64` on all platform, which aren't
MacOS or Windows. And it fixes the bug, that `arm64` was normalized to
`arm`, making incompatible savegames between 32 bit and 64 bit ARM
loadable. Leading to crashes.
2022-05-20 12:58:46 +02:00
Yamagi
a91b12a4af
Merge pull request #28 from devnexen/build_macos_arm_fix
Forcing proper native arch build on darwin mainly due to arm64.
2022-05-20 12:49:33 +02:00
David CARLIER
8e5d49e8f4 Forcing proper native arch build on darwin mainly due to arm64. 2022-05-14 16:25:51 +01:00
Yamagi
9757d6fffc
Merge pull request #23 from VortexAcherontic/master
Multiple gameplay fixes
2021-07-23 09:10:14 +02:00
Vortex Acherontic
f28a561788 Fixed visor not working 2021-07-18 16:29:58 +02:00
Vortex Acherontic
fc2961df12 #1 Fixed viper bomb not killing monster_tank in zbase1 2021-07-18 15:41:33 +02:00
Vortex Acherontic
d4b76a5326 #2 Fixed insane marine not killed by explosion 2021-07-18 15:35:10 +02:00
Vortex Acherontic
023b41606e Removed unused import 2021-07-17 22:44:03 +02:00
Vortex Acherontic
24cdf52a89 Fixed TripBomb not inflicting damage 2021-07-17 22:42:25 +02:00
Yamagi
7dae34726f
Merge pull request #22 from BjossiAlfreds/player-sounds
Fix for some player sound bugs
2021-04-30 11:51:24 +02:00
BjossiAlfreds
e817bd38b9 Fix for some player sound bugs 2021-04-30 01:05:25 +00:00
Yamagi
df64f864b7
Merge pull request #21 from BjossiAlfreds/shark-bbox
Shark bbox fix and added inuse check after entity thinking
2021-04-27 08:59:13 +02:00
Yamagi
7d3ee75e3b
Merge pull request #20 from devnexen/upd_to_levelup_with_main_repo
little update to level up with the other repositories.
2021-04-27 08:58:54 +02:00
BjossiAlfreds
8f6c53e76f Shark bbox fix and added inuse check after entity thinking 2021-04-18 01:19:32 +00:00
David CARLIER
88a569d532 little update to level up with the other repositories. 2021-04-13 17:48:57 +01:00
Yamagi
09d5857687
Merge pull request #19 from devnexen/savegame_data_packing
game data packing representation of the headers
2021-04-08 10:42:04 +02:00
Yamagi
4b542f0e57
Merge pull request #18 from BjossiAlfreds/map-fixes
Fixed unspawnable monsters in three maps
2021-04-08 10:41:39 +02:00
David Carlier
4e97fe4c74 game data packing representation of the headers 2021-04-07 18:10:53 +01:00
BjossiAlfreds
f4faa12db3 Fixed unspawnable monsters in three maps 2021-04-07 12:33:06 +00:00
Yamagi
f3912680ac
Merge pull request #16 from 0lvin/master
Fix compiler warnings
2021-01-27 08:28:07 +01:00
Denis Pauk
c88b0c1a9a Fix function prototypes 2021-01-26 20:55:54 +02:00
Denis Pauk
fda7c543b8 Fix compiler warnings
src/g_items.c:2869:6: warning: variable ‘index’ set but not used [-Wunused-but-set-variable]
src/g_phys.c:535:10: warning: variable ‘mins’ set but not used [-Wunused-but-set-variable]
src/g_phys.c:535:16: warning: variable ‘maxs’ set but not used [-Wunused-but-set-variable]
src/g_spawn.c:575:6: warning: variable ‘oldmaxent’ set but not used [-Wunused-but-set-variable]
src/g_target.c:537:6: warning: variable ‘effect’ set but not used [-Wunused-but-set-variable]
src/monster/boss2/boss2.c:564:11: warning: variable ‘enemy_infront’ set but not used [-Wunused-but-set-variable]
src/monster/boss3/boss31.c:601:8: warning: variable ‘range’ set but not used [-Wunused-but-set-variable]
src/monster/boss3/boss31.c:650:11: warning: variable ‘enemy_infront’ set but not used [-Wunused-but-set-variable]
src/monster/boss3/boss32.c:678:8: warning: variable ‘range’ set but not used [-Wunused-but-set-variable]
src/monster/boss3/boss32.c:811:11: warning: variable ‘enemy_infront’ set but not used [-Wunused-but-set-variable]
src/monster/boss/boss.c:797:8: warning: variable ‘length’ set but not used [-Wunused-but-set-variable]
src/player/hud.c:167:7: warning: variable ‘picnum’ set but not used [-Wunused-but-set-variable]
2021-01-26 20:24:31 +02:00
Daniel Gibson
7275a593a6 Fix architecture detection on Windows in Makefile, bump SAVEGAMEVER
.. and use YQ2ARCH and YQ2OSTYPE instead of just ARCH and OSTYPE
for the defines, so it's consistent with the engine and xatrix+rogue.

$PROCESSOR_ARCHITECTURE seems to contain the architecture of the host,
but we need the architecture the current MinGW shell is targeting.
$MINGW_CHOST seems to be just that, and on my system it's either
i686-w64-mingw32 (mingw32.exe) or x86_64-w64-mingw32 (mingw64.exe)
(No idea what it looks like for Windows on ARM...)

As fixing this would otherwise break existing savegames, I bumped the
SAVEGAMEVER to "YQ2-4" and added a quirk for older savegameversions:
On Windows i386 savegames that contain "AMD64" instead of "i386" as
architecture are also accepted.
(For YQ2-1 this didn't seem necessary, apparently "i386" was hardcoded)
2021-01-14 03:53:47 +01:00
Yamagi
40fb2366d1
Merge pull request #14 from Soldy/master
error during compiling the code #13
2020-06-02 08:47:38 +02:00
Soldy
06b54182b7 error during compiling the code #13
Signed-off-by: Soldy <4786022+Soldy@users.noreply.github.com>
2020-05-30 18:22:15 +01:00
Yamagi
6276ba483f
Merge pull request #12 from mjr4077au/Client_AimFixWithCVAR
Implement accurate-aiming CVAR in zaero game code.
2020-04-21 12:48:45 +02:00
Yamagi
a047746337
Merge pull request #11 from NeonKnightOA/cppcheckfixes
Fixed many issues pointed out by cppcheck.
2020-04-21 12:48:32 +02:00
Mitchell Richters
82240af227 Implement accurate-aiming CVAR in zaero game code. 2020-04-21 08:02:29 +10:00
NeonKnightOA
3b53b244e6 Fixed: Function 'LerpAngle' argument order different: declaration 'a1, a2, frac' definition 'a2, a1, frac' 2020-02-04 12:48:33 -03:00
NeonKnightOA
3369a24f77 Fixed many issues pointed out by cppcheck.
Fixed the following issues found by cppcheck:

```
[src\g_func.c:576] (warning) Either the condition 'if(other)' is redundant or there is possible null pointer dereference: other. [nullPointerRedundantCheck]

[src\g_func.c:1500] (warning) Either the condition 'if(other)' is redundant or there is possible null pointer dereference: other. [nullPointerRedundantCheck]

[src\g_func.c:1931] (warning) Either the condition 'if(other)' is redundant or there is possible null pointer dereference: other. [nullPointerRedundantCheck]

[src\g_func.c:2623] (warning) Either the condition 'if(other)' is redundant or there is possible null pointer dereference: other. [nullPointerRedundantCheck]

[src\g_misc.c:156] (warning) Identical condition '!self', second condition is always false [identicalConditionAfterEarlyExit]

[src\g_misc.c:337] (warning) Identical condition '!self', second condition is always false [identicalConditionAfterEarlyExit]

[src\g_phys.c:1109] (warning) Either the condition '!ent' is redundant or there is possible null pointer dereference: ent. [nullPointerRedundantCheck]

[src\g_spawn.c:372] (style) Defensive programming: The variable 'i' is used as an array index before it is checked that is within limits. This can mean that the array might be accessed out of bounds. Reorder conditions such as '(a[i] && i < 10)' to '(i < 10 && a[i])'. That way the array will not be accessed if the index is out of limits. [arrayIndexThenCheck]

[src\g_spawn.c:309] (warning) Identical condition '!ent', second condition is always false [identicalConditionAfterEarlyExit]

[src\g_utils.c:30] (warning) Identical condition '!from', second condition is always false [identicalConditionAfterEarlyExit]

[src\g_utils.c:69] (warning) Identical condition '!from', second condition is always false [identicalConditionAfterEarlyExit]

[src\monster\boss\boss.c:420] (warning) Either the condition '!self' is redundant or there is possible null pointer dereference: self. [nullPointerRedundantCheck]

[src\monster\boss\boss.c:749] (warning) Either the condition '!self' is redundant or there is possible null pointer dereference: self. [nullPointerRedundantCheck]

[src\monster\boss\boss.c:1032] (warning) Either the condition '!ent' is redundant or there is possible null pointer dereference: ent. [nullPointerRedundantCheck]

[src\monster\misc\move.c:437] (style) Condition '!enemy' is always false [knownConditionTrueFalse]

[src\player\client.c:529] (style) Condition 'attacker' is always true [knownConditionTrueFalse]

[src\player\client.c:529] (style) Condition 'inflictor' is always true [knownConditionTrueFalse]

[src\player\view.c:893] (warning) Either the condition '!ent' is redundant or there is possible null pointer dereference: ent. [nullPointerRedundantCheck]

[src\shared\shared.c:1160] (warning) Opposite inner 'if' condition leads to a dead code block (outer condition is '*s' and inner condition is '!*s'). [oppositeInnerCondition]

[src\shared\shared.c:1225] (warning) Opposite inner 'if' condition leads to a dead code block (outer condition is '*s' and inner condition is '!*s'). [oppositeInnerCondition]

[src\shared\shared.c:1303] (warning) Either the condition '!value' is redundant or there is possible null pointer dereference: value. [nullPointerRedundantCheck]

[src\zaero\acannon.c:431] (warning) Either the condition '!self' is redundant or there is possible null pointer dereference: self. [nullPointerRedundantCheck]

[src\zaero\ai.c:107] (warning) Either the condition '!self' is redundant or there is possible null pointer dereference: self. [nullPointerRedundantCheck]
```

Only these two are missing, I haven't figured out what should I do:
```
[src\monster\misc\move.c:650] (style) Condition 'rand()&(7==1)' is always false [knownConditionTrueFalse]

[src\zaero\mtest.c:506] (error) Resource leak: wCfgFile [resourceLeak]
```
2020-02-04 12:27:41 -03:00