public Vector2 calculateWanderMissil(PursuitRocket missil, float secs) { float jitterTimeSlice = jitter * secs * 9; Vector2 tmp = new Vector2( RandomClamped() * jitterTimeSlice, RandomClamped() * jitterTimeSlice); wanderTarget += tmp; wanderTarget = Vector2.Normalize(wanderTarget) * radius; Vector2 target = missil.getPosition(); target += missil.getDirecao() * distance; target += wanderTarget; return(new BehaviorSeek(target).Calculate(missil, secs)); }
public override void poderEspecial() { // Máximo de Misseis que podem ser lançados 100 (diminui 1 a cada tiro) List <Nave> naves = recuperaComponentesNave(); Colisao cl = new Colisao(getGame()); int totalMisseisDestaNave = cl.recuperaComponentesMisseisTotal(); if (totalMisseisDestaNave < 100) { foreach (Nave nave in naves) { if (!(nave is attackshiperShip)) { PursuitRocket missil = new PursuitRocket(Game, this, getPosicaoTirosNave(), 0.0f, 5.0f, 300.0f, 350.0f, nave); missil.setBatch(getBatch()); getGame().Components.Add(missil); } } } }