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

Wysłany: 2017-09-27, 10:51


DylemaT929

Nikt






Wiek: 28
Na forum: 4041 dni
Posty: 333
Nick w MP: dylemat929

Piwa: 3195

Respekt: 165,8
Respekt: 165,8Respekt: 165,8

Dobry wszystkim. Ostatnio zacz??em troch? wi?cej czasu sp?dzam przy lua i napotka?em na jeden problem. Poniewa? robie Panel wyboru spawniu dla premium, ale niestety, ?adnego b??du w db3 nie ma. (Mo?e jakis by? przyk?ad na nowo)



local screenW,screenH=guiGetScreenSize()
local sy,sx=guiGetScreenSize()

        function isMouseIn(psx,psy,pssx,pssy,abx,aby)
    if not isCursorShowing() then return end
    cx,cy=getCursorPosition()
    cx,cy=cx*sx,cy*sy
    if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then
        return true,cx,cy
    else
        return false
    end
end

function panelik_p()
        if not isMouseIn(screenW 0.2773screenH 0.5056screenW 0.1406screenH 0.0625then dxDrawRectangle(screenW 0.2773screenH 0.5056screenW 0.1406screenH 0.0625tocolor(014157255), false)
        end
        dxDrawText("Tw?j dom"screenW 0.2820screenH 0.5194screenW 0.4125screenH 0.5556tocolor(255255255255), 1.50"default""center""center"falsefalsefalsefalsefalse)
end

addEventHandler("onClientClick"root, function(btn,state)
    if btn=="left" and state=="down" then
        if isMouseIn(screenW 0.2773screenH 0.5056screenW 0.1406screenH 0.0625then
         setElementData(localPlayer,"player:spawn",{1486.23, -1740.9813.55})
         cusun()
        end
        if isMouseIn(screenW 0.2773screenH 0.5083screenW 0.1406screenH 0.0583then
         setElementData(localPlayer,"player:spawn",{1486.23, -1740.9813.55})
         cusun()
        end
        if isMouseIn(screenW 0.2773screenH 0.5083screenW 0.1406screenH 0.0583then
        local domek=getElementData(localPlayer,"player:house")
        if not domek then
        setElementData(localPlayer,"player:spawn",{1486.23, -1740.9813.55})
        outputChatBox("*Nie posiadasz domku")
        end
        cusun()
        end
    end
end)

function cusun()
    showCursor(false)
    removeEventHandler("onClientRender"rootpanelik_p)
end  

i doda?em ten cusun, aby kasowa?o p??niej gui jak wybierze. Kto? co? poradzi, tak mo?e du?o b??d?w zrobi?em, ale si?y ju? na to nie mam.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-27, 11:20


Avenged

Młodszy Szkrypter






Wiek: 23
Na forum: 3510 dni
Posty: 654
Nick w MP: Avenged

Piwa: 1570

Respekt: 326,3
Respekt: 326,3Respekt: 326,3Respekt: 326,3

DylemaT929, dok?adniej o co ci chodzi? jakie? b??dy?

Podpis
LUA, JS, PHP



Zapraszam do skorzystania z moich usług: Klik

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-27, 11:25


DylemaT929

Nikt






Wiek: 28
Na forum: 4041 dni
Posty: 333
Nick w MP: dylemat929

Piwa: 3195

Respekt: 165,8
Respekt: 165,8Respekt: 165,8

"BarteQ03" napisał/a:

DylemaT929, dok?adniej o co ci chodzi? jakie? b??dy?


Ten kod co widzisz wy?ej. Chce aby dzia?a? w ten spos?b ?e jak kliknie si? na dxa Urz?d to ?eby teleportowa?o do urz?du. Pokazuje mi si? myszka, ?adnych b??d?w nie ma ale jak klikn? w urz?d nie teleportuje.


a gdybym w taki spos?b zrobi? to za dzia?a ?

  if not isMouseIn(screenW 0.2773screenH 0.5056screenW 0.1406screenH 0.0625then dxDrawRectangle(screenW 0.2773screenH 0.5056screenW 0.1406screenH 0.0625tocolor(014157255), false) else setElementPosition(localPlayer, -2757.34371.164.35)
end


Kolejny problem klikne F5 i od razu teleportuje. Jakie? rady


        dxDrawText("Tw?j dom"screenW 0.2820screenH 0.5194screenW 0.4125screenH 0.5556tocolor(255255255255), 1.50"default""center""center"falsefalsefalsefalsefalse)
        if isMouseIn(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667then dxDrawRectangle(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667tocolor(014157255), false) else setElementPosition(localPlayer1482.14, -1749.3615.45) 
        end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-27, 11:48


Avenged

Młodszy Szkrypter






Wiek: 23
Na forum: 3510 dni
Posty: 654
Nick w MP: Avenged

Piwa: 1570

Respekt: 326,3
Respekt: 326,3Respekt: 326,3Respekt: 326,3

M?wisz o f5 a ja tu nigdzie bindkey nie widz? a setElementPosition daj przy evencie "onClientClick"

Podpis
LUA, JS, PHP



Zapraszam do skorzystania z moich usług: Klik

Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-27, 11:52


DylemaT929

Nikt






Wiek: 28
Na forum: 4041 dni
Posty: 333
Nick w MP: dylemat929

Piwa: 3195

Respekt: 165,8
Respekt: 165,8Respekt: 165,8

"BarteQ03" napisał/a:

M?wisz o f5 a ja tu nigdzie bindkey nie widz? a setElementPosition daj przy evencie "onClientClick"



Masz ju?ci daje


local screenWscreenH guiGetScreenSize()

function isMouseIn(psx,psy,pssx,pssy,abx,aby)
    if not isCursorShowing() then return end
    cx,cy=getCursorPosition()
    cx,cy=cx*screenW,cy*screenH
    if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then
        return true,cx,cy
    else
        return false
    end
end


function panelik_p()
      dxDrawText("Tw?j dom"screenW 0.2820screenH 0.5194screenW 0.4125screenH 0.5556tocolor(255255255255), 1.50"default""center""center"falsefalsefalsefalsefalse)
        if isMouseIn(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667then dxDrawRectangle(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667tocolor(014157255), false) else setElementPosition(localPlayer1482.14, -1749.3615.45) 
        end
end

function gui()
    if guiGetVisible(buttonthen
        showCursor(false)
        removeEventHandler("onClientRender"root,panelik_p)
        guiSetVisible(button,false)
    else
        addEventHandler("onClientRender"root,panelik_p)
        showCursor(truefalse)
        guiSetVisible(button,true)
    end
end 


bindKey("F5","down",gui)


W taki spos?b


local screenWscreenH guiGetScreenSize()

function isMouseIn(psx,psy,pssx,pssy,abx,aby)
    if not isCursorShowing() then return end
    cx,cy=getCursorPosition()
    cx,cy=cx*screenW,cy*screenH
    if cx >= psx and cx <= psx+pssx and cy >= psy and cy <= psy+pssy then
        return true,cx,cy
    else
        return false
    end
end


function panelik_p()
      dxDrawText("Tw?j dom"screenW 0.2820screenH 0.5194screenW 0.4125screenH 0.5556tocolor(255255255255), 1.50"default""center""center"falsefalsefalsefalsefalse)
        if isMouseIn(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667then dxDrawRectangle(screenW 0.2773screenH 0.5042screenW 0.1406screenH 0.0667tocolor(014157255), false) else setElementPosition(localPlayer1482.14, -1749.3615.45) 
        end
end

function gui()
    if guiGetVisible(buttonthen
        showCursor(false)
        removeEventHandler("onClientRender"root,panelik_p)
        guiSetVisible(button,false)
    else
        addEventHandler("onClientRender"root,panelik_p)
        showCursor(truefalse)
        guiSetVisible(button,true)
    end
end 

addEventHandler "onClientClick"getRootElement(), panelik_p )

bindKey("F5","down",gui)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-09-27, 12:09


Avenged

Młodszy Szkrypter






Wiek: 23
Na forum: 3510 dni
Posty: 654
Nick w MP: Avenged

Piwa: 1570

Respekt: 326,3
Respekt: 326,3Respekt: 326,3Respekt: 326,3

DylemaT929, no tutaj masz zrobione tak ?e klikasz f5 otwiera ci gui i teleportuje odrazu. Jak wr?c? do domu to dam ci poprawny kod bo narazie jestem na tel. A
Więcej informacji znajdziesz w Wikipedii MTA:

setElementPosition
dodaj w evencie (stw?rz funkcj? czy jak w pierwszym po?cie mia?e? tam onClientClick wtedy dopiero po klikni?ciu b?dzie Ci? teleportowa? a nie jak teraz po klikni?ciu f5

Podpis
LUA, JS, PHP



Zapraszam do skorzystania z moich usług: Klik

Postaw piwo autorowi tego posta
 

 
Tagi: dodany :: przycisk :: nie :: teleportuje
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Dodany przycisk nie teleportuje 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