Code Monkey home page Code Monkey logo

bombermanandroid's People

Contributors

mvpgomes avatar samfcmc avatar

Watchers

 avatar  avatar

bombermanandroid's Issues

Explosions don't disappear

After droping a bomb, the explosion stays there forever but nothing happens when the player touches it

Movable commands list

I implemented the animated movement. Now you can see the movement depending of the speed but... For instance, you click -> <- the Bomberman will go to right and after that go to left. But, usually, when we perform a sequence like this, we just want to cancel the right moving and move to left instead (and that can save us from being touched by a robot). Well... with our implementation, that is just impossible because we execute all the received commands no mather what!...
Do we really want something like this? Will not be better to have just one command and when the player presses one direction overrides the previous one? Because... remember... that can save your life (in the game of course)

Collision Detection System

The collision detection system has a simple approach, when a player press a button to execute a movement, the action is performed only if the element on the adjacent cell is not a collidable element. To refine this implementation we need to consider the concept of interpenetration of elements, but i don't know if it is really necessary implement this functionality for a simple game like ours.

Remove hardcoded strings

There are hardcoded strings in Run Game Activity code to update text in some text views. That strings should go to strings.xml file instead

Canibalism between robots

As you can see, the robots now can... Eat each other. When a robot goes to a cell where there is another robot, one of them simple disappear. That's because one cell can only contain one model at a time.
But... I think we should consider some cells to have multiple "layers". For instance, in multiplayer, it's easy for any player to block any other player's way. I think it's not fair, we should only kill other players with bombs and not block their way too.
My ideia is to change the grid to have a matrix of blocks instead of models. We could have two kinds of blocks, SimpleLayerBlock, which only contains one model and MultiLayerBlock that can contain several models. It's easier to do than it sounds.
Another example where this can be useful is when a player drops a bomb. The bomb should appear behind the bomberman, in the same position where the bomberman is.

We should do a brainstorming about this. What do you think?

Math for calculating deltas for animated movement

I think the deltas for animated movement are not being calculated in the right way. We have a speed of 2 in Bomberman but no way it makes it. The speed is in the number of cells per second. To calculate the deltas the formula is:

delta = (INTERVAL * speed * cell_size) / 1000

where INTERVAL is the time interval which we used to schedule the game thread and cell_size is the size of each cell (All cells have the same size of course)
Is this math wrong? We should ask this to the teacher...

Multiplayer implementation

We should discuss how to implement the multiplayer mode.
Are we going start implementing the centralized version or go straight to wifi direct instead?

Multiplayer frontend

Can be an activity with a button to create a new game and a list with games around the user

Collision Between Bomberman/Enemy and Enemy/Enemy

The collision system is already implemented, but still need some improvements, namely the cases in that the Bomberman collides with a enemy and dies, and the case when two enemies collides, and change both their direction.

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.