2014-11-17 11 views
0

Итак, я работал над своим окончательным проектом в течение семестра для своего класса Computer Systems, и нам было поручено создать игру с использованием Flash и ActionScript 3.0. Я в значительной степени выполнил все, но я столкнулся с чрезвычайно странным появлением Flash CS6, который был глупым. Я перемещаю MovieClip вверх и вниз в зависимости от выбранного индекса, однако изображение оставляет «остатки его следов» позади и также перемещается. Я изо всех сил старался найти ответ о том, почему это происходит, но я не знаю, как это называется, или как правильно объяснить это. Я исхожу из области, где нужно программировать графику, а не просто, перетаскивание.Что это, и почему это происходит?

Ниже приведены фотографии, как к тому, что я сталкивался, но сначала код, я использую:

function updateThemeScreen():void { 
    button_selection.y += (selectedPositions[selectedTheme] - button_selection.y)/2; 
} 
function attemptThemeChange(mxP:Number, myP:Number):void { 
    if(objectContains(theme_darkness, mxP, myP)) { 
     selectedTheme = 0; 
    } else if(objectContains(theme_halloween, mxP, myP)) { 
     selectedTheme = 1; 
    } 
} 

Image One - Normal and expected Image Two - Normal and expected Image Three - Not expected

Как вы можете видеть в окончательном изображении, он скопировал половину самой себя и оставил ее на последней кнопке, что странно, и не должно произойти ...

Ссылка на SWF с застежкой-молнией с требуемым AS 3 класса: Dude, RUN

+0

Пробовали ли вы играть/проблемы с воспроизведением в браузерах или просто в CS6-плеере? – Anonymous

+0

Только игрок CS6. – TheBrenny

+0

Попробуйте играть в swf в разных браузерах, если нет такого сбоя, вы можете просто игнорировать проблему среды редактирования, не так ли? – Anonymous

ответ

0

Так кажется, что я волшебно исправил эту проблему, спрятав кнопки и показывая их все в одном кадре. Я не знаю, что эта проблема или почему он это делает, но чтобы исправить это, вам просто нужно, чтобы скрыть и показать затрагиваемые компоненты - да, в одном кадре:

function hideShow(object:MovieClip):void { 
    object.visible = false; 
    object.visible = true; 
} 
Смежные вопросы