- Katılım
- 29 Eki 2011
- Konular
- 52
- Mesajlar
- 638
- Çözüm
- 59
- Online süresi
- 2mo 15d
- Reaksiyon Skoru
- 237
- Altın Konu
- 0
- TM Yaşı
- 14 Yıl 7 Ay 12 Gün
- Başarım Puanı
- 181
- MmoLira
- 12,919
- DevLira
- 18
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
Paylaşım için teşekkürler. Bu sistemin tek bir sorunu var agresif moblar yakınınzda spawnlanınca direkt saldırmaya başladıkları için cesare pelerini bassanız bile yanınıza gelmiyor. Tabi bunu sorun olarak görmeyenler de vardır orası değişir.
- Katılım
- 3 Eki 2017
- Konular
- 1,673
- Mesajlar
- 18,445
- Çözüm
- 48
- Online süresi
- 9mo 24d
- Reaksiyon Skoru
- 8,721
- Altın Konu
- 297
- Başarım Puanı
- 374
- MmoLira
- 41,550
- DevLira
- 753
Paylaşım için teşekkürler.
- Katılım
- 19 Eki 2014
- Konular
- 90
- Mesajlar
- 1,359
- Çözüm
- 1
- Online süresi
- 21d 20h
- Reaksiyon Skoru
- 306
- Altın Konu
- 2
- TM Yaşı
- 11 Yıl 7 Ay 21 Gün
- Başarım Puanı
- 179
- MmoLira
- 6,415
- DevLira
- 6
Paylaşım için teşekkürler.
- Katılım
- 28 Eyl 2024
- Konular
- 1
- Mesajlar
- 2
- Online süresi
- 3d 7h
- Reaksiyon Skoru
- 0
- Altın Konu
- 0
- TM Yaşı
- 1 Yıl 8 Ay 9 Gün
- Başarım Puanı
- 15
- MmoLira
- 375
- DevLira
- 0
a
hocam tab ayarlarını yapamıyorum hazır dosya verseniz veya yardımcı olacak biriÖncelikle Okçular Dibimde Sistemini Paylaşan Değerli Üyemiz @A99 Arkadaşımıza Teşekkür Ediyorum.
Onun Paylaşmız Olduğu İşleyiş'te Eğer 72000 Kodlu İtem'i Kullanırsanız AttackRanger(); Fonksiyonun Çalışmasını Sağlarsınız.
Öncelikle Cesaret Pelerini Kullanıp Ardından Canavarlar Yanınıza Geldikten Sonra Bu Sefer 7200 Kodlu İtem'e Tıklayıp Size Uzaktan Vuran Canavarları Dibinize Çağırmış Olacaksınız.
Bu Konuda Şimdi Affect Üzerinden Kullanılmasını Yapacağız.
GameSource/Affect.h Açalım ve Aratın:
AFFECT_QUEST_START_IDX = 1000
Üstüne Ekleyin:
Kod:#if defined(ENABLE_ATTRACT_RANGER) AFFECT_CALL_ARCHER = 757, #endif
Şimdi Genel İşleyişi Yapalım
GameSource/Char_İtem.cpp Açın ve Aratın:
Kod:case UNIQUE_ITEM_CAPE_OF_COURAGE: case UNIQUE_ITEM_CAPE_OF_COURAGE_ORIGINAL: case REWARD_BOX_UNIQUE_ITEM_CAPE_OF_COURAGE:
Üstüne Ekleyin:
Kod:#if defined(ENABLE_ATTRACT_RANGER) case 72000: { if (FindAffect(AFFECT_CALL_ARCHER)) { ChatPacket(CHAT_TYPE_INFO, LC_TEXT("BU_ETKI_DEVAM_EDIYOR")); return false; } AddAffect(AFFECT_CALL_ARCHER, POINT_NONE, 0, AFF_NONE, item->GetValue(0), 0, true); ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Archers can now come to you.")); item->SetCount(item->GetCount() - 1); } break; #endif
Burada Ne Yapmış Bulunduk, 72000 Kodlu İtem'ı Kullandığımızda Eğer Karakterimiz de Bu Affect Var İse "Zaten Bu Efekt Sende Var" Gibi Oyuna Bir Mesaj Göndermesini Sağladık ve İşlemi Anlayacağınız Şekilde Söylemem Gerekirse Sonlandırdık ki; Altındaki Kodların Çalışmasını Engelledik.
Tamam Peki Eğer Karakterde Bu Efekt Yok İse O Zaman AddAffect İle Affect.h'deki Sabit Sayımızı Veriyoruz ve Bu Efektin Karakterde Kalacağı Süreyi İtemin(Protodaki) Value0 Kısmından Almasını İstiyoruz.
Sonra İtemi, Kişinin Var Olan İtem Sayısından 1 Adet Silmesini İstiyoruz.
Buraya Kadar Herşey İyi ve Bu Sayede Efekti Vermiş Olduk.
Şimdi Oyuncu Cesaret Pelerini'ni Kullandığında Eğer Bu Efekt Var İse Ona Uzaktan Vuran Canavarlarıda Dibine Çağırmasını Sağlayalım.
GameSource/Char_İtem.cpp Açın ve Aratın:
Kod:case UNIQUE_ITEM_CAPE_OF_COURAGE: case UNIQUE_ITEM_CAPE_OF_COURAGE_ORIGINAL: case REWARD_BOX_UNIQUE_ITEM_CAPE_OF_COURAGE: { AggregateMonster();
Ve Şu Şekilde Değiştirin (Yada Kendinize Göre Düzenleyin)
Kod:case UNIQUE_ITEM_CAPE_OF_COURAGE: case UNIQUE_ITEM_CAPE_OF_COURAGE_ORIGINAL: case REWARD_BOX_UNIQUE_ITEM_CAPE_OF_COURAGE: { AggregateMonster(); #if defined(ENABLE_ATTRACT_RANGER) if (FindAffect(AFFECT_CALL_ARCHER)) AttractRanger(); #endif #ifdef ENABLE_GETCOUNT item->SetCount(item->GetCount() - 1); #endif } break;
Sınırsız Cesaret Pelerini Kullanıyorsanız ENABLE_GETCOUNT ve Altındaki endif'e Kadar Silin veya Bu Tanım Sizin CommonDefine'nizde veya Service.h'nizde Varsa ENABLE_GETCOUNT İsmini Değiştirin.
Eğer Cesaret Pelerinin Her Kullandığınızda -1 Adet Silinmesini İstiyorsanız ENABLE_GETCOUNT ve Altındaki endi'i Silin. veya Bu Tanımı CommonDefines'e veya Service.h'ye Ekleyin.
CommonDefines.h veya Service.h Ekleyin:
#define ENABLE_ATTRACT_RANGER
Kusura Bakmayın Her Kesim İçin Açıklayıcı Şekilde Yazıyorum.
Şimdi GameSource Derleyebilirsiniz.
* CLIENT SOURCE *
InstanceBase.h#defineAratalım:
Kod:NEW_AFFECT_QUEST_START_IDX = 1000,
Üstüne Ekleyelim:
Kod:#if defined(ENABLE_ATTRACT_RANGER) AFFECT_CALL_ARCHER = 757, #endif
PythonCharacterModule.cpp Açalım ve En Alta Ekleyelim:
Kod:#if defined(ENABLE_ATTRACT_RANGER) PyModule_AddIntConstant(poModule, "AFFECT_CALL_ARCHER", CInstanceBase::AFFECT_CALL_ARCHER); #endif
PythonApplicationModule.cpp Açalım ve En Alta Ekleyelim:
Kod:#ifdef ENABLE_ATTRACT_RANGER PyModule_AddIntConstant(poModule, "ENABLE_ATTRACT_RANGER", true); #else PyModule_AddIntConstant(poModule, "ENABLE_ATTRACT_RANGER", false); #endif
Locale_inc.h Açın ve Ekleyin:
#define ENABLE_ATTRACT_RANGER
ClientSource Derleyebilirsiniz.
Root/uiAffectShower.py Açın ve Aratın:
Kod:if app.ENABLE_DRAGON_SOUL_SYSTEM: AFFECT_DATA_DICT[chr.NEW_AFFECT_DRAGON_SOUL_DECK1] = (localeInfo.TOOLTIP_DRAGON_SOUL_DECK1, "d:/ymir work/ui/dragonsoul/buff_ds_sky1.tga") AFFECT_DATA_DICT[chr.NEW_AFFECT_DRAGON_SOUL_DECK2] = (localeInfo.TOOLTIP_DRAGON_SOUL_DECK2, "d:/ymir work/ui/dragonsoul/buff_ds_land1.tga")
Altına Ekleyelim:[/COLOR#define]
Kod:if app.ENABLE_ATTRACT_RANGER:[/COLOR][/SIZE][/CENTER] [SIZE=4][COLOR=rgb(204, 204, 204)][CENTER] AFFECT_DATA_DICT[chr.AFFECT_CALL_ARCHER] = (localeInfo.TOOLTIP_AFFECT_CALL_ARCHER, "d:/ymir work/ui/skill/common/affect/call_archer.sub")
Lütfen Buradaki "d:/ymir work/ui/skill/common/affect/call_archer.sub" Sub İsmini Değiştirin
Locale_Game.txt Ekleyin:
Kod:TOOLTIP_AFFECT_CALL_ARCHER Bağları Çöz SNA
Locale_Game -> Bağları Çöz İsmini Dilediğiniz Gibi Değiştirebilirsiniz. Sol Yukarıya Gelen Efektin Üstüne Geldiğinizde Çıkacak Yazı.
Örnek: Bağları Çöz (Kalan Süre: 15 gün)
locale ve root Paketleyip Oyuna Girebilirsiniz.
İtem_Names ve Proto'ya İtemi Eklemeyi Unutmayın. Efektin Karakterde Ne Kadar Sürede Kalacağını İtem'in Value0 Kısmına Eklemeyi Unutmayın.
Saniye Cinsinden Örnek 100 Saniye Kalmasını İstiyorsanız Value0 -> 100
KANIT:
Ekli dosyayı görüntüle 94017
VİDEO:
1: Efekt Karakter'de Varken
![]()
2. Efekt Karakterde Yokken
![]()
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 1
- Görüntüleme
- 47
- Cevaplar
- 14
- Görüntüleme
- 822
- Cevaplar
- 8
- Görüntüleme
- 846
- Cevaplar
- 22
- Görüntüleme
- 3K
- Cevaplar
- 18
- Görüntüleme
- 5K




