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

Реклама


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

    Статус
    Оффлайн
    Регистрация
    29.05.2016
    Сообщений
    144
    Репутация:
    11 ±

    Не исчезаю TextDraw`ы

    Hello, начал заполнять мод TD и заметил что когда я 1 тестирую сервер TD нормально скрываются по таймеру, а когда сидим с другом у 1 скрывается а у другого остаются.
    Вот к примеру этот код вызывается когда игроку выдаются деньги
    PHP код:
    f("+%d$"money);
    PlayerTextDrawSetString(playeridMoneyPlus[playerid], string);
    PlayerTextDrawShow(playeridMoneyPlus[playerid]);
    PlayerPlaySound(playerid11370.00.00.0);
    SetTimer("HideTextDrawPlusMoney",50000); 
    Вот код который вызывается
    PHP код:
    ppublic HideTextDrawPlusMoney(playerid) return PlayerTextDrawHide(playeridMoneyPlus[playerid]); 
    Последний раз редактировалось HarrWe; 29.07.2016 в 13:14.

  2. #2
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,034
    Репутация:
    702 ±
    Ты вызываешь функцию HideTextDrawPlusMoney лишь для игрока с id 0.
    PHP код:
    ppublic HideTextDrawPlusMoney()
    {
    #if defined _FOREACH_LOCAL_VERSION
        
    foreach (new playerid Player) {
    #else
        
    for (new playerid GetPlayerPoolSize(); playerid != -1playerid--) {
            if (!
    IsPlayerConnected(playerid) || IsPlayerNPC(playerid)) {
                continue;
            }
    #endif
            
    PlayerTextDrawHide(playeridMoneyPlus[playerid]);
        }


  3. Пользователь сказал cпасибо:
    HarrWe (29.07.2016)
  4. #3
    Аватар для DeimoS
    Модератор?

    Статус
    Онлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    В таймере нужно передать playerid как параметр, иначе в HideTextDrawPlusMoney всегда передаётся 0
    PHP код:
    SetTimer("HideTextDrawPlusMoney",50000); 
    на
    PHP код:
    SetTimerEx("HideTextDrawPlusMoney",50000"i"playerid); 
    - - - Добавлено - - -

    Цитата Сообщение от ziggi Посмотреть сообщение
    Ты вызываешь функцию HideTextDrawPlusMoney лишь для игрока с id 0.
    PHP код:
    ppublic HideTextDrawPlusMoney()
    {
    #if defined _FOREACH_LOCAL_VERSION
        
    foreach (new playerid Player) {
    #else
        
    for (new playerid GetPlayerPoolSize(); playerid != -1playerid--) {
            if (!
    IsPlayerConnected(playerid) || IsPlayerNPC(playerid)) {
                continue;
            }
    #endif
            
    PlayerTextDrawHide(playeridMoneyPlus[playerid]);
        }

    Там же индивидуальный текстдрав показывается в момент, когда игрок игрок получает деньги. Зачем у всех скрывать?
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. 2 пользователя(ей) сказали cпасибо:
    HarrWe (29.07.2016)ziggi (29.07.2016)
  6. #4
    Аватар для HarrWe
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.05.2016
    Сообщений
    144
    Репутация:
    11 ±
    Всем пасябки!Темку можете закрывать)

 

 

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

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

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

Ваши права

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