Skip to content

Commit

Permalink
Merge remote-tracking branch 'eduke32/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
Hendricks266 committed Aug 30, 2023
2 parents 3065a81 + a937498 commit 3abd94c
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 3 deletions.
2 changes: 2 additions & 0 deletions source/duke3d/src/events_defs.h
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,8 @@ enum GameEvent_t {
EVENT_POSTUPDATEANGLES,
EVENT_GETBONUSTILE,
EVENT_PREACTORDAMAGE,
EVENT_PREWEAPONSHOOT,
EVENT_POSTWEAPONSHOOT,
MAXEVENTS
};

Expand Down
2 changes: 2 additions & 0 deletions source/duke3d/src/gamedef.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1054,6 +1054,8 @@ const char *EventNames[MAXEVENTS] =
"EVENT_POSTUPDATEANGLES",
"EVENT_GETBONUSTILE",
"EVENT_PREACTORDAMAGE",
"EVENT_PREWEAPONSHOOT",
"EVENT_POSTWEAPONSHOOT",
};

uint8_t *bitptr; // pointer to bitmap of which bytecode positions contain pointers
Expand Down
20 changes: 17 additions & 3 deletions source/duke3d/src/player.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2067,7 +2067,11 @@ static void P_FireWeapon(int playerNum)

P_SetWeaponGamevars(playerNum, pPlayer);
// OSD_Printf("doing %d %d %d\n",PWEAPON(snum, p->curr_weapon, Shoots),p->curr_weapon,snum);
A_Shoot(pPlayer->i, PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
if (VM_OnEventWithReturn(EVENT_PREWEAPONSHOOT, pPlayer->i, playerNum, 0) == 0)
{
auto const retVal = A_Shoot(pPlayer->i, PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
VM_OnEventWithReturn(EVENT_POSTWEAPONSHOOT, pPlayer->i, playerNum, retVal);
}

for (bssize_t burstFire = PWEAPON(playerNum, pPlayer->curr_weapon, ShotsPerBurst) - 1; burstFire > 0; --burstFire)
{
Expand All @@ -2087,7 +2091,11 @@ static void P_FireWeapon(int playerNum)
break;
}

A_Shoot(pPlayer->i, PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
if (VM_OnEventWithReturn(EVENT_PREWEAPONSHOOT, pPlayer->i, playerNum, 0) == 0)
{
auto const retVal = A_Shoot(pPlayer->i, PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
VM_OnEventWithReturn(EVENT_POSTWEAPONSHOOT, pPlayer->i, playerNum, retVal);
}
}
}

Expand Down Expand Up @@ -4275,7 +4283,13 @@ static void P_ProcessWeapon(int playerNum)
}

if (actor[pPlayer->i].t_data[7] != 0)
A_Shoot(pPlayer->i,PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
{
if (VM_OnEventWithReturn(EVENT_PREWEAPONSHOOT, pPlayer->i, playerNum, 0) == 0)
{
auto const retVal = A_Shoot(pPlayer->i, PWEAPON(playerNum, pPlayer->curr_weapon, Shoots));
VM_OnEventWithReturn(EVENT_POSTWEAPONSHOOT, pPlayer->i, playerNum, retVal);
}
}
}
}

Expand Down
4 changes: 4 additions & 0 deletions source/kenbuild/src/game.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@

#include "renderlayer.h"

#ifdef _WIN32
# include "winbits.h"
#endif

#include "common_game.h"

const char *AppProperName = APPNAME;
Expand Down

0 comments on commit 3abd94c

Please sign in to comment.