mirror of
https://github.com/ZDoom/gzdoom-last-svn.git
synced 2025-06-03 02:30:53 +00:00
Update to ZDoom r1161:
- Ported asm_x86_64/tmap3.nas to AT&T syntax so it can be compiled with gas. After finding out that gas does have directives to describe the .eh_frame metadata, I figured that would be significantly easier and quicker than trying to locate all the scattered docs needed to construct it by hand. Unfortunately, this now means I have to maintain two versions of exactly the same code. :( - Removed 'eval' modifier from DECORATE. All int, float and bool parameters are 'eval' now by default. - Did a thorough check of all DECORATE conversions and fixed the errors I found. - Macro-fied all access to action functions. - Changed action function definition so that they have to be defined with a DEFINE_ACTION_FUNCTION macro. This should make it easier to improve the whole system. git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@152 b0f79afe-0144-0410-b225-9a4edf0717df
This commit is contained in:
parent
cac80858f4
commit
6ef8145afc
135 changed files with 3280 additions and 2814 deletions
|
@ -1177,7 +1177,7 @@ void APlayerPawn::TweakSpeeds (int &forward, int &side)
|
|||
//
|
||||
//===========================================================================
|
||||
|
||||
void A_PlayerScream (AActor *self)
|
||||
DEFINE_ACTION_FUNCTION(AActor, A_PlayerScream)
|
||||
{
|
||||
int sound = 0;
|
||||
int chan = CHAN_VOICE;
|
||||
|
@ -1243,7 +1243,7 @@ void A_PlayerScream (AActor *self)
|
|||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void A_SkullPop (AActor *actor)
|
||||
DEFINE_ACTION_FUNCTION(AActor, A_SkullPop)
|
||||
{
|
||||
APlayerPawn *mo;
|
||||
player_t *player;
|
||||
|
@ -1259,23 +1259,23 @@ void A_SkullPop (AActor *actor)
|
|||
if (spawntype == NULL) return;
|
||||
}
|
||||
|
||||
actor->flags &= ~MF_SOLID;
|
||||
mo = (APlayerPawn *)Spawn (spawntype, actor->x, actor->y, actor->z + 48*FRACUNIT, NO_REPLACE);
|
||||
//mo->target = actor;
|
||||
self->flags &= ~MF_SOLID;
|
||||
mo = (APlayerPawn *)Spawn (spawntype, self->x, self->y, self->z + 48*FRACUNIT, NO_REPLACE);
|
||||
//mo->target = self;
|
||||
mo->momx = pr_skullpop.Random2() << 9;
|
||||
mo->momy = pr_skullpop.Random2() << 9;
|
||||
mo->momz = 2*FRACUNIT + (pr_skullpop() << 6);
|
||||
// Attach player mobj to bloody skull
|
||||
player = actor->player;
|
||||
actor->player = NULL;
|
||||
mo->ObtainInventory (actor);
|
||||
player = self->player;
|
||||
self->player = NULL;
|
||||
mo->ObtainInventory (self);
|
||||
mo->player = player;
|
||||
mo->health = actor->health;
|
||||
mo->angle = actor->angle;
|
||||
mo->health = self->health;
|
||||
mo->angle = self->angle;
|
||||
if (player != NULL)
|
||||
{
|
||||
player->mo = mo;
|
||||
if (player->camera == actor)
|
||||
if (player->camera == self)
|
||||
{
|
||||
player->camera = mo;
|
||||
}
|
||||
|
@ -1289,11 +1289,11 @@ void A_SkullPop (AActor *actor)
|
|||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
void A_CheckPlayerDone (AActor *actor)
|
||||
DEFINE_ACTION_FUNCTION(AActor, A_CheckPlayerDone)
|
||||
{
|
||||
if (actor->player == NULL)
|
||||
if (self->player == NULL)
|
||||
{
|
||||
actor->Destroy ();
|
||||
self->Destroy ();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue