Skip to content

Conversation

mabigel
Copy link

@mabigel mabigel commented May 16, 2017

Implementation of issue 77 and issue 80 for the Rendszerfejlesztés II. course at University of Szeged.

Issue 77

According to the task I have created the opportunity for the user to personalize the look and feel of the city. First of all, new layout algorithm have been created, which are responsible for placing the buildings in their correct position. Besides the user can choose a theme, which determines the structure (and the material) of the buildings.
These new features provide more options to theming the world in an easy to use, user-friendly way.

Layout algorithms

  • PackLayout: if a building reaches it's maximum height it gets a decorationFloor, so roofs can be added on top of them.
  • RailwayLayout: (new) this layout algorithm lays down the buildings flat on the ground like trains.
  • TownLayout: (new) it places single-story buildings along the sides of a long road, so the created city looks like a small town.

Theming

There is now the option to choose a theme for the generated world. It was implemented in a way that new themes can be easily added in the future.

  • Basic: the default CodeMetropolis look-and-feel.
  • Minimalist: (new) forces a very simple shape and material for the buildings.
  • Railway : (new) gardens now look like rails, floors are given the appearance of wagons, and decoration floors are visualized as locomotives.
  • Town: (new) gives the feeling of a small town, with hedge fences, classical houses and garages to represent the different types of floors.

Issue 80

I have also added the work of Dora Borsos and Bernat Gecs to this pull request, who implemented issue 80. Their description of their work:

"Show metrics without leaving the visualization.
At first read all the block which are not decorationFloor from the placing-results.xml and match them with items in the converter-results.xml. Write the names, identifiers and metrics for all blocks from these files into a csv file called metrics.csv and place it in the current Minecraft world folder.
In the visualization first press F3 key to show the debugger information provided by Minecraft then press F4 to switch to show the current metrics and press again to switch back to debugger info. If you decide to show the metrics the game will search for the file called metrics.csv in the Minecraft world folder and read all its content and show it on the screen. The metrics are updated realtime as you look at any block that has metrics information."
~ Dora Borsos & Bernat Gecs

mabigel added 17 commits April 15, 2017 01:24
…sibility of functions in Buildings. Adding theme parameter to command line parameters.
…ing to Buildable.java. Writing Javadoc to railway layout classes.
…street. Cellars are represented similarly to floors, above the ground.
… houses are single floored with a nice roof. Gardens are placed along a long street.
…oint and Time general classes. Added missing exception handling to DecorationFloor. Also added jUnit to the modules using test scope.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant