Units validate orders before receiving them

This commit is contained in:
devZoGok
2024-11-28 20:09:35 +02:00
parent 661844a643
commit 6ddbcd6e04
6 changed files with 63 additions and 45 deletions
+3 -3
View File
@@ -46,17 +46,17 @@ namespace battleship{
pursuingTarget = false;
}
void Vehicle::addOrder(Order order){
void Vehicle::receiveOrder(Order order, bool add){
if(!(order.type == Order::TYPE::EJECT || order.type == Order::TYPE::LAUNCH)){
Order::Target targ = order.targets[0];
Vector3 targPos = (targ.unit ? targ.unit->getPos() : targ.pos);
preparePathpoints(order, targPos);
if(!pathPoints.empty())
orders.push_back(order);
Unit::receiveOrder(order, add);
}
else
orders.push_back(order);
Unit::receiveOrder(order, add);
}
void Vehicle::turn(float angle) {