{"id":560,"date":"2022-09-06T22:13:48","date_gmt":"2022-09-06T20:13:48","guid":{"rendered":"https:\/\/wesleydegraaf.com\/?page_id=560"},"modified":"2024-10-12T12:03:21","modified_gmt":"2024-10-12T10:03:21","slug":"conveyorcraft","status":"publish","type":"page","link":"https:\/\/wesleydegraaf.com\/en\/conveyorcraft\/","title":{"rendered":"ConveyorCraft"},"content":{"rendered":"\n<div class=\"wp-block-cover\" style=\"min-height:280px;aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-palette-color-1-background-color has-background-dim-100 has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<p class=\"has-text-align-center wp-block-paragraph\" style=\"font-size:clamp(24.526px, 1.533rem + ((1vw - 3.2px) * 1.287), 41px);\"><strong>ConveyorCraft<\/strong><\/p>\n<\/div><\/div>\n\n\n\n<figure class=\"wp-block-embed alignright is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"ConveyorCraft Trailer\" width=\"1290\" height=\"726\" src=\"https:\/\/www.youtube.com\/embed\/sCTLr5NdGj8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">ConveyorCraft is een factory building game, waar je items moet maken door middel van machines en die items vervoeren naar het midden van de map waar je ze vervolgens kan verkopen. Het project is ontstaan doordat we voor school een game moesten maken doormiddel van een contract (FreeLance), toen hebben wij ConveyorCraft bedacht. Dit heb ik samen gedaan met Bo van den Berg &amp; David van Rijn. Na een kort overleg was ik uiteindelijk degene die de leiding nam, maar ik nam mijn beslissingen natuurlijk pas als iedereen het er mee eens was. Ik heb voornamelijk gewerkt aan SaveSystem, PlaceScript, wat kleinere dingen en ik heb support\/bugfixes geleverd bij de andere. Ik maak gebruik van Singletons en voor het saven gebruik ik een combinatie van json (voor locatie van machines\/items) en Binaryformater (geld etc.).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-default\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-palette-color-1-color\">Project Info:<\/mark><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Teamleden: David van Rijn &amp; Bo van den Berg<br>Project tijd: Jaar 2 Periode 3.2 (03-03-2021 t\/m 26-03-2021)<br>Engine: Unity<br>Code Languages: C#<br>Design Patterns: Singleton &amp; FlyWeight<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-default\"\/>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-2 is-cropped aligncenter wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"358\" data-id=\"230\" src=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/zI1odR.png\" alt=\"\" class=\"wp-image-230\" srcset=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/zI1odR.png 794w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/zI1odR-300x135.png 300w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/zI1odR-768x346.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"384\" data-id=\"231\" src=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/se6JU.png\" alt=\"\" class=\"wp-image-231\" srcset=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/se6JU.png 794w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/se6JU-300x145.png 300w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/se6JU-768x371.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"409\" data-id=\"232\" src=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/Ld1KOG.png\" alt=\"\" class=\"wp-image-232\" srcset=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/Ld1KOG.png 794w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/Ld1KOG-300x155.png 300w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/Ld1KOG-768x396.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"794\" height=\"464\" data-id=\"234\" src=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/2WMPZy.png\" alt=\"\" class=\"wp-image-234\" srcset=\"https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/2WMPZy.png 794w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/2WMPZy-300x175.png 300w, https:\/\/wesleydegraaf.com\/wp-content\/uploads\/2021\/04\/2WMPZy-768x449.png 768w\" sizes=\"auto, (max-width: 794px) 100vw, 794px\" \/><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">Kleine foto&#8217;s van verschillende machines\/fabrieken.<\/figcaption><\/figure>\n\n\n\n<div style=\"height:200px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-palette-color-1-color\">Code:<\/mark><\/h3>\n\n\n<div class=\"dm-code-snippet light no-background  dm-normal-version\" style=\"background-color:#abb8c3;\" snippet-height=\"500px\">\n\t\t\t<div class=\"control-language\">\n                <div class=\"dm-buttons\">\n                    <div class=\"dm-buttons-left\">\n                        <div class=\"dm-button-snippet red-button\"><\/div>\n                        <div class=\"dm-button-snippet orange-button\"><\/div>\n                        <div class=\"dm-button-snippet green-button\"><\/div>\n                    <\/div>\n                    <div class=\"dm-buttons-right\">\n                        <a id=\"dm-copy-raw-code\">\n                        <span class=\"dm-copy-text\">Get the Code!<\/span>\n                        <span class=\"dm-copy-confirmed\" style=\"display:none\">You have it!<\/span>\n                        <span class=\"dm-error-message\" style=\"display:none\">Use a different Browser<\/span><\/a>\n                    <\/div>\n                <\/div>\n                <pre class=\"line-numbers\"><code id=\"dm-code-raw\" class=\"wrap language-typescript\">\n<pre>public void SaveAllData() \/\/Saves all the Data\n    {\n        UIManager.instance.ShowSaveIcon(true);\n        List<machinedata> machineSaveData = new List<machinedata>();\n        if (transformerGrid.grid.Count &gt; 0)\n        {\n            foreach (Vector2Int machine in transformerGrid.grid.Keys) \/\/Goes thru the Machine Grid.\n            {\n                Transformer tempTransformer = transformerGrid.grid[machine];\n                if(tempTransformer == null) Debug.Log(machine);\n\n                int tempFilterID;\n                if (tempTransformer.filterdItem != null) tempFilterID = tempTransformer.filterdItem.itemInfo.itemID;\n                else tempFilterID = -1;\n\n                MachineData tempData = new MachineData \/\/Creates new MachineData\n                {\n                    position = machine,\n                    rotation = tempTransformer.transform.rotation.eulerAngles.z,\n                    machineType = (int)tempTransformer.transformerType,\n                    craftingID = tempTransformer.recepie.craftID,\n                    filterID = tempFilterID\n                };\n                machineSaveData.Add(tempData);\n            }\n        }\n        List<itemdata> itemSaveData = new List<itemdata>();\n        if(itemGrid.grid.Count &gt; 0)\n        {\n            foreach (Vector2Int item in itemGrid.grid.Keys) \/\/Goes thru the items in the itemgrid\n            {\n                List<int> itemInfo = new List<int>();\n                for (int i = 0; i &lt; itemGrid.grid[item].Count; i++)\n                {\n                    itemInfo.Add(itemGrid.grid[item][i].itemInfo.itemID);\n                }\n                ItemData tempItem = new ItemData \/\/Creates New ItemData\n                {\n                    position = item,\n                    itemID = itemInfo,\n                };\n                itemSaveData.Add(tempItem);\n            }\n        }\n\n        \/\/Saves to file with SaveSystem\n        SaveSystem.Save(fileName, machineSaveData, CurrencyManager.instance, FindObjectOfType<cameracontroller>(), itemSaveData);\n        UIManager.instance.Invoke(\"ShowSaveIcon\", 2);\n    }\n\n}<\/cameracontroller><\/int><\/int><\/itemdata><\/itemdata><\/machinedata><\/machinedata><\/pre>\n<\/code><\/pre>\n\t\t\t<\/div>\n        <\/div>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\">Saved alle machines en items die geplaatst zijn in de wereld.<\/p>\n\n\n<p><iframe loading=\"lazy\" frameborder=\"0\" src=\"https:\/\/itch.io\/embed\/951975?bg_color=ffffff&amp;fg_color=222222&amp;link_color=009713&amp;border_color=bebebe\" width=\"552\" height=\"167\"><a href=\"https:\/\/double-gezicht.itch.io\/conveyorcraft\">ConveyorCraft by Double_Gezicht, Dafiedoe, bovandenberg<\/a><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>ConveyorCraft is een factory building game, waar je items moet maken door middel van machines en die items vervoeren naar het midden van de map waar je ze vervolgens kan verkopen. Het project is ontstaan doordat we voor school een game moesten maken doormiddel van een contract (FreeLance), toen hebben wij ConveyorCraft bedacht. Dit heb [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-560","page","type-page","status-publish","hentry"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":7}},"_links":{"self":[{"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/pages\/560","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/comments?post=560"}],"version-history":[{"count":84,"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/pages\/560\/revisions"}],"predecessor-version":[{"id":1068,"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/pages\/560\/revisions\/1068"}],"wp:attachment":[{"href":"https:\/\/wesleydegraaf.com\/en\/wp-json\/wp\/v2\/media?parent=560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}