Potsuz Vs Sistemi[C++&PYTHON]

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 91

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhaba, konuyu sırf çok mutlu bir haber aldığım için açıyorum.
Yaklaşık 1.5 senedir çok maddi sıkıntı yaşadık.(Babam Dolandırıldı)
Dolandıran adam şuan yakalandı, babada istanbul'da zaten.
Adam yüzünden çok borca girdik, bir kaç gün içinde borçlar verilmezse bankadan haciz yiyeceğiz.
Sizden sadece dua istiyorum.
Allah rızası için dua edin de kurtulalım şu sıkıntıdan.

char_item.cpp açılır-aratılır:ch
Kod:
struct FFindStone
Bunun altına eklenir;
Kod:
static bool BLACK_POT_ITEMLER(int vnum) {     switch (vnum)     {         case 27001:         case 27002:         case 27003:         case 27051:         case 27122:         case 72723:         case 72724:         case 72725:         case 72726:                 return true;     }     return false; }
Tekrar aratılır:
Kod:
bool CHARACTER::UseItem(TItemPos Cell, TItemPos DestCell)
Komple değiştirilir;

Kod:
bool CHARACTER::UseItem(TItemPos Cell, TItemPos DestCell) {     WORD wCell = Cell.cell;     BYTE window_type = Cell.window_type;     WORD wDestCell = DestCell.cell;     BYTE bDestInven = DestCell.window_type;     LPITEM item;     quest::CQuestManager& q = quest::CQuestManager::instance();     quest::PC* pPC = q.GetPC(GetPlayerID());     if (!CanHandleItem())         return false;     if (!IsValidItemPosition(Cell) || !(item = GetItem(Cell)))             return false;     sys_log(0, "%s: USE_ITEM %s (inven %d, cell: %d)", GetName(), item->GetName(), window_type, wCell);     if (item->IsExchanging())         return false;     if (!item->CanUsedBy(this))     {         ChatPacket(CHAT_TYPE_INFO, LC_TEXT("êµ°ì§ì´ ë§ì§âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢Å ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ì´ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));         return false;     }     if (IsStun())         return false;     if (false == FN_check_item_sex(this, item))     {         ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬±ë³âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´ ë§ì§âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢Å ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ì´ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));         return false;     }          if (BLACK_POT_ITEMLER(item->GetVnum()) && pPC->GuestFlag("wsdeyim"))     {         ChatPacket(CHAT_TYPE_INFO, LC_TEXT("potengel"));         return false;     }     //PREVENT_TRADE_WINDOW     if (IS_SUMMON_ITEM(item->GetVnum()))     {         if (false == IS_SUMMONABLE_ZONE(GetMapIndex()))         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));             return false;         }         // ê²½íËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ¼ë°ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâì§âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©ì§âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ëÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë°©ì´ SUMMONABLE_ZONEìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê°âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ WarpToPC()ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ì²´í¬                  //ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¼ê±°ë¦¬ ê´âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë ¤ ë§µìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬ÅëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ë§âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë²âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¦°ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤.         if (CThreeWayWar::instance().IsThreeWayWarMapIndex(Ge  tMapIndex()))         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¼ê±°ë¦¬ ì âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ¬ ì°¸ê°âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì¤âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ËÅââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));             return false;         }         int iPulse = thecore_pulse();         //ì°½ê³  ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ì²´í¬         if (iPulse - GetSafeboxLoadTime() < PASSES_PER_SEC(g_nPortalLimitTime))         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ì°½ê³ ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ %dì´Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ì´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡´ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."), g_nPortalLimitTime);             if (test_server)                 ChatPacket(CHAT_TYPE_INFO, "[TestOnly]Pulse %d LoadTime %d PASS %d", iPulse, GetSafeboxLoadTime(), PASSES_PER_SEC(g_nPortalLimitTime));             return false;          }         //ê±°ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâê´âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë ¨ ì°½ ì²´í¬         if (GetExchange() || GetMyShop() || GetShopOwner() || IsOpenSafebox() || IsCubeOpen() || IsAcceOpen())         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ê±°ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâì°½,ì°½ê³  ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ±ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬° ìÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢íÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââ  ââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬ÅëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ 를 ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));             return false;         }         //PREVENT_REFINE_HACK         //ê°Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬ÅëŸâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åê°âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì²´í¬          {             if (iPulse - GetRefineTime() < PASSES_PER_SEC(g_nPortalLimitTime))             {                 ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ê°Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬ÅëŸâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ %dì´Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ì´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡´ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."), g_nPortalLimitTime);                 return false;             }         }         //END_PREVENT_REFINE_HACK                  //PREVENT_ITEM_COPY         {             if (iPulse - GetMyShopTime() < PASSES_PER_SEC(g_nPortalLimitTime))             {                 ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ê°Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åì¸ìÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ì  ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ %dì´Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ì´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡´ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."), g_nPortalLimitTime);                 return false;             }                      }         //END_PREVENT_ITEM_COPY                  //ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê±°ë¦¬ì²´í¬         if (item->GetVnum() != 70302)         {             PIXEL_POSITION posWarp;             int x = 0;             int y = 0;             double nDist = 0;             const double nDistant = 5000.0;             //ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬              if (item->GetVnum() == 22010)             {                 x = item->GetSocket(0) - GetX();                 y = item->GetSocket(1) - GetY();             }             //ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬             else if (item->GetVnum() == 22000)              {                 SECTREE_MANAGER::instance().GetRecallPositionByEmp  ire(GetMapIndex(), GetEmpire(), posWarp);                 if (item->GetSocket(0) == 0)                 {                     x = posWarp.x - GetX();                     y = posWarp.y - GetY();                 }                 else                 {                     x = item->GetSocket(0) - GetX();                     y = item->GetSocket(1) - GetY();                 }             }             nDist = sqrt(pow((float)x,2) + pow((float)y,2));             if (nDistant > nDist)             {                 ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ì´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å´ì§Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ìÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì¹ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ 무 ê°âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê¹Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));                                 if (test_server)                     ChatPacket(CHAT_TYPE_INFO, "PossibleDistant %f nNowDist %f", nDistant,nDist);                  return false;             }         }         //PREVENT_PORTAL_AFTER_EXCHANGE         //êµíâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åê°âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì²´í¬         if (iPulse - GetExchangeTime()  < PASSES_PER_SEC(g_nPortalLimitTime))         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ê±°ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ºâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ %dì´Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ì´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡´ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬,ê·âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬  ¢ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ기ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åµë¶âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ±ìââ  âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢  ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."), g_nPortalLimitTime);             return false;         }         //END_PREVENT_PORTAL_AFTER_EXCHANGE     }     //ë³´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°ë¦¬ ë¹âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¨ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ê±°ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâì°½ ì Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åíâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ì²´í¬      if (item->GetVnum() == 50200 | item->GetVnum() == 71049)     {         if (GetExchange() || GetMyShop() || GetShopOwner() || IsOpenSafebox() || IsCubeOpen() || IsAcceOpen())         {             ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ê±°ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâì°½,ì°½ê³  ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ±ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬° ìÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢íÆââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââ  ââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬ÅëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ë³´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°ë¦¬,ë¹âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¨ë³´ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬°ë¦¬ë  ¥¼ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ìËââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));             return false;         }     }     //END_PREVENT_TRADE_WINDOW     if (IS_SET(item->GetFlag(), ITEM_FLAG_LOG)) // ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡© ë¡Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å그를 ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¨ê¸°ëÅ âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ì²ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ리     {         DWORD vid = item->GetVID();         DWORD oldCount = item->GetCount();         DWORD vnum = item->GetVnum();         char hint[ITEM_NAME_MAX_LEN + 32 + 1];         int len = snprintf(hint, sizeof(hint) - 32, "%s", item->GetName());         if (len < 0 || len >= (int) sizeof(hint) - 32)             len = (sizeof(hint) - 32) - 1;         bool ret = UseItemEx(item, DestCell);         if (NULL == ITEM_MANAGER::instance().FindByVID(vid)) // UseItemExìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ì´íâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åì´ ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡ì Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ëËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Ëââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤. ìâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡ì Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ë¡Åââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å그를 ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¨ê¹âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬         {             LogManager::instance().ItemLog(this, vid, vnum, "REMOVE", hint);         }         else if (oldCount != item->GetCount())         {             snprintf(hint + len, sizeof(hint) - len, " %u", oldCount - 1);             LogManager::instance().ItemLog(this, vid, vnum, "USE_ITEM", hint);         }         return (ret);     }     else         return UseItemEx(item, DestCell); }
Tekrar aratılır:
Kod:
void CHARACTER::AutoRecoveryItemProcess(const EAffectTypes type)

İçine eklenir;
Kod:
quest::CQuestManager& q = quest::CQuestManager::instance();    quest::PC* pPC = q.GetPC(GetPlayerID()); if (pPC->GetFlag("wsdeyim"))         return;
--------------------------

pvp.cpp açılır-aratılır:
Kod:
void CPVPManager::Insert(LPCHARACTER pkChr, LPCHARACTER pkVictim)

Komple değiştirilir;

Kod:
void CPVPManager::Insert(LPCHARACTER pkChr, LPCHARACTER pkVictim) {     quest::CQuestManager& q = quest::CQuestManager::instance();     quest::PC* pPC = q.GetPC(pkChr->GetPlayerID());     quest::PC* pPCc = q.GetPC(pkVictim->GetPlayerID());          if (pkChr->IsDead() || pkVictim->IsDead())         return;     CPVP kPVP(pkChr->GetPlayerID(), pkVictim->GetPlayerID());     CPVP * pkPVP;     if ((pkPVP = Find(kPVP.m_dwCRC)))     {         if (pkPVP->Agree(pkChr->GetPlayerID()))         {             if (pPC->GetFlag("giriyom") || pPCc->GetFlag("giriyom"))             {             }             else             {                 pkVictim->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%sëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åê³¼ìËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²° ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Åâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ!"), pkChr->GetName());                 pkChr->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%sëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åê³¼ìËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²° ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Åâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ!"), pkVictim->GetName());             }             if (pPC->GetFlag("giriyom") || pPCc->GetFlag("giriyom"))             {                                  //PASSES_PER_SEC(3);                 pkChr->potsuzwsblack();                 pkVictim->potsuzwsblack();                 pPC->SetFlag("wsdeyim", 1);                 pPCc->SetFlag("wsdeyim", 1);                 pPC->SetFlag("giriyom", 0);                 pPCc->SetFlag("giriyom", 0);             }         }         return;     }     pkPVP = M2_NEW CPVP(kPVP);     pkPVP->SetVID(pkChr->GetPlayerID(), pkChr->GetVID());     pkPVP->SetVID(pkVictim->GetPlayerID(), pkVictim->GetVID());     m_map_pkPVP.insert(map<DWORD, CPVP *>::value_type(pkPVP->m_dwCRC, pkPVP));     m_map_pkPVPSetByID[pkChr->GetPlayerID()].insert(pkPVP);     m_map_pkPVPSetByID[pkVictim->GetPlayerID()].insert(pkPVP);     pkPVP->Packet();     char msg[CHAT_MAX_LEN + 1];     snprintf(msg, sizeof(msg), LC_TEXT("%sëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åì´ ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²°ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹ ì²ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ íââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬ÅâËâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤. ìÅ ¹ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢íââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åë ¤ë©´ ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²°ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ìËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å를 íââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¸ìÅ¡ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬."), pkChr->GetName());     if (pPC->GetFlag("giriyom") || pPCc->GetFlag("giriyom"))     {         pkVictim->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%s sana potsuz vs istegi gonderdi"), pkChr->GetName());         pkChr->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%s'ye potsuz vs istegi"), pkVictim->GetName());     }     else     {         pkVictim->ChatPacket(CHAT_TYPE_INFO, msg);         pkChr->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%sìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²Åâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ê²°ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹ ì²ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ íââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬ÅâËâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."), pkVictim->GetName());     }     // NOTIFY_PVP_MESSAGE     LPDESC pkVictimDesc = pkVictim->GetDesc();     if (pkVictimDesc)     {         TPacketGCWhisper pack;         int len = MIN(CHAT_MAX_LEN, strlen(msg) + 1);         pack.bHeader = HEADER_GC_WHISPER;         pack.wSize = sizeof(TPacketGCWhisper) + len;         pack.bType = WHISPER_TYPE_SYSTEM;         strlcpy(pack.szNameFrom, pkChr->GetName(), sizeof(pack.szNameFrom));         TEMP_BUFFER buf;         buf.write(&pack, sizeof(TPacketGCWhisper));         buf.write(msg, len);         pkVictimDesc->Packet(buf.read_peek(), buf.size());     }         // END_OF_NOTIFY_PVP_MESSAGE }


----------------------------
cmd_general.cpp açılır-aratılır:
Kod:
ACMD(do_pvp)

Üstüne eklenir;

Kod:
ACMD(do_potsuzws) {         if (ch->GetArena() != NULL || CArenaManager::instance().IsArenaMap(ch->GetMapIndex()) == true)     {         ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë ¨ì¥ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâ ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ìÅ¡©íââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¢ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Åìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤ ìËâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ËÅââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åââââââââ¬Å¡¬Å¡¬Å¡¬Åââââââ¬Å¡¬Å¡¬Åââââ¬Å¡¬Åââ¬Å ìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬âââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ìÅ µëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));         return;     }     char arg1[256];     one_argument(argument, arg1, sizeof(arg1));     DWORD vid = 0;     str_to_number(vid, arg1);     LPCHARACTER pkVictim = CHARACTER_MANAGER::instance().Find(vid);     quest::CQuestManager& q = quest::CQuestManager::instance();     quest::PC* pPC = q.GetPC(ch->GetPlayerID());     quest::PC* pPCc = q.GetPC(pkVictim->GetPlayerID());     if (!pkVictim)         return;     if (pkVictim->IsNPC())         return;     if (pkVictim->GetArena() != NULL)     {         pkVictim->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ìÆâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë°©ì´ ëÅâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬¢ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ë ¨ì¤ââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ËÅâââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Åâââââââââ¬Å¡¬Å¡¬Å¡¬Åâââââââ¬Å¡¬Å¡¬Åâââââ¬Å¡¬Åâââ¬Åâìââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¦ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹Ëâââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬ ëââââââââââââââ¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬Å¡¬¹¤."));         return;     }          pPC->SetFlag("giriyom", 1);     pPCc->SetFlag("giriyom", 1);          CPVPManager::instance().Insert(ch, pkVictim); }

cmd.cpp açılır-aratılır:
Kod:
ACMD(do_pvp);

Altına eklenir;
Kod:
ACMD(do_potsuzws);

Tekrar aratılır:
Kod:
{ "pvp",        do_pvp,            0,            POS_DEAD,    GM_PLAYER    },

Altına Eklenir;
Kod:
{ "potsuzws",        do_potsuzws,            0,            POS_DEAD,    GM_PLAYER    },

---------------
char.cpp açılır-sonuna eklenir;
Kod:
void CHARACTER::potsuzwsblack() {     ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Potsuz ws basladi!"));     ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Pot kullanilamayacak!")); }

-----------
char.h açılır-aratılır:
Kod:
void            StartAffectEvent();

Altına eklenir;
Kod:
void            potsuzwsblack();

-------------
Char_battle.cpp açılır-aratılır:

Bunun üstüne eklenir;

Kod:
quest::CQuestManager& q = quest::CQuestManager::instance();        quest::PC* pPC = q.GetPC(GetPlayerID());         quest::PC* pPCc = q.GetPC(pkKiller->GetPlayerID());         if (isAgreedPVP || isDuel)         {//blackdragonx61             if(pPC->GetFlag("wsdeyim") && pPCc->GetFlag("wsdeyim"))             {                 pkKiller->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%s isimli oyuncuyu potsuz vs'de yendin!"), GetName());                 ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%s isimli oyuncu seni potsuz vs'de yendi!"), pkKiller->GetName());                 EffectPacket(SE_SAVAS_KAYBET);                 pPC->SetFlag("wsdeyim", 0);                 pPCc->SetFlag("wsdeyim", 0);             }         }


SRC BİTTİ
------------------
uitarget.py açılır-aratılır:
Kod:
localeInfo.TARGET_BUTTON_EMOTION_ALLOW,

Altına eklenir;

Kod:
"Potsuz Vs",         "Potsuz İntik.",

Tekrar aratılır:
Kod:
self.buttonDict[localeInfo.TARGET_BUTTON_FIGHT].SetEvent(ui.__mem_func__(self.OnPVP))

Altına Eklenir;

Kod:
self.buttonDict["Potsuz Vs"].SetEvent(ui.__mem_func__(self.OnPotsuz))         self.buttonDict["Potsuz İntik."].SetEvent(ui.__mem_func__(self.OnPotsuz))

Tekrar aratılır:
Kod:
self.showingButtonList.append(self.buttonDict[localeInfo.TARGET_BUTTON_FIGHT])

Altına eklenir;
Kod:
self.showingButtonList.append(self.buttonDict["Potsuz Vs"])

Tekrar aratılır:
Kod:
def OnPVP(self):

Altına eklenir;

Tekrar aratılır:
Kod:
self.__HideButton(localeInfo.TARGET_BUTTON_FIGHT)

Altına eklenir;
Kod:
self.__HideButton("Potsuz Vs")

Tekrar aratın:
Kod:
if player.IsRevengeInstance(self.vid):

Komple değiştirin;

Kod:
if player.IsRevengeInstance(self.vid):                 self.__HideButton(localeInfo.TARGET_BUTTON_FIGHT)                 self.__HideButton("Potsuz Vs")                 self.__ShowButton(localeInfo.TARGET_BUTTON_AVENGE)                 self.__ShowButton("Potsuz İntik.")             elif player.IsChallengeInstance(self.vid):                 self.__HideButton(localeInfo.TARGET_BUTTON_FIGHT)                 self.__HideButton("Potsuz Vs")                 self.__ShowButton(localeInfo.TARGET_BUTTON_ACCEPT_  FIGHT)             elif player.IsCantFightInstance(self.vid):                 self.__HideButton(localeInfo.TARGET_BUTTON_FIGHT)                 self.__HideButton("Potsuz Vs")             if not player.IsSameEmpire(self.vid):                 self.__HideButton(localeInfo.TARGET_BUTTON_INVITE_  PARTY)                 self.__HideButton(localeInfo.TARGET_BUTTON_FRIEND)                 self.__HideButton(localeInfo.TARGET_BUTTON_FIGHT)                 self.__HideButton("Potsuz Vs")

uitarget.py'nin sonuna ekleyin gerçeten sonuna altında bir şey olmasın!

----------


Kod:
class Component:     def TextLine(self, parent, textlineText, x, y, color):         textline = ui.TextLine()         if parent != None:             textline.SetParent(parent)         textline.SetPosition(x, y)         if color != None:             textline.SetFontColor(color[0], color[1], color[2])         textline.SetText(textlineText)         textline.Show()         return textline     def RGB(self, r, g, b):         return (r*255, g*255, b*255)              def ExpandedImage(self, parent, x, y, img):         image = ui.ExpandedImageBox()         if parent != None:             image.SetParent(parent)         image.SetPosition(x, y)         image.LoadImage(img)         image.Show()         return image

--------------------------
constinfo.py'ye ekleyin
Kod:
sarirenk="|cffFDD017|H|h"

--------------------------

Kod:
Pvp.cpp ye ekleyin başlara#include "questmanager.h"
Locale_string.txt'ye ekleyin

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Gui'yi ayrı py'ye koyacaktım o zaan koymadım olduğu gibi veriyorum.
Not:Bazı yerlerde acce'de ekli kaldırın, python'da onaylı vs ekli ona göre eklenti yapın.
Eksik varsa hata vs. söyleyin.
Bunuda root'a atın


Bir dua yeterlidir,
Herkese teşekkürler.
KANIT:

Potsuz Sistem Nedir?
Potsuz sistem, Metin2 özel sunucularında oyun içinde karakterlerin sağlık veya mana yenileme potası kullanmadan savaşabilmelerini sağlayan bir sistemdir. Bu sistem, genellikle PvP odaklı sunucularda tercih edilir. Oyuncuların daha stratejik ve beceriye dayalı bir oyun deneyimi yaşamasını sağlar. Klasik sistemlerde potasyon kullanımı ile karakterlerin sağlığı veya manası kolayca yenilenirken, potsuz sistemde bu durum farklı mekaniklerle sağlanır.

C++ Tarafında Potsuz Sistem Uygulaması
Metin2 özel sunucularında C++ tarafında potsuz sistem uygulamak, oyun sunucusunun 'game' modülünde değişiklik yapılmasını gerektirir. Bu sistemde karakterlerin sağlığını ve manasını artırmak için belirli aralıklarla otomatik yenileme fonksiyonları yazılır. Bu fonksiyonlar, oyuncu hareket etmiyorsa veya hasar almıyorsa aktif olabilir. Örneğin, karakter bir süre hareketsiz kalırsa sağlığı belirli bir oranda otomatik olarak yenilenir. Bu tarz uygulamalar, C++ tabanlı 'src' dosyalarında düzenlenerek entegre edilir.

Python Tarafında GUI ile Potsuz Ayarları
Python ile yazılmış 'py root' dosyalarında, kullanıcı arayüzü (GUI) üzerinden potsuz sistem ayarlarını değiştirmek mümkündür. Bu ayarlar genellikle 'uiscript' dosyaları ile oyun içi menüye entegre edilir. Örneğin, bir pencere aracılığıyla sağlık yenileme süresi, mananın otomatik dolma oranı gibi ayarlar yapılandırılabilir. Python GUI kütüphaneleri bu işlem için idealdir ve 'martysama' gibi geliştirici dost sistemlerle entegre çalışabilir.

Avantajları ve Dezavantajları
Potsuz sistem, PvP deneyimini artırır çünkü oyuncular potasyon kullanımına dikkat etmek zorunda kalmaz. Ancak bazı oyuncular için bu sistem oyunun stratejik yönünü artırırken, bazıları için zorlayıcı olabilir. C++ ve Python dillerinde yapılan geliştirmelerle bu sistemler daha esnek hale getirilebilir. Örneğin, belirli harita bölgelerinde potsuz geçerli olmayabilir ya da belirli itemlerle desteklenebilir.

Sistemin Sunucu Performansına Etkisi
Potsuz sistem, sunucu tarafında sürekli çalışan fonksiyonlar içerdiğinden, doğru optimize edilmezse performans sorunlarına neden olabilir. Özellikle çok oyunculu ortamlarda bu fonksiyonlar her karakter için ayrı ayrı çalıştığı için CPU yükü artabilir. Bu nedenle, C++ kodlarında bu fonksiyonlar optimize edilmeli ve gerekirse zamanlayıcılar (timer) ile sınırlanmalıdır. Python tarafında da benzer şekilde bu işlemler minimum seviyede tutulmalı ve GUI üzerinden kontrol edilebilmelidir.


What is a Potsuz System?
The potsuz system is a feature in Metin2 private servers that allows players to fight without consuming health or mana potions. This system is commonly preferred in PvP-oriented servers. It provides players with a more strategic and skill-based gaming experience. In traditional systems, character health or mana can easily be restored through potion usage, whereas in the potsuz system, this is handled through different mechanics.

Implementing Potsuz System in C++
Implementing a potsuz system on Metin2 private servers requires modifications in the 'game' module of the server. In this system, functions are written to automatically restore player health and mana at certain intervals. These functions may activate only when the player is not moving or taking damage. For example, if a character remains idle for a certain period, its health will automatically regenerate by a specific percentage. Such implementations are integrated by editing C++ based 'src' files.

GUI-Based Potsuz Settings in Python
In Python-based 'py root' files, it is possible to modify potsuz system settings through a user interface (GUI). These settings are typically integrated into the in-game menu via 'uiscript' files. For instance, parameters such as health regeneration delay and mana auto-recharge rate can be configured through a window. Python GUI libraries are ideal for these tasks and can work seamlessly with developer-friendly systems like 'martysama'.

Advantages and Disadvantages
The potsuz system enhances the PvP experience since players no longer have to worry about potion usage. However, while some players find this system adds strategy to gameplay, others may find it challenging. By developing in C++ and Python, these systems can become more flexible. For example, the potsuz effect might not apply in certain map areas or could be supported by specific items.

Impact on Server Performance
Since the potsuz system involves continuously running functions on the server side, it may cause performance issues if not properly optimized. Especially in multiplayer environments, these functions run separately for each character, which can increase CPU load. Therefore, C++ code should be optimized and possibly limited with timers. On the Python side, similar precautions should be taken to keep operations minimal and controllable through the GUI.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Geri
Üst Alt