06:21
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 4 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Модератор форума: Dima-kun  
Оптимизация кода
ImperealДата: Четверг, 02.06.2011, 16:19 | Сообщение # 46
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
Репутация: 1868
Замечания: 100%
Статус:
Quote (AirKite)
Вот кстати INC ForEachPlayer по проще будет http://pastebin.com/K1WUNCU6

Спасибо большое!



Прощай самп-рус =Р
VagrantДата: Пятница, 03.06.2011, 17:27 | Сообщение # 47
Уважаемый человек
Группа: I'm V.I.P.
Сообщений: 904
Награды: 21
Город: Находка
Репутация: 489
Замечания: 0%
Статус:
Было бы не плохо если бы кто-нибудь написал статью по оптимизации кода с хорошыми приёмами в этом направлении. И подробно объяснил что хорошо для кода а что плохо с примерами. Например что лучше. Создать несколько переменных для разных моментов или использовать одну. И всё в таком духе. Вообще хорошую статью по оптимизации кода для новичков и продвинутых скриптеров.


Человек учась ходить падает, и только падая, он учится ходить!
Мои работы:
[GM] W.F.S.A. V. 1.0 - 100%
[GM] San Fierro Enigmatic (TDM) V. 1.0 - 100%
[FS] Clan House V. 1.0 - 100%
[FS] Save Car Tun System V. 1.0 - 100%
[FS] Vagrant Anti-CapsLock V. 2.1 - 100%
[FS] Vagrant Anti-Advertise V. 1.1, V. 2.0 - 100%
[APP] SA-MP Interior Viewer V. 1.0 - 100%

Принимаю заказы на помощь в скриптинге!


Сообщение отредактировал Vagrant - Пятница, 03.06.2011, 17:45
4erpa4okДата: Пятница, 10.06.2011, 03:59 | Сообщение # 48
Новенький
Группа: Пользователи
Сообщений: 18
Награды: 0
Город: Минск
Репутация: 0
Замечания: 0%
Статус:
не думаю , что количество строк увеличет .amx (а другие думают и делают так if(a[i] == 0) { SendClientMessage(i, COLOR_RED, "Я мудак!");return 1;}) хотя лутше так не делать ну простите кажется в таком коде разобратся гараздо проще
Code

if(IsPlayerInRangeOfPlayer(3.0,playerid,consid))//Если в радиусе 3 метров
{
      if(Secondss[consid] >=3)//больше 3 секунд на 1 месте
      {
          SetPlayerSpecialAction(playerid, SPECIAL_ACTION_NONE);//Убираем анимацию
          TogglePlayerControllableEx(playerid, 0);//Обездвиживаем
          Cuffedsss = 1;
      }
}
if(Secondss[consid] < 3)//Если конвоир стоит меньше 3 секунд или двигается
{
      if(Cuffedsss == 1)//Если игрок уже заморожен и без анимации
      {
          TogglePlayerControllableEx(playerid, 1);//Возвращаем возможность двигатся
          ApplyAnimation(playerid,"PED","WALK_old",4.9,9,9,9,9,9);//Возвращаем анимацию
    Cuffedsss = 0;//даём знать что мы с анимацией
   }
}

p.s ну это я новичкам пишу на будующее
дело втом что если делать всё по правильному
а точнее после { следующая строчка идёт с отступом в 4 пробела(как в примере выше)
Пример:
Code

for или if
{
      //действие
     for или if
     {
         //действие
     }
}

вообщем везде де открываются скобки должно быть так!
это устронит изначальные проблемы всех новичков с забытием открыть или закрыть скобку!
и код красивей выгледет а РАЗМЕР тот же(ну 1миллионная бита не в счёт)!



Я на Virtual City ! IP:93.84.114.180 Port:7777 (The best RP mode)!
EakwarpДата: Пятница, 10.06.2011, 10:06 | Сообщение # 49
Мастер джэдай
Группа: Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус:
Quote (4erpa4ok)
а точнее после { следующая строчка идёт с отступом в 4 пробела(как в примере выше)

Садись, двойка. Учимся использовать TAB.

Ну и причем здесь оптимизация? Хотя за лесенки - молодец. Но к оптимизации это вообще не относится.

Добавлено (10.06.2011, 10:06)
---------------------------------------------

Quote (Vagrant)
Было бы не плохо если бы кто-нибудь написал статью по оптимизации кода с хорошыми приёмами в этом направлении. И подробно объяснил что хорошо для кода а что плохо с примерами. Например что лучше. Создать несколько переменных для разных моментов или использовать одну. И всё в таком духе. Вообще хорошую статью по оптимизации кода для новичков и продвинутых скриптеров.

Я дал несколько ссылок на первых страницах темы. Там все по оптимизации, начиная с постулатов, кончая интересными приемами. Достаточно перевести.



More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.


Valakas Roleplay on Twitter

Платные консультации, разработка, в ICQ. Дорого.
InterpolДата: Пятница, 10.06.2011, 10:21 | Сообщение # 50
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 5358
Награды: 77
Город: НеБаку
Репутация: 3795
Замечания: 20%
Статус:
Quote (Vagrant)
Было бы не плохо если бы кто-нибудь написал статью по оптимизации кода с хорошыми приёмами в этом направлении. И подробно объяснил что хорошо для кода а что плохо с примерами. Например что лучше. Создать несколько переменных для разных моментов или использовать одну. И всё в таком духе. Вообще хорошую статью по оптимизации кода для новичков и продвинутых скриптеров.

прошвырнись по книжным магазинам города, книжки по оптимизации продаются)



AlcoholikДата: Пятница, 10.06.2011, 12:25 | Сообщение # 51
Мастер джэдай
Группа: Администратор
Сообщений: 8299
Награды: 111
Город: Санкт-Петербург
Репутация: 6085
Статус:
Quote (Interpol)
прошвырнись по книжным магазинам города, книжки по оптимизации продаются)

Тогда нахер вопрос-ответ, если можно по магазинам ходить и книги покупать?



if(isset($beer)&&isset($girl)) { drink($beer);fuck($girl); }else die();
Мониторинг sa:mp серверов


Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги.
Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
4erpa4okДата: Пятница, 10.06.2011, 14:04 | Сообщение # 52
Новенький
Группа: Пользователи
Сообщений: 18
Награды: 0
Город: Минск
Репутация: 0
Замечания: 0%
Статус:
Quote (Eakwarp)
Садись, двойка. Учимся использовать TAB.
Ну и причем здесь оптимизация? Хотя за лесенки - молодец. Но к оптимизации это вообще не относится.

Я знаю про офтоп но просто я новечкам облехчил жизнь!
я просто сам раньше писал
{
//блаблабла
}
//блаблабла
}
изза этого основные проблемы с компиляцией у новичков тоесть скобки, ";".А ТАКЖЕ ЗАГЛАВНЫЕ БУКВЫ!!!:)... думаю меня никто не заглушит за то что я помог новичкам... подумаеш 1 раз офтопнул...

Добавлено (10.06.2011, 14:04)
---------------------------------------------
А вот по поводу оптимизации кода кстате !!!! новечки никогда не ставьте 100500 секундных таймеров!я знаю так с кодом легче разбиратся но можно обходится и 1 таймером и не запутатся с кодом(смотрим пост выше).Я знаю многие используют дофига таймеров для античитов
ну например
AntiAway
AntiWeapon
AtiHealth
Вот нафига это всё когда можно сделать 1?
OneSecondTimer()!
у мну в моде было около 10 таймеров я превратил все в 1 :D секугдный просто где надо счёт больше секунды я делал так
couter111[чётотам(если надо масив:)]++;


Я на Virtual City ! IP:93.84.114.180 Port:7777 (The best RP mode)!
GoshikДата: Пятница, 10.06.2011, 14:19 | Сообщение # 53
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
лучше сделать таймеры к примеру 990 ; 1000 ; 1010 мсек, а не в один совать все... да и вообще не советую таймеры запускать из OnGameModeInit, у меня они вставали... делаю так
public lol()
{
SetTimer("lol", 1000, 0);
// code....
}

Jumpman23Дата: Пятница, 10.06.2011, 14:37 | Сообщение # 54
Группа: I'm V.I.P.
Сообщений: 1359
Награды: 23
Город: Kingston, Rastapolis
Репутация: 504
Замечания: 100%
Статус:
Quote (Goshik)
лучше сделать таймеры к примеру 990 ; 1000 ; 1010 мсек, а не в один совать все... да и вообще не советую таймеры запускать из OnGameModeInit, у меня они вставали... делаю так
public lol()
{
SetTimer("lol", 1000, 0);
// code....
}


ладно, функция есть, но откуда ты её вызывать будешь?



Тсссс, тссс, отключите снисходительный тон. Помните: вас уже лишали права слова на этом форуме.
Прошу прощения у всех кого я заебал или оскорбил (Кроме икварпа и чеза - вы ибланы).
Великс ты красава.
GoshikДата: Пятница, 10.06.2011, 14:38 | Сообщение # 55
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
Jericho, Где хочешь, main ; OnGameModeInit
EakwarpДата: Пятница, 10.06.2011, 17:11 | Сообщение # 56
Мастер джэдай
Группа: Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус:
Quote (Goshik)
лучше сделать таймеры к примеру 990 ; 1000 ; 1010 мсек, а не в один совать все... да и вообще не советую таймеры запускать из OnGameModeInit, у меня они вставали... делаю так public lol() { SetTimer("lol", 1000, 0); // code.... }

чушь.



More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.


Valakas Roleplay on Twitter

Платные консультации, разработка, в ICQ. Дорого.
GoshikДата: Пятница, 10.06.2011, 18:05 | Сообщение # 57
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
Eakwarp, при онлайне 0-100 и без лагов может и чушь
EakwarpДата: Пятница, 10.06.2011, 19:08 | Сообщение # 58
Мастер джэдай
Группа: Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус:
Quote (Goshik)
Eakwarp, при онлайне 0-100 и без лагов может и чушь

Вы вообще сами прочитали, что за херню вы написали и что это значит? Видимо нет.

Рисую, для вас.

3 таймера, одна временная прямая, за нормальную прямую возьмем средний, секундный таймер.
10 секундный отрезок.
990 1980 2970 3960 4950 5940 6930 7920 8910 9900 - за 10 секунд отстал на 100 мсек.
1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
1010 2020 3030 4040 5050 6060 7070 8080 9090 10100 - за 10 секунд убежал вперед на 100 мсек.

Не сложно подсчитать, что каждый час один таймер будет отставать почти на минуту, а второй убегать на минуту.

Оптимизация? В каком месте?

Как итог, вы идиот.

И да, я вам рекомендую ознакомится с асм, и прерываниями.



More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.


Valakas Roleplay on Twitter

Платные консультации, разработка, в ICQ. Дорого.
GoshikДата: Пятница, 10.06.2011, 20:00 | Сообщение # 59
Уверенный в себе
Группа: Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус:
Eakwarp, тебе что, так важно чтобы таймер шел именно каждую секунду? Мне лично нет, я ставлю приблизительно на 1 сек (античиты, разные проверки и т.д.), а если хочешь точности юзай y timers, хотя они тоже бывает встают...
я веду к тому, что лучше создать несколько таймеров в разное время, чем лепить все в один паблик под один таймер
Кстати если ты даже поставишь на 1000 мсек, он не будет выполняться ТОЧНО раз в 1 секунду, он будет выполняться с запозданием

Jumpman23Дата: Пятница, 10.06.2011, 20:03 | Сообщение # 60
Группа: I'm V.I.P.
Сообщений: 1359
Награды: 23
Город: Kingston, Rastapolis
Репутация: 504
Замечания: 100%
Статус:
Quote (Goshik)
Где хочешь, main ; OnGameModeInit

Quote (Goshik)
не советую таймеры запускать из OnGameModeInit


lolwut?



Тсссс, тссс, отключите снисходительный тон. Помните: вас уже лишали права слова на этом форуме.
Прошу прощения у всех кого я заебал или оскорбил (Кроме икварпа и чеза - вы ибланы).
Великс ты красава.
  • Страница 4 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua