Neler yeni

Foruma hoş geldin, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Türkiye'nin İlk ve tek FiveM forum adresi

Forum adresimize hoş geldin FiveMTürk olarak amacımız siz değerli kullanıcılarımıza en aktif fikir ve paylaşım platformu sunmak bir yana en güvenilir şekilde alışveriş yapabileceğiniz bir platform sunmaktır.
DF DF
DF DF
DF DF

Rehber Giriş | Lua Eğitici Konu Serisi

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Aspect

Smooth seas do not make good sailors
FT Kullanıcı
Katılım
4 yıl 10 ay 8 gün
Mesajlar
1,397
Discord
Aspect#5130
Merhaba, lafı uzatmadan sadete geleceğim ders direkt olarak utku utku ' nun YouTube' de paylaştığı videosunun yazılı biçimidir hali hazırda video' lu halini izlemek isteyenler uzantıdan videoyu izleyebilirler konudan devam edicekler içinse konun içinde kendi yaptığım örnekler ve birkaç ekleme bulunmaktadır.
Paylaşma sebebim benim gibi video izlemektense konu veya makale okuyarak daha rahat bilgilenen ve öğrenen arkadaşların faydalanmasıdır.
Takıldığınız yerleri yorum olarak sorabilirsiniz şimdiden başarılar.



-- Ders # 1

Değişken içerisinde kodlama dilinin bize izin verdiği tiplerde değer tutabilen, her satırda farklı değer tutabilicek potansiyele sahip kodlara değişken denir.
Değişken türlerinu number, bool, string olarak 3' e ayırabiliriz;
number tipi değişken içinde yanlızca sayı barındırabilir,
string tipi değişken içinde yanlızca yazı barındırabilir,
bool tipi değişken içinde yanlızca true veya false değerlerini barındırabilir


-- Örnek # 1 - Number tipi değişken


Kod:
variable = 120

myAge = 23


-- Örnek # 2 - String tipi değişken

Kod:
variable = EndOfTheWorld

myName = "Alex"

myLastName = "Hoper"


-- Örnek # 3 - Bool tipi değişken

Kod:
variableOne = true

variableTwo = false

local içinde bulunduğu kapsam içinde bir değer belirlemenizi sağlar
Eğer kapsam içinde değilse global bir değer gibi davranır (global table da gözükmez)
local' den sonra yazdığımız kelime o değeri temsil eden kelimedir. (kapsam yani scope mantığını birazdan anlatacağım)


-- Örnek #1


Kod:
local anotherVariable = "Hello Dude"
local variable = "GalataSaray"
print(variable)

Komudu çalıştırdığımızda panel' e "GalataSaray" kelimesini yollayacaktır.
Local ile belirlediğimiz değeri sonradan tekrar değiştirebiliriz


Kod:
variable = anotherVariable
print(variable)

Komudu çalıştırdığımızda panel' e "Hello Dude" kelimesini yollayacaktır.


-- Örnek #2


Kod:
local elamalar = 5
local yeniElmalar = elamalar + 3

print(yeniElmalar)


-- Örnek #3 - Kendin bir örnek oluştur.

Kod:
local anahtarlik = 1
local yeniAnahtarlik = 3

print(anahtarlik + yeniAnahtarlik)

Komudu çalıştırdığımızda panel' e 4 sayısını vericektir.






Çift nokta Lua' da iki değeri string olarak birleştirmek (concatenate) için kullanılır.
Birleştirelecek değerler string veya number olmalıdır.


-- Örnek #1


Kod:
local myName = "Alex"
local myLastName = "Hoper"
local myAge = 23

print("My Name: "..myName)
print("My LastName: "..myLastName)
print("My Age"..myAge)


-- Örnek #2 - Kendi bir örnek oluştur.

Kod:
local yourUserName = "Alex"
local yourPassCode = "HkdfGd"

print("Hesabın başarı ile oluşturldu!")
print("Hesap Bilgilerin")
print("UserName: "..yourUserName)
print("PassCode: "..yourPassCode)






Bir değişkenin değerlerini fonksiyon (function) olarak belirleyebiliriz.
Fonksiyonlar, makineye yapmasını istediğimiz birtakım işlemler belirtir
Bu işlemler o isimdeki değişken üzerinde kayıtlı kalır.
Bu fonksiyonu daha sonra tekrar aynı isimle kullanabilmenizi sağlar.
function' un önündeki () ler o işleme gönderebileceğimiz değerleri adlandırmamız için vardır.
İlerde daha ayrıntılı göstereceğim.
Fonksiyonlar' ın sonuna end ekleyerek o kod bloğunun bittiğini makinaya belirtmiş oluruz.


-- Örnek # 1


Kod:
local abc = "Hello Dude"        -- String   (Karakter)
local num = 112                 -- Num      (Number)
local object = {}               -- Table    (Tablo)
local test = function() end     -- Function (Fonksiyon)
print("test type is"..type(test))
print("num type is"..type(num))
print("abc type is"..type(abc))
print("object type is"..type(object))


-- Örnek # 2 - Kendin bir örnek oluştur.

Kod:
local FivemTurk = "Sado<3"
local atam = 1881
local object = {}
local fonksiyon = function() end

print("FivemTurk type is"..type(Sado<3))
print("atam type is"..type(atam))
print("objet type is"..type(object))
print("fonksiyon type is"..type(fonksiyon))







"local test = function()" ile "end" kod bloğu (code block) olarak geçer.
Aynı zamanda fonksiyonun kapsama alanıdır (scope).


-- Örnek # 1


Kod:
local test = function()
    print("Ben bir fonksiyonum.")   -- Kodu bu şekilde çalıştırır isek çalışmaz çünkü biz sadece test adlı değişkeni tanıttık.
end

Yazdığımız fonksiyonu çalıştırmak için onu çağırmamız lazım(FunctionCall).
Çağırmak için ise o fonksiyonun ismi ardından () yazıyoruz.


Kod:
test()

-- Örnek # 2 - Kendin bir örnek oluştur.

Kod:
local test2 = function()
    print("Hi World")
end

test2()


Bir fonksiyonu çalıştırırken ayrıca ona bir değer gönderebiliriz.
Fonksiyon içinde ise bu değerleri kullanabiliriz.

-- Örnek # 2


Kod:
local test = function(test)
    print(test)
end

test("Ben bir fonksiyonum amigo.")

-- Örnek # 3

Kod:
local test2 = function(test2)
    print(test2)
end

test2("Hello dude!")

-- Örnek # 5 - Kendin bir örnek oluştur.

Kod:
local test3 = function(test3)
    print(test3)
end

test3("Merkez Bankası Alarmları Çaldı!")









Basit bir toplama işlemi fonksiyonu örneği:

Parantez içinde birden fazla değer belirtebilirsiniz (x, y),
return operatör' ü ondan sonra gelen değeri fonksiyon çağıran yere döndürür ve andında fonksiyonu durdurur,
6. satırda test adlı değişken toplama adlı fonksiyondan dönen değere eşittir.
Bu değer return önünde bulunan toplam değişkendir,
toplam değişkeni ise toplama fonksiyonu içinde oluşturur ve dışarı yanlızca return ile çıkabilir.


-- Örnek # 1


Kod:
local toplama = function(x, y)
    local toplam = x + y
    return toplam
end

local test = toplama(20, 10)

print("Toplam = "..test)


-- Örnek # 2 - Kendin bir örnek oluştur.

Kod:
local toplama = function(z, n)
    local toplam = z + n
    return toplam
end

local sonuc = toplama(20, 40)

print("Sonuc"..sonuc)


-- Örnek # 3 - Kendin bir örnek oluştur.

Kod:
local toplamson = function(u, t)
    local toplam = u + t
    return toplam
end

local sonuc = toplamson(10, 5)

print("Sonuç = "..sonuc)


-- Örnek # 4 - Çıkartma Versiyonu

Kod:
local cikartma = function(h, n)
    local cikan = h - n
    return cikan
end

local sonuc = cikartma(12 - 5)

print("Kalan Sonuc = "..sonuc)


-- Örnek # 5 - Kendin bir örnek oluştur - Topalama, çıkarma bir arada.

Kod:
local toplama = function(q, e)
    local toplanan = q + e
    return toplanan
end

local cikan = function(r, t)
    local cikan = r - t
    return cikan
end

local finalsonuc =  toplama(15 + (cikan))





Edit By @yigitersahin :
Concatenate yanlızca string değil herhangi bir datatype (VeriTipi) ile kullanılabilmektedir ekstra olarak string döndürmez int / float / boolean herhangi bir değer
döndürebilir.


Credit By UTK

 
DF
Son düzenleme:
Güzel bir döküman ancak hataların var, sanırım sen yazmadın.
concatenate yanlızca string değil herhangi bir datatype ile kullanılabilir ve string döndürmez int / float / boolean herhangi bir değer döndürebilir.
 
DF
ovvv birom yoksa forumdan lua öğrenen yeni mevloperler npc scripti yazmayamı geliyor (Yararlı paylaşım ama fivem trdeki insanlar bu paylaşımı kötüye kullanacaklar kankam haberin ola bi vrp to esx scripti paylaştım öff aklın şaşar scriptin yarısını çevirip satanlarmı dersin ne ararsan )
 
DF
Güzel bir döküman ancak hataların var, sanırım sen yazmadın.
concatenate yanlızca string değil herhangi bir datatype ile kullanılabilir ve string döndürmez int / float / boolean herhangi bir değer döndürebilir.
Öncelikle hatayı düzelttiğiniz için teşekkür ederim muhtemelen videoda kafa karışıklığı olmaması amacıyla video boyunca kullanacağı kadarını öğretmeyi tercih etmiştir diye tahmin ediyorum ondan dolayı konun içine değil sonuna dediklerinizi ekledim.❤
 
DF
eğitici bir içerik +rep

Not: veriable'ı variable olarak düzeltir misin
 
DF
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Forumdan daha fazla yararlanmak için giriş yapın yada üye olun!

Forumdan daha fazla yararlanmak için giriş yapın veya kayıt olun!

Kayıt ol

Forumda bir hesap oluşturmak tamamen ücretsizdir.

Şimdi kayıt ol
Giriş yap

Eğer bir hesabınız var ise lütfen giriş yapın

Giriş yap

Bu konuyu görüntüleyen kullanıcılar

Tema düzenleyici

Tema özelletirmeleri

Granit arka planlar

Lütfen Javascript'i etkinleştirin!Javascript'i etkinleştirin!