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

 



 
        
[SA-MP] Hosted Tab (128)
JasonGordon 21.10.2017 10:43
[MAP+FS] Тюрьма (15)
SubjectKalcor 09.10.2017 07:59
 





Рекомендуем:
Добавить 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
Страница 127 из 152«12125126127128129151152»
Модератор форума: 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
GeryyДата: Вторник, 04.02.2014, 17:23 | Сообщение # 1891
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
Как сделать проверку чтобы inputtext не мог содержать русские буквы?

Например так:

[pwn]
for(new i = strlen(inputtext); i != 0; --i)
switch(inputtext[i])
{
case 'А'..'Я', 'а'..'я':
return SendClientMessage(playerid, COLOR_LIGHTRED, "Ошибка! inputtext не может содержать русские буквы");
}
[/pwn]



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

Сообщение отредактировал Geryy - Вторник, 04.02.2014, 17:25
MaxДата: Вторник, 04.02.2014, 20:38 | Сообщение # 1892
Уверенный в себе
Группа: Продвинутые
Сообщений: 172
Награды: 0
Город: Казань
Репутация: 59
Замечания: 0%
Статус:
Еще 1 вопрос про цвета:

Я создаю банду на сервере и ввожу в диалоговое окно цвет банды например FFFFFF

Мне надо так, чтобы игроку установился цвет0x (%s) AA

Как сделать, ума не приложу!

Код
new str[20];
     format(str, 256, "0x%sAA", color);
  SendClientMessage(playerid, 0xFFFFFFAA, str);

Не выходит!

GeryyДата: Среда, 05.02.2014, 10:34 | Сообщение # 1893
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата Steep_Nk ()
Еще 1 вопрос про цвета:

Я создаю банду на сервере и ввожу в диалоговое окно цвет банды например FFFFFF

Мне надо так, чтобы игроку установился цвет0x (%s) AA

Как сделать, ума не приложу!

Если ты про цвет который параметром ко всему SendClientMessage идет? SendClientMessage(playerid, 0xFFFFFFAA <- вот это? так это вообще не строка, а число, только в 16-ричной форме.

Надо использовать парсер таких строк, вот плагин:
http://forum.sa-mp.com/showthread.php?t=120356
new hex;
sscanf("0x112233FF", "x", hex);

или такой сток:

[pwn]
stock HexToInt(string[]) {
if (string[0]==0) return 0;
new i;
new cur=1;
new res=0;
for (i=strlen(string);i>0;i--) {
if (string[i-1]<58) res=res+cur*(string[i-1]-48); else res=res+cur*(string[i-1]-65+10);
cur=cur*16;
}
return res;
}
[/pwn]

юзать SendClientMessage(playerid, HexToInt(color), str);
ну color соотвественно введенная строка



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

Сообщение отредактировал Geryy - Среда, 05.02.2014, 10:44
CheSTRДата: Среда, 05.02.2014, 11:41 | Сообщение # 1894
Новенький
Группа: Пользователи
Сообщений: 44
Награды: 1
Город: Саратов
Репутация: 34
Замечания: 0%
Статус:
помогите пожалуйста, мучаюсь вторые сутки)) суть в том чтобы сделать список в 3 столбика, но получается не то, и непонятно почему
[pwn]CMD:racelist(playerid)
{
new stringrace[1024];
new count=0;
for(new j=0;j<=rraces;j++)
{
if(!strcmp(rracenames[j], "", true ))
{
if(count== 0)
{
format(stringrace,sizeof(stringrace),"%s \t%s ", stringrace, rracenames[j]);
count++;
}
else if(count== 1)
{
format(stringrace,sizeof(stringrace),"%s \t\t%s ", stringrace, rracenames[j]);
count++;
}
else if(count== 2)
{
format(stringrace,sizeof(stringrace),"%s \t\t%s \n ", stringrace, rracenames[j]);
count=0;
}
ShowPlayerDialog(playerid, 10, DIALOG_STYLE_MSGBOX, " Гонки загруженные в ротацию сервера", stringrace, "Ok", "");
}
}
return 1;
}[/pwn]
[cut noguest=][/cut]

[[[WampiR]]]Дата: Среда, 05.02.2014, 15:02 | Сообщение # 1895
Уверенный в себе
Группа: Продвинутые
Сообщений: 202
Награды: 2
Город: Омск
Репутация: -22
Замечания: 20%
Статус:
CheSTR, Можно просто создать одно окно и использовать отступ "\t", будет выглядеть также.
Kostyan4egДата: Среда, 05.02.2014, 15:20 | Сообщение # 1896
Новенький
Группа: Пользователи
Сообщений: 9
Награды: 0
Репутация: 4
Замечания: 0%
Статус:
Ребят как сделать так чтоб когда игрок когда кликал по текстдравам и нажимал esc то текстдравы убирались?(и еще пару функций хочу туда всунуть)
А если жать esc то текстдравы остаются

CheSTRДата: Среда, 05.02.2014, 15:27 | Сообщение # 1897
Новенький
Группа: Пользователи
Сообщений: 44
Награды: 1
Город: Саратов
Репутация: 34
Замечания: 0%
Статус:
Цитата Kostyan4eg ()
Ребят как сделать так чтоб когда игрок когда кликал по текстдравам и нажимал esc то текстдравы убирались?(и еще пару функций хочу туда всунуть)
А если жать esc то текстдравы остаются

public OnPlayerClickPlayerTextDraw(playerid, textdrawid)
{
if(_:textdrawid== INVALID_TEXT_DRAW)
{
SelectTextDraw(playerid, 0x1229FAFF); /// тут пиши возвращаение кликабельности тд
}

PasharusДата: Среда, 05.02.2014, 20:01 | Сообщение # 1898
Новенький
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
На сервере хочу сделать битву на зоне 51. Военные чтобы защищали а враги нападали и воровали комплекты. Сделаю чемоданчик в нутри здания одного. и по открытию двери битва начьнется и враги смогут нападать и брать комплекты. Но у меня вопросы. Как ввести в мод вообще такое понятие комплекты. Как сделать чтобы их можно было обменивать в магазинчике и из него давалось золото и пару вещей еще.
BorogДата: Среда, 05.02.2014, 23:27 | Сообщение # 1899
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус:
Pasharus, если комплект - как одна вещь, то создаешь переменную, которая будет отвечать за наличие комплектов; систему получения комплектов (автоматически, через пикап, через диалог или т.п.); систему продажи комплектов, где проверяешь, если комплекты есть - то продаешь.

Если рассматривать комплект - как разные вещи, но можно иметь только один. то создаешь еще одну переменную, которая будет отвечать ха тип комплекта (комплект для снайпера, штурмовика, еще кого), а наличие комплекта обнуляешь при покупке другого типа.

Если рассматривать комплект - как разные вещи, которые можно иметь одновременно, то переменная типа не нужна, а под каждую вещь создается своя отдельная переменная. Одна отвечает за наличие комплекта снайпера, другая за комплекта штурмовика и т.п.

UPD:
CheSTR, нужно учитывать длину сообщения и в зависимости от этого добавлять определенное количество табуляций (подробнее см. в скайпе)



Silver Break
http://s-break.ru/
http://vk.com/sbreak


Сообщение отредактировал Borog - Четверг, 06.02.2014, 00:20
PasharusДата: Четверг, 06.02.2014, 05:33 | Сообщение # 1900
Новенький
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Borog, а можешь скайп дать?)
aiaksДата: Четверг, 06.02.2014, 12:31 | Сообщение # 1901
Новенький
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Здравствуйте, я откопал у себя сервер версии 0.2х хотел возродить, но столкнулся с проблемой спавна игрока. Весь код успешно переделал под 0.3х, но при спавне игрока он улетает в координату 0, 0, 0. Проверял код и издевался над ним, вообще 0 реакции, проверил то что после смерти не вызывается OnPlayerSpawn и в результате не идёт вызов SetPlayerSpawn. Сначало грешил на OnPlayerUpdate, но после удаления нет результата. Заметил ещё что если сначало подргузить gamemode0 другой мод, а gamemode1 , то спавн происходит нормально. Насильно даже вызывал в Death спавн, спавнилось, но кривило.
Даже с простым кодом не спавнит:
[spiler]
Код

public OnPlayerDeath(playerid, killerid, reason)
{
     return 1;
}
public OnPlayerSpawn(playerid)
{
     new string[128];
     format(string, sizeof(string), "Igrok %d NA SPAWNE.", playerid);
     SendClientMessageToAll(0xFFFFFFFF, string);
  SetPlayerPos(playerid, -1603.1223,36.1157,33.3088);
  return 1;
}
public SetPlayerSpawn(playerid)
{
  SetPlayerPos(playerid, -1603.1223,36.1157,50.3088);
  return 1;
}

[/spiler]
gPlayerSpawned[playerid] = 1; - думаю возможно вина в этом, в 0.2х происходил сначало вызов состояния, а уже потом спавн. Теперь же всё наоборот.

первый спавн происходит почти всегда нормально, хоть и стоит
OnPlayerLogin:
[spiler]
Код

...
  SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid);
  SetSpawnInfo(playerid, PlayerInfo[playerid][pTeam], PlayerInfo[playerid][pChar],0.0,0.0,0.0,0,0,0,0,0,0,0);
  gPlayerLogged[playerid] = 1;
  SpawnPlayer(playerid);
...

[/spiler]
Помогите или подскажите тему где есть знающие люди. Ну или где темку может быть создать.

PasharusДата: Четверг, 06.02.2014, 15:10 | Сообщение # 1902
Новенький
Группа: Пользователи
Сообщений: 25
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Borog, Ну в дальнейшем я хочу сделать инвентарь. Но пока например как сделать чтобы колл. комплектов отображалось в статистике игрока. и как сделать такое понятие комплект. Комлект мини набор веще там будут например пока что 50000вирт. Тоесть при обмене пока в любом магазине комплекта если он есть давалось 50к.
WeddewДата: Четверг, 06.02.2014, 21:08 | Сообщение # 1903
Группа: Ангел Хранитель
Сообщений: 1242
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
Цитата aiaks ()
gPlayerSpawned[playerid] = 1; - думаю возможно вина в этом, в 0.2х происходил сначало вызов состояния, а уже потом спавн. Теперь же всё наоборот.

Переменная тут не причем.
Цитата aiaks ()
public SetPlayerSpawn(playerid)
{
  SetPlayerPos(playerid, -1603.1223,36.1157,50.3088);
  return 1;
}

А где вызов функции?




www.weddew-shop.ru
sffsffsДата: Пятница, 07.02.2014, 00:29 | Сообщение # 1904
Новенький
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 0
Замечания: 0%
Статус:
Как сделать проверку на фраги? Пробывал схитрить как и с деньгами сделать проверку, но всё напрасно. Подскажите пожалуйста

Добавлено (07.02.2014, 00:29)
---------------------------------------------
Тоесть, чтобы фраги в минус не уходили

Dima-kunДата: Пятница, 07.02.2014, 00:44 | Сообщение # 1905
Группа: Разработчики
Сообщений: 6247
Награды: 72
Репутация: 3339
Замечания: 0%
Статус:
[pwn]if(GetPlayerScore( playerid ) <= 0 ) return 1;[/pwn]


Мои работы:
[INC] Сборник d_includes [LAST],[FS] New Demage Effect,[FS]Авто-Поворотники,
[FS]mp3player,[FS] Fun Chat Game,[FS] Car Buy Syst,[FS] Anti-AirBrk,[INC] d_setpos,
[GM] Game Move v0.1,[FS+include]Super-Armour [0.3z],[FS + Include] Multi Checkpoints
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Вопросы и ответы по GTA SAMP [от 19.03.2013]
Страница 127 из 152«12125126127128129151152»
Поиск:





 


 


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