Submissions from 2018-01-10 to 2018-01-11 (2 total)

As I hinted at in a recent post, the UX for selecting and using abilities is a bit clunky. Today, I took a small step towards making it more like how I envision the game will work. Here is a GIF:


Nothing about how abilities work was changed, so there is still the aforementioned issue where you have to click an extra time to activate the AOE attack. But now that the abilities' icons are separated, I can work towards fixing that.

There is a decent amount of plumbing going on behind the scenes too. For instance, the UI buttons and their container are totally generic and just listen for events from the UI manager to populate the right sprites. The designer (me) just needs to drag ability ScriptableObjects into a list in the GameManager called "StartingAbilities" and both the UI and Player class are alerted properly.

Producing content is so much easier :D

I did a lot of work today.

First I pulled some sprites and created some animations for idling and walking. Then an enemy controller (which I later abstracted to a CharaController (which I will later inherit from for the player, too)).

An enemy now has an aggro range (green circle). when the player enters the aggro range, the enemy will follow the player until the player exits the aggro range.

An enemy also can be tethered to a spot (white circle).


However, I have a bug I don't know how to fix!

In Unity you can mirror animations but if these animations are sprite based, the property has no effect. So Icheck if input on x axis is greater than 0 and flip the image accordingly BUT when you release the axis, it defaults to one direction

The line

 spriteRenderer.flipX = translation.x > 0f;

is responsible for that behaviour. If the direction button is released, I want to retain the current flip state (I can do this with an extra bool, but there has to be an easier way)

See the changes here:

https://github.com/Papiertig0r/Alchemy/commit/0a11...