#pragma once class WaterTank : public SolidObject { public: struct wtpos { float angle; float speed; vec3 location; vec3 size; int oncount; }; vector positions; WaterTank() { collision = true; }; void add_location_size(vec3 location, vec3 size){ positions.push_back({0.0f, 1.0f, location, size, 0}); models.push_back(translate(mat4(1.0), location)); models[models.size() - 1] = scale(models[models.size() - 1], size); } void movement(float time); float get_topbottom(size_t instance, bool) override; void trigger_action(size_t instance, int action) override; ssize_t is_inside(vec3, float) override; };