Galera to tentando animar esses tiros do jogo abençoado de deus em nome de jesus amem,
mas mas não consegui podem de da uma mão, e se poder um pé tb ja q sou meio lezo nisso kkk
====clase dos tiros
public class Tiros extends Entity {
private int direçaoX;
private int direçaoY;
private double speedT=4;
public boolean right_Tiros, up_Tiros, left_Tiros,down_Tiros;
public int right_dir_Tiros=0, up_dir_Tiros=1, left_dir_Tiros=3,down_dir_Tiros=4;
public int dir_Tiros = down_dir_Tiros;
private int frames_Tiros =0, maxFrame_Tiros=7, index_Tiros =1,maxIndex_Tiros=2;
public boolean muved_Tiros = false;
private int mascaraXTiros=16 ,mascaraYTiros=16,mascaraWTiros=30, mascaraHTiros=30;
private BufferedImage[] right_imTiros;
private BufferedImage[] left_imTiros;
private BufferedImage[] up_imTiros;
private BufferedImage[] down_imTiros;
public Tiros(int x, int y, int width, int height, BufferedImage sprite, int dx, int dy) {
super(x, y, width, height, null);
this.direçaoX =dx;
this.direçaoY =dy;
this.right_imTiros = new BufferedImage[3];
this.left_imTiros = new BufferedImage[3];
this.up_imTiros = new BufferedImage[3];
this.down_imTiros= new BufferedImage[3];
for(int i=0; i<3;i++) {
this.right_imTiros [i]=Game.spriteSheet.getSprite(64*3+(i*64), 64*6, 64, 64);
this.left_imTiros [i]=Game.spriteSheet.getSprite(64*3+(i*64), 64*5, 64, 64);
this.up_imTiros [i]=Game.spriteSheet.getSprite(64*3+(i*64), 64*7, 64, 64);
this.down_imTiros [i]=Game.spriteSheet.getSprite(64*3+(i*64), 64*4, 64, 64);
}
}
public void tick(){
x+=this.direçaoX*speedT;
y+=this.direçaoY*speedT;
if (Game.player.atirando==true && muved_Tiros==true) {
frames_Tiros++;
if(frames_Tiros == maxFrame_Tiros) {
frames_Tiros=0;
index_Tiros ++;
if(index_Tiros >maxIndex_Tiros) {
index_Tiros=0;
}
}
}
}
public void render(Graphics g) {
if(dir_Tiros ==right_dir_Tiros) {
g.drawImage(right_imTiros[index_Tiros], this.getX()-Camera.x, this.getY()-Camera.y,null);
}
else if(dir_Tiros ==left_dir_Tiros) {
g.drawImage(left_imTiros[index_Tiros], this.getX()-Camera.x, this.getY()-Camera.y,null);
}
else if(dir_Tiros ==up_dir_Tiros) {
g.drawImage(up_imTiros[index_Tiros], this.getX()-Camera.x, this.getY()-Camera.y,null);
}
else if(dir_Tiros ==down_dir_Tiros) {
g.drawImage(down_imTiros[index_Tiros], this.getX()-Camera.x, this.getY()-Camera.y,null);
}
// g.setColor(Color.BLACK);
// g.fillOval(this.getX()-Camera.x, this.getY()-Camera.y, width, height);
}
}
===== Tick da clase Player
if(atirando && temArma && muniçao>0) {
atirando = false;
int dx =0;
int dy =0;
if(dir==this.right_dir) {
dx =1;
Tiros tiros = new Tiros(this.getX()+70, this.getY()+45,10,10,null,dx,dy);
tiros.muved_Tiros = true;
tiros.dir_Tiros=tiros.right_dir_Tiros;
Game.tiros.add(tiros);
muniçao-=1;
}
else if(dir==this.left_dir) {
dx =-1;
Tiros tiros = new Tiros(this.getX()-15, this.getY()+45,10,10,null,dx,dy);
tiros.muved_Tiros = true;
tiros.dir_Tiros=tiros.left_dir_Tiros;
Game.tiros.add(tiros);
muniçao-=1;
}
else if(dir==this.up_dir) {
dy =-1;
Tiros tiros = new Tiros(this.getX()+45, this.getY()+10,10,10,null,dx,dy);
tiros.muved_Tiros = true;
tiros.dir_Tiros=tiros.up_dir_Tiros;
Game.tiros.add(tiros);
muniçao-=1;
}
else if(dir==this.down_dir) {
dy =1;
Tiros tiros = new Tiros(this.getX()+10, this.getY()+40,10,10,null,dx,dy);
tiros.muved_Tiros = true;
tiros.dir_Tiros=tiros.down_dir_Tiros;
Game.tiros.add(tiros);
muniçao-=1;
}