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: 2097 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: 21
Na forum: 3239 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: 2097 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: 21
Na forum: 3239 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(100100100100)
end


addCommandHandler("showRender", function()
    addEventHandler("onClientRender"rootmyrender)
endfalse)


addCommandHandler("deleteRender", function()
    removeEventHandler("onClientRender"rootmyrender)
endfalse)


Postaw piwo autorowi tego posta
 

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


lego15







Wiek: 26
Na forum: 2097 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: 21
Na forum: 3239 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: 3302 dni
Posty: 391
Nick w MP: kamison

Piwa: 594

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 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