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

Wysłany: 2022-03-01, 19:56


lego15







Wiek: 26
Na forum: 2238 dni
Posty: 21
Nick w MP: popoq

Piwa: 10

Respekt: 50

Witam posiadam problem, chc? aby podczas pracy na ekranie towarzyszy? mi "ekran" na dole ekranu, a gdy dostarczymy nasionko do drzewa on znika?. Napotka?em problem - po wci?ni?ciu klawisza "e" ekran pojawia si? na sekund? i znika. Ucz? si? lua i kompletnie nie wiem jak zrobi? ?eby znika? dopiero po dostarczeniu nasionka. Z g?ry dzi?kuje za pomoc.



`createBlip(-2557.34,311.98,15.95,46,2,255,0,0,255,0,100)
ped = createPed ( 15, -2562.73,310.20,15.95, -90, 180, 180 )
setElementFrozen( ped, true)
setPedAnimation( ped, "ON_LOOKERS", "wave_loop")
function anulujOtrzymywaneObrazenia()
    cancelEvent() 
end
addEventHandler( "onClientPedDamage", ped, anulujOtrzymywaneObrazenia ) 

createObject(949, -2565.62,329.76,10.20, 0, 0, 0)
createObject(949, -2565.52,326.51,10.20, 0, 0, 0)




local mi = {
    {-2573.78,324.46,10.56},
    {-2576.57,324.20,10.56},
    {-2579.47,324.51,10.56},
    {-2574.98,328.09,10.56},
    {-2577.96,330.12,10.57},
    {-2578.55,333.23,10.56},
    {-2568.37,330.58,10.56},
    {-2560.23,328.52,15.956},
    {-2556.83,329.01,15.95},
    {-2556.76,326.90,15.95},
}

local marker = createMarker(-2562.03,310.25,15.95 , 'cylinder', 1, 0, 0, 0, 0)
local t = createElement('text')
setElementPosition(t,-2562.73,310.20,15.95)
setElementData(t,"name","[Ogrodnik Mirek]")

addEventHandler("onClientMarkerHit", marker, function(el, md)
    if not md or getElementType(el) ~= "player" then return end
    if el ~= localPlayer then return end
    outputChatBox("Witaj, znowu chcesz zarobi?‡ co ?")
    outputChatBox("System: Kliknij E aby rozpocz?…?‡ prace.")
end)

bindKey("e", "down", function()
    if not isElementWithinMarker(localPlayer, marker) then return end
    if not getElementData(localPlayer, "player:job") then
        dxDrawImage(748, 901, 418, 165, ":rrpg_interface/img/background_circle.png", 0, 0, 0, tocolor(255, 255, 255, 255), true)
        local losuj = math.random(2, #mi)
        setElementData(localPlayer, "player:job", true)

        
        outputChatBox("System: Uda?‚o si?™ ! wzi?…?‚e?› nasiono.")
addEventHandler("onClientRender",root,gui)
        local cel = createMarker(mi[losuj][1], mi[losuj][2], mi[losuj][3]-1.0, "cylinder", 1, 255, 255, 255)
        local blip = createBlipAttachedTo(cel, 41)
        
        addEventHandler("onClientMarkerHit", cel, function(el, md)


            if not md or getElementType(el) ~= "player" then return end
            if el ~= localPlayer then return end

            if getPedOccupiedVehicle(el) then
            outputChatBox("* Nie moĹĽesz tego od?‚oĹĽy?‡ b?™d?…c w pojeĹşdzie !")
                return
            end


            destroyElement(blip)
            setElementFrozen(el, true)
            setPedAnimation ( localPlayer, "COP_AMBIENT", "Copbrowse_nod", 1,true )    
            setTimer(function()
                setElementFrozen(el, false)
                destroyElement(skrzynia)
                destroyElement(cel)
                setPedAnimation(localPlayer, false)
                setElementData(el, "player:job", false)
                if getElementData(el,"player:premium") then
                outputChatBox("Za piel?™gnacj?™ ro?›liny dostajesz 252,486PLN.")
                triggerServerEvent("givePlayerMoney", el, 252486, 0)
                setElementData(el,"player:srp", getElementData(el,"player:srp")+math.random(0,1))
                else
                 outputChatBox("Za piel?™gnacj?™ ro?›liny dostajesz 301,765PLN.")
                triggerServerEvent("givePlayerMoney", el, 301765, 0)
                setElementData(el,"player:srp", getElementData(el,"player:srp")+math.random(0,1))
                end
            end, 4000, 1)
        end)
    else
        outputChatBox("* Posiadasz aktywn?… prac?™.")
    end
end)
addEventHandler("onClientMarkerHit",marker,function(hit)
if hit ~= localPlayer then return end
if getPedOccupiedVehicle(hit) then return end
addEventHandler("onClientRender",root,gui)
addEventHandler("onClientClick",root,click)

end)

local settings = {

    pos_x = 1280,
    pos_y = 720,
    jobCode = "ogrodnik",

}

local sx, sy = guiGetScreenSize()
local w, h = (sx/settings.pos_x),(sy/settings.pos_y)
local zoom = 1
if sx < settings.pos_x then
    zoom = math.min(2, settings.pos_x / sx)


    local sx, sy = guiGetScreenSize ( )
    local cx, cy = getCursorPosition ( )
    local cx, cy = ( cx * sx ), ( cy * sy )
    if ( cx >= x and cx <= x + width ) and ( cy >= y and cy <= y + height ) then
        return true
    else
        return false
    end
end`


Komentarz NotPaladyn dodany 2022-03-01, 20:38Dodałem tagi [lua], pamiętaj o tym następnym razem ;)
Ostatnio zmieniony przez NotPaladyn 2022-03-01, 20:38, w całości zmieniany 2 razy  
Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 20:35


Szypki_exe







Wiek: 22
Na forum: 3380 dni
Posty: 172

Piwa: 1426

Respekt: 150
Respekt: 150Respekt: 150

dxDrawImage jest wykonywane przez jedn? klatk? aby by?o ca?y czas widoczne musisz zastosowa?:

Więcej informacji znajdziesz w Wikipedii MTA:

onClientRender


Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 20:38


lego15







Wiek: 26
Na forum: 2238 dni
Posty: 21
Nick w MP: popoq

Piwa: 10

Respekt: 50

a jak to zastosowa? ?eby pojawia?o si? tylko gdy pracujemy ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 20:43


Szypki_exe







Wiek: 22
Na forum: 3380 dni
Posty: 172

Piwa: 1426

Respekt: 150
Respekt: 150Respekt: 150

w momencie rozpocz?cia pracy

Więcej informacji znajdziesz w Wikipedii MTA:

addEventHandler


w momencie zako?czenia

Więcej informacji znajdziesz w Wikipedii MTA:

removeEventHandler



Tutaj ?ap najprostszy przyk?ad

local function myRender()
    dxDrawRectangle(100, 100, 100, 100)
end


addCommandHandler("showRender", function()
    addEventHandler("onClientRender", root, myrender)
end, false)


addCommandHandler("deleteRender", function()
    removeEventHandler("onClientRender", root, myrender)
end, false)


Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 21:28


lego15







Wiek: 26
Na forum: 2238 dni
Posty: 21
Nick w MP: popoq

Piwa: 10

Respekt: 50

Uda?o si? zrobi? ?eby si? pokazywa?, jednak pokazuje to si? ca?y czas niezale?nie od tego czy pracuje. Wie kto? co zrobi?em ?le ?
local function ekran()


local function ekran()


dxDrawImage(748, 901, 418, 165, ":nrpg_interface/img/background_circle.png", 0, 0, 0, tocolor(255, 255, 255, 255), true)


end
addEventHandler("onClientRender",root,ekran)
addEventHandler("showRender", root, ekran)
getElementData(el, "player:job", false)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 22:45


Szypki_exe







Wiek: 22
Na forum: 3380 dni
Posty: 172

Piwa: 1426

Respekt: 150
Respekt: 150Respekt: 150

Wyra?nie napisa?em, addEventHandler dajesz w momencie rozpocz?cia pracy, removeEventHandler w momencie zako?czenia czy tam innej chwili w kt?rej chcesz wy??czy? ui

Postaw piwo autorowi tego posta
 

 
Wysłany: 2022-03-01, 22:49


kamison

Przyszły programista .lua






Wiek: 25
Na forum: 3443 dni
Posty: 391
Nick w MP: kamison

Piwa: 599

Respekt: 205,3
Respekt: 205,3Respekt: 205,3

local function ekran()
if getElementData(el, "player:job", false) then

dxDrawImage(748, 901, 418, 165, ":nrpg_interface/img/background_circle.png", 0, 0, 0, tocolor(255, 255, 255, 255), true)

end
end

addEventHandler("showRender", root, function()
addEventHandler("onClientRender",root,ekran)
end)

Postaw piwo autorowi tego posta
 

 
Tagi: praca/gui
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Praca/gui 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