PDA

Просмотр полной версии : [Вопрос] Циклы SA:MP 0.3.7



BaBuIIIkaDrifteR
05.03.2015, 12:10
Скоро выходит релиз на самп 0.3.7.
там написано:
Если у вас есть скрипты с использованием MAX_PLAYERS или MAX_VEHICLES, вам необходимо переделать циклы с использованием GetPlayerPoolSize()/GetVehiclePoolSize(), либо переназначить константу MAX_PLAYERS на количество слотов вашего сервера (теперь по-умолчанию 1000).
Пример:

Code:
//Старый код
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(IsPlayerConnected(x))
{
// какие-либо действия
}
}

// Новый код
for(new x = GetPlayerPoolSize(); x >= 0; x--) // (обратите внимание, что < сменилось на >=) // в оригинальном примере обратная градация
{
if(IsPlayerConnected(x))
{
// какие-либо действия
}
}

Так у меня возник вопрос такие циклы как:

for(new i, j = GetMaxPlayers(); i < j; i++)

for(new i = 0; i < 47; i++)

for(new i = 0; i <= strlen(text); i++)

for(new i; i < 100; i++)

for(new AdminIndex; AdminIndex < sizeof(AdminList); AdminIndex++)

for(new i = strlen(inputtext), smska; i != 0; --i)

for(new i; i != strlen(password); i++)

for(new i = 0; i < DUELS; i++)

for(new i = 1; i < MAX_KLANS; i++)
Их надо переделовать? Если надо какие то, если можно выделите мне их и подскажите как?

[ForD]
05.03.2015, 12:30
Как я понял имеется ввиду циклы с использованием MAX_PLAYERS,т.к. теперь по дефолту MAX_PLAYERS будет равняться 1000
по этому проще сменить значение MAX_PLAYERS на кол-во слотов на сервере если их меньше 1000

$continue$
05.03.2015, 14:20
Большой и толстый (facepalm)
Причём циклы на игроков и циклы на зоны и т.д и т.п

Мне лично больше интересно что будет с фореч

BaBuIIIkaDrifteR
05.03.2015, 14:25
Большой и толстый (facepalm)
Причём циклы на игроков и циклы на зоны и т.д и т.п

Мне лично больше интересно что будет с фореч

Я новечек. Про foreach не чего не говорили

$continue$
05.03.2015, 14:29
Фореч не куй разрабатывает, но на сколько я помню исходный код не чего с ним не будет

wAx
07.03.2015, 21:26
Если нужно будет, Y_Less выпустит новую версию foreach, так что не волнуйтесь.