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

Wysłany: 2019-11-09, 15:39


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

Hej,

Postanowi?em wko?cu rzuci? si? na "g??bsz? wod?" ni? tylko "p?askie" tworzenie pseudola i zmienianie go tak jak ka?dy. Chc? wko?cu tworzy? w?asne skryptu, pos?uguj?c si? tylko wikipedi?.

W?a?nie stworzy?em m?j pierwszy, ale w?asny, skrypt na marker z tekstem po wej?ciu w niego, z pomoc? wiki mtasa.

Zauwa?y?em ?e jestem ?lepy oraz naprawd? nie ogarniam skrypt?w i pora si? nauczy? tworzenia ich bo nawet nie umia?em zauwa?y? ?e jak tworzy?em plik meta.xml to w ?rodku niego nie napisa?em na pocz?tku <meta> i na ko?cu </meta> przez co si? potem dziwi?em dlaczego nie dzia?a skrypt.

Ale przychodz? z pro?b? o pomoc w celu przedstawienia mi informacji jakich rzeczy i co musz? wiedzie? aby zrobi? dany skrypt, kt?ry teraz b?d? chcia? zrobi?, moja pierwsza praca;

Zbieracz marihuany - Wydaje mi si? ?e to proste do wykonania, ?atwiejsze by?oby chyba sv ale ja wol? to na pocz?tek jako moja w?asna pierwsza praca, bo wydaje si? ciekawsze.

Dodam ?e chcia?bym te? utworzy? ten skrypt z funkcjami dxDrawImage, ?eby by?y panele graficzne gdy si? wejdzie w marker.

Co ju? mam?

--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

local marker_praca createMarker(1816.39, -2085.7012.54"cylinder"2.0253135245255) -- Marker rozpocz?cia pracy

function wejscie_w_marker hitPlayermatchingDimension ) -- funkcja wej?cia w ten marker
    outputChatBox(getPlayerName(hitPlayer) .. " Witaj w pracy zbieracza marihuany. ")
end
addEventHandler("onClientMarkerHit"getRootElement(), wejscie_w_marker)


Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 6 piw(a):
SDFSD14, MusialYT, kokz120, YoriTeq, szwagierekk, gangsta13
Wysłany: 2019-11-09, 21:57


Mateusesek

Szkrypterr






Wiek: 25
Na forum: 2668 dni
Posty: 43
Nick w MP: Kek



Respekt: 50

Noo tylko marker i tekst na czacie xD

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-09, 23:22


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

Mateusesek, napisa?em w po?cie ?e chc? si? uczy? lua i szukam pomocy jakich funkcji mam u?y? do napisania tego skryptu na t? prace, ten marker to m?j pierwszy w?asny skrypt z u?yciem wiki i jest wst?pnie napisany te? do tej pracy, a abym m?g? dalej si? uczy? lua i pr?bowa? napisac skrypt, musz? wiedzie? jakich funkcj? u?y?(dxdrawimage, gui, client itp), bo jako i? nawet nie mo?na nazwa? mnie amatorem w lua, nie posiadam takiej wiedzy.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 00:15


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Do utworzenia markeru rozpocz?cia pracy u?ywasz funkcji, akurat prostej:

Więcej informacji znajdziesz w Wikipedii MTA:

createMarker


Aby obs?u?y? wej?cie gracza w wy?ej stworzony marker u?ywasz odpowiednio dla klienta i serwera funkcji

Więcej informacji znajdziesz w Wikipedii MTA:

onClientMarkerHit


Więcej informacji znajdziesz w Wikipedii MTA:

onMarkerHit


Ko?o si? zatacza, znowu tworzysz marker dla docelowego punktu i obs?ugujesz wej?cie gracza.

Aby wy?wietli? obraz lub ka?dy element DirectX musisz u?y? eventu, kt?ry wykonuje si? wrac z ilo?ci? klatek na sekund?:

Więcej informacji znajdziesz w Wikipedii MTA:

onClientRender


Widz?, ?e funkcje DirectX nie s? Ci obce (dxDrawImage etc.) wi?c ich tutaj nie przytaczam.

Kiedy chcia?by? zako?czy? wy?wietlanie w/w element?w, usuwasz event handlera za pomoc?

Więcej informacji znajdziesz w Wikipedii MTA:

removeEventHandler


W celu zamkni?cia okna mo?esz pos?u?y? si? zdarzeniem

Więcej informacji znajdziesz w Wikipedii MTA:

onClientKey


Sprawdzasz czy kursor znajduje si? w pozycji przycisku i usuwasz event handlera:

Więcej informacji znajdziesz w Wikipedii MTA:

isMouseInPosition


Wyp?at? graczowi przekazujemy za pomoc?

Więcej informacji znajdziesz w Wikipedii MTA:

givePlayerMoney

T? funkcj? radz? u?ywa? po stronie serwera, aby by?a ona synchronizowana i mog?a spe?nia? funkcj? got?wki.

Odpowiednio event tworzymy za pomoc?

Więcej informacji znajdziesz w Wikipedii MTA:

addEvent


Aby przypisa? mu funkcj?, u?ywasz znanej ju? funkcji:

Więcej informacji znajdziesz w Wikipedii MTA:

addEventHandler


Stron? danej funkcji znajdziesz w g?rnym prawym rogu strony na WIKI MTA SA.
Odpowiednio: client - dost?pna po stronie klienta; server - dost?pna po stronie serwera; shared - dost?pna obu-stronnie

Wydaje mi si?, ?e to wszystko. W razie innych pyta?, lub dotycz?cych tego samego tematu, pisz ?mia?o. Nie pogardzi?bym respekcikiem za te wypociny :mrgreen:

Postaw piwo autorowi tego posta
 

 
Więcej szczegółów
Wystawiono 1 piw(a):
Kulegg
Wysłany: 2019-11-10, 00:48


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

Dzi?kuje Ci bardzo Wilq, oczywi?cie respekt i :piwo: w?a?nie Ci da?em, b?d? pisa? tutaj jakbym mia? jaki? problem czy co? :D

[ Dodano: 2019-11-10, 01:56 ]
Zrobi?em takie co?, po wej?ciu w marker wy?wietla si? obrazek, w prawid?owych kordach kt?re ustawi?em, jednak?e po wyj?ciu z markera nie znika obrazek, ci?gle si? wy?wietla.

I chcia?bym si? zapyta? Ciebie Wilq,
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??

Ta linijka odpowiada za ro?dzielczo??, ale czy to znaczy ?e je?li ustawie kordy wy?wietlania obrazka to dzi?ki tej linijce ka?dy kto ma inn? ro?dzia?ke ni? ja b?dzie mie? automatyczne wyskalowany obrazek jak ja?

Kod:


--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

function MarkerHit hitPlayermatchingDimension ) 
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)

local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 13:32


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Tak, obrazek b?dzie wyskalowany. Ale rozmiar (szeroko??, wysoko??) r?wnie? musisz odpowiednio obliczy? aby by? taki sam na ka?dej rozdzielczo?ci.

Aby obrazek znikn?? musisz usun?? event handlera w evencie

Więcej informacji znajdziesz w Wikipedii MTA:

onClientMarkerLeave


Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 19:21


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

Mam problem z przypisaniem if inMouseIn.
Zrobi?em tak jak w kodzie jest teraz i po klikni?ciu w byle co na ekranie wyskakuje taki b??d w DB3 jak na ss. Chc? zrobi? tak aby po klikni?ciu w "Rozpocznij", praca si? zaczyna?a , obrazek nam by znika? i zamro?enie gracza si? nam usuwa?o(ustawi?em ?e przy wej?ciu w marker, zamra?a gracza, ?eby si? nie rusza? bo jest obrazek), tak samo przy klikni?ciu "Anuluj", ale wtedy tylko aby zamro?enie si? usun??o oraz aby obrazek znikn??.


Nie mam kompletnie poj?cia jak si? za to zabra?, a naprawd? si? staram i chc? to zrobi?, itak ledwo co rozumiem co? z wiki, ale pr?buj?.
Kod:

--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

local punktyMarycha = {
{1106.44, -1218.1918.24},
{1100.63, -1217.3418.24},
{1095.28, -1216.7918.24},
}

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

function MarkerHit hitPlayermatchingDimension ) 
 setElementData(localPlayer"praca:hodowca"true)
 showCursor(true)
 setElementFrozen localPlayertrue)
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)


function isMouseInPosition xywidthheight )
    if ( not isCursorShowing( ) ) then
        return false
    end
    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

function tworzenieMarkera()
    rnd math.random(1#punktyMarycha)
    markerRandomowy createMarker(punktyMarycha[rnd][1], punktyMarycha[rnd][2], punktyMarycha[rnd][3], 'cylinder'1.5)
    blipRandomowy createBlipAttachedTo(markerRandomowy41)
end

bindKey("mouse1""down", function()
    if not getElementData(localPlayer"praca:hodowca") == true then return end
        if isMouseIn(538*px527*py161*px39*pythen
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
    end
    if isMouseIn(324*px527*py161*px39*pythen
    if isPedInVehicle(localPlayerthen return end
    if getElementData(localPlayer"praca"then outputChatBox("Aktualnie ju? pracujesz!"25500) return end
        outputChatBox("Rozpoczynasz prac? Hodowcy."100100250)
        setElementData(localPlayer"praca""hodowca")
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        tworzenieMarkera()
        addEventHandler("onClientMarkerHit"markerRandomowy)
    end
end)
    
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end




Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 19:31


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

No widzisz, to ju? nie jest samodzielne pisanie skrypt?w tylko skopiowanie kodu z innego.
Nie zdefiniowa?e? zmiennej 'px' i pozosta?ych. Przeanalizuj kod i zobacz czego nie masz.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 19:46


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

Chodzi o to?

    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

?ebym zmieni? np na to?

    local pxpy guiGetScreenSize ( )
    local px,py getCursorPosition ( )
    local pxpy = ( px px ), ( py py )
    
    return ( ( px >= and px <= width ) and ( py >= and cy <= height ) )
end


Tak, przyznaje si?. Skopiowa?em kod z innego skryptu bo ju? nie mia?em poj?cia jak u?y? tych danych funkcji a nie chcia?em robi? spamu co chwil? w tym temacie.
M?g?by? mi wyt?umaczy?, dlaczego np. w wiki w funkcji isMouseInPosition pisze:

    addEventHandler "onClientRender"root,
    function ( )
        local imgXimgYimgWidthimgHeight 5050200200
        dxDrawImage imgXimgYimgWidthimgHeight, ( isMouseInPosition imgXimgYimgWidthimgHeight ) and "myImage2.png" or "myImage.png" ), tocolor 255255255 ) )
    end
)

Jako przyk?ad, a nie ma tam np. podanego przyk?adu jak ten
if isMouseIn(538*px527*py161*px39*pythen
u?yty w kodzie? Bo w?a?nie z tego powodu nie rozumiem tych funkcji, sk?d je wzi??? i jakich u?y? co do napisanych linijek.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 19:56


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

Funkcja isMouseInPosition sprawdza, czy kursor znajduje si? w prostok?cie o podanych pozycjach i rozmiarach.

Je?li wstawisz kolejno 500, 500, 10, 10 i chcesz ?eby funkcja si? wykona?a - kursor musi by? w kwadracie o rozmiarach 10, 10 zaczynaj?cym si? w miejscu 500 / 500 pikseli.

Najpro?ciej poda? niewyskalowane warto?ci i dopiero p??niej na nich tworzy? skalowanie. U Ciebie pozycja by?a mno?ona przez skal? (rozmiar ekranu gracza / rozmiar ekranu, na kt?rym dopasowywany by? element). Czyli usu? te '*px' i zobacz czy zadzia?a. Tak samo z reszt?.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 20:24


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50

po usuni?cie "px" i "py" to blip, marker itp si? usun?? tak?e jaki? b??d napewno ;p


Kod:


--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

local punktyMarycha = {
{1106.44, -1218.1918.24},
{1100.63, -1217.3418.24},
{1095.28, -1216.7918.24},
}

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

function MarkerHit hitPlayermatchingDimension ) 
 setElementData(localPlayer"praca:hodowca"true)
 showCursor(true)
 setElementFrozen localPlayertrue)
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)


function isMouseInPosition xywidthheight )
    if ( not isCursorShowing( ) ) then
        return false
    end
    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

function tworzenieMarkera()
    rnd math.random(1#punktyMarycha)
    markerRandomowy createMarker(punktyMarycha[rnd][1], punktyMarycha[rnd][2], punktyMarycha[rnd][3], 'cylinder'1.5)
    blipRandomowy createBlipAttachedTo(markerRandomowy41)
end

bindKey("mouse1""down", function()
    if not getElementData(localPlayer"praca:hodowca") == true then return end
        if isMouseIn(538*, 527*, 161*, 39*) then
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
    end
    if isMouseIn(324*, 527*, 161*, 39*) then
    if isPedInVehicle(localPlayerthen return end
    if getElementData(localPlayer"praca"then outputChatBox("Aktualnie ju? pracujesz!"25500) return end
        outputChatBox("Rozpoczynasz prac? Hodowcy."100100250)
        setElementData(localPlayer"praca""hodowca")
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        tworzenieMarkera()
        addEventHandler("onClientMarkerHit"markerRandomowy)
    end
end)
    
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end


Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 20:55


Wilq







Wiek: 24
Na forum: 4429 dni
Posty: 3410

Piwa: 739

Respekt: 1225,8
Respekt: 1225,8

No tak, bo mia?e? usun?? px i znak mno?enia. Nazwa funkcji dalej si? nie zgadza.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2019-11-10, 22:35


Kulegg







Wiek: 46
Na forum: 3125 dni
Posty: 283

Piwa: 20

Respekt: 50



--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

local punktyMarycha = {
{1106.44, -1218.1918.24},
{1100.63, -1217.3418.24},
{1095.28, -1216.7918.24},
}

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

function MarkerHit hitPlayermatchingDimension ) 
 setElementData(localPlayer"praca:hodowca"true)
 showCursor(true)
 setElementFrozen localPlayertrue)
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)


function isMouseIn xywidthheight )
    if ( not isCursorShowing( ) ) then
        return false
    end
    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

function tworzenieMarkera()
    rnd math.random(1#punktyMarycha)
    markerRandomowy createMarker(punktyMarycha[rnd][1], punktyMarycha[rnd][2], punktyMarycha[rnd][3], 'cylinder'1.5)
    blipRandomowy createBlipAttachedTo(markerRandomowy41)
end

bindKey("mouse1""down", function()
    if not getElementData(localPlayer"praca:hodowca") == true then return end
        if isMouseIn(53852716139then
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
    end
    if isMouseIn(32452716139then
    if isPedInVehicle(localPlayerthen return end
    if getElementData(localPlayer"praca"then outputChatBox("Aktualnie ju? pracujesz!"25500) return end
        outputChatBox("Rozpoczynasz prac? Hodowcy."100100250)
        setElementData(localPlayer"praca""hodowca")
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        tworzenieMarkera()
        addEventHandler("onClientMarkerHit"markerRandomowy)
    end
end)
    
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end


Wszystko pi?knie dzia?a, dzi?kuje Ci jeszcze raz. Ustawi?em te? usuwanie obrazka po klikni?ciu w oba przyciski. Zajm? si? teraz animacj?, dodawaniem obiektu. A u?y?em tego aby usun?? obrazek
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek


[ Dodano: 2019-11-11, 11:33 ]
Gdy rozpoczn? prac?, oraz wejd? w marker wylosowanego punkty marychy, w??cza mi si? kursos myszy oraz gdy klikne w miejsce tam gdzie jest przycisk rozpocznij i anuluj w markerze rozpocz?cia, to pisze ?e ju? aktualnie pracuje, i przy anuluj wy??cza si? kursor. Co zrobi?em ?le w kodzie ?e tak si? dzieje?
Chcia?bym zrobi? tak ?e normalnie po wej?ciu w randomowy marker punkty marychy, chowa? si? ten kursor oraz funkcj?
 if isMouseIn 
.


Kod:

--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

local punktyMarycha = {
    {1106.44, -1218.1918.24},
    {1100.63, -1217.3418.24},
    {1095.28, -1216.7918.24},
}

function MarkerHit hitPlayermatchingDimension ) 
 setElementData(localPlayer"praca:hodowca"true)
 showCursor(true)
 setElementFrozen localPlayertrue)
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)


function isMouseIn xywidthheight ) -- FunkcjaKlikuMysz?
    if ( not isCursorShowing( ) ) then
        return false
    end
    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

function tworzenieMarkera() -- Funkcja randomowych punkt?wMarychy
    rnd math.random(1#punktyMarycha)
    markerRandomowy createMarker(punktyMarycha[rnd][1], punktyMarycha[rnd][2], punktyMarycha[rnd][3], 'cylinder'1.5)
    blipRandomowy createBlipAttachedTo(markerRandomowy41)
end

bindKey("mouse1""down", function() -- Bind pod menu obrazka
    if not getElementData(localPlayer"praca:hodowca") == true then return end
        if isMouseIn(73450716539then -- Przycisk Anuluj
        setElementFrozen localPlayerfalse) -- Odmro?enie gracza je?li wybierze anuluj
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
    end
    if isMouseIn(73444716539then -- Przycisk Rozpocznij
    if isPedInVehicle(localPlayerthen return end
    if getElementData(localPlayer"praca"then outputChatBox("Aktualnie ju? pracujesz!"25500) return end
        outputChatBox("Rozpoczynasz prac? Hodowcy."100100250)
        setElementData(localPlayer"praca""hodowca")
    toggleControl("sprint"false ) -- Wy??czenie sprintu podczas pracy
    toggleControl("jump"false ) -- Wy??czenie skakania podczas pracy
    toggleControl("crouch"false ) -- Wy??czenie skradania sipodczas pracy
        setElementFrozen localPlayerfalse) -- Odmro?enie gracza je?li wybierze Rozpocznij
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        tworzenieMarkera()
        removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
        addEventHandler("onClientMarkerHit"markerRandomowy)

    end
end)
    
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end


[ Dodano: 2019-11-12, 14:09 ]
Teraz sprawdzi?em i mam problem, gdy? jak wejd? w oboj?tnie jaki marker(nie zale?nie czy to od pracy hodowcy czy przecho itp) to wy?wietla si? kursor i punkty funkcji ifInMouse, z tego skryptu.
Co jest ?le zrobione?

--[[
   SkryptPraca zbieracza Marihuany.
   Autor SkryptuRynberto
   Nie masz prawa u?ycia kodu skryptu bez mojej zgody.
   Skrypt utworzony 09.11.2019
]]

createBlip(1102.35, -1189.5118.3246,2,0,0,0,0,0,275) -- Blip Pracy

local markerPraca createMarker(1102.35, -1189.5117.32"cylinder"2.013313313350) -- Marker rozpocz?cia pracy

local punktyMarycha = {
    {1106.44, -1218.1918.24},
    {1100.63, -1217.3418.24},
    {1095.28, -1216.7918.24},
}

function MarkerHit hitPlayermatchingDimension ) 
 setElementData(localPlayer"praca:hodowca"true)
 showCursor(true)
 setElementFrozen localPlayertrue)
 vehicle getPedOccupiedVehicle hitPlayer ) -- Je?li gracz b?dzie chciawej?? w marker i pracowaw aucieto nie b?dzie m?gtego zrobi?
    if hitPlayer ~= localPlayer then return end
        if source == markerPraca then
            HandleTheRendering() -- pokazuje obrazek
        end
end
addEventHandler("onClientMarkerHit"rootMarkerHit)


function isMouseIn xywidthheight ) -- FunkcjaKlikuMysz?
    if ( not isCursorShowing( ) ) then
        return false
    end
    local sxsy guiGetScreenSize ( )
    local cxcy getCursorPosition ( )
    local cxcy = ( cx sx ), ( cy sy )
    
    return ( ( cx >= and cx <= width ) and ( cy >= and cy <= height ) )
end

function tworzenieMarkera() -- Funkcja randomowych punkt?wMarychy
    rnd math.random(1#punktyMarycha)
    markerRandomowy createMarker(punktyMarycha[rnd][1], punktyMarycha[rnd][2], punktyMarycha[rnd][3], 'cylinder'1.5)
    blipRandomowy createBlipAttachedTo(markerRandomowy41)
end

bindKey("mouse1""down", function() -- Bind pod menu obrazka
    if not getElementData(localPlayer"praca:hodowca") == true then return end
        if isMouseIn(73450716539then -- Przycisk Anuluj
        setElementFrozen localPlayerfalse) -- Odmro?enie gracza je?li wybierze anuluj
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
    end
    if isMouseIn(73444716539then -- Przycisk Rozpocznij
    if isPedInVehicle(localPlayerthen return end
    if getElementData(localPlayer"praca"then outputChatBox("Aktualnie ju? pracujesz!"25500) return end
        outputChatBox("Rozpoczynasz prac? Hodowcy."100100250)
        setElementData(localPlayer"praca""hodowca")
    toggleControl("sprint"false ) -- Wy??czenie sprintu podczas pracy
    toggleControl("jump"false ) -- Wy??czenie skakania podczas pracy
    toggleControl("crouch"false ) -- Wy??czenie skradania sipodczas pracy
        setElementFrozen localPlayerfalse) -- Odmro?enie gracza je?li wybierze Rozpocznij
        setElementData(localPlayer"praca:hodowca"false)
        showCursor(false)
        tworzenieMarkera()
        removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
        addEventHandler("onClientMarkerHit"markerRandomowy)

    end
end)
    
local screenWidth,screenHeight guiGetScreenSize()  -- Ro?dzielczo??


function obrazek ( )
    -- ScreenWidthScreenHeightPixel XPixel Y
    dxDrawImage screenWidth/650screenHeight/+ -3801300800'Obrazki/Hodowca.png' ) -- Dodaje obrazek
end

function stopobrazek ( )
    removeEventHandler("onClientRender"rootobrazek) -- Usuwa obrazek
end

function HandleTheRendering ( )
    addEventHandler("onClientRender"rootobrazek)  -- Dzi?ki temu jest wy?wietlany obrazek
end


Postaw piwo autorowi tego posta
 

 
Tagi: praca :: zbieracza :: marihuany
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