0
0
mirror of https://github.com/Nimac0/SDL_Minigame synced 2026-01-12 15:53:42 +00:00
SDL_Minigame/docs/diagrams/classes.svg

1 line
149 KiB
XML

<?xml version="1.0" encoding="us-ascii" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" height="2124px" preserveAspectRatio="none" style="width:7663px;height:2124px;background:#FFFFFF;" version="1.1" viewBox="0 0 7663 2124" width="7663px" zoomAndPan="magnify"><defs/><g><!--class C_0001676577582836977709--><g id="elem_C_0001676577582836977709"><rect codeLine="3" fill="#F1F1F1" height="151.3396" id="C_0001676577582836977709" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="294" x="2664" y="178.61"/><ellipse cx="2767.75" cy="194.61" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M2767.2188,201.5319 Q2765.4688,201.5319 2764.3281,200.7975 Q2763.2031,200.0475 2762.6406,198.7037 Q2762.0938,197.3444 2762.0938,195.5475 Q2762.0938,193.5162 2762.75,192.0631 Q2763.4063,190.61 2764.6875,189.8287 Q2765.9688,189.0475 2767.8438,189.0475 Q2768.7344,189.0475 2769.4063,189.235 Q2770.0781,189.4069 2770.7656,189.7506 L2769.9531,191.7662 Q2769.3281,191.4537 2768.7813,191.3287 Q2768.25,191.2037 2767.7656,191.2037 Q2766.5938,191.2037 2765.8906,191.735 Q2765.1875,192.2662 2764.8906,193.2194 Q2764.5938,194.1725 2764.5938,195.4381 Q2764.5938,197.4537 2765.3125,198.4225 Q2766.0313,199.3756 2767.625,199.3756 Q2768.2188,199.3756 2768.8438,199.2194 Q2769.4688,199.0631 2770.2969,198.6881 L2770.2969,200.9069 Q2769.5625,201.2194 2768.7656,201.3756 Q2767.9844,201.5319 2767.2188,201.5319 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="78" x="2788.25" y="200.042">Component</text><line style="stroke:#181818;stroke-width:0.5;" x1="2665" x2="2957" y1="210.61" y2="210.61"/><ellipse cx="2675" cy="225.644" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="268" x="2684" y="229.5759">~Component() constexpr = default : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="2665" x2="2957" y1="237.6779" y2="237.6779"/><ellipse cx="2675" cy="252.7119" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="2684" y="256.6439">draw() : void</text><ellipse cx="2675" cy="271.7798" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2684" y="275.7118">init() : void</text><ellipse cx="2675" cy="290.8477" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="2684" y="294.7797">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="2665" x2="2957" y1="302.8817" y2="302.8817"/><ellipse cx="2675" cy="317.9156" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="100" x="2684" y="321.8476">entity : Entity *</text></g><!--class C_0002295902238121356725--><g id="elem_C_0002295902238121356725"><rect codeLine="13" fill="#F1F1F1" height="178.4075" id="C_0002295902238121356725" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="266" x="3106" y="1939.23"/><ellipse cx="3204.75" cy="1955.23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M3204.2188,1962.1519 Q3202.4688,1962.1519 3201.3281,1961.4175 Q3200.2031,1960.6675 3199.6406,1959.3237 Q3199.0938,1957.9644 3199.0938,1956.1675 Q3199.0938,1954.1362 3199.75,1952.6831 Q3200.4063,1951.23 3201.6875,1950.4487 Q3202.9688,1949.6675 3204.8438,1949.6675 Q3205.7344,1949.6675 3206.4063,1949.855 Q3207.0781,1950.0269 3207.7656,1950.3706 L3206.9531,1952.3862 Q3206.3281,1952.0737 3205.7813,1951.9487 Q3205.25,1951.8237 3204.7656,1951.8237 Q3203.5938,1951.8237 3202.8906,1952.355 Q3202.1875,1952.8862 3201.8906,1953.8394 Q3201.5938,1954.7925 3201.5938,1956.0581 Q3201.5938,1958.0737 3202.3125,1959.0425 Q3203.0313,1959.9956 3204.625,1959.9956 Q3205.2188,1959.9956 3205.8438,1959.8394 Q3206.4688,1959.6831 3207.2969,1959.3081 L3207.2969,1961.5269 Q3206.5625,1961.8394 3205.7656,1961.9956 Q3204.9844,1962.1519 3204.2188,1962.1519 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="60" x="3225.25" y="1960.662">Vector2D</text><line style="stroke:#181818;stroke-width:0.5;" x1="3107" x2="3371" y1="1971.23" y2="1971.23"/><ellipse cx="3117" cy="1986.264" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="108" x="3126" y="1990.1959">Vector2D() : void</text><ellipse cx="3117" cy="2005.3319" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="198" x="3126" y="2009.2639">Vector2D(float x, float y) : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="3107" x2="3371" y1="2017.3658" y2="2017.3658"/><ellipse cx="3117" cy="2032.3998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="240" x="3126" y="2036.3318">operator*(const int &amp; i) : Vector2D &amp;</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="3107" x2="3371" y1="2044.4338" y2="2044.4338"/><ellipse cx="3117" cy="2059.4677" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="123" x="3126" y="2063.3997">zero() : Vector2D &amp;</text><line style="stroke:#181818;stroke-width:0.5;" x1="3107" x2="3371" y1="2071.5017" y2="2071.5017"/><ellipse cx="3117" cy="2086.5356" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="49" x="3126" y="2090.4676">x : float</text><ellipse cx="3117" cy="2105.6035" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="49" x="3126" y="2109.5355">y : float</text></g><!--class C_0002220102923217450675--><g id="elem_C_0002220102923217450675"><rect codeLine="25" fill="#F1F1F1" height="284.815" id="C_0002220102923217450675" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="759" x="3466.5" y="1116.13"/><ellipse cx="3776.75" cy="1132.13" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M3776.2188,1139.0519 Q3774.4688,1139.0519 3773.3281,1138.3175 Q3772.2031,1137.5675 3771.6406,1136.2237 Q3771.0938,1134.8644 3771.0938,1133.0675 Q3771.0938,1131.0362 3771.75,1129.5831 Q3772.4063,1128.13 3773.6875,1127.3487 Q3774.9688,1126.5675 3776.8438,1126.5675 Q3777.7344,1126.5675 3778.4063,1126.755 Q3779.0781,1126.9269 3779.7656,1127.2706 L3778.9531,1129.2862 Q3778.3281,1128.9737 3777.7813,1128.8487 Q3777.25,1128.7237 3776.7656,1128.7237 Q3775.5938,1128.7237 3774.8906,1129.255 Q3774.1875,1129.7862 3773.8906,1130.7394 Q3773.5938,1131.6925 3773.5938,1132.9581 Q3773.5938,1134.9737 3774.3125,1135.9425 Q3775.0313,1136.8956 3776.625,1136.8956 Q3777.2188,1136.8956 3777.8438,1136.7394 Q3778.4688,1136.5831 3779.2969,1136.2081 L3779.2969,1138.4269 Q3778.5625,1138.7394 3777.7656,1138.8956 Q3776.9844,1139.0519 3776.2188,1139.0519 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="130" x="3797.25" y="1137.562">ColliderComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="3467.5" x2="4224.5" y1="1148.13" y2="1148.13"/><ellipse cx="3477.5" cy="1163.164" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="286" x="3486.5" y="1167.0959">ColliderComponent(const char * tag) : void</text><ellipse cx="3477.5" cy="1182.2319" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="405" x="3486.5" y="1186.1639">ColliderComponent(const char * tag, float hitboxScale) : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="3467.5" x2="4224.5" y1="1194.2658" y2="1194.2658"/><ellipse cx="3477.5" cy="1209.2998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="733" x="3486.5" y="1213.2318">handleCollision(Vector2D &amp; characterPos, SDL_Rect &amp; characterCollider, SDL_Rect &amp; componentCollider) : void</text><ellipse cx="3477.5" cy="1228.3677" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="3486.5" y="1232.2997">init() : void</text><ellipse cx="3477.5" cy="1247.4356" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="155" x="3486.5" y="1251.3676">removeCollision() : void</text><ellipse cx="3477.5" cy="1266.5035" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="3486.5" y="1270.4355">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="3467.5" x2="4224.5" y1="1278.5375" y2="1278.5375"/><ellipse cx="3477.5" cy="1293.5715" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="122" x="3486.5" y="1297.5034">collider : SDL_Rect</text><ellipse cx="3477.5" cy="1312.6394" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="122" x="3486.5" y="1316.5714">hasCollision : bool</text><ellipse cx="3477.5" cy="1331.7073" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="119" x="3486.5" y="1335.6393">hitboxScale : float</text><ellipse cx="3477.5" cy="1350.7752" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="114" x="3486.5" y="1354.7072">isProjectile : bool</text><ellipse cx="3477.5" cy="1369.8431" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116" x="3486.5" y="1373.7751">tag : const char *</text><ellipse cx="3477.5" cy="1388.911" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="3486.5" y="1392.843">transform : TransformComponent *</text></g><!--class C_0001933087658996446935--><g id="elem_C_0001933087658996446935"><rect codeLine="42" fill="#F1F1F1" height="181.4754" id="C_0001933087658996446935" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="110" x="6452" y="1167.8"/><ellipse cx="6467" cy="1183.8" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M6463.3594,1190.3 L6463.3594,1178.1594 L6471.0156,1178.1594 L6471.0156,1180.2844 L6465.7344,1180.2844 L6465.7344,1182.9406 L6470.75,1182.9406 L6470.75,1185.0656 L6465.7344,1185.0656 L6465.7344,1188.175 L6471.0156,1188.175 L6471.0156,1190.3 L6463.3594,1190.3 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="78" x="6481" y="1189.232">GroupLabel</text><line style="stroke:#181818;stroke-width:0.5;" x1="6453" x2="6561" y1="1199.8" y2="1199.8"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="6458" y="1218.7659">MAPTILES</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="57" x="6458" y="1237.8339">PLAYERS</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="61" x="6458" y="1256.9018">ENEMIES</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="74" x="6458" y="1275.9697">COLLIDERS</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="77" x="6458" y="1295.0376">PROJECTILE</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="52" x="6458" y="1314.1055">HEARTS</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75" x="6458" y="1333.1734">POWERUPS</text><line style="stroke:#181818;stroke-width:0.5;" x1="6453" x2="6561" y1="1341.2754" y2="1341.2754"/></g><!--class C_0000040289789604573007--><g id="elem_C_0000040289789604573007"><rect codeLine="52" fill="#F1F1F1" height="105.2038" id="C_0000040289789604573007" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="105" x="5762.5" y="1665.16"/><ellipse cx="5777.5" cy="1681.16" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M5773.8594,1687.66 L5773.8594,1675.5194 L5781.5156,1675.5194 L5781.5156,1677.6444 L5776.2344,1677.6444 L5776.2344,1680.3006 L5781.25,1680.3006 L5781.25,1682.4256 L5776.2344,1682.4256 L5776.2344,1685.535 L5781.5156,1685.535 L5781.5156,1687.66 L5773.8594,1687.66 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="73" x="5791.5" y="1686.592">TeamLabel</text><line style="stroke:#181818;stroke-width:0.5;" x1="5763.5" x2="5866.5" y1="1697.16" y2="1697.16"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="41" x="5768.5" y="1716.1259">NONE</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="34" x="5768.5" y="1735.1939">BLUE</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="27" x="5768.5" y="1754.2618">RED</text><line style="stroke:#181818;stroke-width:0.5;" x1="5763.5" x2="5866.5" y1="1762.3638" y2="1762.3638"/></g><!--class C_0000981987201094066299--><g id="elem_C_0000981987201094066299"><rect codeLine="58" fill="#F1F1F1" height="475.4942" id="C_0000981987201094066299" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="404" x="5287" y="1020.79"/><ellipse cx="5465.75" cy="1036.79" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M5465.2188,1043.7119 Q5463.4688,1043.7119 5462.3281,1042.9775 Q5461.2031,1042.2275 5460.6406,1040.8838 Q5460.0938,1039.5244 5460.0938,1037.7275 Q5460.0938,1035.6963 5460.75,1034.2431 Q5461.4063,1032.79 5462.6875,1032.0088 Q5463.9688,1031.2275 5465.8438,1031.2275 Q5466.7344,1031.2275 5467.4063,1031.415 Q5468.0781,1031.5869 5468.7656,1031.9306 L5467.9531,1033.9463 Q5467.3281,1033.6338 5466.7813,1033.5088 Q5466.25,1033.3838 5465.7656,1033.3838 Q5464.5938,1033.3838 5463.8906,1033.915 Q5463.1875,1034.4463 5462.8906,1035.3994 Q5462.5938,1036.3525 5462.5938,1037.6181 Q5462.5938,1039.6338 5463.3125,1040.6025 Q5464.0313,1041.5556 5465.625,1041.5556 Q5466.2188,1041.5556 5466.8438,1041.3994 Q5467.4688,1041.2431 5468.2969,1040.8681 L5468.2969,1043.0869 Q5467.5625,1043.3994 5466.7656,1043.5556 Q5465.9844,1043.7119 5465.2188,1043.7119 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38" x="5486.25" y="1042.222">Entity</text><line style="stroke:#181818;stroke-width:0.5;" x1="5288" x2="5690" y1="1052.79" y2="1052.79"/><ellipse cx="5298" cy="1067.824" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="5307" y="1071.7559">Entity(Manager &amp; mManager) : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="5288" x2="5690" y1="1079.8579" y2="1079.8579"/><ellipse cx="5298" cy="1094.8919" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="348" x="5307" y="1098.8239">addComponent&lt;T,TArgs...&gt;(TArgs &amp;&amp;... mArgs) : T &amp;</text><ellipse cx="5298" cy="1113.9598" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="217" x="5307" y="1117.8918">addGroup(Group mGroup) : void</text><ellipse cx="5298" cy="1133.0277" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="212" x="5307" y="1136.9597">delGroup(Group mGroup) : void</text><ellipse cx="5298" cy="1152.0956" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98" x="5307" y="1156.0276">destroy() : void</text><ellipse cx="5298" cy="1171.1635" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="122" x="5307" y="1175.0955">draw() const : void</text><ellipse cx="5298" cy="1190.2315" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="206" x="5307" y="1194.1634">getComponent&lt;T&gt;() const : T &amp;</text><ellipse cx="5298" cy="1209.2994" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="298" x="5307" y="1213.2314">getGroupBitSet() : std::bitset&lt;MAX_GROUPS&gt;</text><ellipse cx="5298" cy="1228.3673" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="178" x="5307" y="1232.2993">getManager() : Manager &amp;</text><ellipse cx="5298" cy="1247.4352" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="152" x="5307" y="1251.3672">getTeam() : TeamLabel</text><ellipse cx="5298" cy="1266.5031" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="221" x="5307" y="1270.4351">hasComponent&lt;T&gt;() const : _Bool</text><ellipse cx="5298" cy="1285.571" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="216" x="5307" y="1289.503">hasGroup(Group mGroup) : bool</text><ellipse cx="5298" cy="1304.639" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="140" x="5307" y="1308.5709">isActive() const : bool</text><ellipse cx="5298" cy="1323.7069" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="252" x="5307" y="1327.6389">setTeam(TeamLabel teamLabel) : void</text><ellipse cx="5298" cy="1342.7748" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="136" x="5307" y="1346.7068">update() const : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="5288" x2="5690" y1="1354.8088" y2="1354.8088"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1366.8427"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="80" x="5307" y="1373.7747">active : bool</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1385.9106"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="238" x="5307" y="1392.8426">componentArray : ComponentArray</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1404.9785"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="244" x="5307" y="1411.9105">componentBitSet : ComponentBitSet</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1424.0465"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="378" x="5307" y="1430.9784">components : std::vector&lt;std::unique_ptr&lt;Component&gt;&gt;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1443.1144"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="173" x="5307" y="1450.0464">groupBitSet : GroupBitSet</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1462.1823"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148" x="5307" y="1469.1143">manager : Manager &amp;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5295" y="1481.2502"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="155" x="5307" y="1488.1822">teamLabel : TeamLabel</text></g><!--class C_0000848392056125853220--><g id="elem_C_0000848392056125853220"><rect codeLine="85" fill="#F1F1F1" height="105.2038" id="C_0000848392056125853220" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="128" x="4314" y="1665.16"/><ellipse cx="4331.25" cy="1681.16" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M4327.6094,1687.66 L4327.6094,1675.5194 L4335.2656,1675.5194 L4335.2656,1677.6444 L4329.9844,1677.6444 L4329.9844,1680.3006 L4335,1680.3006 L4335,1682.4256 L4329.9844,1682.4256 L4329.9844,1685.535 L4335.2656,1685.535 L4335.2656,1687.66 L4327.6094,1687.66 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="91" x="4345.75" y="1686.592">PowerupType</text><line style="stroke:#181818;stroke-width:0.5;" x1="4315" x2="4441" y1="1697.16" y2="1697.16"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="44" x="4320" y="1716.1259">HEART</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="106" x="4320" y="1735.1939">WALKINGSPEED</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="116" x="4320" y="1754.2618">SHOOTINGSPEED</text><line style="stroke:#181818;stroke-width:0.5;" x1="4315" x2="4441" y1="1762.3638" y2="1762.3638"/></g><!--class C_0000882083745927038598--><g id="elem_C_0000882083745927038598"><rect codeLine="91" fill="#F1F1F1" height="303.8829" id="C_0000882083745927038598" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="920" x="4332" y="1106.59"/><ellipse cx="4739.25" cy="1122.59" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M4738.7188,1129.5119 Q4736.9688,1129.5119 4735.8281,1128.7775 Q4734.7031,1128.0275 4734.1406,1126.6838 Q4733.5938,1125.3244 4733.5938,1123.5275 Q4733.5938,1121.4963 4734.25,1120.0431 Q4734.9063,1118.59 4736.1875,1117.8088 Q4737.4688,1117.0275 4739.3438,1117.0275 Q4740.2344,1117.0275 4740.9063,1117.215 Q4741.5781,1117.3869 4742.2656,1117.7306 L4741.4531,1119.7463 Q4740.8281,1119.4338 4740.2813,1119.3088 Q4739.75,1119.1838 4739.2656,1119.1838 Q4738.0938,1119.1838 4737.3906,1119.715 Q4736.6875,1120.2463 4736.3906,1121.1994 Q4736.0938,1122.1525 4736.0938,1123.4181 Q4736.0938,1125.4338 4736.8125,1126.4025 Q4737.5313,1127.3556 4739.125,1127.3556 Q4739.7188,1127.3556 4740.3438,1127.1994 Q4740.9688,1127.0431 4741.7969,1126.6681 L4741.7969,1128.8869 Q4741.0625,1129.1994 4740.2656,1129.3556 Q4739.4844,1129.5119 4738.7188,1129.5119 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97" x="4759.75" y="1128.022">AssetManager</text><line style="stroke:#181818;stroke-width:0.5;" x1="4333" x2="5251" y1="1138.59" y2="1138.59"/><ellipse cx="4343" cy="1153.624" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="283" x="4352" y="1157.5559">AssetManager(Manager * manager) : void</text><ellipse cx="4343" cy="1172.6919" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="153" x="4352" y="1176.6239">~AssetManager() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="4333" x2="5251" y1="1184.7258" y2="1184.7258"/><ellipse cx="4343" cy="1199.7598" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="366" x="4352" y="1203.6918">addSoundEffect(std::string id, const char * path) : void</text><ellipse cx="4343" cy="1218.8277" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="336" x="4352" y="1222.7597">addTexture(std::string id, const char * path) : void</text><ellipse cx="4343" cy="1237.8956" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="238" x="4352" y="1241.8276">calculateSpawnPosition() : Vector2D</text><ellipse cx="4343" cy="1256.9635" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="203" x="4352" y="1260.8955">calculateType() : PowerupType</text><ellipse cx="4343" cy="1276.0315" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="369" x="4352" y="1279.9634">createPowerup(Vector2D pos, PowerupType type) : void</text><ellipse cx="4343" cy="1295.0994" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="894" x="4352" y="1299.0314">createProjectile(Vector2D pos, Vector2D velocity, int scale, int range, int speed, const char * texturePath, TeamLabel teamLabel) : void</text><ellipse cx="4343" cy="1314.1673" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="256" x="4352" y="1318.0993">getSound(std::string id) : Mix_Chunk *</text><ellipse cx="4343" cy="1333.2352" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="273" x="4352" y="1337.1672">getTexture(std::string id) : SDL_Texture *</text><line style="stroke:#181818;stroke-width:0.5;" x1="4333" x2="5251" y1="1345.2692" y2="1345.2692"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="4340" y="1357.3031"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="115" x="4352" y="1364.2351">man : Manager *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="4340" y="1376.371"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="332" x="4352" y="1383.303">soundEffects : std::map&lt;std::string,Mix_Chunk *&gt;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="4340" y="1395.439"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="309" x="4352" y="1402.3709">textures : std::map&lt;std::string,SDL_Texture *&gt;</text></g><!--class C_0001242536407190640790--><g id="elem_C_0001242536407190640790"><rect codeLine="109" fill="#F1F1F1" height="86.1358" id="C_0001242536407190640790" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="405" x="1594.5" y="1215.47"/><ellipse cx="1754.25" cy="1231.47" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1753.7188,1238.3919 Q1751.9688,1238.3919 1750.8281,1237.6575 Q1749.7031,1236.9075 1749.1406,1235.5637 Q1748.5938,1234.2044 1748.5938,1232.4075 Q1748.5938,1230.3762 1749.25,1228.9231 Q1749.9063,1227.47 1751.1875,1226.6887 Q1752.4688,1225.9075 1754.3438,1225.9075 Q1755.2344,1225.9075 1755.9063,1226.095 Q1756.5781,1226.2669 1757.2656,1226.6106 L1756.4531,1228.6262 Q1755.8281,1228.3137 1755.2813,1228.1887 Q1754.75,1228.0637 1754.2656,1228.0637 Q1753.0938,1228.0637 1752.3906,1228.595 Q1751.6875,1229.1262 1751.3906,1230.0794 Q1751.0938,1231.0325 1751.0938,1232.2981 Q1751.0938,1234.3137 1751.8125,1235.2825 Q1752.5313,1236.2356 1754.125,1236.2356 Q1754.7188,1236.2356 1755.3438,1236.0794 Q1755.9688,1235.9231 1756.7969,1235.5481 L1756.7969,1237.7669 Q1756.0625,1238.0794 1755.2656,1238.2356 Q1754.4844,1238.3919 1753.7188,1238.3919 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="77" x="1774.75" y="1236.902">TextureDict</text><line style="stroke:#181818;stroke-width:0.5;" x1="1595.5" x2="1998.5" y1="1247.47" y2="1247.47"/><line style="stroke:#181818;stroke-width:0.5;" x1="1595.5" x2="1998.5" y1="1255.47" y2="1255.47"/><ellipse cx="1605.5" cy="1270.504" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="379" x="1614.5" y="1274.4359">powerupDictionary : std::map&lt;PowerupType,std::string&gt;</text><ellipse cx="1605.5" cy="1289.5719" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="307" x="1614.5" y="1293.5039">tileDictionary : const std::map&lt;int,std::string&gt;</text></g><!--class C_0000837529456583288870--><g id="elem_C_0000837529456583288870"><rect codeLine="115" fill="#F1F1F1" height="246.6792" id="C_0000837529456583288870" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="365" x="1834.5" y="637.84"/><ellipse cx="1961.75" cy="653.84" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1961.2188,660.7619 Q1959.4688,660.7619 1958.3281,660.0275 Q1957.2031,659.2775 1956.6406,657.9337 Q1956.0938,656.5744 1956.0938,654.7775 Q1956.0938,652.7462 1956.75,651.2931 Q1957.4063,649.84 1958.6875,649.0587 Q1959.9688,648.2775 1961.8438,648.2775 Q1962.7344,648.2775 1963.4063,648.465 Q1964.0781,648.6369 1964.7656,648.9806 L1963.9531,650.9962 Q1963.3281,650.6837 1962.7813,650.5587 Q1962.25,650.4337 1961.7656,650.4337 Q1960.5938,650.4337 1959.8906,650.965 Q1959.1875,651.4962 1958.8906,652.4494 Q1958.5938,653.4025 1958.5938,654.6681 Q1958.5938,656.6837 1959.3125,657.6525 Q1960.0313,658.6056 1961.625,658.6056 Q1962.2188,658.6056 1962.8438,658.4494 Q1963.4688,658.2931 1964.2969,657.9181 L1964.2969,660.1369 Q1963.5625,660.4494 1962.7656,660.6056 Q1961.9844,660.7619 1961.2188,660.7619 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="102" x="1982.25" y="659.272">TileComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="1835.5" x2="2198.5" y1="669.84" y2="669.84"/><ellipse cx="1845.5" cy="684.874" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="214" x="1854.5" y="688.8059">TileComponent() = default : void</text><ellipse cx="1845.5" cy="703.9419" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="339" x="1854.5" y="707.8739">TileComponent(int x, int y, int w, int h, int id) : void</text><ellipse cx="1845.5" cy="723.0098" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="222" x="1854.5" y="726.9418">~TileComponent() = default : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="1835.5" x2="2198.5" y1="735.0438" y2="735.0438"/><ellipse cx="1845.5" cy="750.0777" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="1854.5" y="754.0097">init() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="1835.5" x2="2198.5" y1="762.1117" y2="762.1117"/><ellipse cx="1845.5" cy="777.1456" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="125" x="1854.5" y="781.0776">path : const char *</text><ellipse cx="1845.5" cy="796.2135" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="181" x="1854.5" y="800.1455">sprite : SpriteComponent *</text><ellipse cx="1845.5" cy="815.2815" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="163" x="1854.5" y="819.2134">textureDict : TextureDict</text><ellipse cx="1845.5" cy="834.3494" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="66" x="1854.5" y="838.2814">tileID : int</text><ellipse cx="1845.5" cy="853.4173" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="122" x="1854.5" y="857.3493">tileRect : SDL_Rect</text><ellipse cx="1845.5" cy="872.4852" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="1854.5" y="876.4172">transform : TransformComponent *</text></g><!--class C_0001429228322470114409--><g id="elem_C_0001429228322470114409"><rect codeLine="130" fill="#F1F1F1" height="322.9508" id="C_0001429228322470114409" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="456" x="2730" y="1556.28"/><ellipse cx="2879.75" cy="1572.28" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M2879.2188,1579.2019 Q2877.4688,1579.2019 2876.3281,1578.4675 Q2875.2031,1577.7175 2874.6406,1576.3737 Q2874.0938,1575.0144 2874.0938,1573.2175 Q2874.0938,1571.1862 2874.75,1569.7331 Q2875.4063,1568.28 2876.6875,1567.4987 Q2877.9688,1566.7175 2879.8438,1566.7175 Q2880.7344,1566.7175 2881.4063,1566.905 Q2882.0781,1567.0769 2882.7656,1567.4206 L2881.9531,1569.4362 Q2881.3281,1569.1237 2880.7813,1568.9987 Q2880.25,1568.8737 2879.7656,1568.8737 Q2878.5938,1568.8737 2877.8906,1569.405 Q2877.1875,1569.9362 2876.8906,1570.8894 Q2876.5938,1571.8425 2876.5938,1573.1081 Q2876.5938,1575.1237 2877.3125,1576.0925 Q2878.0313,1577.0456 2879.625,1577.0456 Q2880.2188,1577.0456 2880.8438,1576.8894 Q2881.4688,1576.7331 2882.2969,1576.3581 L2882.2969,1578.5769 Q2881.5625,1578.8894 2880.7656,1579.0456 Q2879.9844,1579.2019 2879.2188,1579.2019 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148" x="2900.25" y="1577.712">TransformComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="2731" x2="3185" y1="1588.28" y2="1588.28"/><ellipse cx="2741" cy="1603.314" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="196" x="2750" y="1607.2459">TransformComponent() : void</text><ellipse cx="2741" cy="1622.3819" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="252" x="2750" y="1626.3139">TransformComponent(int scale) : void</text><ellipse cx="2741" cy="1641.4498" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="286" x="2750" y="1645.3818">TransformComponent(float x, float y) : void</text><ellipse cx="2741" cy="1660.5177" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="350" x="2750" y="1664.4497">TransformComponent(float x, float y, int scale) : void</text><ellipse cx="2741" cy="1679.5856" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="430" x="2750" y="1683.5176">TransformComponent(float x, float y, int w, int h, int scale) : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="2731" x2="3185" y1="1691.6196" y2="1691.6196"/><ellipse cx="2741" cy="1706.6535" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2750" y="1710.5855">init() : void</text><ellipse cx="2741" cy="1725.7215" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="234" x="2750" y="1729.6534">modifySpeed(int8_t modifier) : void</text><ellipse cx="2741" cy="1744.7894" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="2750" y="1748.7214">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="2731" x2="3185" y1="1756.8233" y2="1756.8233"/><ellipse cx="2741" cy="1771.8573" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132" x="2750" y="1775.7893">direction : Vector2D</text><ellipse cx="2741" cy="1790.9252" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="74" x="2750" y="1794.8572">height : int</text><ellipse cx="2741" cy="1809.9931" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="126" x="2750" y="1813.9251">position : Vector2D</text><ellipse cx="2741" cy="1829.061" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="64" x="2750" y="1832.993">scale : int</text><ellipse cx="2741" cy="1848.129" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="71" x="2750" y="1852.0609">speed : int</text><ellipse cx="2741" cy="1867.1969" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68" x="2750" y="1871.1289">width : int</text></g><!--class C_0001147223784469041543--><g id="elem_C_0001147223784469041543"><rect codeLine="149" fill="#F1F1F1" height="143.3396" id="C_0001147223784469041543" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="434" x="7" y="182.61"/><ellipse cx="185.25" cy="198.61" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M184.7188,205.5319 Q182.9688,205.5319 181.8281,204.7975 Q180.7031,204.0475 180.1406,202.7037 Q179.5938,201.3444 179.5938,199.5475 Q179.5938,197.5162 180.25,196.0631 Q180.9063,194.61 182.1875,193.8287 Q183.4688,193.0475 185.3438,193.0475 Q186.2344,193.0475 186.9063,193.235 Q187.5781,193.4069 188.2656,193.7506 L187.4531,195.7662 Q186.8281,195.4537 186.2813,195.3287 Q185.75,195.2037 185.2656,195.2037 Q184.0938,195.2037 183.3906,195.735 Q182.6875,196.2662 182.3906,197.2194 Q182.0938,198.1725 182.0938,199.4381 Q182.0938,201.4537 182.8125,202.4225 Q183.5313,203.3756 185.125,203.3756 Q185.7188,203.3756 186.3438,203.2194 Q186.9688,203.0631 187.7969,202.6881 L187.7969,204.9069 Q187.0625,205.2194 186.2656,205.3756 Q185.4844,205.5319 184.7188,205.5319 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69" x="205.75" y="204.042">Animation</text><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="440" y1="214.61" y2="214.61"/><ellipse cx="18" cy="229.644" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="117" x="27" y="233.5759">Animation() : void</text><ellipse cx="18" cy="248.7119" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="408" x="27" y="252.6439">Animation(uint8_t index, uint8_t frames, uint8_t speed) : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="8" x2="440" y1="260.7458" y2="260.7458"/><ellipse cx="18" cy="275.7798" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="105" x="27" y="279.7118">frames : uint8_t</text><ellipse cx="18" cy="294.8477" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="95" x="27" y="298.7797">index : uint8_t</text><ellipse cx="18" cy="313.9156" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="27" y="317.8476">speed : uint8_t</text></g><!--class C_0001201714159869047109--><g id="elem_C_0001201714159869047109"><rect codeLine="158" fill="#F1F1F1" height="86.1358" id="C_0001201714159869047109" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="133" x="2280.5" y="1674.69"/><ellipse cx="2295.5" cy="1690.69" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M2291.8594,1697.19 L2291.8594,1685.0494 L2299.5156,1685.0494 L2299.5156,1687.1744 L2294.2344,1687.1744 L2294.2344,1689.8306 L2299.25,1689.8306 L2299.25,1691.9556 L2294.2344,1691.9556 L2294.2344,1695.065 L2299.5156,1695.065 L2299.5156,1697.19 L2291.8594,1697.19 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="101" x="2309.5" y="1696.122">AnimationType</text><line style="stroke:#181818;stroke-width:0.5;" x1="2281.5" x2="2412.5" y1="1706.69" y2="1706.69"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="30" x="2286.5" y="1725.6559">IDLE</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38" x="2286.5" y="1744.7239">WALK</text><line style="stroke:#181818;stroke-width:0.5;" x1="2281.5" x2="2412.5" y1="1752.8258" y2="1752.8258"/></g><!--class C_0000091676871265646263--><g id="elem_C_0000091676871265646263"><rect codeLine="163" fill="#F1F1F1" height="86.1358" id="C_0000091676871265646263" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="93" x="1733.5" y="1674.69"/><ellipse cx="1748.5" cy="1690.69" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1744.8594,1697.19 L1744.8594,1685.0494 L1752.5156,1685.0494 L1752.5156,1687.1744 L1747.2344,1687.1744 L1747.2344,1689.8306 L1752.25,1689.8306 L1752.25,1691.9556 L1747.2344,1691.9556 L1747.2344,1695.065 L1752.5156,1695.065 L1752.5156,1697.19 L1744.8594,1697.19 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="61" x="1762.5" y="1696.122">Direction</text><line style="stroke:#181818;stroke-width:0.5;" x1="1734.5" x2="1825.5" y1="1706.69" y2="1706.69"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="30" x="1739.5" y="1725.6559">LEFT</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="42" x="1739.5" y="1744.7239">RIGHT</text><line style="stroke:#181818;stroke-width:0.5;" x1="1734.5" x2="1825.5" y1="1752.8258" y2="1752.8258"/></g><!--class C_0001766701978510483488--><g id="elem_C_0001766701978510483488"><rect codeLine="168" fill="#F1F1F1" height="437.3583" id="C_0001766701978510483488" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="481" x="2106.5" y="1039.86"/><ellipse cx="2283.75" cy="1055.86" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M2283.2188,1062.7819 Q2281.4688,1062.7819 2280.3281,1062.0475 Q2279.2031,1061.2975 2278.6406,1059.9538 Q2278.0938,1058.5944 2278.0938,1056.7975 Q2278.0938,1054.7663 2278.75,1053.3131 Q2279.4063,1051.86 2280.6875,1051.0788 Q2281.9688,1050.2975 2283.8438,1050.2975 Q2284.7344,1050.2975 2285.4063,1050.485 Q2286.0781,1050.6569 2286.7656,1051.0006 L2285.9531,1053.0163 Q2285.3281,1052.7038 2284.7813,1052.5788 Q2284.25,1052.4538 2283.7656,1052.4538 Q2282.5938,1052.4538 2281.8906,1052.985 Q2281.1875,1053.5163 2280.8906,1054.4694 Q2280.5938,1055.4225 2280.5938,1056.6881 Q2280.5938,1058.7038 2281.3125,1059.6725 Q2282.0313,1060.6256 2283.625,1060.6256 Q2284.2188,1060.6256 2284.8438,1060.4694 Q2285.4688,1060.3131 2286.2969,1059.9381 L2286.2969,1062.1569 Q2285.5625,1062.4694 2284.7656,1062.6256 Q2283.9844,1062.7819 2283.2188,1062.7819 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="118" x="2304.25" y="1061.292">SpriteComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="2107.5" x2="2586.5" y1="1071.86" y2="1071.86"/><ellipse cx="2117.5" cy="1086.894" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="230" x="2126.5" y="1090.8259">SpriteComponent() = default : void</text><ellipse cx="2117.5" cy="1105.9619" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="283" x="2126.5" y="1109.8939">SpriteComponent(const char * path) : void</text><ellipse cx="2117.5" cy="1125.0298" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="400" x="2126.5" y="1128.9618">SpriteComponent(const char * path, bool isAnimated) : void</text><ellipse cx="2117.5" cy="1144.0977" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="174" x="2126.5" y="1148.0297">~SpriteComponent() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="2107.5" x2="2586.5" y1="1156.1317" y2="1156.1317"/><ellipse cx="2117.5" cy="1171.1656" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="2126.5" y="1175.0976">draw() : void</text><ellipse cx="2117.5" cy="1190.2335" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2126.5" y="1194.1655">init() : void</text><ellipse cx="2117.5" cy="1209.3015" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="279" x="2126.5" y="1213.2334">playAnimation(AnimationType type) : void</text><ellipse cx="2117.5" cy="1228.3694" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="254" x="2126.5" y="1232.3014">setDirection(Direction direction) : void</text><ellipse cx="2117.5" cy="1247.4373" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="236" x="2126.5" y="1251.3693">setTexture(const char * path) : void</text><ellipse cx="2117.5" cy="1266.5052" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="2126.5" y="1270.4372">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="2107.5" x2="2586.5" y1="1278.5392" y2="1278.5392"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1290.5731"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="105" x="2126.5" y="1297.5051">animated : bool</text><ellipse cx="2117.5" cy="1312.641" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="136" x="2126.5" y="1316.573">animationIndex : int</text><ellipse cx="2117.5" cy="1331.709" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="455" x="2126.5" y="1335.6409">animations : std::map&lt;AnimationType,std::unique_ptr&lt;Animation&gt;&gt;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1347.7769"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="130" x="2126.5" y="1354.7089">destRect : SDL_Rect</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1366.8448"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="89" x="2126.5" y="1373.7768">flipped : bool</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1385.9127"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="105" x="2126.5" y="1392.8447">frames : uint8_t</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1404.9806"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="99" x="2126.5" y="1411.9126">speed : uint8_t</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1424.0485"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="121" x="2126.5" y="1430.9805">srcRect : SDL_Rect</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1443.1165"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="154" x="2126.5" y="1450.0484">texture : SDL_Texture *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2114.5" y="1462.1844"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="2126.5" y="1469.1164">transform : TransformComponent *</text></g><!--class C_0000468525108397834932--><g id="elem_C_0000468525108397834932"><rect codeLine="193" fill="#F1F1F1" height="276.815" id="C_0000468525108397834932" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="458" x="5260" y="1579.35"/><ellipse cx="5454.25" cy="1595.35" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M5453.7188,1602.2719 Q5451.9688,1602.2719 5450.8281,1601.5375 Q5449.7031,1600.7875 5449.1406,1599.4438 Q5448.5938,1598.0844 5448.5938,1596.2875 Q5448.5938,1594.2563 5449.25,1592.8031 Q5449.9063,1591.35 5451.1875,1590.5688 Q5452.4688,1589.7875 5454.3438,1589.7875 Q5455.2344,1589.7875 5455.9063,1589.975 Q5456.5781,1590.1469 5457.2656,1590.4906 L5456.4531,1592.5063 Q5455.8281,1592.1938 5455.2813,1592.0688 Q5454.75,1591.9438 5454.2656,1591.9438 Q5453.0938,1591.9438 5452.3906,1592.475 Q5451.6875,1593.0063 5451.3906,1593.9594 Q5451.0938,1594.9125 5451.0938,1596.1781 Q5451.0938,1598.1938 5451.8125,1599.1625 Q5452.5313,1600.1156 5454.125,1600.1156 Q5454.7188,1600.1156 5455.3438,1599.9594 Q5455.9688,1599.8031 5456.7969,1599.4281 L5456.7969,1601.6469 Q5456.0625,1601.9594 5455.2656,1602.1156 Q5454.4844,1602.2719 5453.7188,1602.2719 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="61" x="5474.75" y="1600.782">Manager</text><line style="stroke:#181818;stroke-width:0.5;" x1="5261" x2="5717" y1="1611.35" y2="1611.35"/><ellipse cx="5271" cy="1626.384" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="136" x="5280" y="1630.3159">addEntity() : Entity &amp;</text><ellipse cx="5271" cy="1645.4519" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="346" x="5280" y="1649.3839">addToGroup(Entity * mEntity, Group mGroup) : void</text><ellipse cx="5271" cy="1664.5198" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="331" x="5280" y="1668.4518">addToTeam(Entity * mEntity, Team mTeam) : void</text><ellipse cx="5271" cy="1683.5877" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="5280" y="1687.5197">draw() : void</text><ellipse cx="5271" cy="1702.6556" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="195" x="5280" y="1706.5876">getAll() : std::vector&lt;Entity *&gt;</text><ellipse cx="5271" cy="1721.7235" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="335" x="5280" y="1725.6555">getGroup(Group mGroup) : std::vector&lt;Entity *&gt; &amp;</text><ellipse cx="5271" cy="1740.7915" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="320" x="5280" y="1744.7234">getTeam(Team mTeam) : std::vector&lt;Entity *&gt; &amp;</text><ellipse cx="5271" cy="1759.8594" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97" x="5280" y="1763.7914">refresh() : void</text><ellipse cx="5271" cy="1778.9273" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="5280" y="1782.8593">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="5261" x2="5717" y1="1790.9613" y2="1790.9613"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5268" y="1802.9952"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="305" x="5280" y="1809.9272">entities : std::vector&lt;std::unique_ptr&lt;Entity&gt;&gt;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5268" y="1822.0631"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="432" x="5280" y="1828.9951">entitiesByGroup : std::array&lt;std::vector&lt;Entity *&gt;,MAX_GROUPS&gt;</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5268" y="1841.131"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="417" x="5280" y="1848.063">entitiesByTeam : std::array&lt;std::vector&lt;Entity *&gt;,MAX_TEAMS&gt;</text></g><!--class C_0001227853956509181715--><g id="elem_C_0001227853956509181715"><rect codeLine="209" fill="#F1F1F1" height="170.4075" id="C_0001227853956509181715" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="750" x="5010" y="675.97"/><ellipse cx="5324.75" cy="691.97" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M5324.2188,698.8919 Q5322.4688,698.8919 5321.3281,698.1575 Q5320.2031,697.4075 5319.6406,696.0637 Q5319.0938,694.7044 5319.0938,692.9075 Q5319.0938,690.8762 5319.75,689.4231 Q5320.4063,687.97 5321.6875,687.1887 Q5322.9688,686.4075 5324.8438,686.4075 Q5325.7344,686.4075 5326.4063,686.595 Q5327.0781,686.7669 5327.7656,687.1106 L5326.9531,689.1262 Q5326.3281,688.8137 5325.7813,688.6887 Q5325.25,688.5637 5324.7656,688.5637 Q5323.5938,688.5637 5322.8906,689.095 Q5322.1875,689.6262 5321.8906,690.5794 Q5321.5938,691.5325 5321.5938,692.7981 Q5321.5938,694.8137 5322.3125,695.7825 Q5323.0313,696.7356 5324.625,696.7356 Q5325.2188,696.7356 5325.8438,696.5794 Q5326.4688,696.4231 5327.2969,696.0481 L5327.2969,698.2669 Q5326.5625,698.5794 5325.7656,698.7356 Q5324.9844,698.8919 5324.2188,698.8919 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="112" x="5345.25" y="697.402">TextureManager</text><line style="stroke:#181818;stroke-width:0.5;" x1="5011" x2="5759" y1="707.97" y2="707.97"/><ellipse cx="5021" cy="723.004" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="160" x="5030" y="726.9359">TextureManager() : void</text><ellipse cx="5021" cy="742.0719" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="168" x="5030" y="746.0039">~TextureManager() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="5011" x2="5759" y1="754.1058" y2="754.1058"/><ellipse cx="5021" cy="769.1398" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="558" x="5030" y="773.0718">draw(SDL_Texture * texture, SDL_Rect src, SDL_Rect dest, bool flipped = false) : void</text><ellipse cx="5021" cy="788.2077" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="341" x="5030" y="792.1397">loadTexture(const char * fileName) : SDL_Texture *</text><ellipse cx="5021" cy="807.2756" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="724" x="5030" y="811.2076">splitSpriteSheet(SDL_Texture * spriteSheet, int width, int height, int spritesOnSheet) : std::vector&lt;SDL_Rect&gt;</text><line style="stroke:#181818;stroke-width:0.5;" x1="5011" x2="5759" y1="819.3096" y2="819.3096"/><ellipse cx="5021" cy="834.3435" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="347" x="5030" y="838.2755">texture_cache : std::map&lt;std::string,SDL_Texture *&gt;</text></g><!--class C_0001388654481423205998--><g id="elem_C_0001388654481423205998"><rect codeLine="220" fill="#F1F1F1" height="86.1358" id="C_0001388654481423205998" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="114" x="7398" y="1215.47"/><ellipse cx="7413" cy="1231.47" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M7409.3594,1237.97 L7409.3594,1225.8294 L7417.0156,1225.8294 L7417.0156,1227.9544 L7411.7344,1227.9544 L7411.7344,1230.6106 L7416.75,1230.6106 L7416.75,1232.7356 L7411.7344,1232.7356 L7411.7344,1235.845 L7417.0156,1235.845 L7417.0156,1237.97 L7409.3594,1237.97 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="7427" y="1236.902">SoundTypes</text><line style="stroke:#181818;stroke-width:0.5;" x1="7399" x2="7511" y1="1247.47" y2="1247.47"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="40" x="7404" y="1266.4359">STEPS</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="85" x="7404" y="1285.5039">THROW_EGG</text><line style="stroke:#181818;stroke-width:0.5;" x1="7399" x2="7511" y1="1293.6058" y2="1293.6058"/></g><!--class C_0000097068545402388245--><g id="elem_C_0000097068545402388245"><rect codeLine="225" fill="#F1F1F1" height="197.4754" id="C_0000097068545402388245" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="403" x="7253.5" y="662.44"/><ellipse cx="7398.75" cy="678.44" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M7398.2188,685.3619 Q7396.4688,685.3619 7395.3281,684.6275 Q7394.2031,683.8775 7393.6406,682.5337 Q7393.0938,681.1744 7393.0938,679.3775 Q7393.0938,677.3462 7393.75,675.8931 Q7394.4063,674.44 7395.6875,673.6587 Q7396.9688,672.8775 7398.8438,672.8775 Q7399.7344,672.8775 7400.4063,673.065 Q7401.0781,673.2369 7401.7656,673.5806 L7400.9531,675.5962 Q7400.3281,675.2837 7399.7813,675.1587 Q7399.25,675.0337 7398.7656,675.0337 Q7397.5938,675.0337 7396.8906,675.565 Q7396.1875,676.0962 7395.8906,677.0494 Q7395.5938,678.0025 7395.5938,679.2681 Q7395.5938,681.2837 7396.3125,682.2525 Q7397.0313,683.2056 7398.625,683.2056 Q7399.2188,683.2056 7399.8438,683.0494 Q7400.4688,682.8931 7401.2969,682.5181 L7401.2969,684.7369 Q7400.5625,685.0494 7399.7656,685.2056 Q7398.9844,685.3619 7398.2188,685.3619 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="7419.25" y="683.872">SoundManager</text><line style="stroke:#181818;stroke-width:0.5;" x1="7254.5" x2="7655.5" y1="694.44" y2="694.44"/><ellipse cx="7264.5" cy="709.474" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="152" x="7273.5" y="713.4059">SoundManager() : void</text><ellipse cx="7264.5" cy="728.5419" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="377" x="7273.5" y="732.4739">SoundManager(const SoundManager &amp;) = deleted : void</text><ellipse cx="7264.5" cy="747.6098" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="160" x="7273.5" y="751.5418">~SoundManager() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="7254.5" x2="7655.5" y1="759.6438" y2="759.6438"/><ellipse cx="7264.5" cy="774.6777" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="339" x="7273.5" y="778.6097">operator=(const SoundManager &amp;) = deleted : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="7254.5" x2="7655.5" y1="786.7117" y2="786.7117"/><ellipse cx="7264.5" cy="801.7456" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="324" x="7273.5" y="805.6776">loadSound(const char * fileName) : Mix_Chunk *</text><ellipse cx="7264.5" cy="820.8135" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="247" x="7273.5" y="824.7455">playSound(SoundTypes sound) : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="7254.5" x2="7655.5" y1="832.8475" y2="832.8475"/><ellipse cx="7264.5" cy="847.8815" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="345" x="7273.5" y="851.8134">sound_cache : std::map&lt;const char *,Mix_Chunk *&gt;</text></g><!--class C_0000374819858090359957--><g id="elem_C_0000374819858090359957"><rect codeLine="238" fill="#F1F1F1" height="399.2225" id="C_0000374819858090359957" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="1011" x="2305.5" y="561.56"/><ellipse cx="2741.25" cy="577.56" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M2740.7188,584.4819 Q2738.9688,584.4819 2737.8281,583.7475 Q2736.7031,582.9975 2736.1406,581.6538 Q2735.5938,580.2944 2735.5938,578.4975 Q2735.5938,576.4663 2736.25,575.0131 Q2736.9063,573.56 2738.1875,572.7788 Q2739.4688,571.9975 2741.3438,571.9975 Q2742.2344,571.9975 2742.9063,572.185 Q2743.5781,572.3569 2744.2656,572.7006 L2743.4531,574.7163 Q2742.8281,574.4038 2742.2813,574.2788 Q2741.75,574.1538 2741.2656,574.1538 Q2740.0938,574.1538 2739.3906,574.685 Q2738.6875,575.2163 2738.3906,576.1694 Q2738.0938,577.1225 2738.0938,578.3881 Q2738.0938,580.4038 2738.8125,581.3725 Q2739.5313,582.3256 2741.125,582.3256 Q2741.7188,582.3256 2742.3438,582.1694 Q2742.9688,582.0131 2743.7969,581.6381 L2743.7969,583.8569 Q2743.0625,584.1694 2742.2656,584.3256 Q2741.4844,584.4819 2740.7188,584.4819 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="131" x="2761.75" y="582.992">KeyboardController</text><line style="stroke:#181818;stroke-width:0.5;" x1="2306.5" x2="3315.5" y1="593.56" y2="593.56"/><ellipse cx="2316.5" cy="608.594" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="243" x="2325.5" y="612.5259">KeyboardController() = default : void</text><ellipse cx="2316.5" cy="627.6619" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="985" x="2325.5" y="631.5939">KeyboardController(SDL_Scancode up, SDL_Scancode down, SDL_Scancode left, SDL_Scancode right, SDL_Scancode fire, Vector2D fireVelocity) : void</text><ellipse cx="2316.5" cy="646.7298" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="321" x="2325.5" y="650.6618">~KeyboardController() constexpr = default : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="2306.5" x2="3315.5" y1="658.7638" y2="658.7638"/><ellipse cx="2316.5" cy="673.7977" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2325.5" y="677.7297">init() : void</text><ellipse cx="2316.5" cy="692.8656" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="255" x="2325.5" y="696.7976">modifyAtkSpeed(int8_t modifier) : void</text><ellipse cx="2316.5" cy="711.9335" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="2325.5" y="715.8655">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="2306.5" x2="3315.5" y1="723.9675" y2="723.9675"/><ellipse cx="2316.5" cy="739.0015" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144" x="2325.5" y="742.9334">down : SDL_Scancode</text><ellipse cx="2316.5" cy="758.0694" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="130" x="2325.5" y="762.0014">fire : SDL_Scancode</text><ellipse cx="2316.5" cy="777.1373" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="155" x="2325.5" y="781.0693">fireCooldown : uint32_t</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2313.5" y="793.2052"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="146" x="2325.5" y="800.1372">fireVelocity : Vector2D</text><ellipse cx="2316.5" cy="815.2731" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="172" x="2325.5" y="819.2051">keystates : const uint8_t *</text><ellipse cx="2316.5" cy="834.341" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148" x="2325.5" y="838.273">lastFireTime : uint32_t</text><ellipse cx="2316.5" cy="853.409" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="129" x="2325.5" y="857.3409">left : SDL_Scancode</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2313.5" y="869.4769"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="214" x="2325.5" y="876.4089">player : TransformComponent *</text><ellipse cx="2316.5" cy="891.5448" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="140" x="2325.5" y="895.4768">right : SDL_Scancode</text><ellipse cx="2316.5" cy="910.6127" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="181" x="2325.5" y="914.5447">sprite : SpriteComponent *</text><ellipse cx="2316.5" cy="929.6806" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="239" x="2325.5" y="933.6126">transform : TransformComponent *</text><ellipse cx="2316.5" cy="948.7485" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="125" x="2325.5" y="952.6805">up : SDL_Scancode</text></g><!--class C_0000961593874492983039--><g id="elem_C_0000961593874492983039"><rect codeLine="261" fill="#F1F1F1" height="227.6113" id="C_0000961593874492983039" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="479" x="2952.5" y="1144.73"/><ellipse cx="3117.75" cy="1160.73" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M3117.2188,1167.6519 Q3115.4688,1167.6519 3114.3281,1166.9175 Q3113.2031,1166.1675 3112.6406,1164.8238 Q3112.0938,1163.4644 3112.0938,1161.6675 Q3112.0938,1159.6363 3112.75,1158.1831 Q3113.4063,1156.73 3114.6875,1155.9488 Q3115.9688,1155.1675 3117.8438,1155.1675 Q3118.7344,1155.1675 3119.4063,1155.355 Q3120.0781,1155.5269 3120.7656,1155.8706 L3119.9531,1157.8863 Q3119.3281,1157.5738 3118.7813,1157.4488 Q3118.25,1157.3238 3117.7656,1157.3238 Q3116.5938,1157.3238 3115.8906,1157.855 Q3115.1875,1158.3863 3114.8906,1159.3394 Q3114.5938,1160.2925 3114.5938,1161.5581 Q3114.5938,1163.5738 3115.3125,1164.5425 Q3116.0313,1165.4956 3117.625,1165.4956 Q3118.2188,1165.4956 3118.8438,1165.3394 Q3119.4688,1165.1831 3120.2969,1164.8081 L3120.2969,1167.0269 Q3119.5625,1167.3394 3118.7656,1167.4956 Q3117.9844,1167.6519 3117.2188,1167.6519 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="140" x="3138.25" y="1166.162">ProjectileComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="2953.5" x2="3430.5" y1="1176.73" y2="1176.73"/><ellipse cx="2963.5" cy="1191.764" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="453" x="2972.5" y="1195.6959">ProjectileComponent(int range, int speed, Vector2D direction) : void</text><ellipse cx="2963.5" cy="1210.8319" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="196" x="2972.5" y="1214.7639">~ProjectileComponent() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="2953.5" x2="3430.5" y1="1222.8658" y2="1222.8658"/><ellipse cx="2963.5" cy="1237.8998" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2972.5" y="1241.8318">init() : void</text><ellipse cx="2963.5" cy="1256.9677" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="2972.5" y="1260.8997">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="2953.5" x2="3430.5" y1="1269.0017" y2="1269.0017"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2960.5" y="1281.0356"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132" x="2972.5" y="1287.9676">direction : Vector2D</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2960.5" y="1300.1035"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="87" x="2972.5" y="1307.0355">distance : int</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2960.5" y="1319.1715"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="2972.5" y="1326.1034">range : int</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2960.5" y="1338.2394"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="71" x="2972.5" y="1345.1714">speed : int</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2960.5" y="1357.3073"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="317" x="2972.5" y="1364.2393">transformComponent : TransformComponent *</text></g><!--class C_0001893142151360143598--><g id="elem_C_0001893142151360143598"><rect codeLine="275" fill="#F1F1F1" height="246.6792" id="C_0001893142151360143598" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="362" x="885" y="637.84"/><ellipse cx="1000.75" cy="653.84" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1000.2188,660.7619 Q998.4688,660.7619 997.3281,660.0275 Q996.2031,659.2775 995.6406,657.9337 Q995.0938,656.5744 995.0938,654.7775 Q995.0938,652.7462 995.75,651.2931 Q996.4063,649.84 997.6875,649.0587 Q998.9688,648.2775 1000.8438,648.2775 Q1001.7344,648.2775 1002.4063,648.465 Q1003.0781,648.6369 1003.7656,648.9806 L1002.9531,650.9962 Q1002.3281,650.6837 1001.7813,650.5587 Q1001.25,650.4337 1000.7656,650.4337 Q999.5938,650.4337 998.8906,650.965 Q998.1875,651.4962 997.8906,652.4494 Q997.5938,653.4025 997.5938,654.6681 Q997.5938,656.6837 998.3125,657.6525 Q999.0313,658.6056 1000.625,658.6056 Q1001.2188,658.6056 1001.8438,658.4494 Q1002.4688,658.2931 1003.2969,657.9181 L1003.2969,660.1369 Q1002.5625,660.4494 1001.7656,660.6056 Q1000.9844,660.7619 1000.2188,660.7619 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="122" x="1021.25" y="659.272">HealthComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="886" x2="1246" y1="669.84" y2="669.84"/><ellipse cx="896" cy="684.874" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="336" x="905" y="688.8059">HealthComponent(int health, Direction side) : void</text><ellipse cx="896" cy="703.9419" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="178" x="905" y="707.8739">~HealthComponent() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="886" x2="1246" y1="715.9758" y2="715.9758"/><ellipse cx="896" cy="731.0098" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="241" x="905" y="734.9418">createHeartComponents(int x) : void</text><ellipse cx="896" cy="750.0777" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="104" x="905" y="754.0097">getHealth() : int</text><ellipse cx="896" cy="769.1456" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="905" y="773.0776">init() : void</text><ellipse cx="896" cy="788.2135" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="232" x="905" y="792.1455">modifyHealth(int health = -1) : void</text><ellipse cx="896" cy="807.2815" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="141" x="905" y="811.2134">refreshHearts() : void</text><ellipse cx="896" cy="826.3494" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="177" x="905" y="830.2814">setHealth(int health) : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="886" x2="1246" y1="838.3833" y2="838.3833"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="893" y="850.4173"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="73" x="905" y="857.3493">health : int</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="893" y="869.4852"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="101" x="905" y="876.4172">side : Direction</text></g><!--class C_0002183807537878931005--><g id="elem_C_0002183807537878931005"><rect codeLine="290" fill="#F1F1F1" height="494.5621" id="C_0002183807537878931005" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="580" x="5095" y="7"/><ellipse cx="5361.25" cy="23" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M5360.7188,29.9219 Q5358.9688,29.9219 5357.8281,29.1875 Q5356.7031,28.4375 5356.1406,27.0938 Q5355.5938,25.7344 5355.5938,23.9375 Q5355.5938,21.9063 5356.25,20.4531 Q5356.9063,19 5358.1875,18.2188 Q5359.4688,17.4375 5361.3438,17.4375 Q5362.2344,17.4375 5362.9063,17.625 Q5363.5781,17.7969 5364.2656,18.1406 L5363.4531,20.1563 Q5362.8281,19.8438 5362.2813,19.7188 Q5361.75,19.5938 5361.2656,19.5938 Q5360.0938,19.5938 5359.3906,20.125 Q5358.6875,20.6563 5358.3906,21.6094 Q5358.0938,22.5625 5358.0938,23.8281 Q5358.0938,25.8438 5358.8125,26.8125 Q5359.5313,27.7656 5361.125,27.7656 Q5361.7188,27.7656 5362.3438,27.6094 Q5362.9688,27.4531 5363.7969,27.0781 L5363.7969,29.2969 Q5363.0625,29.6094 5362.2656,29.7656 Q5361.4844,29.9219 5360.7188,29.9219 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="39" x="5381.75" y="28.432">Game</text><line style="stroke:#181818;stroke-width:0.5;" x1="5096" x2="5674" y1="39" y2="39"/><ellipse cx="5106" cy="54.034" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="87" x="5115" y="57.9659">Game() : void</text><ellipse cx="5106" cy="73.1019" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="95" x="5115" y="77.0339">~Game() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="5096" x2="5674" y1="85.1358" y2="85.1358"/><ellipse cx="5106" cy="100.1698" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="287" x="5115" y="104.1018">addTile(unsigned long id, int x, int y) : void</text><ellipse cx="5106" cy="119.2377" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="84" x="5115" y="123.1697">clean() : void</text><ellipse cx="5106" cy="138.3056" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="204" x="5115" y="142.2376">getWinner() const : TeamLabel</text><ellipse cx="5106" cy="157.3735" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="139" x="5115" y="161.3055">handleEvents() : void</text><ellipse cx="5106" cy="176.4415" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="554" x="5115" y="180.3734">init(const char * title, int xpos, int ypos, int width, int height, bool fullscreen) : void</text><ellipse cx="5106" cy="195.5094" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145" x="5115" y="199.4414">refreshPlayers() : void</text><ellipse cx="5106" cy="214.5773" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="94" x="5115" y="218.5093">render() : void</text><ellipse cx="5106" cy="233.6452" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144" x="5115" y="237.5772">running() const : bool</text><ellipse cx="5106" cy="252.7131" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="527" x="5115" y="256.6451">selectCharacters(const char *&amp; playerSprite, const char *&amp; enemySprite) : void</text><rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5103" y="268.781"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="286" x="5115" y="275.713">setWinner(TeamLabel winningTeam) : void</text><ellipse cx="5106" cy="290.849" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="5115" y="294.7809">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="5096" x2="5674" y1="302.8829" y2="302.8829"/><ellipse cx="5106" cy="317.9169" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="163" x="5115" y="321.8489">assets : AssetManager *</text><ellipse cx="5106" cy="336.9848" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="244" x="5115" y="340.9168">collisionHandler : CollisionHandler *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5103" y="353.0527"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82" x="5115" y="359.9847">counter : int</text><ellipse cx="5106" cy="375.1206" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="117" x="5115" y="379.0526">event : SDL_Event</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5103" y="391.1885"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110" x="5115" y="398.1205">isRunning : bool</text><ellipse cx="5106" cy="413.2565" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="178" x="5115" y="417.1884">renderer : SDL_Renderer *</text><ellipse cx="5106" cy="432.3244" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="231" x="5115" y="436.2564">soundManager : SoundManager *</text><ellipse cx="5106" cy="451.3923" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="245" x="5115" y="455.3243">textureManager : TextureManager *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5103" y="467.4602"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="161" x="5115" y="474.3922">window : SDL_Window *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5103" y="486.5281"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="132" x="5115" y="493.4601">winner : TeamLabel</text></g><!--class C_0000514497377252558016--><g id="elem_C_0000514497377252558016"><rect codeLine="318" fill="#F1F1F1" height="124.2717" id="C_0000514497377252558016" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="92" x="476" y="192.15"/><ellipse cx="491" cy="208.15" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M487.3594,214.65 L487.3594,202.5094 L495.0156,202.5094 L495.0156,204.6344 L489.7344,204.6344 L489.7344,207.2906 L494.75,207.2906 L494.75,209.4156 L489.7344,209.4156 L489.7344,212.525 L495.0156,212.525 L495.0156,214.65 L487.3594,214.65 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="60" x="505" y="213.582">direction</text><line style="stroke:#181818;stroke-width:0.5;" x1="477" x2="567" y1="224.15" y2="224.15"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="30" x="482" y="243.1159">LEFT</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="42" x="482" y="262.1839">RIGHT</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="18" x="482" y="281.2518">UP</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="45" x="482" y="300.3197">DOWN</text><line style="stroke:#181818;stroke-width:0.5;" x1="477" x2="567" y1="308.4217" y2="308.4217"/></g><!--class C_0001371359041729234681--><g id="elem_C_0001371359041729234681"><rect codeLine="325" fill="#F1F1F1" height="208.5433" id="C_0001371359041729234681" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="1423" x="5795.5" y="656.9"/><ellipse cx="6447.25" cy="672.9" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M6446.7188,679.8219 Q6444.9688,679.8219 6443.8281,679.0875 Q6442.7031,678.3375 6442.1406,676.9937 Q6441.5938,675.6344 6441.5938,673.8375 Q6441.5938,671.8062 6442.25,670.3531 Q6442.9063,668.9 6444.1875,668.1187 Q6445.4688,667.3375 6447.3438,667.3375 Q6448.2344,667.3375 6448.9063,667.525 Q6449.5781,667.6969 6450.2656,668.0406 L6449.4531,670.0562 Q6448.8281,669.7437 6448.2813,669.6187 Q6447.75,669.4937 6447.2656,669.4937 Q6446.0938,669.4937 6445.3906,670.025 Q6444.6875,670.5562 6444.3906,671.5094 Q6444.0938,672.4625 6444.0938,673.7281 Q6444.0938,675.7437 6444.8125,676.7125 Q6445.5313,677.6656 6447.125,677.6656 Q6447.7188,677.6656 6448.3438,677.5094 Q6448.9688,677.3531 6449.7969,676.9781 L6449.7969,679.1969 Q6449.0625,679.5094 6448.2656,679.6656 Q6447.4844,679.8219 6446.7188,679.8219 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="111" x="6467.75" y="678.332">CollisionHandler</text><line style="stroke:#181818;stroke-width:0.5;" x1="5796.5" x2="7217.5" y1="688.9" y2="688.9"/><ellipse cx="5806.5" cy="703.934" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="312" x="5815.5" y="707.8659">CollisionHandler(Manager &amp; mManager) : void</text><ellipse cx="5806.5" cy="723.0019" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="167" x="5815.5" y="726.9339">~CollisionHandler() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="5796.5" x2="7217.5" y1="735.0358" y2="735.0358"/><ellipse cx="5806.5" cy="750.0698" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="1397" x="5815.5" y="754.0018">getAnyIntersection&lt;T&gt;(Entity * entity, Vector2D posMod = = {}, const std::initializer_list&lt;GroupLabel&gt; &amp; groupLabels = = {}, const std::initializer_list&lt;TeamLabel&gt; &amp; teamLabels = = {}, bool negateTeam = false) : T</text><ellipse cx="5806.5" cy="769.1377" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="1244" x="5815.5" y="773.0697">getColliders(const std::initializer_list&lt;GroupLabel&gt; &amp; groupLabels, const std::initializer_list&lt;TeamLabel&gt; &amp; teamLabels = = {}, bool negateTeam = false) : std::vector&lt;ColliderComponent *&gt;</text><ellipse cx="5806.5" cy="788.2056" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="931" x="5815.5" y="792.1376">getIntersection(Entity * entityA, Entity * entityB, Vector2D posModA = Vector2D(0,0), Vector2D posModB = Vector2D(0,0)) : IntersectionBitSet</text><ellipse cx="5806.5" cy="807.2735" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="647" x="5815.5" y="811.2055">getIntersectionWithBounds(Entity * entity, Vector2D posMod = Vector2D(0,0)) : IntersectionBitSet</text><ellipse cx="5806.5" cy="826.3415" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="5815.5" y="830.2734">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="5796.5" x2="7217.5" y1="838.3754" y2="838.3754"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5803.5" y="850.4094"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148" x="5815.5" y="857.3414">manager : Manager &amp;</text></g><!--class C_0001914182355349531386--><g id="elem_C_0001914182355349531386"><rect codeLine="338" fill="#F1F1F1" height="189.4754" id="C_0001914182355349531386" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="366" x="4096" y="666.44"/><ellipse cx="4206.25" cy="682.44" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M4205.7188,689.3619 Q4203.9688,689.3619 4202.8281,688.6275 Q4201.7031,687.8775 4201.1406,686.5337 Q4200.5938,685.1744 4200.5938,683.3775 Q4200.5938,681.3462 4201.25,679.8931 Q4201.9063,678.44 4203.1875,677.6587 Q4204.4688,676.8775 4206.3438,676.8775 Q4207.2344,676.8775 4207.9063,677.065 Q4208.5781,677.2369 4209.2656,677.5806 L4208.4531,679.5962 Q4207.8281,679.2837 4207.2813,679.1587 Q4206.75,679.0337 4206.2656,679.0337 Q4205.0938,679.0337 4204.3906,679.565 Q4203.6875,680.0962 4203.3906,681.0494 Q4203.0938,682.0025 4203.0938,683.2681 Q4203.0938,685.2837 4203.8125,686.2525 Q4204.5313,687.2056 4206.125,687.2056 Q4206.7188,687.2056 4207.3438,687.0494 Q4207.9688,686.8931 4208.7969,686.5181 L4208.7969,688.7369 Q4208.0625,689.0494 4207.2656,689.2056 Q4206.4844,689.3619 4205.7188,689.3619 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="137" x="4226.75" y="687.872">PowerupComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="4097" x2="4461" y1="698.44" y2="698.44"/><ellipse cx="4107" cy="713.474" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="309" x="4116" y="717.4059">PowerupComponent(PowerupType type) : void</text><ellipse cx="4107" cy="732.5419" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="193" x="4116" y="736.4739">~PowerupComponent() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="4097" x2="4461" y1="744.5758" y2="744.5758"/><ellipse cx="4107" cy="759.6098" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="244" x="4116" y="763.5418">atkSpeedEffect(Entity * player) : void</text><ellipse cx="4107" cy="778.6777" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218" x="4116" y="782.6097">heartEffect(Entity * player) : void</text><ellipse cx="4107" cy="797.7456" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="295" x="4116" y="801.6776">movementSpeedEffect(Entity * player) : void</text><ellipse cx="4107" cy="816.8135" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="4116" y="820.7455">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="4097" x2="4461" y1="828.8475" y2="828.8475"/><rect fill="#F24D5C" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="4104" y="840.8815"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="340" x="4116" y="847.8134">pickupFunc : void (PowerupComponent::*)(Entity *)</text></g><!--class C_0001755605562978095247--><g id="elem_C_0001755605562978095247"><rect codeLine="350" fill="#F1F1F1" height="48" id="C_0001755605562978095247" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="151" x="1648.5" y="737.18"/><ellipse cx="1663.5" cy="753.18" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1662.9688,760.1019 Q1661.2188,760.1019 1660.0781,759.3675 Q1658.9531,758.6175 1658.3906,757.2737 Q1657.8438,755.9144 1657.8438,754.1175 Q1657.8438,752.0862 1658.5,750.6331 Q1659.1563,749.18 1660.4375,748.3987 Q1661.7188,747.6175 1663.5938,747.6175 Q1664.4844,747.6175 1665.1563,747.805 Q1665.8281,747.9769 1666.5156,748.3206 L1665.7031,750.3362 Q1665.0781,750.0237 1664.5313,749.8987 Q1664,749.7737 1663.5156,749.7737 Q1662.3438,749.7737 1661.6406,750.305 Q1660.9375,750.8362 1660.6406,751.7894 Q1660.3438,752.7425 1660.3438,754.0081 Q1660.3438,756.0237 1661.0625,756.9925 Q1661.7813,757.9456 1663.375,757.9456 Q1663.9688,757.9456 1664.5938,757.7894 Q1665.2188,757.6331 1666.0469,757.2581 L1666.0469,759.4769 Q1665.3125,759.7894 1664.5156,759.9456 Q1663.7344,760.1019 1662.9688,760.1019 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="119" x="1677.5" y="758.612">PlayerComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="1649.5" x2="1798.5" y1="769.18" y2="769.18"/><line style="stroke:#181818;stroke-width:0.5;" x1="1649.5" x2="1798.5" y1="777.18" y2="777.18"/></g><!--class C_0000707556056134869304--><g id="elem_C_0000707556056134869304"><rect codeLine="354" fill="#F1F1F1" height="113.2038" id="C_0000707556056134869304" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="379" x="34.5" y="704.57"/><ellipse cx="204.75" cy="720.57" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M204.2188,727.4919 Q202.4688,727.4919 201.3281,726.7575 Q200.2031,726.0075 199.6406,724.6637 Q199.0938,723.3044 199.0938,721.5075 Q199.0938,719.4762 199.75,718.0231 Q200.4063,716.57 201.6875,715.7887 Q202.9688,715.0075 204.8438,715.0075 Q205.7344,715.0075 206.4063,715.195 Q207.0781,715.3669 207.7656,715.7106 L206.9531,717.7262 Q206.3281,717.4137 205.7813,717.2887 Q205.25,717.1637 204.7656,717.1637 Q203.5938,717.1637 202.8906,717.695 Q202.1875,718.2262 201.8906,719.1794 Q201.5938,720.1325 201.5938,721.3981 Q201.5938,723.4137 202.3125,724.3825 Q203.0313,725.3356 204.625,725.3356 Q205.2188,725.3356 205.8438,725.1794 Q206.4688,725.0231 207.2969,724.6481 L207.2969,726.8669 Q206.5625,727.1794 205.7656,727.3356 Q204.9844,727.4919 204.2188,727.4919 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="30" x="225.25" y="726.002">Map</text><line style="stroke:#181818;stroke-width:0.5;" x1="35.5" x2="412.5" y1="736.57" y2="736.57"/><ellipse cx="45.5" cy="751.604" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="142" x="54.5" y="755.5359">Map() = default : void</text><ellipse cx="45.5" cy="770.6719" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="220" x="54.5" y="774.6039">~Map() constexpr = default : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="35.5" x2="412.5" y1="782.7058" y2="782.7058"/><ellipse cx="45.5" cy="797.7398" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" text-decoration="underline" textLength="353" x="54.5" y="801.6718">loadMap(const char * path, int sizeX, int sizeY) : bool</text><line style="stroke:#181818;stroke-width:0.5;" x1="35.5" x2="412.5" y1="809.7738" y2="809.7738"/></g><!--class C_0000141470799245701555--><g id="elem_C_0000141470799245701555"><rect codeLine="362" fill="#F1F1F1" height="86.1358" id="C_0000141470799245701555" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="140" x="1378" y="1215.47"/><ellipse cx="1427.25" cy="1231.47" fill="#EB937F" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1423.6094,1237.97 L1423.6094,1225.8294 L1431.2656,1225.8294 L1431.2656,1227.9544 L1425.9844,1227.9544 L1425.9844,1230.6106 L1431,1230.6106 L1431,1232.7356 L1425.9844,1232.7356 L1425.9844,1235.845 L1431.2656,1235.845 L1431.2656,1237.97 L1423.6094,1237.97 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="33" x="1447.75" y="1236.902">Stats</text><line style="stroke:#181818;stroke-width:0.5;" x1="1379" x2="1517" y1="1247.47" y2="1247.47"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="128" x="1384" y="1266.4359">MOVEMENT_SPEED</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="100" x="1384" y="1285.5039">ATTACK_SPEED</text><line style="stroke:#181818;stroke-width:0.5;" x1="1379" x2="1517" y1="1293.6058" y2="1293.6058"/></g><!--class C_0000120019506474428209--><g id="elem_C_0000120019506474428209"><rect codeLine="367" fill="#F1F1F1" height="189.4754" id="C_0000120019506474428209" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="332" x="1282" y="666.44"/><ellipse cx="1369.25" cy="682.44" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M1368.7188,689.3619 Q1366.9688,689.3619 1365.8281,688.6275 Q1364.7031,687.8775 1364.1406,686.5337 Q1363.5938,685.1744 1363.5938,683.3775 Q1363.5938,681.3462 1364.25,679.8931 Q1364.9063,678.44 1366.1875,677.6587 Q1367.4688,676.8775 1369.3438,676.8775 Q1370.2344,676.8775 1370.9063,677.065 Q1371.5781,677.2369 1372.2656,677.5806 L1371.4531,679.5962 Q1370.8281,679.2837 1370.2813,679.1587 Q1369.75,679.0337 1369.2656,679.0337 Q1368.0938,679.0337 1367.3906,679.565 Q1366.6875,680.0962 1366.3906,681.0494 Q1366.0938,682.0025 1366.0938,683.2681 Q1366.0938,685.2837 1366.8125,686.2525 Q1367.5313,687.2056 1369.125,687.2056 Q1369.7188,687.2056 1370.3438,687.0494 Q1370.9688,686.8931 1371.7969,686.5181 L1371.7969,688.7369 Q1371.0625,689.0494 1370.2656,689.2056 Q1369.4844,689.3619 1368.7188,689.3619 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="149" x="1389.75" y="687.872">StatEffectsComponent</text><line style="stroke:#181818;stroke-width:0.5;" x1="1283" x2="1613" y1="698.44" y2="698.44"/><ellipse cx="1293" cy="713.474" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="197" x="1302" y="717.4059">StatEffectsComponent() : void</text><ellipse cx="1293" cy="732.5419" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="205" x="1302" y="736.4739">~StatEffectsComponent() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="1283" x2="1613" y1="744.5758" y2="744.5758"/><ellipse cx="1293" cy="759.6098" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70" x="1302" y="763.5418">init() : void</text><ellipse cx="1293" cy="778.6777" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="295" x="1302" y="782.6097">modifyStatDur(Stats stat, int duration) : void</text><ellipse cx="1293" cy="797.7456" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="306" x="1302" y="801.6776">modifyStatValue(Stats stat, int modifier) : void</text><ellipse cx="1293" cy="816.8135" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="1302" y="820.7455">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="1283" x2="1613" y1="828.8475" y2="828.8475"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="1290" y="840.8815"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="226" x="1302" y="847.8134">buffs : std::array&lt;int,MAX_STATS&gt;</text></g><!--class C_0000895758867105780473--><g id="elem_C_0000895758867105780473"><rect codeLine="379" fill="#F1F1F1" height="246.6792" id="C_0000895758867105780473" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="478" x="5868" y="1135.19"/><ellipse cx="6054.25" cy="1151.19" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M6053.7188,1158.1119 Q6051.9688,1158.1119 6050.8281,1157.3775 Q6049.7031,1156.6275 6049.1406,1155.2837 Q6048.5938,1153.9244 6048.5938,1152.1275 Q6048.5938,1150.0962 6049.25,1148.6431 Q6049.9063,1147.19 6051.1875,1146.4087 Q6052.4688,1145.6275 6054.3438,1145.6275 Q6055.2344,1145.6275 6055.9063,1145.815 Q6056.5781,1145.9869 6057.2656,1146.3306 L6056.4531,1148.3462 Q6055.8281,1148.0337 6055.2813,1147.9087 Q6054.75,1147.7837 6054.2656,1147.7837 Q6053.0938,1147.7837 6052.3906,1148.315 Q6051.6875,1148.8462 6051.3906,1149.7994 Q6051.0938,1150.7525 6051.0938,1152.0181 Q6051.0938,1154.0337 6051.8125,1155.0025 Q6052.5313,1155.9556 6054.125,1155.9556 Q6054.7188,1155.9556 6055.3438,1155.7994 Q6055.9688,1155.6431 6056.7969,1155.2681 L6056.7969,1157.4869 Q6056.0625,1157.7994 6055.2656,1157.9556 Q6054.4844,1158.1119 6053.7188,1158.1119 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97" x="6074.75" y="1156.622">PopupWindow</text><line style="stroke:#181818;stroke-width:0.5;" x1="5869" x2="6345" y1="1167.19" y2="1167.19"/><ellipse cx="5879" cy="1182.224" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="452" x="5888" y="1186.1559">PopupWindow(const char * title, const std::string &amp; message) : void</text><ellipse cx="5879" cy="1201.2919" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="153" x="5888" y="1205.2239">~PopupWindow() : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="5869" x2="6345" y1="1213.3258" y2="1213.3258"/><ellipse cx="5879" cy="1228.3598" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="188" x="5888" y="1232.2918">handleWinnerEvents() : void</text><ellipse cx="5879" cy="1247.4277" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="310" x="5888" y="1251.3597">renderWinnerPopup(TeamLabel winner) : void</text><ellipse cx="5879" cy="1266.4956" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="196" x="5888" y="1270.4276">shouldContinue() const : bool</text><line style="stroke:#181818;stroke-width:0.5;" x1="5869" x2="6345" y1="1278.5296" y2="1278.5296"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5876" y="1290.5635"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="139" x="5888" y="1297.4955">continueGame : bool</text><ellipse cx="5879" cy="1312.6315" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110" x="5888" y="1316.5634">interacted : bool</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5876" y="1328.6994"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="178" x="5888" y="1335.6314">renderer : SDL_Renderer *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5876" y="1347.7673"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="154" x="5888" y="1354.6993">texture : SDL_Texture *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5876" y="1366.8352"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="161" x="5888" y="1373.7672">window : SDL_Window *</text></g><!--class C_0001894333838982226786--><g id="elem_C_0001894333838982226786"><rect codeLine="394" fill="#F1F1F1" height="227.6113" id="C_0001894333838982226786" rx="2.5" ry="2.5" style="stroke:#181818;stroke-width:0.5;" width="402" x="448" y="647.37"/><ellipse cx="603.25" cy="663.37" fill="#ADD1B2" rx="11" ry="11" style="stroke:#181818;stroke-width:1.0;"/><path d="M602.7188,670.2919 Q600.9688,670.2919 599.8281,669.5575 Q598.7031,668.8075 598.1406,667.4637 Q597.5938,666.1044 597.5938,664.3075 Q597.5938,662.2762 598.25,660.8231 Q598.9063,659.37 600.1875,658.5887 Q601.4688,657.8075 603.3438,657.8075 Q604.2344,657.8075 604.9063,657.995 Q605.5781,658.1669 606.2656,658.5106 L605.4531,660.5262 Q604.8281,660.2137 604.2813,660.0887 Q603.75,659.9637 603.2656,659.9637 Q602.0938,659.9637 601.3906,660.495 Q600.6875,661.0262 600.3906,661.9794 Q600.0938,662.9325 600.0938,664.1981 Q600.0938,666.2137 600.8125,667.1825 Q601.5313,668.1356 603.125,668.1356 Q603.7188,668.1356 604.3438,667.9794 Q604.9688,667.8231 605.7969,667.4481 L605.7969,669.6669 Q605.0625,669.9794 604.2656,670.1356 Q603.4844,670.2919 602.7188,670.2919 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="83" x="623.75" y="668.802">GameObject</text><line style="stroke:#181818;stroke-width:0.5;" x1="449" x2="849" y1="679.37" y2="679.37"/><ellipse cx="459" cy="694.404" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="376" x="468" y="698.3359">GameObject(const char * texturesheet, int x, int y) : void</text><ellipse cx="459" cy="713.4719" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="273" x="468" y="717.4039">~GameObject() constexpr = default : void</text><line style="stroke:#181818;stroke-width:1.0;stroke-dasharray:1.0,2.0;" x1="449" x2="849" y1="725.5058" y2="725.5058"/><ellipse cx="459" cy="740.5398" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="94" x="468" y="744.4718">render() : void</text><ellipse cx="459" cy="759.6077" fill="#84BE84" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="96" x="468" y="763.5397">update() : void</text><line style="stroke:#181818;stroke-width:0.5;" x1="449" x2="849" y1="771.6417" y2="771.6417"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="456" y="783.6756"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="130" x="468" y="790.6076">destRect : SDL_Rect</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="456" y="802.7435"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="178" x="468" y="809.6755">objTexture : SDL_Texture *</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="456" y="821.8115"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="121" x="468" y="828.7434">srcRect : SDL_Rect</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="456" y="840.8794"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="60" x="468" y="847.8114">xPos : int</text><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="456" y="859.9473"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="60" x="468" y="866.8793">yPos : int</text></g><!--link C_0001676577582836977709 to C_0000981987201094066299--><g id="link_C_0001676577582836977709_C_0000981987201094066299"><path codeLine="407" d="M2958.34,204.64 C3393.82,204.64 4644.67,204.64 4644.67,204.64 C4644.67,204.64 4644.67,1027.64 4644.67,1027.64 C4644.67,1027.64 5030.97,1027.64 5280.76,1027.64 " fill="none" id="C_0001676577582836977709-to-C_0000981987201094066299" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5286.76,1027.64,5277.76,1023.64,5281.76,1027.64,5277.76,1031.64,5286.76,1027.64" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="4491.05" cy="195.993" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="35" x="4498.05" y="200.537">entity</text></g><!--link C_0002220102923217450675 to C_0002295902238121356725--><g id="link_C_0002220102923217450675_C_0002295902238121356725"><path codeLine="408" d="M3466.23,1391.64 C3362.94,1391.64 3279,1391.64 3279,1391.64 C3279,1391.64 3279,1757.49 3279,1932.89 " fill="none" id="C_0002220102923217450675-to-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="3279,1938.89,3283,1929.89,3279,1933.89,3275,1929.89,3279,1938.89" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0002220102923217450675 to C_0001429228322470114409--><g id="link_C_0002220102923217450675_C_0001429228322470114409"><path codeLine="409" d="M3466.01,1382.64 C3285.31,1382.64 3108.17,1382.64 3108.17,1382.64 C3108.17,1382.64 3108.17,1464.39 3108.17,1550.09 " fill="none" id="C_0002220102923217450675-to-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="3108.17,1556.09,3112.17,1547.09,3108.17,1551.09,3104.17,1547.09,3108.17,1556.09" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="3132.36" cy="1392.993" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="60" x="3139.36" y="1397.537">transform</text></g><!--reverse link C_0001676577582836977709 to C_0002220102923217450675--><g id="link_C_0001676577582836977709_C_0002220102923217450675"><path codeLine="410" d="M2976.36,254.64 C3247.78,254.64 3781.25,254.64 3781.25,254.64 C3781.25,254.64 3781.25,838.61 3781.25,1115.77 " fill="none" id="C_0001676577582836977709-backto-C_0002220102923217450675" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2958.36,254.64,2976.36,260.64,2976.36,248.64,2958.36,254.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000981987201094066299 to C_0000468525108397834932--><g id="link_C_0000981987201094066299_C_0000468525108397834932"><path codeLine="411" d="M5421.67,1496.55 C5421.67,1524.76 5421.67,1546.79 5421.67,1572.95 " fill="none" id="C_0000981987201094066299-to-C_0000468525108397834932" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5421.67,1578.95,5425.67,1569.95,5421.67,1573.95,5417.67,1569.95,5421.67,1578.95" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5356.67" y="1526.103"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="54" x="5366.67" y="1533.647">manager</text></g><!--link C_0000468525108397834932 to C_0000981987201094066299--><g id="link_C_0000468525108397834932_C_0000981987201094066299"><path codeLine="428" d="M5556.33,1579.04 C5556.33,1552.9 5556.33,1530.89 5556.33,1502.7 " fill="none" id="C_0000468525108397834932-to-C_0000981987201094066299" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5556.33,1496.7,5552.33,1505.7,5556.33,1501.7,5560.33,1505.7,5556.33,1496.7" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0000981987201094066299 to C_0000040289789604573007--><g id="link_C_0000981987201094066299_C_0000040289789604573007"><path codeLine="412" d="M5703.2,1439.64 C5752.32,1439.64 5779,1439.64 5779,1439.64 C5779,1439.64 5779,1584.1 5779,1664.79 " fill="none" id="C_0000981987201094066299-backto-C_0000040289789604573007" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="5691.2,1439.64,5697.2,1443.64,5703.2,1439.64,5697.2,1435.64,5691.2,1439.64" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5705" y="1496.673"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="63" x="5715" y="1504.217">teamLabel</text></g><!--link C_0000882083745927038598 to C_0002295902238121356725--><g id="link_C_0000882083745927038598_C_0002295902238121356725"><path codeLine="413" d="M4331.51,1406.64 C3901.49,1406.64 3325.5,1406.64 3325.5,1406.64 C3325.5,1406.64 3325.5,1760.95 3325.5,1933.02 " fill="none" id="C_0000882083745927038598-to-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="3325.5,1939.02,3329.5,1930.02,3325.5,1934.02,3321.5,1930.02,3325.5,1939.02" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000882083745927038598 to C_0000040289789604573007--><g id="link_C_0000882083745927038598_C_0000040289789604573007"><path codeLine="414" d="M4847,1410.6 C4847,1471.12 4847,1526.64 4847,1526.64 C4847,1526.64 5770.75,1526.64 5770.75,1526.64 C5770.75,1526.64 5770.75,1602.21 5770.75,1658.77 " fill="none" id="C_0000882083745927038598-to-C_0000040289789604573007" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5770.75,1664.77,5774.75,1655.77,5770.75,1659.77,5766.75,1655.77,5770.75,1664.77" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000882083745927038598 to C_0000848392056125853220--><g id="link_C_0000882083745927038598_C_0000848392056125853220"><path codeLine="415" d="M4387,1410.81 C4387,1498.41 4387,1597 4387,1658.7 " fill="none" id="C_0000882083745927038598-to-C_0000848392056125853220" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="4387,1664.7,4391,1655.7,4387,1659.7,4383,1655.7,4387,1664.7" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000882083745927038598 to C_0000468525108397834932--><g id="link_C_0000882083745927038598_C_0000468525108397834932"><path codeLine="416" d="M5252.19,1258.64 C5265.74,1258.64 5273.5,1258.64 5273.5,1258.64 C5273.5,1258.64 5273.5,1437.92 5273.5,1573.07 " fill="none" id="C_0000882083745927038598-to-C_0000468525108397834932" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5273.5,1579.07,5277.5,1570.07,5273.5,1574.07,5269.5,1570.07,5273.5,1579.07" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5245.75" y="1415.553"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="27" x="5255.75" y="1423.097">man</text></g><!--link C_0000837529456583288870 to C_0001429228322470114409--><g id="link_C_0000837529456583288870_C_0001429228322470114409"><path codeLine="417" d="M2053,884.97 C2053,1121.77 2053,1615.64 2053,1615.64 C2053,1615.64 2455.53,1615.64 2723.63,1615.64 " fill="none" id="C_0000837529456583288870-to-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2729.63,1615.64,2720.63,1611.64,2724.63,1615.64,2720.63,1619.64,2729.63,1615.64" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="1985" cy="1579.973" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="60" x="1992" y="1584.517">transform</text></g><!--link C_0000837529456583288870 to C_0001766701978510483488--><g id="link_C_0000837529456583288870_C_0001766701978510483488"><path codeLine="418" d="M2153,884.76 C2153,931.65 2153,980.57 2153,1033.65 " fill="none" id="C_0000837529456583288870-to-C_0001766701978510483488" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2153,1039.65,2157,1030.65,2153,1034.65,2149,1030.65,2153,1039.65" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="2111" cy="953.563" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="34" x="2118" y="958.107">sprite</text></g><!--reverse link C_0000837529456583288870 to C_0001242536407190640790--><g id="link_C_0000837529456583288870_C_0001242536407190640790"><path codeLine="419" d="M1917,896.76 C1917,1004.36 1917,1142.2 1917,1215.16 " fill="none" id="C_0000837529456583288870-backto-C_0001242536407190640790" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="1917,884.76,1913,890.76,1917,896.76,1921,890.76,1917,884.76" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="1842" cy="1041.313" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="67" x="1849" y="1045.857">textureDict</text></g><!--reverse link C_0001676577582836977709 to C_0000837529456583288870--><g id="link_C_0001676577582836977709_C_0000837529456583288870"><path codeLine="420" d="M2645.52,322.64 C2415.9,322.64 2017,322.64 2017,322.64 C2017,322.64 2017,507.87 2017,637.56 " fill="none" id="C_0001676577582836977709-backto-C_0000837529456583288870" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2663.52,322.64,2645.52,316.64,2645.52,328.64,2663.52,322.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0001429228322470114409 to C_0002295902238121356725--><g id="link_C_0001429228322470114409_C_0002295902238121356725"><path codeLine="421" d="M3132.67,1891.47 C3132.67,1911.96 3132.67,1920.31 3132.67,1939.07 " fill="none" id="C_0001429228322470114409-backto-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="3132.67,1879.47,3128.67,1885.47,3132.67,1891.47,3136.67,1885.47,3132.67,1879.47" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="3075.67" cy="1900.623" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="49" x="3082.67" y="1905.167">position</text></g><!--reverse link C_0001429228322470114409 to C_0002295902238121356725--><g id="link_C_0001429228322470114409_C_0002295902238121356725"><path codeLine="422" d="M3159.33,1891.47 C3159.33,1911.96 3159.33,1920.31 3159.33,1939.07 " fill="none" id="C_0001429228322470114409-backto-C_0002295902238121356725-1" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="3159.33,1879.47,3155.33,1885.47,3159.33,1891.47,3163.33,1885.47,3159.33,1879.47" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="3098.33" cy="1919.623" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="53" x="3105.33" y="1924.167">direction</text></g><!--reverse link C_0001676577582836977709 to C_0001429228322470114409--><g id="link_C_0001676577582836977709_C_0001429228322470114409"><path codeLine="423" d="M2976.42,279.64 C3163.22,279.64 3443.17,279.64 3443.17,279.64 C3443.17,279.64 3443.17,1568.64 3443.17,1568.64 C3443.17,1568.64 3312.21,1568.64 3186.38,1568.64 " fill="none" id="C_0001676577582836977709-backto-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2958.42,279.64,2976.42,285.64,2976.42,273.64,2958.42,279.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001766701978510483488 to C_0001201714159869047109--><g id="link_C_0001766701978510483488_C_0001201714159869047109"><path codeLine="424" d="M2347,1477.39 C2347,1552.23 2347,1622.61 2347,1668.61 " fill="none" id="C_0001766701978510483488-to-C_0001201714159869047109" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="2347,1674.61,2351,1665.61,2347,1669.61,2343,1665.61,2347,1674.61" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001766701978510483488 to C_0000091676871265646263--><g id="link_C_0001766701978510483488_C_0000091676871265646263"><path codeLine="425" d="M2193.5,1477.47 C2193.5,1596.08 2193.5,1718.64 2193.5,1718.64 C2193.5,1718.64 1940.77,1718.64 1832.63,1718.64 " fill="none" id="C_0001766701978510483488-to-C_0000091676871265646263" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="1826.63,1718.64,1835.63,1722.64,1831.63,1718.64,1835.63,1714.64,1826.63,1718.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001766701978510483488 to C_0001429228322470114409--><g id="link_C_0001766701978510483488_C_0001429228322470114409"><path codeLine="426" d="M2587.81,1444.64 C2689.85,1444.64 2785.63,1444.64 2785.63,1444.64 C2785.63,1444.64 2785.63,1491.15 2785.63,1550.12 " fill="none" id="C_0001766701978510483488-to-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2785.63,1556.12,2789.63,1547.12,2785.63,1551.12,2781.63,1547.12,2785.63,1556.12" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2671.46" y="1432.993"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="60" x="2681.46" y="1440.537">transform</text></g><!--reverse link C_0001676577582836977709 to C_0001766701978510483488--><g id="link_C_0001676577582836977709_C_0001766701978510483488"><path codeLine="427" d="M2645.53,324.64 C2480.06,324.64 2252.5,324.64 2252.5,324.64 C2252.5,324.64 2252.5,763.55 2252.5,1039.58 " fill="none" id="C_0001676577582836977709-backto-C_0001766701978510483488" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2663.53,324.64,2645.53,318.64,2645.53,330.64,2663.53,324.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000097068545402388245 to C_0001388654481423205998--><g id="link_C_0000097068545402388245_C_0001388654481423205998"><path codeLine="429" d="M7455,860.33 C7455,968.44 7455,1130.52 7455,1209.18 " fill="none" id="C_0000097068545402388245-to-C_0001388654481423205998" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="7455,1215.18,7459,1206.18,7455,1210.18,7451,1206.18,7455,1215.18" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000374819858090359957 to C_0001429228322470114409--><g id="link_C_0000374819858090359957_C_0001429228322470114409"><path codeLine="430" d="M2841.25,961.12 C2841.25,1137.76 2841.25,1386.07 2841.25,1550.13 " fill="none" id="C_0000374819858090359957-to-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2841.25,1556.13,2845.25,1547.13,2841.25,1551.13,2837.25,1547.13,2841.25,1556.13" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="2773.25" cy="1249.973" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="60" x="2780.25" y="1254.517">transform</text></g><!--link C_0000374819858090359957 to C_0001429228322470114409--><g id="link_C_0000374819858090359957_C_0001429228322470114409"><path codeLine="432" d="M2896.88,961.12 C2896.88,1137.76 2896.88,1386.07 2896.88,1550.13 " fill="none" id="C_0000374819858090359957-to-C_0001429228322470114409-1" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2896.88,1556.13,2900.88,1547.13,2896.88,1551.13,2892.88,1547.13,2896.88,1556.13" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2848.88" y="1246.973"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="37" x="2858.88" y="1254.517">player</text></g><!--link C_0000374819858090359957 to C_0001766701978510483488--><g id="link_C_0000374819858090359957_C_0001766701978510483488"><path codeLine="431" d="M2446.5,960.96 C2446.5,986.76 2446.5,1007.28 2446.5,1033.37 " fill="none" id="C_0000374819858090359957-to-C_0001766701978510483488" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="2446.5,1039.37,2450.5,1030.37,2446.5,1034.37,2442.5,1030.37,2446.5,1039.37" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="2404.5" cy="991.513" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="34" x="2411.5" y="996.057">sprite</text></g><!--reverse link C_0000374819858090359957 to C_0002295902238121356725--><g id="link_C_0000374819858090359957_C_0002295902238121356725"><path codeLine="433" d="M2658.75,972.96 C2658.75,1330.01 2658.75,2028.64 2658.75,2028.64 C2658.75,2028.64 2934.18,2028.64 3105.51,2028.64 " fill="none" id="C_0000374819858090359957-backto-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2658.75,960.96,2654.75,966.96,2658.75,972.96,2662.75,966.96,2658.75,960.96" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2581.75" y="1706.533"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="66" x="2591.75" y="1714.077">fireVelocity</text></g><!--reverse link C_0001676577582836977709 to C_0000374819858090359957--><g id="link_C_0001676577582836977709_C_0000374819858090359957"><path codeLine="434" d="M2811,348.45 C2811,409.52 2811,480.13 2811,561.11 " fill="none" id="C_0001676577582836977709-backto-C_0000374819858090359957" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2811,330.45,2805,348.45,2817,348.45,2811,330.45" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000961593874492983039 to C_0001429228322470114409--><g id="link_C_0000961593874492983039_C_0001429228322470114409"><path codeLine="435" d="M3030.33,1372.64 C3030.33,1428.02 3030.33,1489.53 3030.33,1550.11 " fill="none" id="C_0000961593874492983039-to-C_0001429228322470114409" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="3030.33,1556.11,3034.33,1547.11,3030.33,1551.11,3026.33,1547.11,3030.33,1556.11" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="2887.33" y="1452.723"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="132" x="2897.33" y="1460.267">transformComponent</text></g><!--reverse link C_0000961593874492983039 to C_0002295902238121356725--><g id="link_C_0000961593874492983039_C_0002295902238121356725"><path codeLine="436" d="M3232.5,1384.55 C3232.5,1538.7 3232.5,1798.4 3232.5,1938.82 " fill="none" id="C_0000961593874492983039-backto-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="3232.5,1372.55,3228.5,1378.55,3232.5,1384.55,3236.5,1378.55,3232.5,1372.55" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="3235.5" y="1644.033"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="53" x="3245.5" y="1651.577">direction</text></g><!--reverse link C_0001676577582836977709 to C_0000961593874492983039--><g id="link_C_0001676577582836977709_C_0000961593874492983039"><path codeLine="437" d="M2976.19,305.64 C3143,305.64 3374,305.64 3374,305.64 C3374,305.64 3374,891.61 3374,1144.54 " fill="none" id="C_0001676577582836977709-backto-C_0000961593874492983039" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2958.19,305.64,2976.19,311.64,2976.19,299.64,2958.19,305.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0001893142151360143598 to C_0000091676871265646263--><g id="link_C_0001893142151360143598_C_0000091676871265646263"><path codeLine="438" d="M1066,896.88 C1066,1155.71 1066,1718.64 1066,1718.64 C1066,1718.64 1574.31,1718.64 1733.15,1718.64 " fill="none" id="C_0001893142151360143598-backto-C_0000091676871265646263" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="1066,884.88,1062,890.88,1066,896.88,1070,890.88,1066,884.88" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="1031" y="1623.683"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="24" x="1041" y="1631.227">side</text></g><!--reverse link C_0001676577582836977709 to C_0001893142151360143598--><g id="link_C_0001676577582836977709_C_0001893142151360143598"><path codeLine="439" d="M2645.73,254.64 C2225.03,254.64 1066,254.64 1066,254.64 C1066,254.64 1066,487.64 1066,637.59 " fill="none" id="C_0001676577582836977709-backto-C_0001893142151360143598" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2663.73,254.64,2645.73,248.64,2645.73,260.64,2663.73,254.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0002183807537878931005 to C_0000040289789604573007--><g id="link_C_0002183807537878931005_C_0000040289789604573007"><path codeLine="440" d="M5687.47,337.64 C5750.77,337.64 5787.25,337.64 5787.25,337.64 C5787.25,337.64 5787.25,1412.06 5787.25,1664.92 " fill="none" id="C_0002183807537878931005-backto-C_0000040289789604573007" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="5675.47,337.64,5681.47,341.64,5687.47,337.64,5681.47,333.64,5675.47,337.64" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5735.25" y="933.743"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="41" x="5745.25" y="941.287">winner</text></g><!--link C_0002183807537878931005 to C_0001371359041729234681--><g id="link_C_0002183807537878931005_C_0001371359041729234681"><path codeLine="441" d="M5481.67,501.83 C5481.67,587.59 5481.67,662.64 5481.67,662.64 C5481.67,662.64 5614.09,662.64 5789.22,662.64 " fill="none" id="C_0002183807537878931005-to-C_0001371359041729234681" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5795.22,662.64,5786.22,658.64,5790.22,662.64,5786.22,666.64,5795.22,662.64" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="5454.04" cy="653.993" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="96" x="5461.04" y="658.537">collisionHandler</text></g><!--link C_0002183807537878931005 to C_0000882083745927038598--><g id="link_C_0002183807537878931005_C_0000882083745927038598"><path codeLine="442" d="M5094.73,416.64 C4959.23,416.64 4827.33,416.64 4827.33,416.64 C4827.33,416.64 4827.33,858.06 4827.33,1100.56 " fill="none" id="C_0002183807537878931005-to-C_0000882083745927038598" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="4827.33,1106.56,4831.33,1097.56,4827.33,1101.56,4823.33,1097.56,4827.33,1106.56" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="4782.33" cy="619.253" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="37" x="4789.33" y="623.797">assets</text></g><!--link C_0002183807537878931005 to C_0001227853956509181715--><g id="link_C_0002183807537878931005_C_0001227853956509181715"><path codeLine="443" d="M5288.33,501.79 C5288.33,564.37 5288.33,621.43 5288.33,669.7 " fill="none" id="C_0002183807537878931005-to-C_0001227853956509181715" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5288.33,675.7,5292.33,666.7,5288.33,670.7,5284.33,666.7,5288.33,675.7" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="5182.33" cy="580.093" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="98" x="5189.33" y="584.637">textureManager</text></g><!--link C_0002183807537878931005 to C_0000097068545402388245--><g id="link_C_0002183807537878931005_C_0000097068545402388245"><path codeLine="444" d="M5675.28,172.64 C6245.08,172.64 7455,172.64 7455,172.64 C7455,172.64 7455,488.28 7455,656 " fill="none" id="C_0002183807537878931005-to-C_0000097068545402388245" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="7455,662,7459,653,7455,657,7451,653,7455,662" style="stroke:#181818;stroke-width:1.0;"/><ellipse cx="6709.82" cy="163.993" fill="none" rx="3" ry="3" style="stroke:#038048;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="92" x="6716.82" y="168.537">soundManager</text></g><!--link C_0001371359041729234681 to C_0000981987201094066299--><g id="link_C_0001371359041729234681_C_0000981987201094066299"><path codeLine="445" d="M5813.5,865.57 C5813.5,958.09 5813.5,1078.64 5813.5,1078.64 C5813.5,1078.64 5763.08,1078.64 5697.28,1078.64 " fill="none" id="C_0001371359041729234681-to-C_0000981987201094066299" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5691.28,1078.64,5700.28,1082.64,5696.28,1078.64,5700.28,1074.64,5691.28,1078.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001371359041729234681 to C_0002295902238121356725--><g id="link_C_0001371359041729234681_C_0002295902238121356725"><path codeLine="446" d="M5795.25,858.64 C4893.36,858.64 3454.83,858.64 3454.83,858.64 C3454.83,858.64 3454.83,2028.64 3454.83,2028.64 C3454.83,2028.64 3422.6,2028.64 3378.31,2028.64 " fill="none" id="C_0001371359041729234681-to-C_0002295902238121356725" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="3372.31,2028.64,3381.31,2032.64,3377.31,2028.64,3381.31,2024.64,3372.31,2028.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001371359041729234681 to C_0001933087658996446935--><g id="link_C_0001371359041729234681_C_0001933087658996446935"><path codeLine="447" d="M6507,865.74 C6507,955.07 6507,1076.27 6507,1161.47 " fill="none" id="C_0001371359041729234681-to-C_0001933087658996446935" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="6507,1167.47,6511,1158.47,6507,1162.47,6503,1158.47,6507,1167.47" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001371359041729234681 to C_0000040289789604573007--><g id="link_C_0001371359041729234681_C_0000040289789604573007"><path codeLine="448" d="M5831.5,865.83 C5831.5,1069.44 5831.5,1506.27 5831.5,1658.84 " fill="none" id="C_0001371359041729234681-to-C_0000040289789604573007" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5831.5,1664.84,5835.5,1655.84,5831.5,1659.84,5827.5,1655.84,5831.5,1664.84" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001371359041729234681 to C_0002220102923217450675--><g id="link_C_0001371359041729234681_C_0002220102923217450675"><path codeLine="449" d="M5795.09,861.64 C5104.66,861.64 4160.75,861.64 4160.75,861.64 C4160.75,861.64 4160.75,996.02 4160.75,1109.81 " fill="none" id="C_0001371359041729234681-to-C_0002220102923217450675" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="4160.75,1115.81,4164.75,1106.81,4160.75,1110.81,4156.75,1106.81,4160.75,1115.81" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001371359041729234681 to C_0000468525108397834932--><g id="link_C_0001371359041729234681_C_0000468525108397834932"><path codeLine="450" d="M5795.39,863.64 C5739.71,863.64 5704.5,863.64 5704.5,863.64 C5704.5,863.64 5704.5,1331.22 5704.5,1573.1 " fill="none" id="C_0001371359041729234681-to-C_0000468525108397834932" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="#181818" points="5704.5,1579.1,5708.5,1570.1,5704.5,1574.1,5700.5,1570.1,5704.5,1579.1" style="stroke:#181818;stroke-width:1.0;"/><rect fill="none" height="6" style="stroke:#C82930;stroke-width:1.0;" width="6" x="5707.5" y="1164.283"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="54" x="5717.5" y="1171.827">manager</text></g><!--link C_0001914182355349531386 to C_0000848392056125853220--><g id="link_C_0001914182355349531386_C_0000848392056125853220"><path codeLine="451" d="M4323,856.39 C4323,1055.46 4323,1504.04 4323,1658.93 " fill="none" id="C_0001914182355349531386-to-C_0000848392056125853220" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="4323,1664.93,4327,1655.93,4323,1659.93,4319,1655.93,4323,1664.93" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0001914182355349531386 to C_0000981987201094066299--><g id="link_C_0001914182355349531386_C_0000981987201094066299"><path codeLine="452" d="M4397,856.09 C4397,934.72 4397,1033.64 4397,1033.64 C4397,1033.64 4965.14,1033.64 5280.8,1033.64 " fill="none" id="C_0001914182355349531386-to-C_0000981987201094066299" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5286.8,1033.64,5277.8,1029.64,5281.8,1033.64,5277.8,1037.64,5286.8,1033.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0001676577582836977709 to C_0001914182355349531386--><g id="link_C_0001676577582836977709_C_0001914182355349531386"><path codeLine="453" d="M2976.48,229.64 C3348.74,229.64 4279,229.64 4279,229.64 C4279,229.64 4279,513.26 4279,666.15 " fill="none" id="C_0001676577582836977709-backto-C_0001914182355349531386" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2958.48,229.64,2976.48,235.64,2976.48,223.64,2958.48,229.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0001676577582836977709 to C_0001755605562978095247--><g id="link_C_0001676577582836977709_C_0001755605562978095247"><path codeLine="454" d="M2645.55,320.64 C2348.47,320.64 1724,320.64 1724,320.64 C1724,320.64 1724,644.51 1724,736.86 " fill="none" id="C_0001676577582836977709-backto-C_0001755605562978095247" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2663.55,320.64,2645.55,314.64,2645.55,326.64,2663.55,320.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000120019506474428209 to C_0000141470799245701555--><g id="link_C_0000120019506474428209_C_0000141470799245701555"><path codeLine="455" d="M1448,856.19 C1448,964.04 1448,1129.3 1448,1209.04 " fill="none" id="C_0000120019506474428209-to-C_0000141470799245701555" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="1448,1215.04,1452,1206.04,1448,1210.04,1444,1206.04,1448,1215.04" style="stroke:#181818;stroke-width:1.0;"/></g><!--reverse link C_0001676577582836977709 to C_0000120019506474428209--><g id="link_C_0001676577582836977709_C_0000120019506474428209"><path codeLine="456" d="M2645.52,318.64 C2292.87,318.64 1448,318.64 1448,318.64 C1448,318.64 1448,535.91 1448,665.97 " fill="none" id="C_0001676577582836977709-backto-C_0000120019506474428209" style="stroke:#181818;stroke-width:1.0;"/><polygon fill="none" points="2663.52,318.64,2645.52,312.64,2645.52,324.64,2663.52,318.64" style="stroke:#181818;stroke-width:1.0;"/></g><!--link C_0000895758867105780473 to C_0000040289789604573007--><g id="link_C_0000895758867105780473_C_0000040289789604573007"><path codeLine="457" d="M5867.61,1258.64 C5856.27,1258.64 5849.5,1258.64 5849.5,1258.64 C5849.5,1258.64 5849.5,1538.5 5849.5,1659.09 " fill="none" id="C_0000895758867105780473-to-C_0000040289789604573007" style="stroke:#181818;stroke-width:1.0;stroke-dasharray:7.0,7.0;"/><polygon fill="#181818" points="5849.5,1665.09,5853.5,1656.09,5849.5,1660.09,5845.5,1656.09,5849.5,1665.09" style="stroke:#181818;stroke-width:1.0;"/></g><!--SRC=[jLjRSzks4dxNh-3qmLLYoSFxnUDuHh5LnwTsxB7Kf7toq19aiQ58bQHyQK_osyy2874XG4dkp7beJ6611R0tVBj0osz9jewBU6MaIOQgrpKoyg9QvhrP6fUbyTDPlbhd6SggduouDCxkJTEq_C3tWi0BxT3neo08pAZktKKs_kaT_c2S-k-CMPwL5NfP5yO7OuuMyIQjZ6FZAK_clQEZtk6yY9-XLzroc6H99VpShETnXNZ3_Ntl4DWcrIkqZEd7-zxtPWTVqApA2_kSRy2s8o-2VvtGiYt7ymFR4pUW8UCDD7o4bR2cHPh7bV4oCEZ7wpjnD_aQ5J7qUzydspQIh38EZ0JtQHWO1wJdtwZ8-wrslBiNQ2ASUuUlxFCxLr6Q9dDKQ5HbsxPfcNPaExOLk9xf1wsTAcIyKuLXlV3PCYwCzqOLFt8HxExR26MPL0_vosGMfqWIppBEvYaYVCeap_fyxuH9FAjGSPkN0sDoVdL_1qIHq4mlKvkrDDHEKohGAdyIvjvkPBEQ7RGri-7bbsmy41xoF8L6lbUkkgIyBV8_OL12McbF411yYpA3jYBEoaLUh80oRRwPW8bjesopCdwwAFBD-Yf-GAdWdP7Zc26uO1X5lklwaUFHtbrKqFZrw7PwUJMUz6wlHd-CxoQzyUVnzINyFhkvkheynostTpV_6P_XNhrFuz7T55fklexlVhkTiDLCKRngBSOqNTCEeo2CVDFr0iSq0s4n6YeivlFDvt7luzLluzxT-9nRENLiWNKKMb4OO0EENDFtxKYAGXeoDctAfNyTP_4ZAFB0MDMVaad6ypaJzybqC1qLZ-NHqT5fdtmP1mVmmrZXRpni2bwAXn1jzCc_nehyuUOqH-bsSbaL-QjWVtK8f8RHD3wYIbZNgK0dQm0ouVingIQ8cdbPpO-F7vAgHDN9zUZt-ukx6r3PAUbRxvpqOm8X5An9qinKMjkvTkxxZzJcurA_HMheIJa2otz2ma1AAElvs5n6rNnft54I23ZbC2PS6sv3vlkZeeXni3oJ6eGEL4fY3zeYT2aR2JwHc7H2lZTPyjS6tQ-hueIDF3tj3H-vw66Oe8ZUS5LBLvJpaErIadFZJBVvCoeswoaSo8BDXsxeHBRf-PRjXPu3uLjq9vKA9a-yjVTrTFNhvUUBoUqOV6howUPcodun3nkL9JCASSxGDaC7ZeV83amdzA9GyZELZFrCvCMyxRsnQZdRuG-fOzi99_accuyN2v1-dyWUl2J97eraFf12fh6EgoLd2YEdwANQ5EWjeo1OppOfMDba7JzdSE8aLNCaD4UIq0ahXj04HG6vG42hc_X9jiR7bz3Hm3XBc9cEOeT3Qo3xzOJIV0RXQq0WH8bF5_e9PyHZ_Lck4MhliwB2k8Nj3eojRWQ-JsJUaXk94CdB_Tboatt39nI94Je9lwlFnfeAVR6FWje5st_V6vPSiSp7Ll7wH60s42OynTv267RsbYOzvKPTjvqdCn71sgxjERvh1bPauZ-HAI5ObGmsZH70ckeGSmFRY8jNSJc2WWV2qY3OOgLAOwXws4XGd3o2Bp_1q4Z1TTZZF3joFJZ87JiCmy2KdL8XOwUKc87nAjYxrGFRqmirgzhcdkcV9Vr3rLqxyaxcsATb-4Ka2aQf0A1oNIGLZkaJyY52dyEAAvG4JlQBYldo75fXSVGN0OGYMji3MZMILwY2_RY0cI6ziMqtC2tBTLiPa4ecubSu2kUzXiYSV6klpjHZdyv29FaNusHhA1LatmBRgtoUB5udE43XlONtbK6Q4l50qE7kUL8WuZnIA5wYv75PDTfUr_5QwbBM09pq896n-V6Sp8dTuH_y0CoILOoP29gst00omI34MDbqBSzr94shP7BwDOo4tVEsJRtv99iZ46dpSm59E2hvRx9UIGwq1xJKNR24WONOq6ooQMZW19jT1XGMuEF0WdL78Lv_061PJ1PKAkpkyXno08md6FFpHZyYy8zm7I0CBDltVDUtVKS2_WeL65-DVvdsxYulFasvIbe1G5XvuFlWN90yU9O9kCSD9LYY8MF5jDXfOs2xpnR8iBFhWA1I0x0laJyI0wQwbhqh8EiqVkNs9Ecs1Iq0N37jzDcNmJnAwjaSwLjsh77FOLplZI7wk5dGPMsUnELOgtI6IuiVj04sesA0ZPEaTa0VBj9alUPp3nKV6RPTObWMCuLDVQeew6Mu_u6X8cVN3pqRx0zGUG0c63csT4YhP6oY05xh9FKTBsVH17EQqmIhgN4PA_erCFHP9Hb2SYjr16usLlXV9USKmE0eJNaQMIT13QzJdd0gAP-slvXSojDtTY_G0Z3VSdjTPaYAVmdQbQrHpjYIcW4VN-d2wt4npX1Fj8iPYCcpC9xiOy_Xq_7eUg92KyLkBDk6iEL4WDuWJeOGWZqPdIfaWYuaRdqHcNLG8CxyKrRWNhFl1jMzPFjDsY2Kri1pX5_O7-i0rtZX1sCHfwKGVm0kpBLXPG7ex3Eugfemy3MLwnGIQ18c9qk4gjRwIawfyGW-r6jCGi11anBXVkLDHhgsxQtPpYavOkizty_YsHBjdMlGOv1aJZYCbO8kdJ3qFTSD0HCwa9f7a3qB1wnA1LLEfkFRIM_wwUxcw_tuua8u3F44QfWney24KE9whca3GzkLp4L39YUXm4im5gcPAaniCWxeYPaY6k-ReqpBJAnzVzYN6Hw4ZOQcePqc8sQZt63mkKW7SbqO9DUKS1HfKLKiJYPddqm3lwBNXpmkvcTvLXLvcafwS08Nrnozq8nC1tJf1P8UL3BMWyfH2qeqtR0LJcPnDildoDYigMEoXdd-dBMQKhIeMaq5zHAfRP5WdsT51_ppIrru48AATjqxhdMq-S2e-lPlKWBONXqvceK3FaxO2Iutda6CgaTW5E3O60Q86vEoXc_e5LiKEK-eJJIG7D9FK6Zr2uoS9YiaiZl4qcrFFiG6IUf-MkXmMDGPZBpYhTdlBZXoI8upYI6pNbvXqfKK8X-0lXC6hXlPKUYOJgkUhf2n-MfOzlKLAMPG6kpvGyTcMogfGm7QB15QGPVPhCa2XsHXpGyn9UH8Zujp5-JxXEAqMkgoap1o8APRdkNufkKwhQAfXeo5sMBNfmSPRXiO7BkNoLmuO7-q1qbYevL5w5BmYuEIrdKad4UPaB44gsizjUx4LmLUFhJ4opG2riXiPL_AB9IXakPgRerIO7_mpJRCnNq1mL-usxH29pG33xBl0ClJDEMxJPMCPOnvYE18_Yr18WoVSJLsavN9OmQ6akPr5LaiZ0bbt1J5cOoVloPPnYDZ-q85ttkEduXAMgcUNBvDggRG-q8AmcHUzgL1FHIJRTAq10D0cQAYMnAMIkaY558r4GWKcom3hAEvhKb1BMVD_MifBVN0e06F1Ywv2drWe0ojNYc9pJCicP1uOVev8NFBoOd6vGLLuLi47A_5wmG96ioQEzfFHEm5kVTfDRt7Lp-Rh29KR8jyE7gYyG07LgAotZ0fxwYC6jdmtbIQmaLn_LC2jo8IEfQ1aTYlaj0xBtaArNIG5vnkzMHVwG_QdDKZshTBSqt5nhCWj0TE4DYGbG9AiNonOgDIvOhDRxUzyvkldrkl4WJfYfWui23acQuLuAS7a0PRKd1KoUnHWi1lsnqkVcpIwYs5HPpPPg-NMDCbbGE-qMH9CgfpPF4QvZh7sSq7uv_l0x5wZxqrYTFaRrJSmuJL2R-IXmJMU6I_ohr6CqtXmUn-XeybZfsXHtm1XJDF8T-QrjV3z8b2uvTlNEJ_RNLYngKy6S4Gcniyx4BKJ5ijeu7HQlceQ6e4KxEtEUR0VAVq-DZkWHSfJbjVtNOkwsjIBJzYdottiPjzfjA26jtDCSTpzC99XpyYoxL2s_4ynuqy1_9CNt8nbKp0N8jVl_lAyeVILxwxhK5zVNVB94IF1yvcYR72haxuYSuAfjYBeqw8wsJsRRF-PPFDwbQZtrx-yV7xTupfEq74XBss_knvlWd_sL406Prdku5SVrR8z0fHA1UkXU0Rc7I0Rpbkw4UEwKhWMoLZVG4BRRBuWnAsPsFSid6wZKTegjS4lqC0-9r__i6UT93TrAKFu2LKFG3JMYwiEOfirmjCo_F4DqWQAdw3TFDbV3t-FBsdhn96q-dexDVxrXC5F4zzRQnBOImRsxPd-YwaANPeozTo6ZAfX6XuYWXnExtxdWk6dMyWJSUYCR2mgGpdcoAMin_U_qkSRf0oOg-CUFYmMInAkHI9hvLnuN4o7Kt5mkDjljwiAKuGhvGZB_32q0yiqmERTGD7lb9Mo3HaC5PQq2eS9_KR0JYkKLb2A9E22UUYUHj80QA2b2dAeaJ2eGKXHOcLotoJac95acsKDqXOVhEQXXC2_cW9XsaCTFa5GpUswxv4q0CqAQ-vUS09i9H1kexZG0uJXRPj-q4hWgla9hkXdFgw5o0bhvMgwSiFOV3EKewIBsWpSjs5JVxmvxHBJhgRcPVRl6nImrV-_RtN-TXuE3pjVWDuRDHlXNkTBs2FZawxtmbtZcApwcx_OLPMNkXU-Cb_XyFkTxkTM-BxrTme7HiDXkXca3VJwXva0WC6zNgTJxvsosphADqxqJr6QPx3TOxQGqgzpiSpRrJkTXQQg-bZewxwTOzdIjAzJZesn7Sn-rYOxWLHvmvpRfVgqtYOktbyyUyvi8HqdxNhdjzqYfPPY-wjm-vHkeSCdQDscCdmJJ50zyAXqu3vUZNFeZllWRXiDDTKdRSMRtM6hIpsS8QtBw6kktUFts6Eqjt0NjwakVlfB9llRIKCRdRpshMHD_cLxWgWiruj71hgOnwO6PTnzp9pJQcyiu2xwwIYiAzxF1UzfiXqh5O9z-2aEskEcuhaFYlHNESVjyj- -wn3uz_7SfcnrxdrtU5ZwwZEGt_hADt_gRB72hkWmeuLTW0gtQWt0IfTBMKtGja-gbC9spr9K_JPwvnHAncT-J9VeoR5toV4Q5BqplnogyvxFr-W33ykWDpiEQcM1cH7sUDmiqe7nXCgoF-EPHwvHywmc5czdw-klbopTjAL_RBy8_F8_ny0]--></g></svg>