Вопрос Сообщение с задержкой

Статус
В этой теме нельзя размещать новые ответы.
Регистрация
11 Мар 2014
Сообщения
91
Репутация
0
Спасибо
0
Монет
0
Подскажите как можно реализовать выполнение отправки сообщения с задержкой и проверкой условия?

Есть функция:
Код:
def message(msg, sec = 3, toggle = False):
	if toggle:
		g_windowsManager.battleWindow.call('battle.PlayerMessagesPanel.ShowMessage', ['0', msg, 'red'])

Как её модифицировать, чтобы проверка условия toggle и отправка сообщения выполнялась через sec секунд после обращения к функции (причём чтобы весь остальной скрипт останавливать не пришлось)?
 
Код:
import BigWorld
def message(msg, sec = 3, toggle = False):
	t=BigWorld.time()
	def sleep():
		if BigWorld.time()-t>sec:
			if toggle:
				g_windowsManager.battleWindow.call('battle.PlayerMessagesPanel.ShowMessage', ['0', msg, 'red'])
		else:
			BigWorld.callback(0.1, sleep)
	sleep()
Перед обращением к функции просто запиши в переменную время. Можно поменять местами
If BigWorld,time()-t<sec:
BigWorld.callback(0.1, sleep)
else:
...
 
Последнее редактирование:
Благодарствую, помогло. А как функция BigWorld.callback() работает? Она новый поток создает?
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху