Use macro get_local_player_energy for local player's energy
This commit is contained in:
parent
3ffd207e44
commit
ea5b7a08c1
|
@ -172,6 +172,7 @@ static_assert(sizeof(player_rw) == 142, "wrong size player_rw");
|
||||||
|
|
||||||
#define get_local_player() (Players[Player_num])
|
#define get_local_player() (Players[Player_num])
|
||||||
#define get_local_plrobj() (*vobjptr(get_local_player().objnum))
|
#define get_local_plrobj() (*vobjptr(get_local_player().objnum))
|
||||||
|
#define get_local_player_energy() (get_local_player().energy)
|
||||||
#define get_local_player_shields() (get_local_player().shields)
|
#define get_local_player_shields() (get_local_player().shields)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -139,14 +139,14 @@ void read_flying_controls(const vobjptr_t obj)
|
||||||
//charge up to full
|
//charge up to full
|
||||||
charge_up = min(FrameTime/8,f1_0 - Afterburner_charge); //recharge over 8 seconds
|
charge_up = min(FrameTime/8,f1_0 - Afterburner_charge); //recharge over 8 seconds
|
||||||
|
|
||||||
cur_energy = max(get_local_player().energy-i2f(10),0); //don't drop below 10
|
cur_energy = max(get_local_player_energy()-i2f(10),0); //don't drop below 10
|
||||||
|
|
||||||
//maybe limit charge up by energy
|
//maybe limit charge up by energy
|
||||||
charge_up = min(charge_up,cur_energy/10);
|
charge_up = min(charge_up,cur_energy/10);
|
||||||
|
|
||||||
Afterburner_charge += charge_up;
|
Afterburner_charge += charge_up;
|
||||||
|
|
||||||
get_local_player().energy -= charge_up * 100 / 10; //full charge uses 10% of energy
|
get_local_player_energy() -= charge_up * 100 / 10; //full charge uses 10% of energy
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -941,14 +941,13 @@ objptridx_t drop_powerup(int type, int id, int num, const vms_vector &init_vel,
|
||||||
#if defined(DXX_BUILD_DESCENT_II)
|
#if defined(DXX_BUILD_DESCENT_II)
|
||||||
static bool skip_create_egg_powerup(powerup_type_t powerup)
|
static bool skip_create_egg_powerup(powerup_type_t powerup)
|
||||||
{
|
{
|
||||||
fix player::*pcurrent;
|
fix current;
|
||||||
if (powerup == POW_SHIELD_BOOST)
|
if (powerup == POW_SHIELD_BOOST)
|
||||||
pcurrent = &player::shields;
|
current = get_local_player_shields();
|
||||||
else if (powerup == POW_ENERGY)
|
else if (powerup == POW_ENERGY)
|
||||||
pcurrent = &player::energy;
|
current = get_local_player_energy();
|
||||||
else
|
else
|
||||||
return false;
|
return false;
|
||||||
fix current = get_local_player().*pcurrent;
|
|
||||||
int limit;
|
int limit;
|
||||||
if (current >= i2f(150))
|
if (current >= i2f(150))
|
||||||
limit = 8192;
|
limit = 8192;
|
||||||
|
|
|
@ -797,7 +797,7 @@ int allowed_to_fire_flare(void)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
#if defined(DXX_BUILD_DESCENT_II)
|
#if defined(DXX_BUILD_DESCENT_II)
|
||||||
if (get_local_player().energy < Weapon_info[FLARE_ID].energy_usage)
|
if (get_local_player_energy() < Weapon_info[FLARE_ID].energy_usage)
|
||||||
#define FLARE_BIG_DELAY (F1_0*2)
|
#define FLARE_BIG_DELAY (F1_0*2)
|
||||||
Next_flare_fire_time = GameTime64 + FLARE_BIG_DELAY;
|
Next_flare_fire_time = GameTime64 + FLARE_BIG_DELAY;
|
||||||
else
|
else
|
||||||
|
@ -1327,8 +1327,8 @@ void GameProcessFrame(void)
|
||||||
|
|
||||||
if ((get_local_player().flags & PLAYER_FLAGS_HEADLIGHT) && (get_local_player().flags & PLAYER_FLAGS_HEADLIGHT_ON)) {
|
if ((get_local_player().flags & PLAYER_FLAGS_HEADLIGHT) && (get_local_player().flags & PLAYER_FLAGS_HEADLIGHT_ON)) {
|
||||||
static int turned_off=0;
|
static int turned_off=0;
|
||||||
get_local_player().energy -= (FrameTime*3/8);
|
get_local_player_energy() -= (FrameTime*3/8);
|
||||||
if (get_local_player().energy < i2f(10)) {
|
if (get_local_player_energy() < i2f(10)) {
|
||||||
if (!turned_off) {
|
if (!turned_off) {
|
||||||
get_local_player().flags &= ~PLAYER_FLAGS_HEADLIGHT_ON;
|
get_local_player().flags &= ~PLAYER_FLAGS_HEADLIGHT_ON;
|
||||||
turned_off = 1;
|
turned_off = 1;
|
||||||
|
@ -1339,9 +1339,9 @@ void GameProcessFrame(void)
|
||||||
else
|
else
|
||||||
turned_off = 0;
|
turned_off = 0;
|
||||||
|
|
||||||
if (get_local_player().energy <= 0)
|
if (get_local_player_energy() <= 0)
|
||||||
{
|
{
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
get_local_player().flags &= ~PLAYER_FLAGS_HEADLIGHT_ON;
|
get_local_player().flags &= ~PLAYER_FLAGS_HEADLIGHT_ON;
|
||||||
if (Game_mode & GM_MULTI)
|
if (Game_mode & GM_MULTI)
|
||||||
multi_send_flags(Player_num);
|
multi_send_flags(Player_num);
|
||||||
|
@ -1641,20 +1641,20 @@ void FireLaser()
|
||||||
Global_laser_firing_count = Controls.state.fire_primary?Weapon_info[Primary_weapon_to_weapon_info[Primary_weapon]].fire_count:0;
|
Global_laser_firing_count = Controls.state.fire_primary?Weapon_info[Primary_weapon_to_weapon_info[Primary_weapon]].fire_count:0;
|
||||||
|
|
||||||
if ((Primary_weapon == primary_weapon_index_t::FUSION_INDEX) && (Global_laser_firing_count)) {
|
if ((Primary_weapon == primary_weapon_index_t::FUSION_INDEX) && (Global_laser_firing_count)) {
|
||||||
if ((get_local_player().energy < F1_0*2) && (Auto_fire_fusion_cannon_time == 0)) {
|
if ((get_local_player_energy() < F1_0*2) && (Auto_fire_fusion_cannon_time == 0)) {
|
||||||
Global_laser_firing_count = 0;
|
Global_laser_firing_count = 0;
|
||||||
} else {
|
} else {
|
||||||
static fix64 Fusion_next_sound_time = 0;
|
static fix64 Fusion_next_sound_time = 0;
|
||||||
|
|
||||||
if (Fusion_charge == 0)
|
if (Fusion_charge == 0)
|
||||||
get_local_player().energy -= F1_0*2;
|
get_local_player_energy() -= F1_0*2;
|
||||||
|
|
||||||
Fusion_charge += FrameTime;
|
Fusion_charge += FrameTime;
|
||||||
get_local_player().energy -= FrameTime;
|
get_local_player_energy() -= FrameTime;
|
||||||
|
|
||||||
if (get_local_player().energy <= 0)
|
if (get_local_player_energy() <= 0)
|
||||||
{
|
{
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
Auto_fire_fusion_cannon_time = GameTime64 -1; // Fire now!
|
Auto_fire_fusion_cannon_time = GameTime64 -1; // Fire now!
|
||||||
} else
|
} else
|
||||||
Auto_fire_fusion_cannon_time = GameTime64 + FrameTime/2 + 1; // Fire the fusion cannon at this time in the future.
|
Auto_fire_fusion_cannon_time = GameTime64 + FrameTime/2 + 1; // Fire the fusion cannon at this time in the future.
|
||||||
|
|
|
@ -150,11 +150,11 @@ static void transfer_energy_to_shield()
|
||||||
fix e; //how much energy gets transfered
|
fix e; //how much energy gets transfered
|
||||||
static fix64 last_play_time=0;
|
static fix64 last_play_time=0;
|
||||||
|
|
||||||
e = min(min(FrameTime*CONVERTER_RATE, get_local_player().energy - INITIAL_ENERGY),(MAX_SHIELDS-get_local_player_shields()) * CONVERTER_SCALE);
|
e = min(min(FrameTime*CONVERTER_RATE, get_local_player_energy() - INITIAL_ENERGY),(MAX_SHIELDS-get_local_player_shields()) * CONVERTER_SCALE);
|
||||||
|
|
||||||
if (e <= 0) {
|
if (e <= 0) {
|
||||||
|
|
||||||
if (get_local_player().energy <= INITIAL_ENERGY) {
|
if (get_local_player_energy() <= INITIAL_ENERGY) {
|
||||||
HUD_init_message(HM_DEFAULT, "Need more than %i energy to enable transfer", f2i(INITIAL_ENERGY));
|
HUD_init_message(HM_DEFAULT, "Need more than %i energy to enable transfer", f2i(INITIAL_ENERGY));
|
||||||
}
|
}
|
||||||
else if (get_local_player_shields() >= MAX_SHIELDS) {
|
else if (get_local_player_shields() >= MAX_SHIELDS) {
|
||||||
|
@ -163,7 +163,7 @@ static void transfer_energy_to_shield()
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
get_local_player().energy -= e;
|
get_local_player_energy() -= e;
|
||||||
get_local_player_shields() += e/CONVERTER_SCALE;
|
get_local_player_shields() += e/CONVERTER_SCALE;
|
||||||
|
|
||||||
if (last_play_time > GameTime64)
|
if (last_play_time > GameTime64)
|
||||||
|
@ -1482,7 +1482,7 @@ static window_event_result FinalCheats()
|
||||||
if (Newdemo_state == ND_STATE_RECORDING)
|
if (Newdemo_state == ND_STATE_RECORDING)
|
||||||
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
||||||
|
|
||||||
get_local_player().energy = MAX_ENERGY;
|
get_local_player_energy() = MAX_ENERGY;
|
||||||
get_local_player().laser_level = MAX_LASER_LEVEL;
|
get_local_player().laser_level = MAX_LASER_LEVEL;
|
||||||
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
||||||
update_laser_weapon_info();
|
update_laser_weapon_info();
|
||||||
|
@ -1501,7 +1501,7 @@ static window_event_result FinalCheats()
|
||||||
if (Newdemo_state == ND_STATE_RECORDING)
|
if (Newdemo_state == ND_STATE_RECORDING)
|
||||||
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
||||||
|
|
||||||
get_local_player().energy = MAX_ENERGY;
|
get_local_player_energy() = MAX_ENERGY;
|
||||||
get_local_player().laser_level = MAX_LASER_LEVEL;
|
get_local_player().laser_level = MAX_LASER_LEVEL;
|
||||||
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
||||||
update_laser_weapon_info();
|
update_laser_weapon_info();
|
||||||
|
@ -1509,7 +1509,7 @@ static window_event_result FinalCheats()
|
||||||
#elif defined(DXX_BUILD_DESCENT_II)
|
#elif defined(DXX_BUILD_DESCENT_II)
|
||||||
if (gotcha == &game_cheats::lamer)
|
if (gotcha == &game_cheats::lamer)
|
||||||
{
|
{
|
||||||
get_local_player_shields()=get_local_player().energy=i2f(1);
|
get_local_player_shields()=get_local_player_energy()=i2f(1);
|
||||||
HUD_init_message_literal(HM_DEFAULT, "Take that...cheater!");
|
HUD_init_message_literal(HM_DEFAULT, "Take that...cheater!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1540,7 +1540,7 @@ static window_event_result FinalCheats()
|
||||||
if (Newdemo_state == ND_STATE_RECORDING)
|
if (Newdemo_state == ND_STATE_RECORDING)
|
||||||
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
||||||
|
|
||||||
get_local_player().energy = MAX_ENERGY;
|
get_local_player_energy() = MAX_ENERGY;
|
||||||
get_local_player().laser_level = MAX_SUPER_LASER_LEVEL;
|
get_local_player().laser_level = MAX_SUPER_LASER_LEVEL;
|
||||||
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
||||||
update_laser_weapon_info();
|
update_laser_weapon_info();
|
||||||
|
|
|
@ -290,8 +290,8 @@ void init_player_stats_game(ubyte pnum)
|
||||||
|
|
||||||
static void init_ammo_and_energy(void)
|
static void init_ammo_and_energy(void)
|
||||||
{
|
{
|
||||||
if (get_local_player().energy < INITIAL_ENERGY)
|
if (get_local_player_energy() < INITIAL_ENERGY)
|
||||||
get_local_player().energy = INITIAL_ENERGY;
|
get_local_player_energy() = INITIAL_ENERGY;
|
||||||
if (get_local_player_shields() < StartingShields)
|
if (get_local_player_shields() < StartingShields)
|
||||||
get_local_player_shields() = StartingShields;
|
get_local_player_shields() = StartingShields;
|
||||||
if (get_local_player().secondary_ammo[0] < 2 + NDL - Difficulty_level)
|
if (get_local_player().secondary_ammo[0] < 2 + NDL - Difficulty_level)
|
||||||
|
@ -373,6 +373,7 @@ void init_player_stats_level(const secret_restore secret_flag)
|
||||||
void init_player_stats_new_ship(ubyte pnum)
|
void init_player_stats_new_ship(ubyte pnum)
|
||||||
{
|
{
|
||||||
auto &plr = Players[pnum];
|
auto &plr = Players[pnum];
|
||||||
|
plr.energy = INITIAL_ENERGY;
|
||||||
plr.shields = StartingShields;
|
plr.shields = StartingShields;
|
||||||
const auto GrantedItems = (Game_mode & GM_MULTI) ? Netgame.SpawnGrantedItems : 0;
|
const auto GrantedItems = (Game_mode & GM_MULTI) ? Netgame.SpawnGrantedItems : 0;
|
||||||
const auto granted_primary_weapon_flags = map_granted_flags_to_primary_weapon_flags(GrantedItems);
|
const auto granted_primary_weapon_flags = map_granted_flags_to_primary_weapon_flags(GrantedItems);
|
||||||
|
@ -442,8 +443,6 @@ void init_player_stats_new_ship(ubyte pnum)
|
||||||
init_ai_for_ship();
|
init_ai_for_ship();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
Players[pnum].energy = INITIAL_ENERGY;
|
|
||||||
Players[pnum].laser_level = granted_laser_level;
|
Players[pnum].laser_level = granted_laser_level;
|
||||||
Players[pnum].killer_objnum = object_none;
|
Players[pnum].killer_objnum = object_none;
|
||||||
Players[pnum].hostages_on_board = 0;
|
Players[pnum].hostages_on_board = 0;
|
||||||
|
@ -861,10 +860,10 @@ void DoEndLevelScoreGlitz(int network)
|
||||||
hostage_points = get_local_player().hostages_on_board * 500 * (Difficulty_level+1);
|
hostage_points = get_local_player().hostages_on_board * 500 * (Difficulty_level+1);
|
||||||
#if defined(DXX_BUILD_DESCENT_I)
|
#if defined(DXX_BUILD_DESCENT_I)
|
||||||
shield_points = f2i(get_local_player_shields()) * 10 * (Difficulty_level+1);
|
shield_points = f2i(get_local_player_shields()) * 10 * (Difficulty_level+1);
|
||||||
energy_points = f2i(get_local_player().energy) * 5 * (Difficulty_level+1);
|
energy_points = f2i(get_local_player_energy()) * 5 * (Difficulty_level+1);
|
||||||
#elif defined(DXX_BUILD_DESCENT_II)
|
#elif defined(DXX_BUILD_DESCENT_II)
|
||||||
shield_points = f2i(get_local_player_shields()) * 5 * mine_level;
|
shield_points = f2i(get_local_player_shields()) * 5 * mine_level;
|
||||||
energy_points = f2i(get_local_player().energy) * 2 * mine_level;
|
energy_points = f2i(get_local_player_energy()) * 2 * mine_level;
|
||||||
|
|
||||||
shield_points -= shield_points % 50;
|
shield_points -= shield_points % 50;
|
||||||
energy_points -= energy_points % 50;
|
energy_points -= energy_points % 50;
|
||||||
|
@ -1451,7 +1450,7 @@ void DoPlayerDead()
|
||||||
|
|
||||||
//clear out stuff so no bonus
|
//clear out stuff so no bonus
|
||||||
get_local_player().hostages_on_board = 0;
|
get_local_player().hostages_on_board = 0;
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
get_local_player_shields() = 0;
|
get_local_player_shields() = 0;
|
||||||
get_local_player().connected = CONNECT_DIED_IN_MINE;
|
get_local_player().connected = CONNECT_DIED_IN_MINE;
|
||||||
|
|
||||||
|
|
|
@ -981,11 +981,11 @@ static void hud_show_energy(void)
|
||||||
gr_set_curfont( GAME_FONT );
|
gr_set_curfont( GAME_FONT );
|
||||||
gr_set_fontcolor(BM_XRGB(0,31,0),-1 );
|
gr_set_fontcolor(BM_XRGB(0,31,0),-1 );
|
||||||
const auto &&line_spacing = LINE_SPACING;
|
const auto &&line_spacing = LINE_SPACING;
|
||||||
gr_printf(FSPACX(1), grd_curcanv->cv_bitmap.bm_h - ((Game_mode & GM_MULTI) ? (line_spacing * 5) : line_spacing),"%s: %i", TXT_ENERGY, f2ir(get_local_player().energy));
|
gr_printf(FSPACX(1), grd_curcanv->cv_bitmap.bm_h - ((Game_mode & GM_MULTI) ? (line_spacing * 5) : line_spacing),"%s: %i", TXT_ENERGY, f2ir(get_local_player_energy()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Newdemo_state == ND_STATE_RECORDING)
|
if (Newdemo_state == ND_STATE_RECORDING)
|
||||||
newdemo_record_player_energy(f2ir(get_local_player().energy));
|
newdemo_record_player_energy(f2ir(get_local_player_energy()));
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(DXX_BUILD_DESCENT_I)
|
#if defined(DXX_BUILD_DESCENT_I)
|
||||||
|
@ -1445,7 +1445,7 @@ static void hud_show_weapons(void)
|
||||||
gr_set_fontcolor(BM_XRGB(14,14,23),-1 );
|
gr_set_fontcolor(BM_XRGB(14,14,23),-1 );
|
||||||
gr_printf(x2, y - (line_spacing * 4),"%i", f2ir(get_local_player_shields()));
|
gr_printf(x2, y - (line_spacing * 4),"%i", f2ir(get_local_player_shields()));
|
||||||
gr_set_fontcolor(BM_XRGB(25,18,6),-1 );
|
gr_set_fontcolor(BM_XRGB(25,18,6),-1 );
|
||||||
gr_printf(x1, y - (line_spacing * 4),"%i", f2ir(get_local_player().energy));
|
gr_printf(x1, y - (line_spacing * 4),"%i", f2ir(get_local_player_energy()));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -3058,7 +3058,7 @@ void draw_hud()
|
||||||
//print out some player statistics
|
//print out some player statistics
|
||||||
void render_gauges()
|
void render_gauges()
|
||||||
{
|
{
|
||||||
int energy = f2ir(get_local_player().energy);
|
int energy = f2ir(get_local_player_energy());
|
||||||
int cloak = ((get_local_player().flags&PLAYER_FLAGS_CLOAKED) != 0);
|
int cloak = ((get_local_player().flags&PLAYER_FLAGS_CLOAKED) != 0);
|
||||||
|
|
||||||
Assert(PlayerCfg.CockpitMode[1]==CM_FULL_COCKPIT || PlayerCfg.CockpitMode[1]==CM_STATUS_BAR);
|
Assert(PlayerCfg.CockpitMode[1]==CM_FULL_COCKPIT || PlayerCfg.CockpitMode[1]==CM_STATUS_BAR);
|
||||||
|
|
|
@ -522,7 +522,7 @@ void omega_charge_frame(void)
|
||||||
if (Last_omega_fire_time + F1_0/3 > GameTime64)
|
if (Last_omega_fire_time + F1_0/3 > GameTime64)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (get_local_player().energy)
|
if (get_local_player_energy())
|
||||||
{
|
{
|
||||||
fix energy_used;
|
fix energy_used;
|
||||||
|
|
||||||
|
@ -537,9 +537,9 @@ void omega_charge_frame(void)
|
||||||
if (Difficulty_level < 2)
|
if (Difficulty_level < 2)
|
||||||
energy_used = fixmul(energy_used, i2f(Difficulty_level+2)/4);
|
energy_used = fixmul(energy_used, i2f(Difficulty_level+2)/4);
|
||||||
|
|
||||||
get_local_player().energy -= energy_used;
|
get_local_player_energy() -= energy_used;
|
||||||
if (get_local_player().energy < 0)
|
if (get_local_player_energy() < 0)
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1453,13 +1453,13 @@ void Flare_create(const vobjptridx_t obj)
|
||||||
// MK, 11/04/95: Allowed to fire flare even if no energy.
|
// MK, 11/04/95: Allowed to fire flare even if no energy.
|
||||||
// -- if (Players[Player_num].energy >= energy_usage)
|
// -- if (Players[Player_num].energy >= energy_usage)
|
||||||
#if defined(DXX_BUILD_DESCENT_I)
|
#if defined(DXX_BUILD_DESCENT_I)
|
||||||
if (get_local_player().energy > 0)
|
if (get_local_player_energy() > 0)
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
get_local_player().energy -= energy_usage;
|
get_local_player_energy() -= energy_usage;
|
||||||
|
|
||||||
if (get_local_player().energy <= 0) {
|
if (get_local_player_energy() <= 0) {
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
#if defined(DXX_BUILD_DESCENT_I)
|
#if defined(DXX_BUILD_DESCENT_I)
|
||||||
auto_select_primary_weapon();
|
auto_select_primary_weapon();
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1037,8 +1037,8 @@ void newdemo_record_start_demo()
|
||||||
|
|
||||||
nd_write_string(Current_mission_filename);
|
nd_write_string(Current_mission_filename);
|
||||||
|
|
||||||
nd_record_v_player_energy = (sbyte)(f2ir(get_local_player().energy));
|
nd_record_v_player_energy = (sbyte)(f2ir(get_local_player_energy()));
|
||||||
nd_write_byte((sbyte)(f2ir(get_local_player().energy)));
|
nd_write_byte((sbyte)(f2ir(get_local_player_energy())));
|
||||||
nd_record_v_player_shields = (sbyte)(f2ir(get_local_player_shields()));
|
nd_record_v_player_shields = (sbyte)(f2ir(get_local_player_shields()));
|
||||||
nd_write_byte((sbyte)(f2ir(get_local_player_shields())));
|
nd_write_byte((sbyte)(f2ir(get_local_player_shields())));
|
||||||
nd_write_int(nd_record_v_player_flags = get_local_player().flags.get_player_flags()); // be sure players flags are set
|
nd_write_int(nd_record_v_player_flags = get_local_player().flags.get_player_flags()); // be sure players flags are set
|
||||||
|
@ -1864,7 +1864,7 @@ static int newdemo_read_demo_start(enum purpose_type purpose)
|
||||||
#if defined(DXX_BUILD_DESCENT_II)
|
#if defined(DXX_BUILD_DESCENT_II)
|
||||||
nd_playback_v_juststarted=1;
|
nd_playback_v_juststarted=1;
|
||||||
#endif
|
#endif
|
||||||
get_local_player().energy = i2f(energy);
|
get_local_player_energy() = i2f(energy);
|
||||||
get_local_player_shields() = i2f(shield);
|
get_local_player_shields() = i2f(shield);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -2348,14 +2348,14 @@ static int newdemo_read_frame_information(int rewrite)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (shareware)
|
if (shareware)
|
||||||
get_local_player().energy = i2f(energy);
|
get_local_player_energy() = i2f(energy);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ((Newdemo_vcr_state == ND_STATE_PLAYBACK) || (Newdemo_vcr_state == ND_STATE_FASTFORWARD) || (Newdemo_vcr_state == ND_STATE_ONEFRAMEFORWARD)) {
|
if ((Newdemo_vcr_state == ND_STATE_PLAYBACK) || (Newdemo_vcr_state == ND_STATE_FASTFORWARD) || (Newdemo_vcr_state == ND_STATE_ONEFRAMEFORWARD)) {
|
||||||
get_local_player().energy = i2f(energy);
|
get_local_player_energy() = i2f(energy);
|
||||||
} else if ((Newdemo_vcr_state == ND_STATE_REWINDING) || (Newdemo_vcr_state == ND_STATE_ONEFRAMEBACKWARD)) {
|
} else if ((Newdemo_vcr_state == ND_STATE_REWINDING) || (Newdemo_vcr_state == ND_STATE_ONEFRAMEBACKWARD)) {
|
||||||
if (old_energy != 255)
|
if (old_energy != 255)
|
||||||
get_local_player().energy = i2f(old_energy);
|
get_local_player_energy() = i2f(old_energy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -3241,7 +3241,7 @@ void newdemo_goto_end(int to_rewrite)
|
||||||
|
|
||||||
nd_read_byte((sbyte *)&energy);
|
nd_read_byte((sbyte *)&energy);
|
||||||
nd_read_byte((sbyte *)&shield);
|
nd_read_byte((sbyte *)&shield);
|
||||||
get_local_player().energy = i2f(energy);
|
get_local_player_energy() = i2f(energy);
|
||||||
get_local_player_shields() = i2f(shield);
|
get_local_player_shields() = i2f(shield);
|
||||||
int recorded_player_flags;
|
int recorded_player_flags;
|
||||||
nd_read_int(&recorded_player_flags);
|
nd_read_int(&recorded_player_flags);
|
||||||
|
@ -3651,7 +3651,7 @@ static void newdemo_write_end()
|
||||||
{
|
{
|
||||||
byte_count += 10; // from nd_record_v_framebytes_written
|
byte_count += 10; // from nd_record_v_framebytes_written
|
||||||
|
|
||||||
nd_write_byte((sbyte)(f2ir(get_local_player().energy)));
|
nd_write_byte((sbyte)(f2ir(get_local_player_energy())));
|
||||||
nd_write_byte((sbyte)(f2ir(get_local_player_shields())));
|
nd_write_byte((sbyte)(f2ir(get_local_player_shields())));
|
||||||
nd_write_int(get_local_player().flags.get_player_flags()); // be sure players flags are set
|
nd_write_int(get_local_player().flags.get_player_flags()); // be sure players flags are set
|
||||||
nd_write_byte((sbyte)Primary_weapon);
|
nd_write_byte((sbyte)Primary_weapon);
|
||||||
|
|
|
@ -1661,9 +1661,9 @@ static void object_move_one(const vobjptridx_t obj)
|
||||||
fuelcen_check_for_hoard_goal (&Segments[obj->segnum]);
|
fuelcen_check_for_hoard_goal (&Segments[obj->segnum]);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
fix fuel=fuelcen_give_fuel(vsegptr(obj->segnum), INITIAL_ENERGY - get_local_player().energy );
|
fix fuel=fuelcen_give_fuel(vsegptr(obj->segnum), INITIAL_ENERGY - get_local_player_energy() );
|
||||||
if (fuel > 0 ) {
|
if (fuel > 0 ) {
|
||||||
get_local_player().energy += fuel;
|
get_local_player_energy() += fuel;
|
||||||
}
|
}
|
||||||
#if defined(DXX_BUILD_DESCENT_II)
|
#if defined(DXX_BUILD_DESCENT_II)
|
||||||
fix shields = repaircen_give_shields( &Segments[obj->segnum], INITIAL_SHIELDS - get_local_player_shields() );
|
fix shields = repaircen_give_shields( &Segments[obj->segnum], INITIAL_SHIELDS - get_local_player_shields() );
|
||||||
|
|
|
@ -165,7 +165,7 @@ void do_megawow_powerup(int quantity)
|
||||||
if (Newdemo_state == ND_STATE_RECORDING)
|
if (Newdemo_state == ND_STATE_RECORDING)
|
||||||
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
newdemo_record_laser_level(get_local_player().laser_level, MAX_LASER_LEVEL);
|
||||||
|
|
||||||
get_local_player().energy = F1_0*200;
|
get_local_player_energy() = F1_0*200;
|
||||||
get_local_player_shields() = F1_0*200;
|
get_local_player_shields() = F1_0*200;
|
||||||
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
get_local_player().flags |= PLAYER_FLAGS_QUAD_LASERS;
|
||||||
#if defined(DXX_BUILD_DESCENT_I)
|
#if defined(DXX_BUILD_DESCENT_I)
|
||||||
|
@ -187,17 +187,17 @@ static int pick_up_energy(void)
|
||||||
{
|
{
|
||||||
int used=0;
|
int used=0;
|
||||||
|
|
||||||
if (get_local_player().energy < MAX_ENERGY) {
|
if (get_local_player_energy() < MAX_ENERGY) {
|
||||||
fix boost;
|
fix boost;
|
||||||
boost = 3*F1_0 + 3*F1_0*(NDL - Difficulty_level);
|
boost = 3*F1_0 + 3*F1_0*(NDL - Difficulty_level);
|
||||||
#if defined(DXX_BUILD_DESCENT_II)
|
#if defined(DXX_BUILD_DESCENT_II)
|
||||||
if (Difficulty_level == 0)
|
if (Difficulty_level == 0)
|
||||||
boost += boost/2;
|
boost += boost/2;
|
||||||
#endif
|
#endif
|
||||||
get_local_player().energy += boost;
|
get_local_player_energy() += boost;
|
||||||
if (get_local_player().energy > MAX_ENERGY)
|
if (get_local_player_energy() > MAX_ENERGY)
|
||||||
get_local_player().energy = MAX_ENERGY;
|
get_local_player_energy() = MAX_ENERGY;
|
||||||
powerup_basic(15,15,7, ENERGY_SCORE, "%s %s %d",TXT_ENERGY,TXT_BOOSTED_TO,f2ir(get_local_player().energy));
|
powerup_basic(15,15,7, ENERGY_SCORE, "%s %s %d",TXT_ENERGY,TXT_BOOSTED_TO,f2ir(get_local_player_energy()));
|
||||||
used=1;
|
used=1;
|
||||||
} else
|
} else
|
||||||
HUD_init_message(HM_DEFAULT|HM_REDUNDANT|HM_MAYDUPL, TXT_MAXED_OUT,TXT_ENERGY);
|
HUD_init_message(HM_DEFAULT|HM_REDUNDANT|HM_MAYDUPL, TXT_MAXED_OUT,TXT_ENERGY);
|
||||||
|
|
|
@ -394,7 +394,7 @@ int check_trigger_sub(int trigger_num, int pnum,int shot)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Triggers[trigger_num].flags & TRIGGER_ENERGY_DRAIN) {
|
if (Triggers[trigger_num].flags & TRIGGER_ENERGY_DRAIN) {
|
||||||
get_local_player().energy -= Triggers[trigger_num].value;
|
get_local_player_energy() -= Triggers[trigger_num].value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -188,8 +188,8 @@ has_weapon_result player_has_primary_weapon(int weapon_num)
|
||||||
|
|
||||||
// Hack! If energy goes negative, you can't fire a weapon that doesn't require energy.
|
// Hack! If energy goes negative, you can't fire a weapon that doesn't require energy.
|
||||||
// But energy should not go negative (but it does), so find out why it does!
|
// But energy should not go negative (but it does), so find out why it does!
|
||||||
if (get_local_player().energy < 0)
|
if (get_local_player_energy() < 0)
|
||||||
get_local_player().energy = 0;
|
get_local_player_energy() = 0;
|
||||||
|
|
||||||
const auto weapon_index = Primary_weapon_to_weapon_info[weapon_num];
|
const auto weapon_index = Primary_weapon_to_weapon_info[weapon_num];
|
||||||
|
|
||||||
|
@ -210,17 +210,17 @@ has_weapon_result player_has_primary_weapon(int weapon_num)
|
||||||
//fusion has 0 energy usage, HAS_ENERGY_FLAG was always true
|
//fusion has 0 energy usage, HAS_ENERGY_FLAG was always true
|
||||||
if(weapon_num == primary_weapon_index_t::FUSION_INDEX)
|
if(weapon_num == primary_weapon_index_t::FUSION_INDEX)
|
||||||
{
|
{
|
||||||
if(get_local_player().energy >= F1_0*2)
|
if(get_local_player_energy() >= F1_0*2)
|
||||||
return_value |= has_weapon_result::has_energy_flag;
|
return_value |= has_weapon_result::has_energy_flag;
|
||||||
}
|
}
|
||||||
#elif defined(DXX_BUILD_DESCENT_II)
|
#elif defined(DXX_BUILD_DESCENT_II)
|
||||||
if (weapon_num == primary_weapon_index_t::OMEGA_INDEX) { // Hack: Make sure player has energy to omega
|
if (weapon_num == primary_weapon_index_t::OMEGA_INDEX) { // Hack: Make sure player has energy to omega
|
||||||
if (get_local_player().energy || Omega_charge)
|
if (get_local_player_energy() || Omega_charge)
|
||||||
return_value |= has_weapon_result::has_energy_flag;
|
return_value |= has_weapon_result::has_energy_flag;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
else
|
else
|
||||||
if (Weapon_info[weapon_index].energy_usage <= get_local_player().energy)
|
if (Weapon_info[weapon_index].energy_usage <= get_local_player_energy())
|
||||||
return_value |= has_weapon_result::has_energy_flag;
|
return_value |= has_weapon_result::has_energy_flag;
|
||||||
return return_value;
|
return return_value;
|
||||||
}
|
}
|
||||||
|
@ -233,7 +233,7 @@ has_weapon_result player_has_secondary_weapon(int weapon_num)
|
||||||
if (Weapon_info[weapon_index].ammo_usage <= get_local_player().secondary_ammo[weapon_num])
|
if (Weapon_info[weapon_index].ammo_usage <= get_local_player().secondary_ammo[weapon_num])
|
||||||
return_value |= has_weapon_result::has_ammo_flag;
|
return_value |= has_weapon_result::has_ammo_flag;
|
||||||
|
|
||||||
if (Weapon_info[weapon_index].energy_usage <= get_local_player().energy)
|
if (Weapon_info[weapon_index].energy_usage <= get_local_player_energy())
|
||||||
return_value |= has_weapon_result::has_energy_flag;
|
return_value |= has_weapon_result::has_energy_flag;
|
||||||
return return_value;
|
return return_value;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue