push_swap/src/app/moves.c
2024-01-11 21:28:36 +01:00

44 lines
1.5 KiB
C

/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* moves.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: maiboyer <maiboyer@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/01/11 16:17:26 by maiboyer #+# #+# */
/* Updated: 2024/01/11 16:31:56 by maiboyer ### ########.fr */
/* */
/* ************************************************************************** */
#include "app/moves.h"
#include "app/element.h"
#include "app/state.h"
void push_a(t_state *s);
void push_b(t_state *s);
void swap_a(t_state *s);
void swap_b(t_state *s);
void rotate_a(t_state *s);
void rotate_b(t_state *s);
void rev_rotate_a(t_state *s);
void rev_rotate_b(t_state *s);
void do_move(t_move m, t_state *s)
{
if (m & PUSH_A)
push_a(s);
if (m & PUSH_B)
push_b(s);
if (m & SWAP_A)
swap_a(s);
if (m & SWAP_B)
swap_b(s);
if (m & ROTATE_A)
rotate_a(s);
if (m & ROTATE_B)
rotate_b(s);
if (m & REVERSE_ROTATE_A)
rev_rotate_a(s);
if (m & REVERSE_ROTATE_B)
rev_rotate_b(s);
}