PDA

Просмотр полной версии : [Вопрос] Столбцы переменной.



Jackal
02.01.2016, 16:05
На такой, кажется, простой вопрос не нашел ответа в гугле. Прошу помощи у Вас.

Переменная со столбцами:



new zoneterr[5];




stock ZoneTerrLoad()
{
zoneterr[0] = GangZoneCreate(0.0,0.0,0.0,0.0);
zoneterr[1] = GangZoneCreate(0.0,0.0,0.0,0.0);
zoneterr[2] = GangZoneCreate(0.0,0.0,0.0,0.0);
zoneterr[3] = GangZoneCreate(0.0,0.0,0.0,0.0);
zoneterr[4] = GangZoneCreate(0.0,0.0,0.0,0.0);
}




CMD:gzs(playerid)
{
GangZoneShowForAll(zoneterr[0], 0xFF0000AA);
GangZoneShowForAll(zoneterr[1], 0xFF0000AA);
GangZoneShowForAll(zoneterr[2], 0xFF0000AA);
GangZoneShowForAll(zoneterr[3], 0xFF0000AA);
GangZoneShowForAll(zoneterr[4], 0xFF0000AA);
return 1;
}




CMD:gzh(playerid)
{
GangZoneHideForAll(zoneterr[0]);
GangZoneHideForAll(zoneterr[1]);
GangZoneHideForAll(zoneterr[2]);
GangZoneHideForAll(zoneterr[3]);
GangZoneHideForAll(zoneterr[4]);
return 1;
}


Есть ли способ перечислить все эти переменные проще?

Sp1ke
02.01.2016, 17:00
Есть ли способ перечислить все эти переменные проще?

Циклом.

CMD:gzh(playerid)
{
for (new i = 0; i < 4; i++) GangZoneHideForAll(zoneterr[i]);
return 1;
}

Jackal
02.01.2016, 17:34
Циклом.

CMD:gzh(playerid)
{
for (new i = 0; i < 4; i++) GangZoneHideForAll(zoneterr[i]);
return 1;
}

Спасибо большое за помощь. В моём случае скорей циферку 5, у меня же 5 зон, ну тут я сам "допёр" слава Богу)) Вообще, спасибо этому сайту, тут никогда ещё не игнорировали, всегда ответят. Мир вам и с Новым годом.

L0ndl3m
02.01.2016, 17:45
Если хотите, чтобы компилятор сам посчитал размер массива, то используйте оператор sizeof:


for(new i = 0; i < sizeof(zoneterr); i++)
GangZoneHideForAll(zoneterr[i]);