while(true) { Enemy_dest.X = (int)Player.X; Enemy_dest.Y = (int)Player.Y; //Checks if player has collided with Monster if ( Calc_hits( EN_Conductor->Info, Player) == 1 ) { EN_Conductor->Info.X = rand()%(640 - EN_Conductor->Info.X_size); EN_Conductor->Info.Y = rand()%(480 - EN_Conductor->Info.Y_size); Score =0; } //Checks if weapon has hit Monster if( Calc_hits( Weapon, EN_Conductor->Info ) == 1 ) { E_Waiting_creation++; EN_Conductor->Info.X = rand()%(640 - EN_Conductor->Info.X_size); EN_Conductor->Info.Y = rand()%(480 - EN_Conductor->Info.Y_size); Score++; } Calc_Box_Dest( EN_Conductor->Info, Enemy_dest); Calc_Box_location(EN_Conductor->Info); apply_surface((int)EN_Conductor->Info.X,(int)EN_Conductor->Info.Y, Monster, Screen ); if( EN_Conductor->Next == NULL ) { break;} else { EN_Conductor = EN_Conductor->Next;} } while( E_Waiting_creation > 0) { sprintf(Show_score,"TEST", E_Waiting_creation); SDL_WM_SetCaption( Show_score, NULL); if(EN_Conductor->Next == NULL) { EN_Conductor->Next = new Enemy_node; EN_Conductor->Next = EN_Conductor; EN_Conductor->Info.X = rand()%(640 - EN_Conductor->Info.X_size); EN_Conductor->Info.Y = rand()%(480 - EN_Conductor->Info.Y_size); } E_Waiting_creation--; }