nadyas
06.07.2004, 16:02
подскажите,
сложная ситуация, рисую игру, по плоскости едут объекты, которые будет ловить персонаж
есть первый фрейм и один мувик
в мувике actions написано:
onClipEvent(load)
{
_root.init();
}
onClipEvent(enterFrame)
{
_root.appear();
_root.move();
}
хочу чтоб заходя за пределы по x=400 например считалось количество объектов, которые попали за этот предел
вышеуказанные функции написаны в 1 фрейме
function init() {
.....
переменные
....
}
// появление объекта
function appear() {
attachMovie("myobject","myobject_"+lastmug,lastobj,{_x:80,_y:215});
.....
определяется dx,dy- приращение по осям для продвижения объекта
......
myarray.push({clip:"myobject_"+lastobj,ox:dx,oy:dy});
lastobj++;
}
// продвижение объекта
function move()
{
for (i=myarray.length-1;i>=0;i--)
{
dx=myarray[i].ox;
dy=myarray[i].oy;
myobj=_root[myarray[i].clip];
myobj._x+=dx;
myobj._y+=dy; // объект едет
if (myobj._x>480)
{
countlost++;
trace(countlost);
}
}
}
вывожу переменную countlost, которая по моему планированию должна отражать кол-во уехавших за пределы объектов
но получается такая фигня: как-только первый объект заехал за границу countlost выводится от 1 до.... бесконечности
что это такое?
как можно для объекта,пересекшего границу, один раз увеличить переменную?
сложная ситуация, рисую игру, по плоскости едут объекты, которые будет ловить персонаж
есть первый фрейм и один мувик
в мувике actions написано:
onClipEvent(load)
{
_root.init();
}
onClipEvent(enterFrame)
{
_root.appear();
_root.move();
}
хочу чтоб заходя за пределы по x=400 например считалось количество объектов, которые попали за этот предел
вышеуказанные функции написаны в 1 фрейме
function init() {
.....
переменные
....
}
// появление объекта
function appear() {
attachMovie("myobject","myobject_"+lastmug,lastobj,{_x:80,_y:215});
.....
определяется dx,dy- приращение по осям для продвижения объекта
......
myarray.push({clip:"myobject_"+lastobj,ox:dx,oy:dy});
lastobj++;
}
// продвижение объекта
function move()
{
for (i=myarray.length-1;i>=0;i--)
{
dx=myarray[i].ox;
dy=myarray[i].oy;
myobj=_root[myarray[i].clip];
myobj._x+=dx;
myobj._y+=dy; // объект едет
if (myobj._x>480)
{
countlost++;
trace(countlost);
}
}
}
вывожу переменную countlost, которая по моему планированию должна отражать кол-во уехавших за пределы объектов
но получается такая фигня: как-только первый объект заехал за границу countlost выводится от 1 до.... бесконечности
что это такое?
как можно для объекта,пересекшего границу, один раз увеличить переменную?