diff --git a/.DS_Store b/.DS_Store index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..66f9323ed24b4e6bad5b7fb76a50351a33cf92ba 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/README.md b/README.md index c68d7e326ce662f9fe1d6ca3bc8b1c6e582b91aa..ab61daef4e9a9837ccd18bc4d959bf14d54db885 100644 --- a/README.md +++ b/README.md @@ -1 +1,8 @@ -# SWEN20003_a1 \ No newline at end of file +# SWEN20003 Project 1 + +Files provided by: The University of Melbourne +Code written and edited by: Keigo Nagai +License: MIT + +This project file contains specifications for assignment 1 of Object Oriented Software Development (SWEN20003). + diff --git a/project-1/.DS_Store b/project-1/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..38d628d67dc3fc9462ede5c54ec619774dff7a66 Binary files /dev/null and b/project-1/.DS_Store differ diff --git a/project-1/.idea/.gitignore b/project-1/.idea/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..26d33521af10bcc7fd8cea344038eaaeb78d0ef5 --- /dev/null +++ b/project-1/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/project-1/.idea/.name b/project-1/.idea/.name new file mode 100644 index 0000000000000000000000000000000000000000..e5199ee79ccef033b3d3412968c960ebf7ffe811 --- /dev/null +++ b/project-1/.idea/.name @@ -0,0 +1 @@ +bagel \ No newline at end of file diff --git a/project-1/.idea/compiler.xml b/project-1/.idea/compiler.xml new file mode 100644 index 0000000000000000000000000000000000000000..5ed7d1ee1d47a9d2bb314a87f99538d402e982e0 --- /dev/null +++ b/project-1/.idea/compiler.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="CompilerConfiguration"> + <annotationProcessing> + <profile name="Maven default annotation processors profile" enabled="true"> + <sourceOutputDir name="target/generated-sources/annotations" /> + <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> + <outputRelativeToContentRoot value="true" /> + <module name="bagel" /> + </profile> + </annotationProcessing> + <bytecodeTargetLevel> + <module name="bagel" target="14" /> + </bytecodeTargetLevel> + </component> +</project> \ No newline at end of file diff --git a/project-1/.idea/jarRepositories.xml b/project-1/.idea/jarRepositories.xml new file mode 100644 index 0000000000000000000000000000000000000000..712ab9d985c20018a0c97b93d2148ac1ffe588a5 --- /dev/null +++ b/project-1/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="RemoteRepositoriesConfiguration"> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Central Repository" /> + <option name="url" value="https://repo.maven.apache.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Maven Central repository" /> + <option name="url" value="https://repo1.maven.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="jboss.community" /> + <option name="name" value="JBoss Community repository" /> + <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> + </remote-repository> + </component> +</project> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__io_github_eleanor_em_bagel_1_9_3.xml b/project-1/.idea/libraries/Maven__io_github_eleanor_em_bagel_1_9_3.xml new file mode 100644 index 0000000000000000000000000000000000000000..8a3817e8e03ccad221cb388d67521c24d3f93203 --- /dev/null +++ b/project-1/.idea/libraries/Maven__io_github_eleanor_em_bagel_1_9_3.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: io.github.eleanor-em:bagel:1.9.3"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/io/github/eleanor-em/bagel/1.9.3/bagel-1.9.3.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/io/github/eleanor-em/bagel/1.9.3/bagel-1.9.3-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/io/github/eleanor-em/bagel/1.9.3/bagel-1.9.3-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..b41e0a0e6d45226876b26c951f89f0a888668616 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..04a33d893ffa7c2f813e11d6127a98947eb61143 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-assimp:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..644bf2d454f700b66ef7349f6984b0af7693177e --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_assimp_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-assimp:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-assimp/3.2.2/lwjgl-assimp-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..48aa8aa34959abd0874a96c96d6e6f9d65c33c91 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-glfw:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..7d7306ff4ab48b0e0075667f893e239242f91ac4 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_glfw_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-glfw:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..229a0712502d4fc5d468de8c224c5213975cfc68 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..094321fdec8e071749a25633e9045b2367b2860f --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-openal:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..202908194b24c93d8333d348203f6a33c983006d --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_openal_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-openal:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..24121c2ac5c3e85eac2364a7a2245a6fa9ca70cd --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-opengl:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..a1a2789a62becc1d45d8ceb0df06d8789479ac42 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_opengl_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-opengl:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..8155b1d9f1cafbdb9f1f61bfe47964a335361c48 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-stb:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_natives_windows_3_2_2.xml b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_natives_windows_3_2_2.xml new file mode 100644 index 0000000000000000000000000000000000000000..4f8ca03319306ceaea6095f71256272b496faaf8 --- /dev/null +++ b/project-1/.idea/libraries/Maven__org_lwjgl_lwjgl_stb_natives_windows_3_2_2.xml @@ -0,0 +1,13 @@ +<component name="libraryTable"> + <library name="Maven: org.lwjgl:lwjgl-stb:natives-windows:3.2.2"> + <CLASSES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-windows.jar!/" /> + </CLASSES> + <JAVADOC> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-javadoc.jar!/" /> + </JAVADOC> + <SOURCES> + <root url="jar://$MAVEN_REPOSITORY$/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-sources.jar!/" /> + </SOURCES> + </library> +</component> \ No newline at end of file diff --git a/project-1/.idea/misc.xml b/project-1/.idea/misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..c0572aa051d2673266994b9b207ed32cfbc44f9d --- /dev/null +++ b/project-1/.idea/misc.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="MavenProjectsManager"> + <option name="originalFiles"> + <list> + <option value="$PROJECT_DIR$/pom.xml" /> + </list> + </option> + </component> + <component name="ProjectRootManager" version="2" languageLevel="JDK_14" project-jdk-name="14" project-jdk-type="JavaSDK" /> +</project> \ No newline at end of file diff --git a/project-1/.idea/modules.xml b/project-1/.idea/modules.xml new file mode 100644 index 0000000000000000000000000000000000000000..d4754eaf30e6aef9fd18e15d5f94dcd7b30f5d25 --- /dev/null +++ b/project-1/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/bagel.iml" filepath="$PROJECT_DIR$/bagel.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/project-1/.idea/uiDesigner.xml b/project-1/.idea/uiDesigner.xml new file mode 100644 index 0000000000000000000000000000000000000000..b93ac08bcd0212375c3de0db5157d536abc599e9 --- /dev/null +++ b/project-1/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Palette2"> + <group name="Swing"> + <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> + </item> + <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> + </item> + <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true"> + <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> + <initial-values> + <property name="text" value="Button" /> + </initial-values> + </item> + <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="RadioButton" /> + </initial-values> + </item> + <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="CheckBox" /> + </initial-values> + </item> + <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> + <initial-values> + <property name="text" value="Label" /> + </initial-values> + </item> + <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> + <preferred-size width="150" height="-1" /> + </default-constraints> + </item> + <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> + <preferred-size width="150" height="50" /> + </default-constraints> + </item> + <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> + <preferred-size width="200" height="200" /> + </default-constraints> + </item> + <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> + <preferred-size width="200" height="200" /> + </default-constraints> + </item> + <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> + </item> + <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> + </item> + <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> + </item> + <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> + <preferred-size width="-1" height="20" /> + </default-constraints> + </item> + <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false"> + <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> + </item> + <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> + <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> + </item> + </group> + </component> +</project> \ No newline at end of file diff --git a/project-1/.idea/vcs.xml b/project-1/.idea/vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..17a8b82328b47169a22e7fc2e2467155a2ce3735 --- /dev/null +++ b/project-1/.idea/vcs.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="$PROJECT_DIR$/../../../../.." vcs="Git" /> + <mapping directory="$PROJECT_DIR$/../../.." vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/project-1/bagel.iml b/project-1/bagel.iml new file mode 100644 index 0000000000000000000000000000000000000000..5528a8c1e3d3839305551618bb67906e16d64071 --- /dev/null +++ b/project-1/bagel.iml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> + <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_14"> + <output url="file://$MODULE_DIR$/target/classes" /> + <output-test url="file://$MODULE_DIR$/target/test-classes" /> + <content url="file://$MODULE_DIR$"> + <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> + <excludeFolder url="file://$MODULE_DIR$/target" /> + </content> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + <orderEntry type="library" name="Maven: io.github.eleanor-em:bagel:1.9.3" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-assimp:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-glfw:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-openal:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-opengl:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-stb:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl:natives-windows:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-assimp:natives-windows:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-glfw:natives-windows:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-openal:natives-windows:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-opengl:natives-windows:3.2.2" level="project" /> + <orderEntry type="library" name="Maven: org.lwjgl:lwjgl-stb:natives-windows:3.2.2" level="project" /> + </component> +</module> \ No newline at end of file diff --git a/project-1/pom.xml b/project-1/pom.xml new file mode 100644 index 0000000000000000000000000000000000000000..c51fbeb6edb5f5974c1fb74356f6ef57a90b4965 --- /dev/null +++ b/project-1/pom.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <groupId>au.edu.unimelb.cis</groupId> + <artifactId>bagel</artifactId> + <version>0.1-SNAPSHOT</version> + <packaging>jar</packaging> + + <build> + <sourceDirectory>src/</sourceDirectory> + <plugins> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>14</source> + <target>14</target> + </configuration> + </plugin> + </plugins> + </build> + + <properties> + <maven.compiler.source>14</maven.compiler.source> + <maven.compiler.target>14</maven.compiler.target> + </properties> + + <dependencies> + <dependency> + <groupId>io.github.eleanor-em</groupId> + <artifactId>bagel</artifactId> + <version>1.9.3</version> + </dependency> + </dependencies> +</project> diff --git a/project-1/res/.DS_Store b/project-1/res/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..aff6d284e04b03c88163e0ae210953338ef5186a Binary files /dev/null and b/project-1/res/.DS_Store differ diff --git a/project-1/res/IO/environment.csv b/project-1/res/IO/environment.csv new file mode 100644 index 0000000000000000000000000000000000000000..34433464a67b782b64b56ef3d04904a00c63c7ab --- /dev/null +++ b/project-1/res/IO/environment.csv @@ -0,0 +1,3 @@ +Player,650,100,2 +Zombie,300,200 +Sandwich,500,400 \ No newline at end of file diff --git a/project-1/res/font/DejaVuSans-Bold.ttf b/project-1/res/font/DejaVuSans-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c0d8e5e462df7f268efba09f6931e37daad151e1 Binary files /dev/null and b/project-1/res/font/DejaVuSans-Bold.ttf differ diff --git a/project-1/res/images/background.png b/project-1/res/images/background.png new file mode 100644 index 0000000000000000000000000000000000000000..a6601996a24eebf1b568ad8e05d2e137a030b52e Binary files /dev/null and b/project-1/res/images/background.png differ diff --git a/project-1/res/images/player.png b/project-1/res/images/player.png new file mode 100644 index 0000000000000000000000000000000000000000..103a2ff1c64ccd5bf18b9ef8b2ca444dbdf204d1 Binary files /dev/null and b/project-1/res/images/player.png differ diff --git a/project-1/res/images/sandwich.png b/project-1/res/images/sandwich.png new file mode 100644 index 0000000000000000000000000000000000000000..87e12ec3db6704914262fd359822407fb9ecd172 Binary files /dev/null and b/project-1/res/images/sandwich.png differ diff --git a/project-1/res/images/zombie.png b/project-1/res/images/zombie.png new file mode 100644 index 0000000000000000000000000000000000000000..41519c41828d76f5cdfbd9493025d3867347d926 Binary files /dev/null and b/project-1/res/images/zombie.png differ diff --git a/project-1/src/.DS_Store b/project-1/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..2898de1f846184fb61d1d0d9146f6083a5bfdb0b Binary files /dev/null and b/project-1/src/.DS_Store differ diff --git a/project-1/src/ShadowTreasure.java b/project-1/src/ShadowTreasure.java new file mode 100644 index 0000000000000000000000000000000000000000..f9c1058a0a5a1a7fc8d5398d931b6ba23b690d34 --- /dev/null +++ b/project-1/src/ShadowTreasure.java @@ -0,0 +1,49 @@ +import bagel.*; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.IOException; +import java.text.DecimalFormat; + + +/** + * An example Bagel game. + */ +public class ShadowTreasure extends AbstractGame { + + // for rounding double number; use this to print the location of the player + private static DecimalFormat df = new DecimalFormat("0.00"); + + public static void printInfo(double x, double y, int e) { + System.out.println(df.format(x) + "," + df.format(y) + "," + e); + } + + public ShadowTreasure() throws IOException { + this.loadEnvironment("res/IO/environment.csv"); + // Add code to initialize other attributes as needed + } + + /** + * Load from input file + */ + private void loadEnvironment(String filename){ + // Code here to read from the file and set up the environment + } + + /** + * Performs a state update. + */ + @Override + public void update(Input input) { + // Logic to update the game, as per specification must go here + } + + + /** + * The entry point for the program. + */ + public static void main(String[] args) throws IOException { + ShadowTreasure game = new ShadowTreasure(); + game.run(); + } +} diff --git a/project-1/target/maven-archiver/pom.properties b/project-1/target/maven-archiver/pom.properties new file mode 100644 index 0000000000000000000000000000000000000000..f50533bad05a26dbc0891a8c413e57c7bfd9d17d --- /dev/null +++ b/project-1/target/maven-archiver/pom.properties @@ -0,0 +1,5 @@ +#Generated by Maven +#Thu Mar 18 12:46:42 AEDT 2021 +groupId=au.edu.unimelb.cis +artifactId=bagel +version=0.1-SNAPSHOT diff --git a/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst new file mode 100644 index 0000000000000000000000000000000000000000..253ae07e82b3e0fff072cc239eba9ee9d4c51140 --- /dev/null +++ b/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -0,0 +1,5 @@ +ShadowTreasure.class +Zombie.class +Sandwich.class +Record.class +Player.class diff --git a/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst new file mode 100644 index 0000000000000000000000000000000000000000..cde17032e59ef7d58ce0e5e35b62db883326bf25 --- /dev/null +++ b/project-1/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -0,0 +1,5 @@ +/Users/nid1/Desktop/ShadowTreasure/project1/src/Zombie.java +/Users/nid1/Desktop/ShadowTreasure/project1/src/Sandwich.java +/Users/nid1/Desktop/ShadowTreasure/project1/src/Record.java +/Users/nid1/Desktop/ShadowTreasure/project1/src/ShadowTreasure.java +/Users/nid1/Desktop/ShadowTreasure/project1/src/Player.java diff --git a/project-1/test/.DS_Store b/project-1/test/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..bc5cd1f4e93b98585802e729226ae928f2d68e4b Binary files /dev/null and b/project-1/test/.DS_Store differ diff --git a/project-1/test/test1/environment.csv b/project-1/test/test1/environment.csv new file mode 100644 index 0000000000000000000000000000000000000000..34433464a67b782b64b56ef3d04904a00c63c7ab --- /dev/null +++ b/project-1/test/test1/environment.csv @@ -0,0 +1,3 @@ +Player,650,100,2 +Zombie,300,200 +Sandwich,500,400 \ No newline at end of file diff --git a/project-1/test/test1/output.csv b/project-1/test/test1/output.csv new file mode 100644 index 0000000000000000000000000000000000000000..062873bc791d58c919a322121d89fc5ec59203aa --- /dev/null +++ b/project-1/test/test1/output.csv @@ -0,0 +1,54 @@ +650.00,100.00,2 +645.53,108.94,2 +641.06,117.89,2 +636.58,126.83,2 +632.11,135.78,2 +627.64,144.72,2 +623.17,153.67,2 +618.70,162.61,2 +614.22,171.55,2 +609.75,180.50,2 +605.28,189.44,2 +600.81,198.39,2 +596.33,207.33,2 +591.86,216.28,2 +587.39,225.22,2 +582.92,234.16,2 +578.45,243.11,2 +573.97,252.05,2 +569.50,261.00,2 +565.03,269.94,2 +560.56,278.89,2 +556.09,287.83,2 +551.61,296.77,2 +547.14,305.72,2 +542.67,314.66,2 +538.20,323.61,2 +533.72,332.55,2 +529.25,341.50,2 +524.78,350.44,2 +520.31,359.38,2 +512.21,353.52,7 +504.10,347.66,7 +496.00,341.80,7 +487.90,335.94,7 +479.80,330.08,7 +471.70,324.21,7 +463.59,318.35,7 +455.49,312.49,7 +447.39,306.63,7 +439.29,300.77,7 +431.19,294.91,7 +423.08,289.05,7 +414.98,283.18,7 +406.88,277.32,7 +398.78,271.46,7 +390.68,265.60,7 +382.57,259.74,7 +374.47,253.88,7 +366.37,248.02,7 +358.27,242.15,7 +350.17,236.29,7 +342.06,230.43,7 +333.96,224.57,7 +325.86,218.71,4 diff --git a/project-1/test/test2/environment.csv b/project-1/test/test2/environment.csv new file mode 100644 index 0000000000000000000000000000000000000000..52b5d638b191e77b95ccbbf9c9e6d430333dd896 --- /dev/null +++ b/project-1/test/test2/environment.csv @@ -0,0 +1,3 @@ +Player,650,100,3 +Zombie,500,500 +Sandwich,300,200 \ No newline at end of file diff --git a/project-1/test/test2/output.csv b/project-1/test/test2/output.csv new file mode 100644 index 0000000000000000000000000000000000000000..8fd27742b73803f50848852a0f79ad6d03929230 --- /dev/null +++ b/project-1/test/test2/output.csv @@ -0,0 +1,40 @@ +650.00,100.00,3 +646.49,109.36,3 +642.98,118.73,3 +639.47,128.09,3 +635.96,137.45,3 +632.44,146.82,3 +628.93,156.18,3 +625.42,165.54,3 +621.91,174.91,3 +618.40,184.27,3 +614.89,193.63,3 +611.38,203.00,3 +607.87,212.36,3 +604.35,221.72,3 +600.84,231.09,3 +597.33,240.45,3 +593.82,249.81,3 +590.31,259.18,3 +586.80,268.54,3 +583.29,277.90,3 +579.78,287.27,3 +576.26,296.63,3 +572.75,305.99,3 +569.24,315.36,3 +565.73,324.72,3 +562.22,334.08,3 +558.71,343.45,3 +555.20,352.81,3 +551.69,362.17,3 +548.17,371.54,3 +544.66,380.90,3 +541.15,390.26,3 +537.64,399.63,3 +534.13,408.99,3 +530.62,418.35,3 +527.11,427.72,3 +523.60,437.08,3 +520.08,446.44,3 +516.57,455.81,3 +510.11,448.17,0