Çözüldü Quest hakkında bknz.

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.

ThanosIsBack

Üye
Üye
Mesaj
3
Beğeni
2
Puan
290
Merhaba iyi forumlar arkadaşlar benim bir sorum olacak ben bir quest yazmak istiyorum ve yardımınıza ihtiyacım var yazmak istediğim quest şöyle bir şey mesela bir mobdan belirlediğim itemler düşecek fakat örnek veriyorum 101 mobundan 1-2-3-4 vnumlu itemler düşecek bunların random düşmesini ve 1- ile 3 arasında bir şekilde düşmesini istiyorum yani mesela bu 1-2-3-4 vnumlu itemlerden 1 adet de düşebilir diğer kesmeye 2 adet de düşebilir yada 3 adet de düşebilir tamamen random şekilde ve tamamen random belirlediğim vnumdaki itemler düşecek umarım anlamışsınızdır yardımcı olabilecek birileri var mı ?

@Whistle bakar mısınız ?
 
En son bir moderatör tarafından düzenlenmiş:
Çözüm
Şu şekilde yapabilirsiniz;
Lua (Quest):
when mob_id.kill begin
    pc.give_item2(item_id, number(1, 3))
end

mob_id => Kesilecek mobun idsi
item_id => Verilecek itemin idsi.

Yalnız bu şekilde yaparsanız her kesilen yaratıktan 1 ile 3 arası eşya verecek. Görev questlerinde ki gibi şansa bağlı olmasını isterseniz şu şekilde yapın.
Lua (Quest):
when mob_id.kill begin
    local s = number(1, 100)
    if s <= 5 then
        pc.give_item2(item_id, number(1, 3))
    end
end


Farklı farklı item düşmesini istiyorsanız metin2 geliştiricilik eğitim serisinde ki 4. Ünite, Dinamik Quest dersini izleyebilirsiniz. Çünkü aşağıda anlatacağım şey bu alana giriyor ve nasıl çalıştığını bilmeniz gerekiyor.


Sizin istediğiniz quest için örnek...
Bunu sandıklara yazıyorlardı. Örneğin 0-100 arasında 0-20 arası 1.item , 20-40 2. item, 40-60 3.item, 60-80 4.item, 80-100 5. item.
If else ile yapılıyor, quest videolarında bununla ilgili bir bilgi yoktu yanlış hatırlamıyorsam. Forumlarda quest bölümünde gez veya sunucunun questlerinde sandık questi varsa moba uyarlarsın.
Ama senin istediğin olayda bir mobdan kesinlikle bir eşya düşecek ve bu eşya 1 ile 3 arasındaysa yaparsın bu sistemi.


Bak bu anahtar ile açılan bir sandığın questi. Oyuna ekleyip çalışma mantığını kavra moba göre uyarlarsın.
 

Dosya Eklentileri

  • sandik_questi.rar
    1,5 KB · Gösterim: 122
En son bir moderatör tarafından düzenlenmiş:
Şu şekilde yapabilirsiniz;
Lua (Quest):
when mob_id.kill begin
    pc.give_item2(item_id, number(1, 3))
end

mob_id => Kesilecek mobun idsi
item_id => Verilecek itemin idsi.

Yalnız bu şekilde yaparsanız her kesilen yaratıktan 1 ile 3 arası eşya verecek. Görev questlerinde ki gibi şansa bağlı olmasını isterseniz şu şekilde yapın.
Lua (Quest):
when mob_id.kill begin
    local s = number(1, 100)
    if s <= 5 then
        pc.give_item2(item_id, number(1, 3))
    end
end


Farklı farklı item düşmesini istiyorsanız metin2 geliştiricilik eğitim serisinde ki 4. Ünite, Dinamik Quest dersini izleyebilirsiniz. Çünkü aşağıda anlatacağım şey bu alana giriyor ve nasıl çalıştığını bilmeniz gerekiyor.


Sizin istediğiniz quest için örnek;
Lua (Quest):
when mob_id.kill begin
    local items = {101, 102, 103, 104}
    local s = number(1, 100)
    if s <= 5 then
        pc.give_item2(items[number(1, table.getn(items))], number(1, 3))
    end
end
 
Son düzenleme:
Çözüm
Şu şekilde yapabilirsiniz;
Lua (Quest):
when mob_id.kill begin
    pc.give_item2(item_id, number(1, 3))
end

mob_id => Kesilecek mobun idsi
item_id => Verilecek itemin idsi.

Yalnız bu şekilde yaparsanız her kesilen yaratıktan 1 ile 3 arası eşya verecek. Görev questlerinde ki gibi şansa bağlı olmasını isterseniz şu şekilde yapın.
Lua (Quest):
when mob_id.kill begin
    local s = number(1, 100)
    if s <= 5 then
        pc.give_item2(item_id, number(1, 3))
    end
end


Farklı farklı item düşmesini istiyorsanız metin2 geliştiricilik eğitim serisinde ki 4. Ünite, Dinamik Quest dersini izleyebilirsiniz. Çünkü aşağıda anlatacağım şey bu alana giriyor ve nasıl çalıştığını bilmeniz gerekiyor.


Sizin istediğiniz quest için örnek;
Lua (Quest):
when mob_id.kill begin
    local items = {101, 102, 103, 104}
    local s = number(1, 100)
    if s <= 5 then
        pc.give_item2(items[number(1, table.getn(items))], number(1, 3))
    end
end

teşekkürler bahsettiğinizi deneyeceğim olası çözümleyemediğim yerde konu altına tekrar yazarım teşekkürler.
 
Geri
Üst