From 25f04ef6612f13bf328c7f1e3699939698bfcfbd Mon Sep 17 00:00:00 2001 From: Flugente Date: Wed, 8 Jul 2015 17:44:05 +0000 Subject: [PATCH] Added safety checks: MAX_NUMBER_OF_TRAITS must be higher than NUMBER_OF_MAJOR_TRAITS_ALLOWED at least by 1. MAX_NUMBER_OF_TRAITS_FOR_IMP must be higher than NUMBER_OF_MAJOR_TRAITS_ALLOWED_FOR_IMP at least by 1. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7905 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- GameSettings.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/GameSettings.cpp b/GameSettings.cpp index 48c10eea..aef166f8 100644 --- a/GameSettings.cpp +++ b/GameSettings.cpp @@ -2230,10 +2230,10 @@ void LoadSkillTraitsExternalSettings() CIniReader iniReader(STOMP_SETTINGS_FILE); gSkillTraitValues.ubMaxNumberOfTraits = iniReader.ReadInteger("Generic Traits Settings","MAX_NUMBER_OF_TRAITS", 5, 2, 30); - gSkillTraitValues.ubNumberOfMajorTraitsAllowed = iniReader.ReadInteger("Generic Traits Settings","NUMBER_OF_MAJOR_TRAITS_ALLOWED", 3, 2, 20); + gSkillTraitValues.ubNumberOfMajorTraitsAllowed = iniReader.ReadInteger( "Generic Traits Settings", "NUMBER_OF_MAJOR_TRAITS_ALLOWED", 3, 2, gSkillTraitValues.ubMaxNumberOfTraits - 1); gSkillTraitValues.ubMaxNumberOfTraitsForIMP = iniReader.ReadInteger("Generic Traits Settings","MAX_NUMBER_OF_TRAITS_FOR_IMP", 3, 2, 30); - gSkillTraitValues.ubNumberOfMajorTraitsAllowedForIMP = iniReader.ReadInteger("Generic Traits Settings","NUMBER_OF_MAJOR_TRAITS_ALLOWED_FOR_IMP", 2, 2, 20); + gSkillTraitValues.ubNumberOfMajorTraitsAllowedForIMP = iniReader.ReadInteger( "Generic Traits Settings", "NUMBER_OF_MAJOR_TRAITS_ALLOWED_FOR_IMP", 2, 2, gSkillTraitValues.ubMaxNumberOfTraitsForIMP - 1 ); // Allow an exception in number of traits for Special Merc? //gSkillTraitValues.fAllowSpecialMercTraitsException = iniReader.ReadBoolean("Generic Traits Settings","ALLOW_EXCEPTION_FOR_SPECIAL_MERC", TRUE);