forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   If и MilliSecs() (http://forum.boolean.name/showthread.php?t=2237)

c0mrad 30.12.2006 18:35

If и MilliSecs()
 
Может вопрос и глупый,но как сделать паузу на некоторое время?

impersonalis 30.12.2006 19:02

Re: If и MilliSecs()
 
сохранить текущее время.
проверять разность между текущим на данный момент и сохранённым.

jimon 30.12.2006 19:40

Re: If и MilliSecs()
 
Delay sometime :)

impersonalis 30.12.2006 19:59

Re: If и MilliSecs()
 
jimon читай сабж!

moka 01.01.2007 23:06

Re: If и MilliSecs()
 
Попробуй при нажатии пнопки которая вызывает паузу, делать снимок текущего экрана, затем его отображать, но уже сдесь:
Repeat
Сдесь
Until KeyHit(1)

Тоесть пока ты не нажмёшь Эск, у тебя дальше ничего не пойдёт, а просто будет прыгать в этом месте.

HolyDel 02.01.2007 02:10

Re: If и MilliSecs()
 
А че так пересложнять?
If keyhit(25) then pause=1
while pause
drawtext 400,300,"ПАУЗА, БЛИН",1,1
flip
if keyhit(25) then pause=0
wend

ето надо всунуть в главный цикл

moka 02.01.2007 06:31

Re: If и MilliSecs()
 
HolyDel "Переусложнять"? Ты о скрине? Да эт для того, что-бы после твоего флипа, небыл чёрным экран, а оставалась замершая картинка позади. "Усложнять"...

Diplomat wrote: Пост поправил. Выраженное в матерной форме признание аффтара в плохом настроении не готово стать достоянием общественности.

Diplomat 02.01.2007 13:17

Re: If и MilliSecs()
 
MoKa: Именно так, батенька, переусложнять. Причем по-адски.

HolyDel: Фон затирается. Нужно просто убрать цикл и Флип. А текст выводить сразу в ФронтБуффер с помощью Locate и Print.

Nord 02.01.2007 17:56

Re: If и MilliSecs()
 
HolyDel
А зачем переменную создавать? Например при игре вызываешь меню:

If KeyHit(1) Then
Repeat
;Код меню
Until KeyHit(1)
EndIf

Пока цикл крутится, остальной код не работает, чтобы вернуться в игру просто завершаешь цикл командой exit и всё.
Diplomat
Ээ...цикл это ведь и есть пауза, уберешь ты его, на экран выведется сообщение, а игра ведь будет продолжать работать.

Diplomat 02.01.2007 18:52

Re: If и MilliSecs()
 
Цитата:

Ээ...цикл это ведь и есть пауза, уберешь ты его, на экран выведется сообщение, а игра ведь будет продолжать работать.
Есть такое слово: WaitKey() ;)

Nord 02.01.2007 19:05

Re: If и MilliSecs()
 
Чисто для паузы WaitKey() - как вариант, но если мне нужно во время паузы вызывать меню - без цикла никак не обойтись, ведь так?

Diplomat 02.01.2007 19:52

Re: If и MilliSecs()
 
Тёплое- это тёплое, мягкое- это мягкое, пауза- это пауза, меню- это меню, а оффтоп- это оффтоп. Сливать различные понятия в одно уходя от темы вопроса- не есть лучшее решение. ;)

HolyDel 03.01.2007 01:30

Re: If и MilliSecs()
 
упс. точно дергается. тогда так:
Код:

If KeyHit(25)
pause=1
Text 400,300,"ПАУЗА, БЛИН",1,1
Flip
EndIf
While pause
If KeyHit(25) Then pause=0
If KeyDown(1) Then End
Wend


Diplomat 03.01.2007 12:44

Re: If и MilliSecs()
 
[blitz]If KeyHit(Key_Pause) Then
FlushKeys()
Locate 10,10
Print "PAUSE"
WaitKey()
FlushKeys()
FlushMouse()
End If[/blitz]

c0mrad 03.01.2007 13:20

Re: If и MilliSecs()
 
O_o
Господи....Че вы курите?
Пасибо,конечно,всем,но
imperу
+1
за понимание вопроса.


Часовой пояс GMT +4, время: 21:30.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot