- doincrements

# Conflicts:
#	source/games/duke/src/zz_sbar.cpp
This commit is contained in:
Christoph Oelckers 2020-05-17 18:04:45 +02:00
parent cb14555ef6
commit dbbc5e0790
11 changed files with 576 additions and 48 deletions

View File

@ -4399,7 +4399,7 @@ void fakebubbaspawn(int g_i, int g_p)
//---------------------------------------------------------------------------
//
// special checks in fi.fall that only apply to RR.
// special checks in fall that only apply to RR.
//
//---------------------------------------------------------------------------

View File

@ -99,6 +99,9 @@ void shoot_d(int i, int atwith);
void shoot_r(int i, int atwith);
void selectweapon_d(int snum, int j);
void selectweapon_r(int snum, int j);
int doincrements_d(struct player_struct* p);
int doincrements_r(struct player_struct* p);
Dispatcher fi;
@ -144,6 +147,7 @@ void SetDispatcher()
incur_damage_d,
shoot_d,
selectweapon_d,
doincrements_d,
};
}
else
@ -184,7 +188,8 @@ void SetDispatcher()
incur_damage_r,
shoot_r,
selectweapon_r
selectweapon_r,
doincrements_r,
};
}
}

View File

@ -529,6 +529,7 @@ struct Dispatcher
void (*incur_damage)(struct player_struct* p);
void (*shoot)(int, int);
void (*selectweapon)(int snum, int j);
int (*doincrements)(struct player_struct* p);

View File

@ -166,7 +166,7 @@ G_EXTERN int32_t *labeltype;
G_EXTERN ClockTicks lockclock;
G_EXTERN ClockTicks ototalclock;
G_EXTERN int32_t g_wupass;
G_EXTERN int32_t wupass;
G_EXTERN int32_t g_chickenPlant;
#define chickenplant g_chickenPlant
G_EXTERN int32_t g_thunderOn;
@ -231,9 +231,11 @@ G_EXTERN int16_t fakebubba_spawn, mamaspawn_count, banjosound, g_bellTime, g_bel
#define BellTime g_bellTime
#define word_119BE0 g_bellSprite
G_EXTERN uint8_t g_spriteExtra[MAXSPRITES], g_sectorExtra[MAXSECTORS]; // move these back into the base structs!
G_EXTERN uint8_t enemysizecheat, ufospawnsminion, pistonsound, g_chickenWeaponTimer, RRRA_ExitedLevel, RRRA_EndEpisode, fogactive;
G_EXTERN uint8_t enemysizecheat, ufospawnsminion, pistonsound, chickenphase, RRRA_ExitedLevel, RRRA_EndEpisode, fogactive;
G_EXTERN int32_t g_cdTrack;
#define raat607 enemysizecheat // only as a reminder
#define raat605 chickenphase
#define at59d yeehaa_timer
// XXX: I think this pragma pack is meaningless here.
// MSDN (https://msdn.microsoft.com/en-us/library/2e70t5y1%28VS.80%29.aspx) says:

View File

@ -242,14 +242,14 @@ typedef struct player_struct {
int16_t recoil;
int32_t stairs;
int32_t hbomb_offset;
int16_t hbomb_time;
int32_t detonate_count;
int16_t detonate_time;
uint8_t shotgun_state[2];
uint8_t make_noise;
int32_t noise_x, noise_y, noise_radius;
uint8_t keys[5];
int16_t yehaa_timer;
int16_t drink_amt, eat, drink_ang, eat_ang;
int16_t drink_amt, eat, drunkang, eatang;
int32_t drink_timer, eat_timer;
int16_t MamaEnd;
int16_t MotoSpeed, tilt_status, moto_drink;
@ -282,7 +282,10 @@ typedef struct player_struct {
#define shield_amount inv_amount[GET_SHIELD]
#define raat609 MamaEnd
#define raat5dd sea_sick_stat
#define at57e detonate_offset
#define at57c detonate_time
#define at58e drink_timer
#define at592 eat_timer
// KEEPINSYNC lunatic/_defs_game.lua
typedef struct

View File

@ -38,6 +38,7 @@ source as it is released.
#include "gamevar.h"
#include "player.h"
#include "names.h"
#include "macros.h"
BEGIN_DUKE_NS
@ -1307,4 +1308,197 @@ void selectweapon_d(int snum, int j) // playernum, weaponnum
}
}
//---------------------------------------------------------------------------
//
//
//
//---------------------------------------------------------------------------
int doincrements_d(struct player_struct* p)
{
int snum;
snum = sprite[p->i].yvel;
// j = sync[snum].avel;
// p->weapon_ang = -(j/5);
p->player_par++;
if (p->invdisptime > 0)
p->invdisptime--;
if (p->tipincs > 0) p->tipincs--;
if (p->last_pissed_time > 0)
{
p->last_pissed_time--;
if (p->last_pissed_time == (26 * 219))
{
spritesound(FLUSH_TOILET, p->i);
if (snum == screenpeek || ud.coop == 1)
spritesound(DUKE_PISSRELIEF, p->i);
}
if (p->last_pissed_time == (26 * 218))
{
p->holster_weapon = 0;
p->weapon_pos = 10;
}
}
if (p->crack_time > 0)
{
p->crack_time--;
if (p->crack_time == 0)
{
p->knuckle_incs = 1;
p->crack_time = 777;
}
}
if (p->steroids_amount > 0 && p->steroids_amount < 400)
{
p->steroids_amount--;
if (p->steroids_amount == 0)
checkavailinven(p);
if (!(p->steroids_amount & 7))
if (snum == screenpeek || ud.coop == 1)
spritesound(DUKE_HARTBEAT, p->i);
}
if (p->heat_on && p->heat_amount > 0)
{
p->heat_amount--;
if (p->heat_amount == 0)
{
p->heat_on = 0;
checkavailinven(p);
spritesound(NITEVISION_ONOFF, p->i);
setpal(p);
}
}
if (p->holoduke_on >= 0)
{
p->holoduke_amount--;
if (p->holoduke_amount <= 0)
{
spritesound(TELEPORTER, p->i);
p->holoduke_on = -1;
checkavailinven(p);
}
}
if (p->jetpack_on && p->jetpack_amount > 0)
{
p->jetpack_amount--;
if (p->jetpack_amount <= 0)
{
p->jetpack_on = 0;
checkavailinven(p);
spritesound(DUKE_JETPACK_OFF, p->i);
stopsound(DUKE_JETPACK_IDLE);
stopsound(DUKE_JETPACK_ON);
}
}
if (p->quick_kick > 0 && sprite[p->i].pal != 1)
{
p->quick_kick--;
if (p->quick_kick == 8)
fi.shoot(p->i, KNEE);
}
if (p->access_incs && sprite[p->i].pal != 1)
{
p->access_incs++;
if (sprite[p->i].extra <= 0)
p->access_incs = 12;
if (p->access_incs == 12)
{
if (p->access_spritenum >= 0)
{
fi.checkhitswitch(snum, p->access_spritenum, 1);
switch (sprite[p->access_spritenum].pal)
{
case 0:p->got_access &= (0xffff - 0x1); break;
case 21:p->got_access &= (0xffff - 0x2); break;
case 23:p->got_access &= (0xffff - 0x4); break;
}
p->access_spritenum = -1;
}
else
{
fi.checkhitswitch(snum, p->access_wallnum, 0);
switch (wall[p->access_wallnum].pal)
{
case 0:p->got_access &= (0xffff - 0x1); break;
case 21:p->got_access &= (0xffff - 0x2); break;
case 23:p->got_access &= (0xffff - 0x4); break;
}
}
}
if (p->access_incs > 20)
{
p->access_incs = 0;
p->weapon_pos = 10;
p->kickback_pic = 0;
}
}
if (p->scuba_on == 0 && sector[p->cursectnum].lotag == 2)
{
if (p->scuba_amount > 0)
{
p->scuba_on = 1;
p->inven_icon = 6;
FTA(76, p);
}
else
{
if (p->airleft > 0)
p->airleft--;
else
{
p->extra_extra8 += 32;
if (p->last_extra < (max_player_health >> 1) && (p->last_extra & 3) == 0)
spritesound(DUKE_LONGTERM_PAIN, p->i);
}
}
}
else if (p->scuba_amount > 0 && p->scuba_on)
{
p->scuba_amount--;
if (p->scuba_amount == 0)
{
p->scuba_on = 0;
checkavailinven(p);
}
}
if (p->knuckle_incs)
{
p->knuckle_incs++;
if (p->knuckle_incs == 10 && !isWW2GI())
{
if (totalclock > 1024)
if (snum == screenpeek || ud.coop == 1)
{
if (rand() & 1)
spritesound(DUKE_CRACK, p->i);
else spritesound(DUKE_CRACK2, p->i);
}
spritesound(DUKE_CRACK_FIRST, p->i);
}
else if (p->knuckle_incs == 22 || PlayerInput(snum, SK_FIRE))
p->knuckle_incs = 0;
return 1;
}
return 0;
}
END_DUKE_NS

View File

@ -1141,4 +1141,327 @@ void selectweapon_r(int snum, int j)
}
}
//---------------------------------------------------------------------------
//
//
//
//---------------------------------------------------------------------------
int doincrements_r(struct player_struct* p)
{
int snum;
if (isRRRA())
{
if (WindTime > 0)
WindTime--;
else if ((krand() & 127) == 8)
{
WindTime = 120 + ((krand() & 63) << 2);
WindDir = krand() & 2047;
}
if (BellTime > 0)
{
BellTime--;
if (BellTime == 0)
sprite[word_119BE0].picnum++;
}
if (chickenphase > 0)
chickenphase--;
if (p->SeaSick)
{
p->SeaSick--;
if (p->SeaSick == 0)
p->sea_sick_stat = 0;
}
}
snum = sprite[p->i].yvel;
// j = sync[snum].avel;
// p->weapon_ang = -(j/5);
p->player_par++;
if (p->yehaa_timer)
p->yehaa_timer--;
if (p->detonate_count > 0)
{
p->detonate_count++;
p->detonate_time--;
}
p->drink_timer--;
if (p->drink_timer <= 0)
{
p->drink_timer = 1024;
if (p->drink_amt)
{
p->drink_amt--;
}
}
p->eat_timer--;
if (p->eat_timer <= 0)
{
p->eat_timer = 1024;
if (p->eat)
p->eat--;
}
if (p->drink_amt >= 100)
{
if (!A_CheckSoundPlaying(p->i, 420))
spritesound(420, p->i);
p->drink_amt -= 9;
p->eat >>= 1;
}
p->eatang = (1647 + p->eat * 8) & 2047;
if (p->eat >= 100)
p->eat = 100;
if (p->eat >= 31 && krand() < p->eat)
{
switch (krand() & 3)
{
case 0:
spritesound(404, p->i);
break;
case 1:
spritesound(422, p->i);
break;
case 2:
spritesound(423, p->i);
break;
case 3:
spritesound(424, p->i);
break;
}
if (numplayers < 2)
{
p->noise_radius = 16384;
madenoise(screenpeek);
p->posxv += sintable[(p->getang() + 512) & 2047] << 4;
p->posyv += sintable[p->getang() & 2047] << 4;
}
p->eat -= 4;
if (p->eat < 0)
p->eat = 0;
}
if (p->invdisptime > 0)
p->invdisptime--;
if (p->tipincs > 0) p->tipincs--;
if (p->last_pissed_time > 0)
{
p->last_pissed_time--;
if (p->drink_amt > 66 && (p->last_pissed_time % 26) == 0)
p->drink_amt--;
if (ud.lockout == 0)
{
if (p->last_pissed_time == 5662)
spritesound(434, p->i);
else if (p->last_pissed_time == 5567)
spritesound(434, p->i);
else if (p->last_pissed_time == 5472)
spritesound(433, p->i);
else if (p->last_pissed_time == 5072)
spritesound(435, p->i);
else if (p->last_pissed_time == 5014)
spritesound(434, p->i);
else if (p->last_pissed_time == 4919)
spritesound(433, p->i);
}
if (p->last_pissed_time == 5668)
{
p->holster_weapon = 0;
p->weapon_pos = 10;
}
}
if (p->crack_time > 0)
{
p->crack_time--;
if (p->crack_time == 0)
{
p->knuckle_incs = 1;
p->crack_time = 777;
}
}
if (p->steroids_amount > 0 && p->steroids_amount < 400)
{
p->steroids_amount--;
if (p->steroids_amount == 0)
{
checkavailinven(p);
p->eat = p->drink_amt = 0;
p->eatang = p->drunkang = 1647;
}
if (!(p->steroids_amount & 14))
if (snum == screenpeek || ud.coop == 1)
spritesound(DUKE_TAKEPILLS, p->i);
}
if (p->access_incs && sprite[p->i].pal != 1)
{
p->access_incs++;
if (sprite[p->i].extra <= 0)
p->access_incs = 12;
if (p->access_incs == 12)
{
if (p->access_spritenum >= 0)
{
fi.checkhitswitch(snum, p->access_spritenum, 1);
switch (sprite[p->access_spritenum].pal)
{
case 0:p->keys[1] = 1; break;
case 21:p->keys[2] = 1; break;
case 23:p->keys[3] = 1; break;
}
p->access_spritenum = -1;
}
else
{
fi.checkhitswitch(snum, p->access_wallnum, 0);
switch (wall[p->access_wallnum].pal)
{
case 0:p->keys[1] = 1; break;
case 21:p->keys[2] = 1; break;
case 23:p->keys[3] = 1; break;
}
}
}
if (p->access_incs > 20)
{
p->access_incs = 0;
p->weapon_pos = 10;
p->kickback_pic = 0;
}
}
if (p->scuba_on == 0 && sector[p->cursectnum].lotag == 2)
{
if (p->scuba_amount > 0)
{
p->scuba_on = 1;
p->inven_icon = 6;
FTA(76, p);
}
else
{
if (p->airleft > 0)
p->airleft--;
else
{
p->extra_extra8 += 32;
if (p->last_extra < (max_player_health >> 1) && (p->last_extra & 3) == 0)
spritesound(DUKE_LONGTERM_PAIN, p->i);
}
}
}
else if (p->scuba_amount > 0 && p->scuba_on)
{
p->scuba_amount--;
if (p->scuba_amount == 0)
{
p->scuba_on = 0;
checkavailinven(p);
}
}
if (p->knuckle_incs)
{
p->knuckle_incs++;
if (p->knuckle_incs == 10)
{
if (!wupass)
{
short snd = -1;
wupass = 1;
if (lastlevel)
{
snd = 391;
}
else switch (ud.volume_number)
{
case 0:
switch (ud.level_number)
{
case 0:
snd = isRRRA()? 63 : 391;
break;
case 1:
snd = 64;
break;
case 2:
snd = 77;
break;
case 3:
snd = 80;
break;
case 4:
snd = 102;
break;
case 5:
snd = 103;
break;
case 6:
snd = 104;
break;
}
break;
case 1:
switch (ud.level_number)
{
case 0:
snd = 105;
break;
case 1:
snd = 176;
break;
case 2:
snd = 177;
break;
case 3:
snd = 198;
break;
case 4:
snd = 230;
break;
case 5:
snd = 255;
break;
case 6:
snd = 283;
break;
}
break;
}
if (snd == -1)
snd = 391;
spritesound(snd, p->i);
}
else if (totalclock > 1024)
if (snum == screenpeek || ud.coop == 1)
{
if (rand() & 1)
spritesound(DUKE_CRACK, p->i);
else spritesound(DUKE_CRACK2, p->i);
}
}
else if (p->knuckle_incs == 22 || PlayerInput(snum, SK_FIRE))
p->knuckle_incs = 0;
return 1;
}
return 0;
}
END_DUKE_NS

View File

@ -938,7 +938,7 @@ void P_DisplayWeapon(void)
{
if (!g_netServer && ud.multimode < 2)
{
if (g_chickenWeaponTimer)
if (chickenphase)
{
G_DrawWeaponTileWithID(currentWeapon, weaponX + 210 - halfLookAng, weaponY + 222 - weaponYOffset,
TILE_RPGGUN2+7, weaponShade, weaponBits, weaponPal, 36700);
@ -948,7 +948,7 @@ void P_DisplayWeapon(void)
A_PlaySound(327, pPlayer->i);
G_DrawWeaponTileWithID(currentWeapon, weaponX + 210 - halfLookAng, weaponY + 222 - weaponYOffset,
TILE_RPGGUN2+7, weaponShade, weaponBits, weaponPal, 36700);
g_chickenWeaponTimer = 6;
chickenphase = 6;
}
else
{
@ -1177,7 +1177,7 @@ void P_DisplayWeapon(void)
if (*weaponFrame < 5)
{
G_DrawWeaponTileWithID(currentWeapon << 1, weaponX + 265 - halfLookAng, weaponY + 174 - weaponYOffset + pPlayer->hbomb_offset,
G_DrawWeaponTileWithID(currentWeapon << 1, weaponX + 265 - halfLookAng, weaponY + 174 - weaponYOffset + pPlayer->detonate_count,
TILE_RRTILE1752, 0, weaponBits, weaponPal, 36700);
}
G_DrawWeaponTileWithID(currentWeapon, weaponX + 290 - halfLookAng, weaponY + 238 - weaponYOffset,
@ -2723,8 +2723,8 @@ static int32_t P_DoCounters(int playerNum)
sprite[g_bellSprite].picnum++;
}
if (playerNum == 0 && g_chickenWeaponTimer > 0)
g_chickenWeaponTimer--;
if (playerNum == 0 && chickenphase > 0)
chickenphase--;
if (pPlayer->sea_sick)
{
@ -2740,10 +2740,10 @@ static int32_t P_DoCounters(int playerNum)
if (pPlayer->yehaa_timer)
pPlayer->yehaa_timer--;
if (pPlayer->hbomb_offset > 0)
if (pPlayer->detonate_count > 0)
{
pPlayer->hbomb_offset++;
pPlayer->hbomb_time--;
pPlayer->detonate_count++;
pPlayer->detonate_time--;
}
if (--pPlayer->drink_timer <= 0)
@ -2767,7 +2767,7 @@ static int32_t P_DoCounters(int playerNum)
pPlayer->drink_amt -= 9;
pPlayer->eat >>= 1;
}
pPlayer->eat_ang = (1647 + pPlayer->eat * 8) & 2047;
pPlayer->eatang = (1647 + pPlayer->eat * 8) & 2047;
if (pPlayer->eat >= 100)
pPlayer->eat = 100;
@ -2882,7 +2882,7 @@ static int32_t P_DoCounters(int playerNum)
if (RR)
{
pPlayer->eat = pPlayer->drink_amt = 0;
pPlayer->eat_ang = pPlayer->drink_ang = 1647;
pPlayer->eatang = pPlayer->drunkang = 1647;
}
}
@ -3011,10 +3011,10 @@ static int32_t P_DoCounters(int playerNum)
{
if (++pPlayer->knuckle_incs == 10)
{
if (RR && !g_wupass)
if (RR && !wupass)
{
int soundId = 391;
g_wupass = 1;
wupass = 1;
if (!g_lastLevel) switch (ud.volume_number)
{
case 0:
@ -3456,14 +3456,14 @@ static void P_ProcessWeapon(int playerNum)
if (RR)
{
if (pPlayer->hbomb_offset > 0)
if (pPlayer->detonate_count > 0)
{
if (ud.god)
{
pPlayer->hbomb_time = 45;
pPlayer->hbomb_offset = 0;
pPlayer->detonate_time = 45;
pPlayer->detonate_count = 0;
}
else if (pPlayer->hbomb_time <= 0 && (*weaponFrame) < 5)
else if (pPlayer->detonate_time <= 0 && (*weaponFrame) < 5)
{
S_PlaySound(PIPEBOMB_EXPLODE);
quickkill(pPlayer);
@ -3776,8 +3776,8 @@ static void P_ProcessWeapon(int playerNum)
pPlayer->curr_weapon = DYNAMITE_WEAPON;
pPlayer->last_weapon = -1;
pPlayer->weapon_pos = WEAPON_POS_RAISE;
pPlayer->hbomb_time = 45;
pPlayer->hbomb_offset = 1;
pPlayer->detonate_time = 45;
pPlayer->detonate_count = 1;
S_PlaySound(402);
}
break;
@ -3785,7 +3785,7 @@ static void P_ProcessWeapon(int playerNum)
case HANDREMOTE_WEAPON__STATIC:
(*weaponFrame)++;
if (pPlayer->hbomb_time < 0)
if (pPlayer->detonate_time < 0)
pPlayer->hbomb_on = 0;
if ((*weaponFrame) == 39)
@ -3846,8 +3846,8 @@ static void P_ProcessWeapon(int playerNum)
(*weaponFrame) = 0;
pPlayer->curr_weapon = HANDBOMB_WEAPON;
pPlayer->last_weapon = -1;
pPlayer->hbomb_offset = 0;
pPlayer->hbomb_time = 45;
pPlayer->detonate_count = 0;
pPlayer->detonate_time = 45;
if (pPlayer->ammo_amount[HANDBOMB_WEAPON] > 0)
{
P_AddWeapon(pPlayer, HANDBOMB_WEAPON);
@ -6054,7 +6054,7 @@ check_enemy_sprite:
if (pPlayer->newowner >= 0)
{
P_UpdatePosWhenViewingCam(pPlayer);
P_DoCounters(playerNum);
fi.doincrements(&ps[playerNum]);
if ((WW2GI ? PWEAPON(playerNum, pPlayer->curr_weapon, WorksLike) : pPlayer->curr_weapon) == HANDREMOTE_WEAPON)
P_ProcessWeapon(playerNum);
@ -7145,7 +7145,7 @@ HORIZONLY:;
>> 2);
}
if (P_DoCounters(playerNum))
if (fi.doincrements(&ps[playerNum]))
return;
switch (pPlayer->weapon_pos)

View File

@ -950,18 +950,18 @@ void P_ResetStatus(int playerNum)
pPlayer->keys[4] = 0;
}
g_wupass = 0;
pPlayer->drink_ang = pPlayer->eat_ang = 1647;
wupass = 0;
pPlayer->drunkang = pPlayer->eatang = 1647;
pPlayer->drink_amt = pPlayer->eat = 0;
pPlayer->drink_timer = pPlayer->eat_timer = 4096;
pPlayer->shotgun_state[0] = pPlayer->shotgun_state[1] = 0;
pPlayer->hbomb_time = 0;
pPlayer->hbomb_offset = 0;
pPlayer->detonate_time = 0;
pPlayer->detonate_count = 0;
pPlayer->recoil = 0;
pPlayer->yehaa_timer = 0;
if (RRRA)
{
g_chickenWeaponTimer = 0;
chickenphase = 0;
if (pPlayer->OnMotorcycle)
{
pPlayer->OnMotorcycle = 0;
@ -1029,7 +1029,7 @@ void P_ResetWeapons(int playerNum)
pPlayer->ammo_amount[PISTOL_WEAPON] = min<int16_t>(max_ammo_amount[PISTOL_WEAPON], 48);
if (RRRA)
{
g_chickenWeaponTimer = 0;
chickenphase = 0;
pPlayer->gotweapon.Set(SLINGBLADE_WEAPON);
pPlayer->ammo_amount[KNEE_WEAPON] = 1;
pPlayer->ammo_amount[SLINGBLADE_WEAPON] = 1;
@ -1079,12 +1079,12 @@ void P_ResetInventory(int playerNum)
pPlayer->keys[4] = 0;
}
pPlayer->drink_ang = pPlayer->eat_ang = 1647;
pPlayer->drunkang = pPlayer->eatang = 1647;
pPlayer->drink_amt = pPlayer->eat = 0;
pPlayer->drink_timer = pPlayer->eat_timer = 4096;
pPlayer->shotgun_state[0] = pPlayer->shotgun_state[1] = 0;
pPlayer->hbomb_time = 0;
pPlayer->hbomb_offset = 0;
pPlayer->detonate_time = 0;
pPlayer->detonate_count = 0;
pPlayer->recoil = 0;
pPlayer->yehaa_timer = 0;
resetlanepics();
@ -1198,12 +1198,12 @@ static void resetprestat(int playerNum, int gameMode)
pPlayer->keys[4] = 0;
}
pPlayer->drink_ang = pPlayer->eat_ang = 1647;
pPlayer->drunkang = pPlayer->eatang = 1647;
pPlayer->drink_amt = pPlayer->eat = 0;
pPlayer->drink_timer = pPlayer->eat_timer = 4096;
pPlayer->shotgun_state[0] = pPlayer->shotgun_state[1] = 0;
pPlayer->hbomb_time = 0;
pPlayer->hbomb_offset = 0;
pPlayer->detonate_time = 0;
pPlayer->detonate_count = 0;
pPlayer->recoil = 0;
pPlayer->yehaa_timer = 0;
resetlanepics();

View File

@ -903,7 +903,7 @@ static const dataspec_t svgm_anmisc[] =
{ 0, &enemysizecheat, sizeof(enemysizecheat), 1 },
{ 0, &ufospawnsminion, sizeof(ufospawnsminion), 1 },
{ 0, &pistonsound, sizeof(pistonsound), 1 },
{ 0, &g_chickenWeaponTimer, sizeof(g_chickenWeaponTimer), 1 },
{ 0, &chickenphase, sizeof(chickenphase), 1 },
{ 0, &RRRA_ExitedLevel, sizeof(RRRA_ExitedLevel), 1 },
{ 0, &RRRA_EndEpisode, sizeof(RRRA_EndEpisode), 1 },
{ 0, &fogactive, sizeof(fogactive), 1 },

View File

@ -864,14 +864,14 @@ public:
SBar_DrawString(this, &miniFont, "AUTO", x + 34, top + 14, DI_TEXT_ALIGN_RIGHT, CR_UNTRANSLATED, 1, 0, 0, scale, scale);
}
p->drink_ang = ((p->drink_amt * 8) + 1647) & 2047;
p->drunkang = ((p->drink_amt * 8) + 1647) & 2047;
if (p->drink_amt >= 100)
{
p->drink_amt = 100;
p->drink_ang = 400;
p->drunkang = 400;
}
DrawGraphic(tileGetTexture(TILE_GUTMETER), 257, top + 24, DI_ITEM_BOTTOM, 1, -1, -1, scale, scale, 0xffffffff, 0 /*, p->drink_ang * 360. / 2048 */ );
DrawGraphic(tileGetTexture(TILE_GUTMETER), 293, top + 24, DI_ITEM_BOTTOM, 1, -1, -1, scale, scale, 0xffffffff, 0 /*, p->eat_ang * 360. / 2048 */);
DrawGraphic(tileGetTexture(TILE_GUTMETER), 257, top + 24, DI_ITEM_BOTTOM, 1, -1, -1, scale, scale, 0xffffffff, 0 /*, p->drunkang * 360. / 2048 */ );
DrawGraphic(tileGetTexture(TILE_GUTMETER), 293, top + 24, DI_ITEM_BOTTOM, 1, -1, -1, scale, scale, 0xffffffff, 0 /*, p->eatang * 360. / 2048 */);
if (p->drink_amt >= 0 && p->drink_amt <= 30)
{