Beispiel #1
0
// seg004:029D
void __pascal far check_bumped() {
	if (
		Char.action != actions_2_hang_climb &&
		Char.action != actions_6_hang_straight &&
		// frames 135..149: climb up
		(Char.frame < frame_135_climbing_1 || Char.frame >= 149)
	) {
#ifdef FIX_TWO_COLL_BUG
		if (bump_col_left_of_wall >= 0) {
			check_bumped_look_right();
			if (!fixes->fix_two_coll_bug) return; // check for the left-oriented collision only with the fix enabled
		}
		if (bump_col_right_of_wall >= 0) {
			check_bumped_look_left();
		}
#else
		if (bump_col_left_of_wall >= 0) {
			check_bumped_look_right();
		}
		else
		if (bump_col_right_of_wall >= 0) {
			check_bumped_look_left();
		}
#endif // FIX_TWO_COLL_BUG

	}
}
Beispiel #2
0
// seg004:029D
void __pascal far check_bumped() {
	if (
		Char.action != actions_2_hang_climb &&
		Char.action != actions_6_hang_straight &&
		// frames 135..149: climb up
		(Char.frame < 135 || Char.frame >= 149)
	) {
		if (bump_col_left_of_wall >= 0) {
			check_bumped_look_right();
		}
#ifndef FIX_TWO_COLL_BUG
		else
#endif
		if (bump_col_right_of_wall >= 0) {
			check_bumped_look_left();
		}
	}
}