por Kurorin » 16-01-2007 05:50
jeje wneo les voy a poner la clase completa para que me den luces, mas unas capturas en pantalla de lo que esta sucediendo con el codigo asi como esta ( las imagenes de la nave, del lase y la supuesta torreta ( cuadrado fuccia ) son imagenes beta, el artista aun no ha terminado de hacer la simagenes reales ) . . .
y weno obi es un lenguaje parecido a java, es C#. . . permite orientacion a objetos muy aprecida a la de java, y cuando hay un error da muchisimas luces sobre lo que pasa, porque compila, epro a la vez interpreta , pero es que este no es un error de codigo. . es algo raro . . . @-@
figense en el update que es lo improtante, lo demas no importa . . .
//Clase completica aki abajo
public class Mira : Sprite
{
public Mira()
{
}
protected Mira(Mira Mira)
: base(Mira)
{
}
public override Object Clone()
{
return new Mira(this);
}
public override void Update()
{
movimiento();
List<Sprite> collidedSprites = Game.GetCollidedSprites(this);
if (collidedSprites != null)
foreach (Sprite s in collidedSprites)
{
if (s is StarShip && AlfaProyect.StarShip.Position.Y > this.Position.Y )
{
disparar = true;
}
}
}
public void movimiento()
{
if (angulo <= 1f && devolver == false)
{
angulo += 0.01f;
Rotation = (float)angulo;
if (angulo >= 1)
devolver = true;
}
else
{
angulo -= 0.01f;
Rotation = (float)(angulo);
if (angulo <= 0f)
devolver = false;
}
}
public bool DISP
{
set
{
disparar = value;
}
get
{
return disparar;
}
}
static double angulo = 0;
static bool devolver = false;
static bool disparar = false;
}
y esto es lo que pasa en el juego :
aqui esta todo, la torreta esta en su pocicion inicial, junto con al mira laser que tmabein esta en su posicion inicial . . .
[img]http://img143.imageshack.us/img143/8084/imagen1sc5.jpg[/img]
aqui es hasta donde gira la torreta junto con la mira
[img]http://img143.imageshack.us/img143/5031/imagen2rr3.jpg[/img]
aqui se ve que la mir alaser coliciona con al nave pero nada ocurre
[img]http://img213.imageshack.us/img213/9132/imagen3yn9.jpg[/img]
y aqui esta la nave en al pocicion inicial del laser, y ahy la torreta si disapara, para que la torreta dispare disparar tiene que ser true, y si se fijan el en codigo disparar solo es true cuando el laser coliciona con la nave "starship"
[img]http://img213.imageshack.us/img213/5130/imagen4iy4.jpg[/img]
weno ahy esta todito, haber si a lo mejro me ayudan a descubrir que pasa. . . mientras pues el seguire dando hasta que haye una solucion
[img]http://img359.imageshack.us/img359/6088/dominar8tsvs9.gif[/img]