Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #86, ФЕВРАЛЬ 2006 г.

Флеш-мастерская

Сидельников М.Ю.

Хакер, номер #086, стр. 086-028-4


[дополнение]

Сейчас вкратце объясню, как усложнить игру. Во-первых, нам нужны два текстовых поля (Dynamic Text). Одно для вывода счета - «text», и второе, показывающее оставшееся время, - «text2». Для этих полей создаем отдельный самый верхний слой. Во-вторых, если мы собираемся делать счетчик, то необходима инициализация. Поэтому первый кадр оставляем под инициализацию. То есть переход из конечного кадра осуществляется на второй кадр:

if(rezult==0)gotoAndPlay(2);

А в первом, ключевом кадре, размещаем следующий код:

time = new Date();

ht=time.getHours();

mt=time.getMinutes();

st=time.getSeconds();

init=st+(mt*60)+(ht*60*60);

end=init+180;//180 - количество секунд, отведенных под игру

number=0;// счет = 0

text=number;// выводим начальный счет

text2=180; // показываем отведенное время

Необходимо, чтобы при каждом попадании number увеличивался на единицу. То есть добавляем код на попадание по преподу:

on(press){

gotoAndPlay(20);

number=number+1;

}

И так со всеми кнопками.

В конце нужно дорисовать два кадра, соответствующие победе и поражению. И к каждому добавить stop();

А теперь, что касается проверки условия в 300-ом кадре:

time2 = new Date(); // создаем новый временной объект

ht2=time2.getHours();

mt2=time2.getMinutes();

st2=time2.getSeconds();

temp=st2+(mt2*60)+(ht2*60*60);

text2=end-temp;// оставшееся время

text=number; // покажем счет

r=random(10);

if((end-temp)<=0){ // при условии, что время вышло

if(number>=40)gotoAndPlay(301); // и счет больше положенного, переходим на кадр победы

if(number<40)gotoAndPlay(302);// или поражения

}

else{

if(r==0)gotoAndPlay(31);

/*…*/

}

Ну, теперь точно все. Пример игры я выложил на сайте www.geocities.com/cidelnikov

Назад на стр. 086-028-3  Содержание