diff options
Diffstat (limited to 'figs.drawio')
-rw-r--r-- | figs.drawio | 184 |
1 files changed, 151 insertions, 33 deletions
diff --git a/figs.drawio b/figs.drawio index c18d13d..68ad6c9 100644 --- a/figs.drawio +++ b/figs.drawio @@ -736,23 +736,29 @@ </mxGraphModel> </diagram> <diagram id="ehgrrEZq6aIl9GSG0JpL" name="Main diagram 2"> - <mxGraphModel dx="912" dy="477" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="3300" pageHeight="2339" math="0" shadow="0"> + <mxGraphModel dx="3420" dy="1788" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="3300" pageHeight="2339" math="0" shadow="0"> <root> <mxCell id="0" /> <mxCell id="1" parent="0" /> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-10" value="Scene" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> - <mxGeometry x="956" y="1088" width="160" height="68" as="geometry"> + <mxCell id="5-8bWhzpOWirDYeo3-Cj-10" value="<<abstract>>
Scene" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=39;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> + <mxGeometry x="926" y="1055" width="160" height="115" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-11" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;" parent="5-8bWhzpOWirDYeo3-Cj-10" vertex="1"> - <mxGeometry y="26" width="160" height="17" as="geometry" /> + <mxCell id="5-8bWhzpOWirDYeo3-Cj-11" value="+name : string" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="5-8bWhzpOWirDYeo3-Cj-10" vertex="1"> + <mxGeometry y="39" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-12" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;" parent="5-8bWhzpOWirDYeo3-Cj-10" vertex="1"> - <mxGeometry y="43" width="160" height="8" as="geometry" /> + <mxGeometry y="56" width="160" height="8" as="geometry" /> </mxCell> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-13" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;" parent="5-8bWhzpOWirDYeo3-Cj-10" vertex="1"> - <mxGeometry y="51" width="160" height="17" as="geometry" /> + <mxCell id="5-8bWhzpOWirDYeo3-Cj-13" value="+Scene(string name)" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="5-8bWhzpOWirDYeo3-Cj-10" vertex="1"> + <mxGeometry y="64" width="160" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-25" value="+~Scene() : virtual" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="5-8bWhzpOWirDYeo3-Cj-10"> + <mxGeometry y="81" width="160" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-24" value="+load_scene() : virtual void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="5-8bWhzpOWirDYeo3-Cj-10"> + <mxGeometry y="98" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-14" value="" style="endArrow=open;html=1;rounded=0;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;endFill=0;endSize=8;edgeStyle=orthogonalEdgeStyle;" parent="1" source="5-8bWhzpOWirDYeo3-Cj-10" target="ZHgyX9xX1EySbdOx-EKd-46" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> @@ -766,12 +772,12 @@ </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-15" value="+contents" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="5-8bWhzpOWirDYeo3-Cj-14" vertex="1" connectable="0"> <mxGeometry x="-0.1405" y="-1" relative="1" as="geometry"> - <mxPoint x="-10" y="-15" as="offset" /> + <mxPoint x="-9" y="-11" as="offset" /> </mxGeometry> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-16" value="1" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="5-8bWhzpOWirDYeo3-Cj-14" vertex="1" connectable="0"> <mxGeometry x="-0.7119" y="-1" relative="1" as="geometry"> - <mxPoint x="-7" y="14" as="offset" /> + <mxPoint x="-3" y="14" as="offset" /> </mxGeometry> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-17" value="*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" parent="5-8bWhzpOWirDYeo3-Cj-14" vertex="1" connectable="0"> @@ -852,7 +858,7 @@ <mxGeometry y="68" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-74" value="Color" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> - <mxGeometry x="660" y="1340" width="160" height="68" as="geometry"> + <mxGeometry x="320" y="1282" width="160" height="68" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> @@ -866,7 +872,7 @@ <mxGeometry y="51" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-78" value="Point" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> - <mxGeometry x="660" y="1230" width="160" height="85" as="geometry"> + <mxGeometry x="320" y="1172" width="160" height="85" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> @@ -883,13 +889,13 @@ <mxGeometry y="68" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-82" value="Debug" style="shape=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left;html=1;whiteSpace=wrap;" parent="1" vertex="1"> - <mxGeometry x="660" y="1140" width="70" height="40" as="geometry" /> + <mxGeometry x="320" y="1082" width="70" height="40" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-83" value="Time" style="shape=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left;html=1;whiteSpace=wrap;" parent="1" vertex="1"> - <mxGeometry x="660" y="1070" width="70" height="40" as="geometry" /> + <mxGeometry x="320" y="1012" width="70" height="40" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-84" value="Input" style="shape=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left;html=1;whiteSpace=wrap;" parent="1" vertex="1"> - <mxGeometry x="660" y="1000" width="70" height="40" as="geometry" /> + <mxGeometry x="320" y="942" width="70" height="40" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-85" value="AudioSource" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> <mxGeometry x="806" y="560" width="160" height="136" as="geometry"> @@ -928,7 +934,7 @@ <mxCell id="5-8bWhzpOWirDYeo3-Cj-95" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;" parent="5-8bWhzpOWirDYeo3-Cj-93" vertex="1"> <mxGeometry y="43" width="160" height="8" as="geometry" /> </mxCell> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-96" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;" parent="5-8bWhzpOWirDYeo3-Cj-93" vertex="1"> + <mxCell id="uXPUMNlN59CLM5qzZz-l-23" value="+~Collider() : virtual" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="5-8bWhzpOWirDYeo3-Cj-93"> <mxGeometry y="51" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-97" value="CircleCollider" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> @@ -969,7 +975,7 @@ <mxGeometry y="85" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-106" value="Component" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> - <mxGeometry x="1400" y="180" width="200" height="85" as="geometry"> + <mxGeometry x="1400" y="170" width="200" height="102" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> @@ -982,9 +988,12 @@ <mxCell id="5-8bWhzpOWirDYeo3-Cj-109" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;" parent="5-8bWhzpOWirDYeo3-Cj-106" vertex="1"> <mxGeometry y="60" width="200" height="8" as="geometry" /> </mxCell> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-110" value="+get_instances_max() : virtual int" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="5-8bWhzpOWirDYeo3-Cj-106" vertex="1"> + <mxCell id="5-8bWhzpOWirDYeo3-Cj-110" value="+~Component() : virtual" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="5-8bWhzpOWirDYeo3-Cj-106" vertex="1"> <mxGeometry y="68" width="200" height="17" as="geometry" /> </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-20" value="+get_instances_max() : virtual int" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="5-8bWhzpOWirDYeo3-Cj-106"> + <mxGeometry y="85" width="200" height="17" as="geometry" /> + </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-111" value="Rigidbody" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> <mxGeometry x="1370" y="341" width="160" height="306" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> @@ -1246,13 +1255,13 @@ </Array> </mxGeometry> </mxCell> - <mxCell id="5-8bWhzpOWirDYeo3-Cj-155" value="" style="endArrow=block;html=1;rounded=0;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;endFill=0;strokeWidth=1;endSize=14;edgeStyle=orthogonalEdgeStyle;" parent="1" edge="1"> + <mxCell id="5-8bWhzpOWirDYeo3-Cj-155" value="" style="endArrow=block;html=1;rounded=0;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;endFill=0;strokeWidth=1;endSize=14;edgeStyle=orthogonalEdgeStyle;" parent="1" edge="1" target="5-8bWhzpOWirDYeo3-Cj-93"> <mxGeometry width="50" height="50" relative="1" as="geometry"> <mxPoint x="1115.9999999999998" y="666" as="sourcePoint" /> <mxPoint x="1115.9999999999998" y="628.0000000000002" as="targetPoint" /> <Array as="points"> - <mxPoint x="1116" y="658" /> - <mxPoint x="1116" y="658" /> + <mxPoint x="1116" y="650" /> + <mxPoint x="1116" y="650" /> </Array> </mxGeometry> </mxCell> @@ -1297,7 +1306,7 @@ </mxGeometry> </mxCell> <mxCell id="5-8bWhzpOWirDYeo3-Cj-160" value="ParticleSystem" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> - <mxGeometry x="1980" y="1090" width="160" height="68" as="geometry"> + <mxGeometry x="2210" y="1114.5" width="160" height="68" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> @@ -1534,7 +1543,7 @@ <mxCell id="ZHgyX9xX1EySbdOx-EKd-13" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;" parent="ZHgyX9xX1EySbdOx-EKd-10" vertex="1"> <mxGeometry y="60" width="160" height="8" as="geometry" /> </mxCell> - <mxCell id="ZHgyX9xX1EySbdOx-EKd-14" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;" parent="ZHgyX9xX1EySbdOx-EKd-10" vertex="1"> + <mxCell id="uXPUMNlN59CLM5qzZz-l-21" value="+~UIObject() : virtual" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="ZHgyX9xX1EySbdOx-EKd-10"> <mxGeometry y="68" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="ZHgyX9xX1EySbdOx-EKd-15" value="Button" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;" parent="1" vertex="1"> @@ -1664,24 +1673,24 @@ <mxGeometry y="119" width="160" height="17" as="geometry" /> </mxCell> <mxCell id="ZHgyX9xX1EySbdOx-EKd-46" value="GameObject" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;strokeColor=#000000;fontColor=#000000;" parent="1" vertex="1"> - <mxGeometry x="1196" y="1065" width="474" height="102" as="geometry"> + <mxGeometry x="1163" y="1065" width="534" height="102" as="geometry"> <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> </mxGeometry> </mxCell> - <mxCell id="ZHgyX9xX1EySbdOx-EKd-63" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> - <mxGeometry y="26" width="474" height="17" as="geometry" /> + <mxCell id="ZHgyX9xX1EySbdOx-EKd-63" value="+id : uint32_t" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> + <mxGeometry y="26" width="534" height="17" as="geometry" /> </mxCell> <mxCell id="ZHgyX9xX1EySbdOx-EKd-50" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;fontColor=#0000FF;strokeColor=#000000;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> - <mxGeometry y="43" width="474" height="8" as="geometry" /> + <mxGeometry y="43" width="534" height="8" as="geometry" /> </mxCell> - <mxCell id="ZHgyX9xX1EySbdOx-EKd-67" value="+GameObject(string naam, string tag, int layer, Point position, Point rotation, int scale)" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> - <mxGeometry y="51" width="474" height="17" as="geometry" /> + <mxCell id="ZHgyX9xX1EySbdOx-EKd-67" value="+GameObject(uint32_t id, string naam, string tag, int layer, Point position, Point rotation, int scale)" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> + <mxGeometry y="51" width="534" height="17" as="geometry" /> </mxCell> - <mxCell id="ZHgyX9xX1EySbdOx-EKd-51" value="+add_component() : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#000000;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> - <mxGeometry y="68" width="474" height="17" as="geometry" /> + <mxCell id="ZHgyX9xX1EySbdOx-EKd-51" value="+add_component<T>(Args&&... args) : T&" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#000000;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> + <mxGeometry y="68" width="534" height="17" as="geometry" /> </mxCell> - <mxCell id="ZHgyX9xX1EySbdOx-EKd-57" value="+set_parent() : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> - <mxGeometry y="85" width="474" height="17" as="geometry" /> + <mxCell id="ZHgyX9xX1EySbdOx-EKd-57" value="+set_parent(GameObject& gameObject) : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" parent="ZHgyX9xX1EySbdOx-EKd-46" vertex="1"> + <mxGeometry y="85" width="534" height="17" as="geometry" /> </mxCell> <mxCell id="ZHgyX9xX1EySbdOx-EKd-52" value="" style="endArrow=block;html=1;rounded=0;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;endFill=0;strokeWidth=1;endSize=14;edgeStyle=orthogonalEdgeStyle;strokeColor=#2020ff;" parent="1" source="ZHgyX9xX1EySbdOx-EKd-35" target="5-8bWhzpOWirDYeo3-Cj-106" edge="1"> <mxGeometry width="50" height="50" relative="1" as="geometry"> @@ -1726,6 +1735,115 @@ <mxPoint x="-31" y="25" as="offset" /> </mxGeometry> </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-5" value="<<singleton>>
SceneManager" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=40;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;fontColor=#0000FF;strokeColor=#0000FF;" vertex="1" parent="1"> + <mxGeometry x="570" y="1049.5" width="310" height="133" as="geometry"> + <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-6" value="+scenes : vector<Scene>" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontFamily=Helvetica;fontSize=12;fontColor=#0000FF;strokeColor=none;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="40" width="310" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-17" value="+nextScene : queue<string>" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontFamily=Helvetica;fontSize=12;fontColor=#0000FF;strokeColor=none;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="57" width="310" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-7" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;strokeColor=#0000FF;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="74" width="310" height="8" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-8" value="+add_scene(string name) : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;fontSize=12;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;strokeColor=none;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="82" width="310" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-14" value="+load_scene(string name) : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;fontSize=12;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;strokeColor=none;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="99" width="310" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-18" value="+empty_queue() : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;fontSize=12;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;strokeColor=none;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry y="116" width="310" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-15" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=diamondThin;endFill=1;strokeColor=#0000FF;" edge="1" parent="1" source="5-8bWhzpOWirDYeo3-Cj-10" target="uXPUMNlN59CLM5qzZz-l-5"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="1570" y="1230" as="sourcePoint" /> + <mxPoint x="1680" y="900" as="targetPoint" /> + <Array as="points"> + <mxPoint x="900" y="1120" /> + <mxPoint x="900" y="1120" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-16" value="*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontColor=#0000FF;" connectable="0" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-15"> + <mxGeometry x="-0.9593" y="-3" relative="1" as="geometry"> + <mxPoint x="-7" y="-5" as="offset" /> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-32" value="ConcreteScene" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;marginBottom=0;rounded=0;shadow=0;strokeWidth=1;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;direction=east;strokeColor=#0000FF;fontColor=#0000FF;" vertex="1" parent="1"> + <mxGeometry x="920" y="1210" width="170" height="68" as="geometry"> + <mxRectangle x="330" y="540" width="160" height="26" as="alternateBounds" /> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-41" value=" " style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-32"> + <mxGeometry y="26" width="170" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-38" value="" style="line;html=1;strokeWidth=1;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=1;labelPosition=right;points=[];portConstraint=eastwest;fontSize=12;perimeterSpacing=0;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;verticalLabelPosition=middle;fontColor=#0000FF;strokeColor=#0000FF;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-32"> + <mxGeometry y="43" width="170" height="8" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-39" value="+load_scene() : void" style="text;align=left;verticalAlign=bottom;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=1;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;rounded=0;shadow=0;html=0;strokeWidth=1;horizontal=1;movable=1;resizable=1;deletable=1;editable=1;locked=0;connectable=1;fontColor=#0000FF;" vertex="1" parent="uXPUMNlN59CLM5qzZz-l-32"> + <mxGeometry y="51" width="170" height="17" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-42" value="" style="endArrow=block;html=1;rounded=0;movable=1;resizable=1;rotatable=1;deletable=1;editable=1;locked=0;connectable=1;endFill=0;strokeWidth=1;endSize=14;edgeStyle=orthogonalEdgeStyle;fontColor=#0000FF;strokeColor=#0000FF;" edge="1" parent="1" source="uXPUMNlN59CLM5qzZz-l-32" target="5-8bWhzpOWirDYeo3-Cj-10"> + <mxGeometry width="50" height="50" relative="1" as="geometry"> + <mxPoint x="1110" y="1226" as="sourcePoint" /> + <mxPoint x="1110" y="1190" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1005" y="1190" /> + <mxPoint x="1005" y="1190" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-45" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;dashed=1;" edge="1" parent="1" source="uXPUMNlN59CLM5qzZz-l-44" target="uXPUMNlN59CLM5qzZz-l-18"> + <mxGeometry relative="1" as="geometry"> + <Array as="points"> + <mxPoint x="740" y="1180" /> + <mxPoint x="740" y="1180" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-44" value="The game programmer creates ConcreteScenes (e.g. each game level might be a seperate ConcreteScene). Each ConcreteScene consists of GameObject(s) with Component(s). The ConcreteScene describes the Scene's state at the start of the Scene. Components like Physics and Scripts allow the game programmer to change the Scene's state during runtime.<br>The game programmer must add her/his ConcreteScene(s) to the SceneManager, after creating the ConcreteScene.<div>The first Scene of the game, is the Scene which is firstly added to SceneManager.<br><div>The next Scene can be loaded using a Script. The Script can call load_scene() to load a new Scene. The next Scene is loaded (and the previous one is deleted), at the end of the frame.</div></div>" style="shape=note;size=20;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="600" y="1210" width="280" height="260" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-46" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;dashed=1;" edge="1" parent="1" source="uXPUMNlN59CLM5qzZz-l-32" target="uXPUMNlN59CLM5qzZz-l-44"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="750" y="1220" as="sourcePoint" /> + <mxPoint x="750" y="1193" as="targetPoint" /> + <Array as="points"> + <mxPoint x="890" y="1244" /> + <mxPoint x="890" y="1244" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-47" value="The ComponentManager is the key player within the game engine.<br>The ComponentManager manages and takes care of all Components. The ComponentManager is the only owner of a Component.<div>The ComponentManager offers an easy way to add and delete a Component. It's also possible to delete all Components of the same type or id. However, the best feature of the ComponentManager is that it's very easy to retrieve the references to all Components of the same type. This last feature is constantly used at the Systems.</div>" style="shape=note;size=20;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="1720" y="920" width="300" height="190" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-48" value="<div><div>The GameObject is used as a dummy object for the game programmer. The GameObject's only goal is to create an easy/understandable interface for the game programmer. The GameObject&nbsp;</div></div>" style="shape=note;size=20;whiteSpace=wrap;html=1;align=left;verticalAlign=top;" vertex="1" parent="1"> + <mxGeometry x="1397" y="1200" width="300" height="70" as="geometry" /> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-49" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;dashed=1;" edge="1" parent="1" source="ZHgyX9xX1EySbdOx-EKd-46" target="uXPUMNlN59CLM5qzZz-l-48"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="930" y="1254" as="sourcePoint" /> + <mxPoint x="890" y="1254" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1547" y="1180" /> + <mxPoint x="1547" y="1180" /> + </Array> + </mxGeometry> + </mxCell> + <mxCell id="uXPUMNlN59CLM5qzZz-l-50" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;dashed=1;" edge="1" parent="1" source="5-8bWhzpOWirDYeo3-Cj-170" target="uXPUMNlN59CLM5qzZz-l-47"> + <mxGeometry relative="1" as="geometry"> + <mxPoint x="1557" y="1177" as="sourcePoint" /> + <mxPoint x="1557" y="1210" as="targetPoint" /> + <Array as="points"> + <mxPoint x="1680" y="950" /> + <mxPoint x="1680" y="950" /> + </Array> + </mxGeometry> + </mxCell> </root> </mxGraphModel> </diagram> |