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

 



 
        
Фильм by SAMP-RUS (16)
AlinaKA 12.09.2017 23:51
Физрук (16)
Phyliciavox 08.09.2017 17:49
 





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





Последние Файлы 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
Страница 71 из 152«126970717273151152»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Вопросы и ответы по GTA SAMP [от 19.03.2013]
WeddewДата: Вторник, 19.03.2013, 15:11 | Сообщение # 1
Группа: Ангел Хранитель
Сообщений: 1242
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 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
MerbulДата: Пятница, 21.06.2013, 16:54 | Сообщение # 1051
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Цитата
Saibot

Спасибо помог... А как AFK сделать?

SaibotДата: Пятница, 21.06.2013, 19:09 | Сообщение # 1052
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Цитата (Merbul)
А как AFK сделать?

Вот [FS]

[FS] AFK

MerbulДата: Пятница, 21.06.2013, 20:45 | Сообщение # 1053
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Вот этот цвет ганг зоны не могу сделать... Все изменял ганг зоны в .ini файле в самом моде все также... Даже этоу зону нельзя каптить Как это исправить?
http://image.kz/vf811fe80e2ac84233d79d5f1e28accc7

mecheniy286Дата: Пятница, 21.06.2013, 22:03 | Сообщение # 1054
Новенький
Группа: Пользователи
Сообщений: 5
Награды: 0
Репутация: 0
Замечания: 20%
Статус:
Код

*/   new statline1[550];
   new statline2[600];
   new statline3[300];
   new statline4[300]
   new statline5[300]
   new statline6[400];
   new statfull[2530];
   new stattitle[64];
   format(stattitle,sizeof(stattitle),"{9EC73D}Ñòàòèñòèêà èãðîêà: {EEEEFF}%s",name);
   format(statline1,sizeof(statline1),"Óðîâåíü: %d  \nÏîë: %s  \nÄåíüãè: $%d  \n áàíêå: $%d  \nÍîìåð Òåëåôîíà: %d \nÏðåìèóì àêêàóíò: %s \nÏèâî ñ ñîáîé: %d \n×èïñû ñ ñîáîé: %d",level,atext,cash,account,pnumber,drank,PlayerInfo[playerid][pPivo],PlayerInfo[playerid][pChips]);
   format(statline2,sizeof(statline2),"×àñîâ â èãðå: %d \nÑàìàÿ áîëüøàÿ ðûáà: %d  \nÐàáîòà: %s  \nÐåñïåêòû: %d/%d  \nÍàðêîòèêè: %d \nÌàòåðèàëû: %d \nÊîìàíäà: %s \nÎðãàíèçàöèÿ: %s  \nÐàíã: %s", ptime,bigfish,jtext,exp,expamount,drugs,mats,ttext,ftext,rtext);
   format(statline3,sizeof(statline3),"Òðàíñïîðò ¹1:[%s] \nÖåíà:[%d] \nÖâåò1:[%d] \nÖâåò2:[%d] \nÑòàòóñ çàìêà:[%d]", CarInfo[carkey][cDescription], CarInfo[carkey][cValue], CarInfo[carkey][cColorOne], CarInfo[carkey][cColorTwo], CarInfo[carkey][cLock]);
   format(statline4,sizeof(statline4),"Òðàíñïîðò ¹2:[%s] \nÖåíà:[%d] \nÖâåò1:[%d] \nÖâåò2:[%d] \nÑòàòóñ çàìêà:[%d]", CarInfo[carkey2][cDescription], CarInfo[carkey2][cValue], CarInfo[carkey2][cColorOne], CarInfo[carkey2][cColorTwo], CarInfo[carkey2][cLock]);
   format(statline5,sizeof(statline5),"Òðàíñïîðò ¹3:[%s] \nÖåíà:[%d] \nÖâåò1:[%d] \nÖâåò2:[%d] \nÑòàòóñ çàìêà:[%d]", CarInfo[carkey3][cDescription], CarInfo[carkey3][cValue], CarInfo[carkey3][cColorOne], CarInfo[carkey3][cColorTwo], CarInfo[carkey3][cLock]);
   format(statline6,sizeof(statline6),"(( Äîì [%d] \nÁèçíåñ [%d] \nÀâòî1 [%d] \nÀâòî2 [%d] \nÀâòî3 [%d] \nÀðåíäà [%d] \nÈíò:[%d] \nÂèðò.ìèð:[%d] \nnëîêàë[%d] ))", housekey,bizkey,carkey,carkey2,carkey3,HireCar[targetid],intir,virworld,local);
   format(statfull,sizeof(statfull),"%s\n%s\n%s\n%s\n%s\n%s", statline1, statline2, statline3, statline4, statline5, statline6);
   ShowPlayerDialog(playerid,10014,DIALOG_STYLE_MSGBOX,stattitle,statfull,"ÎÊ","");

Пишет Unknown Command при вводе /stats

Fen1ksДата: Пятница, 21.06.2013, 23:13 | Сообщение # 1055
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Вот решил сделать защиту от FakeKill на основе защиты от спама которую мне написали)
[pwn]public OnPlayerDeath(playerid, killerid, reason)
{
if(!GetPVarInt(playerid, "AntiFakeKill"))
{
SetPVarInt(playerid, "AntiFakeKill", 1);
SetTimerEx("AntiFakeKill", 2000, 0, "d", playerid);
}
else
{
new af_warn = GetPVarInt(playerid, "AntiFakeKillWard");
af_warn++;
if(af_warn > 4)
format(string, sizeof(string), "Игрок %s был кикнут системой (FakeKill). ", PlayerName(playerid));
Kick(playerid);
SetPVarInt(playerid, "AntiFloodWard", af_warn);
}
return true;
}

forward AntiFakeKill(playerid);
public AntiFakeKill(playerid)
{
if(GetPVarInt(playerid, "AntiFakeKill")) SetPVarInt(playerid, "AntiFakeKill", 0);
return true;
}[/pwn]
Остался вопрос полная бредятина или будет работать?
По идее если игрок умирает 4 раза за 2 секунды его кикнет

Добавлено (21.06.2013, 23:13)
---------------------------------------------
Решил сделать вот так:
[pwn]public OnPlayerDeath(playerid, killerid, reason)
{
new string[128];
Scores[killerid]++;
if(Logged[playerid] == 0) Kick(playerid);
if(!GetPVarInt(playerid, "AntiFakeKill"))
{
SetPVarInt(playerid, "AntiFakeKill", 1);
SetTimerEx("AntiFakeKill", 1000, 0, "d", playerid);
}
else
{
new af_warn = GetPVarInt(playerid, "AntiFakeKillWard");
af_warn++;
if(af_warn > 4)
format(string, sizeof(string), "Игрок %s был кикнут системой (FakeKill). ", PlayerName(playerid));
BanEx(playerid, "AntiDoS: FakeKill");
SetPVarInt(playerid, "AntiFloodWard", af_warn);
}
return true;
}

forward AntiFakeKill(playerid);
public AntiFakeKill(playerid)
{
if(GetPVarInt(playerid, "AntiFakeKill")) SetPVarInt(playerid, "AntiFakeKill", 0);
return true;
}[/pwn]
То-есть если игрок убивает 4 человек за 1 секунду его банит.
Работоспособно?

DemonoloGДата: Пятница, 21.06.2013, 23:44 | Сообщение # 1056
Постоялец
Группа: Продвинутые
Сообщений: 314
Награды: 2
Репутация: 178
Замечания: 0%
Статус:
Fen1ks,
Цитата
решил сделать защиту от FakeKill на основе защиты от спама

Меня смущает эта фраза...

Fen1ksДата: Пятница, 21.06.2013, 23:50 | Сообщение # 1057
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Цитата
Меня смущает эта фраза...

я о том же так то :D

DemonoloGДата: Суббота, 22.06.2013, 00:37 | Сообщение # 1058
Постоялец
Группа: Продвинутые
Сообщений: 314
Награды: 2
Репутация: 178
Замечания: 0%
Статус:
Fen1ks, я не очень хороший скриптер (точнее даже никакой :D ), но скажу: там больше 4, т.е. банить будет при 5, 6 и т.д. :D
GeryyДата: Суббота, 22.06.2013, 01:00 | Сообщение # 1059
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (Fen1ks)
То-есть если игрок убивает 4 человек за 1 секунду его банит.

Насколько я помню FakeKill - когда игрок сам себя убивает, но при этом смерть ему не защитывается. Позже в читах появилась функция назначить убийцу, тем самым можно было сделать подставу.

А если он будет использовать фейк-килл не за 1 сек. а через 3,4,5,6?



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

Сообщение отредактировал Geryy - Суббота, 22.06.2013, 01:26
Fen1ksДата: Суббота, 22.06.2013, 17:50 | Сообщение # 1060
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
кароче защитка Г :D

Добавлено (22.06.2013, 17:49)
---------------------------------------------
у меня другая проблема например игрок крашнул серв, защита флуд в чат о том что он кикнут, как предотвратить этот дурной флуд?
Код:
[pwn]new client[ 128 ];
public OnVehicleMod(playerid, vehicleid, componentid) {
new vehicleide = GetVehicleModel(vehicleid);
new modok = islegalcarmod(vehicleide, componentid);
if (!modok) {
new name1[ 12 ]
;
GetPlayerName(playerid, name1, sizeof(name1));
format(client, sizeof(client), "Сервер: %s[%d]: использовал Crasher и был кикнут", name1, playerid);
printf(client);
Kick(playerid);
}

return 1;
}[/pwn]

Добавлено (22.06.2013, 17:50)
---------------------------------------------
защита флудит*

DesertДата: Воскресенье, 23.06.2013, 00:30 | Сообщение # 1061
Местный
Группа: I'm V.I.P.
Сообщений: 669
Награды: 57
Город: Москва
Репутация: 1082
Замечания: 0%
Статус:
Fen1ks,
PVar умеешь использовать?

Fen1ksДата: Воскресенье, 23.06.2013, 09:12 | Сообщение # 1062
Новенький
Группа: Пользователи
Сообщений: 26
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Цитата
PVar умеешь использовать?

В том то и дело что нет) :D

sehrgetДата: Воскресенье, 23.06.2013, 16:12 | Сообщение # 1063
Постоялец
Группа: Продвинутые
Сообщений: 393
Награды: 2
Город: Украина\Черкассы
Замечания: 40%
Статус:
[pwn]new plrIP[16];
GetPlayerIp(playerid, plrIP, sizeof(plrIP));
dini_IntSet(string, "Last IP", plrIP);[/pwn]
Код
error 035: argument type mismatch (argument 3)

Какого?

GeryyДата: Понедельник, 24.06.2013, 02:16 | Сообщение # 1064
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (sehrget)
Какого?

plrIP - строка, и ты пытаешься сохранять строку через dini_IntSet (как целое число).
Надо через dini_Set(string, "Last IP", plrIP);



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
forst5Дата: Понедельник, 24.06.2013, 07:46 | Сообщение # 1065
Новенький
Группа: Пользователи
Сообщений: 48
Награды: 0
Город: NSK
Репутация: -10
Замечания: 0%
Статус:
Вот делаю ферму, комбайн работает хорошо, а тачка для сбора нет. Сажусь в неё она просто как фракционная. А нужно чтобы когда садишься появлялась красная фигня как на самп-рп. не подскажите?

Код
        if(newcar == FarmCar)
         {
             if(PlayerInfo[playerid][pFermajob] == 3 || PlayerInfo[playerid][pFerma] != 255 || PlayerInfo[playerid][pFermajob] == 2)
             {
                 if(FarmWorks[playerid] == 1)
                 {
                     for(new f = 0; f < sizeof(FarmInfo); f++)
                     {
                         new carid = GetPlayerVehicleID(playerid);
                         if((!(FarmInfo[f][fInCar] >= 1000)) && WithPickup[carid] == 1)
                         {
                             SendClientMessage(playerid, COLOR_GREY, "Ãðóçîâèê åù¸ íå çàïîëíåí");
                             RemovePlayerFromVehicleAc(playerid);
                             return true;
                         }
                         else if(FarmInfo[f][fInCar] >= 1000)
                         {
                             Delete3DTextLabel(JobText2);
                             DestroyPickup(collection);
                             WithPickup[carid] = 0;
                             SendClientMessage(playerid, COLOR_WHITE, "Ãðóçîâèê ïîëîí ðàçãðóçèòå íà ñêëàä!");
                             format(string, sizeof(string), " ãðóçîâèêå %d / 1000 ç¸ðåí", FarmInfo[f][fInCar]);
                             SendClientMessage(playerid, COLOR_GREEN, string);
                             RemovePlayerAttachedObject(playerid, 3);
                             if(FarmInfo[f][fInCar] > 1000) FarmInfo[f][fInCar] = 1000;
                             DisablePlayerCheckpoint(playerid);
                             return true;
                         }
                         else
                         {
                             if(FarmInfo[f][fSownSeeds] <= 0) return SendClientMessage(playerid, COLOR_WHITE, "Íà ïîëå íåò óðîæàÿ!");
                             new rand;
                             rand = random(sizeof(Venue));
                             WithPickup[carid] = 0;
                             SetPlayerCheckpoint(playerid, Venue[rand][0], Venue[rand][1], Venue[rand][2], 5.0);
                             CollectionStarted[playerid] = 1;
                             format(string, sizeof(string), " ãðóçîâèêå %d / 1000 ç¸ðåí",FarmInfo[f][fInCar]);
                             SendClientMessage(playerid, COLOR_GREEN, string);
                             return true;
                         }
                     }
                 }
                 else
                 {
                     SendClientMessage(playerid, COLOR_GREY, "Âû íå ôåðìåð");
                     RemovePlayerFromVehicleAc(playerid);
                     return true;
                 }
             }
                 else
             {
                 SendClientMessage(playerid, COLOR_GREY, "Âû íå ôåðìåð");
                 RemovePlayerFromVehicleAc(playerid);
                 return true;
             }
         }
   if(newcar == FarmCar)
   {
    if(PlayerInfo[playerid][pFermajob] == 3 || PlayerInfo[playerid][pFerma] != 255 || PlayerInfo[playerid][pFermajob] == 2)
    {
     if(FarmWorks[playerid] == 1)
     {
               for(new f = 0; f < sizeof(FarmInfo); f++)
               {
                      if((!(FarmInfo[f][fInCar] >= 1000)) && WithPickup[newcar] == 1)
                      {
                          SendClientMessage(playerid, COLOR_GREY, "Ãðóçîâèê åù¸ íå çàïîëíåí!");
                          RemovePlayerFromVehicle(playerid);
                          SendClientMessageToAll(COLOR_GREY, "Ðàáîòàåò 2");
                          return true;
                      }
                      else if(FarmInfo[f][fInCar] >= 1000)
                      {
                          Delete3DTextLabel(JobText2);
                          DestroyPickup(collection);
                          WithPickup[newcar] = 0;
                          SendClientMessage(playerid, COLOR_WHITE,"Ãðóçîâèê ïîëîí ðàçãðóçèòå íà ñêëàä!");
                          format(string, sizeof(string), " ãðóçîâèêå %d / 1000 ç¸ðåí", FarmInfo[f][fInCar]);
                          SendClientMessage(playerid, COLOR_GREEN, string);
                          RemovePlayerAttachedObject(playerid, 3);
                          if(FarmInfo[f][fInCar] > 1000) FarmInfo[f][fInCar] = 1000;
                          DisablePlayerCheckpoint(playerid);
                          SendClientMessageToAll(COLOR_GREY, "Ðàáîòàåò 3");
                          return true;
                      }
                      else
                      {
                          if(FarmInfo[f][fSownSeeds] <= 0) return SendClientMessage(playerid, COLOR_GREY, "Íà ïîëå íåò óðîæàÿ!");
                          new rand = random(4);
                          WithPickup[newcar] = 0;
                          SetPlayerCheckpoint(playerid, Venue[rand][0], Venue[rand][1], Venue[rand][2], 5);
                          CollectionStarted[playerid] = 1;
                          format(string, sizeof(string), " ãðóçîâèêå %d / 1000 ç¸ðåí", FarmInfo[f][fInCar]);
                          SendClientMessage(playerid, COLOR_GREEN, string);
                          SendClientMessageToAll(COLOR_GREY, "Ðàáîòàåò 4");
                          return true;
                      }
      }
                 }
                 else
                 {
                     SendClientMessage(playerid, COLOR_GREY, "Âû íå ôåðìåð");
                     RemovePlayerFromVehicle(playerid);
                     return true;
                 }
             }
             else
             {
                 SendClientMessage(playerid, COLOR_GREY, "Âû íå ôåðìåð");
                 RemovePlayerFromVehicle(playerid);
                 return true;
             }
         }

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





 


 


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