Page 1 of 1
					
				Временный интервал
				Posted: 29.03.2011 16:21
				by Venom
				Подскажите плс, как указать временный интервал ?
Т.е. если на протяжении определенного времени не произошло событие, то движемся по скрипту/процедуре далее.
К примеру.
Code: Select all
[временный интервал] if (InJournalBetweenTimes('System: Вы нанесли', FBegin, Now) <> -1) then begin
....
 
			 
			
					
				
				Posted: 29.03.2011 16:28
				by Vizit0r
				я нудный. поиск уже не интересен?
поиск по InJournalBetweenTimes спасет тебя.
			 
			
					
				
				Posted: 04.04.2011 20:50
				by Venom
				и все же..
Code: Select all
if (InJournalBetweenTimes('System: Вы нанесли', FBegin, Now) <> -1) then begin
ignore(finditem); <<- вот здесь нужно выполнить игнор на протяжении 10 секунд и снова повторять то, что идет до игнора.
спс.
 
			 
			
					
				
				Posted: 04.04.2011 21:44
				by Vizit0r
				помедленнее
			 
			
					
				
				Posted: 04.04.2011 22:27
				by Venom
				Vizit0r wrote:помедленнее
Атакую цель.
Если не нанес урон, заношу в игнор на определенное время, по прошествии которого его(игнор) обнуляю.
В то время, пока длится игнор недоступной цели - ищу следующую и пытаюсь атаковать.
 
			 
			
					
				
				Posted: 05.04.2011 7:33
				by Fenix
				Venom wrote:Атакую цель.
Если не нанес урон, заношу в игнор на определенное время, по прошествии которого его(игнор) обнуляю.
В то время, пока длится игнор недоступной цели - ищу следующую и пытаюсь атаковать.
Крутая задумка. Если бы я такое в делфаке писал, то полюбасу использовал бы виндовые таймеры.
Но для тебя простейший способ - создать глобальный динамический массив из структур с ID объекта и временем добавления в игнор. Затем установить обработчик одного из двух таймеров, заставив проверять в цикле не вышло ли время игнора какой либо записи. Если время вышло - снимаем игнор, а запись удаляем из массива (не забываем сдвигать записи по старшим адресам и высвобождать не нужную запись массива). Если хорошо кодишь и не боишься работать с указателями - можно воспользоваться односвязным/двусвязным динамическим списком, т.к. в нем не будет необходимости передвигать все записи по старшим индексам.
 
			 
			
					
				
				Posted: 05.04.2011 8:54
				by Vizit0r
				Fenix -  в ПС нет указателей 
впрочем, тут и без указателей будет нескучно.
если б те одно-двухсвязные списки в ПС хоть кому-то нужны были бы, то давно бы сделал экспорт функциями. А так если 1-2 маньякам и надо было - давно уже через DLL сделали.