1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-27 06:47:45 +00:00

make sure the server doesn't crash and burn when accessing scripts that don't exist

This commit is contained in:
GokuWeedLord 2017-12-10 21:44:18 +11:00
parent 207e9589f7
commit 68b655dcdd

View file

@ -8,27 +8,47 @@ namespace Core {
StatusEffectScript* NativeScript::getStatusEffectScript( uint32_t statusId )
{
return m_statusEffectScripts.at( statusId );
auto script = m_statusEffectScripts.find( statusId );
if( script == m_statusEffectScripts.end() )
return nullptr;
return script->second;
}
ActionScript* NativeScript::getAbilityScript( uint32_t abilityId )
{
return m_actionScripts.at( abilityId );
auto script = m_actionScripts.find( abilityId );
if( script == m_actionScripts.end() )
return nullptr;
return script->second;
}
QuestScript* NativeScript::getQuestScript( uint32_t questId )
{
return m_questScripts.at( questId );
auto script = m_questScripts.find( questId );
if( script == m_questScripts.end() )
return nullptr;
return script->second;
}
BattleNpcScript* NativeScript::getBattleNpcScript( uint32_t npcId )
{
return m_battleNpcScripts.at( npcId );
auto script = m_battleNpcScripts.find( npcId );
if( script == m_battleNpcScripts.end() )
return nullptr;
return script->second;
}
ZoneScript* NativeScript::getZoneScript( uint32_t zoneId )
{
return m_zoneScripts.at( zoneId );
auto script = m_zoneScripts.find( zoneId );
if( script == m_zoneScripts.end() )
return nullptr;
return script->second;
}
void NativeScript::removeStatusEffectScript( uint32_t statusId )