void parse_args(int argc, char **argv, t_vm *vm, int *dump) { int i; int current_num; size_t number; int players; players = 0; current_num = -1; number = (size_t)INT_MAX + 1; i = 0; while (++i < argc) { if (ft_strcmp(argv[i], "-dump") == 0) parse_args_bis(&i, argc, dump, argv); else if (ft_strcmp(argv[i], "-n") == 0) { if (++i == argc) exit(write(2, "Bad params\n", ft_strlen("Bad params\n"))); number = validate(get_num(argv[i], 1), vm, ¤t_num); if (++i == argc) exit(write(2, "Bad params\n", ft_strlen("Bad params\n"))); add_champion(argv[i], vm, number); } else add_champion(argv[i], vm, validate(current_num, vm, ¤t_num)); } }
t_champion *get_list_champ(char **file_content) { char *name; char *comment; t_champion *champion; champion = NULL; if ((name = get_name(file_content[0])) == NULL) return (champion); if ((comment = get_comment(file_content[1])) == NULL) return (champion); if (add_champion(&champion, name, comment) == -1) return (NULL); set_champ_labels(&champion->lst_label, file_content); set_labels_instruction(&champion->lst_label, file_content); show_champions(champion); return (champion); }