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

Wysłany: 2019-10-13, 18:35


Daniel77







Wiek: 31
Na forum: 4857 dni
Posty: 8

Piwa: 10

Respekt: 50

Witam !

Posiadam ogromny problem a mianowicie chodzi o to ?e, prace na moim serwerze wszystkie dzia?a?y bez problemu i nagle z dnia na dzie? przesta?o dawa? kas? za prace. Czyli po wej?ciu w punkt w pracy powinno si? dostawa? kas? i na czacie pisz? ?e dosta?em a w rzeczywisto?ci jej nie nalicza czyli w chudzie dalej jest "0 PLN"

Dodam ?e w konsoli wyskakuje taki b??d przy ka?dym wej?ciu w taki punkt:

Kod:

ERROR: Client (#0079EBDaniel77) triggered serverside event money, but event is not added serverside


I co gorsza ten sam b??d si? pojawi? w ka?dej innej pracy na serwerze !

Szpera?em na google jak to mo?na naprawi? lecz nie znalaz?em konkret?w lecz wiem ?e wina le?y po stronie plik?w po stronie Clienta "praca_c.lua" w linijce "triggered serverside event money" lecz gdy pr?bowa?em to jako? ogarn?? / naprawi? ?adnych efekt?w pozytywnych.

Kod:

local job_marker = createMarker(-2087.53, -1529.02, 77.80-0.9, "cylinder", 1, 255, 255, 0, 60)
local job_marker_cancel = createMarker(-2088.64, -1531.94, 77.80-0.9, "cylinder", 1, 255, 0, 0, 50)
createBlip(-1999.99, -1552.93, 85.01,46)
local time_freeze = math.random(6000,9000)
local name_job = "wydobywania surowc?w mineralnych"
local button_job = "e"
local button_state = "down"
local digging_animation = "bat_4"
local sw, sh = guiGetScreenSize()


local rozpoczecie = createElement("text")
setElementData(rozpoczecie, "name", "Praca g?rnika\nZarobki: 10-20 PLN\nPremium 30% wi?cej!")
setElementPosition(rozpoczecie, -2012387.53, -1529.02, 77.80)

local anulowanie = createElement("text")
setElementData(anulowanie, "name", "Anulowanie pracy\nAby zako?czy?, wci?nij 'E'!")
setElementPosition(anulowanie, -2081238.64, -1531.94, 77.80+0.10)


local points = {
{-2103.61, -1518.70, 77.80},
{-2102.30, -1537.98, 77.47},
{-2134.67, -1527.72, 77.86},
{-2140.18, -1535.47, 77.80},
{-2149.79, -1536.17, 77.80},
{-2154.60, -1523.97, 77.80},
{-2146.71, -1518.26, 78.08},
{-2182.42, -1532.73, 77.90},
{-2140.01, -1524.30, 77.80},
{-2136.47, -1527.72, 77.83},
}

local nazwy = {
"rudy ?elaza",
"sztabki w?gla brunatnego",
"sztabki w?gla kamiennego",
"rudy z?ota",
"rudy diamentu",
"rudy szmaragdu",
"rudy miedzi",
"sztabki soli kamiennej",
"sztabki granitu",
}

local objective
local draw
local draw = 0
local element_type = "player"

function isEventHandlerAdded( sEventName, pElementAttachedTo, func )
if type( sEventName ) == 'string' and isElement( pElementAttachedTo ) and type( func ) == 'function' then
local aAttachedFunctions = getEventHandlers( sEventName, pElementAttachedTo )
if type( aAttachedFunctions ) == 'table' and #aAttachedFunctions > 0 then
for i, v in ipairs( aAttachedFunctions ) do
if v == func then
return true
end
end
end
end
return false
end

local function postep()
local pasek = interpolateBetween(0, 0, 0, sw * 0.4297, 0, 0, (getTickCount()-time)/time_freeze, "InOutQuad")
dxDrawText("Post?p:", (sw * 0.2855) + 0.8, (sh * 0.2422) + 0.8, (sw * 0.4407) + 0.8, (sh * 0.2799) + 0.8, tocolor(0, 0, 0, 255), 3.00, "default-bold", "left", "top", false, false, false, true, false)
dxDrawText("Post?p:", sw * 0.2855, sh * 0.2422, sw * 0.4407, sh * 0.2799, tocolor(255, 255, 255, 255), 3.00, "default-bold", "left", "top", false, false, false, true, false)
dxDrawLine((sw * 0.2855) - 1, (sh * 0.3060) - 1, (sw * 0.2855) - 1, sh * 0.3659, tocolor(0, 0, 0, 200), 1, false)
dxDrawLine(sw * 0.7152, (sh * 0.3060) - 1, (sw * 0.2855) - 1, (sh * 0.3060) - 1, tocolor(0, 0, 0, 200), 1, false)
dxDrawLine((sw * 0.2855) - 1, sh * 0.3659, sw * 0.7152, sh * 0.3659, tocolor(0, 0, 0, 200), 1, false)
dxDrawLine(sw * 0.7152, sh * 0.3659, sw * 0.7152, (sh * 0.3060) - 1, tocolor(0, 0, 0, 200), 1, false)
dxDrawRectangle(sw * 0.2855, sh * 0.3060, sw * 0.4297, sh * 0.0600, tocolor(0, 0, 0, 170), false)
dxDrawRectangle(sw * 0.2855, sh * 0.3060, pasek, sh * 0.0600, tocolor(0, 155, 255, 255), false)
end

local function hitmarker(player, md)
if not md or getElementType(player) ~= element_type then return end
if player ~= localPlayer then return end
outputChatBox("Aby rozpocz?? prac? "..name_job.." wci?nij klawisz '"..button_job.."'.")
end
addEventHandler("onClientMarkerHit", job_marker, hitmarker)

local function startjob()
if not isElementWithinMarker(localPlayer, job_marker) then return end
if getElementData(localPlayer, "player:miner") == true then exports["LS-Notyfikacje"]:noti("* Posiadasz aktywn? prac?!", 255, 0, 0, true) return end
if getPedOccupiedVehicle(localPlayer) == true then exports["LS-Notyfikacje"]:noti("* Nie mo?esz by? w poje?dzie!", 255, 0, 0, false) return end
setElementData(localPlayer, "player:miner", true)
outputChatBox("Rozpocz??e?(a?) prac? "..name_job..", id? wydoby? surowiec zaznaczony blipem 'C' na minimapie.")
toggleControl("sprint", false) toggleControl("jump", false) toggleControl("crouch", false) toggleControl("next_weapon", false) toggleControl("previous_weapon", false) toggleControl("fire", false)
triggerServerEvent("kilof", localPlayer)
job_stage(localPlayer)
end
bindKey(button_job, button_state, startjob)

local function canceljob()
if not isElementWithinMarker(localPlayer, job_marker_cancel) then return end
if getElementData(localPlayer, "player:miner") == false then outputChatBox("Nie posiadasz aktywnej pracy!") return end
if getPedOccupiedVehicle(localPlayer) == true then outputChatBox("Nie mo?esz by? w poje?dzie!") return end
outputChatBox("Zako?czy?e?(a?) prac? "..name_job..".")
toggleControl("sprint", true) toggleControl("jump", true) toggleControl("crouch", true) toggleControl("next_weapon", true) toggleControl("previous_weapon", true)
if isElement(objective) and isElement(blip) and isElement(rocks) and isElement(text) then
destroyElement(objective)
destroyElement(blip)
destroyElement(rocks)
destroyElement(text)
end
if isEventHandlerAdded("onClientRender", root, postep) then
removeEventHandler("onClientRender", root, postep)
end
triggerServerEvent("end_job", localPlayer)
setElementData(localPlayer, "player:miner", false)
end
bindKey(button_job, button_state, canceljob)

function job_stage(player, md)
if (objective) and isElement(objective) then
destroyElement(objective)
destroyElement(blip)
destroyElement(rocks)
objective = nil
end
toggleControl("sprint", false) toggleControl("jump", false) toggleControl("crouch", false) toggleControl("next_weapon", false) toggleControl("previous_weapon", false) toggleControl("fire", false)
local losuj = math.random(2, #points)
local miner = points
objective = createMarker(miner[losuj][1], miner[losuj][2], miner[losuj][3]-0.95, "cylinder", 1.1, 0, 255, 0, 70)
rocks = createObject(math.random(3930,3931), miner[losuj][1]+math.random(0.4,0.5), miner[losuj][2]+math.random(0.2, 0.3), miner[losuj][3]-0.6, 0, 0, math.random(0,90))
blip = createBlipAttachedTo(objective, 12)
text = createElement("text")
setElementData(text, "name", "Surowiec")
setElementPosition(text, miner[losuj][1], miner[losuj][2], miner[losuj][3]+0.12)
addEventHandler("onClientMarkerHit", objective, function(player, md)
if not md or getElementType(player) ~= element_type then return end
if player ~= localPlayer then return end
if isPedInVehicle(player) then outputChatBox("Nie mo?esz by? w poje?dzie!") return end
local data = setElementData(player, "player:miner", true)
if data then outputDebugString("Nadano elementdat? g?rnika dla u?ytkownika o nicku: "..getPlayerName(player)..".") end
setElementFrozen(player, true)
--toggleAllControls(false)
outputChatBox("Wydobywasz surowiec...")
addEventHandler("onClientRender", root, postep)
time = getTickCount()
setTimer(function()
removeEventHandler("onClientRender", root, postep)
end, time_freeze, 1)
triggerServerEvent("animation", localPlayer)
setTimer(function()
setElementFrozen(player, false)
--toggleAllControls(true)
setPedAnimation(player, digging_animation)
destroyElement(objective)
destroyElement(blip)
destroyElement(rocks)
destroyElement(text)
triggerServerEvent("end_animation", localPlayer)
job_stage(localPlayer)
wyplata(localPlayer)
end, time_freeze, 1)
end)
end

function wyplata()
local kwota = math.random(70,90)
local random = math.random(1, #nazwy)
--setElementData(localPlayer, element_data, false)
if getElementData(localPlayer,"player:premium") then
local kwota = math.random(70,90)
local kwotap = math.random(90,100)
triggerServerEvent("hajs", localPlayer, kwotap)
outputChatBox("Za wydobycie "..nazwy[random].." otrzymujesz "..(kwotap or "wyst?pi? b??d").." PLN")
else
triggerServerEvent("hajs", localPlayer, kwota)
outputChatBox("Za wydobycie "..nazwy[random].." otrzymujesz "..(kwota or "wyst?pi? b??d").." PLN.")
end
end

function onresourcestop()
if isEventHandlerAdded("onClientRender", root, postep) then
removeEventHandler("onClientRender", root, postep)
end
setElementData(localPlayer, "player:miner", false)
setElementFrozen(localPlayer, false)
toggleControl("sprint", true)
toggleControl("jump", true)
toggleControl("crouch", true)
toggleControl("next_weapon", true)
toggleControl("previous_weapon", true)
toggleControl("fire", true)
end
addEventHandler("onClientResourceStop", resourceRoot, onresourcestop)

local function hitmarker2(player, md)
if not md or getElementType(player) ~= element_type then return end
if player ~= localPlayer then return end
outputChatBox("✔ Aby zako?czy? prac? "..name_job.." wci?nij klawisz #99FF00'"..button_job.."'", 255, 0, 0, true)
end
addEventHandler("onClientMarkerHit", job_marker_cancel, hitmarker2)


Oraz miejsce tego b??du:
Kod:

function wyplata()
local kwota = math.random(70,90)
local random = math.random(1, #nazwy)
--setElementData(localPlayer, element_data, false)
if getElementData(localPlayer,"player:premium") then
local kwota = math.random(70,90)
local kwotap = math.random(90,100)
triggerServerEvent("hajs", localPlayer, kwotap)
outputChatBox("Za wydobycie "..nazwy[random].." otrzymujesz "..(kwotap or "wyst?pi? b??d").." PLN")
else
triggerServerEvent("hajs", localPlayer, kwota)
outputChatBox("Za wydobycie "..nazwy[random].." otrzymujesz "..(kwota or "wyst?pi? b??d").." PLN.")
end
end


Bardzo bym prosi? o pomoc ! Pozdrawiam[/code]

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-10-13, 19:16


Wilq







Wiek: 24
Na forum: 4428 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Brak eventu po stronie servera: 'hajs' lub 'money' zale?y jak go nazwa?e?. W kodzie jedno, w b??dzie drugie.


Więcej informacji znajdziesz w Wikipedii MTA:

addEvent


Więcej informacji znajdziesz w Wikipedii MTA:

addEventHandler


Postaw piwo autorowi tego posta
 

 
Tagi: prace :: [nie :: wypłacanie :: kasy :: prace]
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Prace [Nie wypłacanie kasy za prace] 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