[ISTEK] Araç ve Silah Engelli Greenzone Scripti

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Merhaba,
Araç ve Silah Engelli Greenzone Script'i arıyorum elinde olan varsa rica etsem iletebilir mi?
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


MTASATURK

[ISTEK] Araç ve Silah Engelli Greenzone Scripti
« : 12 Haziran 2020, 14:17:51 »

Çevrimdışı pexus

  • Yeni Üye
  • *
    • İleti: 51
Yanıtla #1 : 12 Haziran 2020, 14:35:04
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Yanıtla #2 : 12 Haziran 2020, 14:57:13
Linki görebilmek için Kayıt olun yada Giriş yapın.
Linki görebilmek için Kayıt olun yada Giriş yapın.

Bu scripti denedim. araba inmiyor ama arabaylada girilmiyor farklı yerde indirip içeri girilebilen birşey istiyorum ben
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı ByCash

  • Admin
  • *
    • İleti: 986
Yanıtla #3 : 12 Haziran 2020, 16:36:19
Linki görebilmek için Kayıt olun yada Giriş yapın.
Bu scripti denedim. araba inmiyor ama arabaylada girilmiyor farklı yerde indirip içeri girilebilen birşey istiyorum ben
Arkadaşın bağlantısını verdiği konudaki resimde bir açıklama var orayı okursan araç yok etme özelliğini kapatabilirsin.
« Son Düzenleme: 12 Haziran 2020, 16:40:58 Gönderen: ByCash »
 


Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Yanıtla #4 : 12 Haziran 2020, 17:19:55
Linki görebilmek için Kayıt olun yada Giriş yapın.
Arkadaşın bağlantısını verdiği konudaki resimde bir açıklama var orayı okursan araç yok etme özelliğini kapatabilirsin.

açıklamaları okudum fakat araçla girmeyi açıncada güvenli bölgede araç oluşturmaya izin veriyor benim yapmak istediğim araç oluşturma olmayacak ama araçla giriş yapılacak örneğin bir otopark güvenli bölge bu alanda araç oluşturma olmayacak ama dışardan biri arabayla giriş yapabilecek.
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı ByCash

  • Admin
  • *
    • İleti: 986
Yanıtla #5 : 12 Haziran 2020, 17:33:20
KorumaliAlan/client.lua dosyasını bu şekilde değiştir.
Kod: client-side
event = false

addEvent("KorumaliAlan:AlanKontrol", true)
addEventHandler("KorumaliAlan:AlanKontrol", root, function(area,kontrol)
setElementData(localPlayer, "KorumaliAlan", not event)
if kontrol == "Girdi" then
event = true
if event then
addEventHandler("onClientPlayerDamage", source, iptalFunc)
addEventHandler("onClientRender", root, render)
end
setRadarAreaFlashing(area, true)
elseif kontrol == "Cikti" then
event = false
removeEventHandler("onClientPlayerDamage", source, iptalFunc)
removeEventHandler("onClientRender", root, render)
setRadarAreaFlashing(area, false)
end
end)


function iptalFunc()
cancelEvent()
end

function render()
if event and getPedWeaponSlot(localPlayer) ~= 0 then
setPedWeaponSlot(localPlayer,0)
end
end

freeroam/fr_server.lua > 'function giveMeVehicles' olarak arat ve bu şekilde değiştir.
Kod: fr_server.lua
function giveMeVehicles(vehID)
if not isElement(source) then return end
if getElementData(source, "KorumaliAlan") then return end
local px, py, pz, prot
local element = getPedOccupiedVehicle(source) or source
local px,py,pz = getElementPosition(element)
local _,_,prot = getElementRotation(element)
local posVector = Vector3(px,py,pz+2)
local rotVector = Vector3(0,0,prot)
local vehMatrix = Matrix(posVector,rotVector)
local vehicleList = g_PlayerData[source].vehicles
if not vehID then return end
if not table.find(getOption('vehicles.disallowed'), vehID) then
if #vehicleList >= getOption('vehicles.maxperplayer') then unloadVehicle(vehicleList[1]) end
local vehPos = posVector+vehMatrix.right*3
local vehicle = Vehicle(vehID, vehPos, rotVector) or false
if vehicle then
vehicle.interior = source.interior
vehicle.dimension = source.dimension
if vehicle.vehicleType == "Bike" then vehicle.velocity = Vector3(0,0,-0.01) end
table.insert(vehicleList, vehicle)
g_VehicleData[vehicle] = { creator = source, timers = {} }
if g_Trailers[vehID] then
if getOption('vehicles.maxidletime') >= 0 then
if getOption('vehicles.idleexplode') then
g_VehicleData[vehicle].timers.fire = setTimer(commitArsonOnVehicle, getOption('vehicles.maxidletime'), 1, vehicle)
end
g_VehicleData[vehicle].timers.destroy = setTimer(unloadVehicle, getOption('vehicles.maxidletime') + (getOption('vehicles.idleexplode') and 10000 or 0), 1, vehicle)
end
end
end
else
errMsg(getVehicleNameFromModel(vehID):gsub('y$', 'ie') .. 's are not allowed', source)
end
end
« Son Düzenleme: 12 Haziran 2020, 17:41:08 Gönderen: ByCash »
 


MTASATURK

Ynt: [ISTEK] Araç ve Silah Engelli Greenzone Scripti
« Yanıtla #5 : 12 Haziran 2020, 17:33:20 »

Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Yanıtla #6 : 12 Haziran 2020, 17:50:01
Linki görebilmek için Kayıt olun yada Giriş yapın.
KorumaliAlan/client.lua dosyasını bu şekilde değiştir.
Kod: client-side
event = false

addEvent("KorumaliAlan:AlanKontrol", true)
addEventHandler("KorumaliAlan:AlanKontrol", root, function(area,kontrol)
setElementData(localPlayer, "KorumaliAlan", not event)
if kontrol == "Girdi" then
event = true
if event then
addEventHandler("onClientPlayerDamage", source, iptalFunc)
addEventHandler("onClientRender", root, render)
end
setRadarAreaFlashing(area, true)
elseif kontrol == "Cikti" then
event = false
removeEventHandler("onClientPlayerDamage", source, iptalFunc)
removeEventHandler("onClientRender", root, render)
setRadarAreaFlashing(area, false)
end
end)


function iptalFunc()
cancelEvent()
end

function render()
if event and getPedWeaponSlot(localPlayer) ~= 0 then
setPedWeaponSlot(localPlayer,0)
end
end

freeroam/fr_server.lua > 'function giveMeVehicles' olarak arat ve bu şekilde değiştir.
Kod: fr_server.lua
function giveMeVehicles(vehID)
if not isElement(source) then return end
if getElementData(source, "KorumaliAlan") then return end
local px, py, pz, prot
local element = getPedOccupiedVehicle(source) or source
local px,py,pz = getElementPosition(element)
local _,_,prot = getElementRotation(element)
local posVector = Vector3(px,py,pz+2)
local rotVector = Vector3(0,0,prot)
local vehMatrix = Matrix(posVector,rotVector)
local vehicleList = g_PlayerData[source].vehicles
if not vehID then return end
if not table.find(getOption('vehicles.disallowed'), vehID) then
if #vehicleList >= getOption('vehicles.maxperplayer') then unloadVehicle(vehicleList[1]) end
local vehPos = posVector+vehMatrix.right*3
local vehicle = Vehicle(vehID, vehPos, rotVector) or false
if vehicle then
vehicle.interior = source.interior
vehicle.dimension = source.dimension
if vehicle.vehicleType == "Bike" then vehicle.velocity = Vector3(0,0,-0.01) end
table.insert(vehicleList, vehicle)
g_VehicleData[vehicle] = { creator = source, timers = {} }
if g_Trailers[vehID] then
if getOption('vehicles.maxidletime') >= 0 then
if getOption('vehicles.idleexplode') then
g_VehicleData[vehicle].timers.fire = setTimer(commitArsonOnVehicle, getOption('vehicles.maxidletime'), 1, vehicle)
end
g_VehicleData[vehicle].timers.destroy = setTimer(unloadVehicle, getOption('vehicles.maxidletime') + (getOption('vehicles.idleexplode') and 10000 or 0), 1, vehicle)
end
end
end
else
errMsg(getVehicleNameFromModel(vehID):gsub('y$', 'ie') .. 's are not allowed', source)
end
end

Herhangi bir değişiklik olmadı aynı güvenli bölgeye giriş yapınca araç yok oluyor
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı ByCash

  • Admin
  • *
    • İleti: 986
Yanıtla #7 : 12 Haziran 2020, 18:17:47
Linki görebilmek için Kayıt olun yada Giriş yapın.
Herhangi bir değişiklik olmadı aynı güvenli bölgeye giriş yapınca araç yok oluyor
Scriptin arac yok etme ayarını devredışı bırakmalısın.
« Son Düzenleme: 12 Haziran 2020, 18:20:06 Gönderen: ByCash »
 


Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Yanıtla #8 : 12 Haziran 2020, 18:20:25
Linki görebilmek için Kayıt olun yada Giriş yapın.
Scriptin araç yok etme ayarını devredışı bırakmalısın.

nasıl yapabilirim onu araştırıyorum saatlerdir :(
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı ByCash

  • Admin
  • *
    • İleti: 986
Yanıtla #9 : 12 Haziran 2020, 18:24:04
Linki görebilmek için Kayıt olun yada Giriş yapın.
nasıl yapabilirim onu araştırıyorum saatlerdir :(
Herşeyi sormak yerine biraz denesen keşke, tablodaki ayarı true veya false yapıp denemelisin.
 


Çevrimdışı arifcanyldz06

  • Yeni Üye
  • *
    • İleti: 28
Yanıtla #10 : 12 Haziran 2020, 18:29:46
Linki görebilmek için Kayıt olun yada Giriş yapın.
Herşeyi sormak yerine biraz denesen keşke, tablodaki ayarı true veya false yapıp denemelisin.

tek tek true false denedim sabahtan beri bununla uğraşıyorum olumlu bir sonuca varamadım daha :D
Linki görebilmek için Kayıt olun yada Giriş yapın.
 


Çevrimdışı ByCash

  • Admin
  • *
    • İleti: 986
Yanıtla #11 : 12 Haziran 2020, 18:44:39
Korumalı Alan scriptini senin için düzenledim. scriptin orjinal halini indirip server.lua dosyasını bu şekilde değiştir.
Kod: client-side
tablo = {}

alanlar = {--x,y, boyutX, boyutY, renk,aracEngel

{ 0, 0, 150, 150, "00FF00", 0, 0, false, false},

}

kontroller = { -- alana girince/çıkınca aktif/deaktif edilcek kontroller
"fire", -- ateş
"aim_weapon", -- nişan alma
"next_weapon", -- sonraki silaha geçiş
"previous_weapon", -- önceki silaha geçiş
}

addEventHandler("onResourceStart", resourceRoot, function() -- bu script başladığında
for i,cols in ipairs (alanlar) do -- alanlar tablosunu döndürüyoruz
local x,y,bx,by,renk,int,dim,aracengel,data = unpack(cols) -- verileri değişkene çıkartıyoruz
local r,g,b = hexToRGB( renk )  -- hex renk kodunu rgb dönüştürüyoruz

local alan = createColCuboid (x,y,-50,bx,by, 5000) -- belirlenen ölüçlerde alan oluşturuyoz
setElementInterior(alan, int)
setElementDimension(alan, dim)

local area = createRadarArea (x,y,bx,by,r,g,b,170) -- belirlenen ölçülerde area oluşturuyoz(radarda gözükmesi için)
setElementInterior(area, int)
setElementDimension(area, dim)

if not tablo[alan] then tablo[alan] = {} end -- eğer tabloda alan yoksa ekliyoruz
tablo[alan].area = area
tablo[alan].aracengel = aracengel

tablo[alan].data = "KorumaliAlan"
if data then tablo[alan].data = data end

addEventHandler("onColShapeHit", alan, alanaGirince) -- alana girince işlev olcak func ekliyoruz
addEventHandler("onColShapeLeave", alan, alandanCikinca) -- alandan çıkınca işlev olcak func ekliyoruz
end
end)


function alanaGirince(giren) -- alana Girildiğinde
if isElement(giren) and getElementType(giren) == "player" then -- eğer giren varsa ve tipi "player" ise

local data = tablo[source].data
if data ~= false and tostring(data) then setElementData(giren, data, true) end

for i,kontrl in pairs(kontroller) do toggleControl(giren, kontrl, false) end -- kontroller tablosundaki kontrolleri devredışı bırakıyoz
triggerClientEvent(giren, "KorumaliAlan:AlanKontrol", giren, tablo[source].area, "Girdi") -- cliente areayı gönderiyorz
elseif isElement(giren) and getElementType(giren) == "vehicle" and tablo[source].aracengel then -- eğer giren varsa ve tipi "vehicle" ise ve alanın aracEngel verisi varsa
destroyElement(giren) -- giren elementi(aracı) yok ediyoruz
end
end

function alandanCikinca(cikan) -- alandan çıkıldığında
if isElement(cikan) and getElementType(cikan) == "player" then -- eğer cikan varsa ve tipi "player" ise

local data = tablo[source].data
if data ~= false and tostring(data) then setElementData(cikan, data, false) end

for i,kontrl in pairs(kontroller) do toggleControl(cikan, kontrl, true) end -- kontroller tablosunda kontrolleri aktifleştiriyoruz
triggerClientEvent(cikan, "KorumaliAlan:AlanKontrol", cikan, tablo[source].area, "Cikti") -- cliente areayı yolluyoz
end
end

function hexToRGB( num )
  num = string.gsub( num, "#", "" )
  local r = tonumber( "0x" .. string.sub( num, 1, 2 ) ) or 255
  local g = tonumber( "0x" .. string.sub( num, 3, 4 ) ) or 255
  local b = tonumber( "0x" .. string.sub( num, 5, 6 ) ) or 255
  return r, g, b
end
Üstteki iletimde verdiğim kodu freeroam paneline ekleyip bu scripti kullanırsan istediğin sonuca ulaşacaksın.
« Son Düzenleme: 12 Haziran 2020, 19:10:48 Gönderen: ByCash »