Форум геймеров и читеров 4cheaT
Реклама:

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

Закрытая тема.
  1. Cтатус:
    Оффлайн
    Регистрация:
    11.03.2014
    Сообщений:
    103
    Благодарностей:
    21
    Мнения:
    0
    Репутация:
    10 [+/-]
    Баланс:
    0
    Новое
    Сообщение с задержкой

    Реклама:
    Подскажите как можно реализовать выполнение отправки сообщения с задержкой и проверкой условия?

    Есть функция:
    Код:
    def message(msg, sec = 3, toggle = False):
    	if toggle:
    		g_windowsManager.battleWindow.call('battle.PlayerMessagesPanel.ShowMessage', ['0', msg, 'red'])
    Как её модифицировать, чтобы проверка условия toggle и отправка сообщения выполнялась через sec секунд после обращения к функции (причём чтобы весь остальной скрипт останавливать не пришлось)?
     
    Поддержи проект -поделись!
  2. Cтатус:
    Оффлайн
    Регистрация:
    30.06.2014
    Сообщений:
    26
    Благодарностей:
    138
    Мнения:
    -4
    Репутация:
    55 [+/-]
    Баланс:
    0
    Новое
    Код:
    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:
    ...
     
    Последний раз редактировалось parreto; 2015-03-21 в 13:40.
    Поддержи проект -поделись!
    Пользователь сказал cпасибо:
    e2028030 (2015-03-24)
  3. Cтатус:
    Оффлайн
    Регистрация:
    11.03.2014
    Сообщений:
    103
    Благодарностей:
    21
    Мнения:
    0
    Репутация:
    10 [+/-]
    Баланс:
    0
    Новое
    Реклама:
    Благодарствую, помогло. А как функция BigWorld.callback() работает? Она новый поток создает?
     
    Поддержи проект -поделись!
Закрытая тема.
Главная - Перед категорией ММОРПГ
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)