SA-MP Forums Archive
[Tutorial] Создание TextDraw статистики, LvL и Respect - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+----- Forum: Релизы/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=66)
+----- Thread: [Tutorial] Создание TextDraw статистики, LvL и Respect (/showthread.php?tid=237809)



Создание TextDraw статистики, LvL и Respect - Alex_Corleone - 10.03.2011

Здравствуйте я вам покажу как зделать вот такой текстдрав

В начало ко всем new
PHP Code:
new Text:lvlexp[MAX_PLAYERS]; 
в OnPlayerConnect
PHP Code:
    lvlexp[playerid] = TextDrawCreate(10.000000,430.000000,"_");
    
TextDrawAlignment(lvlexp[playerid],0);
    
TextDrawBackgroundColor(lvlexp[playerid],0x000000ff);
    
TextDrawFont(lvlexp[playerid],1);
    
TextDrawLetterSize(lvlexp[playerid],0.500000,1.5);
    
TextDrawColor(lvlexp[playerid],0xffffffff);
    
TextDrawSetOutline(lvlexp[playerid],1);
    
TextDrawSetProportional(lvlexp[playerid],1);
    
TextDrawSetShadow(lvlexp[playerid],1);
    
TextDrawShowForPlayer(playeridlvlexp[playerid]); 
в OnPlayerDisconnect
PHP Code:
TextDrawDestroy(lvlexp[playerid]); 
в OtherTimer
PHP Code:
            new exp PlayerInfo[i][pExp];
            new 
nxtlevel PlayerInfo[i][pLevel]+1;
            new 
expamount nxtlevel*levelexp;
            
format(string,sizeof(string),"LvL:~y~%d ~w~Exp:~y~%d~w~/~y~%d",PlayerInfo[i][pLevel],exp,expamount);
            
TextDrawSetString(lvlexp[i], string); 
вот и все
автор я.

Урок По созданию Паблик OtherTimer

ко всем forwards
PHP Code:
forward OtherTimer(); 
ко всем new
PHP Code:
new othtimer
сам паблик
PHP Code:
public OtherTimer()
{
    for(new 
0MAX_PLAYERSi++)
    {
        if(
IsPlayerConnected(i))
        {
            new 
string[256];
            new 
exp PlayerInfo[i][pExp];
            new 
nxtlevel PlayerInfo[i][pLevel]+1;
            new 
expamount nxtlevel*levelexp;
            
format(string,sizeof(string),"LvL:~b~%d ~w~Exp:~b~%d~w~/~b~%d",PlayerInfo[i][pLevel],exp,expamount);
            
TextDrawSetString(lvlexp[i], string);
        }
    }

в public OnGameModeInit()
PHP Code:
othtimer SetTimer("OtherTimer"10001); 
в public GameModeExitFunc()
PHP Code:
KillTimer(othtimer); 



Re: Создание TextDraw статистики, LvL и Respect - Stepashka - 10.03.2011

Никогда не делайте изменение таких текстдро по таймеру.
Их достаточно менять только при изменении выводимых данных.


Re: Создание TextDraw статистики, LvL и Respect - White_116 - 10.03.2011

Немного про оптимизацию - лучше только при изменение очков обновлять тексдрав, экономия трафика и исчезание ненужных операций каждую секунду.


Re: Создание TextDraw статистики, LvL и Respect - Romanius - 10.03.2011

ГФ на говнокод как и этот код (с)


Re: Создание TextDraw статистики, LvL и Respect - Stepashka - 10.03.2011

Quote:
Originally Posted by Romanius
View Post
ГФ на говнокод как и этот код (с)
просто один сайт залочен, вот сейчас сюда и попрет подобный контингент посты набивать с говнокодами.


Re: Создание TextDraw статистики, LvL и Respect - Alex_Jefferson - 04.04.2011

Спасибо хорошая работа