Animal food impl
This commit is contained in:
parent
28233c678b
commit
b01b15ee09
1 changed files with 37 additions and 4 deletions
|
|
@ -1,9 +1,42 @@
|
||||||
use bevy::prelude::*;
|
use bevy::prelude::*;
|
||||||
|
|
||||||
use crate::properties::Property;
|
|
||||||
|
|
||||||
#[derive(Component)]
|
#[derive(Component)]
|
||||||
pub struct Animal {
|
pub struct Animal {
|
||||||
//pub properties: Vec<тут крч пропертис>
|
food_capacity : u8,
|
||||||
pub properties: Vec<Box<dyn Property>>
|
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!();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue