Palamedes - 2014-02-02

I think I've found a fix for this bug.

In the file src/player.c there is a function declaration on line 89, as follows:

Entity loadPlayer(int x, int y, char name)

The return of this function is on line 183, as follows:

return &player;

It seems that all you need to do is add the following line just before the return:

setSlimeTimerValue(-1);

Seems to work. With this line added, you can enter a different level, or load a saved game, or start a new game, or start a tutorial - and in all of these cases, the slime timer will disappear.

I'm aware of another quirk of changing maps in-game when the slime timer has been running just before the map change: Edgar will not be equipped with any weapon or shield upon entering the new map. Upon doing a second map change, Edgar will be equipped with whatever weapon and shield Edgar was equipped with just before becoming a slime. Upon loading a saved game, Edgar will be equipped with weapons and shield as normal.