Code
--- a/src/server/game/Server/Protocol/Handlers/LootHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/LootHandler.cpp
@@ -193,6 +193,12 @@ void WorldSession::HandleLootOpcode(Worl
recv_data >> guid;
// Check possible cheat
+ if (!IS_ITEM_GUID(guid)); //CocaTb 4iTep
+ else
+ {
+ KickPlayer();//Cocu Te6e KuK
+ return;
+ }
if (!_player->isAlive())
return;
--- a/src/server/game/Server/Protocol/Handlers/AuctionHouseHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/AuctionHouseHandler.cpp
@@ -199,6 +199,12 @@ void WorldSession::HandleAuctionSellItem
return;
}
+ if (it->IsBag() && !((Bag*)it)->IsEmpty())
+ {
+ SendAuctionCommandResult(0, AUCTION_SELL_ITEM, AUCTION_INTERNAL_ERROR);
+ return;
+ }
+
AuctionHouseObject* auctionHouse = sAuctionMgr.GetAuctionsMap(pCreature->getFaction());
//we have to take deposit :
--- a/src/server/game/Server/Protocol/Handlers/MailHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/MailHandler.cpp
@@ -225,6 +225,12 @@ void WorldSession::HandleSendMail(WorldP
return;
}
+ if (item->IsBag() && !((Bag*)item)->IsEmpty())
+ {
+ pl->SendMailResult(0, MAIL_SEND, MAIL_ERR_EQUIP_ERROR, EQUIP_ERR_CAN_ONLY_DO_WITH_EMPTY_BAGS);
+ return;
+ }
+
items[i] = item;
}
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -23063,7 +23063,7 @@ void Player::AddGlobalCooldown(SpellEntr
bool Player::HasGlobalCooldown(SpellEntry const *spellInfo) const
{
- if (!spellInfo)
+ if (!spellInfo || !spellInfo->StartRecoveryTime)
return false;
std::map<uint32, uint32>::const_iterator itr = m_globalCooldowns.find(spellInfo->StartRecoveryCategory);
--- a/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp
+++ b/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp
@@ -219,6 +219,12 @@ void WorldSession::HandleOpenItemOpcode(
pUser->SendEquipError(EQUIP_ERR_ITEM_NOT_FOUND, pItem, NULL);
return;
}
+ if (proto->Flags & ITEM_PROTO_FLAG_OPENABLE); //ga}|{E HE gyMau'
+ else
+ {
+ KickPlayer(); //gep}|{u Cyka!
+ return;
+ }
// locked item
uint32 lockId = proto->LockID;
Сразу скажу что вам надо будет самим строчки искать и вставлять!!
Копировать ЗАПРЕЩЕННО!!