var hero:MovieClip = this.getChildByName("hero") as MovieClip; var stena:MovieClip = this.getChildByName("stena") as MovieClip; var boom:Boolean = false; stage.addEventListener(KeyboardEvent.KEY_DOWN, keydown) stage.addEventListener(KeyboardEvent.KEY_UP, keydup)
function keydup(event:KeyboardEvent){ switch(event.keyCode){ case 37:{ while(hero.hitTestObject(stena)){ hero.x = hero.x+1; } trace(37+" ←"); break; } case 38:{ while(hero.hitTestObject(stena)){ hero.y = hero.y+1; } trace(38+" ↑"); break; } case 39:{ while(hero.hitTestObject(stena)){ hero.x = hero.x-1; } trace(39+" →"); break; } case 40:{ while(hero.hitTestObject(stena)){ hero.y = hero.y-1; } trace(40+" ↓"); break; } } }
Персонаж , который будет выполнять действие-называем его hero Препятствие , через которое персонаж не пройдет называет stena Даем им аналогичные instanse name . Если все сделано правильно , то должно получится, как показано на схеме.Разумеется можно усложнять.