refactor some code to prevent possible crashes and bugs

This commit is contained in:
mq1n
2025-09-02 19:03:54 +03:00
parent 3de9fb33b5
commit 4ebc19a261
7 changed files with 86 additions and 64 deletions

View File

@@ -4082,28 +4082,28 @@ ACMD (do_item_full_set)
{
item = ITEM_MANAGER::instance().CreateItem(11699);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(13049);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(15189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(12529 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(14109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(17209 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(16209 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
}
break;
@@ -4111,28 +4111,28 @@ ACMD (do_item_full_set)
{
item = ITEM_MANAGER::instance().CreateItem(11299);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(13049);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(15189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(3159 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(12249 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(14109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(17109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(16109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
}
break;
@@ -4140,28 +4140,28 @@ ACMD (do_item_full_set)
{
item = ITEM_MANAGER::instance().CreateItem(11899);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(13049);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(15189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(7159 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(12669 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(14109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(17209 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(16209 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
}
break;
@@ -4169,31 +4169,35 @@ ACMD (do_item_full_set)
{
item = ITEM_MANAGER::instance().CreateItem(11499);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(13049);
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(15189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(1139 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(12389 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(14109 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(17189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
item = ITEM_MANAGER::instance().CreateItem(16189 );
if (!item || !item->EquipTo(ch, item->FindEquipCell(ch)))
if (item && !item->EquipTo(ch, item->FindEquipCell(ch)))
M2_DESTROY_ITEM(item);
}
break;
default:
ch->ChatPacket(CHAT_TYPE_INFO, "Full set is not available for your job");
break;
}
}