Caypеn
Компетентный
Перед прочтением этой темы, прочтите сначала "Часть 1"!
Пункт 1-ый по 5-ой находятся здесь:
Оптимизация в целом [Часть 1]
6. Циклы
Всем знаком подобный цикл.
Дело в том что данный цикл перебирает от 0 до самой переменной Max_Players, по стандарту в инклуде samp.inc MAX_PLAYERS равняется 500, но об этом позднее, так вот получается что в этом цикле оно перебирает от 0-го до 500-го ID, но если у вас подключено в этот момент только 100 игроков допустим? Зачем этот перебор до 500-го ID.
Я нашел на офф.форуме сампа вот этот include, так же видел его где-то тут тоже
Этот include нужно будет загрузить в pawno/include
Метод использования:
Он перебирает от 0-го ID до последнего подключенного ID игрока,Без лишних ID которые даже не подключены.
Обратите внимание на то что есть и подобные циклы
Их нужно заменять на такие.
буква там k или i или x не важно,это всего-лишь переменная и суть остается одна и та же.
7. MAX_PLAYERS,MAX_VEHICLES и т.д.
Видел много тем где написано, добавьте #undeff MAX_PLAYERS и #define MAX_PLAYERS (кол-во игроков), ну не знаю кому как, но можно сделать проще.
Идем в pawno/include и находим там a_samp открываем его и находим вот это.
И так видим MAX_PLAYERS стоит на 500, изменяйте на свое кол-во слотов(если у вас онлайн 10 а слотов 500, то 500 ставить не разумно...), далее MAX_VEHICLES, подсчитать их можно вот таким методом:
Создаем сток, и перемещаем туда все машины которые будут создаваться сервером при загрузки мода, далее под самую последнюю переменную машины ставим эту строчку.
Выглядеть это будет примерно так:
Так теперь в OnGameModeInit вставляем название стока, если сток был таким
то, в onGameModeInit надо поставить вот это createvehicles();
Комплимируем, запускаем сервер и видем "(Столькото) Машин было успешно загружено!", так количество машин мы узнали, но не нужно делать поспешных выводов, т.к. допустим у нас 400 машин, а ведь надо помнить о том что есть машины которые создаются на сервере в процессе например через /fixcar, /veh и т.д. Допустим у нас слотов 200 а онлайна 100, а машин у нас 400, 400(уже созданных машин)+100(которые создадут игроки)+100(запас)=600 машин , в общем делаем так, кол-во машин + кол-во слотов и это вписываем в MAX VEHICLES
Ах да, забыл объяснить зачем нам это, в моде очень часто используются такие переменные new peremennaja[MAX_PLAYERS]; и так MAX_PLAYERS тут это как бы то число которое было указано в define MAX_PLAYERS, таким образом происходит экономия ячеек.
После этого всё что вы будете комплимировать с инклудом a_samp.inc будет иметь указанное вами число для MAX_PLAYERS и MAX_VEHICLES
Часть 1
Часть 2
Пункт 1-ый по 5-ой находятся здесь:
Оптимизация в целом [Часть 1]
6. Циклы
Всем знаком подобный цикл.
PHP:
for(new i=0;i<MAX_PLAYERS;i++)
Я нашел на офф.форуме сампа вот этот include, так же видел его где-то тут тоже
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Этот include нужно будет загрузить в pawno/include
Метод использования:
PHP:
foreach (new i : Player)
Обратите внимание на то что есть и подобные циклы
PHP:
for(new k=0;k<MAX_PLAYERS;k++)
PHP:
foreach (new k : Player)
7. MAX_PLAYERS,MAX_VEHICLES и т.д.
Видел много тем где написано, добавьте #undeff MAX_PLAYERS и #define MAX_PLAYERS (кол-во игроков), ну не знаю кому как, но можно сделать проще.
Идем в pawno/include и находим там a_samp открываем его и находим вот это.
PHP:
#define MAX_PLAYERS (500)
#define MAX_VEHICLES (2000)
Создаем сток, и перемещаем туда все машины которые будут создаваться сервером при загрузки мода, далее под самую последнюю переменную машины ставим эту строчку.
PHP:
printf("%d Машин было успешно загружено!",ПОСЛЕДНИЯПЕРЕМЕННАЯМАШИНЫ+1);
PHP:
ballascar[0] = CreateVehicle(412,2653.9341,-2009.0320,13.3056,323.4019,85,85,300); //35 Ballas savanna
CreateVehicle(412,2658.0420,-2009.0884,13.3053,323.2690,85,85,300); //39 Ballas sultan
CreateVehicle(412,2665.7573,-1997.6373,13.3918,269.8071,85,85,300); //39 Ballas sultan
CreateVehicle(547,2658.5288,-2042.0422,13.2840,1.0220,85,85,300); //39 Ballas sultan
CreateVehicle(547,2654.6658,-2041.6796,13.2850,0.4804,85,85,300); //39 Ballas sultan
CreateVehicle(566,2661.5547,-2009.6567,13.2471,326.0598,85,85,300); //39 Ballas sultan
ballascar[1] = CreateVehicle(566,2665.0559,-2009.7874,13.2323,327.4051,85,85,300); //39 Ballas sultan
printf("%d Машин было успешно загружено!",ballascar[1]+1);
PHP:
stock createvehicles()
Комплимируем, запускаем сервер и видем "(Столькото) Машин было успешно загружено!", так количество машин мы узнали, но не нужно делать поспешных выводов, т.к. допустим у нас 400 машин, а ведь надо помнить о том что есть машины которые создаются на сервере в процессе например через /fixcar, /veh и т.д. Допустим у нас слотов 200 а онлайна 100, а машин у нас 400, 400(уже созданных машин)+100(которые создадут игроки)+100(запас)=600 машин , в общем делаем так, кол-во машин + кол-во слотов и это вписываем в MAX VEHICLES
Ах да, забыл объяснить зачем нам это, в моде очень часто используются такие переменные new peremennaja[MAX_PLAYERS]; и так MAX_PLAYERS тут это как бы то число которое было указано в define MAX_PLAYERS, таким образом происходит экономия ячеек.
После этого всё что вы будете комплимировать с инклудом a_samp.inc будет иметь указанное вами число для MAX_PLAYERS и MAX_VEHICLES
Часть 1
Часть 2
Последнее редактирование:
