aboutsummaryrefslogtreecommitdiffstats
path: root/src/shared/projectile.rs
blob: 16a064a24ffd838f5669a9dbda28da4e349115c0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use crate::shared::*;

#[derive(Bundle)]
pub struct ProjectileBundle {
    pub projectile: Projectile,
    pub position: ProjectilePosition,
    pub replicate: Replicate,
}

#[derive(Component, Message, Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct Projectile {
    pub target_player: PlayerId,
    pub source_player: PlayerId,
    pub damage: f32,
    pub instant: bool,
}

#[derive(Component, Message, Serialize, Deserialize, Clone, Debug, PartialEq)]
pub struct ProjectilePosition(pub Vec2);