Metin2 Quest Renklendirme (Vanilla) Mantığı

Whistle

Ruhsuz :/
Kurucu
Geliştirici
Yardımsever Üye
Mesaj
11.941
Çözümler
567
Beğeni
13.659
Puan
5.915
Ticaret Puanı
2
Merhaba arkadaşlar,
Biliyorsunuz ki forumlarda quest renklendirme fonksiyonları paylaşılıyor. Her ne kadar bu paylaşılan fonksiyonlar kullanımı kolaylaştırsa da renk seçeneği konusunda özgürlüğünüzü kısıtlayabiliyor. Oysaki Metin2'nin hiç el değmemiş halinde (vanilla) aslında quest renklendirme mantığı oyuna entegre edilmiş durumda.

Mesela say_reward() diye bir fonksiyon kullandığınız zaman. Turuncumsu bir yazı quest ekranında yazar. Oysaki bu normalde say fonksiyonudur.
Örnek ile göstereyim. :)
Metin2 filesinin questlerin bulunduğu dizine gelip şu dosyayı açın: questlib.lua. Daha sonra şöyle bir satır bulacaksınız;
Lua (Quest):
Genişlet Daralt Kopyala
function say_reward(name) say(color256(255, 200, 200)..name..color256(196, 196, 196)) end

İşte gördüğünüz gibi. Normalde RGB renk kodlarını kullanarak renklendirme yapılmış. Sizde renklendirme istediğiniz bir kısmı quest kodlarken şu şekilde kullanabilirsiniz.

Lua (Quest):
Genişlet Daralt Kopyala
say(color256(64,224,208) .. "Merhaba dünya[ENTER]Yeni yazi rengi nasil olmus? :)" .. color256(196, 196, 196))

Gördüğünüz gibi. Eğer sizde bunu uygularsanız yazının rengi turkuaz renkte olacaktır.

Birde bazılarınız soracaktır. Neden fonksiyonunun bitiminde şunu kullandın;
Lua (Quest):
Genişlet Daralt Kopyala
color256(196, 196, 196)
Normalde Metin2'de quest penceresini açıldığı zaman yazan yazının rengi 196,196,196 renk koduna aittir. Siz sonuna bunu eklemezseniz yazının rengi beyaz olur. Bu yüzden sonuna bunu ekleyerek yazının rengini normal haline çevirebilirsiniz..

Şimdi soracaksınız RGB renk kodlarını nereden öğrenebilirim diye. RGB renk kodlarını photoshop programından seçtiğiniz renkte yazan bilgilerden öğrenebilirsiniz. Yada şuna benzer siteleri kullanabilirsiniz;
Linkleri görebilmek için giriş yap veya kayıt ol.


Evet arkadaşlar. Metin2 quest renklendirme mantığını anladığınıza göre daha rahat kullanım için kendinize ekstra quest funksiyonları yazabilirsiniz.
Forumlarda paylaşılan örnek;
Lua (Quest):
Genişlet Daralt Kopyala
function say_color(color,text)
    if color=="blue" then
        say(color256(0, 0, 255)..text..color256(196, 196, 196))
    elseif color == "green" then
        say(color256(0, 255, 0)..text..color256(196, 196, 196))
    elseif color == "red" then
        say(color256(255, 0, 0)..text..color256(196, 196, 196))
    elseif color == "yellow" then
        say(color256(255, 255, 0)..text..color256(196, 196, 196))
    elseif color == "white" then
        say(color256(255, 255, 255)..text..color256(196, 196, 196))
    elseif color == "black" then
        say(color256(0, 0, 0)..text..color256(196, 196, 196))
    elseif color == "cyan" then
        say(color256(0, 255, 255)..text..color256(196, 196, 196))
    elseif color == "pink" then
        say(color256(255, 0, 255)..text..color256(196, 196, 196))
    elseif color == "orange" then
        say(color256(255, 145, 0)..text..color256(196, 196, 196))
    elseif color == "purple" then
        say(color256(100, 0, 255)..text..color256(196, 196, 196))
    else
        say(color256(196, 196, 196)..text..color256(196, 196, 196))
    end
end

Server filesinizin quest dizinine girip quest_functions isimli dosyayı açıp şu değeri de ekleyin;
Kod:
Genişlet Daralt Kopyala
say_color

Eklenen fonksiyonun örnek kullanımı;
Lua (Quest):
Genişlet Daralt Kopyala
say_color("green","Bu quest yeşil renklidir.")

Evet bu konuda size renklendirme mantığını anlattım. İster benim gösterdiğim gibi kullanın ister örnek fonksiyondaki gibi kendinize bir kütüphane yazın. Hangisi hoşunuza giderse. :)
 
Son düzenleme:
Geri
Üst