- // Arat
- #include "log.h"
- // Altına Ekle
- #ifdef ENABLE_SUPPORT_SYSTEM
- #include "SupportSystem.h"
- #endif
- // Arat
- ACMD(do_in_game_mall)
- // Altına Ekle
- ACMD(do_support_system)
- {
- char arg1[256];
- one_argument(argument, arg1, sizeof(arg1));
- if (!*arg1)
- return;
- DWORD items = 0;
- str_to_number(items, arg1);
- if (ch->GetSupportSystem()->IsActiveSupport())
- {
- CSupportSystem* supportSystem = ch->GetSupportSystem();
- for (int i = 0; i < INVENTORY_MAX_NUM; i++)
- {
- LPITEM item = ch->GetInventoryItem(i);
- LPITEM pSummonItem = ITEM_MANAGER::instance().FindByVID(ch->GetSupportSystem()->GetActiveSupport()->GetSummonItemVID());
- if (item != NULL)
- if (item->GetVnum() == items)
- {
- if (item->GetType() == ITEM_COSTUME || item->GetType() == ITEM_ARMOR)
- {
- if (item->GetAntiFlag() & ITEM_ANTIFLAG_SHAMAN)
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> sadece şaman zırhı giydirebilirsin..");
- return;
- }
- if (item->IsExchanging())
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> ticaret yaparken bu işlemi yapamazsın");
- return;
- }
- if(item->GetSubType() == COSTUME_BODY)
- {
- item->ClearAttribute();
- pSummonItem->SetSocket(1,item->GetVnum());
- ch->ChatPacket(CHAT_TYPE_COMMAND, "SupportArmor %u", item->GetVnum());
- DBManager::instance().DirectQuery("UPDATE player.new_support SET armor = '%u' WHERE id = '%d'", item->GetVnum(), pSummonItem->GetID());
- ch->UpdatePacket();
- item->RemoveFromCharacter();
- break;
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi yapamazsın");
- return;
- }
- }
- }
- }
- ch->GetSupportSystem()->GetActiveSupport()->RefreshCostume();
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi kullanabilmek için yardımcı şaman mühürü gerekiyor.");
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> eğer şaman mühürü varsa lütfen şamanı çağırın.");
- }
- }
- ACMD(do_support_system_w)
- {
- char arg1[256];
- one_argument(argument, arg1, sizeof(arg1));
- if (!*arg1)
- return;
- DWORD items = 0;
- str_to_number(items, arg1);
- if (ch->GetSupportSystem()->IsActiveSupport())
- {
- CSupportSystem* supportSystem = ch->GetSupportSystem();
- for (int i = 0; i < INVENTORY_MAX_NUM; i++)
- {
- LPITEM item = ch->GetInventoryItem(i);
- LPITEM pSummonItem = ITEM_MANAGER::instance().FindByVID(ch->GetSupportSystem()->GetActiveSupport()->GetSummonItemVID());
- if (item != NULL)
- if (item->GetVnum() == items)
- {
- if (item->GetType() == ITEM_WEAPON)
- {
- if (item->IsExchanging())
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> ticaret yaparken bu işlemi yapamazsın");
- return;
- }
- if (item->GetSubType() == WEAPON_FAN || item->GetSubType() == WEAPON_BELL)
- {
- item->ClearAttribute();
- pSummonItem->SetForceAttribute(3, 3, item->GetVnum());
- ch->ChatPacket(CHAT_TYPE_COMMAND, "SupportWeapon %u", item->GetVnum());
- DBManager::instance().DirectQuery("UPDATE player.new_support SET weapon = '%u' WHERE id = '%d'", item->GetVnum(), pSummonItem->GetID());
- ch->UpdatePacket();
- item->RemoveFromCharacter();
- break;
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi yapamazsın");
- return;
- }
- }
- }
- }
- ch->GetSupportSystem()->GetActiveSupport()->RefreshCostume();
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi kullanabilmek için yardımcı şaman mühürü gerekiyor.");
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> eğer şaman mühürü varsa lütfen şamanı çağırın.");
- }
- }
- ACMD(do_support_system_d)
- {
- char arg1[256];
- one_argument(argument, arg1, sizeof(arg1));
- if (!*arg1)
- return;
- DWORD items = 0;
- str_to_number(items, arg1);
- if (ch->GetSupportSystem()->IsActiveSupport())
- {
- CSupportSystem* supportSystem = ch->GetSupportSystem();
- for (int i = 0; i < INVENTORY_MAX_NUM; i++)
- {
- LPITEM item = ch->GetInventoryItem(i);
- LPITEM pSummonItem = ITEM_MANAGER::instance().FindByVID(ch->GetSupportSystem()->GetActiveSupport()->GetSummonItemVID());
- if (item != NULL)
- if (item->GetVnum() == items)
- {
- if (item->GetType() == ITEM_COSTUME)
- {
- if (item->IsExchanging())
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> ticaret yaparken bu işlemi yapamazsın");
- return;
- }
- if (item->GetSubType() == COSTUME_HAIR)
- {
- item->ClearAttribute();
- pSummonItem->SetSocket(2,item->GetValue(3));
- ch->ChatPacket(CHAT_TYPE_COMMAND, "SupportHair %u", item->GetVnum());
- DBManager::instance().DirectQuery("UPDATE player.new_support SET hair = '%u', hairvnum = '%u' WHERE id = '%d'", item->GetValue(3), item->GetVnum(), pSummonItem->GetID());
- ch->UpdatePacket();
- item->RemoveFromCharacter();
- break;
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi yapamazsın");
- return;
- }
- }
- }
- }
- ch->GetSupportSystem()->GetActiveSupport()->RefreshCostume();
- }
- else
- {
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> Bu işlemi kullanabilmek için yardımcı şaman mühürü gerekiyor.");
- ch->ChatPacket(CHAT_TYPE_INFO, "<Sistem> eğer şaman mühürü varsa lütfen şamanı çağırın.");
- }
- }