[Мануал] Сис-ма прихода повестки в военкомат - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
[Мануал] Сис-ма прихода повестки в военкомат
Sprunk Дата: Четверг, 14.08.2014, 06:23 | Сообщение # 1
Боец
Сообщений: 237
Статус: Offline
Здравствуйте, обитатели CM, сейчас я покажу как сделать приход повестки, система простенькая, строго не судите!
Всех супер-мега крутых скриптёров прошу не показывать сдесь своё "Я"!

Итак, приступим:


В паблик PayDay, после слов "Ваш уровень повысился"(надеюсь, поняли, что ниже)

Код
if(PlayerInfo[i][pLevel] >= 2 && PlayerInfo[i][pExp] == 1)
       {
                SendClientMessage(i, COLOR_YELLOW, "{EE0000}Вам пришла повестка в военкомат!{FFFFFF}\n{87CEEB}Наберите /ph для прочтения{FFFFFF}");
       }  

Ну а теперь добавим команды:

Код
if(strcmp(cmd, "/ph", true) == 0)
      {
          if(IsPlayerConnected(playerid))
          {
              if(PlayerInfo[playerid][pLevel] != 2)
              {
                  if(!IsPlayerConnected(playerid)) return 1;
                  if(PlayerInfo[playerid][pLevel] > 1)
                  ShowPlayerDialog(playerid,9782,DIALOG_STYLE_MSGBOX," ","{0095b6}Повестка\n\n{cd7f32}1.{F2EEF0}Вы обязаны явиться в военкомат(когда будет призыв!)\n{c0c0c0}2.При себе иметь: {F2EEF0}Пасспорт, повестку, лицензию на оружие и желание служить!\n{ffd700}3.Удачной службы в армии, сынок!\n\n{EE0000}P.S: показать повестку /povestka{FFFFFF}","Готово", "");
              }
          }
      }  

И вторая команда, для того чтобы показать повестку:

Код
if(strcmp(cmd,"/povestka",true)==0){
          new sendername[MAX_PLAYER_NAME];
          GetPlayerName(playerid, sendername, sizeof(sendername));
          new numberof,lic1[25],name[MAX_PLAYER_NAME],string [ 256 ];
          GetPlayerName(playerid, name, sizeof(name));
          tmp = strtok(cmdtext, idx);
          if(!strlen(tmp)) return SCM(playerid, -1, " Используй: /povestka [id]");
          numberof = ReturnUser(tmp);
          if(IsPlayerConnected(numberof)){
                     if(PlayerInfo[playerid][pLevel] != 2)
              if(numberof != INVALID_PLAYER_ID){
                  if (ProxDetectorS(8.0, playerid, numberof)){
                     if(PlayerInfo[playerid][pLicGun] == 1) { lic1 = "Есть"; }
                      else { lic1 = "Нет"; }
                      format(string, sizeof(string), "%s показал повестку", sendername);
                      ProxDetector(10.0, playerid, string, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF);
                      format(string, sizeof(string), "{ffff00}Полное имя: {00FFFF}%s{FFFFFF}",name);
                      SCM(numberof, -1, string);
                      format(string, sizeof(string), "Готов ли служить:{34c924} Готов!");
                      SCM(numberof, -1, string);
                      format(string, sizeof(string), "{ffffff}Лицензия на оружие:{34c924} %s",lic1);
                      SCM(numberof, -1, string);
                      SetPlayerChatBubble(playerid,"показал(a) повестку",COLOR_PURPLE,30.0,10000);}}}return true;}  

Вот и всё, думаю, кому нибудь пригодится.

Автор: Vitalik Vendetta


Сообщение отредактировал Sprunk - Воскресенье, 31.08.2014, 17:36
Carson228 Дата: Четверг, 14.08.2014, 13:05 | Сообщение # 2
Боец
Сообщений: 124
Статус: Offline
Поможешь установить её?Няшкой не обижу :3
Если да - пиши в ЛС


WM:R174565117343
Qiwi:+79279406771
ЯД:410012418509579
VK: http://vk.com/tut_net_nekogo
Skype : iiiiiliiiiiliiiiil
Sprunk Дата: Вторник, 19.08.2014, 15:39 | Сообщение # 3
Боец
Сообщений: 237
Статус: Offline
up! happy
Muravej Дата: Воскресенье, 24.08.2014, 19:34 | Сообщение # 4
Боец
Сообщений: 228
Статус: Offline
Нигде еще такого не встречал, нормально так)

https://www.youtube.com/user/TheWillJeezy/videos - подписывайтесь))
iRoLeX Дата: Вторник, 26.08.2014, 02:40 | Сообщение # 5
Боец
Сообщений: 65
Статус: Offline
Код
if(PlayerInfo[i][pLevel] >= 2 && PlayerInfo[i][pExp] == 1)

2лвл и 1эксп?

Код
if(PlayerInfo[playerid][pLevel] != 2)

т.е я смогу посмотреть повестку до оповещения о её приходе?
Fake{yl] Дата: Среда, 27.08.2014, 17:36 | Сообщение # 6
Боец
Сообщений: 107
Статус: Offline
iRoLeX, диалог показывается уровням выше 1 wacko

Что касается кода...

В месте где повышается Уровень (PlayerInfo[i][pLevel]++ или PlayerInfo[i][pLevel]+=1) добавляем ниже этого повышения
Код
if(PlayerInfo[i][pLevel] == 2)  SendClientMessage(i, COLOR_YELLOW, "{EE0000}Вам пришла повестка в военкомат!{FFFFFF}\n{87CEEB}Наберите /ph для прочтения{FFFFFF}");

Комманды
Код

if(strcmp(cmd, "/ph", true) == 0 && IsPlayerConnected(playerid) && PlayerInfo[playerid][pLevel]>1)    
{    
         ShowPlayerDialog(playerid,9782,DIALOG_STYLE_MSGBOX," ","{0095b6}Повестка\n\n{cd7f32}1.{F2EEF0}Вы обязаны явиться в военкомат(когда будет призыв!)\n{c0c0c0}2.При себе иметь: {F2EEF0}Паспорт, повестку, лицензию на оружие и желание служить!\n{ffd700}3.Удачной службы в армии, сынок!\n\n{EE0000}P.S: показать повестку /povestka{FFFFFF}","Готово", "");    
return true;
}     


Код

if(strcmp(cmd,"/povestka",true)==0)
{
    if(!strlen(strtok(cmdtext, idx))) return SCM(playerid, -1, " Используй: /povestka [id]");    
    new armyman,name[24],str[56];    
    armyman = ReturnUser(strtok(cmdtext, idx));
    GetPlayerName(playerid, name, sizeof(name));
    if(!IsPlayerConnected(armyman) || PlayerInfo[playerid][pLevel]<2 || armyman == INVALID_PLAYER_ID) return true;
    if(!ProxDetectorS(8.0, playerid, armyman)) return true;
    format(str, sizeof(str), "%s показал повестку", sendername);    
    ProxDetector(10.0, playerid, str, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF, 0xDD90FFFF);
    SetPlayerChatBubble(playerid, "показал повестку",COLOR_PURPLE,30.0,10000);
    format(str, sizeof(str), "{ffff00}Полное имя: {00FFFF}%s",name);    
    SCM(armyman, -1, str);    
    SCM(armyman, -1, "Готов ли служить:{34c924} Готов!");
    if(PlayerInfo[playerid][pLicGun] == 1) return SCM(armyman, -1, "{ffffff}Лицензия на оружие:{34c924} Есть");
    SCM(armyman, -1, "{ffffff}Лицензия на оружие:{34c924} Нет");
    return true;
}     


Что сделано? Оптимизирован код, убрано лишнее, переименованы массив string и переменная numberof (Уверен что уже используется :|), убрана грамматическая ошибка в слове "Паспорт" =))

Автор темы, можешь поменять свой код на этот =)


ушел, не вернусь <_<

Сообщение отредактировал Fake{yl] - Среда, 27.08.2014, 17:40
Лунатик Дата: Пятница, 29.08.2014, 15:31 | Сообщение # 7
Новичок
Сообщений: 24
Статус: Offline
Спасибо большое помог продложай в том же духе.
Frapsik Дата: Пятница, 26.09.2014, 18:11 | Сообщение # 8
Боец
Сообщений: 296
Статус: Offline
Молодец)

Цель: Клан CM

Нужна помощь?-Обращайся,помогу чем смогу ;]

Мой WebMoney: R209643271861
[СМ]Boss Дата: Воскресенье, 04.09.2016, 22:46 | Сообщение # 9
Новичок
Сообщений: 22
Статус: Offline
Плюс твой

Blazzer тащит
  • Страница 1 из 1
  • 1
Поиск: