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

Wysłany: 2020-07-06, 15:37


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

Witam poprzedni temat zosta? zablokowany wi?c stworzy?em nowy. prosz? o pomoc w GUI nie umiem podpi?? button i editbox pod gotow? komend? /jail

Tutaj ni?ej podaje code od skryptu w jaki spos?b to wykona?.
Zdj?cie panelu: https://imgur.com/a/KRBPoMR

PANEL:

Kod:

local gui = {}

gui.window = guiCreateWindow(0.28, 0.20, 0.47, 0.60, "Panel-Jail", true)
guiWindowSetMovable(gui.window, false)
guiWindowSetSizable(gui.window, false)
guiSetVisible(gui.window, false)

gui.button = guiCreateButton(0.06, 0.10, 0.39, 0.13, "Potwierdz", true, gui.window)
gui.button2 = guiCreateButton(0.06, 0.25, 0.39, 0.13, "Zamknij", true, gui.window)
gui.edit1 = guiCreateEdit(0.07, 0.52, 0.38, 0.07, "", true, gui.window)
gui.edit2 = guiCreateEdit(0.07, 0.62, 0.38, 0.07, "", true, gui.window)
gui.text = guiCreateLabel(0.07, 0.60, 0.38, 0.02, "Czas..", true, gui.window)
gui.text = guiCreateLabel(0.07, 0.50, 0.38, 0.02, "Nick..", true, gui.window)
gui.edit3 = guiCreateEdit(0.07, 0.72, 0.38, 0.07, "", true, gui.window)
gui.text = guiCreateLabel(62, 449, 344, 18, "Jednostka m/h..", false, gui.window)
gui.edit4 = guiCreateEdit(0.07, 0.82, 0.38, 0.07, "", true, gui.window)
gui.text = guiCreateLabel(62, 515, 344, 18, "Pow?d..", false, gui.window)


addEvent("marker", true)
addEventHandler("marker", getRootElement(), function()
guiSetVisible(gui.window, true)
showCursor(true)
end)

local function zamknij()
if guiGetVisible(gui.window) then
guiSetVisible(gui.window, false)
showCursor (false)
end
end
addEventHandler("onClientGUIClick", gui.button2, zamknij, false)
addEventHandler("onClientColShapeLeave", resourceRoot, function(el,md)
if el~=localPlayer then return end
zamknij()
showCursor (false,false)
end)

local function jail()
local jail =guiGetText(gui.edit1)
outputChatBox("jail", 255,0,0)
triggerServerEvent("poKliknieciuSerwer",resourceRoot)

end
addEventHandler("onClientGUIClick",gui.button,jail, false)


MARKER:

Kod:

marker = createMarker(-2404.20020, -593.62866, 131.64844, "cylinder", 1.2, 255, 0, 0, 30)


addEventHandler("onMarkerHit", marker, function(he)
triggerClientEvent(he, "marker", he)
end)

addEvent("poKliknieciuSerwer", true)
local function poKliknieciuSerwer(jail)
jail(jail)
end
addEventHandler("poKliknieciuSerwer",resourceRoot, poKliknieciuSerwer)


KOMENDA /JAIL:

Kod:

local cub = createColCuboid(-1596.12,714.14,907.27, 22.25, 30, 10)

function u(e)
getElementData(e, "player:sid")
end

local cele = { -- x,y,z,int,dim
{-1586.43,708.69,907.27,0,0},
{-1587.85,724.61,907.27,0,0},
{-1595.65,709.39,907.27,0,0},
{-1608.95,709.26,907.27,0,0},
{-1608.35,725.07,907.27,0,0},
}
local x,y,z = -1585.38,714.82,907.27
local m=createElement("textorg")
setElementData(m, "name", "/jail\n/unjail\n(dla SAPD)")
setElementData(m, "scale", 1.3)
setElementPosition(m, -1585.38,714.82,907.27)
local function wypusc(plr)
setElementDimension(plr,0)
setElementInterior(plr,0)
setElementPosition(plr,x,y,z)
outputChatBox("Zosta?e? wypuszczony z wi?zienia.",plr, 255, 255, 255)
end

function getPlayerName2(plr)
if not plr then return end
return getPlayerName(plr):gsub("#%x%x%x%x%x%x","")
end

local function sprawdz(plr)
if not plr then return end
if not getElementData(plr,"player:sid") then return end
local x = exports['pystories-db']:dbGet("SELECT * FROM aj WHERE Serial=?",getPlayerSerial(plr))
if not x or #x < 1 then return end
local x2=exports['pystories-db']:dbGet("SELECT Termin FROM aj WHERE Serial=? and Termin < NOW()",getPlayerSerial(plr))
if x2 and #x2 > 0 then
exports['pystories-db']:dbSet("DELETE FROM aj WHERE Serial=?", getPlayerSerial(plr))
wypusc(plr)
return end
if isElementWithinColShape(plr,cub) then return end
setElementPosition(plr,cele[x[1].Cela][1],cele[x[1].Cela][2],cele[x[1].Cela][3])
setElementDimension(plr, 0)
end

local function sprawdzczas(plr)
if not plr then return end
if not getElementData(plr,"player:sid") then return end
local x = exports['pystories-db']:dbGet("SELECT * FROM aj WHERE Serial=?",getPlayerSerial(plr))
if not x or #x < 1 then return end
local x2=exports['pystories-db']:dbGet("SELECT Termin FROM aj WHERE Serial=? and Termin < NOW()",getPlayerSerial(plr))
if x2 and #x2 > 0 then
exports['pystories-db']:dbSet("DELETE FROM aj WHERE Serial=?", getPlayerSerial(plr))
wypusc(plr)
return end
outputChatBox("Jeste? uwi?ziony w wi?zieniu do: "..x[1].Termin.." za: "..x[1].Powod.."", plr, 255, 255, 255)
end

function ajotceju(plr,cmd,cel,ile,typ,zaco)
if getElementData(plr, "player:faction")=="SAPD" then
if not cel or not ile or not typ or not zaco then
outputChatBox("U?ycie: /jail <gracz/ID> <czas> <m/h> <pow?d>", plr, 255, 255, 255)
return
end
local target=exports["pystories-core"]:findPlayer(plr,cel)
if not target then
outputChatBox("Nie znaleziono podanego gracza.", plr, 255, 255, 255)
return
end
x1,x2,x3 = getElementPosition(plr)
y1,y2,y3 = getElementPosition(target)
dystans = getDistanceBetweenPoints3D(x1,x2,x3,y1,y2,y3)
if dystans > 20.0 then outputChatBox("Ten gracz jest za daleko!", plr, 255, 255, 255) return end
local cela=math.random(1, #cele)
if typ=="m" or typ=="h" then
if typ=="m"then
exports["pystories-db"]:dbSet("INSERT INTO aj (Serial,Termin,Cela,Powod) VALUES (?,NOW() + INTERVAL ?? minute,??,?)", getPlayerSerial(target), ile,cela, zaco)
outputChatBox("Zosta?e? uwi?ziony w wi?zieniu przez "..getPlayerName(plr):gsub("#%x%x%x%x%x%x","").." za "..zaco.." na "..ile.." minut(-a/-y)", target, 255, 255, 255)
outputChatBox("Uwi?ziono gracza "..getPlayerName(target):gsub("#%x%x%x%x%x%x","").." w wi?zieniu za "..zaco.." na "..ile.." minut(-a/-y)", plr, 255, 255, 255)
sprawdz(plr)
end
if typ=="h" then
exports["pystories-db"]:dbSet("INSERT INTO aj (Serial,Termin,Cela,Powod) VALUES (?,NOW() + INTERVAL ?? hour,??,?)", getPlayerSerial(target), ile,cela, zaco)
outputChatBox("Zosta?e? uwi?ziony w wi?zieniu przez "..getPlayerName(plr):gsub("#%x%x%x%x%x%x","").." za "..zaco.." na "..ile.." godzin(-a/-y)", target, 255, 255, 255)
outputChatBox("Uwi?ziono gracza "..getPlayerName(target):gsub("#%x%x%x%x%x%x","").." w wi?zieniu za "..zaco.." na "..ile.." godzin(-a/-y)", plr, 255, 255, 255)
sprawdz(plr)
end
end
sprawdz(plr)
cela=math.random(1, #cele)
sprawdzczas(plr)
end
end
addCommandHandler("jail", ajotceju)

function unaj(plr,cmd,cel)
if getElementData(plr, "player:faction")=="SAPD" then
local target=exports["pystories-core"]:findPlayer(plr,cel)
if not target then
outputChatBox("Nie znaleziono podanego gracza.", plr, 255, 255, 255)
return
end
local jebnijsie=exports['pystories-db']:dbGet("SELECT Termin FROM aj WHERE Serial=? and Termin > NOW()",getPlayerSerial(target))
if jebnijsie and #jebnijsie <= 0 then outputChatBox("Ten gracz nie jest w wi?zieniu! ("..getPlayerName(target)..")", plr,255,255,255) return end
exports['pystories-db']:dbSet("DELETE FROM aj WHERE Serial=?", getPlayerSerial(target))
outputChatBox("Gracz zosta? uwolniony z wi?zienia.", plr, 255, 255, 255)
sprawdz(target)
wypusc(target)
end
end
addCommandHandler("unjail", unaj)

setTimer(function()
for _,p in pairs(getElementsByType("player")) do
sprawdz(p)
end
end,1000,0)

function spawn()
local x=exports['pystories-db']:dbGet("SELECT Termin FROM aj WHERE Serial=? and Termin > NOW()",getPlayerSerial(source))
if x and #x <= 0 then return end
sprawdzczas(source)
end
addEventHandler("onPlayerSpawn", getRootElement(), spawn)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 15:51


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Pisa?em ci ju? - chcesz ?eby okno si? otwiera?o po klikni?ciu binda i zamyka? je po klikni?ciu jakiego? buttona tak?

Czy ma si? otwiera? po wej?ciu w marker i zamyka? po wyj?ciu z niego?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 15:52


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

Okno jest podpi?te pod zamykanie na przycisk Zamknij i okno si? otwiera po wej?ciu w marker.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 15:56


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

No i co dalej chcesz zrobi??

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 15:59


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

dalej chce podpi?? komend? kt?ra jest w jail.lua pod ten panel.
/jail <gracz/ID> <czas> <m/h> <pow?d>"

tutaj w tym panelu.
https://imgur.com/a/uWuqlj1

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 16:04


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Ale co ty chcesz podpi??? Nie rozumiem jak to ma dzia?a? wyt?umacz porz?dnie i dok?adnie ca?y proces.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 16:06


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

Ja chc? podpi?? code wy?ej KOMENDA /JAIL: pod ten panel ?eby po wpisaniu danych Nick Czas Jednostka czasu i powod wsadzi?o go do jaila. i nwm jak podpi?? ten code pod m?j panel

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 16:14


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Po co chcesz podpina? komend? pod panel? Albo jailujesz go przez panel albo przez cmd.Nie musisz nic ??czy?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 16:16


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

no to przez panel chc? jaila dawa? tylko teraz jak przerobi? ten skrypt jak podpi?? pod ten skrypt butoony i editbox

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 16:20


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Przyk?ad :
buttontu tworzenie buttona guiCreateButton
editboxtu tworzenie editboxa

addEventHandler("onClientGUIClick",button,function(b,s)
    if b=="left" then
        if s=="down" then
            text=guiGetText(editbox)
            outputChatBox(text)
        end
    end
end)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 17:40


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

pr?bowa?em to wykona? i nic mi nie wysz?o nic si? po prostu nie dzieje

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 17:48


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Bo ja ci poda?em przyk?ad.. a nie gotowy wz?r. ?eby nie robic pustych post?w wrzu? od razu kod, kt?ry zrobi?e? ty i podaj b??dy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 18:12


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

a pytanie w jakim skrypcie mam pracowa? w Jail / Panel / Marker ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 18:28


MeeShuffle

Programista/Grafik






Wiek: 32
Na forum: 4395 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8575

Respekt: 535,3
Respekt: 535,3

Ponownie nie rozumiem twojego pytania

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-07-06, 18:29


filip0985

Początkujący w LUA






Wiek: 22
Na forum: 2754 dni
Posty: 112

Piwa: 13

Respekt: 50

w kt?rym skrypcie wy?ej wymienionym mam pracowa? na przyk?adach ?

Postaw piwo autorowi tego posta
 

 
Tagi: gui :: podpinania :: button :: editbox :: jak :: zrobić
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » GUI podpinania button i editbox Jak to zrobić Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

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