forked from 2ndbeam/evolution-rs
42 lines
No EOL
721 B
Rust
42 lines
No EOL
721 B
Rust
use bevy::prelude::*;
|
|
|
|
#[derive(Component)]
|
|
pub struct Animal {
|
|
food_capacity : u8,
|
|
food : u8
|
|
}
|
|
|
|
impl Animal
|
|
{
|
|
pub fn get_food_capacity(&self) -> u8 {
|
|
self.food_capacity
|
|
}
|
|
|
|
pub fn get_food(&self) -> u8 {
|
|
self.food
|
|
}
|
|
|
|
pub fn feed(&mut self,amount : u8) -> u8 {
|
|
if self.food == self.food_capacity {
|
|
return self.food
|
|
}
|
|
|
|
if self.food + amount >= self.food_capacity {
|
|
self.food = self.food_capacity;
|
|
return self.food
|
|
}
|
|
|
|
self.food += amount;
|
|
self.food
|
|
}
|
|
|
|
pub fn reset(&mut self) {
|
|
self.food = 0;
|
|
}
|
|
|
|
// WIP
|
|
pub fn compute_capacity(&mut self)
|
|
{
|
|
todo!();
|
|
}
|
|
} |