The obsidian tower has the 2 bosses from the previous tower, the golem and the dragon. Although the movements of the bosses are the same, the HP and attack stats were too low. Any player who could go any reasonable distance in the obsidian tower would find that the golem even on the highest difficulty no challenge at all.
I tried to treat the golem and dragon in the obsidian tower as different enemies since they have different stats, and I wanted to reuse the same sprites just color them differently in code to show that they don’t have the same stats, setting the golem to red, and the dragon to blue. This turned out to be not a great idea.
When I tried this, the golem and the dragon were their normal colors in the app. This was quite befuddling since I altered the colors of the sprites in the code for sure. So what was the issue?
It turns out that the framework that I use, libGDX, remembers the original colors of a sprite, for example, if a sprite is turned red, it can be reverted to its original colors by setting them back. I knew this because it is how I implemented the damage animation where if you hit an enemy, it turns red for a split second, then the color is reverted. The code that reverts the damage animation was reverting the red color I set for the golem and the blue color I set for the dragon!
The solution I came up with was to just create new spritesheets in gimp where the golem and dragon were the colors that I wanted in the original sprites, and it worked great!
Red golem and blue dragon spritesheets:
Leave a Reply