07:10
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
        
Подвиcание SA-MP (2)
Max 20.02.2017 21:57
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 1 из 11
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Timer or Convert
Timer or Convert
33nchДата: Понедельник, 15.10.2012, 21:50 | Сообщение # 1
Освоившийся
Группа: Продвинутые
Сообщений: 113
Награды: 1
Город: Elabuga
Репутация: -55
Замечания: 100%
Статус:
Доброго дня суток.
У меня серьёзно таки вопрос к опытным скриптёрам, а именно по части Таймеров и Convert'ов.

Проблема заключается, в том, что таймер уходит в отриц. числа, как сделать что бы при окончании таймера '0' таймер умирал.

Вроде, код построен правильно.

Вот код:

Code


  DMTime = 540;
  CCR = SetTimer("DMTimer", 999, 1);

public DMTimer()
{
     DMTime --;
     new tmp[256];
     TextDrawDestroy(Text:Time);
     format(tmp, sizeof tmp, "%s", TimeConvert(DMTime));

     Time = TextDrawCreate(300.0, 10.0, tmp);
     TextDrawUseBox(Text:Time, 1);
     TextDrawTextSize(Text:Time, 350.0, 30.0);
     TextDrawSetShadow(Text:Time, 0);
     TextDrawSetOutline(Text:Time, 1);
     TextDrawShowForAll(Text:Time);

     if (DMTime == 0)
     {
     for(new playerid = 0; playerid < MAX_PLAYERS; playerid ++ )
     {
        TogglePlayerControllable(playerid, 0);
     }
     }
     return 1;
}

TimeConvert(seconds) {
new tmp[256];
new minutes = floatround(seconds/60);
seconds -= minutes*60;
format(tmp, sizeof(tmp), "%d:%02d", minutes, seconds);
return tmp;
}

public Counter()
{
     Count --;
     new tmp[256];
     TextDrawHideForAll(Text:C);
     format(tmp, sizeof tmp, "Bomb will blow in : %s", TimeConvert(Count));
  C = TextDrawCreate(220.0, 310.0, tmp);
  TextDrawSetOutline(Text:C, 1);
  TextDrawShowForAll(Text:C);
  if(Defused)
  {
         GameTextForAll("~w~ ВОТ В ЭТОМ ДЕЙСТВИИ ТАЙМЕР ДОЛЖЕН УДАЛЯТЬСЯ!", 3000, 5);
         TextDrawHideForAll(Text:C);
         return 1;
   }
  else if (Count < 0.1)
     {
         TextDrawHideForAll(Text:C);
  }
  return 1;
}



SLICKДата: Понедельник, 15.10.2012, 22:23 | Сообщение # 2
Местный
Группа: I'm V.I.P.
Сообщений: 603
Награды: 9
Город: Unknown
Репутация: 388
Замечания: 0%
Статус:
if(DMTime == 0) {
KillTimer(CCR);
}



My works:
[GM] RTDM
Advertising system
Fuel System
Artefacts Search (Динамическая сис-ма артефактов)
33nchДата: Понедельник, 15.10.2012, 22:26 | Сообщение # 3
Освоившийся
Группа: Продвинутые
Сообщений: 113
Награды: 1
Город: Elabuga
Репутация: -55
Замечания: 100%
Статус:
SLICK, да, правильно. Но, только KillTimer(DMTimer);

Мне нужно сделать, что б в минус цифры не уходили.
А то таймер, на 0 не останавливается, а уходит в минус ( - ).



SLICKДата: Понедельник, 15.10.2012, 22:29 | Сообщение # 4
Местный
Группа: I'm V.I.P.
Сообщений: 603
Награды: 9
Город: Unknown
Репутация: 388
Замечания: 0%
Статус:
Нет, правильно KillTimer(CCR);
И я тебе написал что нужно его убивать когда переменная твоя имеет значение "0".



My works:
[GM] RTDM
Advertising system
Fuel System
Artefacts Search (Динамическая сис-ма артефактов)


Сообщение отредактировал SLICK - Понедельник, 15.10.2012, 22:30
aptypДата: Понедельник, 15.10.2012, 22:30 | Сообщение # 5
Продаюсь дешего
Группа: Продвинутые
Сообщений: 141
Награды: 2
Город: Green-X
Репутация: 405
Замечания: 20%
Статус:
Code
DMTime = 540;  
   CCR = SetTimer("DMTimer", 999, 1);  

public DMTimer()  
{  
      DMTime --;  
      new tmp[256];  
      TextDrawDestroy(Text:Time);  
      format(tmp, sizeof tmp, "%s", TimeConvert(DMTime));  

      Time = TextDrawCreate(300.0, 10.0, tmp);  
      TextDrawUseBox(Text:Time, 1);  
      TextDrawTextSize(Text:Time, 350.0, 30.0);  
      TextDrawSetShadow(Text:Time, 0);  
      TextDrawSetOutline(Text:Time, 1);  
      TextDrawShowForAll(Text:Time);  

      if (DMTime == 0)  
      {  
      for(new playerid = 0; playerid < MAX_PLAYERS; playerid ++ )  
      {  
         TogglePlayerControllable(playerid, 0);  
      }  
KillTimer(CCR);  
      }  
      return 1;  
}  

TimeConvert(seconds) {  
new tmp[256];  
new minutes = floatround(seconds/60);  
seconds -= minutes*60;  
format(tmp, sizeof(tmp), "%d:%02d", minutes, seconds);  
return tmp;  
}  

public Counter()  
{  
      Count --;  
      new tmp[256];  
      TextDrawHideForAll(Text:C);  
      format(tmp, sizeof tmp, "Bomb will blow in : %s", TimeConvert(Count));  
   C = TextDrawCreate(220.0, 310.0, tmp);  
   TextDrawSetOutline(Text:C, 1);  
   TextDrawShowForAll(Text:C);  
   if(Defused)  
   {  
          GameTextForAll("~w~ ВОТ В ЭТОМ ДЕЙСТВИИ ТАЙМЕР ДОЛЖЕН УДАЛЯТЬСЯ!", 3000, 5);  
          TextDrawHideForAll(Text:C);  
          return 1;  
    }  
   else if (Count < 0.1)  
      {  
          TextDrawHideForAll(Text:C);  
   }  
   return 1;  
}

33nchДата: Понедельник, 15.10.2012, 22:43 | Сообщение # 6
Освоившийся
Группа: Продвинутые
Сообщений: 113
Награды: 1
Город: Elabuga
Репутация: -55
Замечания: 100%
Статус:
SLICK,
Как таймер достигает 0.

Он всё-равно продолжает уходить в минус

Добавлено (15.10.2012, 22:43)
---------------------------------------------
aptyp, да, я так и вставил))


SLICKДата: Вторник, 16.10.2012, 01:21 | Сообщение # 7
Местный
Группа: I'm V.I.P.
Сообщений: 603
Награды: 9
Город: Unknown
Репутация: 388
Замечания: 0%
Статус:
Значит что-то где-то ты намудрил в коде..


My works:
[GM] RTDM
Advertising system
Fuel System
Artefacts Search (Динамическая сис-ма артефактов)
Ghost-XДата: Вторник, 16.10.2012, 08:13 | Сообщение # 8
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
попробуй так: http://pastebin.com/LNuJJxfU


Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
33nchДата: Вторник, 16.10.2012, 17:08 | Сообщение # 9
Освоившийся
Группа: Продвинутые
Сообщений: 113
Награды: 1
Город: Elabuga
Репутация: -55
Замечания: 100%
Статус:
Ghost-X, во, спасибо.

Заработало ok

Тему можно закрыть.



Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Timer or Convert
Страница 1 из 11
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM