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

Тема: PayDay

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

    Статус
    Оффлайн
    Регистрация
    31.01.2014
    Адрес
    Россия
    Сообщений
    304
    Репутация:
    2 ±

    PayDay

    При PayDay выдается почему то ЗП 2 раза..
    Подскажите, почему выдается 2 раза?

    В Секундном таймере:
    PHP код:
    if(minute == && second == 0)
    {
        
    PayDay();

    PHP код:
    forward PayDay();
    public 
    PayDay()
    {
         foreach(
    Playeri)
        {
            new 
    string[100];
            
    pInfo[i][pExp] += 2;
            new 
    zp pInfo[i][pPayCheck];
            
    GivePlayerMoney(izp);
            
    format(stringsizeof string"Вы получили зарплату $%d"pInfo[i][pPayCheck]);
            
    SendClientMessage(i,0xFFFFFFAAstring);
            
    pInfo[i][pPayCheck] = 0;
            return 
    0;
        }
        return 
    0;


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

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    34
    Репутация:
    0 ±
    замени
    PHP код:
    if(minute == && second == 0
    на
    PHP код:
    if(minute == 00 && second == 00

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

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,181
    Репутация:
    790 ±
    Цитата Сообщение от #Johnson Посмотреть сообщение
    замени
    PHP код:
    if(minute == && second == 0
    на
    PHP код:
    if(minute == 00 && second == 00
    Не поможет, надо так:
    PHP код:
    if(minute == 000 && second == 000
    А если серьёзно: таймер успевает сработать за секунду дважды, поэтому и срабатывает дважды.

    P.S. Ты же в курсе, что твой PayDay выдаётся только одному игроку?

  4. #4
    Аватар для Skyline
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.01.2014
    Адрес
    Россия
    Сообщений
    304
    Репутация:
    2 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Не поможет, надо так:
    PHP код:
    if(minute == 000 && second == 000
    А если серьёзно: таймер успевает сработать за секунду дважды, поэтому и срабатывает дважды.

    P.S. Ты же в курсе, что твой PayDay выдаётся только одному игроку?
    Да нет, выдается всем, просто при срабатывании по 2 раза.

  5. #5
    Аватар для Geebrox
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.08.2015
    Адрес
    Ташкент
    Сообщений
    375
    Репутация:
    97 ±
    тогда ищи функцию PayDay, возможно ты еще где нибудь используешь его.

  6. #6
    Аватар для Nash_Brigers
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.03.2016
    Адрес
    Moscow
    Сообщений
    167
    Репутация:
    44 ±
    Цитата Сообщение от Skyline Посмотреть сообщение
    Да нет, выдается всем, просто при срабатывании по 2 раза.
    ziggi правильно сказал, что таймер успевает дважды сработать.. Таймеры в pawn далеко не идеальны и могут по-быстрее тикать, нежели часы на компе, типа чекнул время в 0.1 секунды и в 0.9..
    p.s. return в цикле лишний)
    Последний раз редактировалось Nash_Brigers; 15.04.2017 в 18:37.
    Член сообщества Green Square.

 

 

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

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

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

Ваши права

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