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

 



 
        
[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
Страница 103 из 152«12101102103104105151152»
Модератор форума: 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
FiLEДата: Понедельник, 02.09.2013, 17:18 | Сообщение # 1531
Группа: Разработчики
Сообщений: 679
Награды: 70
Город: Днепропетровск
Замечания: 0%
Статус:
кто знает иды всех обьектов, которые не имеют столкновения с игроком , машинами...?



artemganin1999Дата: Вторник, 03.09.2013, 18:53 | Сообщение # 1532
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
а как нибудь возможно узнать коодинаты начального экрана? когда только заходишь на сервер, набирал /save но там координаты где то В ресре LCN
WeddewДата: Среда, 04.09.2013, 01:44 | Сообщение # 1533
Группа: Ангел Хранитель
Сообщений: 1242
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус:
artemganin1999, Попробуйте воспользоваться функцией GetPlayerCameraPos в OnPlayerConnect. Команда /save сохраняет только координаты игрока



www.weddew-shop.ru


Сообщение отредактировал Weddew - Среда, 04.09.2013, 02:03
GeryyДата: Среда, 04.09.2013, 02:35 | Сообщение # 1534
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (Weddew)
Попробуйте воспользоваться функцией GetPlayerCameraPos в OnPlayerConnect. Команда /save сохраняет только координаты игрока

При коннекте он получит значение:
GetPlayerCameraPos = 0.000000,0.000000,0.000000
GetPlayerCameraFrontVector = 0.000000,0.000000,0.000000

Цитата (artemganin1999)
а как нибудь возможно узнать коодинаты начального экрана? когда только заходишь на сервер, набирал /save но там координаты где то В ресре LCN


screen_cam_pos_x 1093.0
screen_cam_pos_y -2036.0
screen_cam_pos_z 90.0
screen_cam_look_at_x 384.0
screen_cam_look_at_y -1557.0
screen_cam_look_at_z 20.0



Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
artemganin1999Дата: Среда, 04.09.2013, 13:32 | Сообщение # 1535
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Спасибо,
Вот у меня есть на сервере при заходе музыка, я при спавне я поставил таймер чтобы через 10 сек она выключалась, и хочу сделать чтобы была команда /go чтобы игрок ее набирал и у нее снималось ограничение , пробывал так, но таймер не изменяется
[pwn]if (strcmp(cmdtext, "/go", true) == 0)
{
SendClientMessage(playerid, COLOR_GRAD1, "Âû óáðàëè îãðàíè÷åíèå â 10 ñåê.");
SetTimerEx("kyky", 900000, false, "i", playerid);
return 1;
}[/pwn]

GeryyДата: Среда, 04.09.2013, 14:53 | Сообщение # 1536
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Сохраняй свой таймер в переменную для каждого игрока. Потом в команде, где нужно снять ограничение убивай таймер.
[pwn]
//В начало
new KillTimeForMusic[MAX_PLAYERS];

//Основной таймер с музыкой:
KillTimeForMusic[playerid] = SetTimerEx("kyky", 15000, 0, "i", playerid);

//Команда:
if (strcmp(cmdtext, "/go", true) == 0)
{
SendClientMessage(playerid, COLOR_GRAD1, "Вы убрали ограничение в 15 сек..");
KillTimer(KillTimeForMusic[playerid]);
return 1;
}[/pwn]



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

Сообщение отредактировал Geryy - Среда, 04.09.2013, 15:04
DiSEДата: Среда, 04.09.2013, 21:34 | Сообщение # 1537
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Покажите пожалуйста простейший скрипт гонки.
Суть такова. Создаю первый чекпоинт, когда наезжаю на него появляется второй. После приезда на второй как сделать третий и следующие чекпоинты?

SaibotДата: Среда, 04.09.2013, 23:18 | Сообщение # 1538
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Цитата (DiSE)
Покажите пожалуйста простейший скрипт гонки. Суть такова. Создаю первый чекпоинт, когда наезжаю на него появляется второй. После приезда на второй как сделать третий и следующие чекпоинты?

[cut noguest=Ну вот что-то типа этого.][pwn]new StartCar[MAX_PLAYERS];
new Start[MAX_PLAYERS];
new pStartCar[MAX_PLAYERS];

enum
{
CHECKPOINT_1,
CHECKPOINT_2,
CHECKPOINT_3,
CHECKPOINT_4,
CHECKPOINT_5,
CHECKPOINT_6,
CHECKPOINT_7,
CHECKPOINT_8,
CHECKPOINT_9,
CHECKPOINT_10,
}
//public OnPlayerEnterCheckpoint(playerid)
if(StartCar[playerid] == 1)
{
switch(pStartCar[playerid])
{
case CHECKPOINT_1:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_2;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_3:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_4;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_4:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_5;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_5:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_6;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_6:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_7;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_7:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_8;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_8:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_9;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_9:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_10;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
case CHECKPOINT_10:
{
DisablePlayerCheckpoint((playerid);
SendClientMessage(playerid, COLOR_GREEN, "Финиш");
StartCar[playerid] = 0;
Start[playerid] = 0;
}
}
}

//public OnPlayerCommandText(playerid, cmdtext[])
if(strcmp(cmd, "/go", true) == 0)
{
if(IsPlayerConnected(playerid))
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_1;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
}
return 1;
}[/pwn][/cut]

DiSEДата: Четверг, 05.09.2013, 12:54 | Сообщение # 1539
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Saibot,
[pwn]case CHECKPOINT_1:
{
Start[playerid]++;
pStartCar[playerid] = CHECKPOINT_2;
SetPlayerCheckpoint(playerid,Кординаты, 5.0);
} [/pwn]

Сам посылаешь на 2 чекпоинт, а следующий у тебя третий чекпоинт :D
Но а так спасибо. Разобрался

DiSEДата: Четверг, 05.09.2013, 20:48 | Сообщение # 1540
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
Как машине проколоть колеса скриптово?
SaibotДата: Четверг, 05.09.2013, 21:17 | Сообщение # 1541
Освоившийся
Группа: Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус:
Цитата (DiSE)
Сам посылаешь на 2 чекпоинт, а следующий у тебя третий чекпоинт

[off]Лоханулся :D [/off]

slavonchikameneДата: Пятница, 06.09.2013, 00:28 | Сообщение # 1542
Освоившийся
Группа: Пользователи
Сообщений: 112
Награды: 0
Город: Харьков
Репутация: -4
Замечания: 0%
Статус:
Как исправить эту ошибку
Код
[23:24:37] [debug] Run time error 4: "Array index out of bounds"
[23:24:37] [debug]  Accessing element at index 200 past array upper bound 199
[23:24:37] [debug] AMX backtrace:
нашел её через плагин crashdetect
из-за этой ошибки сервер все время падает.



http://s019.radikal.ru/i607/1203/a3/f82e4282ef1e.gif
GeryyДата: Пятница, 06.09.2013, 01:39 | Сообщение # 1543
Советчик
Группа: Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус:
Цитата (DiSE)
Как машине проколоть колеса скриптово?

http://wiki.sa-mp.com/wiki/OnVehicleDamageStatusUpdate

[pwn]
new panels, doors, lights, tires;
new carid = GetPlayerVehicleID(playerid);
GetVehicleDamageStatus(carid, panels, doors, lights, tires);
tires = encode_tires(1, 1, 1, 1);
UpdateVehicleDamageStatus(carid, panels, doors, lights, tires);

//-----------------------------------------------------------------------
encode_tires(tires1, tires2, tires3, tires4) {

return tires1 | (tires2 << 1) | (tires3 << 2) | (tires4 << 3);

}
[/pwn]

Добавлено (06.09.2013, 01:39)
---------------------------------------------
Цитата (slavonchikamene)
нашел её через плагин crashdetect
из-за этой ошибки сервер все время падает.


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



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

Сообщение отредактировал Geryy - Пятница, 06.09.2013, 02:02
artemganin1999Дата: Суббота, 07.09.2013, 12:27 | Сообщение # 1544
Уверенный в себе
Группа: Пользователи
Сообщений: 184
Награды: 0
Репутация: -28
Замечания: 0%
Статус:
Помогите плз,
[pwn] new vehicle = GetPlayerVehicleID(i);
if(IsPlayerInAnyVehicle(i))
{
new carid = GetPlayerVehicleID(i);
if(!BikeVeh(carid) || !PlaneVeh(carid) || !BoatVeh(carid))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
if(Gas[vehicle] > 0)
{
new Float:x,Float:y,Float:z;
GetVehicleVelocity(vehicle,x,y,z);
new Float:speed = floatabs(x)+floatabs(y)+floatabs(z);
if(!BikeVeh(vehicle) && if(!PlaneVeh(vehicle) && speed != 0)
{
Gas[vehicle]-= 1;
}
}
else
{
if(EngineCar[vehicle] == 1)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
new vid = GetPlayerVehicleID(i);
SendClientMessage(i,COLOR_LIGHTRED," ýòîé ìàøèíå çàêîí÷èëñÿ áåíçèí.");
GameTextForPlayer(i, "~w~B “O† –AŽ…ìE ìE €E숅ìA", 10000, 3);
EngineCar[vid] = 0;
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,0,0,alarm,doors,bonnet,boot,objective);
}
}
}
}
}
}
return true;
}[/pwn]
я хотел сделать чтобы у самолетов тоже не отнималось бензин,выше код мне выдало
Код
error 029: invalid expression, assumed zero
   error 029: invalid expression, assumed zero

до это строка
Код
if(!BikeVeh(vehicle) && if(!PlaneVeh(vehicle) && speed != 0)

была такой
Код
if(!BikeVeh(vehicle) && speed != 0)

DiSEДата: Суббота, 07.09.2013, 12:36 | Сообщение # 1545
Группа: I'm V.I.P.
Сообщений: 1759
Награды: 23
Город: Уфа
Репутация: 337
Замечания: 80%
Статус:
artemganin1999,
[pwn]if(!BikeVeh(vehicle) && !PlaneVeh(vehicle) && speed != 0)[/pwn]

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





 


 


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