Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 2 из 2

Тема: TextDrawBox

  1. #1
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,360
    Репутация:
    113 ±

    TextDrawBox

    Проблема с боксом, суть в чём:
    при заходе на сервак я поставил типо приветствие, и иногда бывает так что переменная Fon[0] не срабатывает,
    остальные все последующие всегда при любых обстоятельствах срабатывают, а вот самый первый не всегда.
    Вот часть кода:
      Открыть/закрыть

    PHP код:
    new Text:Fon[12];

    public 
    OnPlayerConnect(playerid)
    {
    SetPVarInt(playerid"Fon"0);
    SetTimerEx("FonGO"10000"d"playerid);
    }

    public 
    OnGameModeInit()
    {
        
    Fon[0] = TextDrawCreate(642.01.0"_");
        
    TextDrawLetterSize(Fon[0], 0.549.5);
        
    TextDrawUseBox(Fon[0], 1);
        
    TextDrawBoxColor(Fon[0], 0x000000AA);
        
    TextDrawTextSize(Fon[0], -2.00.0);

        
    Fon[1] = TextDrawCreate(190.000000175.000000"bla bla bla");
        
    TextDrawColor(Fon[1], 0xB514FFFF);
        
    TextDrawFont(Fon[1], 2);
        
    TextDrawLetterSize(Fon[1], 0.5700001.799999);
    тут дальше остальные текстдравы подобные Fon[1]
    }

    public 
    FonGO(playerid)
        {
            
    SetPVarInt(playerid"Fon"GetPVarInt(playerid"Fon") + 1);
            new 
    iteration GetPVarInt(playerid"Fon");
            switch(
    iteration)
            {
                case 
    1:
                {
                    
    printf("> (%s[%d]) совершает 1 проход.",PlayerInfo[playerid][pNames],playerid);
                    
    TextDrawShowForPlayer(playeridFon[0]);
                    
    printf("> (%s[%d]) совершает 2 проход.",PlayerInfo[playerid][pNames],playerid);
                }
                case 
    2:
                {
                    
    printf("> (%s[%d]) совершает 3 проход.",PlayerInfo[playerid][pNames],playerid);
                    
    TextDrawShowForPlayer(playeridFon[1]);
                }
    дальше уже не важно что идёт... принцип такой же


    Вот логи:

      Открыть/закрыть
    PHP код:
    [19:53:45] [joinSany_Sve has joined the server (1:95.153.134.87)
    [
    19:53:46] > (Sany_Sve[1]) совершает 1 проход.
    [
    19:53:46] > (Sany_Sve[1]) совершает 2 проход.
    [
    19:53:47] > (Sany_Sve[1]) совершает 3 проход

    То есть что получается что Fon[0] как то не корректно написан или просто не появляется, и фишка в чём, иногда такое бывает и если оно случилось то до рестарта так и будет у всех, по началу играют все и всё гуд, потом непонятно из за чего Fon[0] не читается, хотя проход происходит через него!
    Почему так?

  2. #2
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,360
    Репутация:
    113 ±
    Тему можно закрыть, проблема была в том что загружаемые текстдравы загружались через таймер который срабатывал только через 17 секунд, что получилось юзал текстдравы которые ещё не создались...

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •