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

 



 
        
[SA-MP] Hosted Tab (116)
DieSeL 17.05.2017 17:33
Физрук (15)
Lanablogger1 16.05.2017 16:00
 





Рекомендуем:
Добавить 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
Страница 61 из 152«125960616263151152»
Модератор форума: 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
krasich1234Дата: Пятница, 31.05.2013, 11:55 | Сообщение # 901
Новенький
Группа: Пользователи
Сообщений: 7
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
После рестарта сервера пропали дома!
из за чего может такое произойти?
обновлял мод
все равно тоже самое помогите пожалуйста!

MerbulДата: Пятница, 31.05.2013, 13:09 | Сообщение # 902
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
У меня такой строки вообще нету PlayerInfo[playerid][pJail]

Цитата
Merbul, нужно проверять по значению PlayerInfo[playerid][pJail]. Если равно 1, то телепортировать игрока в КПЗ.
1 if(PlayerInfo[playerid][pJail])
2 {
3 // Телепортируем в КПЗ
4 }

artemganin1999Дата: Пятница, 31.05.2013, 18:55 | Сообщение # 903
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Здравствуйте , нашел на сервере следующее
Код

  //================================говорящий чат==================================//
  AudioMess(playerid,5,cmdtext[idx]);//id,дальность на которое будет слышен текст,сам текст
      if(IsPlayerConnected(playerid))
      {
          if(gPlayerLogged[playerid] == 0)
          {
              SendClientMessage(playerid, COLOR_GREY, "Pro100-SeRvEr: Вы не авторизованы!");
              return 1;
          }

    if(PlayerInfo[playerid][pMute] > 0)
    {
     SendClientMessage(playerid, COLOR_GRAD1, "Pro100-SeRvEr: Чат временно не доступен.");
     return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
     idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
     result[idx - offset] = cmdtext[idx];
     idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
     SendClientMessage(playerid, COLOR_GRAD2, "Pro100-SeRvEr: /b [local ooc chat]");
     return 1;
    }
    format(string, sizeof(string), "%s сказал: (( %s ))", sendername, result);
    ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
    printf("%s", string);
   }
   return 1;
  }


и в конце
Код

//=====================================говорящий чат===============================//
stock AudioMess(id,rad,str[]) {
     new Float:px,Float:py,Float:pz;
     GetPlayerPos(id,px,py,pz);
      new stream[256];
     format(stream,sizeof(stream),"http://translate.google.kg/translate_tts?ie=UTF-8&q=%s&tl=ru&prev=input",str);
     for(new i=0; i != MAX_PLAYERS; i++) {
         if(IsPlayerInRangeOfPoint(i,rad,px,py,pz) && GetPlayerVirtualWorld(id) == GetPlayerVirtualWorld(i)) {
             PlayAudioStreamForPlayer(i,stream);
         }
     }
     return 1;
}

но пишу что нибудь в /b и ничего не работает .... поможете ?:D

Добавлено (31.05.2013, 18:55)
---------------------------------------------
если так переходить по http://translate.google.kg/translate_tts?ie=UTF-8&q=%s&tl=ru&prev=input , и за место %s вставлять текст то в браузере все говорит )

WeddewДата: Пятница, 31.05.2013, 19:36 | Сообщение # 904
Группа: Ангел Хранитель
Сообщений: 1242
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
Цитата (krasich1234)
После рестарта сервера пропали дома!
из за чего может такое произойти?
обновлял мод
все равно тоже самое помогите пожалуйста!

Файл с домами перезаписался. Решение: восстановить файл домов.




www.weddew-shop.ru
MerbulДата: Пятница, 31.05.2013, 20:49 | Сообщение # 905
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Как исправить?
(34085) : warning 213: tag mismatch
(34096) : warning 213: tag mismatch
[pwn] if(strcmp(cmdtext, "/robbank", true) == 0)
{
new member = PlayerInfo[playerid][pMember];
new leader = PlayerInfo[playerid][pLeader];
new level = PlayerInfo[playerid][pLevel];
new bankmoney = random(level*5000);
if (member == 12 || member == 13 || member == 15 || member == 17 || member == 18 || leader == 12 || leader == 13 || leader == 15 || leader == 17 || leader == 18)
{
if (PlayerInfo[playerid][pZvezdi] >= 1)
{
ProxDetector(30.0, playerid, string,COLOR_ME,COLOR_ME,COLOR_ME,COLOR_ME,COLOR_ME);
return 1;
}
new pRobTime;
if(PlayerInfo[playerid][pRobTime] >= 1)
{
SendClientMessage(playerid, COLOR_GREY, "Ты уже совершил(а) ограбление, жди пока все утихнет!");
return 1;
}
if(IsPlayerInRangeOfPoint(playerid, 2, 2352.23,17.43,329.64))
{
new PName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PName,sizeof(PName));
PlayerInfo[playerid][pZvezdi] += 3;
SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pZvezdi]);
PlayerInfo[playerid][pRobTime] = 3600;
SetTimer("UnsetBankRob",10,false);
PlayerInfo[playerid][pCash] += bankmoney;
format(string, sizeof(string),"* Вы ограбили банк на сумму $%d, вас ищут копы!",bankmoney);
SendClientMessage(playerid, COLOR_GREY, "Тебя ищут!");
WantedPoints[playerid]+=3; SetPlayerCriminal(playerid,255, "Отключение системы защиты! Сработала сигнализация!!! ");
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "Внимание: %s[%d] ограбил БАНК на сумму $%d!", PName,playerid,bankmoney);
SendRadioMessage(1, COLOR_YELLOW, string);
SendRadioMessage(2, COLOR_YELLOW, string);
SendRadioMessage(3, COLOR_YELLOW, string);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Вы не на нужном месте!");
return 1;
}
}
}[/pwn]

Вот эти строки if(PlayerInfo[playerid][pRobTime] >= 1).........PlayerInfo[playerid][pRobTime] = 3600;

Добавлено (31.05.2013, 20:49)
---------------------------------------------
В этом случае (15) : warning 213: tag mismatch
(26) : warning 213: tag mismatch

sehrgetДата: Пятница, 31.05.2013, 22:59 | Сообщение # 906
Постоялец
Группа: Продвинутые
Сообщений: 393
Награды: 2
Город: Украина\Черкассы
Замечания: 40%
Статус:
Сделал систему спекта с текстдрайвами. Все работает, но почему-то ХП выводит не просто 1-100, а 1110011. В TextDrawSetString стоит среди прочего переменные брони и ХП(PlayerArmour, PlayerHeal)(они отвечают реальным количествам хп и армора у игрока). Вот как это выглядит в стинге:

Код
format(string, sizeof(string), " HP: %d   ~n~   Armour: %d", PlayerHeal[SpecAd[i]], PlayerArmour[SpecAd[i]]);
TextDrawSetString(SPECT[i], string);


[/c]



Сообщение отредактировал sehrget - Пятница, 31.05.2013, 23:05
FiLEДата: Суббота, 01.06.2013, 00:21 | Сообщение # 907
Группа: Разработчики
Сообщений: 679
Награды: 70
Город: Днепропетровск
Замечания: 0%
Статус:
sehrget, %d поменяй на %f

Добавлено (01.06.2013, 00:21)
---------------------------------------------
Merbul,
new pRobTime; вот твоя ошибка. нужно в enum добавлять!



artemganin1999Дата: Суббота, 01.06.2013, 08:20 | Сообщение # 908
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Мне кто нибудь может мне помоч?(
GeryyДата: Суббота, 01.06.2013, 10:24 | Сообщение # 909
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (artemganin1999)
но пишу что нибудь в /b и ничего не работает .... поможете ?:

Может ты вызов функции не туда запихал:

Код

       if(IsPlayerConnected(playerid))
       {
           if(gPlayerLogged[playerid] == 0)
           {
               SendClientMessage(playerid, COLOR_GREY, "Pro100-SeRvEr: Вы не авторизованы!");
               return 1;
           }

     if(PlayerInfo[playerid][pMute] > 0)
     {
      SendClientMessage(playerid, COLOR_GRAD1, "Pro100-SeRvEr: Чат временно не доступен.");
      return 1;
     }
     GetPlayerName(playerid, sendername, sizeof(sendername));
     new length = strlen(cmdtext);
     while ((idx < length) && (cmdtext[idx] <= ' '))
     {
      idx++;
     }
     new offset = idx;
     new result[64];
     while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
     {
      result[idx - offset] = cmdtext[idx];
      idx++;
     }
     result[idx - offset] = EOS;
     if(!strlen(result))
     {
      SendClientMessage(playerid, COLOR_GRAD2, "Pro100-SeRvEr: /b [local ooc chat]");
      return 1;
     }
     format(string, sizeof(string), "%s сказал: (( %s ))", sendername, result);
     ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
     AudioMess(playerid,20,result);
     printf("%s", string);
    }
    return 1;
   }



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
WeddewДата: Суббота, 01.06.2013, 10:41 | Сообщение # 910
Группа: Ангел Хранитель
Сообщений: 1242
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
Merbul, в место PlayerInfo[playerid][pJail], у вас может быть другая переменная, которая отвечает за нахождение игрока в тюрьме.



www.weddew-shop.ru
artemganin1999Дата: Суббота, 01.06.2013, 11:05 | Сообщение # 911
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Geryy, сам чат работает, но не говорит ...
GeryyДата: Суббота, 01.06.2013, 12:39 | Сообщение # 912
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (artemganin1999)
сам чат работает, но не говорит ...

Попробуй тот вариант, который я написал выше.

+ еще попробуй написать текст английскими



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

Сообщение отредактировал Geryy - Суббота, 01.06.2013, 12:41
artemganin1999Дата: Суббота, 01.06.2013, 13:28 | Сообщение # 913
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Цитата (Geryy)
Попробуй тот вариант, который я написал выше.

+ еще попробуй написать текст английскими

спасибо :D

Добавлено (01.06.2013, 13:28)
---------------------------------------------
теперь осталось только одно )) (я в другой теме отписывался ) . У меня npc боты не подключались, я в меня в server.cfg было 0 , я поставил макс. 10 , теперь боты подключаются , но сразу же выходят crazy

Код
[08:35:08] [npc:join] BlackBusDriver has joined the server (0:127.0.0.1)  
[08:35:08] [npc:join] BlueBusDriver has joined the server (1:127.0.0.1)  
[08:35:12] [npc:part] BlackBusDriver has left the server (0:2)  
[08:35:12] [npc:part] BlueBusDriver has left the server (1:2)

sehrgetДата: Суббота, 01.06.2013, 16:56 | Сообщение # 914
Постоялец
Группа: Продвинутые
Сообщений: 393
Награды: 2
Город: Украина\Черкассы
Замечания: 40%
Статус:
Опять эти ((пииип)) текстравы! Сделал текстдрав по уроку(ТЫК), сам то он работает, появляется НО когда я пытаюсь выбрать пункт в меню не действует его функция. В команде есть функция
Код
SelectTextDraw(playerid, 0xA3B4C5FF);


OnPlayerClickTextDraw тоже настроил.



Сообщение отредактировал sehrget - Суббота, 01.06.2013, 16:57
MerbulДата: Суббота, 01.06.2013, 17:19 | Сообщение # 915
Новенький
Группа: Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Помогите исправить вот такие ошибки error 035: argument type mismatch (argument 2)
Это строка [pwn]SendCopsMessage(playerid, 0xFEBC41AA, string);[/pwn]
Потом это warning 215: expression has no effect
[pwn]PlayerInfo[playerid][pHP];[/pwn]

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





 


 


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