Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2019-08-17, 20:01


DaVeCS

Mapper






Wiek: 31
Na forum: 3527 dni
Posty: 193
Nick w MP: DaVe

Piwa: 59

Respekt: 70,5

Witam posiadam skrypt na biznesy z paczki East City.

Po w??czeniu skryptu wy?wietla mi owe b??dy:
[19-08-17 19] ERROR: [biznes]/biznesy/s.lua:10: attempt to call global 'mysql_connect' (a nil value)
[19-08-17 19] ERROR: [biznes]/biznesy/s.lua:29: attempt to call global 'mysql_query' (a nil value)

Tutaj podaj? kod do biznes?w:

local SQL_LOGIN="login"  --login do bazy danych
local SQL_PASSWD="haselko"  --has?o do bazy danych
local SQL_DB="login"  --pystories-db danych
local SQL_HOST="137.74.0.12"  --host bazy danych
local SQL_PORT=tonumber(get("port") or 3306)  --port(standardowo 3306)

local SQL

local function connect()  --??czy z baz? danych
 SQL = mysql_connect(SQL_HOST, SQL_LOGIN, SQL_PASSWD, SQL_DB, SQL_PORT)
 if (not SQL) then
  outputServerLog("BRAK POLACZENIA Z BAZA DANYCH!")
 else
  mysql_query(SQL,"SET NAMES utf8")
  outputServerLog("POLACZENIE JEST!")
 end

end

addEventHandler("onResourceStart",getResourceRootElement(),function()  --po w?aczeniu skryptu wysy?a do funkcji kt?ra ?aczy si? z baz? danych
    connect()
end)

function esc(value)
    return mysql_escape_string(SQL,value)
end

function pobierzTabeleWynikow(query)
    local result=mysql_query(SQL,query)
    if (not result) then
        outputDebugString("mysql_query failed: (" .. mysql_errno(SQL) .. ") " .. mysql_error(SQL)) -- Show the reason
        return nil
    end
    local tabela={}
    for result,row in mysql_rows_assoc(result) do
        table.insert(tabela,row)
    end
    mysql_free_result(result)
    return tabela
end

function pobierzWyniki(query)
    local result=mysql_query(SQL,query)
    if (not result) then return nil end
    row = mysql_fetch_assoc(result)
    mysql_free_result(result)
    return row
end


function zapytanie(query)
    local result=mysql_query(SQL,query)
    if (result) then mysql_free_result(result) end
    return
end

function init()
    local biznesy=pobierzTabeleWynikow("select biznesy.id,biznesy.owner,biznesy.cost,biznesy.zajety,biznesy.nazwa,biznesy.saldo,biznesy.xyz,biznesy.data,pystories_users.login from biznesy LEFT JOIN pystories_users on biznesy.owner=pystories_users.id")
    for i,v in ipairs(biznesy) do
    stworz(v)
    end
end

local pickup = {}

local bramy = {}

function stworz(v)
    if not v.login then v.zajety="n" end
    v.xyz=split(v.xyz,",")
    biz=createPickup ( v.xyz[1], v.xyz[2], v.xyz[3], 3, 1274, 0 )
    createBlipAttachedTo(biz,59,2,0,0,0,0,0,275)
    local biz2 = biz
    local tw=createElement("text")
    local x2342=v.cost/240
    local x234 = math.floor(x2342)
    local ***** = math.floor(v.cost/4)
    if v.zajety == "n" then v.login = "Brak";v.data="Brak w?asciciela" end
    local profir1 = math.floor(x234*24*7)
--    outputDebugString(v.id)
    local format1=("Biznes: %s (ID: %s )\nW?a?ciciel: %s \nKoszt na 7 dni: %s PLN\nPieni?dze co godzine: %s PLN\nPieni?dze za sprzeda?: %s PLN\nOplacony do: %s \nZarobek tygodniowy: %s PLN"):format(v.nazwa,v.id,v.login,v.cost,x234,*****,v.data,profir1)
    setElementData(tw, "name", format1)
    setElementPosition(tw, v.xyz[1], v.xyz[2], v.xyz[3]+0.8)
    setElementData(biz2, "cost", v.cost)
    setElementData(biz2, "z", v.zajety)
    setElementData(biz2, "name", v.nazwa)
    setElementData(biz2, "id", v.id)
    setElementData(biz2, "payday",x234)
    setElementData(biz2, "saldo",v.saldo)
    setElementData(biz2,"data",v.data)
    setElementData(biz2, "owner", v.owner)
end
--[[
function bramabiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
    local biz2 = pickup[plr]
    if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
        if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:sid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
    local gate = getElementData(biz2,"gate")
    if not gate then outputChatBox("* Twoj biznes nie ma bramy",plr) return end
    local zamknieta = getElementData(gate,"state")
        local open = getElementData(gate,"open")
    local close = getElementData(gate,"close")
    local animation = getElementData(gate,"animation")
    if animation then outputChatBox("*Poczekaj a? brama sko?czy si? rusza?!",plr) return end
    if zamknieta then
        moveObject(gate, 5000, open[1],open[2], open[3],0,0,0, "OutQuad")
        setElementData(gate,"animation",true)
        setTimer(function(gates) setElementData(gates,"animation",false); setElementData(gates,"state",false) end,5000,1,gate)
    else
        moveObject(gate, 5000, close[1],close[2], close[3],0,0,0, "OutQuad")
        setTimer(function(gates) setElementData(gates,"animation",false); setElementData(gates,"state",true) end,5000,1,gate)
    end
end
end
addCommandHandler("biznes.brama", bramabiznes)
]]

function sprzedajbiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local cashit=getElementData(biz2, "cost")
local lasthit2=cashit/4
local lasthit = math.floor(lasthit2)
outputChatBox("Otrzymujesz "..lasthit.." PLN za sprzeda? swojego biznesu ("..getElementData(biz2, "name")..")", plr, 255, 255, 255)
givePlayerMoney(plr, lasthit)
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?, zajety=?, saldo=0 WHERE id=?","brak", "n", getElementData(biz2, "id"))
restartResource(getThisResource())
end
end
addCommandHandler("biznes.sprzedaj", sprzedajbiznes)

function kupbiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "t" then outputChatBox("Ten biznes ma ju? w?a?ciciela!", plr, 255, 255, 255) return end
if getElementData(biz2, "z") == "n" then
local bkoszt=getElementData(biz2, "cost")
local hajs=getPlayerMoney(plr)
if tonumber(getElementData(plr, "player:reputation")) < 2500 then outputChatBox("Aby zakupi? biznes musisz posiada? 2500 RP!", plr, 255, 255, 255) return end
if tonumber(bkoszt) > tonumber(hajs) then outputChatBox("Nie posiadasz "..getElementData(biz2, "cost").." PLN", plr, 255, 255, 255) return end
local limit = exports["ogrpg-db"]:dbGet("SELECT * FROM biznesy WHERE owner=?",getElementData(plr,"player:uid"))
if #limit >= 1 then outputChatBox("Posiadasz ju? jeden biznes!",plr,255,0,0) return end
outputChatBox("Pomy?lnie zakupi?e? biznes o nazwie "..getElementData(biz2, "name").." za "..getElementData(biz2, "cost").." PLN na 7 dni. Pamietaj o przedluzeniu!", plr, 255, 255, 255)
takePlayerMoney(plr, getElementData(biz2, "cost"))
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET zajety=?, owner=?, saldo=?, data = NOW() + INTERVAL 7 day WHERE id=?", "t", getElementData(plr, "player:uid"), "0", getElementData(biz2, "id"))
restartResource(getThisResource())
end
end
end
addCommandHandler("biznes.kup", kupbiznes)


function wyplac(plr,cmd,kwota)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local sal = exports["ogrpg-db"]:dbGet("select saldo from biznesy where id=?",getElementData(biz2,"id"))
local saldo = sal[1].saldo
if not tonumber(kwota) then
    outputChatBox("-- Biznes --",plr,255, 255, 255)
    outputChatBox("/biznes.wyplac <kwota>",plr,255, 255, 255)
    outputChatBox("Dostepne ?rodki: "..saldo,plr,255, 255, 255)
    return
end
local kwota = math.floor(kwota)
if saldo < kwota then outputChatBox("*Nie masz tyle srodk?w na koncie",plr,255,0,0) return end
exports["ogrpg-db"]:dbSet("update biznesy set saldo=saldo-?? where id=?",kwota,getElementData(biz2,"id"))
givePlayerMoney(plr,kwota)
outputChatBox("* Wyp?acile? "..kwota.. "PLN z biznesu!",plr,0,255,0)
triggerClientEvent("gui:zamknij",root)
restartResource(getThisResource())
end
end
addCommandHandler("biznes.wyplac",wyplac)
function wbil ( hitElement )
if getElementType(hitElement) ~= "player" then return end
if getPedOccupiedVehicle(hitElement) then return end
pickup[hitElement] = source
local biznes = source
if getElementData(biznes, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela, aby go zakupi? wpisz /biznes.kup", hitElement, 255, 255, 255) return end
local uid=getElementData(hitElement, "player:uid")
local wlasciciel=getElementData(biznes, "owner")
local nazwa=getElementData(biznes, "name")
local id=getElementData(biznes, "id")
local koszt=getElementData(biznes, "cost")
local saldo=getElementData(biznes, "saldo")
local data=getElementData(biznes,"data")
local sal = exports["ogrpg-db"]:dbGet("select data from biznesy where data < NOW() and id=?",getElementData(biznes,"id"))
if sal and #sal > 0 then exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?,zajety=? WHERE data < NOW() and id=?","brak","n",getElementData(biznes,"id")) outputChatBox("Biznes zwolniony poniewaz nie zostal oplacony w czasie !",hitElement);restartResource(getThisResource()) return end
if tonumber(uid) ~= tonumber(wlasciciel) then outputChatBox("Ten biznes jest ju? zaj?ty!", hitElement, 255, 255, 255) return end
triggerClientEvent("gui:otworz", hitElement, hitElement, wlasciciel, nazwa, id, koszt,saldo,data)
end
addEventHandler ( "onPickupHit", resourceRoot, wbil )


function cmd(plr,cmd,cost,...)
if getAdmin(plr,6) or getAdmin(plr,5) then
 if not tonumber(cost) or #arg == 0 then
  outputChatBox("U?ycie: /biznes.stworz <koszt> <nazwa>", plr, 255, 255, 255)
  return
 end
local x,y,z=getElementPosition(plr)
local name2 = table.concat(arg, " ")
outputChatBox("Pomy?lnie utworzy?e? nowy biznes o nazwie "..name2.." za "..cost.." PLN", plr, 255, 255, 255)
exports["ogrpg-db"]:dbSet("INSERT INTO biznesy SET owner=?, xyz='?,?,?', cost=?, nazwa=?, zajety=?",
"brak",x,y,z,tonumber(cost),tostring(name2),"n")
restartResource(getThisResource())
end
end
addCommandHandler("biznes.stworz", cmd)

function przedluz(plr,cmd)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local sal = exports["ogrpg-db"]:dbGet("select data from biznesy where data < NOW() and id=?",getElementData(biz2,"id"))
if sal and #sal > 0 then outputChatBox("Ten biznes juz nie nalezy do ciebie spozniles sie !",plr); restartResource(getThisResource()) return end
local bkoszt=getElementData(biz2, "cost")
local kwota = math.floor(bkoszt)
local saldo = getPlayerMoney(plr)
local brakuje = kwota - saldo
if saldo < kwota then outputChatBox("*Nie masz tyle srodk?w na koncie ("..kwota..") Brakuje ci "..brakuje.." PLN",plr,255,0,0) return end
exports["ogrpg-db"]:dbSet("update biznesy set data=data + INTERVAL 7 day where id=?",getElementData(biz2,"id"))
takePlayerMoney(plr,kwota)
outputChatBox("* Przedluzyles biznes o 7 dni!",plr,0,255,0)
triggerClientEvent("gui:zamknij",root)
restartResource(getThisResource())
end
end
addCommandHandler("biznes.przedluz",przedluz)



function sypnijmu()
local marker = getElementsByType("pickup")
for _,m in ipairs(marker) do
if getElementData(m, "owner") then
if tonumber(getElementData(m, "owner")) == tonumber(getElementData(source, "player:uid")) then
local flor= tonumber(getElementData(m, "dostanie"))
outputChatBox("Otrzymujesz "..flor.." PLN za posiadanie biznesu: "..getElementData(m, "name").."", source, 255, 255, 255)
givePlayerMoney(source, flor)
end
end
end
end
addEvent("sypnij", true)
addEventHandler("sypnij", getRootElement(), sypnijmu)


addEventHandler("onResourceStart",resourceRoot,function()
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?,zajety=? WHERE data < NOW()","brak","n")
setTimer(init,3000,1)
end)

local czas_restartu = 60*60*1000
setTimer(function()
for i,p in pairs(getElementsByType('pickup')) do
 if #getElementsWithinColShape(getElementColShape(p)) > 0 then return end
end
restartResource(getThisResource())
end,czas_restartu,0)


Bardzo prosz? o pomoc. Za rozwi?zanie daje :piwo: oraz R*

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-08-17, 21:16


Wilq







Wiek: 24
Na forum: 4570 dni
Posty: 3409

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Wgraj modu? MySQL lub u?yj nowszych funkcji od bazy danych.


Więcej informacji znajdziesz w Wikipedii MTA:

Modules/MTA-MySQL


Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-08-18, 07:39


DaVeCS

Mapper






Wiek: 31
Na forum: 3527 dni
Posty: 193
Nick w MP: DaVe

Piwa: 59

Respekt: 70,5

A je?li chcia?bym u?y? nowszych funkcji, to m?g?by? mi pom?c? Bo sam pr?bowa?em lecz nie dzia?a?o :(

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-08-18, 08:58


Wilq







Wiek: 24
Na forum: 4570 dni
Posty: 3409

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Poka? kod, kt?ry pr?bowa?e? napisa?.

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
DaVeCS
Wysłany: 2019-08-18, 16:38


DaVeCS

Mapper






Wiek: 31
Na forum: 3527 dni
Posty: 193
Nick w MP: DaVe

Piwa: 59

Respekt: 70,5

To jest kod na biznesy:

local SQL_LOGIN="db_45915"  --login do bazy danych
local SQL_PASSWD="C3Z5wNh2McA9"  --has?o do bazy danych
local SQL_DB="db_45915"  --pystories-db danych
local SQL_HOST="137.74.0.12"  --host bazy danych
local SQL_PORT=tonumber(get("port") or 3306)  --port(standardowo 3306)

local SQL

local function connect()  --??czy z baz? danych
 SQL = mysql_connect(SQL_HOST, SQL_LOGIN, SQL_PASSWD, SQL_DB, SQL_PORT)
 if (not SQL) then
  outputServerLog("BRAK POLACZENIA Z BAZA DANYCH!")
 else
  mysql_query(SQL,"SET NAMES utf8")
  outputServerLog("POLACZENIE JEST!")
 end

end

addEventHandler("onResourceStart",getResourceRootElement(),function()  --po w?aczeniu skryptu wysy?a do funkcji kt?ra ?aczy si? z baz? danych
    connect()
end)

function esc(value)
    return mysql_escape_string(SQL,value)
end

function pobierzTabeleWynikow(query)
    local result=mysql_query(SQL,query)
    if (not result) then
        outputDebugString("mysql_query failed: (" .. mysql_errno(SQL) .. ") " .. mysql_error(SQL)) -- Show the reason
        return nil
    end
    local tabela={}
    for result,row in mysql_rows_assoc(result) do
        table.insert(tabela,row)
    end
    mysql_free_result(result)
    return tabela
end

function pobierzWyniki(query)
    local result=mysql_query(SQL,query)
    if (not result) then return nil end
    row = mysql_fetch_assoc(result)
    mysql_free_result(result)
    return row
end


function zapytanie(query)
    local result=mysql_query(SQL,query)
    if (result) then mysql_free_result(result) end
    return
end

function init()
    local biznesy=pobierzTabeleWynikow("select biznesy.id,biznesy.owner,biznesy.cost,biznesy.zajety,biznesy.nazwa,biznesy.saldo,biznesy.xyz,biznesy.data,pystories_users.login from biznesy LEFT JOIN pystories_users on biznesy.owner=pystories_users.id")
    for i,v in ipairs(biznesy) do
    stworz(v)
    end
end

local pickup = {}

local bramy = {}

function stworz(v)
    if not v.login then v.zajety="n" end
    v.xyz=split(v.xyz,",")
    biz=createPickup ( v.xyz[1], v.xyz[2], v.xyz[3], 3, 1274, 0 )
    createBlipAttachedTo(biz,59,2,0,0,0,0,0,275)
    local biz2 = biz
    local tw=createElement("text")
    local x2342=v.cost/240
    local x234 = math.floor(x2342)
    local ***** = math.floor(v.cost/4)
    if v.zajety == "n" then v.login = "Brak";v.data="Brak w?asciciela" end
    local profir1 = math.floor(x234*24*7)
--    outputDebugString(v.id)
    local format1=("Biznes: %s (ID: %s )\nW?a?ciciel: %s \nKoszt na 7 dni: %s PLN\nPieni?dze co godzine: %s PLN\nPieni?dze za sprzeda?: %s PLN\nOplacony do: %s \nZarobek tygodniowy: %s PLN"):format(v.nazwa,v.id,v.login,v.cost,x234,*****,v.data,profir1)
    setElementData(tw, "name", format1)
    setElementPosition(tw, v.xyz[1], v.xyz[2], v.xyz[3]+0.8)
    setElementData(biz2, "cost", v.cost)
    setElementData(biz2, "z", v.zajety)
    setElementData(biz2, "name", v.nazwa)
    setElementData(biz2, "id", v.id)
    setElementData(biz2, "payday",x234)
    setElementData(biz2, "saldo",v.saldo)
    setElementData(biz2,"data",v.data)
    setElementData(biz2, "owner", v.owner)
end
--[[
function bramabiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
    local biz2 = pickup[plr]
    if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
        if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:sid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
    local gate = getElementData(biz2,"gate")
    if not gate then outputChatBox("* Twoj biznes nie ma bramy",plr) return end
    local zamknieta = getElementData(gate,"state")
        local open = getElementData(gate,"open")
    local close = getElementData(gate,"close")
    local animation = getElementData(gate,"animation")
    if animation then outputChatBox("*Poczekaj a? brama sko?czy si? rusza?!",plr) return end
    if zamknieta then
        moveObject(gate, 5000, open[1],open[2], open[3],0,0,0, "OutQuad")
        setElementData(gate,"animation",true)
        setTimer(function(gates) setElementData(gates,"animation",false); setElementData(gates,"state",false) end,5000,1,gate)
    else
        moveObject(gate, 5000, close[1],close[2], close[3],0,0,0, "OutQuad")
        setTimer(function(gates) setElementData(gates,"animation",false); setElementData(gates,"state",true) end,5000,1,gate)
    end
end
end
addCommandHandler("biznes.brama", bramabiznes)
]]

function sprzedajbiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local cashit=getElementData(biz2, "cost")
local lasthit2=cashit/4
local lasthit = math.floor(lasthit2)
outputChatBox("Otrzymujesz "..lasthit.." PLN za sprzeda? swojego biznesu ("..getElementData(biz2, "name")..")", plr, 255, 255, 255)
givePlayerMoney(plr, lasthit)
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?, zajety=?, saldo=0 WHERE id=?","brak", "n", getElementData(biz2, "id"))
restartResource(getThisResource())
end
end
addCommandHandler("biznes.sprzedaj", sprzedajbiznes)

function kupbiznes(plr)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "t" then outputChatBox("Ten biznes ma ju? w?a?ciciela!", plr, 255, 255, 255) return end
if getElementData(biz2, "z") == "n" then
local bkoszt=getElementData(biz2, "cost")
local hajs=getPlayerMoney(plr)
if tonumber(getElementData(plr, "player:reputation")) < 2500 then outputChatBox("Aby zakupi? biznes musisz posiada? 2500 RP!", plr, 255, 255, 255) return end
if tonumber(bkoszt) > tonumber(hajs) then outputChatBox("Nie posiadasz "..getElementData(biz2, "cost").." PLN", plr, 255, 255, 255) return end
local limit = exports["ogrpg-db"]:dbGet("SELECT * FROM biznesy WHERE owner=?",getElementData(plr,"player:uid"))
if #limit >= 1 then outputChatBox("Posiadasz ju? jeden biznes!",plr,255,0,0) return end
outputChatBox("Pomy?lnie zakupi?e? biznes o nazwie "..getElementData(biz2, "name").." za "..getElementData(biz2, "cost").." PLN na 7 dni. Pamietaj o przedluzeniu!", plr, 255, 255, 255)
takePlayerMoney(plr, getElementData(biz2, "cost"))
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET zajety=?, owner=?, saldo=?, data = NOW() + INTERVAL 7 day WHERE id=?", "t", getElementData(plr, "player:uid"), "0", getElementData(biz2, "id"))
restartResource(getThisResource())
end
end
end
addCommandHandler("biznes.kup", kupbiznes)


function wyplac(plr,cmd,kwota)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local sal = exports["ogrpg-db"]:dbGet("select saldo from biznesy where id=?",getElementData(biz2,"id"))
local saldo = sal[1].saldo
if not tonumber(kwota) then
    outputChatBox("-- Biznes --",plr,255, 255, 255)
    outputChatBox("/biznes.wyplac <kwota>",plr,255, 255, 255)
    outputChatBox("Dostepne ?rodki: "..saldo,plr,255, 255, 255)
    return
end
local kwota = math.floor(kwota)
if saldo < kwota then outputChatBox("*Nie masz tyle srodk?w na koncie",plr,255,0,0) return end
exports["ogrpg-db"]:dbSet("update biznesy set saldo=saldo-?? where id=?",kwota,getElementData(biz2,"id"))
givePlayerMoney(plr,kwota)
outputChatBox("* Wyp?acile? "..kwota.. "PLN z biznesu!",plr,0,255,0)
triggerClientEvent("gui:zamknij",root)
restartResource(getThisResource())
end
end
addCommandHandler("biznes.wyplac",wyplac)
function wbil ( hitElement )
if getElementType(hitElement) ~= "player" then return end
if getPedOccupiedVehicle(hitElement) then return end
pickup[hitElement] = source
local biznes = source
if getElementData(biznes, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela, aby go zakupi? wpisz /biznes.kup", hitElement, 255, 255, 255) return end
local uid=getElementData(hitElement, "player:uid")
local wlasciciel=getElementData(biznes, "owner")
local nazwa=getElementData(biznes, "name")
local id=getElementData(biznes, "id")
local koszt=getElementData(biznes, "cost")
local saldo=getElementData(biznes, "saldo")
local data=getElementData(biznes,"data")
local sal = exports["ogrpg-db"]:dbGet("select data from biznesy where data < NOW() and id=?",getElementData(biznes,"id"))
if sal and #sal > 0 then exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?,zajety=? WHERE data < NOW() and id=?","brak","n",getElementData(biznes,"id")) outputChatBox("Biznes zwolniony poniewaz nie zostal oplacony w czasie !",hitElement);restartResource(getThisResource()) return end
if tonumber(uid) ~= tonumber(wlasciciel) then outputChatBox("Ten biznes jest ju? zaj?ty!", hitElement, 255, 255, 255) return end
triggerClientEvent("gui:otworz", hitElement, hitElement, wlasciciel, nazwa, id, koszt,saldo,data)
end
addEventHandler ( "onPickupHit", resourceRoot, wbil )


function cmd(plr,cmd,cost,...)
if getAdmin(plr,6) or getAdmin(plr,5) then
 if not tonumber(cost) or #arg == 0 then
  outputChatBox("U?ycie: /biznes.stworz <koszt> <nazwa>", plr, 255, 255, 255)
  return
 end
local x,y,z=getElementPosition(plr)
local name2 = table.concat(arg, " ")
outputChatBox("Pomy?lnie utworzy?e? nowy biznes o nazwie "..name2.." za "..cost.." PLN", plr, 255, 255, 255)
exports["ogrpg-db"]:dbSet("INSERT INTO biznesy SET owner=?, xyz='?,?,?', cost=?, nazwa=?, zajety=?",
"brak",x,y,z,tonumber(cost),tostring(name2),"n")
restartResource(getThisResource())
end
end
addCommandHandler("biznes.stworz", cmd)

function przedluz(plr,cmd)
if isElementWithinColShape(plr, getElementColShape(pickup[plr])) then
local biz2 = pickup[plr]
if getElementData(biz2, "z") == "n" then outputChatBox("Ten biznes nie ma w?a?ciciela!", plr, 255, 255, 255) return end
if tonumber(getElementData(biz2, "owner")) ~= tonumber(getElementData(plr, "player:uid")) then outputChatBox("To nie jest tw?j biznes!", plr, 255, 255, 255) return end
local sal = exports["ogrpg-db"]:dbGet("select data from biznesy where data < NOW() and id=?",getElementData(biz2,"id"))
if sal and #sal > 0 then outputChatBox("Ten biznes juz nie nalezy do ciebie spozniles sie !",plr); restartResource(getThisResource()) return end
local bkoszt=getElementData(biz2, "cost")
local kwota = math.floor(bkoszt)
local saldo = getPlayerMoney(plr)
local brakuje = kwota - saldo
if saldo < kwota then outputChatBox("*Nie masz tyle srodk?w na koncie ("..kwota..") Brakuje ci "..brakuje.." PLN",plr,255,0,0) return end
exports["ogrpg-db"]:dbSet("update biznesy set data=data + INTERVAL 7 day where id=?",getElementData(biz2,"id"))
takePlayerMoney(plr,kwota)
outputChatBox("* Przedluzyles biznes o 7 dni!",plr,0,255,0)
triggerClientEvent("gui:zamknij",root)
restartResource(getThisResource())
end
end
addCommandHandler("biznes.przedluz",przedluz)



function sypnijmu()
local marker = getElementsByType("pickup")
for _,m in ipairs(marker) do
if getElementData(m, "owner") then
if tonumber(getElementData(m, "owner")) == tonumber(getElementData(source, "player:uid")) then
local flor= tonumber(getElementData(m, "dostanie"))
outputChatBox("Otrzymujesz "..flor.." PLN za posiadanie biznesu: "..getElementData(m, "name").."", source, 255, 255, 255)
givePlayerMoney(source, flor)
end
end
end
end
addEvent("sypnij", true)
addEventHandler("sypnij", getRootElement(), sypnijmu)


addEventHandler("onResourceStart",resourceRoot,function()
exports["ogrpg-db"]:dbSet("UPDATE biznesy SET owner=?,zajety=? WHERE data < NOW()","brak","n")
setTimer(init,3000,1)
end)

local czas_restartu = 60*60*1000
setTimer(function()
for i,p in pairs(getElementsByType('pickup')) do
 if #getElementsWithinColShape(getElementColShape(p)) > 0 then return end
end
restartResource(getThisResource())
end,czas_restartu,0)


Ja zmieni?em kilka linijek, a mianowicie:

T?:
SQL = mysql_connect(SQL_HOST, SQL_LOGIN, SQL_PASSWD, SQL_DB, SQL_PORT)

zmieni?em na
SQL = DBconnect(SQL_HOST, SQL_LOGIN, SQL_PASSWD, SQL_DB, SQL_PORT)
lecz to nic nie zmieni?o

[ Dodano: 2019-08-19, 08:58 ]
Dodam ?e po wgraniu modu?u mam taki b??d:
bad argument #1 to 'ipairs' (table expected, got nil)

[ Dodano: 2019-08-19, 09:13 ]
Z tym co wy?ej upora?em si? sam, poprzez wgranie modu?u, Lecz teraz pojawi? si? inny problem, gdy stworz? 1 biznes i chc? stworzy? kolejny, to ten 2 si? nie pojawia ani na serwerze ani w Bazie danych

[ Dodano: 2019-08-19, 11:28 ]
Wilq, Wiesz mo?e co jest przyczyn?? ?e jak stworz? 1 biznes i chc? stworzy? kolejny, to ten 2 si? nie pojawia ani na serwerze ani w Bazie danych

[ Dodano: 2019-08-20, 07:52 ]
Czy kto? pomo?e? Bo naprawd? nie wiem co jest nie tak :/

[ Dodano: 2019-08-20, 11:49 ]
Kolejn? rzecz? kt?ra mo?e by? przyczyn? jest to ?e ka?demu biznesowi nadaje ID 0 i nie wiem jak to zmieni?

[ Dodano: 2019-08-21, 07:41 ]
Dobra wszystko ogarni?te, wystarczy?o doda? Auto Increment do Tabeli ID od biznes?w i wszystko dzia?a,

Temat do zamkni?cia

Postaw piwo autorowi tego posta
 

 
Tagi: biznesy
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA Odpowiedz do tematu

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku