Flash Zone Forum > onKeyDown èëè hitTest?
Ïîìîùü · Ïîèñê · Ïîëüçîâàòåëè · Êàëåíäàðü
Ïîëíàÿ âåðñèÿ ýòîé ñòðàíèöû: onKeyDown èëè hitTest?
Flash Zone Forum > Macromedia Flash > Îáùèå âîïðîñû
gad
Äåëàþ èãðó òèïà Ìàðèî
Ãåðîé äâèãàåòñÿ òàê:
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
switch (Key.getCode()) {
case Key.RIGHT :
_root.mc.gotoAndStop("right go");
_root.mc._x += moveSpeed;

}
Òî æå ñàìîå äëÿ äðóãèõ êëàâèø.

Êîãäà ãåðîé íàòûêàåòñÿ
íà ïðåïÿòñòâèå(íåâèäèìûé êëèï),
ïðè ïîìîùè hitTest íàïðàâëÿþ
âðåìåííóþ äèàãðàììó êëèïà íà êàäð
down ãäå ãåðîé ïàäàåò:
_root.mc.onEnterFrame = function() {
if (this.hitTest(_root.udar)){
_root.mc.gotoAndStop("down");
Ïðè ñòîëêíîâåíèè, ïðè íàæàòîé
êëàâèøå RIGHT êëèï ïðîäîëæàåò
äâèãàòñÿ âïðàâî,ïàäàåò òîëüêî êîãäà
îòïóñêàåø ýòó êëàâèøó.
Ïîäñêàæèòå ïîæàëóéñòà êàê ýòî èñïðàâèòü,
èëè ãäå ïîäîáíûå âîïðîñû îáñóæäàþòñÿ.
tiHo
íó à òàê ïîïðîáóé:

Êîä

_root.onEnterFrame = function()
{
    if (Key.isDown(Key.RIGHT))
    {
        if (_root.mc.hitTest(_root.stenka))
        {
            _root.mc.gotoAndStop("down");
        }
        else
        {
            _root.mc._x++;
        }
    }
};
gad
Öåëûé äåíü ïîòðàòèë,
÷òîáû ðàçîáðàòñÿ.
Íå ïîëó÷àåòñÿ.
Âîò êîä öåëèêîì, ìîæåò íå òóäà ÷òî òî ïðèëåïèë?
Êîä
_root.mc.gotoAndStop("right stop");
moveSpeed =2;
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
    switch (Key.getCode()) {
    case Key.RIGHT :
        _root.mc.gotoAndStop("right go");
        _root.mc._x += moveSpeed;
        
    }
    switch (Key.getCode()) {
    case Key.LEFT :
    _root.mc.gotoAndStop("left go");
    _root.mc._x -= moveSpeed;
    }
};
keyListener.onKeyUp = function() {
    switch (Key.getCode()) {
    case Key.RIGHT :
        _root.mc.gotoAndStop("right stop");
    }
        switch (Key.getCode()) {
    case Key.LEFT :
        _root.mc.gotoAndStop("left stop");
        
    }
};
Key.addListener(keyListener);


_root.mc.onEnterFrame = function() {
if (this.hitTest(_root.udar)){    
_root.mc.gotoAndStop("down");
}
}

 êîäå êîòðûé ïðåäëîæèë tiHo
mc áåæèò âïðàâî è ïàäàåò
ïîî÷åðåäíî ïðè íàæàòîé RIGHT.
tiHo
Êîä

_root.onEnterFrame = function()
{
    if (_root.mc.hitTest(_root.stenka))
    {
        _root.mc.gotoAndStop("down");
    }
    else if (Key.isDown(Key.RIGHT))
    {
        _root.mc._x++;
    }
};


íó à åñëè òàê smile.gif
gad
È òàê íå âûõîäèò.
Êàê è ñ äðóãèì êîäîì. Ïðè ñòîëêíîâåíèè åñòü ïåðåõîä
íà êàäð "down",òàì êëèï ãäå ãåðîé ïàäàåò.
Ïðè ïåðåõîäå ïðîèãðûâàåòñÿ òîëüêî ïåðâûé êàäð ýòîãî êëèïà
ïðè ýòîì îí ïðîäîëæàåò äâèãàòüñÿ âïðàâî ïîêà íàæàòà RIGHT.
Îòïóñêàþ (onKeyUp) RIGHT, êëèï íà÷èíàåò ïàäàòü.
tiHo
íó ñäåëàé òîãäà âìåñòî gotoAndStop("down"); gotoAndPlay("down");


ÿ õç ÷òî òàì ó òåáÿ íåðàáîòàåò.
Ðóññêàÿ âåðñèÿ IP.Board © 2001-2007 IPS, Inc.