Skip to content
Snippets Groups Projects
projectile.cpp 474 B
#include "objects/projectile.hpp"
#include "terrain.hpp"
#include "settings.hpp"



void projectile::simulateParabolic(float dt) {
	if (pos[2] < evaluate_terrain_height(pos[0], pos[1])) {
		pos = { 0, 0, -1 };
		v = { 0,0,0 };
	}else {
		pos += v * dt;
		v[2] -= 10 * dt;
		is_active = false;
	}
}

void projectile::simulateStraightLine(float dt) {
	if (pos[2] > evaluate_terrain_height(pos[0], pos[1])) {
		pos += v * dt;
		v[2] -= 0.1 * dt;
	}
	else is_active = false;
}