Wysłany: 2013-01-15, 15:53
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
Witajcie !
Czy jest mo?liwo?? umiejscowienia napisu w danym miejscu na mapie ? Np. Na bilbordzie w ls.
Widzia?em na BestPlay'u, ?e jest taka mo?liwo??. Mo?ecie mi obja?ni? jak to zrobi? ?
Z g?ry dzi?ki
Wysłany: 2013-01-15, 16:03
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
Wysłany: 2013-01-15, 16:34
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
Brzysiek , dzi?kuje, mo?esz jeszcze powiedzie? kt?rego u?y? ?
Wysłany: 2013-01-15, 17:17
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
pidbulxd , UV_Scroll : przewija obrazek w bilboardzie od lewej do prawej. UV_Scripted robi to samo(chyba bez przewijania, nie jestem pewien), tylko nie korzysta z shadera.
Wysłany: 2013-01-15, 17:24
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
Brzysiek , z tego co tam czyta?em to tworzy objekt przy graczu. A ja chce ze np stoi sobie znak i na nim napis OBJAZD. i je?eli gracz podjedzie to go widac a jak odjedzie to znika.
Wysłany: 2013-01-15, 19:09
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
Aaa, chodzi ci o co? jak 3dtext.
Znalaz?em gdzie? na kompie tak? funkcj? :
sx , sy = guiGetScreenSize ()
textsToDraw = {}
maxrange = 12 -- maksymalna widoczno ??
addEventHandler ( "onClientRender" , root ,
function()
for a , b in pairs ( textsToDraw ) do
x , y , z = b [ 1 ], b [ 2 ], b [ 3 ]
scx , scy = getScreenFromWorldPosition ( x , y , z )
camX , camY , camZ = getCameraMatrix ()
if scx and scy and getDistanceBetweenPoints3D ( camX , camY , camZ , x , y , z + 5 ) <= maxrange then
dxDrawFramedText ( b [ 4 ], scx - 0.5 * dxGetTextWidth ( b [ 4 ], 2 , "sans" ), scy + 30 - 0.5 * dxGetFontHeight ( 2 , "sans" ), sx , sy + 5 , tocolor ( b [ 5 ], b [ 6 ], b [ 7 ], 255 ), 2 , "sans" )
end
end
end
)
function add3DText ( x , y , z , text , r , g , b )
table . insert ( textsToDraw ,{ x , y , z , text , r , g , b })
end
function dxDrawFramedText ( message , left , top , width , height , color , scale , font , alignX , alignY , clip , wordBreak , postGUI , frameColor )
color = color or tocolor ( 255 , 255 , 255 , 255 )
frameColor = frameColor or tocolor ( 0 , 0 , 0 , 255 )
scale = scale or 1
font = font or "sans"
alignX = alignX or "left"
alignY = alignY or "top"
clip = clip or false
wordBreak = wordBreak or false
postGUI = postGUI or false
dxDrawText ( message , left + 1 , top + 1 , width + 1 , height + 1 , frameColor , scale , font , alignX , alignY , clip , wordBreak , postGUI )
dxDrawText ( message , left + 1 , top - 1 , width + 1 , height - 1 , frameColor , scale , font , alignX , alignY , clip , wordBreak , postGUI )
dxDrawText ( message , left - 1 , top + 1 , width - 1 , height + 1 , frameColor , scale , font , alignX , alignY , clip , wordBreak , postGUI )
dxDrawText ( message , left - 1 , top - 1 , width - 1 , height - 1 , frameColor , scale , font , alignX , alignY , clip , wordBreak , postGUI )
dxDrawText ( message , left , top , width , height , color , scale , font , alignX , alignY , clip , wordBreak , postGUI )
end
Skopiuj ten kod na g?r? skryptu, aby zrobi? tekst u?yj funkcji add3DText.
Przyk?ad :
local x = 200 -- gdzie zrobi ? tekst ? Definicje x , y , z .
local y = 600
local z = 30
local text = "Tre?? 3DTextu"
local r , g , b = 200 , 40 , 40 -- kolor tekstu w formacie rgb
add3DText ( x , y , z , text , r , g , b )
Nie podpinaj funkcji pod onClientRender.
bul d?py o g?towiec hehe
Wysłany: 2013-01-15, 19:54
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
attempt to call global 'add3DTest' (a nil value)
linijka:
add3DText ( x , y , z , text , r , g , b )
Nie wiem co zrobi? ;c
Wysłany: 2013-01-15, 20:27
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
Funkcja musi by? dodana w meta.xml wraz z skryptem, w przeciwnym wypadku b?dziesz musia? u?y? eksportowania. W meta.xml wpisa?e? skrypt po stronie clienta? Podaj sw?j kod
Wysłany: 2013-01-15, 20:38
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
Brzysiek , < meta >
< info author = "." version = "1.3" type = "script" />
< script src = "s.lua" type = "server" />
< script src = "c.lua" type = "client" />
< script src = "napiss.lua" type = "client" />
< map src = "speedcam.map" />
< map src = "foto.map" />
</ meta >
Wysłany: 2013-01-15, 20:52
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
pidbulxd , zmie? kolejno??.
< meta >
< info author = "." version = "1.3" type = "script" />
< script src = "napiss.lua" type = "client" />
< script src = "s.lua" type = "server" />
< script src = "c.lua" type = "client" />
< map src = "speedcam.map" />
< map src = "foto.map" />
</ meta >
Wysłany: 2013-01-15, 20:55
pidbulxd
Wiek: 28 Na forum: 5230 dni Posty: 135
Nick w MP: Word
Piwa : 540
Wysłany: 2013-01-15, 22:33
Brzysiek
Skrypter pralek
Wiek: 27 Na forum: 5198 dni Posty: 488
Nick w MP: Brzysiek
Piwa : 1034
pidbulxd , w napiss.lua, pod
function add3DText ( x , y , z , text , r , g , b )
table . insert ( textsToDraw ,{ x , y , z , text , r , g , b })
end
dodawaj swoje teksty, przetestowa?em na play'u - dzia?a. (add3DText(500, 500, 20, "TEST :X", 200, 200, 200)
Nie jestem pewien, ale aby u?ywa? tej funkcji w innych skryptach musisz u?y? eksportowania. (innego wyja?nienia nie mam )
Wysłany: 2013-01-15, 22:54
Oski
LUA Scripter
Wiek: 30 Na forum: 5246 dni Posty: 428
Nick w MP: Oski
Piwa : 56
U?ywanie exportowania wcale nie jest trudne:
--Dajesz funkcje
function add3dtext(arg1,arg2,arg3,r,g,b)
exports.nazwaskryptu:add3dtext( x,x,x,x,x,x )
end
i teraz korzystamy z add3dtext jako wyeksportowanej funkcji
Tagi: napis :: obiekcie.
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: