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

][-DESKTOP - убить за 60 секунд

ilich (ilich@winfo.org)

Спецвыпуск Xakep, номер #027, стр. 027-088-4


МОГУ СТРЕЛЯТЬ, МОГУ НЕ СТРЕЛЯТЬ...

Ты заметил, что наша дыра совместима лишь со стилизованной под кирпич поверхностью? Ну, или хотя бы с однородным элементарным фоном кирпичного цвета. Это значит ряд вещей. Во-первых, механизм появления дырок должен работать лишь только над красным строением.

Во-вторых, даже если наша дыра совсем чуть-чуть, каким-нибудь левым краешком снизу вылезет за пределы Кремля, произойдет вселенский коллапс, конкретный армагеддец всему и вся. Ибо не катит идея, что рисунок на стене может быть по площади больше, чем сама стена. Все физики мира оптом повесятся в тот миг, когда ты нарисуешь что-то подобное. А все джедаи придут к тебе учиться творить чудеса. Так что давай этого делать не будем.

Короче говоря, нам надо каким-нибудь способом отследить попадание мувика дырки на территорию стены. Есть много извращенных способов произвести данную операцию, начиная с простого создания маски в форме Кремля и заканчивая просчетом всех возможных вариантов попадания в Кремль и рисованием для каждого из этих вариантов своего отдельного мувика дырки. Но это не для нас, правда? Для нашей (твоей) флешки я выбрал, по-моему, наиболее простой способ. Это ограничение зоны стрельбы.

Суть метода заключается в том, что где бы ни летал твой меганавороченный прицел, какими бы скверными терминами ты ни говорил в сторону своего монитора, стрелять (т.е. кликом наносить какие-либо видимые повреждения рисунку) ты сможешь лишь тогда, когда нацелишься на Кремль. И то лишь только на часть Кремля - с некоторым отступом от краев его изображения.

Воплощается в житуху это на удивление очень легко. Нужно всего лишь сделать новую пимпу "B - Kremlin" соответствующих формы и размера, запихнуть ее в символ Кремля и мысленно приказать мувику делать все так, как надо, т.е. написать для нее:

on (rollOver) {

_root.what_destr=1;

_root.cross.gotoAndPlay(2);

}

on (rollOut) {

_root.what_destr=0;

_root.cross.gotoAndStop(1);

}

Помнишь переменную "_root.what_destr", от значения которой зависело, стал бы появляться новый клип дырки или нет? Так вот, короче говоря, это она и есть. При наведении на кнопку флаг равен единице, в обратном случае - нулю. Также при наведении мыши на кнопку, т.е. в зону поражения, и при перемещении за ее пределы наш прицел приобретает вид, содержательно показывающий тебе, можно палить по Кремлю или нет.

Назад на стр. 027-088-3  Содержание  Вперед на стр. 027-088-5