Проблема: записи в ячейках массива все больше искажаются с каждым проходом цикла.
Просьба: помочь в решении данной проблемы. Из-за этого плагин отправляет ложные данные движку, который в последствии впадает в ступор.
Код:
- Код: Выделить всё
new szMenuMulti[64]
formatex(szMenuMulti, 63, "%L", LANG_PLAYER, "TITLE_MENU");
// До тех пор, пока файл не будет прочитан до конца
while(!feof(fp))
{
// Читает строки из файла (файл, массив, куда будет помещена информация, максимальная длина массива)
fgets(fp, buff, charsmax(buff));
// Очистить пробелы; кавычки в полученных строках
trim(buff); remove_quotes(buff);
// Пропускаем строки с символами комментированиия или разделения
if(!buff[0] || buff[0] == ';') continue;
// Загружаем заголовки сценариев
if(buff[0] == '[')
{
// Обнуляем счетчик для записи карт в свой сценарий
g_iMapCount = 0;
// Записываем заголовки
parse(buff, g_sMapScenario[g_iMapScenarioCount], charsmax(g_sMapScenario[]));
// [Если объявлена константа] Команда /maps в чате.
#if defined MAPSMENU
// [Сценарии] Создать пункты меню со сценариями номинаций
menu_additem(g_iScenariesMenu, g_sMapScenario[g_iMapScenarioCount]);
// [Меню для сценариев карт] Создаем меню c картами под каждый конкретный сценарий
g_iMapsMenu[g_iMapScenarioCount] = menu_create(szMenuMulti, "mapsmenu_handler");
formatex(szMenuMulti, 63, "%L", LANG_PLAYER, "MENU_EXIT")
menu_setprop(g_iMapsMenu[g_iMapScenarioCount], MPROP_EXITNAME, szMenuMulti);
formatex(szMenuMulti, 63, "%L", LANG_PLAYER, "MENU_NEXT")
menu_setprop(g_iMapsMenu[g_iMapScenarioCount], MPROP_NEXTNAME, szMenuMulti);
formatex(szMenuMulti, 63, "%L", LANG_PLAYER, "MENU_PREV")
menu_setprop(g_iMapsMenu[g_iMapScenarioCount], MPROP_BACKNAME, szMenuMulti);
// С каждым проходом увеличиваем индекс g_sMapScenario[] на единицу
g_iMapScenarioCount++;
#endif
}else
{
// [Если объявлена константа] Показывать карты в зависимости от онлайна
#if defined MAP_ON_PLAYERS
// Получаем нужные аргументы с файла по отдельности (текст для разбивки по аргументам, первый оргумент, второй...)
parse(buff, g_sMapScenario[g_iMapScenarioCount][g_iMapCount], charsmax(g_sMapScenario[]), minpl, charsmax(minpl), maxpl, charsmax(maxpl));
#else
// Получаем нужные аргументы по отдельности (текст для разбивки по аргументам, первый оргумент, второй...)
parse(buff, g_sMapScenario[g_iMapScenarioCount][g_iMapCount], charsmax(g_sMapScenario[]));
// Если отсутствует карта на сервере или (функция ниже) была заблокирована, или не совпадает с ожидаемой - пропускаем
if(!is_map_valid(g_sMapScenario[g_iMapScenarioCount][g_iMapCount]) || _is_map_blocked(g_sMapScenario[g_iMapScenarioCount][g_iMapCount]) || !strcmp(g_sMapScenario[g_iMapScenarioCount][g_iMapCount], g_sCurMap)) continue;
#endif
// [Если объявлена константа] Показывать карты в зависимости от онлайна
#if defined MAP_ON_PLAYERS
// Записываем минимальный, максимальный порог карты (для показа игроку)
g_MapPlayerData[g_iMapScenarioCount][g_iMapCount][1] = str_to_num(minpl);
g_MapPlayerData[g_iMapScenarioCount][g_iMapCount][2] = str_to_num(maxpl);
#endif
// [Если объявлена константа] Команда /maps в чате.
#if defined MAPSMENU
/* [Карты] Создаем пункты меню
1. Идентификатор меню
2. Название пункта */
menu_additem(g_iMapsMenu[g_iMapScenarioCount -1], g_sMapScenario[g_iMapScenarioCount][g_iMapCount]);
#endif
}
// Запоминает количество имеющихся карт в файле
g_iMapCount++;
// server_print(g_sMapScenario[g_iMapScenarioCount][g_iMapCount -1]);
server_print(g_sMapScenario[g_iMapScenarioCount][1]);
}
Вывод второй ячейки:
- Код: Выделить всё
$2000$
$$3000$
$$$5000$
$$$$7000$
$$$$bio_dusty_2x2_fl
$$$$bbio_evil_dust_fl
$$$$bbbio_falconbase_beta
$$$$bbbbio_lego_v4
$$$$bbbbbio_mystery
$$$$bbbbbbio_simpsons
$$$$bbbbbbbio_woody_fl
$$$$bbbbbbbbio_ziger_azt
$$$$bbbbbbbbbio_zomboy_f3
$$$$bbbbbbbbbcs_assault
$$$$bbbbbbbbbccs_italy
$$$$bbbbbbbbbcccs_militia
$$$$bbbbbbbbbccccs_office
$$$$bbbbbbbbbcccccsg_office
$$$$bbbbbbbbbccccccss_dust2night_gob1
$$$$bbbbbbbbbcccccccss_dust2x2
$$$$bbbbbbbbbcccccccde_aztec
$$$$bbbbbbbbbcccccccdde_cbble
$$$$bbbbbbbbbcccccccddde_chateau
$$$$bbbbbbbbbcccccccdddde_dust
$$$$bbbbbbbbbcccccccddddde_dust2
$$$$bbbbbbbbbcccccccdddddde_inferno
$$$$bbbbbbbbbcccccccddddddde_piranesi
ze_alejandra
zze_area51_warz_v1
zzze_assault_escape2
zzzze_assault_warz
zzzzze_blackmesa
zzzzzze_blackmesa_3
zzzzzzze_boat
zzzzzzzze_castle_v1_fix
zzzzzzzzze_cave
zzzzzzzzzze_classic
zzzzzzzzzzze_dust2_fix1
zzzzzzzzzzzze_dust2_mari
zzzzzzzzzzzzze_egypt
zzzzzzzzzzzzzze_ice4cap
zzzzzzzzzzzzzzze_isla_nublar_lg
zzzzzzzzzzzzzzzze_jurassicpark
zzzzzzzzzzzzzzzzze_jurassicpark_a1
zzzzzzzzzzzzzzzzzze_jurassicpark_v2
zzzzzzzzzzzzzzzzzzze_jurassicpark_v5
zzzzzzzzzzzzzzzzzzzze_jurassicpark2_v1
zzzzzzzzzzzzzzzzzzzzze_jurassicpark4
zzzzzzzzzzzzzzzzzzzzzze_jurassicpark7_pg
zzzzzzzzzzzzzzzzzzzzzzze_kabul
zzzzzzzzzzzzzzzzzzzzzzzze_lift_fix
zzzzzzzzzzzzzzzzzzzzzzzzze_osprey
zzzzzzzzzzzzzzzzzzzzzzzzzze_paola_city
zzzzzzzzzzzzzzzzzzzzzzzzzzze_parkour_fabi
zzzzzzzzzzzzzzzzzzzzzzzzzzzze_project
zzzzzzzzzzzzzzzzzzzzzzzzzzzzze_pueblo
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzze_trainyard
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzze_watery_escape_v1
zm_3rooms
zzm_202
zzzm_666_brick
zzzzm_assault_escape2
zzzzzm_aztec_garf
zzzzzzm_aztec_happy
zzzzzzzm_battleground_foda
zzzzzzzzm_biohazard_base_mx
zzzzzzzzzm_braintell_jackass3-re
zzzzzzzzzzm_canyon
zzzzzzzzzzzm_colorblind
zzzzzzzzzzzzm_cornered
zzzzzzzzzzzzzm_cpl_biohazard
zzzzzzzzzzzzzzm_cubeworld_mini
zzzzzzzzzzzzzzzm_cubeworld_v1
zzzzzzzzzzzzzzzzm_daylight
zzzzzzzzzzzzzzzzzm_deko2
zzzzzzzzzzzzzzzzzzm_dust1_2x2
zzzzzzzzzzzzzzzzzzzm_dust2_2x2
zzzzzzzzzzzzzzzzzzzzm_dust2_2k15
zzzzzzzzzzzzzzzzzzzzzm_dust_2k18
zzzzzzzzzzzzzzzzzzzzzzm_dust2_2x2_fixed
zzzzzzzzzzzzzzzzzzzzzzzm_dust2_city
zzzzzzzzzzzzzzzzzzzzzzzzm_dust2_final
zzzzzzzzzzzzzzzzzzzzzzzzzm_dust_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzm_dusted
zzzzzzzzzzzzzzzzzzzzzzzzzzzm_dusts
zzzzzzzzzzzzzzzzzzzzzzzzzzzzm_epic_zone
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_estate_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fa_world
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fa_world_2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fa_world_3
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fdust2x2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_flood_rmk
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fox_v2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fun_world
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fun_world_2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fun_world_3
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_fun_world_b
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox_ep1
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox3
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox5
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox6
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gbox7
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_gorod_final
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_ice_attack
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_ice_attack3
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_ice_attack3_reborn
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_ice_attackv4_v3
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_ice_vk
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_india_cs
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_LB
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_mario_cube
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_militia_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_mirage_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_nuke_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_nuked2_click21
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_sand_new
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_sector_d6
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_snowbase2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_texas_night
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_toxic_house_vk
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_toxic_house2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_toxichouse_new
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_town_big
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_train_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_trakinax_tubo
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_tuscan_happy
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_vendetta
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_virus_t
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_virus_x
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_westwood
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_westwood_click21
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzm_zombust
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzp_desert
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzp_gorod_new
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzp_deko_cso_v2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzp_vendetta_cso_b2
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzp_vendetta_cso_b2
Всем спасибо за помощь.