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

Script Server den Client'e veri çekme

Dostum zaten yapmak istediğinden yana server ve client li çalışmak için bu native i kullanman gerek
 
DF
Sorunu çözebildiniz mi ona göre detaylı bir anlatım yapacağım.
 
DF
53515

Sol taraf server, sağ taraf client.
serverda deger değişkenimiz 50 olarak verilmiş.
serverda test-server eventi çalıştırıldığı zaman (client tarafından server eventi triggerlanırsa source olarak veriyi çekebilirsiniz, server tarafından server eventi triggerlanırsa bütün oyunculara datayı çektirmek için source olarak -1 kulanıyoruz ve bütün oyuncuların bilgisayarında çalıştırıyoruz)
Yani kısaca veriyi cliente çekerken kimin bilgisayarına çekeceğinizi belirtmeniz gerekiyor
 
DF
Hocam kafam okadar karıştı ki zaten az çalışıyordu artık hiç çalışmamaya başladı

server side

deger = 50

sadece bunun olduğunu düşünerek bana kodları yazabilirmisin gerçekten ihtiyacım var
şu deger = 50 yi clientte

if deger == "50" then
print("doğru")
else
print("yanlış")
end

şeklinde nasıl kullabilirim


Server


Kod:
ESX.RegisterServerCallback("degerial", function(source, cb )
    local deger = 50
    cb(deger)
end)
Client

Kod:
RegisterCommand("denemekomut", function()
    ESX.TriggerServerCallback('degerial', function(sayi) --buraya ne yazdığın önemsiz
        if sayi == 50 then
            print("doğru")
        else
            print("yanlış")
        end
    end)
end)

ayrıca önceki commentte source belirtmeyi unutmuşum. yukarıda birisi belirtmiş
 
DF
Server


Kod:
ESX.RegisterServerCallback("degerial", function(source, cb )
    local deger = 50
    cb(deger)
end)
Client

Kod:
RegisterCommand("denemekomut", function()
    ESX.TriggerServerCallback('degerial', function(sayi) --buraya ne yazdığın önemsiz
        if sayi == 50 then
            print("doğru")
        else
            print("yanlış")
        end
    end)
end)

ayrıca önceki commentte source belirtmeyi unutmuşum. yukarıda birisi belirtmiş

53575

clientte bu hatayı veriyor.
 
DF
Kod:
[Serverside]

local Laotbaba = 50

TriggerClientEvent("laotbaba:client:sync", Laotbaba)

[Clientside]

RegisterNetEvent("laotbaba:client:sync")
AddEventHandler("laotbaba:client:sync",

    function(gelen_deger)

        if gelen_deger == 80 then
            print("gelen değer 80 abi")
        else
            print("abi gelen değer ne yazık ki 80 değil :(")
        end

end)
 
DF
Arkadaşın dediğini clientten çektirirsin ama eğer serverdan cliente yollayacaksan benim yöntemimi kullan.
ESX frameworkünü event ile çektirmen gerekiyor.

Kod:
[Client]
ESX = nil
PlayerData = {}

Citizen.CreateThread(function()
    while ESX == nil do
        TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
        Citizen.Wait(0)
    end

    while ESX.GetPlayerData().job == nil do
        Citizen.Wait(10)
    end

    PlayerData = ESX.GetPlayerData()
end)

[Server]
ESX = nil

TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
 
DF

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!