C текстдравами много чего можно сделать, например нарисовать снеговика или елочку (поищите на главной, должны быть), также можно сделать подобие анимации.. впринципе даже не подобие, просто красиво, как в фотошопе, вы не сделаете
Для анимации нам понадобится таймеры и немного фантазии, я решил сделать анимированный красный экран после смерти:
В верхушку мода добавляем текстдрав:
Code
new Text:RedScreenBox[MAX_PLAYERS];
В любое свободное от калбеков место вставляем:
Code
forward RedScreenAnim(playerid);
public RedScreenAnim(playerid)
{
new frog = GetPVarInt(playerid, "FrogCount");
if(frog <= 15)
{
switch(frog)
{
case 0:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000042);
case 1:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000044);
case 2:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000046);
case 3:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000048);
case 4:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000050);
case 5:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000052);
case 6:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000054);
case 7:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000056);
case 8:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000058);
case 9:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000060);
case 10:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000062);
case 11:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000064);
case 12:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000066);
case 13:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000068);
case 14:TextDrawBoxColor(RedScreenBox[playerid], 0xFF000070);
}
TextDrawHideForPlayer(playerid,RedScreenBox[playerid]);
TextDrawShowForPlayer(playerid,RedScreenBox[playerid]);
SetPVarInt(playerid, "FrogCount", frog+1);
SetTimerEx("RedScreenAnim", 150, 0, "i", playerid);
}
}
forward RedScreen(playerid);
public RedScreen(playerid)
{
RedScreenBox[playerid] = TextDrawCreate(0.0, 0.0,"~n~");//создание текстдрава
TextDrawLetterSize(RedScreenBox[playerid],0.1,50.0);
TextDrawUseBox(RedScreenBox[playerid], 1);
TextDrawBoxColor(RedScreenBox[playerid], 0xFF000040);
TextDrawShowForPlayer(playerid,RedScreenBox[playerid]);
SetPVarInt(playerid, "FrogCount", 1);
SetTimerEx("RedScreenAnim", 150, 0, "i", playerid);//запускаем анимку
}
теперь надо вызвать нашу анимацию, ищем public OnPlayerDeath(playerid, killerid, reason)
и в public OnPlayerSpawn(playerid) убираем ее
Code
TextDrawHideForPlayer(playerid,RedScreenBox[playerid]);
TextDrawDestroy(RedScreenBox[playerid]);
При выходе с сервера тоже надо удалить текстдрав, для этого в publicOnPlayerDisconnect(playerid,reason) вставляем:
Code
TextDrawHideForPlayer(playerid,RedScreenBox[playerid]);
TextDrawDestroy(RedScreenBox[playerid]);
Ну вот и все
также можно двигать текстдрав, менять размер etc.
Автор урока : frog163