- Mesaj
- 519
- Çözümler
- 32
- Beğeni
- 232
- Puan
- 609
- Ticaret Puanı
- 0
merhabalar
questsiz pet sistemi
elinde arşivinde olan varsa paylaşabilirmi rica etsem ?
questsiz pet sistemi
elinde arşivinde olan varsa paylaşabilirmi rica etsem ?
char_item.cpp açmerhabalar
questsiz pet sistemi
elinde arşivinde olan varsa paylaşabilirmi rica etsem ?
bool CHARACTER::UseItemEx (LPITEM item, TItemPos DestCell)
{
if (item->GetVnum() == 53001)
{
CPetSystem* petSystem = GetPetSystem();
CPetActor* petActor = petSystem->GetByVnum (34001);
if (petActor)
{
if (petActor->IsSummoned())
petSystem->Unsummon (34001);
else if (petSystem->CountSummoned() == 0)
petSystem->Summon (34001, item, "'s Anka Kusu", false);
else
ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !");
return true;
}
else if (petSystem)
{
if (petSystem->CountSummoned() == 0)
petSystem->Summon (34001, item, "'s Anka Kusu", false);
else
ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !");
return true;
}
}
if (item->GetVnum() == 53002)
{
CPetSystem* petSystem = GetPetSystem();
CPetActor* petActor = petSystem->GetByVnum (34002);
if (petActor)
{
if (petActor->IsSummoned())
petSystem->Unsummon (34002);
else if (petSystem->CountSummoned() == 0)
petSystem->Summon (34002, item, "'s Ren Geyigi", false);
else
ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !");
return true;
}
else if (petSystem)
{
if (petSystem->CountSummoned() == 0)
petSystem->Summon (34002, item, "'s Ren Geyigi", false);
else
ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !");
return true;
}
}
Teşekkür ederim yorumun içinchar_item.cpp aç
Arat:
Kod:bool CHARACTER::UseItemEx (LPITEM item, TItemPos DestCell) {
Altına Ekle:
Kod:if (item->GetVnum() == 53001) { CPetSystem* petSystem = GetPetSystem(); CPetActor* petActor = petSystem->GetByVnum (34001); if (petActor) { if (petActor->IsSummoned()) petSystem->Unsummon (34001); else if (petSystem->CountSummoned() == 0) petSystem->Summon (34001, item, "'s Anka Kusu", false); else ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !"); return true; } else if (petSystem) { if (petSystem->CountSummoned() == 0) petSystem->Summon (34001, item, "'s Anka Kusu", false); else ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !"); return true; } } if (item->GetVnum() == 53002) { CPetSystem* petSystem = GetPetSystem(); CPetActor* petActor = petSystem->GetByVnum (34002); if (petActor) { if (petActor->IsSummoned()) petSystem->Unsummon (34002); else if (petSystem->CountSummoned() == 0) petSystem->Summon (34002, item, "'s Ren Geyigi", false); else ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !"); return true; } else if (petSystem) { if (petSystem->CountSummoned() == 0) petSystem->Summon (34002, item, "'s Ren Geyigi", false); else ChatPacket(CHAT_TYPE_INFO, "Once evcil hayvanini gondermelisin !"); return true; } }
53001 -> peti çağıracak olan item kodu
34001 - > Petin mobvnumu
Anka Kusu - > Petin ismi
Kodu çoğaltarak petleri arttırabilirsin tek tek petleri ekleyemedim o kadar vaktim yoktu kusura bakma
Teşekkür ederim yorumun için
Fakat aradığım tam olarak bu değildi alttaki dosyadaki gibi fakat ya eksik var yada uyumsuzluk var ben bir türlü çalıştıramadım hata da almıyor
bunu tüm petler için tek tek yaptın mı gerçekten ?İstediğin yapıyı zaten oluşturmuş durumdayım ve çalışıyor sen bilirsin dostum .
Hayır tüm petler için tek tek yapmış olsam paylaştığım kod bloğu o şekilde olurdu. Ben arkadaşımızın giyilebilir pet sistemi dışında birşey istediğini düşündüm ona göre olabilecek en basit şekilde bir kod bloğu paylaştım mantıklı olan tabiki bir tablo oluşturup itemvnum,petvnum,petname gibi değişkenleri tablo içerisinden çektirmek olurdu arkadaşın işi hızlıca görülsün istediğim için bu şekilde oluşturdum. Gördüğün bir sıkıntı varsa söyleyebilirsin.bunu tüm petler için tek tek yaptın mı gerçekten ?
yok tüm petler için tek tek yaptığını düşündüğüm için öyle dedim yoksa sıkıntı yok aslında yorumda paylaştığı sistem benim fileste çalışıyordu ama onun fileste çalışmadı o yüzden başka sistem arıyor.Hayır tüm petler için tek tek yapmış olsam paylaştığım kod bloğu o şekilde olurdu. Ben arkadaşımızın giyilebilir pet sistemi dışında birşey istediğini düşündüm ona göre olabilecek en basit şekilde bir kod bloğu paylaştım mantıklı olan tabiki bir tablo oluşturup itemvnum,petvnum,petname gibi değişkenleri tablo içerisinden çektirmek olurdu arkadaşın işi hızlıca görülsün istediğim için bu şekilde oluşturdum. Gördüğün bir sıkıntı varsa söyleyebilirsin.
@xenfero aynen öyle yanlış ama Proto güncellemesi den sonra 200 e yakin pet var onun için tek tek biraz zor oluryok tüm petler için tek tek yaptığını düşündüğüm için öyle dedim yoksa sıkıntı yok aslında yorumda paylaştığı sistem benim fileste çalışıyordu ama onun fileste çalışmadı o yüzden başka sistem arıyor.
Anladım problem değilyok tüm petler için tek tek yaptığını düşündüğüm için öyle dedim yoksa sıkıntı yok aslında yorumda paylaştığı sistem benim fileste çalışıyordu ama onun fileste çalışmadı o yüzden başka sistem arıyor.
@xenfero aynen öyle yanlış ama Proto güncellemesi den sonra 200 e yakin pet var onun için tek tek biraz zor olur
giymeli değil bu pet sistemi sadece questten alıp srcye döküyor işi. questle bağını kesiyor yani.Anladım problem değil
Hata detaylarını paylaşırsan yardımcı olabilirim. Sistemi incelemedim ama sende çalışmamasının nedenini bulabiliriz. Bu sistem giymeli pet sistemimi videosu var mı ?
Tablo oluşturulabilirdi fakat arkadaş öyle kullanmayacakmış başka bir sistemden bahsediyor.Eğer kod veren arkadaşın dediği bir sistemi ekleyeceksen o şekilde ekleme büyük çılgınlık. Birtane fonksiyon yap birtane argüman ekle içine pet kodlarını ekle sonra kodu şu şekilde kullan
if (PetVnum(item->GetVnum())
Fazlaca varsa aralık belirtebilirsin yada petlerini TYPE olarak kullanabilirsin.
TYPE = ITEM_PET
SUBTYPE = NORMAL_PET
böylece yeni pet eklediğinde yeni vnum eklemene gerek kalmaz.
Kısaca sistem petler için yeni bir type ve subtype oluşturuyor ve o atadigin type değerinden vnum0 ı çekiyor ve mobu çağırıyor Hiç bir hata yada syserr vermiyor bende orda tıkandımAnladım problem değil
Hata detaylarını paylaşırsan yardımcı olabilirim. Sistemi incelemedim ama sende çalışmamasının nedenini bulabiliriz. Bu sistem giymeli pet sistemimi videosu var mı ?
Aslında ekteki sistem tam olarak böyle fakat çalıştırmadımEğer kod veren arkadaşın dediği bir sistemi ekleyeceksen o şekilde ekleme büyük çılgınlık. Birtane fonksiyon yap birtane argüman ekle içine pet kodlarını ekle sonra kodu şu şekilde kullan
if (PetVnum(item->GetVnum())
Fazlaca varsa aralık belirtebilirsin yada petlerini TYPE olarak kullanabilirsin.
TYPE = ITEM_PET
SUBTYPE = NORMAL_PET
böylece yeni pet eklediğinde yeni vnum eklemene gerek kalmaz.
Evet şimdi gördüm sanırım otopot gibi aç kapa olarak çalışıyor pet aktifse her ışınlanmada v.s tekrar tekrar çağırması gerekmiyorgiymeli değil bu pet sistemi sadece questten alıp srcye döküyor işi. questle bağını kesiyor yani.
Kısaca sistem petler için yeni bir type ve subtype oluşturuyor ve o atadigin type değerinden vnum0 ı çekiyor ve mobu çağırıyor Hiç bir hata yada syserr vermiyor bende orda tıkandım
Aslında ekteki sistem tam olarak böyle fakat çalıştırmadım
Ne tablo oluşturması kanka gözünü seveyim.Tablo oluşturulabilirdi fakat arkadaş öyle kullanmayacakmış başka bir sistemden bahsediyor.