From 22c7d2cfa31d83eb81c5ab397e287c2212691e71 Mon Sep 17 00:00:00 2001 From: mattkae Date: Sun, 22 Jan 2023 18:59:38 -0500 Subject: WIP on Wind Fields, and updated resume --- themes/src/Windfield.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 themes/src/Windfield.cpp (limited to 'themes/src/Windfield.cpp') diff --git a/themes/src/Windfield.cpp b/themes/src/Windfield.cpp new file mode 100644 index 0000000..3a7563f --- /dev/null +++ b/themes/src/Windfield.cpp @@ -0,0 +1,28 @@ +#include "Windfield.hpp" + + +template +void WindField::load(f32 ttl, Vector2 origin) { + this->ttl = ttl; + this->origin = origin; + this->end = this->origin + Vector2(Width * CellDimension, Height * CellDimension); +} + +template +bool WindField::addVector(i32 x, i32 y, Vector2& v) { + field[x][y] = v; + return false; +} + +template +Vector2 WindField::getWindFactor(Vector2& v) { + if (v.x >= origin.x && v.x <= end.x + && v.y >= origin.y && v.y <= end.y) { + Vector2 positionInField = v - this->origin; + i32 cellX = static_cast(Width / positionInField.x); + i32 cellY = static_cast(Height / positionInField.y); + return field[cellX, cellY]; + } + + return Vector2(); +} -- cgit v1.2.1