--[[
Komisy samochodowe
@author value <value2k@gmail.com>
@Edit: DylemaT929 :)
Nie masz prawa u?y? tego kodu bez mojej zgody
]]
--createBlip(-1959.59, 285.91, 35.47, 55,2,0,0,0,0,0,275) --- sf doherty zwykly
createBlip(342.44, 66.87, 3.64, 55,2,0,0,0,0,0,275) --- sf downtown sportowy
createBlip(-2.55, 1396.51, 8.87, 55,2,0,0,0,0,0,275) --- cygan
local vehicles = {}
local komis_shapes = {}
local slots = {
-- Cygan
{-2.55, 1396.51, 8.87, 360.0, 360.0, 99.8, model=410, dmax=100000, dmin=90000, price=(70520), gdzie="cygan"}, -- Manana
{-22.42, 1392.08, 8.99, 359.0, 0.0, 59.3, model=458, dmax=100000, dmin=90000, price=(100356), gdzie="cygan"}, -- Solair
{-29.11, 1366.61, 8.91, 359.7, 0.0, 103.8, model=478, dmax=100000, dmin=90000, price=(45812), gdzie="cygan"}, -- Walton
{3.40, 1347.55, 9.26, 0.1, 360.0, 140.3, model=418, dmax=100000, dmin=90000, price=(50213), gdzie="cygan"}, -- Moonbeam
{26.51, 1363.81, 8.94, 359.4, 0.0, 109.1, model=543, dmax=100000, dmin=90000, price=(80235), gdzie="cygan"}, -- Sadler
{4.68, 1383.22, 8.90, 359.1, 360.0, 58.3, model=540, dmax=100000, dmin=90000, price=(65356), gdzie="cygan"}, -- Vincent
-- Salon LV zwykly
{342.44, 66.87, 3.64, 358.2, 0.1, 0.0, model=496, dmax=50000, dmin=70000, price=(670345), gdzie="dohertysf"}, -- Blista
{319.17, 60.26, 3.03, 0.9, 359.2, 321.1, model=401, dmax=50000, dmin=70000, price=(515012), gdzie="dohertysf"}, -- Bravura
-- {-1946.13, 273.40, 40.82, 89.1, 0.0, 88.9, model=575, dmax=0, dmin=0, price=(3700000), gdzie="dohertysf"}, -- brodway
{314.11, 46.79, 2.60, 0.5, 358.3, 8.0, model=518, dmax=50000, dmin=70000, price=(412085), gdzie="dohertysf"}, -- Buccaneer
--{-1959.99, 304.17, 35.35, 537.4, 359.8, 180.5, model=603, dmax=0, dmin=0, price=(41000000), gdzie="dohertysf"}, -- phoenix
--{-1955.37, 304.21, 35.35, 537.4, 0.0, 179.4, model=580, dmax=0, dmin=0, price=(53000000), gdzie="dohertysf"}, -- stafford
--{-1945.77, 273.34, 35.29, 89.1, 360.0, 89.7, model=561, dmax=0, dmin=0, price=(35500000), gdzie="dohertysf"}, -- Stratum
--{-1946.16, 268.81, 35.29, 89.1, 360.0, 89.8, model=495, dmax=0, dmin=0, price=(60000000), gdzie="dohertysf"}, -- Sandking
-- {-1946.12, 264.12, 35.29, 89.1, 359.8, 91.2, model=589, dmax=0, dmin=0, price=(38500000), gdzie="dohertysf"}, -- Club
{290.32, 39.85, 2.37, 359.8, 359.6, 20.0, model=551, dmax=50000, dmin=70000, price=(823021), gdzie="dohertysf"}, -- Merit
--{-1953.90, 254.63, 35.21, 89.1, 0.0, 88.1, model=536, dmax=0, dmin=0, price=(43000000), gdzie="dohertysf"}, -- Blade
{342.30, 36.71, 6.28, 1.0, 0.5, 14.4, model=507, dmax=50000, dmin=70000, price=(751035), gdzie="dohertysf"}, -- Elegant
}
addEventHandler("onResourceStart", resourceRoot, function ()
for i,v in ipairs(slots) do
komis_shapes[i] = createColSphere(v[1], v[2], v[3], 3)
setElementData(komis_shapes[i], "i", i)
createKomisVehicle(i)
addEventHandler("onColShapeHit", komis_shapes[i], function (hit,dim)
if getElementType(hit) == "player" and getElementData(komis_shapes[i], "komis:veh") then
triggerClientEvent(hit, "onClientAddNotification", hit,"Zainteresowa? ci? ten pojazd? /kuppojazd", "info")
end
end)
end
end)
addCommandHandler("kuppojazd", function (plr, cmd)
local shape = isPlayerInVehicleColShape(plr)
if not shape then return end
local veh = getElementData(shape, "komis:veh")
if not veh then return end
local slot = getElementData(shape, "komis:slot")
local price = vehicles[slot].price
local money = getPlayerMoney(plr)
if price > money then
triggerClientEvent(plr, "onClientAddNotification", plr,"* Nie sta? ci? na kupno tego pojazdu. Id? zar?b na pracach dorywczych i wr?c p??niej!", "error")
return
end
takePlayerMoney(plr, price)
local x,y,z = getElementPosition(veh)
local rx,ry,rz = getElementRotation(veh)
local i = getElementInterior(veh)
local d = getElementDimension(veh)
local pos = x..", "..y..", "..z..", "..rx..", "..ry..", "..rz..", "..i..", "..d
local r1,g1,b1, r2,g2,b2, r3,g3,b3, r4,g4,b4 = getVehicleColor(veh, true)
local color = r1..", "..g1..", "..b1..", "..r2..", "..g2..", "..b2
local owner = getElementData(plr, "player:sid")
local model = getElementModel(veh)
local dist = vehicles[slot].mileage
local poj = vehicles[slot].poj
local rodzaj = vehicles[slot].rodzaj
local gdzie = vehicles[slot].gdzie
destroyElement(veh)
setElementData(shape, "komis:veh", false)
setElementData(shape, "salonowe", false)
local q, num, id = exports["pystories-db"]:dbGet("INSERT INTO pystories_vehicles SET pos=?, fuel=100, bak=100, mileage=?, ownedPlayer=?, parking=1, pojemnosc_silnika=?, rodzaj=?, color=?, model=?", pos, dist, owner, poj, rodzaj, color, model)
if q then
createKomisVehicle(slot)
triggerClientEvent(plr, "onClientAddNotification", plr,"Gratulacje!\nZakupi?e? sw?j pierwszy lub kolejny pojazd na serwerze!\nPojazd zosta? przeniesiony do przechowywalni", "info")
setElementData(plr, "vehicle:desc", false)
setElementData(plr, "vehicle:mileage", vehicles[slot].mileage)
setElementData(plr, "vehicle:rodzaj", vehicles[slot].rodzaj)
setElementData(plr, "vehicle:poj", vehicles[slot].poj2)
else
triggerClientEvent(plr, "onClientAddNotification", plr," Wyst?pi? problem z kupnem pojazdu! Zg?o? to administracji serwera!", "error")
end
end)
function createKomisVehicle(slot)
if #getElementsWithinColShape(komis_shapes[slot]) > 0 then setTimer(createKomisVehicle, 250, 1, slot) return end
vehicles[slot] = {}
vehicles[slot].mileage = math.random(slots[slot].dmin, slots[slot].dmax)
vehicles[slot].price = slots[slot].price
vehicles[slot].veh = createVehicle(slots[slot].model, slots[slot][1], slots[slot][2], slots[slot][3], 0, 0, slots[slot][4])
setElementFrozen(vehicles[slot].veh, true)
setVehicleDamageProof(vehicles[slot].veh, true)
setVehicleLocked(vehicles[slot].veh, true)
setElementData(komis_shapes[slot], "komis:veh", vehicles[slot].veh)
setElementData(komis_shapes[slot], "komis:slot", slot)
setElementData(vehicles[slot].veh, "komis:veh", true)
setElementData(vehicles[slot].veh, "salonowe", true)
--setVehicleOverrideLights ( vehicles[slot].veh, 2 )
setVehicleColor(vehicles[slot].veh, 255,255,255)
setVehicleHeadLightColor(vehicles[slot].veh, 255, 255, 255)
if slots[slot].gdzie == "dohertysf" then --zwykly salon
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(2,3)
vehicles[slot].gdzie = "dohertysf"
elseif slots[slot].gdzie == "dohertysf2" then -- sportowy salon
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(3,4)
vehicles[slot].gdzie = "dohertysf2"
elseif slots[slot].gdzie == "cygan" then -- salon cygan
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(1,2)
vehicles[slot].gdzie = "cygan"
elseif slots[slot].gdzie == "sf" then -- salon motory
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(2,3)
elseif slots[slot].gdzie == "sf" then
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(6,7)
vehicles[slot].gdzie = "unikat"
elseif slots[slot].gdzie == "unikat" then
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(7,8)
vehicles[slot].gdzie = "unikat"
elseif slots[slot].gdzie == "unikat2" then
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(9,10)
vehicles[slot].gdzie = "unikat2"
elseif slots[slot].gdzie == "unikat3" then
vehicles[slot].rodzaj = "Benzyna"
vehicles[slot].poj = math.random(11,12)
vehicles[slot].gdzie = "unikat3"
end
if vehicles[slot].poj == 1 then
vehicles[slot].poj2 = 1.2
elseif vehicles[slot].poj == 2 then
vehicles[slot].poj2 = 1.6
elseif vehicles[slot].poj == 3 then
vehicles[slot].poj2 = 1.8
elseif vehicles[slot].poj == 4 then
vehicles[slot].poj2 = 2.0
elseif vehicles[slot].poj == 5 then
vehicles[slot].poj2 = 2.2
elseif vehicles[slot].poj == 6 then
vehicles[slot].poj2 = 2.5
elseif vehicles[slot].poj == 7 then
vehicles[slot].poj2 = 2.6
elseif vehicles[slot].poj == 8 then
vehicles[slot].poj2 = 2.7
elseif vehicles[slot].poj == 9 then
vehicles[slot].poj2 = 2.8
elseif vehicles[slot].poj == 10 then
vehicles[slot].poj2 = 2.9
elseif vehicles[slot].poj == 11 then
vehicles[slot].poj2 = 3.0
elseif vehicles[slot].poj == 12 then
vehicles[slot].poj2 = 3.1
end
setElementData(vehicles[slot].veh, "vehicle:desc", "Pojazd na sprzeda?!\n\nPojazd: "..getVehicleName(vehicles[slot].veh).."\nKoszt: "..slots[slot].price.." PLN\nPrzebieg: "..vehicles[slot].mileage.." km\nPojemno?? Silnika: "..vehicles[slot].poj2.." cm3\nRodzaj paliwa: "..vehicles[slot].rodzaj.."\nPojemno?? Baku: 100 L")
end
function isPlayerInVehicleColShape(player)
for i,v in ipairs(komis_shapes) do
if isElementWithinColShape(player, v) then return v end
end
return false
end