Git Product home page Git Product logo

lavendertown's Introduction


License Lint Code Base
Lavender Town

A battleship game.

Controls

key description
w, k, move up
a, h, move left
s, j, move down
d, l, move right
q, PgDn, Previous, u rotate ship left
e, PgUp, Next, i rotate ship right
, Home place ship, attack
confirm, attack
ESC, Ctrl+C , End exit program
1, 2, 3, 4, 5 grab ship with
corresponding index

Building

MacOS

ncurses is installed by default. You only have to manually install cmake.
You can either download CMake directly or you can use a package manager like Homebrew:

brew install cmake

Then you can continue with Building with CMake

Linux

Make sure you have cmake and ncurses installed.

Then you can continue with Building with CMake

Windows

Windows is not Unix-based. Therefore ncurses is not available. To circumvent this, you can use MSYS2.
Follow the installation instructions on this page.

Inside a MSYS2 MinGW x64 Terminal, you can continue with Building with CMake

Building with CMake

Make sure that you are in the root of this Repository. (Where this README.md resides)

  1. create a clean build directory

    rm -rf build && mkdir build
  2. cd into the build directory

    cd build
  3. Configure the project using CMake

    cmake ..
  4. Build the project

    cmake --build .

After building, the binary named LavenderTown (LavenderTown.exe on Windows) is located under bin/<system>-<arch>, where <system> is your Operating System (e.g. "darwin" under MacOS, or "linux" under Linux Distributions) and <arch> is your processors architecture (e.g. "x86_64" or "aarch64").

Roles

Product Owner (Kilian Schlosser)

Scrum Master (Christian Shögin)

Developer (Anton Pieper)

Developer (Azat Erol)

Developer (Kemal Bibinoglu)

lavendertown's People

Contributors

antonpieper avatar 4zatero7 avatar firnin avatar

Stargazers

 avatar  avatar

Watchers

Jörn Auerbach avatar  avatar

lavendertown's Issues

Refactor

Abstract Away the Curses Dependency and create a custom Renderer.

It should be able to:

  • Create the Screen
  • End the Screen
  • Create and Delete a Window
  • draw a box
    • filled
    • outlined
  • draw a line
  • draw Text at an arbitrary position
  • Clear a screen

Update documentation

  • document the controls
  • building instructions
  • add prebuilt binaries under releases
  • possibly more

Improve ship rendering

As a user, i want to know about which point i am rotating my ship (whose name i want to know).

Implement Ships

Ships should be displayed on grid.

Rely on standard battleship rules

  • each player has 5 ships

1x Carrier (5)
1x Battleship (4)
1x Cruiser (3)
1x Submarine (3)
1x Destroyer (2)

Add Colors

Different colors for each ship
Red/Blue as Hitmarkers?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.