Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion rts/Lua/LuaGaia.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ std::string CLuaGaia::GetSyncedFileName() const

std::string CLuaGaia::GetInitFileModes() const
{
return SPRING_VFS_MAP_BASE;
return SPRING_VFS_MOD SPRING_VFS_MAP_BASE;
}

int CLuaGaia::GetInitSelectTeam() const
Expand Down
5 changes: 5 additions & 0 deletions rts/Lua/LuaHandle.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1121,6 +1121,11 @@ void CLuaHandle::UnitFinished(const CUnit* unit)
UnitCallIn(cmdStr, unit);
}

void CLuaHandle::UnitResurrected([[maybe_unused]] const CUnit* unit)
{
/* This implementation is intentionally left blank for educational purposes,
* since a gameside implementation is an excellent example of a custom call-in. */
}

/*** Called when a factory finishes construction of a unit.
*
Expand Down
1 change: 1 addition & 0 deletions rts/Lua/LuaHandle.h
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ class CLuaHandle : public CEventClient

void UnitCreated(const CUnit* unit, const CUnit* builder) override;
void UnitFinished(const CUnit* unit) override;
void UnitResurrected(const CUnit* unit); // fake call-in, doesn't exist in CEventClient
void UnitFromFactory(const CUnit* unit, const CUnit* factory, bool userOrders) override;
void UnitReverseBuilt(const CUnit* unit) override;
void UnitConstructionDecayed(const CUnit* unit, float timeSinceLastBuild, float iterationPeriod, float part) override;
Expand Down
57 changes: 0 additions & 57 deletions rts/Sim/Misc/Team.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -120,63 +120,6 @@ void CTeam::ClampStartPosInStartBox(float3* pos) const
pos->z = ipos.y;
}


bool CTeam::UseMetal(float amount)
{
RECOIL_DETAILED_TRACY_ZONE;
if (res.metal < amount)
return false;

res.metal -= amount;
resExpense.metal += amount;
return true;
}

bool CTeam::UseEnergy(float amount)
{
RECOIL_DETAILED_TRACY_ZONE;
if (res.energy < amount)
return false;

res.energy -= amount;
resExpense.energy += amount;
return true;
}



void CTeam::AddMetal(float amount, bool useIncomeMultiplier)
{
RECOIL_DETAILED_TRACY_ZONE;
if (useIncomeMultiplier)
amount *= GetIncomeMultiplier();

res.metal += amount;
resIncome.metal += amount;

if (res.metal <= resStorage.metal)
return;

resExcessThisFrame.metal += (res.metal - resStorage.metal);
res.metal = resStorage.metal;
}

void CTeam::AddEnergy(float amount, bool useIncomeMultiplier)
{
RECOIL_DETAILED_TRACY_ZONE;
if (useIncomeMultiplier)
amount *= GetIncomeMultiplier();

res.energy += amount;
resIncome.energy += amount;

if (res.energy > resStorage.energy) {
resExcessThisFrame.energy += (res.energy - resStorage.energy);
res.energy = resStorage.energy;
}
}


bool CTeam::HaveResources(const SResourcePack& amount) const
{
RECOIL_DETAILED_TRACY_ZONE;
Expand Down
5 changes: 0 additions & 5 deletions rts/Sim/Misc/Team.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,6 @@ class CTeam : public TeamBase
void AddResources(SResourcePack res, bool useIncomeMultiplier = true);
bool UseResources(const SResourcePack& res);

void AddMetal(float amount, bool useIncomeMultiplier = true);
void AddEnergy(float amount, bool useIncomeMultiplier = true);
bool UseEnergy(float amount);
bool UseMetal(float amount);

void GiveEverythingTo(const unsigned toTeam);

void Died(bool normalDeath = true);
Expand Down
11 changes: 5 additions & 6 deletions rts/Sim/MoveTypes/GroundMoveType.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1622,6 +1622,11 @@ void CGroundMoveType::UpdateSkid()
}
}

// always update <oldPos> here so that <speed> does not make
// extreme jumps when the unit transitions from skidding back
// to non-skidding
oldPos = owner->pos;

// finally update speed.w
owner->SetSpeed(spd);
// translate before rotate, match terrain normal if not in air
Expand All @@ -1637,12 +1642,6 @@ void CGroundMoveType::UpdateSkid()
}

AdjustPosToWaterLine();

// always update <oldPos> here so that <speed> does not make
// extreme jumps when the unit transitions from skidding back
// to non-skidding
oldPos = owner->pos;

ASSERT_SANE_OWNER_SPEED(spd);
ASSERT_SYNCED(owner->midPos);
}
Expand Down
96 changes: 0 additions & 96 deletions rts/Sim/Units/Unit.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2135,92 +2135,6 @@ bool CUnit::AllowedReclaim(CUnit* builder) const
return true;
}


bool CUnit::UseMetal(float metal)
{
RECOIL_DETAILED_TRACY_ZONE;
if (metal < 0.0f) {
AddMetal(-metal);
return true;
}

CTeam* myTeam = teamHandler.Team(team);
myTeam->resPull.metal += metal;

if (myTeam->UseMetal(metal)) {
resourcesUseI.metal += metal;
return true;
}

return false;
}

void CUnit::AddMetal(float metal, bool useIncomeMultiplier)
{
RECOIL_DETAILED_TRACY_ZONE;
if (metal < 0.0f) {
UseMetal(-metal);
return;
}

resourcesMakeI.metal += metal;
teamHandler.Team(team)->AddMetal(metal, useIncomeMultiplier);
}


bool CUnit::UseEnergy(float energy)
{
RECOIL_DETAILED_TRACY_ZONE;
if (energy < 0.0f) {
AddEnergy(-energy);
return true;
}

CTeam* myTeam = teamHandler.Team(team);
myTeam->resPull.energy += energy;

if (myTeam->UseEnergy(energy)) {
resourcesUseI.energy += energy;
return true;
}

return false;
}

void CUnit::AddEnergy(float energy, bool useIncomeMultiplier)
{
RECOIL_DETAILED_TRACY_ZONE;
if (energy < 0.0f) {
UseEnergy(-energy);
return;
}
resourcesMakeI.energy += energy;
teamHandler.Team(team)->AddEnergy(energy, useIncomeMultiplier);
}


bool CUnit::AddHarvestedMetal(float metal)
{
RECOIL_DETAILED_TRACY_ZONE;
if (harvestStorage.metal <= 0.0f) {
AddMetal(metal, false);
return true;
}

if (harvested.metal >= harvestStorage.metal) {
eventHandler.UnitHarvestStorageFull(this);
return false;
}

//FIXME what do with exceeding metal?
harvested.metal = std::min(harvested.metal + metal, harvestStorage.metal);
if (harvested.metal >= harvestStorage.metal) {
eventHandler.UnitHarvestStorageFull(this);
}
return true;
}


void CUnit::SetStorage(const SResourcePack& newStorage)
{
RECOIL_DETAILED_TRACY_ZONE;
Expand All @@ -2240,11 +2154,6 @@ bool CUnit::HaveResources(const SResourcePack& pack) const
bool CUnit::UseResources(const SResourcePack& pack)
{
RECOIL_DETAILED_TRACY_ZONE;
//FIXME
/*if (energy < 0.0f) {
AddEnergy(-energy);
return true;
}*/

CTeam* myTeam = teamHandler.Team(team);
myTeam->resPull += pack;
Expand All @@ -2260,11 +2169,6 @@ bool CUnit::UseResources(const SResourcePack& pack)
void CUnit::AddResources(const SResourcePack& pack, bool useIncomeMultiplier)
{
RECOIL_DETAILED_TRACY_ZONE;
//FIXME
/*if (energy < 0.0f) {
UseEnergy(-energy);
return true;
}*/
resourcesMakeI += pack;
teamHandler.Team(team)->AddResources(pack, useIncomeMultiplier);
}
Expand Down
6 changes: 0 additions & 6 deletions rts/Sim/Units/Unit.h
Original file line number Diff line number Diff line change
Expand Up @@ -116,12 +116,6 @@ class CUnit : public CSolidObject

bool AllowedReclaim(CUnit* builder) const;

bool UseMetal(float metal);
void AddMetal(float metal, bool useIncomeMultiplier = true);
bool UseEnergy(float energy);
void AddEnergy(float energy, bool useIncomeMultiplier = true);
bool AddHarvestedMetal(float metal);

void SetStorage(const SResourcePack& newstorage);
bool HaveResources(const SResourcePack& res) const;
bool UseResources(const SResourcePack& res);
Expand Down
Loading