Implemented Schnecken dings

This commit is contained in:
Daniel Brunner
2016-12-13 12:16:32 +01:00
parent 20acf8ef83
commit 607d8d4eec
37 changed files with 1183 additions and 105 deletions

22
.idea/compiler.xml generated Normal file
View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<resourceExtensions />
<wildcardResourcePatterns>
<entry name="!?*.java" />
<entry name="!?*.form" />
<entry name="!?*.class" />
<entry name="!?*.groovy" />
<entry name="!?*.scala" />
<entry name="!?*.flex" />
<entry name="!?*.kt" />
<entry name="!?*.clj" />
<entry name="!?*.aj" />
</wildcardResourcePatterns>
<annotationProcessing>
<profile default="true" name="Default" enabled="false">
<processorPath useClasspath="true" />
</profile>
</annotationProcessing>
</component>
</project>

3
.idea/copyright/profiles_settings.xml generated Normal file
View File

@ -0,0 +1,3 @@
<component name="CopyrightManager">
<settings default="" />
</component>

1
.idea/description.html generated Normal file
View File

@ -0,0 +1 @@
<html>Simple <b>Java</b> application that includes a class with <code>main()</code> method</html>

12
.idea/misc.xml generated Normal file
View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="EntryPointsManager">
<entry_points version="2.0" />
</component>
<component name="ProjectKey">
<option name="state" value="project://e2804f05-5315-4fc6-a121-c522a6c26470" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.7" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

8
.idea/modules.xml generated Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/PGTL-Programs.iml" filepath="$PROJECT_DIR$/PGTL-Programs.iml" />
</modules>
</component>
</project>

3
.idea/project-template.xml generated Normal file
View File

@ -0,0 +1,3 @@
<template>
<input-field default="com.company">IJ_BASE_PACKAGE</input-field>
</template>

124
.idea/uiDesigner.xml generated Normal file
View File

@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

714
.idea/workspace.xml generated Normal file
View File

@ -0,0 +1,714 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="5b9a0ba8-faec-4467-9114-acbf3fcc979d" name="Default" comment="">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/uiDesigner.xml" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Person.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennErgebnis.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennSimulator.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wettbüro.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wette.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/NameBereitsVergebenException.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/RennenNichtAktivException.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/SchneckeNichtFreiException.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/StreckeNichtFreiException.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/ZuWenigGeldException.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennen.java" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennen.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennstrecke.java" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennstrecke.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Schnecke.java" afterPath="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Schnecke.java" />
</list>
<ignored path="PGTL-Programs.iws" />
<ignored path=".idea/workspace.xml" />
<ignored path="$PROJECT_DIR$/out/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="CreatePatchCommitExecutor">
<option name="PATCH_PATH" value="" />
</component>
<component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
<component name="FavoritesManager">
<favorites_list name="PGTL-Programs" />
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="Program.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="471">
<caret line="76" column="24" selection-start-line="76" selection-start-column="24" selection-end-line="76" selection-end-column="24" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="RennSimulator.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennSimulator.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="170">
<caret line="10" column="19" selection-start-line="10" selection-start-column="19" selection-end-line="10" selection-end-column="19" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Class" />
</list>
</option>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="GradleLocalSettings">
<option name="externalProjectsViewState">
<projects_view />
</option>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program1/Program.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program2/Program.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/Main.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wette.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Person.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennsimulation.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennErgebnis.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/StreckeNichtFreiException.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/SchneckeNichtFreiException.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/RennenNichtAktivException.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennen.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/ZuWenigGeldException.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennsimulator.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennstrecke.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Schnecke.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/NameBereitsVergebenException.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wettbüro.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java" />
<option value="$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennSimulator.java" />
</list>
</option>
</component>
<component name="MavenImportPreferences">
<option name="generalSettings">
<MavenGeneralSettings>
<option name="mavenHome" value="Bundled (Maven 3)" />
</MavenGeneralSettings>
</option>
</component>
<component name="ProjectFrameBounds">
<option name="x" value="-8" />
<option name="y" value="-8" />
<option name="width" value="1936" />
<option name="height" value="1056" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" />
<OptionsSetting value="true" id="Remove" />
<OptionsSetting value="true" id="Checkout" />
<OptionsSetting value="true" id="Update" />
<OptionsSetting value="true" id="Status" />
<OptionsSetting value="true" id="Edit" />
<ConfirmationsSetting value="2" id="Add" />
<ConfirmationsSetting value="0" id="Remove" />
</component>
<component name="ProjectView">
<navigator currentView="ProjectPane" proportions="" version="1">
<flattenPackages />
<showMembers />
<showModules />
<showLibraryContents />
<hideEmptyPackages />
<abbreviatePackageNames />
<autoscrollToSource />
<autoscrollFromSource />
<sortByType />
<manualOrder />
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="Scratches" />
<pane id="ProjectPane">
<subPane>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="pgtl" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="pgtl" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="program3" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="PGTL-Programs" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="pgtl" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="program3" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="exceptions" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane>
</pane>
<pane id="PackagesPane" />
</panes>
</component>
<component name="RunManager" selected="Application.Main">
<configuration default="false" name="Main" type="Application" factoryName="Application" temporary="true">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" value="ninja.brunner.pgtl.Main" />
<option name="VM_PARAMETERS" value="" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" value="" />
<option name="ENABLE_SWING_INSPECTOR" value="false" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="PGTL-Programs" />
<envs />
<RunnerSettings RunnerId="Run" />
<ConfigurationWrapper RunnerId="Run" />
<method />
</configuration>
<configuration default="true" type="AndroidRunConfigurationType" factoryName="Android Application">
<module name="" />
<option name="DEPLOY" value="true" />
<option name="ARTIFACT_NAME" value="" />
<option name="PM_INSTALL_OPTIONS" value="" />
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
<option name="MODE" value="default_activity" />
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
<option name="PREFERRED_AVD" value="" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
<option name="FORCE_STOP_RUNNING_APP" value="true" />
<option name="DEBUGGER_TYPE" value="Java" />
<option name="USE_LAST_SELECTED_DEVICE" value="false" />
<option name="PREFERRED_AVD" value="" />
<Java />
<Profilers>
<option name="GAPID_DISABLE_PCS" value="false" />
</Profilers>
<option name="DEEP_LINK" value="" />
<option name="ACTIVITY_CLASS" value="" />
<method />
</configuration>
<configuration default="true" type="AndroidTestRunConfigurationType" factoryName="Android Tests">
<module name="" />
<option name="TESTING_TYPE" value="0" />
<option name="INSTRUMENTATION_RUNNER_CLASS" value="" />
<option name="METHOD_NAME" value="" />
<option name="CLASS_NAME" value="" />
<option name="PACKAGE_NAME" value="" />
<option name="EXTRA_OPTIONS" value="" />
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
<option name="PREFERRED_AVD" value="" />
<option name="CLEAR_LOGCAT" value="false" />
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="true" />
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
<option name="FORCE_STOP_RUNNING_APP" value="true" />
<option name="DEBUGGER_TYPE" value="Java" />
<option name="USE_LAST_SELECTED_DEVICE" value="false" />
<option name="PREFERRED_AVD" value="" />
<Java />
<Profilers>
<option name="GAPID_DISABLE_PCS" value="false" />
</Profilers>
<method />
</configuration>
<configuration default="true" type="Application" factoryName="Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
<option name="PROGRAM_PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<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="" />
<envs />
<method />
</configuration>
<configuration default="true" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list />
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<method />
</configuration>
<configuration default="true" type="JUnit" factoryName="JUnit">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<module name="" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<patterns />
<method />
</configuration>
<configuration default="true" type="JUnitTestDiscovery" factoryName="JUnit Test Discovery" changeList="All">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<module name="" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<envs />
<patterns />
<method />
</configuration>
<configuration default="true" type="JarApplication" factoryName="JAR Application">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<envs />
<method />
</configuration>
<configuration default="true" type="Java Scratch" factoryName="Java Scratch">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="SCRATCH_FILE_ID" value="0" />
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
<option name="PROGRAM_PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<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="" />
<envs />
<method />
</configuration>
<configuration default="true" type="JetRunConfigurationType" factoryName="Kotlin">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
<option name="PROGRAM_PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PASS_PARENT_ENVS" value="true" />
<module name="PGTL-Programs" />
<envs />
<method />
</configuration>
<configuration default="true" type="KotlinStandaloneScriptRunConfigurationType" factoryName="Kotlin script">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<option name="filePath" />
<option name="vmParameters" />
<option name="alternativeJrePath" />
<option name="programParameters" />
<option name="passParentEnvs" value="true" />
<option name="workingDirectory" />
<option name="isAlternativeJrePathEnabled" value="false" />
<envs />
<method />
</configuration>
<configuration default="true" type="TestNG" factoryName="TestNG">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<module name="" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="SUITE_NAME" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="GROUP_NAME" />
<option name="TEST_OBJECT" value="CLASS" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<option name="OUTPUT_DIRECTORY" />
<option name="ANNOTATION_TYPE" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<option name="USE_DEFAULT_REPORTERS" value="false" />
<option name="PROPERTIES_FILE" />
<envs />
<properties />
<listeners />
<method />
</configuration>
<configuration default="true" type="TestNGTestDiscovery" factoryName="TestNG Test Discovery" changeList="All">
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
<module name="" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="SUITE_NAME" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="GROUP_NAME" />
<option name="TEST_OBJECT" value="CLASS" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" />
<option name="OUTPUT_DIRECTORY" />
<option name="ANNOTATION_TYPE" />
<option name="ENV_VARIABLES" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="TEST_SEARCH_SCOPE">
<value defaultName="singleModule" />
</option>
<option name="USE_DEFAULT_REPORTERS" value="false" />
<option name="PROPERTIES_FILE" />
<envs />
<properties />
<listeners />
<method />
</configuration>
<list size="1">
<item index="0" class="java.lang.String" itemvalue="Application.Main" />
</list>
<recent_temporary>
<list size="1">
<item index="0" class="java.lang.String" itemvalue="Application.Main" />
</list>
</recent_temporary>
</component>
<component name="ShelveChangesManager" show_recycled="false">
<option name="remove_strategy" value="false" />
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="5b9a0ba8-faec-4467-9114-acbf3fcc979d" name="Default" comment="" />
<created>1481022021593</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1481022021593</updated>
</task>
<servers />
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
<editor active="false" />
<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="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="7" side_tool="false" content_ui="tabs" />
<window_info id="Palette&#9;" 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="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.2653277" sideWeight="0.5" order="2" 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="true" weight="0.32980973" sideWeight="0.5" order="7" 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="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="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.17239584" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<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="2" side_tool="false" 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="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="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="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="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="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="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="Vcs.Log.UiProperties">
<option name="RECENTLY_FILTERED_USER_GROUPS">
<collection />
</option>
<option name="RECENTLY_FILTERED_BRANCH_GROUPS">
<collection />
</option>
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager />
<watches-manager />
</component>
<component name="antWorkspaceConfiguration">
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program1/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="374">
<caret line="22" column="1" selection-start-line="22" selection-start-column="1" selection-end-line="22" selection-end-column="1" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program2/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="807">
<caret line="85" column="1" selection-start-line="85" selection-start-column="1" selection-end-line="85" selection-end-column="1" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="170">
<caret line="10" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wette.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/StreckeNichtFreiException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="85">
<caret line="5" column="56" selection-start-line="5" selection-start-column="56" selection-end-line="5" selection-end-column="56" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/SchneckeNichtFreiException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="17">
<caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/RennenNichtAktivException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="17">
<caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/ZuWenigGeldException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="17">
<caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Person.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="119">
<caret line="7" column="0" selection-start-line="7" selection-start-column="0" selection-end-line="7" selection-end-column="0" />
<folding>
<element signature="e#361#368#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennstrecke.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="136">
<caret line="8" column="46" selection-start-line="8" selection-start-column="23" selection-end-line="8" selection-end-column="46" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Schnecke.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="15" column="8" selection-start-line="15" selection-start-column="8" selection-end-line="15" selection-end-column="16" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/exceptions/NameBereitsVergebenException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="17">
<caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Rennen.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="193">
<caret line="13" column="76" selection-start-line="13" selection-start-column="18" selection-end-line="13" selection-end-column="76" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennErgebnis.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="6" column="11" selection-start-line="6" selection-start-column="11" selection-end-line="6" selection-end-column="23" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Wettbüro.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="306">
<caret line="18" column="31" selection-start-line="18" selection-start-column="31" selection-end-line="18" selection-end-column="31" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/Program.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="471">
<caret line="76" column="24" selection-start-line="76" selection-start-column="24" selection-end-line="76" selection-end-column="24" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/ninja/brunner/pgtl/program3/RennSimulator.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="170">
<caret line="10" column="19" selection-start-line="10" selection-start-column="19" selection-end-line="10" selection-end-column="19" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
</project>

View File

@ -0,0 +1,20 @@
package ninja.brunner.pgtl.program3;
import java.util.ArrayList;
public class Person {
public String name;
public float guthaben;
public Person(String name, float guthaben) {
this.name = name;
this.guthaben = guthaben;
}
public ArrayList<Wette> getZugeröhrigeWetten()
{
ArrayList<Wette> wetten = new ArrayList<Wette>();
return wetten;
}
}

View File

@ -1,10 +1,81 @@
package ninja.brunner.pgtl.program3;
import ninja.brunner.pgtl.program3.exceptions.NameBereitsVergebenException;
import ninja.brunner.pgtl.program3.exceptions.ZuWenigGeldException;
import java.util.ArrayList;
public class Program {
public static void main(String[] args) throws InterruptedException {
Rennen rennen = new Rennen();
rennen.run();
System.out.println("Initialisiere...");
System.out.println("Rennen beendet!");
RennSimulator rennSimulator = new RennSimulator();
Wettbüro büro = new Wettbüro();
try {
Rennstrecke rennstrecken[] = {
rennSimulator.registriereRennstrecke("Kurze Strecke", 75),
rennSimulator.registriereRennstrecke("Mittlere Strecke", 100),
rennSimulator.registriereRennstrecke("Lange Strecke", 125),
rennSimulator.registriereRennstrecke("Extra lange Strecke", 150)
};
Schnecke schnecken[] = {
rennSimulator.registriereSchnecke("Schnecke 1"),
rennSimulator.registriereSchnecke("Schnecke 2"),
rennSimulator.registriereSchnecke("Schnecke 3"),
rennSimulator.registriereSchnecke("Schnecke 4"),
rennSimulator.registriereSchnecke("Schnecke 5"),
rennSimulator.registriereSchnecke("Schnecke 6"),
rennSimulator.registriereSchnecke("Schnecke 7"),
rennSimulator.registriereSchnecke("Schnecke 8"),
rennSimulator.registriereSchnecke("Schnecke 9"),
rennSimulator.registriereSchnecke("Schnecke 10"),
rennSimulator.registriereSchnecke("Schnecke 11"),
rennSimulator.registriereSchnecke("Schnecke 12"),
rennSimulator.registriereSchnecke("Schnecke 13"),
rennSimulator.registriereSchnecke("Schnecke 14"),
rennSimulator.registriereSchnecke("Schnecke 15"),
rennSimulator.registriereSchnecke("Schnecke 16"),
rennSimulator.registriereSchnecke("Schnecke 17")
};
Rennen rennen[] = {
rennSimulator.registriereRennen("Rennen 1", rennstrecken[0], new Schnecke[] { schnecken[0], schnecken[1], schnecken[3] }),
rennSimulator.registriereRennen("Rennen 2", rennstrecken[0], new Schnecke[] { schnecken[2], schnecken[3], schnecken[4] }),
rennSimulator.registriereRennen("Rennen 3", rennstrecken[1], new Schnecke[] { schnecken[2], schnecken[3], schnecken[4] }),
rennSimulator.registriereRennen("Rennen 4", rennstrecken[1], new Schnecke[] { schnecken[4], schnecken[5], schnecken[6] })
};
Person personen[] = {
büro.registrierePerson("Person 1", 1234),
büro.registrierePerson("Person 2", 12345),
büro.registrierePerson("Person 3", 123),
büro.registrierePerson("Person 4", 4444),
büro.registrierePerson("Person 5", 1500),
büro.registrierePerson("Person 6", 8123),
büro.registrierePerson("Person 7", 1000),
büro.registrierePerson("Person 8", 5555)
};
büro.wetteAbschließen(personen[0], rennen[0], rennen[0].schnecken[0], 100);
büro.wetteAbschließen(personen[0], rennen[0], rennen[0].schnecken[0], 100);
büro.wetteAbschließen(personen[0], rennen[0], rennen[0].schnecken[0], 100);
büro.wetteAbschließen(personen[0], rennen[0], rennen[0].schnecken[0], 100);
}
catch (NameBereitsVergebenException ex)
{
System.out.println("Fehler beim Initialisieren: " + ex.toString());
return;
}
catch (ZuWenigGeldException ex)
{
System.out.println("Fehler beim Initialisieren: " + ex.toString());
return;
}
rennSimulator.start();
System.out.println("Simulation beendet.");
}
}

View File

@ -0,0 +1,11 @@
package ninja.brunner.pgtl.program3;
public class RennErgebnis {
Rennen rennen;
Schnecke gewinner[];
public RennErgebnis(Rennen rennen, Schnecke[] gewinner) {
this.rennen = rennen;
this.gewinner = gewinner;
}
}

View File

@ -0,0 +1,72 @@
package ninja.brunner.pgtl.program3;
import ninja.brunner.pgtl.program3.exceptions.NameBereitsVergebenException;
import java.util.ArrayList;
public class RennSimulator {
private ArrayList<Rennstrecke> rennstrecken;
private ArrayList<Schnecke> schnecken;
private ArrayList<Rennen> rennen;
private boolean changesAllowed;
public RennSimulator()
{
rennstrecken = new ArrayList<Rennstrecke>();
schnecken = new ArrayList<Schnecke>();
rennen = new ArrayList<Rennen>();
changesAllowed = true;
}
public Rennstrecke registriereRennstrecke(String name, int length) throws NameBereitsVergebenException {
for(Rennstrecke rennstrecke : rennstrecken)
if(rennstrecke.name == name)
throw new NameBereitsVergebenException();
Rennstrecke rennstrecke = new Rennstrecke(name, length);
rennstrecken.add(rennstrecke);
return rennstrecke;
}
public Schnecke registriereSchnecke(String name) throws NameBereitsVergebenException {
for(Schnecke schnecke : schnecken)
if(schnecke.name == name)
throw new NameBereitsVergebenException();
Schnecke schnecke = new Schnecke(name);
schnecken.add(schnecke);
return schnecke;
}
public Rennen registriereRennen(String name, Rennstrecke rennstrecke, Schnecke schnecken[]) throws NameBereitsVergebenException {
for(Rennen _rennen : rennen)
if(_rennen.name == name)
throw new NameBereitsVergebenException();
Rennen _rennen = new Rennen(name, rennstrecke, schnecken);
rennen.add(_rennen);
return _rennen;
}
public RennErgebnis simuliere(Rennen rennen) {
try {
rennen.begin();
//TODO
rennen.cleanup();
}
catch (Exception ex) {
System.out.println("Unbehandelte Ausnahme in Rennen: " + ex.toString());
return null;
}
//TODO
return null;
}
public void start() {
}
}

View File

@ -1,34 +1,47 @@
package ninja.brunner.pgtl.program3;
import java.util.Random;
import ninja.brunner.pgtl.program3.exceptions.StreckeNichtFreiException;
import ninja.brunner.pgtl.program3.exceptions.SchneckeNichtFreiException;
import ninja.brunner.pgtl.program3.exceptions.RennenNichtAktivException;
public class Rennen {
public Random random;
public Rennstrecke rennStrecke;
String name;
Rennstrecke rennStrecke;
Schnecke schnecken[];
public Rennen()
boolean currentlyRenning;
public Rennen(String name, Rennstrecke rennStrecke, Schnecke schnecken[])
{
random = new Random();
rennStrecke = new Rennstrecke(this, random.nextInt(50) + 25, random.nextInt(10) + 15);
this.name = name;
this.rennStrecke = rennStrecke;
this.schnecken = schnecken;
this.currentlyRenning = false;
}
public void run() throws InterruptedException {
while(true) {
rennStrecke.kriechen();
public void begin() throws StreckeNichtFreiException, SchneckeNichtFreiException {
if(rennStrecke.currentRennen != null)
throw new StreckeNichtFreiException();
System.out.println(rennStrecke.toString());
for(Schnecke schnecke : schnecken)
if(schnecke.currentRennen != null)
throw new SchneckeNichtFreiException();
boolean anySchneckeUnterwegs = false;
for(Schnecke schnecke : rennStrecke.schnecken)
if(schnecke.position < rennStrecke.length) {
anySchneckeUnterwegs = true;
break;
}
currentlyRenning = true;
rennStrecke.currentRennen = this;
for(Schnecke schnecke : schnecken)
schnecke.currentRennen = this;
}
if(!anySchneckeUnterwegs)
break;
public void cleanup() throws RennenNichtAktivException
{
if(!currentlyRenning)
throw new RennenNichtAktivException();
Thread.sleep(1000);
}
currentlyRenning = false;
rennStrecke.currentRennen = null;
for(Schnecke schnecke : schnecken)
schnecke.currentRennen = null;
}
}

View File

@ -1,57 +1,16 @@
package ninja.brunner.pgtl.program3;
import java.util.ArrayList;
import java.util.Random;
import java.util.logging.ConsoleHandler;
public class Rennstrecke {
public Rennen rennen;
public String name;
public int length;
public ArrayList<Schnecke> schnecken;
public int maxNameLength;
private String[] names = {
"Namgung",
"Hwangbo",
"Jegal",
"Sagong",
"Seonu",
"Seomun",
"Dokgo",
"Dongbang"
};
public Rennen currentRennen;
public Rennstrecke(Rennen rennen, int length, int schneckenCount)
public Rennstrecke(String name, int length)
{
this.rennen = rennen;
this.name = name;
this.length = length;
schnecken = new ArrayList<Schnecke>();
for(int i = 0; i < schneckenCount; i++)
schnecken.add(new Schnecke(this, names[rennen.random.nextInt(names.length)]));
maxNameLength = 0;
for(Schnecke schnecke : schnecken) {
if(schnecke.name.length() > maxNameLength)
maxNameLength = schnecke.name.length();
}
}
public void kriechen() {
for(Schnecke schnecke : schnecken)
schnecke.kriechen();
}
public String toString()
{
StringBuilder sb = new StringBuilder();
for(Schnecke schnecke : schnecken) {
sb.append(schnecke.toString());
sb.append('\n');
}
return sb.toString();
currentRennen = null;
}
}

View File

@ -3,46 +3,16 @@ package ninja.brunner.pgtl.program3;
import java.util.Random;
public class Schnecke {
public static final int minSpeed = 0;
public static final int maxSpeed = 5;
public Rennstrecke rennstrecke;
public String name;
public int position;
public Schnecke(Rennstrecke rennstrecke, String name)
public Rennen currentRennen;
public Integer position;
public Schnecke(String name)
{
this.rennstrecke = rennstrecke;
this.name = name;
position = 0;
}
public void kriechen()
{
if(position < rennstrecke.length) {
position += rennstrecke.rennen.random.nextInt(maxSpeed - minSpeed) + minSpeed;
if(position > rennstrecke.length)
position = rennstrecke.length;
}
}
public String toString()
{
StringBuilder sb = new StringBuilder();
sb.append(name);
for(int i = name.length(); i < rennstrecke.maxNameLength; i++)
sb.append(' ');
sb.append(": ");
for(int i = 1; i < position; i++)
sb.append('.');
sb.append('M');
for(int i = position + 1; i < rennstrecke.length; i++)
sb.append(' ');
sb.append('#');
return sb.toString();
currentRennen = null;
position = null;
}
}

View File

@ -0,0 +1,31 @@
package ninja.brunner.pgtl.program3;
import java.util.ArrayList;
import ninja.brunner.pgtl.program3.exceptions.ZuWenigGeldException;
public class Wettbüro {
public ArrayList<Person> personen;
public ArrayList<Wette> wetten;
public Wettbüro() {
personen = new ArrayList<Person>();
wetten = new ArrayList<Wette>();
}
public Wette wetteAbschließen(Person person, Rennen rennen, Schnecke schnecke, float einsatz) throws ZuWenigGeldException {
if(person.guthaben < einsatz)
throw new ZuWenigGeldException();
person.guthaben -= einsatz;
return new Wette(person, rennen, schnecke, einsatz);
}
public Person registrierePerson(String name, float guthaben) {
Person person = new Person(name, guthaben);
personen.add(person);
return person;
}
}

View File

@ -0,0 +1,15 @@
package ninja.brunner.pgtl.program3;
public class Wette {
public Person person;
public Rennen rennen;
public Schnecke schnecke;
public float einsatz;
public Wette(Person person, Rennen rennen, Schnecke schnecke, float einsatz) {
this.person = person;
this.rennen = rennen;
this.schnecke = schnecke;
this.einsatz = einsatz;
}
}

View File

@ -0,0 +1,4 @@
package ninja.brunner.pgtl.program3.exceptions;
public class NameBereitsVergebenException extends Exception {
}

View File

@ -0,0 +1,4 @@
package ninja.brunner.pgtl.program3.exceptions;
public class RennenNichtAktivException extends Exception {
}

View File

@ -0,0 +1,4 @@
package ninja.brunner.pgtl.program3.exceptions;
public class SchneckeNichtFreiException extends Exception {
}

View File

@ -0,0 +1,7 @@
package ninja.brunner.pgtl.program3.exceptions;
/**
* Created by Daniel on 13.12.2016.
*/
public class StreckeNichtFreiException extends Exception {
}

View File

@ -0,0 +1,4 @@
package ninja.brunner.pgtl.program3.exceptions;
public class ZuWenigGeldException extends Exception {
}