From de201dcf036c389ec0f42a9990bde0910f4cce55 Mon Sep 17 00:00:00 2001 From: DokaDoka Date: Tue, 26 Apr 2022 23:06:23 +1000 Subject: [PATCH] feat(zones): box streamlined rectangle polygon creation for the lazy, with rotation --- imports/zones/client.lua | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/imports/zones/client.lua b/imports/zones/client.lua index 3fe9e80..8f8f70c 100644 --- a/imports/zones/client.lua +++ b/imports/zones/client.lua @@ -75,6 +75,24 @@ return { data.centroid = data.polygon:centroid() data.debug = data.debug and debug + zones[data.id] = data + return data + end, + box = function(data) + data.id = #zones + 1 + data.thickness = data.size.z or 2 + data.polygon = glm.polygon.new({ + vec(data.size.x, data.size.y, 0), + vec(-data.size.x, data.size.y, 0), + vec(-data.size.x, -data.size.y, 0), + vec(data.size.x, -data.size.y, 0), + }) + data.rotation = quat(data.rotation, vec(0, 0, 1)) + data.polygon = data.rotation * data.polygon + data.polygon = data.polygon + data.centroid + data.remove = removeZone + data.debug = data.debug and debug + zones[data.id] = data return data end