ну например так

Код:
this._y += 40;
{/* Шаблон пола */
this.createEmptyMovieClip ("p", 0);
p.createEmptyMovieClip ("p0", 0);
p.p0._alpha = 25;
p.p0.lineStyle (0, 0xCFCFCF);
p.p0.beginFill (0x9F9F9F, 100);
p.p0.moveTo (0, -20);
p.p0.lineTo (40, 0);
p.p0.lineTo (0, 20);
p.p0.lineTo (-40, 0);
p.p0.lineTo (0, -20);
p.p0.endFill ();
}
{/* Шаблон стены */
this.createEmptyMovieClip ("w", 2);
w.createEmptyMovieClip ("w0", 0);
w.w0._alpha = 50;
w.w0.lineStyle (0, 0x666666);
w.w0.beginFill (0xB6DADA, 100);
w.w0.moveTo (0, -40);
w.w0.lineTo (40, -20);
w.w0.lineTo (0, 0);
w.w0.lineTo (-40, -20);
w.w0.lineTo (0, -40);
w.w0.endFill ();
w.w0.beginFill (0x7CBEBD, 100);
w.w0.moveTo (0, 0);
w.w0.lineTo (40, -20);
w.w0.lineTo (40, 0);
w.w0.lineTo (0, 20);
w.w0.lineTo (0, 0);
w.w0.endFill ();
w.w0.beginFill (0x99CCCC, 100);
w.w0.moveTo (0, 0);
w.w0.lineTo (-40, -20);
w.w0.lineTo (-40, 0);
w.w0.lineTo (0, 20);
w.w0.lineTo (0, 0);
w.w0.endFill ();
w.w0.duplicateMovieClip("m",1500);
new Color (w.m).setTransform ({gb:-153, bb:-246});
w.m._alpha = 100
}
a = []; gb = []
for (i = 0; i < 10; i++){
a[i] = [];
for (j = 0; j < 10; j++) {
a[i][j] = 1;
if (!(i == 0 and j == 0)) {
p.p0.duplicateMovieClip ("p" + (i * 10 + j), i * 10 + j);
bb = random (20);
if ((i == 0 or j == 0 or i == 9 or j == 9 or bb < 3) and !(i == 1 and j == 1)) {
a[i][j] = 1;
w.w0.duplicateMovieClip ("w" + (i * 10 + j), j * 10 - i);
} else if (bb == 5){
p["p" + (i * 10 + j)]._alpha = 100;
a[i][j] = 2;
} else {
gb[gb.length] = [40 + i * 40 + j * 40,200 - i * 20 + j * 20]
a[i][j] = 0;
}
}
p["p" + (i * 10 + j)]._x = w["w" + (i * 10 + j)]._x = 40 + i * 40 + j * 40;
p["p" + (i * 10 + j)]._y = w["w" + (i * 10 + j)]._y = 200 - i * 20 + j * 20;
}
}
k = [];
k[37] = [-40, 20];
k[38] = [-40, -20];
k[39] = [40, -20];
k[40] = [40, 20];
w.m._x = 120;
w.m._y = 200;
w.m.swapDepths ((2 * w.m._y + w.m._x - 440) / 8 - (2 * w.m._y + w.m._x - 440) / 80 + (w.m._y - 200) / 20);
w.m.onKeyUp = function () {
if (k[Key.getCode ()] and a[(2 * (this._y + k[Key.getCode ()][1]) + (this._x + k[Key.getCode ()][0]) - 440) / 80 - ((this._y+ k[Key.getCode ()][1]) - 200) / 20][(2 * (this._y + k[Key.getCode ()][1]) + (this._x + k[Key.getCode ()][0]) - 440) / 80] != 1) {
this._x += k[Key.getCode ()][0];
this._y += k[Key.getCode ()][1];
if (a[(2 * this._y + this._x - 440) / 80 - (this._y - 200) / 20][(2 * this._y + this._x - 440) / 80] == 2) {
r = random (gb.length);
this._x = gb[r][0];
this._y = gb[r][1];
}
this.swapDepths ((2 * this._y + this._x - 440) / 8 - (2 * this._y + this._x - 440) / 80 + (this._y - 200) / 20);
}
}
Key.addListener (w.m);
по скольку данный код был адаптирован под конкурс swf<1024 байта, то сжимал все что только можно было