Public feed
#724458
int Player::detect_collision(Block *b){ // Define some vars, for less typing later // Player double px1 = x; double px2 = x + plyw; double py1 = y; double py2 = y + plyh; int collide = NONE; // Check which side of the box was hit if((in_box(px1, py1, b) || in_box(px2, py1, b)) && !(in_box(px1, py2, b) || in_box(px2, py2, b))) { collide = UP; } if((in_box(px1, py2, b) || in_box(px2, py2, b)) && !(in_box(px1, py1, b) || in_box(px2, py1, b))) { collide = DOWN; } if((in_box(px2, py1, b) || in_box(px2, py2, b)) && !(in_box(px1, py1, b) || in_box(px1, py2, b))) { return RIGHT; } if((in_box(px1, py1, b) || in_box(px1, py2, b)) && !(in_box(px2, py1, b) || in_box(px2, py2, b))) { return LEFT; } return collide;}