From e3be1c3bc883ff41a09b9faae1f9348ed3f6852e Mon Sep 17 00:00:00 2001 From: hikerstk Date: Wed, 8 Sep 2010 11:37:36 +0000 Subject: [PATCH] Improved handling in case that not enough karts are available, and they are all used by players - admittedly only happens in extreme debugging environments ;) git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5921 178a84e3-b1eb-0310-8ba1-8eac791a3b58 --- src/karts/kart_properties_manager.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/karts/kart_properties_manager.cpp b/src/karts/kart_properties_manager.cpp index 27ef2b644..3fc374fa5 100644 --- a/src/karts/kart_properties_manager.cpp +++ b/src/karts/kart_properties_manager.cpp @@ -369,7 +369,20 @@ std::vector KartPropertiesManager::getRandomKartList(int count, !unlock_manager->isLocked(m_karts_properties[i]->getIdent()) ) karts.push_back(i); } - assert(karts.size() > 0); + // If there are no unused karts, use used karts again. + // This means that e.g. if only one kart is availabe, which is + // used by the player, it will still be used by AI karts (which + // can be useful for debugging). + if(karts.size()==0) + { + for(unsigned int i=0; i