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

 



 
        
Подвиcание SA-MP (0)
Max 15.02.2017 18:17
MYSQL Донат (2)
JasonGordon 08.02.2017 10:39
 





Рекомендуем:
Добавить 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
Страница 97 из 151«129596979899150151»
Модератор форума: 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
_BigSm0ke_Дата: Вторник, 13.08.2013, 16:03 | Сообщение # 1441
Местный
Группа: I'm V.I.P.
Сообщений: 674
Награды: 5
Город: Москва
Репутация: 127
Замечания: 0%
Статус:
Цитата (Geryy)
Возьми ФС редактор и настрой как нужно.

дай ссылку пожалуйста)



LifeVegas: vk.com/lvgta - Покори вершины Лас-Вегаса в новом РП проекте. COMING SOON
Продаю РП мод: подробнее тут
Решаю задачи по техническим дисциплинам, подробнее тут
RusKeyДата: Вторник, 13.08.2013, 16:32 | Сообщение # 1442
Группа: I'm V.I.P.
Сообщений: 1083
Награды: 25
Город: Санкт-Петербург
Репутация: 273
Замечания: 80%
Статус:
Цитата (Weddew)
Проблема в виртуальных мирах. У каждого дома должен быть уникальный ID виртуального мира.

Вирт миры в файле были "0".
Значит при покупке дома они идут "player+1".
Но я же не удалял это,я лишь домов прибавил,а значит вирт миры должны создаваться.
Или же все таки нет.
Вот /buyhouse,http://pastebin.com/daRSLaqs



Вся оценка зависит от точки зрения того,кто ее дает.
Ничто не имеет фиксированной ценности.Вещь стоит столько,сколько кто-то готов за нее заплатить.
WeddewДата: Вторник, 13.08.2013, 17:10 | Сообщение # 1443
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (RusKey)
Значит при покупке дома они идут "player+1".

Неверное суждение. Виртуальные миры домов считываются из файла. Обычно это последний параметр в строке.




www.weddew-shop.ru


Сообщение отредактировал Weddew - Вторник, 13.08.2013, 17:10
RusKeyДата: Вторник, 13.08.2013, 17:51 | Сообщение # 1444
Группа: I'm V.I.P.
Сообщений: 1083
Награды: 25
Город: Санкт-Петербург
Репутация: 273
Замечания: 80%
Статус:
Цитата (Weddew)
Неверное суждение. Виртуальные миры домов считываются из файла. Обычно это последний параметр в строке.

Неа)
Я нашел по счету параметр виртуального мира в строке( loadproperty )
И на этом месте у всех всех домов 0 стоит.(Бывший файл где 53 дома,где все дома работали)



Вся оценка зависит от точки зрения того,кто ее дает.
Ничто не имеет фиксированной ценности.Вещь стоит столько,сколько кто-то готов за нее заплатить.
WeddewДата: Вторник, 13.08.2013, 18:18 | Сообщение # 1445
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (RusKey)
Неа)
Я нашел по счету параметр виртуального мира в строке( loadproperty )
И на этом месте у всех всех домов 0 стоит.(Бывший файл где 53 дома,где все дома работали)

Самый оптимальный вариант виртуальных миров для домов - порядковый номер дома.




www.weddew-shop.ru
artemganin1999Дата: Вторник, 13.08.2013, 19:12 | Сообщение # 1446
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Как правильно сделать систему логов введеных команд, то есть время, кто вел,что вел, пытался сделать ко всем new cmdlog;
и public OnPlayerCommandText(playerid, cmdtext[])
Код
if(cmdlog>=1)
  {
   new isname[24],string[128];
   GetPlayerName(playerid,isname,sizeof(isname));
   format(string,sizeof(string),"%s(ID:%i):%s",isname,playerid,cmdtext);
   log("cmdlog",string);
  }

не работает, а если ставлю заместо new cmdlog new cmdlog = 1; , то работают логи , а команды не работают

WeddewДата: Вторник, 13.08.2013, 19:32 | Сообщение # 1447
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
artemganin1999, есть необходимость сохранять логи в отдельный файл?



www.weddew-shop.ru
artemganin1999Дата: Вторник, 13.08.2013, 19:36 | Сообщение # 1448
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
всмысле? они у меня сохраняются в Logs/файл.log
Мне нужно чтобы еще был лог набранных команд

WeddewДата: Вторник, 13.08.2013, 20:11 | Сообщение # 1449
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
artemganin1999, скиньте public OnPlayerCommandText



www.weddew-shop.ru
RusKeyДата: Среда, 14.08.2013, 00:11 | Сообщение # 1450
Группа: I'm V.I.P.
Сообщений: 1083
Награды: 25
Город: Санкт-Петербург
Репутация: 273
Замечания: 80%
Статус:
Цитата (Weddew)
Самый оптимальный вариант виртуальных миров для домов - порядковый номер дома.

Мне кажется вирт миры на пример 2-3 и т.д. уже чем то заняты.
Сложно будет



Вся оценка зависит от точки зрения того,кто ее дает.
Ничто не имеет фиксированной ценности.Вещь стоит столько,сколько кто-то готов за нее заплатить.
RоAChДата: Среда, 14.08.2013, 01:33 | Сообщение # 1451
Местный
Группа: Следователи
Сообщений: 737
Награды: 14
Город: Санкт-Петербург
Репутация: 3682
Замечания: 20%
Статус:
Значит номер дома + 10, например.


Не бывает невыносимых людей,бывают узкие двери.
ЛС не принимаю! Все ЛС сюда http://www.samp-rus.com/index/8-10438
GeryyДата: Среда, 14.08.2013, 09:34 | Сообщение # 1452
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (artemganin1999)
Как правильно сделать систему логов введеных команд, то есть время, кто вел,что вел, пытался сделать ко всем new cmdlog;
и public OnPlayerCommandText(playerid, cmdtext[])


[pwn]
stock CmdLog(string[],playerid)
{
new hour,minute,second,year,month,day;
new entrytext[256];
gettime(hour,minute,second);
getdate(year,month,day);
format(entrytext,sizeof(entrytext),"[%d.%02d.%02d] - [%d]%s: %s\n",hour,minute,second,playerid,oGetPlayerName(playerid),string);
new data[64];
new File:hFile;
format(data,sizeof(data),"logs/[%d.%d.%d]-cmd.log",day,month,year);
hFile = fopen(data, io_append);
fwrite(hFile, entrytext);
fclose(hFile);
}[/pwn]

Запись в лог:
CmdLog(cmdtext,playerid);
или
format(string, sizeof(string), "/jail [%d]%s", playerid, oGetPlayerName(playerid));
CmdLog(string,playerid);



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
artemganin1999Дата: Среда, 14.08.2013, 12:25 | Сообщение # 1453
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
всмысле? все убрать и добавить это?

Добавлено (14.08.2013, 09:46)
---------------------------------------------
ааа понял, а мне нужно не для особый команды, а кто что набрал

Добавлено (14.08.2013, 12:25)
---------------------------------------------

Цитата (Weddew)
artemganin1999, скиньте public OnPlayerCommandText

[pwn]public OnPlayerCommandText(playerid, cmdtext[])
{
new specplayerid;
new string[140], animid, playermoney, sendername[MAX_PLAYER_NAME], giveplayer[MAX_PLAYER_NAME], playername[MAX_PLAYER_NAME],tmp[128], giveplayerid, moneys, idx;
string = strtok(cmdtext, idx);
if(cmdlog>=1)
{
new isname[24];
GetPlayerName(playerid,isname,sizeof(isname));
format(string,sizeof(string),"%s(ID:%i):%s",isname,playerid,cmdtext);
log("cmdlog",string);
}
if(strcmp(string, "/go1",true) == 0)[/pwn]

WeddewДата: Четверг, 15.08.2013, 14:29 | Сообщение # 1454
Группа: Ангел Хранитель
Сообщений: 1237
Награды: 19
Город: Казань
Репутация: 1245
Замечания: 0%
Статус:
Цитата (artemganin1999)
ааа понял, а мне нужно не для особый команды, а кто что набрал

Это функция аналогична функции log.

[pwn]stock CmdLog(string[],playerid)
{
new hour, minute, second, year, month, day, entrytext[256], pl_name[MAX_PLAYER_NAME];
gettime(hour,minute,second);
getdate(year,month,day);
GetPlayerName(playerid, pl_name, sizeof(pl_name));
format(entrytext,sizeof(entrytext),"[%d.%02d.%02d] - [%d]%s: %s\n", hour, minute, second, playerid, pl_name, string);
new data[64], File:hFile;
format(data,sizeof(data),"logs/[%d.%d.%d]-cmd.log",day,month,year);
hFile = fopen(data, io_append);
fwrite(hFile, entrytext);
fclose(hFile);
}[/pwn]

Т.е, добавив эту функцию в свой мод, можете писать лог следующим образом:

[pwn]if(cmdlog) CmdLog(cmdtext, playerid);[/pwn]




www.weddew-shop.ru
artemganin1999Дата: Четверг, 15.08.2013, 14:36 | Сообщение # 1455
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Цитата (Weddew)
можете писать лог следующим образом

эмм и куда это вставлять
Код
if(cmdlog) CmdLog(cmdtext, playerid);

P.s посмотрите скайп,сколько возьмете за починку хитов (там все вроде,переменные,контракты, момент убийства, все есть , а не работает

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





 


 


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