1
0
mirror of https://github.com/Mojang/bedrock-protocol-docs.git synced 2025-02-24 12:05:28 +00:00
bedrock-protocol-docs/html/svg/NetworkItemInstanceDescriptor.svg
Oswaldo Leyva Barrientos 933599d224 Protocol version 622 for r/20_u7
2024-02-15 15:10:22 -08:00

218 lines
12 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 9.0.0 (20230911.1827)
-->
<!-- Title: NetworkItemInstanceDescriptor Pages: 1 -->
<svg width="948pt" height="314pt"
viewBox="0.00 0.00 947.57 314.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 310)">
<title>NetworkItemInstanceDescriptor</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-310 943.57,-310 943.57,4 -4,4"/>
<!-- 25 -->
<!-- name: &quot;NetworkItemInstanceDescriptor&quot;, typeName: &quot;&quot;, id: 25, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;&quot; -->
<g id="node1" class="node">
<title>25</title>
<ellipse fill="none" stroke="black" cx="129.41" cy="-180" rx="129.41" ry="18"/>
<text text-anchor="middle" x="129.41" y="-174.57" font-family="Times New Roman,serif" font-size="14.00">NetworkItemInstanceDescriptor</text>
</g>
<!-- 26 -->
<!-- name: &quot;Dependency on &#39;Valid item&#39;&quot;, typeName: &quot;&quot;, id: 26, branchId: 0, recurseId: &#45;1, attributes: 2, notes: &quot;&quot; -->
<g id="node2" class="node">
<title>26</title>
<polygon fill="none" stroke="black" points="458.56,-198 294.81,-198 294.81,-162 464.56,-162 464.56,-192 458.56,-198"/>
<polyline fill="none" stroke="black" points="458.56,-198 458.56,-192"/>
<polyline fill="none" stroke="black" points="464.56,-192 458.56,-192"/>
<text text-anchor="middle" x="379.69" y="-174.57" font-family="Times New Roman,serif" font-size="14.00">Dependency on &#39;Valid item&#39;</text>
</g>
<!-- 25&#45;&gt;26 -->
<g id="edge1" class="edge">
<title>25&#45;&gt;26</title>
<path fill="none" stroke="black" d="M259.27,-180C267.29,-180 275.27,-180 283.1,-180"/>
<polygon fill="black" stroke="black" points="282.92,-183.5 292.92,-180 282.92,-176.5 282.92,-183.5"/>
</g>
<!-- 27 -->
<!-- name: &quot;if (0)&quot;, typeName: &quot;&quot;, id: 27, branchId: 0, recurseId: &#45;1, attributes: 4, notes: &quot;&quot; -->
<g id="node3" class="node">
<title>27</title>
<polygon fill="none" stroke="black" points="541.02,-265 500.56,-247 541.02,-229 581.48,-247 541.02,-265"/>
<text text-anchor="middle" x="541.02" y="-241.57" font-family="Times New Roman,serif" font-size="14.00">if (0)</text>
</g>
<!-- 26&#45;&gt;27 -->
<g id="edge2" class="edge">
<title>26&#45;&gt;27</title>
<path fill="none" stroke="black" d="M424.65,-198.49C451.49,-209.77 485.14,-223.92 509.17,-234.03"/>
<polygon fill="black" stroke="black" points="507.5,-237.12 518.07,-237.77 510.21,-230.67 507.5,-237.12"/>
</g>
<!-- 30 -->
<!-- name: &quot;if (1)&quot;, typeName: &quot;&quot;, id: 30, branchId: 1, recurseId: &#45;1, attributes: 4, notes: &quot;&quot; -->
<g id="node6" class="node">
<title>30</title>
<polygon fill="none" stroke="black" points="541.02,-171 500.56,-153 541.02,-135 581.48,-153 541.02,-171"/>
<text text-anchor="middle" x="541.02" y="-147.57" font-family="Times New Roman,serif" font-size="14.00">if (1)</text>
</g>
<!-- 26&#45;&gt;30 -->
<g id="edge5" class="edge">
<title>26&#45;&gt;30</title>
<path fill="none" stroke="black" d="M465.02,-165.71C477.08,-163.67 489,-161.65 499.66,-159.84"/>
<polygon fill="black" stroke="black" points="499.92,-163.35 509.19,-158.22 498.75,-156.44 499.92,-163.35"/>
</g>
<!-- 28 -->
<!-- name: &quot;Id&quot;, typeName: &quot;&quot;, id: 28, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;Send fixed Id of 0 for invalid item&quot; -->
<g id="node4" class="node">
<title>28</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-288" rx="27" ry="18"/>
<text text-anchor="middle" x="693.99" y="-282.57" font-family="Times New Roman,serif" font-size="14.00">Id</text>
</g>
<!-- 27&#45;&gt;28 -->
<g id="edge3" class="edge">
<title>27&#45;&gt;28</title>
<path fill="none" stroke="black" d="M566.95,-253.77C591.68,-260.49 629.82,-270.84 657.67,-278.41"/>
<polygon fill="black" stroke="black" points="656.5,-281.72 667.07,-280.96 658.33,-274.96 656.5,-281.72"/>
</g>
<!-- 29 -->
<!-- name: &quot;varint&quot;, typeName: &quot;&quot;, id: 29, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node5" class="node">
<title>29</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-288" rx="31.1" ry="18"/>
<text text-anchor="middle" x="873.04" y="-282.57" font-family="Times New Roman,serif" font-size="14.00">varint</text>
</g>
<!-- 28&#45;&gt;29 -->
<g id="edge4" class="edge">
<title>28&#45;&gt;29</title>
<path fill="none" stroke="black" d="M721.12,-288C749.86,-288 796.45,-288 830.27,-288"/>
<polygon fill="black" stroke="black" points="830.13,-291.5 840.13,-288 830.13,-284.5 830.13,-291.5"/>
</g>
<!-- 31 -->
<!-- name: &quot;Id&quot;, typeName: &quot;&quot;, id: 31, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;&quot; -->
<g id="node7" class="node">
<title>31</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-234" rx="27" ry="18"/>
<text text-anchor="middle" x="693.99" y="-228.57" font-family="Times New Roman,serif" font-size="14.00">Id</text>
</g>
<!-- 30&#45;&gt;31 -->
<g id="edge6" class="edge">
<title>30&#45;&gt;31</title>
<path fill="none" stroke="black" d="M555.99,-164.82C570.58,-176.71 594.5,-194.97 617.48,-207 630.07,-213.59 644.63,-219.22 657.59,-223.61"/>
<polygon fill="black" stroke="black" points="656.44,-226.91 667.03,-226.67 658.59,-220.25 656.44,-226.91"/>
</g>
<!-- 33 -->
<!-- name: &quot;Stack size&quot;, typeName: &quot;&quot;, id: 33, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;&quot; -->
<g id="node9" class="node">
<title>33</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-180" rx="48.07" ry="18"/>
<text text-anchor="middle" x="693.99" y="-174.57" font-family="Times New Roman,serif" font-size="14.00">Stack size</text>
</g>
<!-- 30&#45;&gt;33 -->
<g id="edge8" class="edge">
<title>30&#45;&gt;33</title>
<path fill="none" stroke="black" d="M570.77,-158.14C590.04,-161.59 615.99,-166.23 639.03,-170.35"/>
<polygon fill="black" stroke="black" points="638.11,-173.74 648.57,-172.06 639.35,-166.85 638.11,-173.74"/>
</g>
<!-- 35 -->
<!-- name: &quot;Aux value&quot;, typeName: &quot;&quot;, id: 35, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;&quot; -->
<g id="node11" class="node">
<title>35</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-126" rx="47.57" ry="18"/>
<text text-anchor="middle" x="693.99" y="-120.58" font-family="Times New Roman,serif" font-size="14.00">Aux value</text>
</g>
<!-- 30&#45;&gt;35 -->
<g id="edge10" class="edge">
<title>30&#45;&gt;35</title>
<path fill="none" stroke="black" d="M570.77,-147.86C590.11,-144.4 616.19,-139.74 639.29,-135.6"/>
<polygon fill="black" stroke="black" points="639.64,-139.1 648.86,-133.89 638.4,-132.21 639.64,-139.1"/>
</g>
<!-- 37 -->
<!-- name: &quot;Block Runtime Id&quot;, typeName: &quot;&quot;, id: 37, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;&quot; -->
<g id="node13" class="node">
<title>37</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-72" rx="76.51" ry="18"/>
<text text-anchor="middle" x="693.99" y="-66.58" font-family="Times New Roman,serif" font-size="14.00">Block Runtime Id</text>
</g>
<!-- 30&#45;&gt;37 -->
<g id="edge12" class="edge">
<title>30&#45;&gt;37</title>
<path fill="none" stroke="black" d="M555.99,-141.18C570.58,-129.29 594.5,-111.03 617.48,-99 623.25,-95.98 629.43,-93.16 635.68,-90.57"/>
<polygon fill="black" stroke="black" points="636.77,-93.91 644.8,-86.99 634.21,-87.39 636.77,-93.91"/>
</g>
<!-- 39 -->
<!-- name: &quot;User Data Buffer&quot;, typeName: &quot;&quot;, id: 39, branchId: 0, recurseId: &#45;1, attributes: 0, notes: &quot;The @ItemInstanceUserData.html#ItemInstanceUserData@ &#160;binary blob encoded as a String, so it&#39;s unsigned varint length prefixed. Get all your nbt+property bytes, calculate the length, write that length, THEN write the data.&quot; -->
<g id="node15" class="node">
<title>39</title>
<ellipse fill="none" stroke="black" cx="693.99" cy="-18" rx="73.52" ry="18"/>
<text text-anchor="middle" x="693.99" y="-12.57" font-family="Times New Roman,serif" font-size="14.00">User Data Buffer</text>
</g>
<!-- 30&#45;&gt;39 -->
<g id="edge14" class="edge">
<title>30&#45;&gt;39</title>
<path fill="none" stroke="black" d="M548.63,-138.24C559.68,-115.16 584.03,-70.54 617.48,-45 622,-41.55 627,-38.51 632.21,-35.85"/>
<polygon fill="black" stroke="black" points="633.41,-39.15 641.04,-31.79 630.49,-32.78 633.41,-39.15"/>
</g>
<!-- 32 -->
<!-- name: &quot;varint&quot;, typeName: &quot;&quot;, id: 32, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node8" class="node">
<title>32</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-234" rx="31.1" ry="18"/>
<text text-anchor="middle" x="873.04" y="-228.57" font-family="Times New Roman,serif" font-size="14.00">varint</text>
</g>
<!-- 31&#45;&gt;32 -->
<g id="edge7" class="edge">
<title>31&#45;&gt;32</title>
<path fill="none" stroke="black" d="M721.12,-234C749.86,-234 796.45,-234 830.27,-234"/>
<polygon fill="black" stroke="black" points="830.13,-237.5 840.13,-234 830.13,-230.5 830.13,-237.5"/>
</g>
<!-- 34 -->
<!-- name: &quot;unsigned short&quot;, typeName: &quot;&quot;, id: 34, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node10" class="node">
<title>34</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-180" rx="65.04" ry="18"/>
<text text-anchor="middle" x="873.04" y="-174.57" font-family="Times New Roman,serif" font-size="14.00">unsigned short</text>
</g>
<!-- 33&#45;&gt;34 -->
<g id="edge9" class="edge">
<title>33&#45;&gt;34</title>
<path fill="none" stroke="black" d="M742.44,-180C759.06,-180 778.17,-180 796.52,-180"/>
<polygon fill="black" stroke="black" points="796.3,-183.5 806.3,-180 796.3,-176.5 796.3,-183.5"/>
</g>
<!-- 36 -->
<!-- name: &quot;unsigned varint&quot;, typeName: &quot;&quot;, id: 36, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node12" class="node">
<title>36</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-126" rx="66.53" ry="18"/>
<text text-anchor="middle" x="873.04" y="-120.58" font-family="Times New Roman,serif" font-size="14.00">unsigned varint</text>
</g>
<!-- 35&#45;&gt;36 -->
<g id="edge11" class="edge">
<title>35&#45;&gt;36</title>
<path fill="none" stroke="black" d="M741.97,-126C758.19,-126 776.8,-126 794.79,-126"/>
<polygon fill="black" stroke="black" points="794.66,-129.5 804.66,-126 794.66,-122.5 794.66,-129.5"/>
</g>
<!-- 38 -->
<!-- name: &quot;varint&quot;, typeName: &quot;&quot;, id: 38, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node14" class="node">
<title>38</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-72" rx="31.1" ry="18"/>
<text text-anchor="middle" x="873.04" y="-66.58" font-family="Times New Roman,serif" font-size="14.00">varint</text>
</g>
<!-- 37&#45;&gt;38 -->
<g id="edge13" class="edge">
<title>37&#45;&gt;38</title>
<path fill="none" stroke="black" d="M770.85,-72C791.23,-72 812.53,-72 830.29,-72"/>
<polygon fill="black" stroke="black" points="830.18,-75.5 840.18,-72 830.18,-68.5 830.18,-75.5"/>
</g>
<!-- 40 -->
<!-- name: &quot;string&quot;, typeName: &quot;&quot;, id: 40, branchId: 0, recurseId: &#45;1, attributes: 512, notes: &quot;&quot; -->
<g id="node16" class="node">
<title>40</title>
<ellipse fill="none" stroke="black" cx="873.04" cy="-18" rx="31.1" ry="18"/>
<text text-anchor="middle" x="873.04" y="-12.57" font-family="Times New Roman,serif" font-size="14.00">string</text>
</g>
<!-- 39&#45;&gt;40 -->
<g id="edge15" class="edge">
<title>39&#45;&gt;40</title>
<path fill="none" stroke="black" d="M767.77,-18C789,-18 811.47,-18 830.09,-18"/>
<polygon fill="black" stroke="black" points="829.92,-21.5 839.92,-18 829.92,-14.5 829.92,-21.5"/>
</g>
</g>
</svg>