added particles to projectile hits

This commit is contained in:
2025-12-08 05:54:40 +01:00
parent de70fb71e6
commit 0f216c6c56
3 changed files with 17 additions and 2 deletions

View File

@@ -28,6 +28,7 @@ public class Projectile extends Entity {
int monsterIndex = panel.collisionH.checkEntity(this, panel.monster); int monsterIndex = panel.collisionH.checkEntity(this, panel.monster);
if(monsterIndex != 999) { if(monsterIndex != 999) {
panel.player.damageMonster(monsterIndex, attack); panel.player.damageMonster(monsterIndex, attack);
generateParticle(user.projectile, panel.monster[monsterIndex]);
alive = false; alive = false;
} }
} }
@@ -35,6 +36,7 @@ public class Projectile extends Entity {
if(user.type == EntityType.MONSTER) { if(user.type == EntityType.MONSTER) {
if(!panel.player.invincible && panel.collisionH.checkPlayer(this)) { if(!panel.player.invincible && panel.collisionH.checkPlayer(this)) {
damagePlayer(attack); damagePlayer(attack);
generateParticle(user.projectile, panel.player);
alive = false; alive = false;
} }
} }

View File

@@ -3,6 +3,8 @@ package de.miaurizius.jgame2d.entity.projectile;
import de.miaurizius.jgame2d.core.GamePanel; import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.EntityType; import de.miaurizius.jgame2d.core.enums.EntityType;
import java.awt.*;
public class RockObj extends Projectile { public class RockObj extends Projectile {
GamePanel panel; GamePanel panel;
@@ -33,4 +35,17 @@ public class RockObj extends Projectile {
right2 = initEntitySprites(defaultSprite); right2 = initEntitySprites(defaultSprite);
} }
public Color getParticleColor() {
return new Color(40, 50,0);
}
public int getParticleSize() {
return 10; //in pixels
}
public int getParticleSpeed() {
return 1;
}
public int getParticleMaxLife() {
return 20;
}
} }

View File

@@ -1,8 +1,6 @@
package de.miaurizius.jgame2d.tile.interactive; package de.miaurizius.jgame2d.tile.interactive;
import de.miaurizius.jgame2d.core.GamePanel; import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.enums.Direction;
import de.miaurizius.jgame2d.core.enums.EntityType;
import de.miaurizius.jgame2d.entity.Entity; import de.miaurizius.jgame2d.entity.Entity;
import java.awt.*; import java.awt.*;