0 Üye ve 1 Ziyaretçi konuyu incelemekte.
function checkWater() if g_Vehicle then if not g_WaterCraftIDs[getElementModel(g_Vehicle)] then local x, y, z = getElementPosition(g_Me) local waterZ = getWaterLevel(x, y, z) if waterZ and z < waterZ - 0.5 and not isPlayerRaceDead(g_Me) and not isPlayerFinished(g_Me) and g_MapOptions then if g_MapOptions.firewater then blowVehicle ( g_Vehicle, true ) else setElementHealth(g_Me,0) triggerServerEvent('onRequestKillPlayer',g_Me) end end end -- Check stalled vehicle if not getVehicleEngineState( g_Vehicle ) then setVehicleEngineState( g_Vehicle, true ) end -- Check dead vehicle if getElementHealth( g_Vehicle ) == 0 and not isPlayerRaceDead(g_Me) and not isPlayerFinished(g_Me)then setElementHealth(g_Me,0) triggerServerEvent('onRequestKillPlayer',g_Me) end endend
if isElementInWater(source) then
Attıgın kodlara bir anlam veremedim ama sanırım aracın suyda olup olmadıgını kontrol etmek istiyorsun.Bu kod işine yarayacaktır;Kod if isElementInWater(source) then
checkWater isimli fonksiyonda aracın pozisyonunu çekmiş, eğer posZ yani yüksekliği suyun yüksekliğinden küçükse oyuncuyu öldürmüş. Ancak bu fonksiyon kendi kendine başlamayacağı için render eventine bağlamalısın. Ve tabi başka bir modda kullanıcaksan race ile alakalı fonksiyonları kaldırmalı veya değiştirmelisin.
İşte tamda bu konuda yardıma ihtiyacım var. Mahlukat'ın event sistemine bağlamak istiyorum. Yaklaşık 3-4 gündür uğraşıyorum fakat yapamadım. Linki görebilmek için Kayıt olun yada Giriş yapın.
setElementHealth (v, 10) setPedOxygenLevel (v, 10 )
setElementHealth (v, 10)setPedOxygenLevel (v, 10 )
setElementHealth (v, 10)setPedStat(v, 225, 0)
KodsetElementHealth (v, 10)setPedOxygenLevel (v, 10 )üstteki kodlar yerine aynı kısımda alttakileri kullan;KodsetElementHealth (v, 10)setPedStat(v, 225, 0)Linki görebilmek için Kayıt olun yada Giriş yapın. fonksiyonu ile pedin su altı dayanıklılığını 0 yaptık. Böylece su altına girdiğinde direkt canı azalmaya başlayacak.
function checkWater() local veh = getPedOccupiedVehicle(localPlayer) -- oyuncunun aracı if isElement(veh) then -- eğer oyuncunun içinde bulunduğu bir araç var ise local x,y,z = getElementPosition(localPlayer) if z < 0 then -- eğer oyuncu yüksekliği 0'dan küçükse if getElementData(localPlayer,"eventDatası") then -- burada elementdata kontrolü yaptım -- bu datayı oyuncu evente girdiğinde ayarla, event bitince oyuncudan sil -- sadece bu elementdatanın olduğu yani eventteki oyuncuları suya girince öldüreceğiz killPed(localPlayer) end end endendaddEventHandler("onClientRender",root,checkWater)
Eğer eventteki oyuncuya herhangi bir data atadıysan getElementData'yı düzenle, atamadıysan getElementData bulunan if'i ve ona ait olan end'i sil.Kod: client-sidefunction checkWater() local veh = getPedOccupiedVehicle(localPlayer) -- oyuncunun aracı if isElement(veh) then -- eğer oyuncunun içinde bulunduğu bir araç var ise local x,y,z = getElementPosition(localPlayer) if z < 0 then -- eğer oyuncu yüksekliği 0'dan küçükse if getElementData(localPlayer,"eventDatası") then -- burada elementdata kontrolü yaptım -- bu datayı oyuncu evente girdiğinde ayarla, event bitince oyuncudan sil -- sadece bu elementdatanın olduğu yani eventteki oyuncuları suya girince öldüreceğiz killPed(localPlayer) end end endendaddEventHandler("onClientRender",root,checkWater)