SA-MP Forums Archive
TD Select - 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)
+---- Thread: TD Select (/showthread.php?tid=568742)



TD Select - SkyLoKi - 24.03.2015

Проблему решили..

http://forum.sa-mp.com/showthread.ph...39#post3412639


1. Создал я TextDraw для смены цвета

PHP Code:
for(new i=1sizeof(ChangeColor); i++)
    {
        
ChangeColor[i] = TextDrawCreate(XY"box");
        
TextDrawLetterSize(ChangeColor[i], 0.01.426062);
        
TextDrawTextSize(ChangeColor[i], 400.0);
        
TextDrawAlignment(ChangeColor[i], 1);
        
TextDrawColor(ChangeColor[i], -1);
        
TextDrawUseBox(ChangeColor[i], 1);
        
TextDrawBoxColor(ChangeColor[i], Colors[i]);
        
TextDrawSetOutline(ChangeColor[i], 0);
        
TextDrawBackgroundColor(ChangeColor[i], 255);
        
TextDrawFont(ChangeColor[i], 1);
        
TextDrawSetProportional(ChangeColor[i], 1);
        
TextDrawSetShadow(ChangeColor[i], 0);
        
TextDrawSetSelectable(ChangeColor[i], 1);
        
25;
        
count++;
        if(
count == 4
        {
            
30.0;
            
25.0;
            
count 1;
        }
    } 
2. Добавил TextDrawSetSelectable

3. Добавил показ этих TD для игроков


Таким образом я пока что вывожу TD, и их выводит нормально
PHP Code:
public OnPlayerKeyStateChange(playeridnewkeysoldkeys)
{
    if(
newkeys == KEY_SUBMISSION)
    {
        for(new 
isizeof(ChangeColor); i++)
        {
            
TextDrawShowForPlayer(playerid,ChangeColor[i]);
        }
        
SelectTextDraw(playerid0xFF4040AA) ;
    }
    return 
1;

А далее проблема!!

Паблик этот не срабатывает, print добавил и ни один не выводится
PHP Code:
public OnPlayerClickTextDraw(playeridText:clickedid)
{
    print(
"OnPlayerClickTextDraw 1");
    if (
_:clickedid == INVALID_TEXT_DRAW )
    {
        print(
"OnPlayerClickTextDraw 2");
        for(new 
isizeof(ChangeColor); i++)
        {
            
TextDrawHideForPlayer(playerid,ChangeColor[i]);
        }
    }
    for(new 
isizeof(ChangeColor); i++)
    {
        print(
"OnPlayerClickTextDraw 3");
        if(
clickedid == ChangeColor[i])
        {
            
SetPlayerColorplayeridColors] );
            
CancelSelectTextDrawplayerid ) ;
            for(new 
jsizeof(ChangeColor); j++)
            {
                
TextDrawHideForPlayer(playerid,ChangeColor[j]);
            }
        }
    }
    
    return 
;




Re: TD Select - Stepashka - 25.03.2015

А ты по ним кликаешь?


Re: TD Select - SkyLoKi - 25.03.2015

Кликал и не по ним тоже

Должно ведь было бы все убраться

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