Little gripe about the code, in player.cpp:72
if (_movtick = !_movtick) {
^------------- assignment, not comparison!
This is a pretty ambiguous statement that's very hard for someone else to interpret without any comments :P
I feel like I have a deja vu. I've seen(and correct) someone iterate over a c-styled string like that just last week. ;D
int i=0;
while(str[i]=!'\0')//assing every single byte starting at str[0] to 1 in infinite loop
{
/*ect.*/
}
When str[i ] finally driven out of the stack for the program, windows started to complain.