 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Вопросы и ответы по GTA SAMP [от 19.03.2013]
| |
| Weddew | Дата: Вторник, 19.03.2013, 15:11 | Сообщение # 1 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 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 |
| |
|
|
| Weddew | Дата: Понедельник, 01.04.2013, 20:48 | Сообщение # 181 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Geryy) Вон как, и можно даже взорвать транспорт или только калечить? Можно и взорвать.Добавлено (01.04.2013, 20:48) ---------------------------------------------
Цитата (Vsevolod) Так что ни как не сделать что бы хп не отнималось у транспорта без водителя? Сделать то можно, но проблема появиться следующая: при перевороте транспорта, если в нем нет водителя, он не будет загораться.
www.weddew-shop.ru
|
| |
|
|
| Geryy | Дата: Вторник, 02.04.2013, 01:47 | Сообщение # 182 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| Хз можно узнавать HEALTH ближайшего к игроку авто, сохранять значение в переменную, и если в авто нет водилы, а HEALTH уменьшается то выставлять ему значение из переменной.
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| Nikita01041997 | Дата: Вторник, 02.04.2013, 15:00 | Сообщение # 183 |
|
Новенький
Группа:
Пользователи
Сообщений: 74
Награды: 0
Город: Алейск
Репутация: -37
Замечания: 0%
Статус: 
| Люди, помогите, у меня проблема в том что я создал фракцию такси, а раньше была работа, я её удалил!!! Ну так вот, переделал команду /fare и она не работает, пишет в чат постоянно: "Вы не на слежде", и в транспорт может садиться любой игрок в чёп проблема? [pwn] if(strcmp(cmd,"/fare",true)==0) { new Veh = GetPlayerVehicleID(playerid); if(PlayerInfo[playerid][pMember] == 27) { if(TransportDuty[playerid] > 0) { if(TransportDuty[playerid] == 1) { TaxiDrivers -= 1; } Delete3DTextLabel(taxi3d[Veh]); TransportDuty[playerid] = 0; format(string, sizeof(string), "Âû çàêîí÷èëè ðàáî÷èé äåíü è çàðàáîòàëè: %d", AutoBusCheck[playerid] * (32 + random(2))); SendClientMessage(playerid, 0x6495EDFF, "Âû çàêîí÷èëè ðàáî÷èé äåíü"); PlayerInfo[playerid][pCash] +=TransportMoney[playerid]; TransportValue[playerid] = 0; TransportMoney[playerid] = 0; return 1; } if(Veh >= taxicar[0] && Veh <= taxicar[39]) { if(GetPlayerState(playerid) == 2) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_WHITE, "::: Ââåäèòå: /fare [òàðèô]"); return 1; } moneys = strval(tmp); if(moneys < 1 || moneys > 100) { SendClientMessage(playerid, COLOR_GREY, "Íå ìåíüøå 1 è íå áîëüøå $1000"); return 1; } Delete3DTextLabel(taxi3d[Veh]); TaxiDrivers += 1; TransportDuty[playerid] = 1; TransportValue[playerid] = moneys; GetPlayerName(playerid,sendername,sizeof(sendername)); format(string, sizeof(string), "<< Òàðèô: %d âèðò >>\nÍîâè÷êàì: áåñïëàòíî ", TransportValue[playerid]); taxi3d[Veh] = Create3DTextLabel(string, COLOR_YELLOW, 9999.0, 9999.0, 9999.0, 30.0, 0, 1); Attach3DTextLabelToVehicle(taxi3d[Veh], Veh, 0, 0, 1.5); } else { SendClientMessage(playerid, COLOR_GREY, "Âû íå òàêñèñò / íå â ìàøèíå!"); return 1; } } else { SendClientMessage(playerid, COLOR_GREY, "Âû íå íà ñëóæáå!"); } } else { SendClientMessage(playerid, COLOR_GREY, "Âû íå òàêñèñò / íå â ìàøèíå!"); return 1; } return 1; }[/pwn] А машины вот: [pwn] taxicar [47] if(newcar >= taxicar[0] && newcar <= taxicar[10]) { if(PlayerInfo[playerid][pLeader] == 27 || PlayerInfo[playerid][pMember] == 27) { } else { SendClientMessage(playerid, COLOR_GREY, "Âû íå ñîñòîèòå â Òàêñè!"); RemovePlayerFromVehicleRich(playerid); } } taxicar[0] = AddStaticVehicleEx(438,1257.5415,-1302.9064,13.0001,180.3962,6,6,300); //taxi taxicar[1] = AddStaticVehicleEx(409,1275.1119,-1302.8251,13.2585,179.6111,6,6,300); //taxi taxicar[2] = AddStaticVehicleEx(420,1281.0508,-1330.5994,13.1531,89.7072,6,6,300); // taxi taxicar[3] = AddStaticVehicleEx(420,1280.9775,-1334.5726,13.1522,89.3319,6,6,300); // taxi taxicar[4] = AddStaticVehicleEx(507,1275.4186,-1319.6971,13.2608,181.4907,6,6,300); //taxi taxicar[5] = AddStaticVehicleEx(420,1280.8917,-1338.6674,13.1531,89.4194,6,6,300); // taxi taxicar[6] = AddStaticVehicleEx(402,1277.8202,-1364.5155,13.0846,6.3734,6,6,300); //taxi taxicar[7] = AddStaticVehicleEx(402,1281.2743,-1364.5137,13.1665,5.4669,6,6,300); //taxi taxicar[8] = AddStaticVehicleEx(420,1280.8971,-1342.5717,13.1555,89.9577,6,6,300); // taxi taxicar[9] = AddStaticVehicleEx(420,1280.8995,-1346.5054,13.1527,90.0408,6,6,300); // taxi taxicar[10] = AddStaticVehicleEx(438,1262.2157,-1302.2875,13.1769,181.5345,6,6,300); // taxi [/pwn] Причина редактирования: незакрытый код.
люблю этот сайт
Сообщение отредактировал Weddew - Вторник, 02.04.2013, 15:23 |
| |
|
|
| Weddew | Дата: Вторник, 02.04.2013, 15:14 | Сообщение # 184 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Nikita01041997, кодировку поправьте.
www.weddew-shop.ru
|
| |
|
|
| Saibot | Дата: Вторник, 02.04.2013, 15:16 | Сообщение # 185 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 112
Награды: 0
Репутация: 34
Замечания: 0%
Статус: 
| Цитата (Nikita01041997) А машины вот: New [pwn]new taxicar[2]; // Транспорт TAXI[/pwn] public OnPlayerStateChange(playerid, newstate, oldstate) [pwn]if(newcar >= taxicar[0] && newcar <= taxicar[1]) { if(PlayerInfo[playerid][pMember] == 27||PlayerInfo[playerid][pLeader] == 27) { } else { SendClientMessage(playerid,COLOR_GREY, "У тебя нет ключей от этого автомобиля. Они есть только у членов Taxi Company!"); TogglePlayerControllable(playerid, 1); RemovePlayerFromVehicle(playerid); } }[/pwn] public OnGameModeInit() [pwn]taxicar[0] = AddStaticVehicleEx(438,1257.5415,-1302.9064,13.0001,180.3962,6,6,300); //taxi AddStaticVehicleEx(409,1275.1119,-1302.8251,13.2585,179.6111,6,6,300); //taxi AddStaticVehicleEx(420,1281.0508,-1330.5994,13.1531,89.7072,6,6,300); // taxi AddStaticVehicleEx(420,1280.9775,-1334.5726,13.1522,89.3319,6,6,300); // taxi AddStaticVehicleEx(507,1275.4186,-1319.6971,13.2608,181.4907,6,6,300); //taxi AddStaticVehicleEx(420,1280.8917,-1338.6674,13.1531,89.4194,6,6,300); // taxi AddStaticVehicleEx(402,1277.8202,-1364.5155,13.0846,6.3734,6,6,300); //taxi AddStaticVehicleEx(402,1281.2743,-1364.5137,13.1665,5.4669,6,6,300); //taxi AddStaticVehicleEx(420,1280.8971,-1342.5717,13.1555,89.9577,6,6,300); // taxi AddStaticVehicleEx(420,1280.8995,-1346.5054,13.1527,90.0408,6,6,300); // taxi taxicar[1] = AddStaticVehicleEx(438,1262.2157,-1302.2875,13.1769,181.5345,6,6,300); // taxi[/pwn]
|
| |
|
|
| Nikita01041997 | Дата: Вторник, 02.04.2013, 15:49 | Сообщение # 186 |
|
Новенький
Группа:
Пользователи
Сообщений: 74
Награды: 0
Город: Алейск
Репутация: -37
Замечания: 0%
Статус: 
| Weddew, а что за кодировка??? если можно вставьте пожалуйста её в мой код, буду благодарен! Добавлено (02.04.2013, 15:49) --------------------------------------------- Saibot, спасибо большое тебе, помог, извини "+" порадовать не могу))))
люблю этот сайт
|
| |
|
|
| Weddew | Дата: Вторник, 02.04.2013, 16:01 | Сообщение # 187 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Nikita01041997) Weddew, а что за кодировка??? если можно вставьте пожалуйста её в мой код, буду благодарен! Цитата (Nikita01041997) SendClientMessage(playerid, COLOR_GREY, "Âû íå ñîñòîèòå â Òàêñè!");
www.weddew-shop.ru
|
| |
|
|
| makr0o | Дата: Вторник, 02.04.2013, 16:04 | Сообщение # 188 |
|
Новенький
Группа:
Пользователи
Сообщений: 39
Награды: 0
Город: Киев
Репутация: 8
Замечания: 0%
Статус: 
| всем привет) хочу вытащить из базы машины, чтобы их заспавнить. Но машин нету( Код stock SpawnVehiclesJob() { new vehicleid,Float:X,Float:Y,Float:Z,Float:A,c1,c2,r,query[128]; format(query,sizeof(query),"SELECT * FROM `vehiclesjob`"); mysql_query(query); mysql_store_result(); sscanf(query,"iffffiii",vehicleid,X,Y,Z,A,c1,c2,r); for(new i;i<mysql_num_rows();i++) { AddStaticVehicleEx(vehicleid,X,Y,Z,A,c1,c2,r); } }
|
| |
|
|
| Weddew | Дата: Вторник, 02.04.2013, 16:19 | Сообщение # 189 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (makr0o) всем привет) хочу вытащить из базы машины, чтобы их заспавнить. Но машин нету( 1) У Вас не правильно написан код. 2) Для того чтобы Вам мог помочь, сообщите мне версию плагина MySQL, которым Вы пользуетесь. 3) Напишите имена полей в таблице с транспортом.
www.weddew-shop.ru
Сообщение отредактировал Weddew - Вторник, 02.04.2013, 16:20 |
| |
|
|
| makr0o | Дата: Вторник, 02.04.2013, 16:49 | Сообщение # 190 |
|
Новенький
Группа:
Пользователи
Сообщений: 39
Награды: 0
Город: Киев
Репутация: 8
Замечания: 0%
Статус: 
| Цитата (Weddew) У Вас не правильно написан код. Это да Цитата (Weddew) 2) Для того чтобы Вам мог помочь, сообщите мне версию плагина MySQL, которым Вы пользуетесь. SA-MP MySQL plugin R5Добавлено (02.04.2013, 16:23) --------------------------------------------- plugin R5 написано в инклуде сверху, а в консоли пишет MySQL plugin R6-2 successfully loaded. Добавлено (02.04.2013, 16:27) --------------------------------------------- Имена полей: ID X Y Z A C1 C2 R Добавлено (02.04.2013, 16:49) --------------------------------------------- Weddew, спасибо, я уже решил Может кому надо будет: Код stock SpawnVehiclesJob() { new vehicleid,Float:X,Float:Y,Float:Z,Float:A,c1,c2,r,query[500]; format(query,sizeof(query),"SELECT * FROM `vehiclesjob`"); mysql_query(query); mysql_store_result(); for(new i;i<mysql_num_rows();i++) { mysql_fetch_row_format(query, ","); sscanf(query,"p<,>iffffiii",vehicleid,X,Y,Z,A,c1,c2,r); AddStaticVehicleEx(vehicleid,X,Y,Z,A,c1,c2,r); } }
|
| |
|
|
| Anthony | Дата: Вторник, 02.04.2013, 20:18 | Сообщение # 191 |
|
Уверенный в себе
Группа:
Publishers
Сообщений: 211
Награды: 4
Замечания: 0%
Статус: 
| Цитата (Weddew) Сделать то можно, но проблема появиться следующая: при перевороте транспорта, если в нем нет водителя, он не будет загораться. Откроешь секрет?
|
| |
|
|
| makr0o | Дата: Среда, 03.04.2013, 00:48 | Сообщение # 192 |
|
Новенький
Группа:
Пользователи
Сообщений: 39
Награды: 0
Город: Киев
Репутация: 8
Замечания: 0%
Статус: 
| Код stock HousesLoad() { new query[350],str[100]; format(query,sizeof(query),"SELECT * FROM `houses`"); mysql_query(query); mysql_store_result(); for(new i;i<mysql_num_rows();i++) { mysql_fetch_row_format(query, ","); sscanf(query,"p<,>iffffffis[23]ii", houseInfo[i][hID], houseInfo[i][henX], houseInfo[i][henY], houseInfo[i][henZ], houseInfo[i][hexX], houseInfo[i][hexY], houseInfo[i][hexZ], houseInfo[i][howned], houseInfo[i][howner], houseInfo[i][hprice], houseInfo[i][hiID]); if(houseInfo[i][howned] == 0) { format(str,sizeof(str),"[Ñâîáîäåí]\n[Öåíà:%d]",houseInfo[i][hprice]); CreatePickup(1273,2,houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],-1); CreatePickup(1272,2,houseInfo[i][hexX],houseInfo[i][hexY],houseInfo[i][hexZ],-1); CreateDynamicMapIcon(houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],31,-1,0,-1); CreateDynamic3DTextLabel(str,COLOR_ORANGE,houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],20.0); } else if(houseInfo[i][howned] == 1) { format(str,sizeof(str),"[Çàíÿò]\n[Öåíà:%d]\n[Âëàäåëåö:%s]",houseInfo[i][hprice],houseInfo[i][howner]); CreatePickup(1273,2,houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],-1); CreatePickup(1272,2,houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],-1); CreateDynamicMapIcon(houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],32,-1,0,-1); CreateDynamic3DTextLabel(str,COLOR_ORANGE,houseInfo[i][henX],houseInfo[i][henY],houseInfo[i][henZ],20.0); } printf("i=%i.....ID %d, X:%f,Y:%f,Z:%f,OWNED:%d",i,houseInfo[i][hID], houseInfo[i][henX], houseInfo[i][henY], houseInfo[i][henZ], houseInfo[i][howned]); } } Ни 3д текст, ни пикапы не создаются, хотя в консоли показывает: Код MySQL connection: <img rel="usm" src="http://www.samp-rus.com/Smiles_for_forum/1.gif" border="0" align="absmiddle" alt=":)" /> i=0.....ID 0, X:2123.290039,Y:774.156005,Z:11.445300,OWNED:1 i=1.....ID 1, X:2094.149902,Y:773.504028,Z:11.453100,OWNED:0 спасибо.
|
| |
|
|
| [[[WampiR]]] | Дата: Среда, 03.04.2013, 10:51 | Сообщение # 193 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 202
Награды: 2
Город: Омск
Репутация: -22
Замечания: 20%
Статус: 
| Люди подскажите. Вот я создал информационный пикап. Но он слишком часто появляется. Ну вот допустим я на него наступил и открывается вот это: [pwn] if(pickupid == pomosh[1]) { new str[785]; new line1[100] = "\nЗдравствуйте. Сейчас я вам расскажу как играть на сервере,"; new line2[100] = "куда следует идти первым делом, где можно заработать денег,"; new line3[100] = "получить права, вступить в организацию и многое другое."; new line4[100] = "\n{FFFFFF}Советуем внимательно прочесть данное обучение, чтобы в даль-"; new line5[100] = "нейшем не возникало вопросов по игре."; format(str,sizeof(str),"%s\n%s\n%s\n%s\n%s", line1, line2, line3, line4, line5); ShowPlayerDialog(playerid,19979, 0, "{FFFF00}Помощь новичкам",str,"Далее","Назад"); } return 1; }[/pwn] pomosh[1] = CreatePickup(1239,23,-2166.4248,644.2990,1058.1016); Ну он как бы сказать слишком часто появляется. Даже не успеваю посмотреть меню.
|
| |
|
|
| makr0o | Дата: Среда, 03.04.2013, 11:14 | Сообщение # 194 |
|
Новенький
Группа:
Пользователи
Сообщений: 39
Награды: 0
Город: Киев
Репутация: 8
Замечания: 0%
Статус: 
| [[[WampiR]]], попробуй изменить 23 тип пикапа на 2, к примеру. Вот список всех типов: Код 0 Пикап не отображается.
1 Не берется, существует все время.
2 Берется, через некоторое время появляется заново.
3 Берется, появляется снова после смерти
4 Исчезает через некоторое время после создания (используется для выпадающего оружия?)
5 Исчезает через некоторое время после создания (используется для выпадающего оружия?)
8 Берется, но не производит эффекта. Исчезает автоматически.
11 Взрывается через несколько секунд после создания (бомбы?)
12 Взрывается через несколько секунд после создания.
13 Медленно опускается к земле.
14 Берется, но только в машине. Падает сквозь объекты, созданные по CreateObject, и т.п.
15 Берется, появляется снова после смерти.
19 Берется, но не производит эффекта (иконки информации?)
22 Берется, появляется снова после смерти.
23 Берется, но не исчезает.
|
| |
|
|
| [[[WampiR]]] | Дата: Среда, 03.04.2013, 12:13 | Сообщение # 195 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 202
Награды: 2
Город: Омск
Репутация: -22
Замечания: 20%
Статус: 
| makr0o, Нет тут дело не в модели пикапа а в самом коде. Я все перепробывал модели уже. На одном сервере когда наступаешь на пикап он появляется один раз но когда снова наступаешь он опять появляется и независимо от времени. А тут все не подходят значит дело в коде.
|
| |
|
|
|
 |
|
 | |
| |
|