Вторник, 02.12.2008, 16:34
 
 
Приветствую Вас Проезжий | RSS
[ Новые сообщения · Участники · Правила форума · Поиск! · RSS ]
Статистика Форума
Последние ответы Популярные темы Лучшие пользователи TOP 7
  • GTA 4 уже можно с... [GTA 4]
  • [FS] маленький до... [Скрипты]
  • Ele-Ment[Rus] [Сервера]
  • СС+ [Системы и Сети]
  • Top's 100 bt ... [Юмор]
  • Помощь новечкам п... [Вопросы и Проблемы]
  • .::: GTA-ReaL & V... [Сервера]
  • Вопрос - Ответ (Ответов: 959)
  • Обсуждение мода CityLi... (Ответов: 923)
  • Задавайте сюда ваши во... (Ответов: 919)
  • Помощь новечкам по скр... (Ответов: 608)
  • Обратный отщёт от 500 (Ответов: 512)
  • Пошли всех на хуй тут! (Ответов: 508)
  • Pen1 LS v1.4 by ONEhel... (Ответов: 386)
  • MiX (Сообщений: 2611)
  • AXE (Сообщений: 2258)
  • OKStyle™ (Сообщений: 1934)
  • fAkm4n (Сообщений: 1728)
  • RockStarGamer (Сообщений: 1608)
  • DarkByte (Сообщений: 1315)
  • MAK (Сообщений: 1293)
  • Страница 1 из 11
    Модератор форума: MAK 
    Форум о GTA Multiplayers. GTA SA-MP, MTA, VC-MP, IV-MP. » San Andreas MultiPlayer » Вопросы и Проблемы » Отсчет
    Отсчет
    APTEMДата: Воскресенье, 17.08.2008, 22:34 | Сообщение # 1
    Уверенный

    Группа: Продвинутые
    Сообщений: 199
    Город: :дорог
    Статус: status
    Проблема в вот такой скрипте если я пишу неправельный ид, то сервер перезагружатся. Как исправить?
    Code
    forward CountDive(playerid);
    new countdivecount;

    public CountDive(playerid)
    {
        countdivecount--;
        new string[256];
        for(new i = 0; i <= MAX_PLAYERS; i++)
        {
         if(IsPlayerConnected(i))
         {
          format(string, sizeof(string), "%d",countdivecount);
         }
         GameTextForPlayer(i, string, 1000, 6);
        }
    }

    [b]В OnPlayerCommandText[/b]

        if(strcmp(cmd, "/schet", true) == 0)
        {
         tmp = strtok(cmdtext, idx);
         if(!strlen(tmp))
         {
          SendClientMessage(playerid, COLOR_GRAD2, " пиши: /schet [1] [2] [3] [4]");
          return 1;
         }
         new para1;
         new para2;
         new para3;
         new para4;
         para1 = strval(tmp);
         tmp = strtok(cmdtext, idx);
         para2 = strval(tmp);
         tmp = strtok(cmdtext, idx);
         para3 = strval(tmp);
         tmp = strtok(cmdtext, idx);
         para4 = strval(tmp);
         if(countdivecount <= 0)
         {
          countdivecount = 30;
          cdive = SetTimerEx("CountDive", 1000, 1, "playerid");
          if (IsPlayerConnected(para1)) { CountDive(para1); }
          if ((IsPlayerConnected(para2)) && (para2>0)) { CountDive(para2); }
          if ((IsPlayerConnected(para3)) && (para3>0)) { CountDive(para3); }
          if ((IsPlayerConnected(para4)) && (para4>0)) { CountDive(para4); }
         }
         else
         {
          SendClientMessage(playerid, COLOR_GRAD1, "    отсчет уже существует");
         }
         return 1;
        }

    Все происходит как я понял из-за того, что паблик дается не верному игроку. Хотя стоит проверка если игрок присоединен, но почему-то она все равно не работает.

    [GM] Counter-Strike 1.6 - Купить

    Сообщение отредактировал start - Понедельник, 18.08.2008, 10:56
     
    Форум о GTA Multiplayers. GTA SA-MP, MTA, VC-MP, IV-MP. » San Andreas MultiPlayer » Вопросы и Проблемы » Отсчет
    Страница 1 из 11
    Поиск:

    Copyright SAMP-RUS© 2008