diff --git a/.DS_Store b/.DS_Store index 9f886383c7b0432c8d0bcede35464dc0cb215642..e83d0a39268140e81207c5c5d275da94138513fe 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/Manual Test Plan.docx b/Manual Test Plan.docx new file mode 100644 index 0000000000000000000000000000000000000000..82b275f343287a6ebdb1430c97aaea17ad8042ff Binary files /dev/null and b/Manual Test Plan.docx differ diff --git a/Monopoly/.idea/workspace.xml b/Monopoly/.idea/workspace.xml index becfab67b853192dc5828a619d9a52ba4b0e81eb..b8eb8715d7c53ec42ec416067d12b847eb3020ae 100644 --- a/Monopoly/.idea/workspace.xml +++ b/Monopoly/.idea/workspace.xml @@ -14,18 +14,66 @@ <SUITE FILE_PATH="coverage/Monopoly$ChanceTest.coverage" NAME="ChanceTest Coverage Results" MODIFIED="1510705850784" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false"> <FILTER>Board.*</FILTER> </SUITE> + <SUITE FILE_PATH="coverage/Monopoly$AllTest.coverage" NAME="AllTest Coverage Results" MODIFIED="1511571419541" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" /> </component> <component name="FileEditorManager"> - <leaf> + <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> + <file leaf-file-name="Player.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/src/Players/Player.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="-637"> + <caret line="59" column="53" lean-forward="false" selection-start-line="59" selection-start-column="53" selection-end-line="59" selection-end-column="53" /> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="Jail.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/src/Board/Jail.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="270"> + <caret line="18" column="25" lean-forward="false" selection-start-line="18" selection-start-column="25" selection-end-line="18" selection-end-column="25" /> + <folding> + <element signature="e#554#555#0" expanded="true" /> + <element signature="e#576#577#0" expanded="true" /> + </folding> + </state> + </provider> + </entry> + </file> <file leaf-file-name="MonopolyBoard.java" pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/src/Board/MonopolyBoard.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="1860"> - <caret line="128" column="31" lean-forward="false" selection-start-line="128" selection-start-column="31" selection-end-line="128" selection-end-column="31" /> + <state relative-caret-position="773"> + <caret line="332" column="17" lean-forward="false" selection-start-line="332" selection-start-column="17" selection-end-line="332" selection-end-column="17" /> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="Main.java" pinned="false" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/src/Main.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="907"> + <caret line="110" column="40" lean-forward="false" selection-start-line="110" selection-start-column="40" selection-end-line="110" selection-end-column="40" /> + <folding> + <element signature="imports" expanded="true" /> + </folding> + </state> + </provider> + </entry> + </file> + <file leaf-file-name="CustomLogger.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/src/Misc/CustomLogger.java"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="120"> + <caret line="8" column="0" lean-forward="false" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" /> <folding> <element signature="imports" expanded="true" /> - <element signature="e#537#538#0" expanded="true" /> - <element signature="e#570#571#0" expanded="true" /> </folding> </state> </provider> @@ -34,8 +82,8 @@ <file leaf-file-name="AllTest.java" pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/test/AllTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="120"> - <caret line="8" column="21" lean-forward="true" selection-start-line="8" selection-start-column="21" selection-end-line="8" selection-end-column="21" /> + <state relative-caret-position="135"> + <caret line="9" column="22" lean-forward="false" selection-start-line="9" selection-start-column="22" selection-end-line="9" selection-end-column="22" /> <folding> <element signature="imports" expanded="true" /> </folding> @@ -43,11 +91,11 @@ </provider> </entry> </file> - <file leaf-file-name="GoToJailTest.java" pinned="false" current-in-tab="true"> - <entry file="file://$PROJECT_DIR$/test/Board/GoToJailTest.java"> + <file leaf-file-name="ChanceTest.java" pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/test/Board/ChanceTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="375"> - <caret line="25" column="17" lean-forward="false" selection-start-line="25" selection-start-column="17" selection-end-line="25" selection-end-column="17" /> + <state relative-caret-position="255"> + <caret line="17" column="37" lean-forward="false" selection-start-line="17" selection-start-column="37" selection-end-line="17" selection-end-column="37" /> <folding> <element signature="imports" expanded="true" /> </folding> @@ -72,15 +120,6 @@ <component name="IdeDocumentHistory"> <option name="CHANGED_PATHS"> <list> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/AdvanceToGo.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/BankError.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/DoctorFees.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/FromStockSale.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/GetOutOfJail.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/GetOutOfJailCC.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/GoToJailCC.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/GrandOpera.java" /> - <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/HolidayFund.java" /> <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/IncomeTaxRefund.java" /> <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/LifeInsurance.java" /> <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/PayHospital.java" /> @@ -89,7 +128,6 @@ <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouGetStreetRepairs.java" /> <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouWonBeauty.java" /> <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouReceivedInheitance.java" /> - <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/ChanceCard.java" /> <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToGoChance.java" /> <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToIllinois.java" /> <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToRailRoad.java" /> @@ -107,22 +145,32 @@ <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/YouBuildingLoanMatures.java" /> <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/YourBuildingLoanMatures.java" /> <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/YouWonCrossword.java" /> - <option value="$PROJECT_DIR$/src/Board/Property.java" /> - <option value="$PROJECT_DIR$/src/Board/Chance.java" /> + <option value="$PROJECT_DIR$/src/Misc/CutomLogger.java" /> + <option value="$PROJECT_DIR$/test/AllTest.java" /> + <option value="$PROJECT_DIR$/src/Misc/CustomLogger.java" /> + <option value="$PROJECT_DIR$/src/Pieces/ChanceCards/ChanceCard.java" /> + <option value="$PROJECT_DIR$/src/Pieces/CommunityChestCards/CommunityChestCard.java" /> + <option value="$PROJECT_DIR$/test/Board/GoTest.java" /> + <option value="$PROJECT_DIR$/src/Pieces/Dice.java" /> + <option value="$PROJECT_DIR$/src/Board/Space.java" /> <option value="$PROJECT_DIR$/src/Board/CommunityChest.java" /> <option value="$PROJECT_DIR$/src/Board/FreeParking.java" /> <option value="$PROJECT_DIR$/src/Board/Go.java" /> - <option value="$PROJECT_DIR$/src/Board/Jail.java" /> <option value="$PROJECT_DIR$/src/Board/GoToJail.java" /> + <option value="$PROJECT_DIR$/src/Board/PassingJail.java" /> <option value="$PROJECT_DIR$/src/Board/MonopolyBoard.java" /> - <option value="$PROJECT_DIR$/src/Players/Player.java" /> - <option value="$PROJECT_DIR$/src/Board/Space.java" /> - <option value="$PROJECT_DIR$/test/AllTest.java" /> - <option value="$PROJECT_DIR$/test/Board/ChanceTest.java" /> <option value="$PROJECT_DIR$/test/Board/CommunityChestTest.java" /> - <option value="$PROJECT_DIR$/test/Board/GoTest.java" /> <option value="$PROJECT_DIR$/test/Board/FreeParkingTest.java" /> <option value="$PROJECT_DIR$/test/Board/GoToJailTest.java" /> + <option value="$PROJECT_DIR$/src/Board/Property.java" /> + <option value="$PROJECT_DIR$/src/Board/Tax.java" /> + <option value="$PROJECT_DIR$/src/Board/Railroad.java" /> + <option value="$PROJECT_DIR$/src/Board/Utilities.java" /> + <option value="$PROJECT_DIR$/src/Board/Chance.java" /> + <option value="$PROJECT_DIR$/test/Board/ChanceTest.java" /> + <option value="$PROJECT_DIR$/src/Board/Jail.java" /> + <option value="$PROJECT_DIR$/src/Players/Player.java" /> + <option value="$PROJECT_DIR$/src/Main.java" /> </list> </option> </component> @@ -151,7 +199,8 @@ <foldersAlwaysOnTop value="true" /> </navigator> <panes> - <pane id="PackagesPane" /> + <pane id="AndroidView" /> + <pane id="Scope" /> <pane id="ProjectPane"> <subPane> <expand> @@ -175,19 +224,12 @@ <item name="Monopoly" type="462c0819:PsiDirectoryNode" /> <item name="test" type="462c0819:PsiDirectoryNode" /> </path> - <path> - <item name="Monopoly" type="b2602c69:ProjectViewProjectNode" /> - <item name="Monopoly" type="462c0819:PsiDirectoryNode" /> - <item name="test" type="462c0819:PsiDirectoryNode" /> - <item name="Board" type="462c0819:PsiDirectoryNode" /> - </path> </expand> <select /> </subPane> </pane> + <pane id="PackagesPane" /> <pane id="Scratches" /> - <pane id="Scope" /> - <pane id="AndroidView" /> </panes> </component> <component name="PropertiesComponent"> @@ -207,7 +249,7 @@ </list> </option> </component> - <component name="RunManager" selected="JUnit.GoToJailTest"> + <component name="RunManager" selected="Application.Main"> <configuration name="AllTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" /> <module name="Monopoly" /> @@ -253,6 +295,31 @@ <envs /> <patterns /> </configuration> + <configuration name="GoTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> + <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea"> + <pattern> + <option name="PATTERN" value="Board.*" /> + <option name="ENABLED" value="true" /> + </pattern> + </extension> + <module name="Monopoly" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" /> + <option name="PACKAGE_NAME" value="Board" /> + <option name="MAIN_CLASS_NAME" value="Board.GoTest" /> + <option name="METHOD_NAME" /> + <option name="TEST_OBJECT" value="class" /> + <option name="VM_PARAMETERS" value="-ea" /> + <option name="PARAMETERS" /> + <option name="WORKING_DIRECTORY" value="$MODULE_DIR$" /> + <option name="ENV_VARIABLES" /> + <option name="PASS_PARENT_ENVS" value="true" /> + <option name="TEST_SEARCH_SCOPE"> + <value defaultName="singleModule" /> + </option> + <envs /> + <patterns /> + </configuration> <configuration name="GoToJailTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea"> <pattern> @@ -278,6 +345,20 @@ <envs /> <patterns /> </configuration> + <configuration name="Main" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> + <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" /> + <option name="MAIN_CLASS_NAME" value="Main" /> + <option name="VM_PARAMETERS" /> + <option name="PROGRAM_PARAMETERS" /> + <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" /> + <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" /> + <option name="ALTERNATIVE_JRE_PATH" /> + <option name="ENABLE_SWING_INSPECTOR" value="false" /> + <option name="ENV_VARIABLES" /> + <option name="PASS_PARENT_ENVS" value="true" /> + <module name="Monopoly" /> + <envs /> + </configuration> <configuration default="true" type="Applet" factoryName="Applet"> <option name="HTML_USED" value="false" /> <option name="WIDTH" value="400" /> @@ -359,16 +440,20 @@ <properties /> <listeners /> </configuration> - <list size="3"> + <list size="5"> <item index="0" class="java.lang.String" itemvalue="JUnit.ChanceTest" /> <item index="1" class="java.lang.String" itemvalue="JUnit.AllTest" /> <item index="2" class="java.lang.String" itemvalue="JUnit.GoToJailTest" /> + <item index="3" class="java.lang.String" itemvalue="JUnit.GoTest" /> + <item index="4" class="java.lang.String" itemvalue="Application.Main" /> </list> <recent_temporary> - <list size="3"> - <item index="0" class="java.lang.String" itemvalue="JUnit.GoToJailTest" /> + <list size="5"> + <item index="0" class="java.lang.String" itemvalue="Application.Main" /> <item index="1" class="java.lang.String" itemvalue="JUnit.AllTest" /> - <item index="2" class="java.lang.String" itemvalue="JUnit.ChanceTest" /> + <item index="2" class="java.lang.String" itemvalue="JUnit.GoTest" /> + <item index="3" class="java.lang.String" itemvalue="JUnit.GoToJailTest" /> + <item index="4" class="java.lang.String" itemvalue="JUnit.ChanceTest" /> </list> </recent_temporary> </component> @@ -385,76 +470,78 @@ <option name="number" value="Default" /> <option name="presentableId" value="Default" /> <updated>1510626956913</updated> - <workItem from="1510626962237" duration="41808000" /> + <workItem from="1510626962237" duration="45111000" /> + <workItem from="1511319020794" duration="26841000" /> + <workItem from="1511988990718" duration="1051000" /> </task> <servers /> </component> <component name="TestHistory"> - <history-entry file="AllTest - 2017.11.14 at 18h 37m 06s.xml"> + <history-entry file="AllTest - 2017.11.22 at 00h 44m 59s.xml"> <configuration name="AllTest" configurationId="JUnit" /> </history-entry> - <history-entry file="AllTest - 2017.11.14 at 18h 39m 09s.xml"> + <history-entry file="AllTest - 2017.11.24 at 18h 57m 35s.xml"> <configuration name="AllTest" configurationId="JUnit" /> </history-entry> - <history-entry file="AllTest - 2017.11.14 at 19h 13m 39s.xml"> + <history-entry file="AllTest - 2017.11.29 at 15h 21m 57s.xml"> <configuration name="AllTest" configurationId="JUnit" /> </history-entry> - <history-entry file="AllTest - 2017.11.14 at 19h 15m 07s.xml"> - <configuration name="AllTest" configurationId="JUnit" /> + <history-entry file="GoTest - 2017.11.22 at 01h 04m 53s.xml"> + <configuration name="GoTest" configurationId="JUnit" /> </history-entry> - <history-entry file="AllTest - 2017.11.14 at 19h 16m 26s.xml"> - <configuration name="AllTest" configurationId="JUnit" /> + <history-entry file="GoTest - 2017.11.22 at 01h 05m 07s.xml"> + <configuration name="GoTest" configurationId="JUnit" /> </history-entry> - <history-entry file="AllTest - 2017.11.14 at 19h 18m 02s.xml"> - <configuration name="AllTest" configurationId="JUnit" /> + <history-entry file="GoTest - 2017.11.22 at 01h 05m 36s.xml"> + <configuration name="GoTest" configurationId="JUnit" /> </history-entry> - <history-entry file="ChanceTest - 2017.11.14 at 18h 29m 20s.xml"> - <configuration name="ChanceTest" configurationId="JUnit" /> + <history-entry file="GoToJailTest - 2017.11.22 at 00h 46m 53s.xml"> + <configuration name="GoToJailTest" configurationId="JUnit" /> </history-entry> - <history-entry file="ChanceTest - 2017.11.14 at 18h 30m 51s.xml"> - <configuration name="ChanceTest" configurationId="JUnit" /> + <history-entry file="GoToJailTest - 2017.11.22 at 00h 48m 17s.xml"> + <configuration name="GoToJailTest" configurationId="JUnit" /> </history-entry> - <history-entry file="ChanceTest - 2017.11.14 at 19h 11m 51s.xml"> - <configuration name="ChanceTest" configurationId="JUnit" /> + <history-entry file="GoToJailTest - 2017.11.22 at 00h 48m 51s.xml"> + <configuration name="GoToJailTest" configurationId="JUnit" /> </history-entry> - <history-entry file="GoToJailTest - 2017.11.14 at 19h 19m 19s.xml"> + <history-entry file="GoToJailTest - 2017.11.22 at 00h 49m 21s.xml"> <configuration name="GoToJailTest" configurationId="JUnit" /> </history-entry> </component> <component name="TimeTrackingManager"> - <option name="totallyTimeSpent" value="41808000" /> + <option name="totallyTimeSpent" value="73003000" /> </component> <component name="ToolWindowManager"> <frame x="0" y="0" width="1440" height="900" extended-state="0" /> <layout> - <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> + <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> - <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" /> - <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32941177" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> - <window_info id="Coverage" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.3298611" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" /> - <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.104166664" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> - <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> + <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32941177" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> + <window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> + <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> + <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> + <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> + <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> + <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> + <window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.12588236" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> + <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> + <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> + <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> + <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.19236112" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> + <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> - <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> - <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" /> + <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> + <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> + <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" /> - <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> - <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> + <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" /> + <window_info id="Coverage" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32569444" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" /> + <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> </layout> </component> <component name="TypeScriptGeneratedFilesManager"> @@ -468,493 +555,365 @@ <watches-manager /> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/CommunityChestCard.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToIllinois.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="75"> - <caret line="5" column="0" lean-forward="false" selection-start-line="5" selection-start-column="0" selection-end-line="5" selection-end-column="0" /> - <folding /> + <state relative-caret-position="225"> + <caret line="15" column="36" lean-forward="false" selection-start-line="15" selection-start-column="36" selection-end-line="15" selection-end-column="36" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/DoctorFees.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToRailRoad.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="195"> - <caret line="13" column="1" lean-forward="true" selection-start-line="13" selection-start-column="1" selection-end-line="13" selection-end-column="1" /> + <state relative-caret-position="270"> + <caret line="18" column="19" lean-forward="true" selection-start-line="18" selection-start-column="19" selection-end-line="18" selection-end-column="19" /> <folding> - <element signature="e#139#140#0" expanded="true" /> - <element signature="e#199#200#0" expanded="true" /> - <element signature="e#244#245#0" expanded="true" /> - <element signature="e#290#291#0" expanded="true" /> + <element signature="imports" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/FromStockSale.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToStCharles.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="false" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> - <folding> - <element signature="e#145#146#0" expanded="true" /> - <element signature="e#212#213#0" expanded="true" /> - <element signature="e#257#258#0" expanded="true" /> - <element signature="e#298#299#0" expanded="true" /> - </folding> + <state relative-caret-position="225"> + <caret line="15" column="37" lean-forward="false" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GetOutOfJailCC.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToUtility.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="170"> - <caret line="10" column="43" lean-forward="true" selection-start-line="10" selection-start-column="43" selection-end-line="10" selection-end-column="43" /> + <state relative-caret-position="285"> + <caret line="19" column="9" lean-forward="true" selection-start-line="19" selection-start-column="9" selection-end-line="19" selection-end-column="9" /> <folding> - <element signature="e#147#148#0" expanded="true" /> - <element signature="e#249#250#0" expanded="true" /> - <element signature="e#356#357#0" expanded="true" /> + <element signature="imports" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GoToJailCC.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/BankPaysYou.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="4" lean-forward="false" selection-start-line="12" selection-start-column="4" selection-end-line="12" selection-end-column="4" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#352#353#0" expanded="true" /> - <element signature="e#393#394#0" expanded="true" /> - </folding> + <state relative-caret-position="150"> + <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GrandOpera.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GetOutOfJailChance.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="36" lean-forward="true" selection-start-line="11" selection-start-column="36" selection-end-line="11" selection-end-column="36" /> + <state relative-caret-position="150"> + <caret line="10" column="26" lean-forward="false" selection-start-line="10" selection-start-column="26" selection-end-line="10" selection-end-column="26" /> <folding> - <element signature="e#294#295#0" expanded="true" /> - <element signature="e#340#341#0" expanded="true" /> + <element signature="e#294#295#0" expanded="false" /> + <element signature="e#353#354#0" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/HolidayFund.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GoBackThree.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="33" lean-forward="false" selection-start-line="11" selection-start-column="33" selection-end-line="11" selection-end-column="33" /> - <folding> - <element signature="e#141#142#0" expanded="true" /> - <element signature="e#213#214#0" expanded="true" /> - <element signature="e#258#259#0" expanded="true" /> - <element signature="e#300#301#0" expanded="true" /> - </folding> + <state relative-caret-position="150"> + <caret line="12" column="56" lean-forward="false" selection-start-line="12" selection-start-column="56" selection-end-line="12" selection-end-column="56" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/IncomeTaxRefund.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GoToJailChance.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="32" lean-forward="false" selection-start-line="11" selection-start-column="32" selection-end-line="11" selection-end-column="32" /> + <state relative-caret-position="225"> + <caret line="15" column="34" lean-forward="true" selection-start-line="15" selection-start-column="34" selection-end-line="15" selection-end-column="34" /> <folding> - <element signature="e#149#150#0" expanded="true" /> - <element signature="e#217#218#0" expanded="true" /> - <element signature="e#262#263#0" expanded="true" /> - <element signature="e#303#304#0" expanded="true" /> + <element signature="imports" expanded="false" /> + <element signature="e#355#356#0" expanded="false" /> + <element signature="e#396#397#0" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/LifeInsurance.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/MakeGeneralRepairs.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="195"> - <caret line="13" column="0" lean-forward="true" selection-start-line="13" selection-start-column="0" selection-end-line="13" selection-end-column="0" /> - <folding> - <element signature="e#145#146#0" expanded="true" /> - <element signature="e#219#220#0" expanded="true" /> - <element signature="e#264#265#0" expanded="true" /> - <element signature="e#306#307#0" expanded="true" /> - </folding> + <state relative-caret-position="165"> + <caret line="13" column="1" lean-forward="true" selection-start-line="13" selection-start-column="1" selection-end-line="13" selection-end-column="1" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/PayHospital.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/PayPoorTax.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="38" lean-forward="false" selection-start-line="11" selection-start-column="38" selection-end-line="11" selection-end-column="38" /> - <folding> - <element signature="e#141#142#0" expanded="true" /> - <element signature="e#203#204#0" expanded="true" /> - <element signature="e#248#249#0" expanded="true" /> - <element signature="e#295#296#0" expanded="true" /> - </folding> + <state relative-caret-position="150"> + <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/PaySchool.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/TakeTripToReading.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="38" lean-forward="false" selection-start-line="11" selection-start-column="38" selection-end-line="11" selection-end-column="38" /> - <folding> - <element signature="e#137#138#0" expanded="true" /> - <element signature="e#197#198#0" expanded="true" /> - <element signature="e#242#243#0" expanded="true" /> - <element signature="e#289#290#0" expanded="true" /> - </folding> + <state relative-caret-position="225"> + <caret line="15" column="37" lean-forward="false" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/PlayerPiece.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/TakeWalkOnBoardwalk.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="30"> - <caret line="2" column="24" lean-forward="false" selection-start-line="2" selection-start-column="24" selection-end-line="2" selection-end-column="24" /> - <folding /> + <state relative-caret-position="225"> + <caret line="15" column="39" lean-forward="true" selection-start-line="15" selection-start-column="39" selection-end-line="15" selection-end-column="39" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/ReceiveConsultantFee.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/YouAreChairman.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> + <state relative-caret-position="135"> + <caret line="11" column="34" lean-forward="false" selection-start-line="11" selection-start-column="34" selection-end-line="11" selection-end-column="34" /> <folding> - <element signature="e#159#160#0" expanded="true" /> - <element signature="e#223#224#0" expanded="true" /> - <element signature="e#268#269#0" expanded="true" /> - <element signature="e#309#310#0" expanded="true" /> + <element signature="e#278#279#0" expanded="false" /> + <element signature="e#321#322#0" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouGetStreetRepairs.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/YourBuildingLoanMatures.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="42" lean-forward="true" selection-start-line="11" selection-start-column="42" selection-end-line="11" selection-end-column="42" /> - <folding> - <element signature="e#307#308#0" expanded="true" /> - <element signature="e#356#357#0" expanded="true" /> - </folding> + <state relative-caret-position="150"> + <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouWonBeauty.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/AdvanceToGoCC.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="32" lean-forward="false" selection-start-line="11" selection-start-column="32" selection-end-line="11" selection-end-column="32" /> - <folding> - <element signature="e#143#144#0" expanded="true" /> - <element signature="e#239#240#0" expanded="true" /> - <element signature="e#284#285#0" expanded="true" /> - <element signature="e#325#326#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="5" column="13" lean-forward="false" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/YouReceivedInheitance.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/BankError.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> - <folding> - <element signature="e#161#162#0" expanded="true" /> - <element signature="e#214#215#0" expanded="true" /> - <element signature="e#259#260#0" expanded="true" /> - <element signature="e#301#302#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToGoChance.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/DoctorFees.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="240"> - <caret line="16" column="5" lean-forward="true" selection-start-line="16" selection-start-column="5" selection-end-line="16" selection-end-column="5" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#297#298#0" expanded="true" /> - <element signature="e#336#337#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToIllinois.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/FromStockSale.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="15" column="36" lean-forward="false" selection-start-line="15" selection-start-column="36" selection-end-line="15" selection-end-column="36" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#348#349#0" expanded="true" /> - <element signature="e#393#394#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToStCharles.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GetOutOfJailCC.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="15" column="37" lean-forward="false" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#372#373#0" expanded="true" /> - <element signature="e#418#419#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToRailRoad.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GoToJailCC.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="195"> - <caret line="13" column="4" lean-forward="false" selection-start-line="13" selection-start-column="4" selection-end-line="24" selection-end-column="5" /> - <folding> - <element signature="imports" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="5" column="13" lean-forward="false" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToUtility.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/GrandOpera.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="285"> - <caret line="19" column="9" lean-forward="true" selection-start-line="19" selection-start-column="9" selection-end-line="19" selection-end-column="9" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#650#651#0" expanded="true" /> - <element signature="e#724#725#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/BankPaysYou.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/HolidayFund.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> - <folding> - <element signature="e#125#126#0" expanded="true" /> - <element signature="e#191#192#0" expanded="true" /> - <element signature="e#236#237#0" expanded="true" /> - <element signature="e#277#278#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GetOutOfJailChance.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/IncomeTaxRefund.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="150"> - <caret line="10" column="26" lean-forward="false" selection-start-line="10" selection-start-column="26" selection-end-line="10" selection-end-column="26" /> - <folding> - <element signature="e#294#295#0" expanded="true" /> - <element signature="e#353#354#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GoToJailChance.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/LifeInsurance.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="15" column="34" lean-forward="true" selection-start-line="15" selection-start-column="34" selection-end-line="15" selection-end-column="34" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#355#356#0" expanded="true" /> - <element signature="e#396#397#0" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="4" column="13" lean-forward="false" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/MakeGeneralRepairs.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/ChanceCard.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="195"> - <caret line="13" column="1" lean-forward="true" selection-start-line="13" selection-start-column="1" selection-end-line="13" selection-end-column="1" /> + <state relative-caret-position="120"> + <caret line="8" column="4" lean-forward="false" selection-start-line="8" selection-start-column="4" selection-end-line="10" selection-end-column="5" /> <folding> - <element signature="e#309#310#0" expanded="true" /> - <element signature="e#358#359#0" expanded="true" /> + <element signature="e#145#146#0" expanded="false" /> + <element signature="e#179#180#0" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/PayPoorTax.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/CommunityChestCards/CommunityChestCard.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> + <state relative-caret-position="150"> + <caret line="10" column="5" lean-forward="false" selection-start-line="10" selection-start-column="5" selection-end-line="10" selection-end-column="5" /> <folding> - <element signature="e#123#124#0" expanded="true" /> - <element signature="e#179#180#0" expanded="true" /> - <element signature="e#224#225#0" expanded="true" /> - <element signature="e#270#271#0" expanded="true" /> + <element signature="e#161#162#0" expanded="false" /> + <element signature="e#195#196#0" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/TakeTripToReading.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/AdvanceToGoChance.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="15" column="37" lean-forward="false" selection-start-line="15" selection-start-column="37" selection-end-line="15" selection-end-column="37" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#362#363#0" expanded="true" /> - <element signature="e#408#409#0" expanded="true" /> - </folding> + <state relative-caret-position="240"> + <caret line="16" column="5" lean-forward="true" selection-start-line="16" selection-start-column="5" selection-end-line="16" selection-end-column="5" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/TakeWalkOnBoardwalk.java"> + <entry file="file://$PROJECT_DIR$/src/Pieces/Dice.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="15" column="39" lean-forward="true" selection-start-line="15" selection-start-column="39" selection-end-line="15" selection-end-column="39" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#372#373#0" expanded="true" /> - <element signature="e#418#419#0" expanded="true" /> - </folding> + <state relative-caret-position="375"> + <caret line="27" column="23" lean-forward="true" selection-start-line="27" selection-start-column="23" selection-end-line="27" selection-end-column="23" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/YouAreChairman.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Space.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="165"> - <caret line="11" column="34" lean-forward="false" selection-start-line="11" selection-start-column="34" selection-end-line="11" selection-end-column="34" /> - <folding> - <element signature="e#131#132#0" expanded="true" /> - <element signature="e#233#234#0" expanded="true" /> - <element signature="e#278#279#0" expanded="true" /> - <element signature="e#321#322#0" expanded="true" /> - </folding> + <state relative-caret-position="90"> + <caret line="6" column="23" lean-forward="false" selection-start-line="6" selection-start-column="23" selection-end-line="6" selection-end-column="23" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/YourBuildingLoanMatures.java"> + <entry file="file://$PROJECT_DIR$/src/Board/FreeParking.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="180"> - <caret line="12" column="5" lean-forward="true" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" /> - <folding> - <element signature="e#150#151#0" expanded="true" /> - <element signature="e#228#229#0" expanded="true" /> - <element signature="e#273#274#0" expanded="true" /> - <element signature="e#315#316#0" expanded="true" /> - </folding> + <state relative-caret-position="255"> + <caret line="17" column="25" lean-forward="false" selection-start-line="17" selection-start-column="25" selection-end-line="17" selection-end-column="25" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/YouWonCrossword.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Go.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="75"> - <caret line="5" column="28" lean-forward="true" selection-start-line="5" selection-start-column="28" selection-end-line="5" selection-end-column="28" /> - <folding /> + <state relative-caret-position="240"> + <caret line="16" column="25" lean-forward="false" selection-start-line="16" selection-start-column="25" selection-end-line="16" selection-end-column="25" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/ChanceCard.java"> + <entry file="file://$PROJECT_DIR$/src/Board/GoToJail.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="120"> - <caret line="8" column="51" lean-forward="true" selection-start-line="8" selection-start-column="51" selection-end-line="8" selection-end-column="51" /> + <state relative-caret-position="345"> + <caret line="23" column="25" lean-forward="false" selection-start-line="23" selection-start-column="25" selection-end-line="23" selection-end-column="25" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Pieces/ChanceCards/GoBackThree.java"> + <entry file="file://$PROJECT_DIR$/test/Board/CommunityChestTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="150"> - <caret line="12" column="56" lean-forward="false" selection-start-line="12" selection-start-column="56" selection-end-line="12" selection-end-column="56" /> + <state relative-caret-position="210"> + <caret line="19" column="88" lean-forward="false" selection-start-line="19" selection-start-column="88" selection-end-line="19" selection-end-column="88" /> <folding> - <element signature="imports" expanded="true" /> + <element signature="imports" expanded="false" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/Chance.java"> + <entry file="file://$PROJECT_DIR$/test/Board/FreeParkingTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="300"> - <caret line="20" column="42" lean-forward="false" selection-start-line="20" selection-start-column="42" selection-end-line="20" selection-end-column="42" /> + <state relative-caret-position="180"> + <caret line="17" column="82" lean-forward="false" selection-start-line="17" selection-start-column="82" selection-end-line="17" selection-end-column="82" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/CommunityChest.java"> + <entry file="file://$PROJECT_DIR$/test/Board/GoTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="300"> - <caret line="20" column="51" lean-forward="false" selection-start-line="20" selection-start-column="51" selection-end-line="20" selection-end-column="51" /> + <state relative-caret-position="195"> + <caret line="17" column="43" lean-forward="false" selection-start-line="17" selection-start-column="43" selection-end-line="17" selection-end-column="43" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/FreeParking.java"> + <entry file="file://$PROJECT_DIR$/test/Board/GoToJailTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="300"> - <caret line="20" column="19" lean-forward="false" selection-start-line="20" selection-start-column="19" selection-end-line="20" selection-end-column="19" /> + <state relative-caret-position="180"> + <caret line="17" column="80" lean-forward="false" selection-start-line="17" selection-start-column="80" selection-end-line="17" selection-end-column="80" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/GoToJail.java"> + <entry file="file://$PROJECT_DIR$/src/Board/PassingJail.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="420"> - <caret line="28" column="45" lean-forward="false" selection-start-line="28" selection-start-column="45" selection-end-line="28" selection-end-column="45" /> - <folding /> + <state relative-caret-position="135"> + <caret line="9" column="25" lean-forward="false" selection-start-line="9" selection-start-column="25" selection-end-line="9" selection-end-column="25" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/Jail.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Tax.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="255"> - <caret line="17" column="39" lean-forward="false" selection-start-line="17" selection-start-column="39" selection-end-line="17" selection-end-column="39" /> + <state relative-caret-position="60"> + <caret line="4" column="31" lean-forward="false" selection-start-line="4" selection-start-column="31" selection-end-line="4" selection-end-column="31" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/Property.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Utilities.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="315"> - <caret line="21" column="41" lean-forward="false" selection-start-line="21" selection-start-column="41" selection-end-line="21" selection-end-column="41" /> - <folding> - <element signature="imports" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="8" column="11" lean-forward="false" selection-start-line="8" selection-start-column="11" selection-end-line="8" selection-end-column="11" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Players/Bank.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Chance.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="225"> - <caret line="17" column="30" lean-forward="false" selection-start-line="17" selection-start-column="30" selection-end-line="17" selection-end-column="30" /> - <folding /> + <state relative-caret-position="330"> + <caret line="23" column="43" lean-forward="false" selection-start-line="23" selection-start-column="43" selection-end-line="23" selection-end-column="43" /> + <folding> + <element signature="e#530#531#0" expanded="false" /> + </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Main.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Railroad.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="0"> - <caret line="0" column="13" lean-forward="false" selection-start-line="0" selection-start-column="13" selection-end-line="0" selection-end-column="13" /> + <state relative-caret-position="46"> + <caret line="7" column="11" lean-forward="false" selection-start-line="7" selection-start-column="11" selection-end-line="7" selection-end-column="11" /> <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/MonopolyBoard.java"> + <entry file="file://$PROJECT_DIR$/src/Board/CommunityChest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="1860"> - <caret line="128" column="31" lean-forward="false" selection-start-line="128" selection-start-column="31" selection-end-line="128" selection-end-column="31" /> - <folding> - <element signature="imports" expanded="true" /> - <element signature="e#537#538#0" expanded="true" /> - <element signature="e#570#571#0" expanded="true" /> - </folding> + <state relative-caret-position="240"> + <caret line="16" column="25" lean-forward="false" selection-start-line="16" selection-start-column="25" selection-end-line="16" selection-end-column="25" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/Go.java"> + <entry file="file://$PROJECT_DIR$/src/Players/Bank.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="285"> - <caret line="19" column="89" lean-forward="false" selection-start-line="19" selection-start-column="89" selection-end-line="19" selection-end-column="89" /> - <folding /> + <state relative-caret-position="225"> + <caret line="17" column="30" lean-forward="false" selection-start-line="17" selection-start-column="30" selection-end-line="17" selection-end-column="30" /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Board/Space.java"> + <entry file="file://$PROJECT_DIR$/test/AllTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="328"> - <caret line="34" column="8" lean-forward="false" selection-start-line="34" selection-start-column="8" selection-end-line="34" selection-end-column="8" /> + <state relative-caret-position="135"> + <caret line="9" column="22" lean-forward="false" selection-start-line="9" selection-start-column="22" selection-end-line="9" selection-end-column="22" /> <folding> - <element signature="e#239#240#0" expanded="true" /> - <element signature="e#277#278#0" expanded="true" /> + <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/src/Players/Player.java"> + <entry file="file://$PROJECT_DIR$/src/Misc/CustomLogger.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="-4"> - <caret line="17" column="0" lean-forward="true" selection-start-line="17" selection-start-column="0" selection-end-line="17" selection-end-column="0" /> + <state relative-caret-position="120"> + <caret line="8" column="0" lean-forward="false" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" /> <folding> <element signature="imports" expanded="true" /> </folding> @@ -963,58 +922,57 @@ </entry> <entry file="file://$PROJECT_DIR$/test/Board/ChanceTest.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="240"> - <caret line="16" column="45" lean-forward="false" selection-start-line="16" selection-start-column="45" selection-end-line="16" selection-end-column="62" /> + <state relative-caret-position="255"> + <caret line="17" column="37" lean-forward="false" selection-start-line="17" selection-start-column="37" selection-end-line="17" selection-end-column="37" /> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/test/Board/CommunityChestTest.java"> + <entry file="file://$PROJECT_DIR$/src/Players/Player.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="240"> - <caret line="16" column="70" lean-forward="false" selection-start-line="16" selection-start-column="70" selection-end-line="16" selection-end-column="70" /> + <state relative-caret-position="-637"> + <caret line="59" column="53" lean-forward="false" selection-start-line="59" selection-start-column="53" selection-end-line="59" selection-end-column="53" /> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/test/Board/GoTest.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Property.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="240"> - <caret line="16" column="58" lean-forward="false" selection-start-line="16" selection-start-column="58" selection-end-line="16" selection-end-column="58" /> - <folding> - <element signature="imports" expanded="true" /> - </folding> + <state relative-caret-position="60"> + <caret line="7" column="37" lean-forward="false" selection-start-line="7" selection-start-column="37" selection-end-line="7" selection-end-column="37" /> + <folding /> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/test/Board/FreeParkingTest.java"> + <entry file="file://$PROJECT_DIR$/src/Board/Jail.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="195"> - <caret line="13" column="0" lean-forward="true" selection-start-line="0" selection-start-column="0" selection-end-line="29" selection-end-column="0" /> + <state relative-caret-position="270"> + <caret line="18" column="25" lean-forward="false" selection-start-line="18" selection-start-column="25" selection-end-line="18" selection-end-column="25" /> <folding> - <element signature="imports" expanded="true" /> + <element signature="e#554#555#0" expanded="true" /> + <element signature="e#576#577#0" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/test/AllTest.java"> + <entry file="file://$PROJECT_DIR$/src/Board/MonopolyBoard.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="120"> - <caret line="8" column="21" lean-forward="true" selection-start-line="8" selection-start-column="21" selection-end-line="8" selection-end-column="21" /> + <state relative-caret-position="773"> + <caret line="332" column="17" lean-forward="false" selection-start-line="332" selection-start-column="17" selection-end-line="332" selection-end-column="17" /> <folding> <element signature="imports" expanded="true" /> </folding> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/test/Board/GoToJailTest.java"> + <entry file="file://$PROJECT_DIR$/src/Main.java"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="375"> - <caret line="25" column="17" lean-forward="false" selection-start-line="25" selection-start-column="17" selection-end-line="25" selection-end-column="17" /> + <state relative-caret-position="907"> + <caret line="110" column="40" lean-forward="false" selection-start-line="110" selection-start-column="40" selection-end-line="110" selection-end-column="40" /> <folding> <element signature="imports" expanded="true" /> </folding> diff --git a/Monopoly/out/production/Monopoly/Board/Chance.class b/Monopoly/out/production/Monopoly/Board/Chance.class index 0328ec07e703c131edfd5db15713504d85e2c483..8a2772bbb6e7e26248cae7c1c140e1fc27a64a43 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Chance.class and b/Monopoly/out/production/Monopoly/Board/Chance.class differ diff --git a/Monopoly/out/production/Monopoly/Board/CommunityChest.class b/Monopoly/out/production/Monopoly/Board/CommunityChest.class index d6f1dec0c1da86750aa1ec02934658fb565c0fc7..8eac91c0794200e7a0da95d7118389e707b17bca 100644 Binary files a/Monopoly/out/production/Monopoly/Board/CommunityChest.class and b/Monopoly/out/production/Monopoly/Board/CommunityChest.class differ diff --git a/Monopoly/out/production/Monopoly/Board/FreeParking.class b/Monopoly/out/production/Monopoly/Board/FreeParking.class index 171977b15909c299d38e9fb659cf4e0aa232e9bf..145906ce0be3b56dad7a1c09da6d9307a2a9e68c 100644 Binary files a/Monopoly/out/production/Monopoly/Board/FreeParking.class and b/Monopoly/out/production/Monopoly/Board/FreeParking.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Go.class b/Monopoly/out/production/Monopoly/Board/Go.class index 2dfd773beea80159263ac90c8ba60fd233758eb1..386b2e2e548774090d17be32fb99c1362cec5bf7 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Go.class and b/Monopoly/out/production/Monopoly/Board/Go.class differ diff --git a/Monopoly/out/production/Monopoly/Board/GoToJail.class b/Monopoly/out/production/Monopoly/Board/GoToJail.class index 46368b3869f250b2e399a4743ab1e9e80e23fce8..689b52d5056856310045cba2e8ffe75235e30493 100644 Binary files a/Monopoly/out/production/Monopoly/Board/GoToJail.class and b/Monopoly/out/production/Monopoly/Board/GoToJail.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Jail.class b/Monopoly/out/production/Monopoly/Board/Jail.class index f7518dd6ccd637690f78894b5f18550fa296bd9a..68197021e177f75a17fdcd2195d1b460f5d08066 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Jail.class and b/Monopoly/out/production/Monopoly/Board/Jail.class differ diff --git a/Monopoly/out/production/Monopoly/Board/MonopolyBoard.class b/Monopoly/out/production/Monopoly/Board/MonopolyBoard.class index 635925ed783729af76a91948c772705038b016be..d200614d8bd819e5024a4c8479e32989726fcfc7 100644 Binary files a/Monopoly/out/production/Monopoly/Board/MonopolyBoard.class and b/Monopoly/out/production/Monopoly/Board/MonopolyBoard.class differ diff --git a/Monopoly/out/production/Monopoly/Board/PassingJail.class b/Monopoly/out/production/Monopoly/Board/PassingJail.class index 2be9293dcca21ed27ba1a163812217265fc8c73d..771f1558350575c5b21e6a705a44a23385413d15 100644 Binary files a/Monopoly/out/production/Monopoly/Board/PassingJail.class and b/Monopoly/out/production/Monopoly/Board/PassingJail.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Property.class b/Monopoly/out/production/Monopoly/Board/Property.class index e948498c55aea52a062047c27204c9ca1e6b93a7..2daaececea6670c904aa217f623cb772903bc6e1 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Property.class and b/Monopoly/out/production/Monopoly/Board/Property.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Railroad.class b/Monopoly/out/production/Monopoly/Board/Railroad.class index 572c23d4f006714b552aa35a45dd6156b8c57613..1833e2756744be45b721ea5a262635dd1d24ee81 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Railroad.class and b/Monopoly/out/production/Monopoly/Board/Railroad.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Space.class b/Monopoly/out/production/Monopoly/Board/Space.class index 6a9aeb5311a311a8ca162c1aa772a61c89903a54..7b432fd89be145358bdaaf1992a7f09c9de7a4c7 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Space.class and b/Monopoly/out/production/Monopoly/Board/Space.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Tax.class b/Monopoly/out/production/Monopoly/Board/Tax.class index 03087be846bb32c1f3f019e38e4c204766c5e2d5..8f400cb79f8ffd4dc86aeff21597d78e4da2b7ab 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Tax.class and b/Monopoly/out/production/Monopoly/Board/Tax.class differ diff --git a/Monopoly/out/production/Monopoly/Board/Utilities.class b/Monopoly/out/production/Monopoly/Board/Utilities.class index d55e68d8e0e0910673d0fba82d3a7cd350e51c81..6c598caf925c29d2ad0c80eabbc466a1980cb312 100644 Binary files a/Monopoly/out/production/Monopoly/Board/Utilities.class and b/Monopoly/out/production/Monopoly/Board/Utilities.class differ diff --git a/Monopoly/out/production/Monopoly/Main.class b/Monopoly/out/production/Monopoly/Main.class index 69abdf0cd1ac6f2db3fbb6eff5f976691e3759ee..b44ebf31fc1e31749bddccfeb6e7131a70af02c4 100644 Binary files a/Monopoly/out/production/Monopoly/Main.class and b/Monopoly/out/production/Monopoly/Main.class differ diff --git a/Monopoly/out/production/Monopoly/Misc/CustomLogger.class b/Monopoly/out/production/Monopoly/Misc/CustomLogger.class new file mode 100644 index 0000000000000000000000000000000000000000..aca7c87c1173607068992ab089e7f4bd03236519 Binary files /dev/null and b/Monopoly/out/production/Monopoly/Misc/CustomLogger.class differ diff --git a/Monopoly/out/production/Monopoly/Pieces/ChanceCards/ChanceCard.class b/Monopoly/out/production/Monopoly/Pieces/ChanceCards/ChanceCard.class index 51e1717b26ebb2d9dd354a3f4a8173dc1639fcb2..2ce41095263d89e1722d794d5f4534028ff0b44d 100644 Binary files a/Monopoly/out/production/Monopoly/Pieces/ChanceCards/ChanceCard.class and b/Monopoly/out/production/Monopoly/Pieces/ChanceCards/ChanceCard.class differ diff --git a/Monopoly/out/production/Monopoly/Pieces/CommunityChestCards/CommunityChestCard.class b/Monopoly/out/production/Monopoly/Pieces/CommunityChestCards/CommunityChestCard.class index 8f56cd5c365e1f1e57694b94292d235d4f44ba02..5e4abf6eb9238845496fd9cfc33ab6456014640c 100644 Binary files a/Monopoly/out/production/Monopoly/Pieces/CommunityChestCards/CommunityChestCard.class and b/Monopoly/out/production/Monopoly/Pieces/CommunityChestCards/CommunityChestCard.class differ diff --git a/Monopoly/out/production/Monopoly/Pieces/Dice.class b/Monopoly/out/production/Monopoly/Pieces/Dice.class index 2dd14423f7b1eac8538b8ed855edb99725817443..b63b114beba5d9b3e8726562c5f93adf4174ad14 100644 Binary files a/Monopoly/out/production/Monopoly/Pieces/Dice.class and b/Monopoly/out/production/Monopoly/Pieces/Dice.class differ diff --git a/Monopoly/out/production/Monopoly/Players/Player.class b/Monopoly/out/production/Monopoly/Players/Player.class index e0b23e9ecf5bca84491323463a30d2511b99450c..0c870d486c7968ca58067be4a3ef16376fa032b9 100644 Binary files a/Monopoly/out/production/Monopoly/Players/Player.class and b/Monopoly/out/production/Monopoly/Players/Player.class differ diff --git a/Monopoly/out/test/Monopoly/AllTest.class b/Monopoly/out/test/Monopoly/AllTest.class index a21b2de3097c4b552b5e057415317fb35a1bca99..783dc6ec14343fb3c286be8b9894cede68d1bbbd 100644 Binary files a/Monopoly/out/test/Monopoly/AllTest.class and b/Monopoly/out/test/Monopoly/AllTest.class differ diff --git a/Monopoly/out/test/Monopoly/Board/ChanceTest.class b/Monopoly/out/test/Monopoly/Board/ChanceTest.class index 52e1a8ae3ca07424f5a05702b9f77cc513891a5e..6764802efaf4f2283e5289cee5a8f80d03410d79 100644 Binary files a/Monopoly/out/test/Monopoly/Board/ChanceTest.class and b/Monopoly/out/test/Monopoly/Board/ChanceTest.class differ diff --git a/Monopoly/out/test/Monopoly/Board/CommunityChestTest.class b/Monopoly/out/test/Monopoly/Board/CommunityChestTest.class index 8cf3200955ea04d1198134b3b6162d8cb2d4e820..8bc14b08b8616219f901882a1f86fe4326016014 100644 Binary files a/Monopoly/out/test/Monopoly/Board/CommunityChestTest.class and b/Monopoly/out/test/Monopoly/Board/CommunityChestTest.class differ diff --git a/Monopoly/out/test/Monopoly/Board/FreeParkingTest.class b/Monopoly/out/test/Monopoly/Board/FreeParkingTest.class index 40083ed16dacf13e39edee8ae4aa762036eaddba..dfb76739ba893d211f3c51936dff02d1b308f75e 100644 Binary files a/Monopoly/out/test/Monopoly/Board/FreeParkingTest.class and b/Monopoly/out/test/Monopoly/Board/FreeParkingTest.class differ diff --git a/Monopoly/out/test/Monopoly/Board/GoTest.class b/Monopoly/out/test/Monopoly/Board/GoTest.class index c5dce2efdf4327df8e927d02217beccbf9e41001..0ccf44b805cf4b009c3d2b2b07ba81d226fa63cd 100644 Binary files a/Monopoly/out/test/Monopoly/Board/GoTest.class and b/Monopoly/out/test/Monopoly/Board/GoTest.class differ diff --git a/Monopoly/out/test/Monopoly/Board/GoToJailTest.class b/Monopoly/out/test/Monopoly/Board/GoToJailTest.class index 1da5ff55d3cbc1f714c9b029253421ff5f42f221..a36d9690335e196adc9368acfc7a1a85bcca3a28 100644 Binary files a/Monopoly/out/test/Monopoly/Board/GoToJailTest.class and b/Monopoly/out/test/Monopoly/Board/GoToJailTest.class differ diff --git a/Monopoly/src/Board/Chance.java b/Monopoly/src/Board/Chance.java index 190185ae3911c40e4fd5ce68a58971d0f3394a7e..4757d3c55a6908731b8b14b143eff172ba05f5bf 100644 --- a/Monopoly/src/Board/Chance.java +++ b/Monopoly/src/Board/Chance.java @@ -11,9 +11,10 @@ public class Chance extends Space{ /** * The constructor */ - public Chance(Space next, Space prev) { + public Chance(Space next, Space prev, String name) { this.next = next; this.prev = prev; + this.name = name; } diff --git a/Monopoly/src/Board/CommunityChest.java b/Monopoly/src/Board/CommunityChest.java index 8aec4fe801f1e48279c3b6cc07195257e0bd7578..f4f37de1f69f280dc20c38b46c8adc6b8c1a498e 100644 --- a/Monopoly/src/Board/CommunityChest.java +++ b/Monopoly/src/Board/CommunityChest.java @@ -11,9 +11,10 @@ public class CommunityChest extends Space{ /** * The constuctor */ - public CommunityChest(Space next, Space prev) { + public CommunityChest(Space next, Space prev, String name) { this.next = next; this.prev = prev; + this.name = name; } diff --git a/Monopoly/src/Board/FreeParking.java b/Monopoly/src/Board/FreeParking.java index b3c24d39aa8a58b2c12f63e74e42865616155e3b..61881ebbb104688c56ffef8134882963c626646c 100644 --- a/Monopoly/src/Board/FreeParking.java +++ b/Monopoly/src/Board/FreeParking.java @@ -12,9 +12,10 @@ public class FreeParking extends Space{ /** * The constuctor */ - public FreeParking(Space next, Space prev) { + public FreeParking(Space next, Space prev, String name) { this.next = next; this.prev = prev; + this.name = name; } /** diff --git a/Monopoly/src/Board/Go.java b/Monopoly/src/Board/Go.java index b9ba9ebb4747e498747da382abbd7598b6696327..01fe30681be9416ee2e3ab670ab029ae9aedbaeb 100644 --- a/Monopoly/src/Board/Go.java +++ b/Monopoly/src/Board/Go.java @@ -11,9 +11,10 @@ public class Go extends Space{ /** * The constructor */ - public Go(Space next, Space prev) { + public Go(Space next, Space prev, String name) { this.next = next; this.prev = prev; + this.name = name; } /** diff --git a/Monopoly/src/Board/GoToJail.java b/Monopoly/src/Board/GoToJail.java index 3e0ed890f96b77ff11dd3479409179a9885f4025..432230a820cb3d158e17eeb268e02df056b1596c 100644 --- a/Monopoly/src/Board/GoToJail.java +++ b/Monopoly/src/Board/GoToJail.java @@ -18,9 +18,10 @@ public class GoToJail extends Space{ * @param prev - The previous space * @param jail - The jail space */ - public GoToJail(Space next, Space prev, Space jail) { + public GoToJail(Space next, Space prev, String name, Space jail) { this.next = next; this.prev = prev; + this.name = name; this.jail = jail; } diff --git a/Monopoly/src/Board/Jail.java b/Monopoly/src/Board/Jail.java index 3bd93780fb8974b565fd9cb157b8813240b355ee..2e23f2f6c5b32c1f8babc949865e6c25fbc8a4d7 100644 --- a/Monopoly/src/Board/Jail.java +++ b/Monopoly/src/Board/Jail.java @@ -8,19 +8,15 @@ import Players.Player; */ public class Jail extends Space{ - //A variable to count the number of turns that a user has spent in jail (They are forced out at 3) - int turnCount; - - /** * The constructor * @param next - The next space * @param prev - The previous space */ - public Jail(Space next, Space prev) { + public Jail(Space next, Space prev, String name) { this.next = next; this.prev = prev; - this.turnCount = 0; + this.name = name; } @@ -29,33 +25,6 @@ public class Jail extends Space{ * @param currPlayer - The current player */ public void action(Player currPlayer) { - turnCount++; return; } - - - /** - * A function to see how the player wishes to get out of the jail, and whether it's succesful or not - * @param currPlayer - The current player - * @param method - The method by which the player wishes to try and get out of jail - * @param dice1 - The number from the first die - * @param dice2 - The number from the second die - * @return A boolean representing the success of the escape - */ - public boolean getOut(Player currPlayer, String method, int dice1, int dice2) { - if(method.equals("card")) - return true; - else if(method.equals("double")){ - if(dice1 == dice2) - return true; - else - return false; - } - else if(method.equals("pay") || turnCount > 3){ - currPlayer.charge(50); - return true; - } - else - return false; - } } diff --git a/Monopoly/src/Board/MonopolyBoard.java b/Monopoly/src/Board/MonopolyBoard.java index a9341aac73be6c65857de955543a62a9a5a17ac6..8f88965a63c9846a267f76834fd2ea62a3ab24e1 100644 --- a/Monopoly/src/Board/MonopolyBoard.java +++ b/Monopoly/src/Board/MonopolyBoard.java @@ -1,38 +1,85 @@ package Board; +import Misc.CustomLogger; import Pieces.ChanceCards.*; import Pieces.CommunityChestCards.*; import Pieces.Dice; import Players.Bank; import Players.Player; + import java.awt.*; import java.util.ArrayList; import java.util.Collections; +import java.util.Scanner; public class MonopolyBoard { + // The bank public Bank bank; + + // The first space on the board public Space go; + + // The jail space on the board, saved for easy access public Space jail; - public Dice die1; - public Dice die2; + + // An arraylist of the players in the game (Currently limited to 2-4) public ArrayList<Player> players; + + // The chance deck public ArrayList<ChanceCard> ChanceDeck; + + // The community chest deck public ArrayList<CommunityChestCard> CommunityChestDeck; + // A custom log that I built + public CustomLogger log; + + /** + * The default (and only) constructor. Calls a function that builds the board. + */ public MonopolyBoard() { initializeBoard(); } + /** + * Adds a player to the board + * @param newPlayer - The player to add to the board. + */ + public void addPlayer(Player newPlayer) { + players.add(newPlayer); + } + + /** + * Gets a card from the chance deck + * @return The card that is drawn from the deck + */ public ChanceCard getChanceCard() { - return ChanceDeck.remove(ChanceDeck.size()-1); + ChanceCard tmp = ChanceDeck.remove(ChanceDeck.size()-1); + log.logInfo("Drawing Chance Card: "+tmp.getDescrip()); + return tmp; } + /** + * Gets a card from the community chest deck + * @return The card that is drawn from the deck + */ public CommunityChestCard getCommunityChestCard() { - return CommunityChestDeck.remove(CommunityChestDeck.size()-1); + CommunityChestCard tmp = CommunityChestDeck.remove(CommunityChestDeck.size()-1); + log.logInfo("Drawing Community Chest Card: "+tmp.getDescrip()); + return tmp; } + /** + * Initializes the Chance deck, takes all the addresses of spaces for cards that send you straight to a space + * @param go - The go space address + * @param ill - The space address for Illinois Ave + * @param stCharles - The space address for St. Charles + * @param jail - The space address for jail + * @param rRR - The space address for Reading Rail Road + * @param boardwalk - The space address for the Boardwalk + */ public void initializeChanceDeck(Space go, Space ill, Space stCharles, Space jail, Space rRR, Space boardwalk) { ChanceDeck = new ArrayList<>(); ChanceDeck.add(new AdvanceToGoChance(go)); @@ -54,6 +101,11 @@ public class MonopolyBoard { Collections.shuffle(ChanceDeck); } + /** + * Initiailizes the community chest deck + * @param go - The go space address + * @param jail - The address of the jail space + */ public void initializeCommunityChestDeck(Space go, Space jail) { CommunityChestDeck = new ArrayList<>(); CommunityChestDeck.add(new AdvanceToGoCC(go)); @@ -75,20 +127,27 @@ public class MonopolyBoard { Collections.shuffle(CommunityChestDeck); } + /** + * Initializes the board. + * One unholy mess of a function. + * @TODO: Cleanup... if possible? + */ public void initializeBoard() { - go = new Go(null, null); - go.last().next = new Property(null, go.last(), "Mediterranean Avenue", 60, 50, (new int[]{2,4,10,30,90,160,250}), Color.WHITE); - go.last().next = new CommunityChest(null, go.last()); - go.last().next = new Property(null, go.last(), "Baltic Avenue", 60, 50, (new int[]{4,8,20,60,180,320,450}), Color.WHITE); + log = new CustomLogger(); + log.logInfo("Creating Board"); + go = new Go(null, null, "Go"); + go.last().next = new Property(null, go.last(), "Mediterranean Avenue", 60, 50, (new int[]{2,4,10,30,90,160,250}), Color.white); + go.last().next = new CommunityChest(null, go.last(), "Community Chest"); + go.last().next = new Property(null, go.last(), "Baltic Avenue", 60, 50, (new int[]{4,8,20,60,180,320,450}), Color.white); go.last().next = new Tax(null, go.last(), "Income Tax", 200); Space rRR = new Railroad(null, go.last(), "Reading Railroad"); go.last().next = rRR; go.last().next = new Property(null, go.last(), "Oriental Avenue", 100, 50, (new int[]{6,12,30,90,270,400,550}), Color.cyan); - go.last().next = new Chance(null, go.last()); + go.last().next = new Chance(null, go.last(), "Chance"); go.last().next = new Property(null, go.last(), "Vermont Avenue", 100, 50, (new int[]{6,12,30,90,270,400,550}), Color.cyan); go.last().next = new Property(null, go.last(), "Connecticut Avenue", 120, 60, (new int[]{8,16,40,100,300,450,600}), Color.cyan); - go.last().next = new PassingJail(null, go.last()); - jail = new Jail(go.last(), null); + go.last().next = new PassingJail(null, go.last(), "Passing Jail"); + jail = new Jail(go.last(), null, "Jail"); Space stCharles = new Property(null, go.last(), "St.Charles Place", 140, 100, (new int[]{10, 20, 50, 150, 450, 625}), Color.magenta); go.last().next = stCharles; go.last().next = new Utilities(null, go.last(), "Electric Company"); @@ -96,12 +155,12 @@ public class MonopolyBoard { go.last().next = new Property(null, go.last(), "Virginia Avenue", 160, 100, (new int[]{12,24,60,180,500,700,900}), Color.magenta); go.last().next = new Railroad(null, go.last(), "Pennsylvania Railroad"); go.last().next = new Property(null, go.last(), "St.James Place", 180, 100, (new int[]{14, 28, 70, 200, 550, 750, 950}), Color.orange); - go.last().next = new CommunityChest(null, go.last()); + go.last().next = new CommunityChest(null, go.last(), "Community Chest"); go.last().next = new Property(null, go.last(), "Tennessee Avenue", 180, 100, (new int[]{14, 28, 70, 200, 550, 750, 950}), Color.orange); go.last().next = new Property(null, go.last(), "New York Avenue", 200, 100, (new int[]{16, 32, 80, 220, 600, 800, 1000}), Color.orange); - go.last().next = new FreeParking(null, go.last()); + go.last().next = new FreeParking(null, go.last(), "Free Parking"); go.last().next = new Property(null, go.last(), "Kentucky Avenue", 220, 150, (new int[]{18,36,90,250,700,875,1050}), Color.red); - go.last().next = new Chance(null, go.last()); + go.last().next = new Chance(null, go.last(), "Chance"); go.last().next = new Property(null, go.last(), "Indiana Avenue", 220, 150, (new int[]{18,36,90,250,700,875,1050}), Color.red); Space ill = new Property(null, go.last(), "Illinois Avenue", 240, 150, (new int[]{20,40,100,300,750,925,1100}), Color.red); go.last().next = ill; @@ -110,27 +169,235 @@ public class MonopolyBoard { go.last().next = new Property(null, go.last(), "Ventnor Avenue", 260, 150, (new int[]{22,44,110,330,800,975,1150}), Color.yellow); go.last().next = new Utilities(null, go.last(), "Water Works"); go.last().next = new Property(null, go.last(), "Marvin Gardens", 280, 150, (new int[]{24,48,120,360,850,1025,1200}), Color.yellow); - go.last().next = new GoToJail(null, go.last(), jail); + go.last().next = new GoToJail(null, go.last(), "Go To Jail", jail); go.last().next = new Property(null, go.last(), "Pacific Avenue", 300, 200, (new int[]{26,52,130,390,900,1100,1275}), Color.green); go.last().next = new Property(null, go.last(), "North Carolina Avenue", 300, 200, (new int[]{26,52,130,390,900,1100,1275}), Color.green); - go.last().next = new CommunityChest(null, go.last()); + go.last().next = new CommunityChest(null, go.last(), "Community Chest"); go.last().next = new Property(null, go.last(), "Pennsylvania Avenue", 320, 200, (new int[]{28,56,150,450,1000,1200,1400}), Color.green); go.last().next = new Railroad(null, go.last(), "Short Line"); - go.last().next = new Chance(null, go.last()); + go.last().next = new Chance(null, go.last(), "Chance"); go.last().next = new Property(null, go.last(), "Park Place", 350, 200, (new int[]{35,70,175,500,1100,1300,1500}), Color.blue); go.last().next = new Tax(null, go.last(), "Luxury Tax", 100); Space boardwalk = new Property(null, go.last(), "Boardwalk", 400, 200, (new int[]{50,100,200,600,1400,1700,2000}), Color.blue); go.last().next = boardwalk; boardwalk.next = go; + go.prev = boardwalk; + log.logInfo("Creating Decks"); initializeChanceDeck(go, ill, stCharles, jail, rRR, boardwalk); initializeCommunityChestDeck(go, jail); + log.logInfo("Creating Bank and Player List"); this.bank = new Bank(); + this.players = new ArrayList<>(); + + log.logInfo("The Board:"); + System.out.println(this.toString()); } - public void startGame() { + /** + * Overriding of the default toString so we can print the condition of the board for use in logging, + * and low level GUI interaction, and debugging. + * @return The string representation of the board, including the locations of players, the amount + * cards left in the decks, and the amount of money players have. + */ + @Override + public String toString() { + ArrayList<String> boardArrList = new ArrayList<>(); + boardArrList.add("--------------------------------------------------------\n"); + boardArrList.add("| | | | | | | | | | | |\n"); + boardArrList.add("| | | | | | | | | | | |\n"); + boardArrList.add("--------------------------------------------------------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | CC: xx/16 | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | Monopoly | |\n"); + boardArrList.add("| | By: Matt | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("------ ------\n"); + boardArrList.add("| | | |\n"); + boardArrList.add("| | Chance: xx/16 | |\n"); + boardArrList.add("----------- ------\n"); + boardArrList.add("| | | | |\n"); + boardArrList.add("| | | | |\n"); + boardArrList.add("--------------------------------------------------------\n"); + boardArrList.add("| | | | | | | | | | | |\n"); + boardArrList.add("| | | | | | | | | | | |\n"); + boardArrList.add("--------------------------------------------------------\n"); + String ccCount = ""+(CommunityChestDeck.size()); + if(CommunityChestDeck.size() < 10) + ccCount = "0"+ccCount; + boardArrList.set(7, boardArrList.get(7).substring(0,14)+(ccCount)+boardArrList.get(7).substring(16)); + + String chanceCount = ""+(CommunityChestDeck.size()); + if(CommunityChestDeck.size() < 10) + chanceCount = "0"+chanceCount; + boardArrList.set(26, boardArrList.get(26).substring(0,43)+(chanceCount)+boardArrList.get(26).substring(45)); + + for(Player currPlayer : players) { + int playerNum = currPlayer.order; + int drawX = (playerNum - 1) % 2; + int drawY = (playerNum > 2) ? 1 : 0; + Space currSpace = currPlayer.currSpace; + int count = 0; + Space tmp = go; + if(!currSpace.equals(go) && !currSpace.equals(jail)) { + tmp = tmp.next; + count++; + while(!tmp.equals(go)) { + if(tmp.equals(currSpace)) { + break; + } + count++; + tmp = tmp.next; + } + if(tmp.equals(go)) + log.logError("Unable to find space for player!"); + } + if(currSpace.equals(jail)) { + boardArrList.set((28+drawY), boardArrList.get((28+drawY)).substring(0,(7+drawX))+(playerNum)+boardArrList.get((28+drawY)).substring((8+drawX))); + } else { + int x = -1; + int y = -1; + if(count < 11) { + x = 11 - count; + y = 1; + } + else if(count >= 11 && count < 21) { + x = 1; + y = 1 + (count - 10); + } + else if(count >= 21 && count < 31) { + x = 1 + (count - 20); + y = 11; + } + else { + x = 11; + y = 11 - (count-30); + } + int row = ((11 - y) * 3) + 1; + int col = (( x - 1) * 5) + 2; + boardArrList.set((row+drawY), boardArrList.get((row+drawY)).substring(0,(col+drawX))+(playerNum)+boardArrList.get((row+drawY)).substring((col+1+drawX))); + } + } + + boardArrList.add("\n"); + for(Player currPlayer : players) { + boardArrList.add(""+currPlayer.name+": "+currPlayer.money+"\n"); + } + + String tmp = ""; + for(String str : boardArrList) + tmp = tmp + str; + return tmp; + } + + /** + * Auctions off a particular property + * @param space - The space ot be auctioned + */ + public void auction(Space space) { + Scanner reader = new Scanner(System.in); + int currAmount = 0; + Player lastBidder = null; + Player currBidder = players.get(0); + int next = 0; + while(!lastBidder.equals(currBidder)) { + next = (next+1)%(players.size()); + System.out.println("The current bid is $"+currAmount); + System.out.print("Do you wish to bid more? (y/n): "); + String input = reader.next(); + if(input.equals("y")) { + System.out.print("How much would you like to bid: "); + int amount = reader.nextInt(); + if(amount < currAmount) + log.logError("Incorrect bidding amount!"); + else { + currAmount = amount; + lastBidder = currBidder; + } + + } + currBidder = players.get(next); + } + lastBidder.giveMoneyToBank(currAmount); + lastBidder.properties.add(space); } + public void levelUpProperties() { + for(Player currPlayer : players) { + for(Space property : currPlayer.properties) { + if(property instanceof Property) { + Color currColor = ((Property) property).color; + int colorCount = 1; + for(Space tmp : currPlayer.properties) { + if(tmp instanceof Property && ((Property) tmp).color == currColor && !tmp.equals(property)) { + colorCount++; + } + } + if(currColor == Color.white || currColor == Color.blue) { + if(colorCount == 2 && ((Property) property).level == 0) + ((Property) property).setLevel(1); + else if(colorCount != 2 && ((Property) property).level == 1) + ((Property) property).setLevel(0); + } + else { + if(colorCount == 3 && ((Property) property).level == 0) + ((Property) property).setLevel(1); + else if(colorCount != 3 && ((Property) property).level == 1) + ((Property) property).setLevel(0); + } + } + else if(property instanceof Railroad) { + int rrCount = 0; + for(Space tmp : currPlayer.properties) { + if(tmp instanceof Railroad && !tmp.equals(property)) { + rrCount++; + } + } + ((Railroad) property).setLevel(rrCount); + } + else if(property instanceof Utilities) { + int utilCount = 0; + for(Space tmp : currPlayer.properties) { + if(tmp instanceof Utilities && !tmp.equals(property)) { + utilCount++; + } + } + ((Utilities) property).setLevel(utilCount); + } + } + } + } + + public void buyHouse(Player currPlayer, Space space) { + if(space instanceof Property) { + if(((Property) space).level == 0) + log.logWarning("Unable to buy houses unless you have a monopoly!"); + else if(((Property) space).level == 6) + log.logWarning("Unable to buy more, you have a hotel"); + else { + currPlayer.giveMoneyToBank(((Property) space).buildingCost); + ((Property) space).setLevel(((Property) space).level + 1); + } + } + else { + log.logWarning("Not a property!"); + } + } } diff --git a/Monopoly/src/Board/PassingJail.java b/Monopoly/src/Board/PassingJail.java index 02721fd370bd9064b8155a5229781ab128e0e372..67d09c68288e60e757d0edb1e8b5cc75c950e6dd 100644 --- a/Monopoly/src/Board/PassingJail.java +++ b/Monopoly/src/Board/PassingJail.java @@ -4,9 +4,10 @@ import Players.Player; public class PassingJail extends Space{ - public PassingJail(Space next, Space prev) { + public PassingJail(Space next, Space prev, String name) { this.next = next; this.prev = prev; + this.name = name; } public void action(Player currPlayer) { diff --git a/Monopoly/src/Board/Property.java b/Monopoly/src/Board/Property.java index 250f41f1140195a41bf206925008720d30dcf4b3..3637747be6dc8d6068e289234ef61cab66e7e8d3 100644 --- a/Monopoly/src/Board/Property.java +++ b/Monopoly/src/Board/Property.java @@ -6,12 +6,11 @@ import java.awt.*; import java.util.Arrays; public class Property extends Space { - String name; - int cost; - int buildingCost; - int level; + public int cost; + public int buildingCost; + public int level; int[] rent; - Color color; + public Color color; Player owner; public Property(Space next, Space prev, String name, int cost, int buildingCost, int[] rent, Color color) { @@ -30,9 +29,10 @@ public class Property extends Space { if(owner == null){ if(currPlayer.wantsToBuy(this)) { currPlayer.charge(cost); + currPlayer.properties.add(this); owner = currPlayer; } - else { return; } + else { return; } // Calls for the auction in wantsToBuy() since it allows easier access to the board and all players } else { currPlayer.charge(rent[level]); diff --git a/Monopoly/src/Board/Railroad.java b/Monopoly/src/Board/Railroad.java index b4a9b997fafbddf9815fe1f945cad72e2a6b8f5c..d35427c19d884f9ba724ac93ff3b9329602a3466 100644 --- a/Monopoly/src/Board/Railroad.java +++ b/Monopoly/src/Board/Railroad.java @@ -4,9 +4,8 @@ import Players.Player; public class Railroad extends Space{ - String name; - int cost; - int level; + public int cost; + public int level; Player owner; public Railroad(Space next, Space prev, String name) { diff --git a/Monopoly/src/Board/Space.java b/Monopoly/src/Board/Space.java index 0bdaa726965292dd7d7e54e80d84f740e4baeb7e..d5691605ac0208a4eb5fffbb0950c5633adb31cd 100644 --- a/Monopoly/src/Board/Space.java +++ b/Monopoly/src/Board/Space.java @@ -3,7 +3,8 @@ package Board; import Players.Player; abstract public class Space { - Space next; + public Space next; + public String name; Space prev; public Space move() { diff --git a/Monopoly/src/Board/Tax.java b/Monopoly/src/Board/Tax.java index 78fa2a584c244bcf00e1c0351db0491587ecf2a2..0f3b0d827adef45b6f710f60ba7d1a1730819f0c 100644 --- a/Monopoly/src/Board/Tax.java +++ b/Monopoly/src/Board/Tax.java @@ -3,8 +3,6 @@ package Board; import Players.Player; public class Tax extends Space{ - - String name; int cost; public Tax(Space next, Space prev, String name, int cost) { diff --git a/Monopoly/src/Board/Utilities.java b/Monopoly/src/Board/Utilities.java index e22e989cbf0e19a14d3b1b95415f2351092d22d0..d19ef0a4b9c63f07f02230dfc706021dae34cdd9 100644 --- a/Monopoly/src/Board/Utilities.java +++ b/Monopoly/src/Board/Utilities.java @@ -5,9 +5,8 @@ import Players.Player; public class Utilities extends Space { - String name; int level; - int cost; + public int cost; Player owner; public Utilities(Space next, Space prev, String name) { diff --git a/Monopoly/src/Main.java b/Monopoly/src/Main.java index 70464179bc81d2632c2c74a2cd2478ef9430f2f4..95f5f972ca380a131c9a3f0ad83a1e67ce0a7ae0 100644 --- a/Monopoly/src/Main.java +++ b/Monopoly/src/Main.java @@ -1,2 +1,172 @@ +import Board.MonopolyBoard; +import Board.Property; +import Board.Space; +import Pieces.Dice; +import Players.Player; + +import java.util.ArrayList; +import java.util.Scanner; + +import static java.lang.System.exit; + public class Main { + + static MonopolyBoard board; + static ArrayList<Player> players; + static boolean gameOver; + static Dice die1; + static Dice die2; + + public static void main(String[] args) { + startGame(); + System.out.println(board.toString()); + int playerToMove = 1; + while(!gameOver) { + board.levelUpProperties(); + move(playerToMove); + playerToMove = playerToMove+1; + if(playerToMove > players.size()) + playerToMove = 1; + } + } + + public static void startGame() { + board = new MonopolyBoard(); + players = new ArrayList<>(); + System.out.println("How many players do you want to have? (2-4)"); + Scanner reader = new Scanner(System.in); + int numPlayers = reader.nextInt(); + if(numPlayers < 2 || numPlayers > 4) { + board.log.logError("Incorrect number of players! (Exiting)"); + exit(1); + } + for(int i = 1; i <= numPlayers; i++) { + System.out.print("Enter name for player "+i+": "); + players.add(new Player(reader.next(), i, board.jail, board)); + board.addPlayer(players.get(i-1)); + } + gameOver = false; + die1 = new Dice(); + die2 = new Dice(); + } + + public static void move(int currPlayerNum) { + System.out.println(board.toString()); + Player currPlayer = players.get(currPlayerNum-1); + Scanner reader = new Scanner(System.in); + if(currPlayer.currSpace == board.jail) { + System.out.print(""+currPlayer.name+", you are currently in jail, enter what you would like to do (? Gets list of commands): "); + String command = reader.next(); + if(command.equals("?")) { + System.out.println("\nroll: Roll the two dice to see if you get a double.\n" + + "card: Use a get out of jail free card (If done before first roll you can roll for a move)\n" + + "pay: Pay $50 and get out (Must be done after three rolls, but allows you to roll if you do it first)\n" + + "houses: Buy a house/hotel for a given space\n" + + "quit: Quit the game.\n" + + "?: Get help\n"); + move(currPlayerNum); + } + else if(command.equals("houses")) { + System.out.println("Buy house/hotel for which property? You have the following (Re-type name to choose)"); + for(Space property : currPlayer.properties) { + if(property instanceof Property) + System.out.println(""+((Property) property).name+" (Development Cost: "+((Property) property).buildingCost+")"); + } + System.out.print("Choice: "); + String choice = reader.next(); + for(Space property : currPlayer.properties) { + if(property instanceof Property && ((Property) property).name.equals(choice)) + board.buyHouse(currPlayer, property); + } + move(currPlayerNum); + } + else if(command.equals("roll")) { + die1.roll(); + die2.roll(); + System.out.println("The roll was: "+die1.toString()+die2.toString()); + if(die1.getValue() == die2.getValue()) { + currPlayer.setSpace(currPlayer.currSpace.next); + currPlayer.numJailTurns = 0; + } + else + currPlayer.numJailTurns++; + } + else if(command.equals("card")) { + if(currPlayer.hasCommunityGetOutofJailCard) { + currPlayer.hasCommunityGetOutofJailCard = false; + if(currPlayer.numJailTurns == 0) + move(currPlayerNum); + else + currPlayer.numJailTurns = 0; + } + else if(currPlayer.hasChanceGetOutofJailCard) { + currPlayer.hasChanceGetOutofJailCard = false; + if(currPlayer.numJailTurns == 0) + move(currPlayerNum); + else + currPlayer.numJailTurns = 0; + } + else { + System.out.println("You can't do that, you don't have a Get Out of Jail Card"); + move(currPlayerNum); + } + } + else if(command.equals("pay") || currPlayer.numJailTurns == 3) { + currPlayer.giveMoneyToBank(50); + currPlayer.setSpace(currPlayer.currSpace.next); + currPlayer.numJailTurns = 0; + } + else if(command.equals("quit")) + gameOver = true; + else{ + board.log.logError("No known command entered! Attempting move again."); + move(currPlayerNum); + } + return; + } + System.out.print(""+currPlayer.name+", enter what you would like to do (? Gets list of commands): "); + String command = reader.next(); + if(command.equals("?")) { + System.out.println("\nroll: Roll the two dice and move to the new space.\n" + + "houses: Buy a house/hotel for a given space" + + "quit: Quit the game.\n" + + "?: Get help\n"); + move(currPlayerNum); + } + else if(command.equals("roll")) { + die1.roll(); + die2.roll(); + System.out.println("The roll was: "+die1.toString()+die2.toString()); + int spacesToMove = die1.getValue()+die2.getValue(); + while(spacesToMove > 0) { + currPlayer.setSpace(currPlayer.currSpace.move()); + spacesToMove--; + } + System.out.println("You are now on "+currPlayer.currSpace.name); + currPlayer.doSpace(); + if(die1.getValue() == die2.getValue()) + move(currPlayerNum); + } + else if(command.equals("houses")) { + System.out.println("Buy house/hotel for which property? You have the following (Re-type name to choose)"); + for(Space property : currPlayer.properties) { + if(property instanceof Property) + System.out.println(""+((Property) property).name+" (Development Cost: "+((Property) property).buildingCost+")"); + } + System.out.print("Choice: "); + String choice = reader.next(); + for(Space property : currPlayer.properties) { + if(property instanceof Property && ((Property) property).name.equals(choice)) + board.buyHouse(currPlayer, property); + } + move(currPlayerNum); + } + else if(command.equals("quit")) + gameOver = true; + else{ + board.log.logError("No known command entered! Attempting move again."); + move(currPlayerNum); + } + } + } diff --git a/Monopoly/src/Misc/CustomLogger.java b/Monopoly/src/Misc/CustomLogger.java new file mode 100644 index 0000000000000000000000000000000000000000..4b24002efefb33b991b888fb46e6607a0428250e --- /dev/null +++ b/Monopoly/src/Misc/CustomLogger.java @@ -0,0 +1,44 @@ +package Misc; + +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.PrintWriter; +import java.util.ArrayList; + +public class CustomLogger { + + private ArrayList<String> log; + + public CustomLogger() { + log = new ArrayList<>(); + } + + public void logError(String error) { + String errMsg = "ERROR - "+error; + System.out.println(errMsg); + log.add(errMsg); + } + + public void logWarning(String warning) { + String warnMsg = "WARNING - "+warning; + System.out.println(warnMsg); + log.add(warnMsg); + } + + public void logInfo(String info) { + String infoMsg = "INFO - "+info; + System.out.println(infoMsg); + log.add(infoMsg); + } + + public ArrayList getLog() { + return log; + } + + public void writeToFile(String fileName) throws FileNotFoundException { + PrintWriter pw = new PrintWriter(new FileOutputStream(fileName)); + for (String logMsg : log) + pw.println(logMsg); + pw.close(); + } +} diff --git a/Monopoly/src/Pieces/ChanceCards/ChanceCard.java b/Monopoly/src/Pieces/ChanceCards/ChanceCard.java index 162e1d6f3a010553fc8003c286ce729cd05ba836..98aeba7b603c4302094bab8e1ab3e5d0e911b891 100644 --- a/Monopoly/src/Pieces/ChanceCards/ChanceCard.java +++ b/Monopoly/src/Pieces/ChanceCards/ChanceCard.java @@ -6,5 +6,9 @@ public abstract class ChanceCard { String description; + public String getDescrip() { + return description; + } + public abstract void action(Player currPlayer); } diff --git a/Monopoly/src/Pieces/CommunityChestCards/CommunityChestCard.java b/Monopoly/src/Pieces/CommunityChestCards/CommunityChestCard.java index a8e6a784bf8f0e90f3e9a46e79f0a27a2181a6e4..2a8e9f8618cd68bad25adf542214bdd91b54038f 100644 --- a/Monopoly/src/Pieces/CommunityChestCards/CommunityChestCard.java +++ b/Monopoly/src/Pieces/CommunityChestCards/CommunityChestCard.java @@ -6,5 +6,9 @@ public abstract class CommunityChestCard { String description; + public String getDescrip() { + return description; + } + public abstract void action(Player currPlayer); } diff --git a/Monopoly/src/Pieces/Dice.java b/Monopoly/src/Pieces/Dice.java index dc12df0f507adeefc8b6e4737cd80a417d5e04d4..839163c5f5805c20009093942b047a37e13fff5d 100644 --- a/Monopoly/src/Pieces/Dice.java +++ b/Monopoly/src/Pieces/Dice.java @@ -12,6 +12,22 @@ public class Dice { return value; } + @Override + public String toString() { + if(value == 1) + return "⚀"; + else if(value == 2) + return "âš"; + else if(value == 3) + return "âš‚"; + else if(value == 4) + return "⚃"; + else if(value == 5) + return "âš„"; + else + return "âš…"; + } + public int getValue() { return value; } diff --git a/Monopoly/src/Players/Player.java b/Monopoly/src/Players/Player.java index faa25abb71161a3ff4d318845bc8926ddd4afd33..60c3d232dd522aad01fb35a034118b3a5f906cfe 100644 --- a/Monopoly/src/Players/Player.java +++ b/Monopoly/src/Players/Player.java @@ -1,23 +1,27 @@ package Players; -import Board.MonopolyBoard; -import Board.Property; -import Board.Space; +import Board.*; + +import java.util.ArrayList; +import java.util.Scanner; public class Player { - String name; - int order; - int money; - int houseCount; - int hotelCount; + public String name; + public int numJailTurns; + public int order; + public int money; + public int houseCount; + public int hotelCount; public Space currSpace; public boolean hasChanceGetOutofJailCard; public boolean hasCommunityGetOutofJailCard; + public ArrayList<Space> properties; MonopolyBoard currBoard; public Player(String name, int order, Space startSpace, MonopolyBoard currBoard) { this.name = name; + this.numJailTurns = 0; this.order = order; this.money = 1500; this.currSpace = startSpace; @@ -26,10 +30,12 @@ public class Player { this.currBoard = currBoard; this.houseCount = 0; this.hotelCount = 0; + this.properties = new ArrayList<>(); } public Player(Player other) { this.name = other.name; + this.numJailTurns = other.numJailTurns; this.order = other.order; this.money = other.money; this.currSpace = other.currSpace; @@ -38,6 +44,7 @@ public class Player { this.currBoard = other.currBoard; this.houseCount = other.houseCount; this.hotelCount = other.hotelCount; + this.properties = other.properties; } @@ -50,11 +57,13 @@ public class Player { Player oth = (Player) other; if(!this.name.equals(oth.name)) return false; + else if(this.numJailTurns != oth.numJailTurns) + return false; else if(this.order != oth.order) return false; else if(this.money != oth.money) return false; - else if(this.currSpace != oth.currSpace) + else if(!(this.currSpace.equals(oth.currSpace))) return false; else if(this.hasChanceGetOutofJailCard != oth.hasChanceGetOutofJailCard) return false; @@ -69,6 +78,20 @@ public class Player { } public boolean wantsToBuy(Space space) { + int cost = -1; + if(space instanceof Property) + cost = ((Property) space).cost; + else if(space instanceof Railroad) + cost = ((Railroad) space).cost; + else if(space instanceof Utilities) + cost = ((Utilities) space).cost; + Scanner reader = new Scanner(System.in); + System.out.print("Do you want to buy this property for $"+cost+" (y/n): "); + String input = reader.next(); + if(input.equals("y")) + return true; + else + currBoard.auction(space); return false; } @@ -93,11 +116,19 @@ public class Player { } public void getChanceCard() { + Space oldSpace = currSpace; currBoard.getChanceCard().action(this); + if(currSpace != oldSpace) { + doSpace(); + } } public void getCommunityChestCard() { + Space oldSpace = currSpace; currBoard.getCommunityChestCard().action(this); + if(currSpace != oldSpace) { + doSpace(); + } } public void chargeAllOthers(int amount) { @@ -119,7 +150,7 @@ public class Player { this.giveMoneyToBank(amount); } - public void giveMoney(int amount, Player otherPlayer) { + public void giveTradeMoney(int amount, Player otherPlayer) { this.chargeBank(amount); otherPlayer.getMoney(amount); } diff --git a/Monopoly/test/AllTest.java b/Monopoly/test/AllTest.java index 51766b36390c09c9e7881c273a970996acf99000..0e18ecb7f0731fce38eb28643330e364b86b867e 100644 --- a/Monopoly/test/AllTest.java +++ b/Monopoly/test/AllTest.java @@ -1,13 +1,11 @@ -import Board.ChanceTest; -import Board.CommunityChestTest; -import Board.FreeParkingTest; -import Board.GoTest; +import Board.*; +import org.junit.AfterClass; import org.junit.runner.RunWith; import org.junit.runners.Suite; import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) -@SuiteClasses({ChanceTest.class, CommunityChestTest.class, FreeParkingTest.class, GoTest.class}) +@SuiteClasses({ChanceTest.class, CommunityChestTest.class, FreeParkingTest.class, GoTest.class, GoToJailTest.class}) public class AllTest { } diff --git a/Monopoly/test/Board/ChanceTest.java b/Monopoly/test/Board/ChanceTest.java index 209533d00d50b152447663c70d85bb12208c5dae..3c25f3a94db7c0f220081f31f9d802965cd95470 100644 --- a/Monopoly/test/Board/ChanceTest.java +++ b/Monopoly/test/Board/ChanceTest.java @@ -2,24 +2,127 @@ package Board; import Players.Player; import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; public class ChanceTest { - Player testPlayer; - Space testSpace; - MonopolyBoard testBoard; + static MonopolyBoard testBoard; + static Space testSpace; + static Player testPlayer; + static Player otherPlayer; - @Before - public void init() { + @BeforeClass + public static void initialize() { testBoard = new MonopolyBoard(); - testSpace = new Chance(testBoard.go, testBoard.go.prev); + testSpace = new Chance(testBoard.go, testBoard.go.prev, "Chance"); testPlayer = new Player("Test", 1, testSpace, testBoard); + testPlayer.houseCount = 2; + testPlayer.hotelCount = 1; + otherPlayer = new Player("other", 2, testBoard.go, testBoard); + testBoard.addPlayer(testPlayer); + testBoard.addPlayer(otherPlayer); } + @Before + public void resetSpace() { + testPlayer.setSpace(testSpace); + } + + @Test + public void testChance1() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance2() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance3() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance4() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance5() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance6() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance7() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance8() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance9() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance10() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance11() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance12() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance13() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance14() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + @Test + public void testChance15() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } @Test - public void testAction() { + public void testChance16() { Player copyPlayer = new Player(testPlayer); testPlayer.doSpace(); assertNotEquals(copyPlayer, testPlayer); diff --git a/Monopoly/test/Board/CommunityChestTest.java b/Monopoly/test/Board/CommunityChestTest.java index 86ec7154fcd9d78a2b628d96679ab084304ded16..b03df4a079d54ccfe5ec7f198cc5c6ca56a64e59 100644 --- a/Monopoly/test/Board/CommunityChestTest.java +++ b/Monopoly/test/Board/CommunityChestTest.java @@ -2,24 +2,142 @@ package Board; import Players.Player; import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.assertNotEquals; public class CommunityChestTest { - Player testPlayer; - Space testSpace; - MonopolyBoard testBoard; - @Before - public void init() { + static MonopolyBoard testBoard; + static Space testSpace; + static Player testPlayer; + static Player otherPlayer; + + @BeforeClass + public static void initialize() { testBoard = new MonopolyBoard(); - testSpace = new CommunityChest(testBoard.go, testBoard.go.prev); + testSpace = new CommunityChest(testBoard.go, testBoard.go.prev, "Community Chest"); testPlayer = new Player("Test", 1, testSpace, testBoard); + testPlayer.houseCount = 2; + testPlayer.hotelCount = 1; + otherPlayer = new Player("other", 2, testBoard.go, testBoard); + testBoard.addPlayer(testPlayer); + testBoard.addPlayer(otherPlayer); + } + + @Before + public void init() { + testPlayer.setSpace(testSpace); + } + + @Test + public void testCC1() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC2() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC3() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC4() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC5() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC6() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC7() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC8() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC9() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC10() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC11() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC12() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC13() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC14() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); + } + + @Test + public void testCC15() { + Player copyPlayer = new Player(testPlayer); + testPlayer.doSpace(); + assertNotEquals(copyPlayer, testPlayer); } @Test - public void testAction() { + public void testCC16() { Player copyPlayer = new Player(testPlayer); testPlayer.doSpace(); assertNotEquals(copyPlayer, testPlayer); diff --git a/Monopoly/test/Board/FreeParkingTest.java b/Monopoly/test/Board/FreeParkingTest.java index a3df346f3eac14f6d2e49f15755dbca03c8e6a0c..691fc55920d8a77406ab23512c7e5ec0fdbed6f1 100644 --- a/Monopoly/test/Board/FreeParkingTest.java +++ b/Monopoly/test/Board/FreeParkingTest.java @@ -15,7 +15,7 @@ public class FreeParkingTest { @Before public void init() { testBoard = new MonopolyBoard(); - testSpace = new FreeParking(testBoard.go, testBoard.go.prev); + testSpace = new FreeParking(testBoard.go, testBoard.go.prev, "Free Parking"); testPlayer = new Player("Test", 1, testSpace, testBoard); } diff --git a/Monopoly/test/Board/GoTest.java b/Monopoly/test/Board/GoTest.java index 49e544502e94a9453286163268540c9e4c296e3d..649ed6f0bd1cb0dc46c6f1e3dc4bbc396ea84cdf 100644 --- a/Monopoly/test/Board/GoTest.java +++ b/Monopoly/test/Board/GoTest.java @@ -8,19 +8,22 @@ import static org.junit.Assert.assertNotEquals; public class GoTest { Player testPlayer; - Space testSpace; + Player testPlayer2; MonopolyBoard testBoard; @Before public void init() { testBoard = new MonopolyBoard(); - testSpace = new Go(testBoard.go, testBoard.go.prev); - testPlayer = new Player("Test", 1, testSpace, testBoard); + testPlayer = new Player("Test", 1, testBoard.go, testBoard); + testPlayer2 = new Player("Test2", 2, testBoard.go, testBoard); + testBoard.addPlayer(testPlayer); + testBoard.addPlayer(testPlayer2); } @Test public void testAction() { Player copyPlayer = new Player(testPlayer); + System.out.println(testBoard.toString()); testPlayer.doSpace(); assertNotEquals(copyPlayer, testPlayer); } diff --git a/Monopoly/test/Board/GoToJailTest.java b/Monopoly/test/Board/GoToJailTest.java index a27fa1be1608493e4f23b2fd75cc028945099c0b..69dbb42f90b42b41f68b464e4db4e8c6359ff59b 100644 --- a/Monopoly/test/Board/GoToJailTest.java +++ b/Monopoly/test/Board/GoToJailTest.java @@ -15,14 +15,16 @@ public class GoToJailTest { @Before public void init() { testBoard = new MonopolyBoard(); - testSpace = new FreeParking(testBoard.go, testBoard.go.prev); + testSpace = new GoToJail(testBoard.go, testBoard.go.prev, "Go to jail", testBoard.jail); testPlayer = new Player("Test", 1, testSpace, testBoard); + testBoard.addPlayer(testPlayer); } @Test public void testAction() { Player copyPlayer = new Player(testPlayer); testPlayer.doSpace(); + System.out.println(testBoard.toString()); assertNotEquals(copyPlayer, testPlayer); } diff --git a/Week2Rubric.txt b/Week2Rubric.txt new file mode 100644 index 0000000000000000000000000000000000000000..9696fd05c2128b41a346e2d1c47c8131808c5f86 --- /dev/null +++ b/Week2Rubric.txt @@ -0,0 +1,26 @@ +Here is my tentative Week 2 rubric: + + (5 Points) - Game pops up in window with a viewable board + 2 Points - Attempted + 4 Points - Window pops up for game but board may be incomplete + 5 Points - Window pops up and board is clear and readable + + (5 Points) - Sprites are created/chosen for all relevant pieces + 2 Points - Attempted + 4 Points - Some characters and pieces are represented + 5 Points - All characters and pieces are represented + + (5 Points) - A menu is implemented allowing the user to chose to moves (Will not actually work.) + 2 Points - Attempted + 4 Points - A space is created for the menu, with some buttons + 5 Points - Menu is fully created and makes sense to the user + + (5 Points) - Advanced player moves are implemented, including trading money, trading pieces, and negotiating on rent. + 2 Points - Attempted + 4 Points - Some functionality + 5 Points - All advanced moves implemented + + (5 Points) - Manual Testing is fully written out, class for mocking user input is found. + 2 Points - Only manual test + 4 Points - Manual test and a chosen mocking class + 5 Points - Manual test and some mocking