-
Posts
1,248 -
Joined
-
Last visited
Everything posted by WhoAmI
-
Okey, well. You are tirggering to server, getting data and what's next?
-
Zasiłek na setElementDatach
WhoAmI replied to mommytellme's topic in Pomoc ze skryptami i programowaniem w Lua
Lepiej zrobić to po stronie serwera, bo po stronie clienta dawanie kasy tak na prawdę nie działa. zasilek = createMarker ( 359, 169, 1008, "cylinder", 2 ) setElementInterior ( zasilek, 3 ) function dajkase ( hitElement ) if ( isElement ( hitElement ) and getElementType ( hitElement ) == "player" ) then local data = getElementData ( hitElement, "zasilek" ) or false if ( data ) then outputChatBox ( "Urzędnik mówi: Skorzystałeś/aś już z zasiłku!", hitElement, 255, 255, 25, true ) else setElementData ( hitElement, "zasilek", true ) givePlayerMoney ( hitElement, 200 ) end end end addEventHandler("onMarkerHit", zasilek, dajkase) Tak powinna wyglądać strona serwera. -
taxi_ids = { [420] = true, [438] = true } local sekundy = 5 --seconds local kasa = 5 --money addEventHandler ( "onVehicleEnter", root, function ( player, seat ) if ( taxi_ids [ getElementModel ( source ) ] ) then if ( seat ~= 0 ) then local kierowca = getVehicleController ( source ) if ( kierowca ) then local timer = setTimer ( function ( ) takePlayerMoney ( player, kasa ) givePlayerMoney ( kierowca, kasa ) end, sekundy * 1000, 0 ) setElementData ( player, "timer:taxi", timer ) end end end end ) addEventHandler ( "onVehicleExit", root, function ( player, seat ) if ( taxi_ids [ getElementModel ( source ) ] ) then if ( seat ~= 0 ) then local timer = getElementData ( player, "timer:taxi" ) if ( isTimer ( timer ) ) then killTimer ( timer ) end end end end ) Isn't that better way?
-
addEventHandler("onClientGUIClick",GUIEditor.window[1], function(b) if b == "left" then if source == GUIEditor.button[2] then guiSetVisible(GUIEditor.window[1],false) showCursor(false) elseif source == GUIEditor.button[1] then local selected = guiGridListGetSelectedItem ( GUIEditor.gridlist[1] ) if ( selected ) then local SelectedSkin = guiGridListGetItemText ( GUIEditor.gridlist[1], selected, 1 ) if getElementModel(localPlayer) ~= tonumber(SelectedSkin) then guiSetVisible(GUIEditor.window[1],false) showCursor(false) triggerServerEvent("onBuy",localPlayer,tonumber(SelectedSkin)) else exports["TopBarChat"]:sendClientMessage ("#0000FF* #FF0000You already have that skin !",255,255,255,true) end else exports["TopBarChat"]:sendClientMessage ("#0000FF* #FF0000You must select a skin first !",255,255,255,true) end end end end )
-
W dalszym kodzie jest to zrobione, podaj zwykłe sekundy. W setTimer jest. sekundy * 1000
-
GUIEditor = { button = {}, window = {}, staticimage = {}, label = {} } shaderpanel = { checkbox = {}, staticimage = {}, scrollpane = {}, label = {} } GUIEditor.window[1] = guiCreateWindow(102, 119, 661, 406, "Panel ustawień", false) guiSetVisible(GUIEditor.window[1], false) guiWindowSetSizable(GUIEditor.window[1], false) GUIEditor.button[1] = guiCreateButton(13, 37, 59, 53, "", false, GUIEditor.window[1]) GUIEditor.staticimage[1] = guiCreateStaticImage(10, 37, 62, 53, "gra.png", false, GUIEditor.window[1]) GUIEditor.label[1] = guiCreateLabel(23, 95, 59, 20, "Gra", false, GUIEditor.window[1]) GUIEditor.label[2] = guiCreateLabel(110, 41, 70, 15, "Shadery:", false, GUIEditor.window[1]) przyciskshaderow = guiCreateButton(190, 37, 91, 33, "Włącz menu Shaderów", false, GUIEditor.window[1]) function draw () dxDrawLine(203, 152, 203, 513, tocolor(255, 255, 255, 255), 1, true) end bindKey ( "F4", "down", function ( ) local handler = guiGetVisible ( GUIEditor.window[1] ) and removeEventHandler or addEventHandler guiSetVisible ( GUIEditor.window[1], not guiGetVisible ( GUIEditor.window[1] ) ) showCursor ( not isCursorShowing ( ) ) handler ( "onClientRender", root, draw ) end ) shaderpanel.staticimage[1] = guiCreateStaticImage(0.69, 0.35, 0.27, 0.20, "karer_bar.png", true) guiSetVisible ( shaderpanel.staticimage[1], false) shaderpanel.label[1] = guiCreateLabel(0.05, 0.03, 0.85, 0.19, "Panel shaderów", true, shaderpanel.staticimage[1]) local font_0 = guiCreateFont(":lss-gui/droid-sans.ttf", 13) guiSetFont(shaderpanel.label[1], font_0) guiLabelSetColor(shaderpanel.label[1], 0, 0, 0) guiLabelSetHorizontalAlign(shaderpanel.label[1], "center", false) guiLabelSetVerticalAlign(shaderpanel.label[1], "center") shaderpanel.staticimage[2] = guiCreateStaticImage(0.030, 0.29, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[1] = guiCreateCheckBox(0.06, 0.3, 0.3, 0.1, "Bloom", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[3] = guiCreateStaticImage(0.030, 0.44, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[2] = guiCreateCheckBox(0.06, 0.45, 0.3, 0.1, "Woda", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[4] = guiCreateStaticImage(0.030, 0.59, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[3] = guiCreateCheckBox(0.06, 0.6, 0.3, 0.1, "Karoseria", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[5] = guiCreateStaticImage(0.330, 0.29, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[4] = guiCreateCheckBox(0.36, 0.3, 0.3, 0.1, "Detale", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[6] = guiCreateStaticImage(0.330, 0.44, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[5] = guiCreateCheckBox(0.36, 0.45, 0.3, 0.1, "Czarno-biały", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[7] = guiCreateStaticImage(0.330, 0.59, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[6] = guiCreateCheckBox(0.36, 0.6, 0.3, 0.1, "HDR", false, true, shaderpanel.staticimage[1]) shaderpanel.staticimage[8] = guiCreateStaticImage(0.630, 0.29, 0.3, 0.16, "name_highlight.png", true, shaderpanel.staticimage[1]) shaderpanel.checkbox[7] = guiCreateCheckBox(0.66, 0.3, 0.3, 0.1, "Noc+", false, true, shaderpanel.staticimage[1]) guiSetVisible(shaderpanel.staticimage[1], false) guiBringToFront(shaderpanel.checkbox[1]) guiBringToFront(shaderpanel.checkbox[2]) guiBringToFront(shaderpanel.checkbox[3]) guiBringToFront(shaderpanel.checkbox[4]) guiBringToFront(shaderpanel.checkbox[5]) guiBringToFront(shaderpanel.checkbox[6]) guiBringToFront(shaderpanel.checkbox[7]) function toggleWin() local uo_sb=getElementData(localPlayer, "uo_sb") uo_sb = uo_sb and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[1], uo_sb) local uo_sw=getElementData(localPlayer, "uo_sw") uo_sw = uo_sw and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[2], uo_sw) local uo_cp=getElementData(localPlayer, "uo_cp") uo_cp = uo_cp and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[3], uo_cp) local uo_det=getElementData(localPlayer, "uo_det") uo_det = uo_det and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[4], uo_det) local uo_bw=getElementData(localPlayer, "uo_bw") uo_bw = uo_bw and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[5], uo_bw) local uo_hdr=getElementData(localPlayer, "uo_hdr") uo_hdr = uo_hdr and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[6], uo_hdr) local uo_nig=getElementData(localPlayer, "uo_nig") uo_nig = uo_nig and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[7], uo_nig) if (guiGetVisible(shaderpanel.staticimage[1])) then showCursor(false) guiSetVisible(shaderpanel.staticimage[1],false) else showCursor(true) guiSetVisible(shaderpanel.staticimage[1],true) end end bindKey("F3","down",toggleWin) addEventHandler("onClientGUIClick", resourceRoot, function(btn,state) if btn == "left" then -- if state == "up" then if (getElementType(source)~="gui-checkbox") then guiBringToFront(shaderpanel.checkbox[1]) guiBringToFront(shaderpanel.checkbox[2]) guiBringToFront(shaderpanel.checkbox[3]) guiBringToFront(shaderpanel.checkbox[4]) guiBringToFront(shaderpanel.checkbox[5]) guiBringToFront(shaderpanel.checkbox[6]) guiBringToFront(shaderpanel.checkbox[7]) return end local uo_sb=guiCheckBoxGetSelected(shaderpanel.checkbox[1]) local uo_sw=guiCheckBoxGetSelected(shaderpanel.checkbox[2]) local uo_cp=guiCheckBoxGetSelected(shaderpanel.checkbox[3]) local uo_det=guiCheckBoxGetSelected(shaderpanel.checkbox[4]) local uo_bw=guiCheckBoxGetSelected(shaderpanel.checkbox[5]) local uo_hdr=guiCheckBoxGetSelected(shaderpanel.checkbox[6]) local uo_nig=guiCheckBoxGetSelected(shaderpanel.checkbox[7]) setElementData(localPlayer,"uo_sb", uo_sb) setElementData(localPlayer,"uo_sw", uo_sw) setElementData(localPlayer,"uo_cp", uo_cp) setElementData(localPlayer,"uo_det", uo_det) setElementData(localPlayer,"uo_bw", uo_bw) setElementData(localPlayer,"uo_hdr", uo_hdr) setElementData(localPlayer,"uo_nig", uo_nig) triggerServerEvent("saveGraphicOptions", resourceRoot, localPlayer, uo_sb, uo_sw, uo_cp, uo_det, uo_bw,uo_hdr,uo_nig) -- end end end) function toggleWin2() if source == przyciskshaderow then local uo_sb=getElementData(localPlayer, "uo_sb") uo_sb = uo_sb and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[1], uo_sb) local uo_sw=getElementData(localPlayer, "uo_sw") uo_sw = uo_sw and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[2], uo_sw) local uo_cp=getElementData(localPlayer, "uo_cp") uo_cp = uo_cp and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[3], uo_cp) local uo_det=getElementData(localPlayer, "uo_det") uo_det = uo_det and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[4], uo_det) local uo_bw=getElementData(localPlayer, "uo_bw") uo_bw = uo_bw and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[5], uo_bw) local uo_hdr=getElementData(localPlayer, "uo_hdr") uo_hdr = uo_hdr and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[6], uo_hdr) local uo_nig=getElementData(localPlayer, "uo_nig") uo_nig = uo_nig and true or false guiCheckBoxSetSelected(shaderpanel.checkbox[7], uo_nig) if (guiGetVisible(shaderpanel.staticimage[1])) then showCursor(false) guiSetVisible(shaderpanel.staticimage[1],false) else showCursor(true) guiSetVisible(shaderpanel.staticimage[1],true) end end end addEventHandler("onClientGUIClick", resourceRoot, function(btn,state) if btn == "left" then -- if state == "up" then if (getElementType(source)~="gui-checkbox") then guiBringToFront(shaderpanel.checkbox[1]) guiBringToFront(shaderpanel.checkbox[2]) guiBringToFront(shaderpanel.checkbox[3]) guiBringToFront(shaderpanel.checkbox[4]) guiBringToFront(shaderpanel.checkbox[5]) guiBringToFront(shaderpanel.checkbox[6]) guiBringToFront(shaderpanel.checkbox[7]) return end local uo_sb=guiCheckBoxGetSelected(shaderpanel.checkbox[1]) local uo_sw=guiCheckBoxGetSelected(shaderpanel.checkbox[2]) local uo_cp=guiCheckBoxGetSelected(shaderpanel.checkbox[3]) local uo_det=guiCheckBoxGetSelected(shaderpanel.checkbox[4]) local uo_bw=guiCheckBoxGetSelected(shaderpanel.checkbox[5]) local uo_hdr=guiCheckBoxGetSelected(shaderpanel.checkbox[6]) local uo_nig=guiCheckBoxGetSelected(shaderpanel.checkbox[7]) setElementData(localPlayer,"uo_sb", uo_sb) setElementData(localPlayer,"uo_sw", uo_sw) setElementData(localPlayer,"uo_cp", uo_cp) setElementData(localPlayer,"uo_det", uo_det) setElementData(localPlayer,"uo_bw", uo_bw) setElementData(localPlayer,"uo_hdr", uo_hdr) setElementData(localPlayer,"uo_nig", uo_nig) triggerServerEvent("saveGraphicOptions", resourceRoot, localPlayer, uo_sb, uo_sw, uo_cp, uo_det, uo_bw,uo_hdr,uo_nig) -- end end end) addEventHandler("onClientGUIClick", root, toggleWin2) Sprawdzałem u siebie, działa.
-
Użyj mojego kodu, bo wątpię, że ten Twój będzie działał. Tak to jest plik LUA, stron server.
-
When player selects language in combobox set to him data, like this setElementData ( localPlayer, "language", "some lang" ) And then local language_handler = function(player,_,...) local text = table.concat({...}," ") local language = guiComboBoxGetItemText(LanguageWindow,guiComboBoxGetSelected(LanguageWindow)) for _,v in ipairs ( getElementsByType ( "player" ) ) do if ( getElementData ( v, "language" ) == language ) then outputChatBox("["..language.."] "..getPlayerName(localPlayer)..": "..text,v,255,255,255,true) end end end addCommandHandler("language",language_handler) bindKey("l","down","chatbox","language") But wait, this function should be serverside, becouse in clientside you can't set to him would be visible message.
-
string guiComboBoxGetItemText ( element comboBox, int itemId ) You have to put itemId.
-
addEventHandler ( "onClientGUIClick", GUIEditor.button[1], function () if ( source == GUIEditor.button[1] ) then triggerServerEvent ( "lockCar", localPlayer, localPlayer ) end end ) That was clientside, now serverside: function lockcar ( thePlayer ) playervehicle = getPlayerOccupiedVehicle ( thePlayer ) -- define 'playervehicle' as the vehicle the player is in if ( playervehicle ) then -- if a player is in a vehicle if isVehicleLocked ( playervehicle ) then -- and if the vehicle is already locked setVehicleLocked ( playervehicle, false ) -- unlock it else -- otherwise (if it isn't locked) setVehicleLocked ( playervehicle, true ) -- lock it end end end addEvent ( "lockCar", true ) addEventHandler ( "lockCar", root, lockcar ) function bindLockOnSpawn ( theSpawnpoint ) -- when a player spawns bindKey ( source, "l", "down", "Lock car", lockcar ) -- bind the 'l' key to the 'lockcar' function end addEventHandler ( "onPlayerSpawn", getRootElement(), bindLockOnSpawn )
-
Nie jestem pewien czy to ma tak wyglądać, ale masz taxi_ids = { [420] = true, [438] = true } local sekundy = 5 --co ile sekund local kasa = 5 --ile kasy ma zabierać addEventHandler ( "onVehicleEnter", root, function ( player, seat ) if ( taxi_ids [ getElementModel ( source ) ] ) then if ( seat ~= 0 ) then local kierowca = getVehicleController ( source ) if ( kierowca ) then local timer = setTimer ( function ( ) takePlayerMoney ( player, kasa ) givePlayerMoney ( kierowca, kasa ) end, sekundy * 1000, 0 ) setElementData ( player, "timer:taxi", timer ) end end end end ) addEventHandler ( "onVehicleExit", root, function ( player, seat ) if ( taxi_ids [ getElementModel ( source ) ] ) then if ( seat ~= 0 ) then local timer = getElementData ( player, "timer:taxi" ) if ( isTimer ( timer ) ) then killTimer ( timer ) end end end end )
-
spawns = { -- x, y, z { 0, 0, 3 }, { 1, 1, 3 } } addEventHandler ( "onPlayerWasted", root, function ( ) local skin = getPedSkin ( source ) local x, y, z = unpack ( spawns [ math.random ( #spawns ) ] ) spawnPlayer ( source, x, y, z, 0, skin ) end ) You're welcome, stealer.
-
function RGBToHex(red, green, blue) if((red < 0 or red > 255 or green < 0 or green > 255 or blue < 0 or blue > 255)) then return nil end return string.format("#%.2X%.2X%.2X", red, green, blue) end local function onplayerChat ( message, messageType ) if ( messageType == 2 ) then --Team (Clan) chat cancelEvent ( ) local name = getPlayerName ( source ) local red, green, blue = getPlayerNametagColor ( source ) local hex = RGBToHex ( red, green, blue ) outputChatBox( "#9AFE2E(CLAN)" .. hex .. name .. "#FFFFFF:" .. message, root, 255, 255, 255, true ) outputServerLog( "(TEAM): " .. name .. ": " .. message )--NOTE: Beacuse we cancelled the onPlayerChat event, we need to log chat manually. end end addEventHandler ( "onPlayerChat", root, onplayerChat )
-
Show me exactly the error. Check if it is serverside in meta.xml.
-
Show us current code.
-
Tak czy siak nie warto zaśmiecać polskiej sceny serwerów MTA.
-
local t = "function somename () end" loadstring ( t )
-
If you made it, then you can fix it.
-
I won't help you if this script is stolen.
-
Are you using string.len or sth? Show us the code.
-
And the resource has to be started, and it's server side, check meta.