[Include] TextDrawMove v1.0 - Mova suas TextDraws Dinamicamente!
#1

[Image: TextDrawMove.png]
* Comentбrio

Essa Include foi desenvolvida para mover TextDraws dinamicamente, ela pode chegar a pesar 400kb a mais no GM, Nгo tem como melhorar isso pois й as Vars que armazenam os dados para que possa mover as TextDraws. Sei que com EMIT ficaria muito mais dinвmico mais como nгo sei mexer com EMIT nгo tem como eu fazer, Estou pensando em estudar isso para que possa trazer coisas Inovadores para o Forum! Espero que gostem!

*Como usar ?

pawn Код:
#include <a_samp>
#include <TextDrawMove>
pawn Код:
Textdraw0 = TextDrawCreate(400.000000, 13.000000, "_");
TextDrawBackgroundColor(Textdraw0, 255);
TextDrawFont(Textdraw0, 1);
TextDrawLetterSize(Textdraw0, 0.500000, 6.199999);
TextDrawColor(Textdraw0, -1);
TextDrawSetOutline(Textdraw0, 0);
TextDrawSetProportional(Textdraw0, 1);
TextDrawSetShadow(Textdraw0, 1);
TextDrawUseBox(Textdraw0, 1);
TextDrawBoxColor(Textdraw0, 255);
TextDrawTextSize(Textdraw0, 254.000000, 0.000000);

Textdraw1 = TextDrawCreate(530.000000, 13.000000, "Teste");
TextDrawBackgroundColor(Textdraw1, 255);
TextDrawFont(Textdraw1, 1);
TextDrawLetterSize(Textdraw1, 0.400000, 1.899999);
TextDrawColor(Textdraw1, -1);
TextDrawSetOutline(Textdraw1, 0);
TextDrawSetProportional(Textdraw1, 1);
TextDrawSetShadow(Textdraw1, 1);
TextDrawBoxColor(Textdraw1, 255);

CMD:mover(playerid) {
    TextDrawMove(Textdraw0, 250.0, 383.0, 104.0, 0.0, 3, PT_MOVE_BOX, playerid);
    TextDrawMove(Textdraw1, 44.0, 311.0, 0.0, 0.0, 3, PT_MOVE_TEXT);
    return 1;
}
pawn Код:
TextDrawMove(Text:Td, Float:fX, Float:fY, Float:fX2, Float:fY2, Speed, Move, playerid = INVALID_PLAYER_ID);
*Text:Td - ID da TextDraw
*Float:fX, Float:fY - Coords da posiзгo final da TextDraw(TextDrawCreate).
*Float:fX2, Float:fY2 - Coords da posiзгo final da TextDraw(TextDrawTextSize).
*Speed - Velocidade do movimento, Valor inicial '1', valores considerбveis, '2' e '3', acima disso ficarб muito rбpido conforme a maior distвncia a mover!
*Move - Isso й conforme o TextDrawUseBox, se a TextDraw usar box coloque 'PT_MOVE_BOX' caso nгo usar box coloque 'PT_MOVE_TEXT'.
*playerid - Isso й, se a TextDraw serб mostrada para todos ou somente para o determinado Player. 'INVALID_PLAYER_ID' serб mostrada para todos.


pawn Код:
TextDrawFade(Text:Td, Color, Speed, playerid = INVALID_PLAYER_ID);
*Text:Td - ID da TextDraw
*Color - Cor final, Coloque a cor que vocк deseja, Ex: Atual: 0x000000FF(Preto s/ transparencia), Desejada: 0x000000F2(Preto c/ transparencia).
*Speed - Velocidade do Fade, Valor inicial '1', valores considerбveis, '2' e '3', acima disso ficarб muito rбpido!
*playerid - Isso й, se a TextDraw serб mostrada para todos ou somente para o determinado Player. 'INVALID_PLAYER_ID' serб mostrada para todos.


pawn Код:
TextDrawGetXAndYPos(Text:text, Float:Var[2]); //Geta as Coords do TextDrawCreate.
TextDrawGetXAndYTextSize(Text:text, Float:Var[2]); //Geta as Coords do TextDrawTextSize.
TextDrawGetXAndYLetterSize(Text:text, Float:Var[2]); //Geta as Coords do TextDrawLetterSize.
* Creditos

Paulo_TerroR - Criador.
Equipe SA-MP(Passado\Presente\Futuro) - SAMP.
[FeK]DraKiNs - Otimizaзгo ResetArray.
Magnus' - Ideia TextDrawFade.


* Video

[ame]http://www.youtube.com/watch?v=CjVbViMvtOY[/ame]

* Download

PasteBin
Sites******


Qualquer BUG me contatar por MP ou pelo Post mesmo! Ficarei agradecido.
Dъvidas, Pergunte no Post!
Bom jogo!
Reply
#2

Tem algum video?
Reply
#3

Quote:
Originally Posted by Ricop522
Посмотреть сообщение
Tem algum video?
Nois faiz...
Reply
#4

No aguardo do vнdeo...
Parece legal cara, bem ъtil!
Reply
#5

Bom trabalho, estou no aguardo do vнdeo, se possнvel
Reply
#6

Atualizado colocado Video, e a include tirado uns erros de Compilaзгo!

No video mostra umas certas 'Apagadas' isso й por causa do TextDrawDestroy e a unica de deixar Perfeita mesmo seria usando EMIT. Vou estudar isso e atualizo a Include!

Obrigado a todos!
Reply
#7

Uall, Muito bom cara, Parabйns!! REP += 8.
Reply
#8

Realmente ficou um excelente trabalho.
sу queria saber uma coisa, o tempo para mover os textdraws ?
Reply
#9

Quote:
Originally Posted by StanleyScripter
Посмотреть сообщение
Uall, Muito bom cara, Parabйns!! REP += 8.
Tamo junto mlk!

Quote:
Originally Posted by [Full]Garfield[XDB]
Посмотреть сообщение
Realmente ficou um excelente trabalho.
sу queria saber uma coisa, o tempo para mover os textdraws ?
Fiz na base de 50 ms, Eu pego a maior distвncia a percorrer e divido pela velocidade determinada e divido por 20 para ficar meio que parecido com o Speed dos portхes.

pawn Код:
((MaiorDist/Speed)/20)
@Edit

Explicando como surgiu o numero 20.

MaiorDist/Speed seria a distancia por segundo, e para isso teria que transformar em milйsimos que seria o usado no SetTimer. Dai o usei o numero 20 pois 1000/50 da 20 que seria a base que peguei 50.
Reply
#10

Quote:
Originally Posted by paulor
Посмотреть сообщение
Tamo junto mlk!



Fiz na base de 50 ms, Eu pego a maior distвncia a percorrer e divido pela velocidade determinada e divido por 20 para ficar meio que parecido com o Speed dos portхes.

pawn Код:
((MaiorDist/Speed)/20)
Mais digamos que se for utilizado em um servidor grande, daria grande possibilidade de lag, nгo ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)