Çözüldü Eventten Elde edilen item

  • Konuyu açan Konuyu açan mnyk2070
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 4
  • Gösterim Gösterim 575
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

mnyk2070

MT Üye
MT Üye
Editör
Mesaj
394
Çözümler
11
Beğeni
134
Puan
499
Ticaret Puanı
0
merhaba arkadaşlar şöyle bir sorum var oyunda etkinlik vakti geldiğinde verilen itemler genelde canavardan düşüyor ben bunu metinden düşmesini nasıl sağlayabilirim
Lua (Quest):
Genişlet Daralt Kopyala
quest event_system begin
    state start begin
        -- Kill
        when kill with not npc.is_pc() begin
            -- ayisigi
            if game.get_event_flag("2017_moon_drop") > 0 then
                local prob = number(1,900)
                if npc.get_level() >= pc.get_level() - 10 then
                    if prob <= 10 then
                        game.drop_item_with_ownership(50011,1)
                    end
                end          
            end
 
Çözüm
Her kesilen metinden bir tane atmasını istiyor musunuz?

Örnek olması için ufak bir örnek vermek istiyorum. Siz kendi oyununuza göre düzenleyebilirsiniz. Sadece mantığı anlamanız açısından.
Lua (Quest):
Genişlet Daralt Kopyala
if game.get_event_flag("2017_moon_drop") > 0 then
    if npc.get_race() >= 8001 and npc.get_race() <= 8027 then
        game.drop_item_with_ownership(50011,1)
    end
end

Her kesilen metinden bir tane atacak. Eğer karakter leveli kontrol eklemek isterseniz. Mesela 50 level bi oyuncu 5 level metinden düşürmeyecek şekilde. Şöyle bir kontrol daha ekleyebilirsiniz.
Lua (Quest):
Genişlet Daralt Kopyala
if game.get_event_flag("2017_moon_drop") > 0 then
    if npc.get_race() >= 8001 and npc.get_race() <= 8027 and npc.get_level() >= pc.get_level() - 15 then...
Her kesilen metinden bir tane atmasını istiyor musunuz?

Örnek olması için ufak bir örnek vermek istiyorum. Siz kendi oyununuza göre düzenleyebilirsiniz. Sadece mantığı anlamanız açısından.
Lua (Quest):
Genişlet Daralt Kopyala
if game.get_event_flag("2017_moon_drop") > 0 then
    if npc.get_race() >= 8001 and npc.get_race() <= 8027 then
        game.drop_item_with_ownership(50011,1)
    end
end

Her kesilen metinden bir tane atacak. Eğer karakter leveli kontrol eklemek isterseniz. Mesela 50 level bi oyuncu 5 level metinden düşürmeyecek şekilde. Şöyle bir kontrol daha ekleyebilirsiniz.
Lua (Quest):
Genişlet Daralt Kopyala
if game.get_event_flag("2017_moon_drop") > 0 then
    if npc.get_race() >= 8001 and npc.get_race() <= 8027 and npc.get_level() >= pc.get_level() - 15 then
        game.drop_item_with_ownership(50011,1)
    end
end
 
Çözüm
Lua (Quest):
Genişlet Daralt Kopyala
    if npc.get_race() >= 8001 and npc.get_race() <= 8027 and npc.get_level() >= pc.get_level() - 15 then

npc.race'i 8001'e eşit ve büyük ile 8027'ye eşit ve küçüğü arasındaki;
leveli, leveline eşit veya 15 aşşağısı ise

120 level bi adam 120/105 levellik metinden 1 tane ayışığı düşürüyor. (1.5 veya 2.5m canı olan metinler)
15 level bi adam, 1 levellikten 1 tane ayışığı düşürüyor.

Bu şekilde quest yazılmaz, oyunun dengesini kaybettirir :D
1-45 / 45-90 / 90-120 arası için ayrı ayrı quest yazılmalı.
Konunun sahibi örnek queste göre düzenleme yapip eklerse daha iyi olur oyunu için.
 
Sadece bir örnek. Dediğiniz gibi oyun yapısına göre düzeltmesi gerekiyor :)
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst