Skip to content

Commit f099e4d

Browse files
authored
bugfix(object): Fix veterancy effect spawning at the map origin when a veteran unit is produced (#1458)
1 parent db3416b commit f099e4d

File tree

6 files changed

+8
-8
lines changed

6 files changed

+8
-8
lines changed

Generals/Code/GameEngine/Include/GameLogic/ExperienceTracker.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class ExperienceTracker : public MemoryPoolObject, public Snapshot
5252
Bool isAcceptingExperiencePoints() const; ///< Either I am trainable, or I have a Sink set up
5353

5454
void setVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback = TRUE ); ///< Set Level to this
55-
void setMinVeterancyLevel( VeterancyLevel newLevel ); ///< Set Level to AT LEAST this... if we are already >= this level, do nothing.
55+
void setMinVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback = TRUE ); ///< Set Level to AT LEAST this... if we are already >= this level, do nothing.
5656
void addExperiencePoints( Int experienceGain, Bool canScaleForBonus = TRUE ); ///< Gain this many exp.
5757
Bool gainExpForLevel(Int levelsToGain, Bool canScaleForBonus = TRUE ); ///< Gain enough exp to gain a level. return false if can't gain a level.
5858
Bool canGainExpForLevel(Int levelsToGain) const; ///< return same value as gainExpForLevel, but don't change anything

Generals/Code/GameEngine/Source/GameLogic/Object/Create/VeterancyGainCreate.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ void VeterancyGainCreate::onCreate( void )
9292
if( myExp && myExp->isTrainable() )
9393
{
9494
// srj sez: use "setMin" here so that we never lose levels
95-
myExp->setMinVeterancyLevel( md->m_startingLevel );// sVL can override isTrainable, but this module should not.
95+
myExp->setMinVeterancyLevel( md->m_startingLevel, false );// sVL can override isTrainable, but this module should not.
9696
}
9797
}
9898

Generals/Code/GameEngine/Source/GameLogic/Object/ExperienceTracker.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ void ExperienceTracker::setExperienceSink( ObjectID sink )
8282

8383
//-------------------------------------------------------------------------------------------------
8484
// Set Level to AT LEAST this... if we are already >= this level, do nothing.
85-
void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel )
85+
void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback )
8686
{
8787
// This does not check for IsTrainable, because this function is for explicit setting,
8888
// so the setter is assumed to know what they are doing. The game function
@@ -93,7 +93,7 @@ void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel )
9393
m_currentLevel = newLevel;
9494
m_currentExperience = m_parent->getTemplate()->getExperienceRequired(m_currentLevel); //Minimum for this level
9595
if (m_parent)
96-
m_parent->onVeterancyLevelChanged( oldLevel, newLevel );
96+
m_parent->onVeterancyLevelChanged( oldLevel, newLevel, provideFeedback );
9797
}
9898
}
9999

GeneralsMD/Code/GameEngine/Include/GameLogic/ExperienceTracker.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ class ExperienceTracker : public MemoryPoolObject, public Snapshot
5252
Bool isAcceptingExperiencePoints() const; ///< Either I am trainable, or I have a Sink set up
5353

5454
void setVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback = TRUE ); ///< Set Level to this
55-
void setMinVeterancyLevel( VeterancyLevel newLevel ); ///< Set Level to AT LEAST this... if we are already >= this level, do nothing.
55+
void setMinVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback = TRUE ); ///< Set Level to AT LEAST this... if we are already >= this level, do nothing.
5656
void addExperiencePoints( Int experienceGain, Bool canScaleForBonus = TRUE ); ///< Gain this many exp.
5757
Bool gainExpForLevel(Int levelsToGain, Bool canScaleForBonus = TRUE ); ///< Gain enough exp to gain a level. return false if can't gain a level.
5858
Bool canGainExpForLevel(Int levelsToGain) const; ///< return same value as gainExpForLevel, but don't change anything

GeneralsMD/Code/GameEngine/Source/GameLogic/Object/Create/VeterancyGainCreate.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ void VeterancyGainCreate::onCreate( void )
9292
if( myExp && myExp->isTrainable() )
9393
{
9494
// srj sez: use "setMin" here so that we never lose levels
95-
myExp->setMinVeterancyLevel( md->m_startingLevel );// sVL can override isTrainable, but this module should not.
95+
myExp->setMinVeterancyLevel( md->m_startingLevel, false );// sVL can override isTrainable, but this module should not.
9696
}
9797
}
9898

GeneralsMD/Code/GameEngine/Source/GameLogic/Object/ExperienceTracker.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ void ExperienceTracker::setExperienceSink( ObjectID sink )
8282

8383
//-------------------------------------------------------------------------------------------------
8484
// Set Level to AT LEAST this... if we are already >= this level, do nothing.
85-
void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel )
85+
void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel, Bool provideFeedback )
8686
{
8787
// This does not check for IsTrainable, because this function is for explicit setting,
8888
// so the setter is assumed to know what they are doing. The game function
@@ -93,7 +93,7 @@ void ExperienceTracker::setMinVeterancyLevel( VeterancyLevel newLevel )
9393
m_currentLevel = newLevel;
9494
m_currentExperience = m_parent->getTemplate()->getExperienceRequired(m_currentLevel); //Minimum for this level
9595
if (m_parent)
96-
m_parent->onVeterancyLevelChanged( oldLevel, newLevel );
96+
m_parent->onVeterancyLevelChanged( oldLevel, newLevel, provideFeedback );
9797
}
9898
}
9999

0 commit comments

Comments
 (0)