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

Wysłany: 2016-01-22, 15:26


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Witam, robi? pewien skrypt i potrzebuj? sczyta? infermacje kt?re p??niej dam na 3dtext, i nie wiem jak zrobi?.
Za pomoc daje :piwo:

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 15:56


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Zczyta? informacj? to znaczy? Wzi??? elementdaty czy co? Je?li chcesz w skrypcie zaznaczy?, ?e chodzi Ci o ten a nie inny pojazd to:

local auto = getPedOccupiedVehicle(localPlayer)


Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:09


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, w sensie ?e pojazd naje?dza na marker i wyskakuje 3dtext z podanymi danymi ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:36


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Aha, to w takim razie:


local auto = getPedOccupiedVehicle(localPlayer)
local marker = createMarker(x, y, z, "cylinder", wielko??, r, g, b, alpha)
local zmienna1 = getElementData(auto, "mk1", true)
local zmienna2 = getElementData(auto, "mk2", true)


function jestwmarkerze(plr)
if auto then
if isElementWithinMarker(plr, marker) then 
dxDrawText ( "jaki? tekst"..zmienna1.."\n"..zmienna2, sx, sy - 30, sx, sy - 30, tocolor(255,255,255,255), math.min ( 0.4*(150/distance)*1.4,4), "bankgothic", "center", "bottom", false, false, false )
end
end
end
addEventHandler('onMarkerHit', marker, jestwmarkerze)


Co? takiego, nie testowane.

zmienna1 i zmienna2 to s? element daty pojazdu, je?eli masz skrypt np. na "mk1/mk2" to podczas ustawiania handlingu pojazdu, nadajesz mu (zazwyczaj tak jest) element dat?, i w?a?nie w te zmienne wpisujesz element date.
Je?eli chcesz w dxDrawText doda? now? linijk? (w d??) wpisujesz /n i masz now?. Mo?esz doda? kilka takich zmiennych, w razie problem?w/b??d?w w db3 pisz.

Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:39


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, a chcia?bym na kordy da? tego 3dtexta ;) i ju? id? testowa? ;)

[ Dodano: 2016-01-22, 16:40 ]
i jeszcze bo b?d? chcia? zmienn? pomno?y? *10 jak to zrobi? ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:42


_Wicek_

Majstersztyk






Wiek: 26
Na forum: 4401 dni
Posty: 747
Nick w MP: Wicek

Piwa: 1842

Respekt: 360,5
Respekt: 360,5Respekt: 360,5Respekt: 360,5Respekt: 360,5

Ostrzeżeń: 40%
local jakas_tam_nazwa = zmienna*10


Podpis

Support-Team: 25.01.2016
Moderator: 10.07.2016




GG: 51274621
Skype : kuba_wicinski
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:48


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
Jako tak, to nie da si? ustawi? 3dtextu na koordynaty, trzeba by robi? osobno wy?wietlanie tego tekstu w danych koordynatach. Wi?cej tutaj:


Więcej informacji znajdziesz w Wikipedii MTA:

dxDrawText


Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 16:53


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, a takie co? ?

t=createElement("text")
setElementPosition(t, 158.36953735352, 1109.2429199219, 16.605630874634)
setElementData(t, "text", "Wjazd")
setElementData(t, "scale", 1.0)


[ Dodano: 2016-01-22, 16:57 ]
Emm, aa i m?j kod tera?nijszy

--e_marker = createMarker(2151.5, -1318.5, 24.7, "cylinder", 3, 255, 0, 0, 0) 
local auto = getPedOccupiedVehicle(localPlayer)
local marker = createMarker(2151.4306640625, -1321.1318359375, 25.312812805176, "cylinder", 3, 255, 0, 0, 0)
local zmienna1 = getElementData(auto, "engineAcceleration", true)
--local zmienna2 = getElementData(auto, "mk2", true)
local konie = zmienna1*10


function jestwmarkerze(plr)
if auto then
if isElementWithinMarker(plr, marker) then 
dxDrawText ( "Hamownia Gas Monkey\n Konie mechaniczne "..konie.."\n", sx, sy - 30, sx, sy - 30, tocolor(255,255,255,255), math.min ( 0.4*(150/distance)*1.4,4), "bankgothic", "center", "bottom", false, false, false )
end
end
end
addEventHandler('onMarkerHit', marker, jestwmarkerze)


i mam DB



Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:04


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
By?o by to co? takiego:

function dxDraw3DText( text, x, y, z, scale, font, r, g, b, maxDistance )
    -- checking required arguments
    assert( type( text ) == "string", "Bad argument @ dxDraw3DText" );
    assert( type( x ) == "number", "Bad argument @ dxDraw3DText" );
    assert( type( y ) == "number", "Bad argument @ dxDraw3DText" );
    assert( type( z ) == "number", "Bad argument @ dxDraw3DText" );
    -- checking optional arguments
    if not scale or type( scale ) ~= "number" or scale <= 0 then
        scale = 2
    end
    if not font or type( font ) ~= "string" or not fonts[ font ] then
        font = "default"
    end
    if not r or type( r ) ~= "number" or r < 0 or r > 255 then
        r = 255
    end
    if not g or type( g ) ~= "number" or g < 0 or g > 255 then
        g = 255
    end
    if not b or type( b ) ~= "number" or b < 0 or b > 255 then
        b = 255
    end
    if not maxDistance or type( maxDistance ) ~= "number" or maxDistance <= 1 then
        maxDistance = 12
    end
    local textElement = createElement( "text" );
    -- checking if the element was created
    if textElement then 
        -- setting the element datas
        setElementData( textElement, "text", text );
        setElementData( textElement, "x", x );
        setElementData( textElement, "y", y );
        setElementData( textElement, "z", z );
        setElementData( textElement, "scale", scale );
        setElementData( textElement, "font", font );
        setElementData( textElement, "rgba", { r, g, b, 255 } );
        setElementData( textElement, "maxDistance", maxDistance );
        -- returning the text element
        return textElement
    end
    -- returning false in case of errors
    return false
end

addEventHandler( "onClientRender", root,
    function( )
        local texts = getElementsByType( "text" );
        if #texts > 0 then
            local pX, pY, pZ = getElementPosition( localPlayer );
            for i = 1, #texts do
                local text = getElementData( texts[i], "text" );
                local tX, tY, tZ = getElementData( texts[i], "x" ), getElementData( texts[i], "y" ), getElementData( texts[i], "z" );
                local font = getElementData( texts[i], "font" );
                local scale = getElementData( texts[i], "scale" );
                local color = getElementData( texts[i], "rgba" );
                local maxDistance = getElementData( texts[i], "maxDistance" );
                if not text or not tX or not tY or not tZ then
                    return
                end
                if not font then font = "default" end
                if not scale then scale = 2 end
                if not color or type( color ) ~= "table" then
                    color = { 255, 255, 255, 255 };
                end
                if not maxDistance then maxDistance = 12 end
                local distance = getDistanceBetweenPoints3D( pX, pY, pZ, tX, tY, tZ );
                if distance <= maxDistance then
                    local x, y = getScreenFromWorldPosition( tX, tY, tZ );
                    if x and y then
                        dxDrawText( "Wjazd", x, y, _, _, tocolor( color[1], color[2], color[3], color[4] ), scale, font, "center", "center" );
                    end
                end
            end
        end
    end
);


Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:07


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, ee mi dzia?a xd

defscale=1
defr=255
defg=255
defb=255
defa=255
defdd=100
defscale3d=true
deffont="default-bold"


local sx, sy     = guiGetScreenSize ( )
local gx         = sx * 0.1
local gy         = sy * 0.1

local posX    = 0
local posY    = 0
local sizeX   = 0
local sizeY   = 0

local pd,pi

local teksty={}

function refreshNearbyTexts()
 teksty=getElementsByType ( "text", getRootElement(), true )
 local px,py,_ = getCameraMatrix()

 pd=getElementDimension(localPlayer)
 pi=getElementInterior(localPlayer)

 for i, t in pairs ( teksty  ) do
    if (getElementDimension(t)~=pd or getElementInterior(t)~=pi) then
        teksty[i]=nil
    else
        local cx, cy, _ = getElementPosition ( t )
        local dist = getDistanceBetweenPoints2D ( px, py, cx, cy)
        if (dist>defdd) then
            teksty[i]=nil
        end
    end
 end

end

setTimer(refreshNearbyTexts, 2000, 0)


addEventHandler ( "onClientRender", getRootElement ( ),
function ( )
 local px,py,pz = getCameraMatrix()
 for i, t in pairs ( teksty ) do
    if (t and isElement(t) and getElementDimension(t)==pd and getElementInterior(t)==pi) then
            local cx, cy, cz = getElementPosition ( t )
            
            if ( getElementData(t, "attach") ) and (not getElementPosition(getElementData(t, "attach"))) then destroyElement(t) end
            if getElementData(t, "attach") and isElement(getElementData(t, "attach")) and getElementType(getElementData(t, "attach"))=="ped" then
                cx,cy,cz = getElementPosition(getElementData(t, "attach"))
            end
            
            if getElementData(t, "addz") then
                cz = cz+getElementData(t, "addz") or cz
            end
            
            local dist = getDistanceBetweenPoints3D ( px, py, pz, cx, cy, cz )
            if dist < defdd then
                local scx, scy = getScreenFromWorldPosition ( cx, cy, cz, 100, true )
                if scx and scy and isLineOfSightClear ( px, py, pz, cx, cy, cz, true,false, true, true ) then
                    --The text default parameters
                    local alpha   = defa
                    local r       = defr
                    local g       = defg
                    local b       = defb
                    local scale   = defscale
                    local scale3d = defscale3d
                    local font = deffont
                    if getElementData ( t, "scale", false ) then scale = getElementData ( t, "scale", false ) end
                    if getElementData ( t, "font", false ) then font = getElementData ( t, "font", false) end
                    if scale3d == true then scale = scale * ( ( defdd - dist ) / defdd ) end
                    local text  = getElementData ( t, "text" )
                    if not text or text == "" then return end
                    local c     = getElementData ( t, "rgba" )
                    if c and type ( c ) == "table" then r = c[1] g = c[2] b = c[3] alpha = c[4] end
                    local ac=(r+g+b)/3
                    dxDrawText ( text, scx+2, scy+2, scx, scy, tocolor ( 255-ac, 255-ac, 255-ac, alpha ), scale, font, "center", "center" )
                    dxDrawText ( text, scx-2, scy+2, scx, scy, tocolor ( 255-ac, 255-ac, 255-ac, alpha ), scale, font, "center", "center" )
                    dxDrawText ( text, scx+2, scy-2, scx, scy, tocolor ( 255-ac, 255-ac, 255-ac, alpha ), scale, font, "center", "center" )
                    dxDrawText ( text, scx-2, scy-2, scx, scy, tocolor ( 255-ac, 255-ac, 255-ac, alpha ), scale, font, "center", "center" )
                    dxDrawText ( text, scx, scy, scx, scy, tocolor ( r, g, b, alpha ), scale, font, "center", "center" )
                end
            end
    end
 end
end )


tamten kod jest do tego, i normalnie robi mi 3d texty ;)

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:10


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
--e_marker = createMarker(2151.5, -1318.5, 24.7, "cylinder", 3, 255, 0, 0, 0) 
local auto = getPedOccupiedVehicle(localPlayer)
local marker = createMarker(2151.4306640625, -1321.1318359375, 25.312812805176, "cylinder", 3, 255, 0, 0, 0)
local zmienna1 = getVehicleHandling(auto, engineAcceleration)
--local zmienna2 = getElementData(auto, "mk2", true)
local konie = zmienna1*10


function jestwmarkerze(plr)
if auto then
if isElementWithinMarker(plr, marker) then 
dxDrawText ( "Hamownia Gas Monkey\n Konie mechaniczne "..konie.."\n", sx, sy - 30, sx, sy - 30, tocolor(255,255,255,255), math.min ( 0.4*(150/distance)*1.4,4), "bankgothic", "center", "bottom", false, false, false )
end
end
end
addEventHandler('onMarkerHit', marker, jestwmarkerze)


Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:14


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, a tu mam co? zmienia? ?
sx, sy - 30, sx, sy - 30


Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:17


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
"sebik2303" napisał/a:

Emm, a tu mam co? zmienia? ?
sx, sy - 30, sx, sy - 30

local sx,sy = guiGetScreenSize()

Dodaj to na g?rze kodu. I testuj ;)

Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:19


sebik2303

Mapper :)






Wiek: 25
Na forum: 4301 dni
Posty: 298
Nick w MP: sebik2303

Piwa: 899

Respekt: 55,3

Emm, ale client ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-01-22, 17:21


Emm

***** ***






Wiek: 32
Na forum: 4021 dni
Posty: 3191
Nick w MP: Emm

Piwa: 6171

Respekt: 1580
Respekt: 1580Respekt: 1580


   Administrator: Admin ma zawsze rację | REGULAMIN FORUM | REKLAMA/VIP | .
No tak, bo u?ywamy element?w gui (dxDrawText).

Podpis

Użytkownik: 20.10.2015r
GTAO Member: 06.03.2016r
Support-Team: 20.01.2016r
Moderator: 30.03.2016r
Mod-Team: 08.10.2016r
Vice Admin: 04.05.2018r
Administrator: 03.05.2022r


! Koniecznie zapoznaj się z regulaminem forum.
Pamiętaj, aby zawsze go przestrzegać, nie mniej ważne są również regulaminy działów, w których się wypowiadasz!
Zamiast zakładać temat po kilka razy, bo jest usuwany przez Administrację, przejrzyj regulamin i napisz poprawnie temat!
Sprawy z administracją możesz załatwiać anonimowo w tym dziale.
Najważniejsze informacje od Administracji możesz przeczytać tutaj oraz tutaj.
Postaw piwo autorowi tego posta
 

 
Tagi: jak :: zczytać :: pojazd :: markera
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






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