diff --git a/server/CGameHandler.cpp b/server/CGameHandler.cpp index 873f4c014..dbf3b2373 100644 --- a/server/CGameHandler.cpp +++ b/server/CGameHandler.cpp @@ -2683,7 +2683,10 @@ bool CGameHandler::recruitCreatures(ObjectInstanceID objid, ObjectInstanceID dst bool CGameHandler::upgradeCreature( ObjectInstanceID objid, SlotID pos, CreatureID upgID ) { CArmedInstance *obj = static_cast(gs->getObjInstance(objid)); - assert(obj->hasStackAtSlot(pos)); + if (!obj->hasStackAtSlot(pos)) + { + COMPLAIN_RET("Cannot upgrade, no stack at slot " + boost::to_string(pos)); + } UpgradeInfo ui = gs->getUpgradeInfo(obj->getStack(pos)); PlayerColor player = obj->tempOwner; const PlayerState *p = getPlayer(player);