Tengo un proyecto, se trata de crear enemigos con una visión, (vista). Pero el problema, es que no consigo que se le asignen su vista a cada uno... Miren, solo tengo un MovieClip de la biblioteca y este esta se llama "per" y otro llamado "suelo_mc" para que caiga ahí, cada vez que hago clic.
Aca el código para que me entiendan:
Código ActionScript :
grav = 0.5; n = 0; l = 0; v_dist = 120; v_step = 100; v_ang = 45; v_angStep = 5; onMouseDown = function() { if (n>1000 or l>1000) n = l = 1; ++n; ++l; per_mc = attachMovie("per", "per_"+n, n+l, {_x:_xmouse, _y:_ymouse}); per_mc.yvel = 0; per_mc.maxyvel = 10; _root.createEmptyMovieClip("light", l+l+n); per_mc.onEnterFrame = function() { this.yvel += _root.grav; if (Key.isDown(Key.LEFT)) { this._x -= 5; } if (Key.isDown(Key.RIGHT)) { this._x += 5; } while (_root.suelo_mc.hitTest(this._x, (this._y+this.yvel)+20, true)) this._y -= _root.grav; while (_root.suelo_mc.hitTest(this._x+20, this._y, true)) this._x -= 5; while (_root.suelo_mc.hitTest(this._x-20, this._y, true)) this._x += 5; this._y += this.yvel; if (this.yvel>this.maxyvel) this.yvel = this.maxyvel; else if (this.yvel<-this.maxyvel) this.yvel = -this.maxyvel; // Vista dist_x = _root._xmouse-this._x; dist_y = _root._ymouse-this._y; angle = Math.atan2(dist_y, dist_x); _root.light.clear(); _root.light.lineStyle(1, 0xff0000); for (x=0; x<=_root.v_ang; x += (_root.v_ang/_root.v_angStep)) { _root.light.moveTo(this._x, this._y); l_ang = angle/(Math.PI/180)-(_root.v_ang/2)+x; l_ang = l_ang*(Math.PI/180); for (y=1; y<=_root.v_step; y++) { if (_root.suelo_mc.hitTest(this._x+(_root.v_dist/_root.v_step*y)*Math.cos(l_ang), this._y+(_root.v_dist/_root.v_step*y)*Math.sin(l_ang), true)) { break; } } _root.light.lineTo(this._x+(_root.v_dist/_root.v_step*y)*Math.cos(l_ang), this._y+(_root.v_dist/_root.v_step*y)*Math.sin(l_ang)); } // remover if (this._y > 480) { this.removeMovieClip(); _root.light.removeMovieClip(); } }; };
El asunto es que cuando yo hago clic, debería aparecer un enemigo con su propia visión. El problema es que todas las visiones, se le quedan al primer símbolo que aparece, que podría hacer para asignarle a cada uno su propia visión.
De igual forma cuando supere el límite del escenario, eliminte su visión, sin afectar las demás.
Me ayudaría mucho una respuesta. Un saludo!
Esta vez anexo una gracias de las veces que me han ayudado!