Показать сообщение отдельно
Старый 10.08.2010, 15:44   #10
LLI.T.A.L.K.E.R.
Мастер
 
Аватар для LLI.T.A.L.K.E.R.
 
Регистрация: 24.06.2009
Адрес: Набережные Челны
Сообщений: 930
Написано 292 полезных сообщений
(для 504 пользователей)
Ответ: Помогите оптимизировать ф-ю

Abs, abc...
Ну главное что при "когда можно хотя бы создать переменную abcI=abc(i) - чтобы не повторять вычисление abc(i)" - не нужно каждый раз (в каждой строчке) "возвращать абсолютное значение числа."

С чем я ещё не знаком или подзабыл - кончено же смотрю index.htm


К abc(i)\friz это тоже относится..
Просто ввёл переменную abcFriz=abc(i)\friz и всё!
Т.е. не вычислять каждый раз одно и тоже!

Часть доработки:
Function update_friz()

For i = 1 To num

abcI=abc(i)
abcFriz=abcI\friz

If abcI\times=0
	If (abcI\count%=1) Then 
	Animate abcFriz,1,0.2,1
	abcI\count%=0
	EndIf
		If (abcI\count=2) Then 
		Animate abcFriz,3,0.4,5
		pointer(abcFriz,user)
		abcI\count=0
		EndIf
	If (abcI\count=3) And (health>health_die) Then
	pointer(abcFriz,user)
	If AnimTime(abcFriz)>13 Then
	If health>health_die Animate abcFriz,1,0.4,6
	EndIf
	If abcI\times2%=5 Then create_shot_f(EntityX(abcI\frizbox),EntityY(abcI\frizbox)+1,EntityZ(abcI\frizbox)):EmitSound sound10,abcFriz:abcI\count_bull%=abcI\count_bull%-1:abcI\times2%=20
	abcI\times2%=abcI\times2%-1
	If abcI\count_bull=0 Then 
	If AnimTime(abcFriz)>7 Then
	EmitSound sound8,abcFriz
	Animate abcFriz,1,0.4,10
		abcI\count_bull%=8
	EndIf
EndIf
(Offline)
 
Ответить с цитированием