diff options
author | JozanLeClerc <bousset.rudy@gmail.com> | 2020-03-15 15:09:59 +0100 |
---|---|---|
committer | JozanLeClerc <bousset.rudy@gmail.com> | 2020-03-15 15:09:59 +0100 |
commit | 163bed0c8988ff020b746bf96dc01dd2058dc4f9 (patch) | |
tree | 724090f6319cc6d0336eb2a5b501bd032599d295 /src/ft_sfx_footstep.c | |
parent | ok (diff) | |
download | 42-cub3d-163bed0c8988ff020b746bf96dc01dd2058dc4f9.tar.gz 42-cub3d-163bed0c8988ff020b746bf96dc01dd2058dc4f9.tar.bz2 42-cub3d-163bed0c8988ff020b746bf96dc01dd2058dc4f9.tar.xz 42-cub3d-163bed0c8988ff020b746bf96dc01dd2058dc4f9.tar.zst 42-cub3d-163bed0c8988ff020b746bf96dc01dd2058dc4f9.zip |
Footsteps are bav
Diffstat (limited to '')
-rw-r--r-- | src/ft_sfx_footstep.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/ft_sfx_footstep.c b/src/ft_sfx_footstep.c new file mode 100644 index 0000000..a2eef1d --- /dev/null +++ b/src/ft_sfx_footstep.c @@ -0,0 +1,45 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_sfx_footstep.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: rbousset <marvin@42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/02/24 17:17:54 by rbousset #+# #+# */ +/* Updated: 2020/02/24 17:17:56 by rbousset ### ########lyon.fr */ +/* */ +/* ************************************************************************** */ + +#include <cub3d.h> +#include <stdlib.h> +#include <pthread.h> + +void + *ft_sfx_footstep_thread(void *vargp) +{ + t_sfx *sfx; + static uint8_t ref = 0; + + if (FT_OS == 1) + pthread_setcancelstate(PTHREAD_CANCEL_ASYNCHRONOUS, NULL); + else + pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL); + sfx = (t_sfx *)vargp; + pthread_mutex_lock(&sfx->footstep_mutex); + while (1) + { + ref = (ref > 201) ? (0) : (ref + 1); + pthread_mutex_lock(&sfx->footstep_mutex); + if (ref % 2) + system(sfx->footstep_one); + else + system(sfx->footstep_two); + } + return (NULL); +} + +void + ft_sfx_footstep(t_cub *cl) +{ + pthread_mutex_unlock(&cl->sfx.footstep_mutex); +} |