if((set_pos_x==pos_x++ && set_pos_y==pos_y-2)||(set_pos_x==pos_x-- && set_pos_y==pos_y-2)||(set_pos_x==pos_x-2 && set_pos_y==pos_y--) || (set_pos_x==pos_x-2 && set_pos_y==pos_y++)||(set_pos_x==pos_x-- && set_pos_y==pos_y+2)||(set_pos_x==pos_x++ && set_pos_y==pos_y+2)||(set_pos_x==pos_x+2 && set_pos_y==pos_y++)||(set_pos_x==pos_x+2 && set_pos_y==pos_y--)){ return true; }else{ return false; } } //values: pos_x = 6, pos_y = 0 //set_pos_x = 4; set_pos_y = 1 //in that case, (set_pos_x==pos_x-2 && set_pos_y==pos_y++) (4th from above) should be true! why isn't it?