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

Yardım disc_inventory_itemdata çalışmıyor

revolve20

Üye
FT Kullanıcı
Katılım
4 yıl 11 ay 20 gün
Mesajlar
43
Arkadaşlar benim bir problemim var işkurdaki mesleklerde atıyorum madencilikte 7 tane taş topluyorum daha fazla toplayamazsın diyor ama o 7 adet taşı yere atıp tekrar topladıktan sonra o yerdekinide aldığım zaman 14 tane oluyor böyle bu şekilde item limitini aşabiliyor birine sordum disc_inventory_itemdata ya limit koymak istediğin itemleri ekle dedi ekledim olmadı başkasına sordum server inventory lua ayarlı değildir dedi lütfen yardım edin arkadaşlar işte resimlerdede gördüğünüz gibi böyle oluyor
 
DF

Ekli dosyalar

  • Screenshot_11.png
    Screenshot_11.png
    184.4 KB · Görüntüleme: 22
  • Screenshot_12.png
    Screenshot_12.png
    168.2 KB · Görüntüleme: 26
  • Screenshot_13.png
    Screenshot_13.png
    4.5 MB · Görüntüleme: 27
  • Screenshot_14.png
    Screenshot_14.png
    2.3 MB · Görüntüleme: 29
  • Screenshot_15.png
    Screenshot_15.png
    2.5 MB · Görüntüleme: 23
Büyük ihtimalle disc ile alaklı değil kullandığın meslek scriptiyle ilgili. Üstüne daha fazla alamazsın tarzında bir text arat, bulduğun kod satırlarını kendine göre düzeltirsin.
 
DF
Büyük ihtimalle disc ile alaklı değil kullandığın meslek scriptiyle ilgili. Üstüne daha fazla alamazsın tarzında bir text arat, bulduğun kod satırlarını kendine göre düzeltirsin.
ya şimdi şöyle işte demek istediğim zaten itemdatadan bazı itemlere limit koymak esx_jobs kullanıyorum normal olarak onların içinde zaten max toplama limiti var kendi içinde benim demek istediğim item datadan envanterden limit koymak istiyorum
 
DF
Merhaba.

Anladığım kadarıyla mesleğin kendisinden alınca 7 taş alabiliyorsun ama farklı bir kaynaktan ağırlığına eşit miktarda alıyorsun.


Kullandığın scriptin serverside ına gir CTRL+F Kombinasyonu ile şu aramaları yap. -->

İf xItem.weight then veya İf xItem.weight
~= 0.5 and (eğer taşın ağırlığı diyelimki 1 olsun 0.5 yazıcaksın *0.5 kısmına yani yarısını yazıcaksın)

Ardından kod satırındaki weight değerini datandaki ile aynı yapıyorsun.

Sana yazdıklarım ile serverside üzerinde birşey bulamadıysan notification bildirimininden gelen yazıyı yazabilirsin.

İyi günler...
 
DF
Merhaba.

Anladığım kadarıyla mesleğin kendisinden alınca 7 taş alabiliyorsun ama farklı bir kaynaktan ağırlığına eşit miktarda alıyorsun.


Kullandığın scriptin serverside ına gir CTRL+F Kombinasyonu ile şu aramaları yap. -->

İf xItem.weight then veya İf xItem.weight
~= 0.5 and (eğer taşın ağırlığı diyelimki 1 olsun 0.5 yazıcaksın *0.5 kısmına yani yarısını yazıcaksın)

Ardından kod satırındaki weight değerini datandaki ile aynı yapıyorsun.

Sana yazdıklarım ile serverside üzerinde birşey bulamadıysan notification bildirimininden gelen yazıyı yazabilirsin.

İyi günler...
Cevabınız için teşekkürler ama tam olarak kendimi ifade edemedim sanırım disc_inventory_itemdata da max diye bir alt tablo ordan limit koyamazmıyım onu soruyorum bendeki neden çalışmıyor mesela silah WEAPON_PISTOL 1 tane alabiliyim 1 den fazla stacklanıyor 99 tane falan oluyor ağırlık sistemli envanter kullanıyorum bu bir nevi engelliyor ama max_limit koyamazmıyız disc_inventory_itemdata tablosundan onu soruyorum
 
DF
yani meslekle ilgili bir sorunum yok itemler stacklanabiliyor belirtmek istediğim oydu aslında
 
DF
Cevabınız için teşekkürler ama tam olarak kendimi ifade edemedim sanırım disc_inventory_itemdata da max diye bir alt tablo ordan limit koyamazmıyım onu soruyorum bendeki neden çalışmıyor mesela silah WEAPON_PISTOL 1 tane alabiliyim 1 den fazla stacklanıyor 99 tane falan oluyor ağırlık sistemli envanter kullanıyorum bu bir nevi engelliyor ama max_limit koyamazmıyız disc_inventory_itemdata tablosundan onu soruyorum
hmm anladım dikkatli okumadım kusura bakma. yarın sana max ekleyen kod bloğunu atacağım.
 
DF
merhaba unuttunuz yollamayı sanırım.
function addToInventory(item, type, inventory)
local max = 9999999
local toAdd = item.count
while toAdd > 0 do
toAdd = AttemptMerge(item, inventory, toAdd, max)
if toAdd > 0 then
toAdd = AddToEmpty(item, type, inventory, toAdd, max)
else
toAdd = 0
end
end
end
function AttemptMerge(item, inventory, count)
local max = getItemDataProperty(item.name, 'max') or 9999999
for k, v in pairs(inventory) do
if v.name == item.name then
if v.count + count > max then
local tempCount = max - inventory[k].count
inventory[tostring(k)].count = max
count = count - tempCount
elseif v.count + count <= max then
inventory[tostring(k)].count = v.count + count
return 0
else
print('Missing MERGE condition')
end
end
end
return count
end
function AddToEmpty(item, type, inventory, count)
local max = getItemDataProperty(item.name, 'max') or 9999999
for i = 1, InvType[type].slots, 1 do
if inventory[tostring(i)] == nil then
if count > max then
inventory[tostring(i)] = item
inventory[tostring(i)].count = max
return count - max
else
inventory[tostring(i)] = item
return 0
end
end
end
print('Inventory Overflow!')
return 0
end
function createDisplayItem(item, esxItem, slot, price, type)
local max = 9999999
return {
id = esxItem.name,
itemId = esxItem.name,
qty = item.count,
slot = slot,
label = esxItem.label,
type = type or 'item',
max = getItemDataProperty(esxItem.name, 'max') or max,
stackable = true,
unique = esxItem.rare,
usable = esxItem.usable,
giveable = true,
description = getItemDataProperty(esxItem.name, 'description'),
limiti = esxItem.weight,
metadata = {},
staticMeta = {},
canRemove = esxItem.canRemove,
price = price or 0,
needs = false,
closeUi = getItemDataProperty(esxItem.name, 'closeonuse'),
}
end


Datana "max" adındaa bir stün eklemen gerekiyor. Güle güle kullan kadim dostum :)
 
DF
function addToInventory(item, type, inventory)
local max = 9999999
local toAdd = item.count
while toAdd > 0 do
toAdd = AttemptMerge(item, inventory, toAdd, max)
if toAdd > 0 then
toAdd = AddToEmpty(item, type, inventory, toAdd, max)
else
toAdd = 0
end
end
end
function AttemptMerge(item, inventory, count)
local max = getItemDataProperty(item.name, 'max') or 9999999
for k, v in pairs(inventory) do
if v.name == item.name then
if v.count + count > max then
local tempCount = max - inventory[k].count
inventory[tostring(k)].count = max
count = count - tempCount
elseif v.count + count <= max then
inventory[tostring(k)].count = v.count + count
return 0
else
print('Missing MERGE condition')
end
end
end
return count
end
function AddToEmpty(item, type, inventory, count)
local max = getItemDataProperty(item.name, 'max') or 9999999
for i = 1, InvType[type].slots, 1 do
if inventory[tostring(i)] == nil then
if count > max then
inventory[tostring(i)] = item
inventory[tostring(i)].count = max
return count - max
else
inventory[tostring(i)] = item
return 0
end
end
end
print('Inventory Overflow!')
return 0
end
function createDisplayItem(item, esxItem, slot, price, type)
local max = 9999999
return {
id = esxItem.name,
itemId = esxItem.name,
qty = item.count,
slot = slot,
label = esxItem.label,
type = type or 'item',
max = getItemDataProperty(esxItem.name, 'max') or max,
stackable = true,
unique = esxItem.rare,
usable = esxItem.usable,
giveable = true,
description = getItemDataProperty(esxItem.name, 'description'),
limiti = esxItem.weight,
metadata = {},
staticMeta = {},
canRemove = esxItem.canRemove,
price = price or 0,
needs = false,
closeUi = getItemDataProperty(esxItem.name, 'closeonuse'),
}
end


Datana "max" adındaa bir stün eklemen gerekiyor. Güle güle kullan kadim dostum :)
Sen birtanesin usta kralsın hemen deniyorum şimdi :)
 
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!