Fethi Polat 1
Fethi Polat
TuZaKK 1
TuZaKK
xranzei 1
xranzei
Agresifizm 1
Agresifizm
Bvural41 1
Bvural41
Hikaye Ekle

Cevaplandı char_item

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

Merhabalar,

char_item de item 27989 ve 76006 Metin Taşı Dedektörü orijinal hali sınırsız kullanım vardı bunu sınırlı kullanım için bir kod buldum işe yaradı fakat.

kalan kullanım miktarını göstermiyor. ne yapa bilirim yardım eder misiniz.

Bendeki
bandicam 2024-08-19 14-19-59-899.jpg


Metin2 Tr
bandicam 2024-08-19 14-19-29-899.jpg



Kod:
                            case 27989: // 영석감지기
                            case 76006: // 선물용 영석감지기
                                {
                                    LPSECTREE_MAP pMap = SECTREE_MANAGER::instance().GetMap(GetMapIndex());

                                    if (pMap != NULL)
                                    {
                                        item->SetSocket(0, item->GetSocket(0) + 1);

                                        FFindStone f;

                                        // <Factor> SECTREE::for_each -> SECTREE::for_each_entity
                                        pMap->for_each(f);

                                        if (f.m_mapStone.size() > 0)
                                        {
                                            std::map<DWORD, LPCHARACTER>::iterator stone = f.m_mapStone.begin();

                                            DWORD max = UINT_MAX;
                                            LPCHARACTER pTarget = stone->second;

                                            while (stone != f.m_mapStone.end())
                                            {
                                                DWORD dist = (DWORD)DISTANCE_SQRT(GetX()-stone->second->GetX(), GetY()-stone->second->GetY());

                                                if (dist != 0 && max > dist)
                                                {
                                                    max = dist;
                                                    pTarget = stone->second;
                                                }
                                                stone++;
                                            }

                                            if (pTarget != NULL)
                                            {
                                                int val = 3;

                                                if (max < 10000) val = 2;
                                                else if (max < 70000) val = 1;

                                                ChatPacket(CHAT_TYPE_COMMAND, "StoneDetect %u %d %d", (DWORD)GetVID(), val,
                                                        (int)GetDegreeFromPositionXY(GetX(), pTarget->GetY(), pTarget->GetX(), GetY()));
                                            }
                                            else
                                            {
                                                ChatPacket(CHAT_TYPE_INFO, LC_TEXT("감지기를 작용하였으나 감지되는 영석이 없습니다."));
                                            }
                                        }
                                        else
                                        {
                                            ChatPacket(CHAT_TYPE_INFO, LC_TEXT("감지기를 작용하였으나 감지되는 영석이 없습니다."));
                                        }

                                        if (item->GetSocket(0) >= 6)
                                        {
                                            ChatPacket(CHAT_TYPE_COMMAND, "StoneDetect %u 0 0", (DWORD)GetVID());
                                            ITEM_MANAGER::instance().RemoveItem(item);
                                        }
                                    }
                                    break;
                                }
                                break;
 
Son düzenleme:
Çözüm
root > uitooltip.py dosyanızda böyle bir kodvar mı bir kontrol eder misiniz ?

[CODE title="root > uitooltip.py içinde arat"] if 27989 == itemVnum or 76006 == itemVnum:
if 0 != metinSlot:
useCount = int(metinSlot[0])

self.AppendSpace(5)
self.AppendTextLine(localeInfo.TOOLTIP_REST_USABLE_COUNT % (6 - useCount), self.NORMAL_COLOR)[/CODE]
root > uitooltip.py dosyanızda böyle bir kodvar mı bir kontrol eder misiniz ?

[CODE title="root > uitooltip.py içinde arat"] if 27989 == itemVnum or 76006 == itemVnum:
if 0 != metinSlot:
useCount = int(metinSlot[0])

self.AppendSpace(5)
self.AppendTextLine(localeInfo.TOOLTIP_REST_USABLE_COUNT % (6 - useCount), self.NORMAL_COLOR)[/CODE]
 
Çözüm
root > uitooltip.py dosyanızda böyle bir kodvar mı bir kontrol eder misiniz ?

[CODE title="root > uitooltip.py içinde arat"] if 27989 == itemVnum or 76006 == itemVnum:
if 0 != metinSlot:
useCount = int(metinSlot[0])

self.AppendSpace(5)
self.AppendTextLine(localeInfo.TOOLTIP_REST_USABLE_COUNT % (6 - useCount), self.NORMAL_COLOR)[/CODE]

Evet


Kod:
            if 27989 == itemVnum or 76006 == itemVnum:
                if 0 != metinSlot:
                    useCount = int(metinSlot[0])
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst