Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

RedEM:RP Sınıflar ve Fonksiyonlar Nasıl Kullanılır?

Normalized

ALT + F4
TC Kimlik Numarası Doğrulanmış Üye
Fahri Üye
TM Üye
Katılım
3 Nis 2011
Konular
192
Mesajlar
982
Çözüm
5
Online süresi
2mo 20d
Reaksiyon Skoru
789
Altın Konu
72
Başarım Puanı
236
MmoLira
17,524
DevLira
24
Ticaret - 0%
0   0   0

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!

maxresdefault.jpg


RedEM:RP çerçevesinde, oyuncularla etkileşim kurmak ve onların oyun içi deneyimlerini yönetmek için iki temel sınıf bulunur: Player (Oyuncu) ve Roleplayer (Rol Oyuncusu). Bu sınıflar, oyuncular hakkında çeşitli bilgilere erişim sağlamanın yanı sıra, onların oyun içi durumlarını ve özelliklerini manipüle etmek için kullanılabilecek bir dizi fonksiyon içerir.

1. Player (Oyuncu) Sınıfı
Player sınıfı, sunucuya bağlı olan her bir oyuncuyu temsil eder ve temel oyuncu bilgilerini barındırır. Bu sınıfın yapısı aşağıdaki gibidir:

Kod:
{
    self.source = source
    self.permission_level = permission_level
    self.money = money
    self.bank = bank
    self.identifier = identifier
    self.license = license
    self.group = group
    self.session = {}
    self.roles = roles
}

Player Sınıfı Fonksiyonları:
redem:getPlayerFromId(playerId) fonksiyonu ile elde edilen user (kullanıcı) nesnesi üzerinden erişilebilen bazı önemli fonksiyonlar şunlardır:

Kod:
user.kick(reason): Oyuncuyu sunucudan belirtilen sebeple atar.
user.setSessionVar(key, value): Oyuncuya özel, yalnızca mevcut sunucu oturumu süresince geçerli olacak bir oturum değişkeni tanımlar.
user.getSessionVar(key): Oyuncunun belirtilen oturum değişkeninin değerini döndürür. Özellikle user.getSessionVar("charid") fonksiyonu, oyuncunun mevcut aktif karakter kimliğini almak için kullanışlıdır.
user.getPermissions(): Oyuncunun mevcut yetki seviyesini döndürür.
user.setPermissions(level): Oyuncunun yetki seviyesini belirtilen değere ayarlar.
user.getIdentifier(): Oyuncunun benzersiz tanımlayıcısını (identifier) döndürür.
user.getGroup(): Oyuncunun ait olduğu grubu döndürür.
user.setGlobal(key, default): Oyuncuya özel, global bir değişken tanımlar veya mevcutsa değerini döndürür. Eğer değişken yoksa, belirtilen default değeriyle oluşturulur.
user.hasRole(role): Oyuncunun belirtilen role sahip olup olmadığını kontrol eder (true/false döndürür).
user.giveRole(role): Oyuncuya belirtilen rolü verir.
user.removeRole(role): Oyuncudan belirtilen rolü alır.
user.set(key, value): Oyuncuya özel bir veri ayarlar. Bu veriler genellikle kalıcıdır.
user.get(key): Oyuncunun belirtilen özel verisinin değerini döndürür.

2. Roleplayer (Rol Oyuncusu) Sınıfı

Roleplayer sınıfı, oyuncunun aktif olarak kontrol ettiği karakterle ilgili bilgileri ve fonksiyonları içerir. Bu sınıfın yapısı aşağıdaki gibidir:

Kod:
{
    self.source = source,         -- Karakteri kontrol eden oyuncunun sunucu ID'si
    self.gold = gold,             -- Karakterin sahip olduğu altın miktarı (varsa)
    self.group = group,           -- Karakterin ait olduğu grup (iş, çete vb.)
    self.firstname = firstname,   -- Karakterin adı
    self.lastname = lastname,     -- Karakterin soyadı
    self.xp = xp,                 -- Karakterin deneyim puanı
    self.level = level,           -- Karakterin seviyesi
    self.job = job,               -- Karakterin mesleği
    self.jobgrade = jobgrade      -- Karakterin meslekteki rütbesi
}

Roleplayer Sınıfı Fonksiyonları:
TriggerEvent("redemrp:getPlayerFromId", playerId, function(user) ... end) yapısı içinde erişilebilen bazı önemli fonksiyonlar şunlardır:

Kod:
user.setLevelwXP(value): Karakterin seviyesini ve deneyim puanını belirtilen değere ayarlar.
user.setLevel(value): Karakterin seviyesini belirtilen değere ayarlar.
user.setXP(value): Karakterin deneyim puanını belirtilen değere ayarlar.
user.setFirstname(value): Karakterin adını belirtilen değere ayarlar.
user.setLastname(value): Karakterin soyadını belirtilen değere ayarlar.
user.setJob(value): Karakterin mesleğini belirtilen değere ayarlar.
user.setJobgrade(value): Karakterin meslekteki rütbesini belirtilen değere ayarlar.
user.addXP(value): Karakterin deneyim puanına belirtilen miktarı ekler.
user.setGold(value): Karakterin altın miktarını belirtilen değere ayarlar.
user.getGold(): Karakterin altın miktarını döndürür.
user.kick(reason): Karakteri kontrol eden oyuncuyu sunucudan atar (Player sınıfındakiyle aynı işlevi görür).
user.addMoney(reason): Karakterin üzerindeki nakit miktarına belirtilen miktarı ekler.
user.removeMoney(reason): Karakterin üzerindeki nakit miktarından belirtilen miktarı çıkarır.
user.addGold(reason): Karakterin altın miktarına belirtilen miktarı ekler.
user.removeGold(reason): Karakterin altın miktarından belirtilen miktarı çıkarır.
user.getXP(): Karakterin deneyim puanını döndürür.
user.getName(): Karakterin tam adını (ad + soyad) döndürür.
user.getLevel(): Karakterin seviyesini döndürür.
user.getFirstname(): Karakterin adını döndürür.
user.getLastname(): Karakterin soyadını döndürür.
user.getJob(): Karakterin mesleğini döndürür.
user.getJobgrade(): Karakterin meslekteki rütbesini döndürür.

Örnek Kullanım:

Kod:
TriggerEvent('redemrp:getPlayerFromId', source, function(user)
    -- Kullanıcının tanımlayıcısını (identifier) alır ve "identifier" adında yerel bir değişkene kaydeder.
    local identifier = user.getIdentifier()

    -- Kullanıcının karakter kimliğini (charid) alır ve "charid" adında yerel bir değişkene kaydeder.
    local charid = user.getSessionVar("charid")

    -- Kullanıcının üzerindeki nakit miktarını 500 olarak ayarlar.
    user.setMoney(500)
end)

Bu sınıflar ve fonksiyonlar, RedEM:RP sunucularında oyuncu yönetimi, karakter gelişimi ve oyun içi etkileşimlerin temelini oluşturur. Geliştiriciler, bu araçları kullanarak sunucularına özel sistemler ve özellikler entegre edebilirler.
 
Eline sağlık.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst