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

 



 
          





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





Последние Файлы 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
Модератор форума: Alcoholik  
Работа Дальнобойщиком [manual]
FiLEДата: Воскресенье, 12.09.2010, 00:43 | Сообщение # 31
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Как и обещал - делаем для Дальнобойщиков систему опыта (skill)

1. Ищем enum pInfo и в самый конец добавляем pDalSkill,



2. Ищем public OnPlayerConnect

В нем находим пачку. Я показал фрагмент...

Code

  PlayerInfo[playerid][pMiserPerk] = 0;
  PlayerInfo[playerid][pPainPerk] = 0;
  PlayerInfo[playerid][pTraderPerk] = 0;
  PlayerInfo[playerid][pTut] = 0;
  PlayerInfo[playerid][pMissionNr] = 0;
  PlayerInfo[playerid][pWarns] = 0;
  PlayerInfo[playerid][pFuel] = 0;
  PlayerInfo[playerid][pAdjustable] = 0;
  PlayerInfo[playerid][pFstyle] = 0;

И в конец этой пачки инфошек добавляем еще одну PlayerInfo[playerid][pDalSkill] = 0;



3. Ищем public OnPlayerRegister и по подобию добавляем строчку в конец
Code

format(var, 32, "DalSkill=%d\n",PlayerInfo[playerid][pDalSkill]);fwrite(hFile, var);



4. В public OnPlayerUpdate или OnPlayerUpdate_GF аналогично в конец
Code

format(var, 32, "DalSkill=%d\n",PlayerInfo[playerid][pDalSkill]);fwrite(hFile, var);



5. Тоже самое в public OnPlayerLogin
Code

if( strcmp( key , "DalSkill" , true ) == 0 ) { val = ini_GetValue( Data ); PlayerInfo[playerid][pDalSkill] = strval( val ); }



6. Ищем команду if(strcmp(cmd,"/skill",true)==0)

Там редактируем табличку СкиллИнфо, а также добавляем

Code

    else if(strcmp(x_nr,"11",true) == 0)//Trucker
    {
        new level = PlayerInfo[playerid][pDalSkill];
     if(level >= 0 && level <= 15000) { SendClientMessage(playerid, COLOR_YELLOW, "Вы не опытный Дальнобойщик. Уровень 1"); format(string, sizeof(string), "Вам нужно еще продать %d литров для бензокалонок.", 15000 - level); SendClientMessage(playerid, COLOR_YELLOW, string); }
     else if(level >= 15001 && level <= 30000) { SendClientMessage(playerid, COLOR_YELLOW, "Вы Дальнобойщик среднего класса. Уровень 2"); format(string, sizeof(string), "Вам нужно еще продать %d литров для бензокалонок.", 30000 - level); SendClientMessage(playerid, COLOR_YELLOW, string); }
     else if(level >= 30001 && level <= 50000) { SendClientMessage(playerid, COLOR_YELLOW, "Вы довольно опытный Дальнобойщик. Уровень 3"); format(string, sizeof(string), "Вам нужно еще продать %d литров для бензокалонок.", 50000 - level); SendClientMessage(playerid, COLOR_YELLOW, string); }
     else if(level >= 50001 && level <= 70000) { SendClientMessage(playerid, COLOR_YELLOW, "Вы Дальнобойщик высшего класса. Уровень 4"); format(string, sizeof(string), "Вам нужно еще продать %d литров для бензокалонок.", 70000 - level); SendClientMessage(playerid, COLOR_YELLOW, string); }
     else if(level >= 100000) { SendClientMessage(playerid, COLOR_YELLOW, "Вы Дальнобойщик - повелитель дорог. Уровень 5"); }
    }

где: 11 - ид скила профессии дальнобоя


7. Находим new sellmoney = petrollitres * 30;
Заменяем на
Code

          new points;
            new level = PlayerInfo[playerid][pDalSkill];
      if(level >= 0 && level <= 15000)
      { points = 2; }
      else if(level >= 15001 && level <= 30000)
      { points = 3; }
      else if(level >= 30001 && level <= 50000)
      { points = 4; }
      else if(level >= 50001 && level <= 70000)
      { points = 5; }
      else if(level >= 100000)
      { points = 6; }
      PlayerInfo[playerid][pDalSkill] +=petrollitres;
      if(PlayerInfo[playerid][pDalSkill] == 15001)
      { SendClientMessage(playerid, COLOR_YELLOW, "* Уровень Дальнобойщика - теперь 2."); }
      else if(PlayerInfo[playerid][pDalSkill] == 30001)
      { SendClientMessage(playerid, COLOR_YELLOW, "* Уровень Дальнобойщика - теперь 3."); }
      else if(PlayerInfo[playerid][pDalSkill] == 50001)
      { SendClientMessage(playerid, COLOR_YELLOW, "* Уровень Дальнобойщика - теперь 4."); }
      else if(PlayerInfo[playerid][pDalSkill] == 100000)
      { SendClientMessage(playerid, COLOR_YELLOW, "* Уровень Дальнобойщика - теперь 5."); }

Тут вы можете отредактировать цену на скилл


8. Если хотите, чтобы после увольнения с дальнобоев у юзера отнимался опыт, то ищем if(strcmp(cmd, "/quitjob", true) == 0)
и перед PlayerInfo[playerid][pJob] = 0; вставляем:
Code

       if(PlayerInfo[playerid][pJob] == 16)
       {
             new level = PlayerInfo[playerid][pDalSkill];
       if(level >= 15001 && level <= 30000)
       {
       PlayerInfo[playerid][pDalSkill] -= 5000;
       }
       else if(level >= 30001 && level <= 50000)
       {
       PlayerInfo[playerid][pDalSkill] -= 5000;
       }
       else if(level >= 50001 && level <= 70000)
       {
       PlayerInfo[playerid][pDalSkill] -= 5000;
       }
       else if(level >= 100000)
       {
       PlayerInfo[playerid][pDalSkill] -= 5000;
       }
       SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Вы потеряли немного опыта Дальнобойщика.");
       }

где 16 - ид проф дальнобоя

Система считает скилл не по кол-ву заправок, а по кол-ву заправленных литров.
Вся система настраивается легко...



FiLEДата: Воскресенье, 12.09.2010, 00:46 | Сообщение # 32
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Чтобы при команде /help были видны команды профессии то:
Ищем if(strcmp(cmd, "/help", true) == 0)
И добавляем, где 16 - ид профессии дальнобоя
Code

        else if(PlayerInfo[playerid][pJob] == 16) {
        SendClientMessage(playerid,COLOR_YELLOW,"*** Работа Дальнобойщика *** /getpetrol /givepetrol /filltrailer"); }

Кто поставит - обязательно протестируйте и напишите комент, мол все ок или не ок т.к. скилы сильно не тестировал после написания кода.





Сообщение отредактировал FiLE95 - Воскресенье, 12.09.2010, 23:09
DiSEДата: Понедельник, 13.09.2010, 07:27 | Сообщение # 33
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Сейчас поставлю и протестирую. Спасибо
DiSEДата: Понедельник, 13.09.2010, 08:07 | Сообщение # 34
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Ты хоть попробовал компилить? :D
Code
Находим new sellmoney = petrollitres * 30;  
Заменяем на

Как бы ты ниже код прочитай

if(SBizzInfo[3][sbTill] < sellmoney)
SBizzInfo[3][sbTill] -= sellmoney;
GivePlayerMoney(playerid, sellmoney);

Может быть надо sellmoney поменять на level ?

FiLEДата: Понедельник, 13.09.2010, 15:54 | Сообщение # 35
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Упс, забыл... у меня немного код был разбросан...

Значит, в пункте 7 в конец кода еще добавляем строчку new sellmoney = petrollitres * points;



toneysixДата: Понедельник, 13.09.2010, 23:49 | Сообщение # 36
Джэдай
Группа: I'm V.I.P.
Сообщений: 1731
Награды: 77
Город: Салават
Репутация: 1825
Замечания: 0%
Статус:
Вы уж извините меня ребяточки мои дорогие, но я всё равно не понимаю толк этих мануалов. Суммарно они ничего нового не добавляют, просто скопированные системы переделанные под свою нужду. Почему ни у кого не появляются идеи сделать нечто новое, например шипы для полиции? Ведь SA-MP 0.3b позволяет сделать это на хорошем уровне! А пока не вижу энтузиазма. Всё эти переделанные систем просто хлам, игрокам уже давно всё это осточертело, поверьте мне. Шипами хочу заняться завтра, а пока вы тупо переделываете в хлам надоедливые системы x)


Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
FiLEДата: Вторник, 14.09.2010, 00:06 | Сообщение # 37
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Quote (toneysix)
Вы уж извините меня ребяточки мои дорогие, но я всё равно не понимаю толк этих мануалов. Суммарно они ничего нового не добавляют, просто скопированные системы переделанные под свою нужду. Почему ни у кого не появляются идеи сделать нечто новое, например шипы для полиции? Ведь SA-MP 0.3b позволяет сделать это на хорошем уровне! А пока не вижу энтузиазма. Всё эти переделанные систем просто хлам, игрокам уже давно всё это осточертело, поверьте мне. Шипами хочу заняться завтра, а пока вы тупо переделываете в хлам надоедливые системы x)

В чистом GF этой профессии нету. На форуме никто не решался выложить более-менее норм реализацию.
И где тут написано что модификация скопирована?

З.Ы. В данной теме идет обсуждение профессии дальнобойщика, а не шипов для ментов.



toneysixДата: Вторник, 14.09.2010, 00:11 | Сообщение # 38
Джэдай
Группа: I'm V.I.P.
Сообщений: 1731
Награды: 77
Город: Салават
Репутация: 1825
Замечания: 0%
Статус:
Шипы никто не обсуждал, посмотри внимательнее на пост, на что он указан. Эта профа есть уже в миллионах модах, лишь переделать я об этом. Т.е фактически всё уже надоело, я не видел ни одного сервера, где бы этои профы не было. Поэтому те, кто идут за ними, обычно проигрывают, нужно пытаться делать уникальные вещи, а не те, что изобрели уже 10 лет назад....


Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
FiLEДата: Вторник, 14.09.2010, 00:14 | Сообщение # 39
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Если ты опираешся на первый пост этой темы то ты прав, но если посмотреть внимательно на 13-й, то я бы не сказал, что данная реализация уж на всех серверах 10 лет стоит...



JefferYДата: Четверг, 16.09.2010, 00:42 | Сообщение # 40
Новенький
Группа: Пользователи
Сообщений: 58
Награды: 0
Город: DUST
Репутация: 1
Замечания: 0%
Статус:
FiLE95, посностью идею скрипта непонял.... но мне ненравится. т.к. для чего тогда в гф бизнесы и кто им будет постовлять товары пока долнабойщики возят бензин на какой то левый склад?
Dimaxa_DemonДата: Четверг, 16.09.2010, 01:53 | Сообщение # 41
Освоившийся
Группа: Продвинутые
Сообщений: 134
Награды: 7
Город: Киев
Репутация: 109
Замечания: 0%
Статус:
JefferY, Идея в том что бы настроит работу дальнобойщика и приблизить ее как можно ближе к реальности..


Помогаю по Pawn|C++|PHP|Java|HTML|CSS
email - dm.savchik@ya.ru
-------
FiLEДата: Четверг, 16.09.2010, 18:10 | Сообщение # 42
Группа: Разработчики
Сообщений: 681
Награды: 70
Город: Одесса
Замечания: 0%
Статус:
Quote (JefferY)
FiLE95, посностью идею скрипта непонял.... но мне ненравится. т.к. для чего тогда в гф бизнесы и кто им будет постовлять товары пока долнабойщики возят бензин на какой то левый склад?

Да, ты не понял идею модификации. И не читаешь предыдущие сообщения в теме, их тут и не так и много.
Повторюсь вновь (идея мода №2 пост 13): идея заключается в том, чтобы дальнобойщики развозили бензин по заправкам с завода.
В заправках соответственно бензин будет заканчиваться если в них заправляться (в каждой заправке отдельно).
Бизнесы в ГФ - это другая история, которая не касается сюда вообще.
Цель была - дать работу дальнобойщикам.



3oxaHДата: Понедельник, 20.09.2010, 04:36 | Сообщение # 43
Новенький
Группа: Пользователи
Сообщений: 14
Награды: 0
Город: Riga
Репутация: -21
Замечания: 20%
Статус:
У меня такая проблемка, я ищу Находим new sellmoney = petrollitres * 30; но у меня в моде такого нету в чём дело?? мод ГодФазер.


Проект: [RP]GameSx
Мод Готов на: 74% [STOP]
Site: GameSx.forumei.ru
sk47Дата: Понедельник, 20.09.2010, 12:35 | Сообщение # 44
Освоившийся
Группа: Пользователи
Сообщений: 86
Награды: 2
Город: Магнитогорск
Репутация: 9
Замечания: 0%
Статус:
toneysix шипы у меня есть в моде на 0.3a
CupuKДата: Понедельник, 20.09.2010, 13:35 | Сообщение # 45
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Город: Рига
Репутация: -46
Замечания: 40%
Статус:
Quote (Dimaxa_Demon)
Идея в том что бы настроит работу дальнобойщика и приблизить ее как можно ближе к реальности..

Соглашусь с тобой!

Поиск:





 


 


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