Exemplo n.º 1
0
void			exec_2(t_process **proc, t_process **begin)
{
	if (PROC->op == ZJMP)
		ft_zjmp(proc);
	else if (PROC->op == LDI)
		ft_ldi(proc);
	else if (PROC->op == STI)
		ft_sti(proc);
	else if (PROC->op == FORK)
		ft_fork(proc, begin);
	else if (PROC->op == LLD)
		ft_lld(proc);
	else if (PROC->op == LLDI)
		ft_lldi(proc);
	else if (PROC->op == LFORK)
		ft_lfork(proc, begin);
	else if (PROC->op == AFF)
		ft_aff(proc);
}
Exemplo n.º 2
0
t_bool	process_master(t_env *env, t_player *player, t_cmds **cmds)
{
	static int	j;

	if ((*cmds)->need_c == TRUE)
	{
		while (player->nb_pl > 0)
		{
			ft_fork(env);
			player->nb_pl--;
		}
		if ((*cmds)->nb_cmd < 2)
		{
			if (get_action(j, player, cmds) == TRUE)
				;
			else if (j % 4 == 0)
				modify_cmd(INVTRY, -1, NULL, cmds);
			else if (j % 4 == 2)
				modify_cmd(LEFT, -1, NULL, cmds);
		}
		j++;
	}
	return (TRUE);
}