From 261edbdac9c13b7a00a6af278272ee1b448de150 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20Br=C3=BCckner?= Date: Fri, 11 Sep 2020 15:13:59 +0200 Subject: [PATCH] Fix canvas nodes for invalid element names --- Sources/armory/logicnode/CanvasGetLocationNode.hx | 7 +++++-- Sources/armory/logicnode/CanvasGetPBNode.hx | 3 +++ Sources/armory/logicnode/CanvasGetRotationNode.hx | 4 +++- Sources/armory/logicnode/CanvasGetScaleNode.hx | 9 ++++++--- Sources/armory/logicnode/CanvasSetAssetNode.hx | 3 ++- Sources/armory/logicnode/CanvasSetLocationNode.hx | 7 +++++-- Sources/armory/logicnode/CanvasSetPBNode.hx | 8 +++++--- Sources/armory/logicnode/CanvasSetRotationNode.hx | 3 ++- Sources/armory/logicnode/CanvasSetScaleNode.hx | 7 +++++-- Sources/armory/logicnode/CanvasSetTextColorNode.hx | 3 ++- Sources/armory/logicnode/CanvasSetTextNode.hx | 3 ++- 11 files changed, 40 insertions(+), 17 deletions(-) diff --git a/Sources/armory/logicnode/CanvasGetLocationNode.hx b/Sources/armory/logicnode/CanvasGetLocationNode.hx index 16317842..58881cbb 100644 --- a/Sources/armory/logicnode/CanvasGetLocationNode.hx +++ b/Sources/armory/logicnode/CanvasGetLocationNode.hx @@ -19,8 +19,11 @@ class CanvasGetLocationNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - x = canvas.getElement(element).x; - y = canvas.getElement(element).y; + var e = canvas.getElement(element); + if (e == null) return; + + x = e.x; + y = e.y; runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasGetPBNode.hx b/Sources/armory/logicnode/CanvasGetPBNode.hx index 823bb756..896b1373 100644 --- a/Sources/armory/logicnode/CanvasGetPBNode.hx +++ b/Sources/armory/logicnode/CanvasGetPBNode.hx @@ -19,6 +19,9 @@ class CanvasGetPBNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); + var e = canvas.getElement(element); + if (e == null) return; + at = canvas.getElement(element).progress_at; max = canvas.getElement(element).progress_total; runOutput(0); diff --git a/Sources/armory/logicnode/CanvasGetRotationNode.hx b/Sources/armory/logicnode/CanvasGetRotationNode.hx index 6a4131cb..aebc488d 100644 --- a/Sources/armory/logicnode/CanvasGetRotationNode.hx +++ b/Sources/armory/logicnode/CanvasGetRotationNode.hx @@ -18,8 +18,10 @@ class CanvasGetRotationNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - rad = canvas.getElement(element).rotation; + var e = canvas.getElement(element); + if (e == null) return; + rad = e.rotation; runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasGetScaleNode.hx b/Sources/armory/logicnode/CanvasGetScaleNode.hx index a99b2693..70685757 100644 --- a/Sources/armory/logicnode/CanvasGetScaleNode.hx +++ b/Sources/armory/logicnode/CanvasGetScaleNode.hx @@ -19,8 +19,11 @@ class CanvasGetScaleNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - height = canvas.getElement(element).height; - width = canvas.getElement(element).width; + var e = canvas.getElement(element); + if (e == null) return; + + height = e.height; + width = e.width; runOutput(0); } @@ -39,4 +42,4 @@ class CanvasGetScaleNode extends LogicNode { else return 0; } #end -} \ No newline at end of file +} diff --git a/Sources/armory/logicnode/CanvasSetAssetNode.hx b/Sources/armory/logicnode/CanvasSetAssetNode.hx index 0c46215a..ae7ff479 100644 --- a/Sources/armory/logicnode/CanvasSetAssetNode.hx +++ b/Sources/armory/logicnode/CanvasSetAssetNode.hx @@ -18,7 +18,8 @@ class CanvasSetAssetNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).asset = asset; + var e = canvas.getElement(element); + if (e != null) e.asset = asset; runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetLocationNode.hx b/Sources/armory/logicnode/CanvasSetLocationNode.hx index afe73972..19d82ddc 100644 --- a/Sources/armory/logicnode/CanvasSetLocationNode.hx +++ b/Sources/armory/logicnode/CanvasSetLocationNode.hx @@ -19,8 +19,11 @@ class CanvasSetLocationNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).x = newX; - canvas.getElement(element).y = newY; + var e = canvas.getElement(element); + if (e != null) { + e.x = newX; + e.y = newY; + } runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetPBNode.hx b/Sources/armory/logicnode/CanvasSetPBNode.hx index 73e3f67d..9cd74e93 100644 --- a/Sources/armory/logicnode/CanvasSetPBNode.hx +++ b/Sources/armory/logicnode/CanvasSetPBNode.hx @@ -19,9 +19,11 @@ class CanvasSetPBNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).progress_at = newAt; - canvas.getElement(element).progress_total = newMax; - + var e = canvas.getElement(element); + if (e != null) { + e.progress_at = newAt; + e.progress_total = newMax; + } runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetRotationNode.hx b/Sources/armory/logicnode/CanvasSetRotationNode.hx index 32decf53..8c91aa98 100644 --- a/Sources/armory/logicnode/CanvasSetRotationNode.hx +++ b/Sources/armory/logicnode/CanvasSetRotationNode.hx @@ -18,7 +18,8 @@ class CanvasSetRotationNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).rotation = rad; + var e = canvas.getElement(element); + if (e != null) e.rotation = rad; runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetScaleNode.hx b/Sources/armory/logicnode/CanvasSetScaleNode.hx index d36f2075..14786253 100644 --- a/Sources/armory/logicnode/CanvasSetScaleNode.hx +++ b/Sources/armory/logicnode/CanvasSetScaleNode.hx @@ -19,8 +19,11 @@ class CanvasSetScaleNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).height = height; - canvas.getElement(element).width = width; + var e = canvas.getElement(element); + if (e != null) { + e.height = height; + e.width = width; + } runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetTextColorNode.hx b/Sources/armory/logicnode/CanvasSetTextColorNode.hx index 5f4f57da..de2781d5 100644 --- a/Sources/armory/logicnode/CanvasSetTextColorNode.hx +++ b/Sources/armory/logicnode/CanvasSetTextColorNode.hx @@ -22,7 +22,8 @@ class CanvasSetTextColorNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).color_text = Color.fromFloats(r, g, b, a); + var e = canvas.getElement(element); + if (e != null) e.color_text = Color.fromFloats(r, g, b, a); runOutput(0); } diff --git a/Sources/armory/logicnode/CanvasSetTextNode.hx b/Sources/armory/logicnode/CanvasSetTextNode.hx index f76d9b21..02abbc7c 100644 --- a/Sources/armory/logicnode/CanvasSetTextNode.hx +++ b/Sources/armory/logicnode/CanvasSetTextNode.hx @@ -18,7 +18,8 @@ class CanvasSetTextNode extends LogicNode { if (!canvas.ready) return; tree.removeUpdate(update); - canvas.getElement(element).text = text; + var e = canvas.getElement(element); + if (e != null) e.text = text; runOutput(0); }