Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Пинок для нуба.хиттест-стратдраг против хиттест-"с клавиатуры" (http://www.flasher.ru/forum/showthread.php?t=84535)

O_Hara 02.09.2006 01:26

Пинок для нуба.хиттест-драг против хиттест-"с клавиатуры"
 
Доброго дня/вечера/ночи.
FlashMX
Просмотрел по поиску и без поиска всё что есть по хиттесту,юзал Хелп,Гугл и Яндекс-
-не помогло, поскольку нуб, наверное.Извините,если отнял у кого-то время.

имеется мувики: kn. , svet. и fasn.
Также имеются обьекты fash2, Al, fashdie и др.,но речь не о них.
Мувик kn. хиттестится с мувиками svet. и fasn.

Начал с Drag. Код вставлял в kn.
Всё прекрасно работает.

Код:

onClipEvent (load) {
        _root.kn._visible = true;
}
on (press) {
        _root.kn.startDrag ();
}
on (release, releaseOutside) {
        if (_root.kn.hitTest (_root.svet)) {
                _root.kn._visible = false;
                _root.fash2._visible = false;
                _root.Al._visible = true;
                _root.alarm=alarm+1;
        }
        if (_root.kn.hitTest (_root.fash)) {
                _root.fash._visible = false;
                _root.fashdie._visible = true;
                _root.kill=kill+1;
        }
_root.key.stopDrag ();
}


Затем решил двигать kn. с клавиатуры
В kn. вставил код для
on (keyPress "<Up>") {
on (keyPress "<Down>") {
on (keyPress "<Right>") {
on (keyPress "<Left>") {

а во фрейм :
Код:

if (kn.hitTest (svet)) {
        kn._visible = false;
        fash2._visible = false;
        Al._visible = true;
        alarm=alarm+1;
if (kn.hitTest(fash)) {
        fash._visible = false;
        fashdie._visible = true;
        kill=kill+1;
}

не пашет.Хотя вроде должно.
Спасибо, уважаемые
:victory:

O_Hara 04.09.2006 01:15

ну,значит - не судьба... сорри.

iNils 04.09.2006 01:21

Проверьте пути.

D12 04.09.2006 01:22

Код:

_root.kn._visible = true;
_root.onEnterFrame = function() {
        if (_root.kn.hitTest(_root.svet)) {
                _root.kn._visible = false;
                _root.fash2._visible = false;
                _root.Al._visible = true;
                _root.alarm = alarm+1;
        }
        if (_root.kn.hitTest(_root.fash)) {
                _root.fash._visible = false;
                _root.fashdie._visible = true;
                _root.kill = kill+1;
        }
};

Попробуй так =)

O_Hara 04.09.2006 10:56

2 D12
О, биг сенькс....знаете помогло...
не до конца,но вы подсказали путь...
счётчики kill и alarm зашкаливают...ну тут уж дальше я буду сам бороться.
Спасибо приогромнейщее...

wvxvw 04.09.2006 11:05

_root.kill=kill+1;
поменять на
_root.kill++;

Упс, не заметил, с алярмом аналогично. Переменные kill alarm не существуют в том месте, откуда ты к ним обращаешся, скорее всего счетчик будет выдавать что-то в духе 'undefined11111'

O_Hara 04.09.2006 11:12

D12 и wvxvw

Я был не прав...счётчики зашкаливают не потому что код неверен ,а потому что я балбес :) счётчики ведут себя так, как им сказали.
Код D12 работает на отлично! 1000 поклонов. :)

2wvxvw
да ,вы правы, спасибо большое. :)

O_Hara 04.09.2006 14:06

при _root.kill=kill+1;
счётчик считает каждую секунду примерно пребывания в состоянии хиттеста оттого и кажется что зашкаливает.

при _root.kill++; остаётся на нуле.

O_Hara 04.09.2006 14:42

просто хиттест видит мувик даже если он вроде как не визибл почему-то и шкалит на нём.
Решил просто заменить
_root.fash._visible = false;
на
unloadMovie("fash");

Neosano 04.09.2006 19:35

Цитата:

Сообщение от O_Hara
просто хиттест видит мувик даже если он вроде как не визибл почему-то и шкалит на нём.
Решил просто заменить
_root.fash._visible = false;
на
unloadMovie("fash");

ага, ага или
delete("fash");
или
removeMovieClip("fash");
или.. точнно не помню
_root.fash.removeMovieClip();


Часовой пояс GMT +4, время: 21:59.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.