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

 



 
        
[CLEO] HUDFIX (0)
MyxaChannel 30.11.2016 18:03
GM Car для SAMP (1)
MyxaChannel 30.11.2016 18:00
 





Рекомендуем:
Добавить IP: 88.212.220.148:22003





Последние Файлы 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
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
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 73 из 151«127172737475150151»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Вопросы и ответы по GTA SAMP [от 19.03.2013]
WeddewДата: Вторник, 19.03.2013, 15:11 | Сообщение # 1
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.


Новичкам:


  • Внятно объясняйте Вашу проблему, если Вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
  • Задавайте вопросы исключительно по коду, а не по системам, которые имеются у Вас в моде.
  • Помощь идет только по желанию пользователя, если человек помог Вам только частично, не нужно начинать поливать его грязью.
  • Возможно тип Вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
  • В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за Вас.
  • Если Вы хотите отблагодарить пользователя, жмите на кнопку . (Только для продвинутых, и выше)
  • Если Вы уже задавали вопрос и не получили на него ответа, то лучше написать в ЛС одному из участников группы , чем засорять тему.
  • Если Вы сами решили свою проблему, то напишите, как Вы ее решили.
  • Если Вас просят выложить код функций, то используйте для этого сервис pastebin.com


Скриптерам:

  • Не оскорблять новичков.
  • Не засорять тему сообщениями, подобные этому: "Закрой PAWNO и иди делай уроки".
  • Не посылать в поиск. Пользователь итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
  • Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.



Инструкции:

  • [cut noguest=Краткая инструкция для вшивания FS в мод]
    1) Все из callback OnFilterScriptInit вставляем в конец callback OnGameModeInit перед словом return.
    2) Все из callback OnFilterScriptExit вставляем в конец callback OnGameModeExit перед словом return.
    3) Все объявления переменных (new ...) и констант (const ...; #define ... ...) в начало мода.
    4) Все прототипы (forward ...(...) ) ко всем прототипам.
    5) Все описания нестандартных функций (public ...(...); stock ...(...); ...(...){...} ), которых нет в моде, вставляем в конец мода.

    P.S. Данный мануал не гарантирует, что после копирования все будет работать, так как еще потребуется подгонять одни системы под другие.
    P.P.S Если в одном из callback`ов Вы не обнаружили кода, то переходите к следующему пункту инструкции.
    [/cut]
  • [cut noguest=Защита от ботов]
    В OnPlayerConnect
    [pwn]if(GetPlayersSameIp(playerid) > 3) Kick(playerid);[/pwn]
    В конец мода
    [pwn]stock GetPlayersSameIp(playerid)
    {//by Weddew
    //Возвращает количество подключенных игроков с таким же IP как у playerid
    new count = 0, p_ip[16], i_ip[16];
    GetPlayerIp(playerid, p_ip, sizeof(p_ip));
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    GetPlayerIp(playerid, i_ip, sizeof(i_ip));
    if(i != playerid)
    {
    if(!strcmp(p_ip, i_ip, false)) count++;
    }
    }
    return count;
    }[/pwn]
    [/cut]
  • [cut noguest=Проверка на Role Play ник]
    В конец мода:
    [pwn]
    stock IsARPNickname(playerid)
    {
    //by Weddew
    new p_n[MAX_PLAYER_NAME], dcount = 0;
    GetPlayerName(playerid, p_n, sizeof(p_n))
    for(i = 0; i < strlen(p_n); i++)
    {
    if(p_n[i] == '_') dcount++;
    }
    if(dcount != 1 || p_n[0] == '_' || p_n[strlen(p_n)-1] == '_') return false;
    return true;
    }[/pwn]

    В OnPlayerConnect

    [pwn]
    if(!IsARPNickname(playerid)) Kick(playerid);[/pwn]

    P.S.:
    Не пропустит: _Nick_Name_, _Nick_Name, NickName_
    Пропустит: Nick_Name, NICK_NAME, NiCk_name, nick_name[/cut]




www.weddew-shop.ru


Сообщение отредактировал Weddew - Среда, 23.10.2013, 21:45
GeryyДата: Четверг, 27.06.2013, 02:40 | Сообщение # 1081
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (Awm)
не понятно вообще в чем дело

Можно попробовать в инклюде native ApplyAnimation выставить значение forcesync = 1
Во многих модах в OnPlayerConnect прописывают ClearAnimations(playerid);
Также используют в OnPlayerSpawn PreloadAnimLib(playerid, "PED");

Код
stock PreloadAnimLib(playerid, animlib[])
     ApplyAnimation(playerid,animlib,"null",0.0,0,0,0,0,0);



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Четверг, 27.06.2013, 03:49
AwmДата: Четверг, 27.06.2013, 11:56 | Сообщение # 1082
Группа: I'm V.I.P.
Сообщений: 3236
Награды: 55
Город: Tallinn
Репутация: 1661
Замечания: 0%
Статус:
Цитата (Geryy)
Также используют в OnPlayerSpawn PreloadAnimLib(playerid, "PED");

именно вот это помогло, теперь срабатывает сразу, спасибо.




"Life is hard... life is harder if you're stupid." - John Wayne
SaibotДата: Четверг, 27.06.2013, 20:20 | Сообщение # 1083
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Я вот хотел зделать так чтобы на роботу не могли устроится гражданскии, но вот неполучается.
Вот пример:
[pwn]if(pickupid == JobNarkodiler) //<< что сюда добавить чтоб не могли гражанскии устроится?
{
if(IsACop(playerid) || IsAOrganizaziya(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Вы не можете работать на этой работе");
return 1;
}
if(PlayerInfo[playerid][pJob] == 0)
{
ShowPlayerDialog(playerid,10002, DIALOG_STYLE_MSGBOX,"{FFFFFF}AndroiD-ServeR","{FFFFFF}Устроиться на роботу?","Да","Нет");
return 1;
}
if(PlayerInfo[playerid][pJob] >= 1)
{
ShowPlayerDialog(playerid,10001, DIALOG_STYLE_MSGBOX,"{FFFFFF}AndroiD-ServeR","{FFFFFF}Желаешь уволиться?","Да","Нет");
return 1;
}
}[/pwn]

WeddewДата: Четверг, 27.06.2013, 21:58 | Сообщение # 1084
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Saibot,
[pwn]if(PlayerInfo[playerid][pMember] > 0 || PlayerInfo[playerid][pLeader] > 0)
{
SendClientMessage(playerid, COLOR_GRAD2, "Вы не можете работать на этой работе");
return 1;
}[/pwn]




www.weddew-shop.ru
SaibotДата: Четверг, 27.06.2013, 23:22 | Сообщение # 1085
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Weddew,
Я так уже пробывал всё равно Гражданский может устроится на роботу.
[pwn]if(PlayerInfo[playerid][pMember] > 0 || PlayerInfo[playerid][pLeader] > 0)
if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0)
if(PlayerInfo[playerid][pMember] < 0 || PlayerInfo[playerid][pLeader] < 0)[/pwn]

Добавлено (27.06.2013, 23:22)
---------------------------------------------
Вот если вот так
[pwn]if(PlayerInfo[playerid][pMember] == 0 || PlayerInfo[playerid][pLeader] == 0)[/pwn]
То Гражданский не может устроиться но и Банды/Мафии не могут устроится.

BorogДата: Четверг, 27.06.2013, 23:27 | Сообщение # 1086
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус:
Saibot, ставь так:
[pwn]if(PlayerInfo[playerid][pMember] == 0 && PlayerInfo[playerid][pLeader] == 0)
/*В этом случае гражданские не смогут устроиться*/[/pwn]



Silver Break
http://s-break.ru/
http://vk.com/sbreak
WeddewДата: Пятница, 28.06.2013, 03:00 | Сообщение # 1087
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Saibot, если нужно запретить гражданским устраиваться на работу, то надо сделать следующее:
[pwn]if(!PlayerInfo[playerid][pMember] && !PlayerInfo[playerid][pLeader])
{
SendClientMessage(playerid, COLOR_GRAD2, "Вы не можете работать на этой работе");
return 1;
}[/pwn]
если нужно запретить гражданским, но разрешить бандитам и мафиям устраиваться на работу, то надо сделать следующее:
[pwn]if(!IsAGang(playerid) || !IsAMafia(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Вы не можете работать на этой работе");
return 1;
}[/pwn]




www.weddew-shop.ru


Сообщение отредактировал Weddew - Пятница, 28.06.2013, 03:38
SaibotДата: Пятница, 28.06.2013, 09:34 | Сообщение # 1088
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Weddew, Спасибо!!
SAMP---RUSДата: Пятница, 28.06.2013, 11:48 | Сообщение # 1089
Новенький
Группа: Пользователи
Сообщений: 29
Награды: 0
Город: stavropol
Репутация: -16
Замечания: 0%
Статус:
error 002
Код
                case 4: // äëÿ ïîêóïêè ëèöåíçèé
           {
                      if(bank[playerid]>=15000)
       {
       WeapLic[playerid]=1;
             WeapSrok[playerid]=WEAPSR;
             DriveSrok[playerid]=DRVSR;
                bank[playerid]-=3000;
             SendClientMessage(playerid,COLOR_LIGHTBLUE,"Òû êóïèë ëèöåíçèþ íà îðóæèÿ è âîäèòåëüñêèå ïðàâà!");
                 }
                   }
                      else
                   {
                   SendClientMessage(playerid,COLOR_LIGHTBLUE,"Ó òåáÿ ìàëî äåíåã, íóæíî 15 000$!");
                }
            }
        }

GeryyДата: Пятница, 28.06.2013, 14:09 | Сообщение # 1090
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (SAMP---RUS)
error 002

Путаница с фигурными скобками:

[pwn]
case 4:
{
if(bank[playerid] >= 15000)
{
WeapLic[playerid]=1;
WeapSrok[playerid]=WEAPSR;
DriveSrok[playerid]=DRVSR;
bank[playerid]-=3000;
SendClientMessage(playerid,COLOR_LIGHTBLUE,"O`u^ e^o'i"e`e" e"e`o"a*i'c,e`? i'a` i^?o'?e`y" e` a^i^a"e`o`a*e"u"n~e^e`a* i"?a`a^a`!");
}
else
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,"O' o`a*a'y" i`a`e"i^ a"a*i'a*a~, i'o'?i'i^ 15 000$!");
}
}
[/pwn]



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.

Сообщение отредактировал Geryy - Пятница, 28.06.2013, 14:09
SAMP---RUSДата: Суббота, 29.06.2013, 16:55 | Сообщение # 1091
Новенький
Группа: Пользователи
Сообщений: 29
Награды: 0
Город: stavropol
Репутация: -16
Замечания: 0%
Статус:
Помогите реализовать смену ника в игре
Делал смену ника, но ничего не вышло
Делал по
Код
    if(strcmp(cmd, "/newname", true) == 0 && ((tmpAdmin[playerid]==1&&admin[playerid]==1)||IsPlayerAdmin(playerid)))
  {
    new tmp[255];
    new nametest[255];
    tmp = strtok(cmdtext, idx);
    nametest = strtok(cmdtext, idx);
    if(strlen(tmp)&&IsPlayerNPC(strval(tmp))) return 1;
    if(!strlen(tmp))
    {
     SendClientMessage(playerid,COLOR_WHITE," Íå ââåë ÈÄ. Èñïîëüçîâàíèå: /newname [id] [èìÿ]");
     return 1;
    }
    if(!IsPlayerConnected(strval(tmp)))
    {
     SendClientMessage(playerid,COLOR_WHITE," Íå âåðíûé ÈÄ. Èñïîëüçîâàíèå: /newname [id] [èìÿ]");
     return 1;
    }
    if(!strlen(nametest))
    {
     SendClientMessage(playerid,COLOR_WHITE," Íå ââåë èìÿ. Èñïîëüçîâàíèå: /newname [id] [èìÿ]");
     return 1;
          }
          SetPlayerName(strval(tmp),nametest);
          return 1;
  }

Вышло вот что
Код

if(dialogid==2013)//Äèàëîã ñìåíû íèêà
      {
   if(response)
   {
             new playername;
    new string[256];
    new tmp[255];
    new nametest[255];
          SetPlayerName(strval(tmp),nametest);
             format(string, sizeof(string), "[%s Ñìåíèë íèê íà %s]", playername, tmp);
          return 1;
     }
    }
   }

BorogДата: Суббота, 29.06.2013, 17:19 | Сообщение # 1092
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус:
SAMP---RUS,
Код

if(dialogid==2013)//Äèàëîã ñìåíû íèêà
       {
    if(response)
    {
new string[128];
  new playername[MAX_PLAYER_NAME];
  GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
           SetPlayerName(playerid,inputtext);
              format(string, sizeof(string), "[%s Ñìåíèë íèê íà %s]", playername, inputtext);
SendClientMessageToAll(COLOR_WHITE, string);
           return 1;
      }
     }
    }



Silver Break
http://s-break.ru/
http://vk.com/sbreak
SAMP---RUSДата: Суббота, 29.06.2013, 18:22 | Сообщение # 1093
Новенький
Группа: Пользователи
Сообщений: 29
Награды: 0
Город: stavropol
Репутация: -16
Замечания: 0%
Статус:
не работает wall
forst5Дата: Суббота, 29.06.2013, 20:06 | Сообщение # 1094
Новенький
Группа: Пользователи
Сообщений: 48
Награды: 0
Город: NSK
Репутация: -10
Замечания: 0%
Статус:
Вот код для выдачи оружия для ПД, как сделать чтобы какое-то определённое оружие выдавалось только для определённого ранга? К примеру подбегает с 5-6 ранг и только ему добавляется Ак47 к примеру...

Код
    else if(pickupid == fracgunpic[2])
  {
   if(FormaFrac[playerid] == 10)
   {
    if(PlayerInfo[playerid][pGunLspdTime] > 0) return SendClientMessage(playerid, COLOR_GREY, "Брать оружие можно раз в 5 минут");
    if(sfpdmats <= 0) return SendClientMessage(playerid, COLOR_GREY, "На складе нет материалов!");
    {
     GiveWeapon(playerid, 3, 1);
     GiveWeapon(playerid, 24, 21);
     GiveWeapon(playerid, 25, 20);
     SetPlayerArmourAC(playerid, 100);
     SetPlayerHealthAC(playerid, 100);
     PlayerInfo[playerid][pHP] = 100;
     sfpdmats -= 200;
     PlayerInfo[playerid][pGunLspdTime] = 300;
     SendClientMessage(playerid, TEAM_GROVE_COLOR, "Выдано: Броня, Дубинка, Shotgun(20 патронов), Desert Eagle(3 обоймы)");
    }
   }
   else SendClientMessage(playerid, COLOR_GREY, "Вы не cостоите в SFPD");
  }

DemonoloGДата: Суббота, 29.06.2013, 20:28 | Сообщение # 1095
Постоялец
Группа: Продвинутые
Сообщений: 313
Награды: 2
Репутация: 178
Замечания: 0%
Статус:
forst5, добавь проверку на ранг где-то тут:
[pwn]{
GiveWeapon(playerid, 3, 1);
GiveWeapon(playerid, 24, 21);
GiveWeapon(playerid, 25, 20);
SetPlayerArmourAC(playerid, 100);
SetPlayerHealthAC(playerid, 100);
PlayerInfo[playerid][pHP] = 100;
If(PlayerInfo[playerid][pRank] >=6
{
GiveWeapon(playerid, оружие, патроны)
}
sfpdmats -= 200;
PlayerInfo[playerid][pGunLspdTime] = 300;
SendClientMessage(playerid, TEAM_GROVE_COLOR, "Выдано: Броня, Дубинка, Shotgun(20 патронов), Desert Eagle(3 обоймы)");
} [/pwn]
P.S.: давно не занимался скриптингом, возможны косяки в проверке, знающие люди проверьте лучше)

Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Страница 73 из 151«127172737475150151»
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM