Witam, zaczn? ?e jestem ca?kowicie zielony w tym temacie , ale wracaj?c
od pewnego czasu zacz??em bawi? si? paczk? MTA, wszystkie skrypty z bazami danych dzia?aj?, ale nie dzia?a jeden z nich. Jest to skrypt do systemu dom?w.
Po jego uruchomieniu wyrzuca b??d: interiory.lua:26: bad argument #1 to 'ipairs' (table expected, got boolean). Wrzucam tutaj skrypt interiory.lua z tym b??dem.
Po rozwi?zaniu problemu stawiam zimne
Witam, jest b??d, ?e nie mo?e okre?li? warto?ci, wie kto? jak go naprawi? ?
DB3
[lua]
bad argument #37 to 'format' (string expected, got boolean)
[/lua]
B??d le?y tutaj
[lua]
local query = exports["pystories-db"]:dbSet(string.format("UPDATE pystories_vehicles SET model='%d', pos='%.2f,%.2f,%.2f,%.2f,%.2f,%.2f', rent='%d',text='%s', health='%d', fuel='%d', mileage='%d', frozen='%d', driver='%s', color='%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d', panelstates='%s', paintjob='%d', tuning='%s', headlights='%d,%d,%d', ownedPlayer='%d', lpgilosc='%s', lpgposiada='%s', licznik='%s', pojemnosc='%s', mk3='%s', blokada='%s' WHERE id=%d",
[/lua]
kod
s_side
[lua]
function onSaveVehicle(vehicle)
if getElementData(vehicle,"vehicle:spawn") then
-- Setting
local panelstates={}
local model=getElementModel(vehicle)
local health=getElementHealth(vehicle)
local x,y,z=getElementPosition(vehicle)
local rx,ry,rz=getElementRotation(vehicle)
local desc=getElementData(vehicle,"vehicle:desc") or ""
local id=getElementData(vehicle,"vehicle:id")
local fuel=getElementData(vehicle,"vehicle:fuel")
local mileage=getElementData(vehicle,"vehicle:mileage")
local c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12=getVehicleColor(vehicle, true)
local driver=getElementData(vehicle,"vehicle:driver") or ""
...
Witam jak naprawi? taki b??d z eksportem d?wi?ku ? ?cie?k? mam spisan? dobrze sprawdza?em kilka razy. Plik r?wnie? jest dobrze nagrany. Odtwarzanie tego d?wi?ku dzia?a tylko i wy??cznie w katalogu macierzystym. Jak chce zrobi? eksporta z katalogu w kt?rym znajduj? si? ten d?wi?k. Wyskakuje mi taki b??d
Witam, maly problem. Tzn po uplynieciu czasu podanego w timerze, znika pojazd lecz nie przenosi uzytkownika w miejsce ktore powinien sie dostac.
Screen z DB3:
local model = getElementModel(veh) local k = getElementData(veh, "salon")
if k == "salon" then
x, y, z = -1966.47, 289.33, 35.47 elseif k == "cygan" then
x, y, z = -929.38, -504.07, 25.96
end
local veh=createVehicle(model, 2861.52, -1990.78, 10.76, 359.8, 0.0, 358.2) setVehicleColor( veh, 255, 255, 255 ) setVehiclePlateText(veh, "TEST ") setElementDimension ( veh, 69 ) setElementDimension ( source, 69 ) warpPlayerIntoVehicle(source,veh) setTimer(function(plr) destroyElement(veh) setElementPosition ( plr, x, y, z) setElementDimension ( plr, 0 ) end, 400, 1) end)
hey mam problem z zdefiniowaniem go?cia w aucie kto? pomo?e?
oto kod
s-side
function pomocnik () setTimer(function(thePlayer) veh = getPedOccupiedVehicle(thePlayer) --wy?wietla sie ten error co w temacie if veh then if getElementData(veh,"zarejestrony") == 1 then
triggerClientEvent(thePlayer, "STARTJobBus", resourceRoot,veh) end
end
end, 5000, 0 ) end
addEventHandler("onResourceStart",getRootElement(),pomocnik)
for i,v in ipairs(markery) do local markery = createMarker(v[1], v[2], v[3]-1, "cylinder", 9, 0, 0, 0, 170) end
addEventHandler("onClientMarkerHit", markery,
function(el) local kasa = getPlayerMoney(el) local hajs = 10
local veh = getPedOccupiedVehicle(el)
if kasa < hajs then outputChatBox("Nie posiadasz wystarczaj?co pini?dzy aby przejecha?.", client, 255,255,255, true) return end if not veh then outputChatBox("Nie jeste? w aucie", client, 255,255,255, true) return end
setPedFrozen(veh,true) takePlayerMoney(veh, hajs) setPedFrozen(veh,false)
--end
end)
b??d
Bad argument @ 'addEventHandler' [Expected element at argument 2, got table]
Problem polega na tym, ?e pr?buj?c usun?? Equipped w paczce Tekkena, w pewien spos?b mi si? to uda?o. Jednak?e wyskakuje taki b??d:
[code]WARNING: dayz/core.lua:459: Bad argument @ 'takeWeapon' [Expected weapon-type at argument 2, got boolean][/code]
Plik:
[code]addEventHandler("removeBackWeaponOnDrop", root, function(check, slot)
if (slot == 1) then
removeWeaponBack(source);
removeWeaponReplace(source);
elseif (slot == 2) then
removeWeaponBack2(source);
end
if check then
local weapon = getElementData(source, "currentweapon_"..tostring(slot));
local _,id,_ = getWeaponAmmoType(weapon);
takeWeapon(source, id);
if (slot == 3) then
takeWeapon(client, id);
local weapon = getElementData(client, "currentweapon_3");
if weapon then
setElementData(client, weapon.." (Equipped)", getElementData(client, weapon.." (Equipped)") - 1);
setElementData(client, "currentweapon_3", "");
end
end
setElementData(source, "currentweapon_"..tostring(slot), "");
triggerClientEvent(source, "refreshInventoryManual", source);
end
end);[/code]
Co podejrzewam o z?e dzia?anie?
[code]addEventHandler("onPlayerMoveItemOutOFInventory", root, function(itemName, loot)
local itemPlus = getItemPlus(itemName)
if itemPlus == 1 and itemName then
triggerServerEvent("removeBackWeaponOnDrop", localPlayer, true, getEquippe...
Wi?c, pr?buje przenie?? system wzywania z ITS 2017 na Pystories 3.0
Wi?c typowo "elementdaty" zosta?y zmienione na odpowiadaj?ce byciu na "s?u?bie" w frakcji, jak i te? rozwi?za?em problem z "font'em". tylko zacz?? pojawia? si? nowy problem, polegaj?cy na tym ?e nie pojawiaj? si? zg?oszenia (mimo tego ?e s? zapisywane w bazie danych) jak i te? pojawia si? b??d w DS3:
[code]ERROR: (?cie?ka skryptu)iyw_zawiadomieniac.lua:209: bad argument #1 od 'ipars' (table expected, got boolean)[/code]
tak wygl?da kawa?ek kodu gdzie wyst?puje b??d:
[lua]addEvent("ZAWIADOMIENIA:SHOWLIST", true)
addEventHandler("ZAWIADOMIENIA:SHOWLIST", localPlayer, function(q,duty)
frakcja=duty
if not isElement(gridlist) then
gridlist = guiCreateGridList(332*w, 288*h, 703*w, 179*h, false)
guiGridListAddColumn(gridlist, "Zg?aszaj?cy:", 0.3)
guiGridListAddColumn(gridlist, "Opis zdarzenia:", 0.2)
guiGridListAddColumn(gridlist, "Data:", 0.2)
guiGridListAddColumn(gridlist, "Lokalizacja:", 0.2)
guiGridListAddColumn(gridlist, "DBID:", 0.1)
guiGridListAddColumn(gridlist, "SID:", 0)
dxfont0_1 = dxCreateFont(":pystories-logging/font/1.ttf", 10)
addEventHandler("onClientRender", root, render)
addEventHandler("onClientClick", root, click)
editing=false
showCursor(true)
for i,v in ipairs(q) do
local row=guiGridListAddRow(gridlist)
i...
bindKey(player, "e", "down", function(player, md)
if not isElementWithinMarker(player, m1) then return end if getElementData(player, "zrespilGracz") then
outputChatBox("praca w trakcie poprawek", player)
return end
if not md or getElementType(player) ~= "player" or getPedOccupiedVehicle(player) then return end
local x,y,z = getElementPosition(player) local bus = createVehicle(437, x,y,z,0.0, 360.0, 269.9)
function teleport (hitElement)
if getPlayerTeam(hitElement) == getTeamFromName("Admins") then if getPedOccupiedVehicle(hitElement) then
setElementPosition (hitElement,-1168.86,341.98,673.28 ) end
end
end
addEventHandler ("onMarkerHit",marker,teleport)
addEventHandler("onClientClick", getRootElement(),
function(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement)
if (clickedElement==prawkoPed) then
local x, y = getScreenFromWorldPosition(-2035.14, -118.14, 1035.171875) buttons[1] = guiCreateButton(x, y, 100, 20, "Rozmowa", false) addEventHandler("onClientGUIClick", buttons[1], startRozmowa)
else
for k, buttons in ipairs(buttons) do destroyElement(buttons) end
end
end )
function startRozmowa()
for k, buttonss in ipairs(buttons) do destroyElement(buttonss) end
end
Mam problem z funkcj? getVehicleTowedByVehicle. Przy za?adunku towaru, pakuje si? on raczej do przyczepy, ale gdy wyjd? z ci??ar?wki to wyskakuje ten b??d co w temacie.
Mam problem zwi?zany z funkcj? getVehicleTowedByVehicle.
[lua]
function system(hitElement)
local vehicle = getPedOccupiedVehicle(hitElement)
if destmarker then
if vehicle then
if rozl_licznik == 0 then
playerPoints = getElementData(hitElement, "Pkt")
local trucks_ids = trucks[getElementModel(vehicle)]
local trailers_ids = trailers[getElementModel(vehicle)]
if vehicle_ids[getElementModel(vehicle)] or getVehicleTowedByVehicle( trucks_ids ) == trailers_ids then
local jobstat = getElementData(vehicle, "praca2")
if jobstat == false then
guiSetVisible(oknotoww, true)
showCursor(true)
for k, v in ipairs ( towary ) do
guiSetEnabled ( kupuj [ k ], ( playerPoints >= v [ 3 ] ) )
end
else
rozladunek()
end
else
outputChatBox("To nie jest pojazd dostawczy!", hitElement, 0, 255, 0)
end
else
outputChatBox("Jeszcze nie mo?esz za?adowa?/roz?adowa? towaru!", hitElement)
end
else
outputChatBox("Aby za?adowa?/roz?adowa? towar musisz mie? pojazd!", hitElement, 0, 255, 0)
end
end
end
addEventHandler( "onClientMarkerHit", resourceRoot, system )
[/lua]
for k, v in ipairs (markers) do
destmarker = createMarker(v[1], v[2], v[3], "cylinder", 3, 255, 255, 0, 255)
createBlip(v[1],v[2],v[3], 51)
setElementData(destmarker, "id", v[4])
end
function towarTrociny()
dest = markers[math.random(1, #markers)]
if towar == 0 then
towar = 1
outputChatBox("Za?adowa?e? trociny!", player)
destblip = createBlip( dest[1], dest[2], dest[3], 41, 2, 255, 255, 0, 0, 100)
setElementData(source, "id2", dest[4])
else
outputChatBox("Aby za?adowa? ten towar musisz mie? minimum 0 punkt?w!", player, 0, 255, 0)
end
end
[/code]
Serwer:
[code]
function rozladunek(source)
local x1, y1, z1 = getMarkerTarget(source)
local x2, y2, z2 = getMarkerTarget(blipmarker)
for b, tow in ipairs (pack) do
if towar == b and x1 == x2 and y1 == y2 then
setElementData(getLocalPlayer(),"points",tonumber(points + 1))
towar = 0
rmoney = math.random(tow[4],tow[5])
givePlayerMoney( source, tonumber(rmoney))
outputChatBox("Roz?adowa?e?: " .. tow[2], player)
destroyElement(destblip)
else
outputChatBox("To nie jest ten roz?adunek!", play...