Thursday, October 20, 2011

Buckets

So as you can tell by my last few posts, I added water to the game.  When I first added the logic for the water, I needed the ability to test.  So I made it so I can generate water on the fly.  Then I made it so the water saved its state when you exited, so I was careful about where I put water down.  Next on my list was making it so the world algorithm automatically generated water in certain areas.  This was all great when it came to new maps since it only ever spawned inside of an asteroid.  The issue came when I loaded a current map.  Water had generated on the map that I didn't anticipate for, so the stuff was everywhere.  I was able to drain it to a pool below my base but there were spots where there was a tiny pool of water that I couldn't reach.

Realizing that this is a problem that lots of people are going to have and that the player needs a way to gather water anyway, I decided to create a new item:  the bucket.

First off, here's the crafting formula:


It's not that expensive to build.  Lots of things are going to require light posts for energy.  The nice thing about the bucket is that it doesn't need light or fuel to run once it's built, so this is the only time you'll need the light post for it.

Next is a screenshot with buckets in different stages.


Buckets have 2 modes: Drain and Fill.  In Fill mode, the bucket will absorb any water inside of its own block and the 2 surrounding it.  In Drain mode, the bucket empties any liquid inside of it.  Below the player is a bucket in drain mode.

Directly to the right of the player is an empty bucket.  The buckets below and to the left of the player are buckets with different amounts of liquid in them.

By going over the bucket and pressing spacebar, the player can switch the bucket modes between Drain and Fill.  I haven't decided what button this will be on the 360 controller.

By completing the bucket and liquids functionality, I've checked off 2 requirements for v.04.  I need to add 1 more enemy, biomes, a loading/saving progress bar and a time cycle.  I also managed to fix the bug where the sprites are sometime drawn off by about 1 pixel.

So until next time...

No comments: