 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
[Архив #2] Вопросы ответы по SAMP [от 11.01.2012]
| |
| Великс | Дата: Среда, 11.01.2012, 23:37 | Сообщение # 1 |
|
Мастер джэдай
Группа:
Модераторы
Сообщений: 3931
Награды: 287
Город: Мухосранск
Репутация: 8429
Замечания: 0%
Статус: 
| [move]-= Вопрос | Ответ =-[/move]
В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.
Новичкам:
- Внятно объясняйте вашу проблему, если вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
- Помощь идет только по желанию пользователя, если вам человек помог вам только частично, не нужно начинать поливать его грязью.
- Возможно тип вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
- В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за вас. (!!!)
- Если вы хотите отблагодарить пользователя, жмите на кнопку
. (Только для продвинутых, и выше) - Если вы уже задавали вопрос, и не получили на него ответа, лучше напишите в ЛС одному, из участников группы Support, чем зафлуживать тему.
Скриптерам: - Не оскорблять новичков.
- Не флудить сообщениями, подобных "Закрой PAWNO и иди делай уроки".
- Не посылать в поиск. Юзер итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
- Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.
[cut=freestyle] ПРИНЕСЛА СОРОКА В РОТЕ ПРИВОРОТ , СВЯЗАЛАСЬ НА ШЕЕ ЛОЗА И БЫЛ ПОЛНЫЙ ПИ**ЕЦ, ОСЕНЬ С ЗИМОЙ, ЛЕТО С ВЕСНОЙ, ГУСЬ С ЛИСОЙ, ЕБ**ИСЬ ВО ТЬМЕ НОЧНОЙ. УЗЕЛ ЗАВЯЗАЛСЯ, ПЕПЕЛ РАЗМЕТАЛСЯ И ЛИСА ЗАБЕРЕМЕНЕЛА. ВМЕСТЕ ВЕК ВЕКОВАТЬ, ПУТУ НЕ РАЗВЯЗАТЬ. ТРАВА ПЕРЕПЛЕТИСЬ, УЗЕЛ ЗАВОРОЖИСЬ. ЛЕНАРУ ДАЙ УМА И ЛЕНУ НА ВЕЛЕ НЕ ОТРАЗИСЬ,ЕБ*СЬ ЕБ*СЬ ЕБ*СЬ © Хасан [/cut]
Сообщение отредактировал Weddew - Понедельник, 09.06.2014, 03:17 |
| |
|
|
| Weddew | Дата: Понедельник, 04.02.2013, 19:43 | Сообщение # 5821 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Sa|N|eK) Помоги плиз а то я в этом неочень шарю! Заранее спасибо!! Например, у Вас: Код format(string, sizeof(string), "Hello World"); Можно разбить так: Код strcat(string, "Hello "); strcat(string, "world");
www.weddew-shop.ru
Сообщение отредактировал Weddew - Понедельник, 04.02.2013, 19:43 |
| |
|
|
| xBraiNx | Дата: Понедельник, 04.02.2013, 21:33 | Сообщение # 5822 |
|
Новенький
Группа:
Пользователи
Сообщений: 69
Награды: 0
Город: Волгоград
Репутация: -25
Замечания: 0%
Статус: 
| Извиняюсь за нубский вопрос, но на каком языке пишутся инклуды?
|
| |
|
|
| Borog | Дата: Понедельник, 04.02.2013, 22:08 | Сообщение # 5823 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| xBraiNx, на pawn, как и моды
Silver Break http://s-break.ru/ http://vk.com/sbreak
|
| |
|
|
| Sa[N]eK | Дата: Понедельник, 04.02.2013, 22:18 | Сообщение # 5824 |
|
Новенький
Группа:
Пользователи
Сообщений: 28
Награды: 0
Репутация: 0
Замечания: 0%
Статус: 
| Weddew, приведи пожалуста пример по моей строке как начать разбивку а дальше я попробую сам Код ShowPlayerDialog(playerid, 1234, DIALOG_STYLE_MSGBOX,"{FFFFFF}Правила сервера {FFA500}Vida Virtual |RPG|:","\n{FFA500}Ники игроков:\n\n{FFFFFF}- Ники должны состоять из Имени_Фамилии с заглавных букв.\n- Ник не должен быть похож на ник кого-либо из других игроков.\n- Ник не должен содержать нецензурных и ругательных слов.\n\n{FFA500}Правило чатов:\n\n{FFFFFF}- Запрещена любая реклама, некасающаяся ресурсов Vida Virtual.\n- Запрещен флуд, мат, оскорбления, засорение публичных чатов.\n- Запрещено писать в чаты полностью верхним регистром(Капс).\n\n{FFA500}Игровой процесс:\n\n{FFFFFF}- Запрещено исользовать любые читы, трейеры, дающие преимущество над другими.\n- Запрещен SpawnKill - убийство игроков на месте их возрождения.\n- Запрещено использовать любые баги и недоработки игрового сервера.\n- Запрещено подстрекать других игроков на нарушение правил сервера.\n- Запрещен DriveBy(ДБ) - Убийство игроков с помощью транспорта.\n- Запрещены любые продажи игровых благ за реальные деньги.\n\n{FFA500}Игровой аккаунт{FF0000}(Важно):\n\n{FFFFFF}- Запрещено передовать или продавать свой аккаунт вторым лицам.\n{FF0000}- Ни при каких условиях не давать свой пароль от аккаунта другим игрокам!\n- Администрация никогда не просит паролей от Ваших аккаунтов!\n{FFFFFF}- Советуем использовать сложные пароли во избежании взлома аккаунта.","В игру");
|
| |
|
|
| Fabervox | Дата: Вторник, 05.02.2013, 00:04 | Сообщение # 5825 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус: 
| Sa[N]eK, strcat(исходная, добавляемая). Просто вручную разбиваете на несколько кусков(у вас там на скрине несколько блоков текста как раз), создаете переменную с первым куском(или пустую), и потом выполняете функцию strcat(string, "содержимое следующего куска"), в итоге переменная содержит весь текст и просто вставляете её в виде аргумента к нужной вам функции.
[off]Честно говоря сам только попробовал конкатеацию в PAWN. В PHP это конечно удобней...[/off]
RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_ Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами. Закон сохранения сложности
Сообщение отредактировал Fabervox - Вторник, 05.02.2013, 00:07 |
| |
|
|
| Sa[N]eK | Дата: Вторник, 05.02.2013, 01:28 | Сообщение # 5826 |
|
Новенький
Группа:
Пользователи
Сообщений: 28
Награды: 0
Репутация: 0
Замечания: 0%
Статус: 
| Fabervox, ну вот как то разбил може неправильно но мод компилировался без ошибок!Только мне надо чтоб все это было в диалоговом окне ShowPlayerDialog(playerid, 1234, DIALOG_STYLE_MSGBOX а то при входе на серв оно не высвечиваеться и зайти на серв неполучаеться!!!!! Как мне это зделать?
Вот код который у меня получился Код new string[1234]; strcat(string, "{FFFFFF}Правила сервера {FFA500}Vida Virtual |RPG|:\n\n"); strcat(string, "{FFA500}Ники игроков:\n\n"); strcat(string, "{FFFFFF}- Ники должны состоять из Имени_Фамилии с заглавных букв.\n- Ник не должен быть похож на ник кого-либо из других игроков.\n- Ник не должен содержать нецензурных и ругательных слов. "); strcat(string, "{FFA500}Правило чатов:\n\n"); strcat(string, "{FFFFFF}- Запрещена любая реклама, некасающаяся ресурсов Vida Virtual.\n- Запрещен флуд, мат, оскорбления, засорение публичных чатов.\n- Запрещено писать в чаты полностью верхним регистром(Капс)."); strcat(string, "{FFA500}Игровой процесс::\n\n"); strcat(string, "{FFFFFF}- Запрещено исользовать любые читы, трейеры, дающие преимущество над другими.\n- Запрещен SpawnKill - убийство игроков на месте их возрождения.\n- Запрещено использовать любые баги и недоработки игрового сервера.\n- Запрещено подстрекать других игроков на нарушение правил сервера.\n- Запрещен DriveBy(ДБ) - Убийство игроков с помощью транспорта.\n- Запрещены любые продажи игровых благ за реальные деньги."); strcat(string, "{FFA500}Игровой аккаунт{FF0000}(Важно):\n\n"); strcat(string, "{FFFFFF}- Запрещено передовать или продавать свой аккаунт вторым лицам.\n{FF0000}- Ни при каких условиях не давать свой пароль от аккаунта другим игрокам!\n- Администрация никогда не просит паролей от Ваших аккаунтов!/n{FFFFFF}- Советуем использовать сложные пароли во избежании взлома аккаунта.\n\n"); strcat(string, "В игру");
|
| |
|
|
| Fabervox | Дата: Вторник, 05.02.2013, 13:37 | Сообщение # 5827 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус: 
| Sa[N]eK, ты не правильно разбил. Первый и последний strcat лишние. Первый это у тебя заголовок, а последний это надпись кнопки. Первый можно заменить на переменную, но не обязательно: Код new title[]; title = "{FFFFFF}Правила сервера {FFA500}Vida Virtual |RPG|:\n\n"; А потом просто в виде аргументов вписываешь в свою функцию. Код ShowPlayerDialog(playerid, 1234, DIALOG_STYLE_MSGBOX,title,string,"В игру","");
[off]Ну и ИМХО нет смысла делать так много stcat'ов, в твоем случае достаточно 3-4. Хотя можно впихнуть в переменные каждую строчку, и при нарушениях, брать из них содержимое. Но это не решение проблемы, а просто мое мнение.[/off]
RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_ Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами. Закон сохранения сложности
|
| |
|
|
| Weddew | Дата: Вторник, 05.02.2013, 14:41 | Сообщение # 5828 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Fabervox) Sa[N]eK, ты не правильно разбил. Первый и последний strcat лишние. Не согласен, при объявлении массива на языке Pawn, массив изначально пуст.
Добавлено (05.02.2013, 14:41) --------------------------------------------- Sa[N]eK, Код new string[1215]; strcat(string, "{FFA500}Ники игроков:\n\n"); strcat(string, "{FFFFFF}- Ники должны состоять из Имени_Фамилии с заглавных букв.\n- Ник не должен быть похож на ник кого-либо из других игроков.\n- Ник не должен содержать нецензурных и ругательных слов. "); strcat(string, "{FFA500}Правило чатов:\n\n"); strcat(string, "{FFFFFF}- Запрещена любая реклама, некасающаяся ресурсов Vida Virtual.\n- Запрещен флуд, мат, оскорбления, засорение публичных чатов.\n- Запрещено писать в чаты полностью верхним регистром(Капс)."); strcat(string, "{FFA500}Игровой процесс::\n\n"); strcat(string, "{FFFFFF}- Запрещено исользовать любые читы, трейеры, дающие преимущество над другими.\n- Запрещен SpawnKill - убийство игроков на месте их возрождения.\n- Запрещено использовать любые баги и недоработки игрового сервера.\n- Запрещено подстрекать других игроков на нарушение правил сервера.\n- Запрещен DriveBy(ДБ) - Убийство игроков с помощью транспорта.\n- Запрещены любые продажи игровых благ за реальные деньги."); strcat(string, "{FFA500}Игровой аккаунт{FF0000}(Важно):\n\n"); strcat(string, "{FFFFFF}- Запрещено передовать или продавать свой аккаунт вторым лицам.\n{FF0000}- Ни при каких условиях не давать свой пароль от аккаунта другим игрокам!\n- Администрация никогда не просит паролей от Ваших аккаунтов!/n{FFFFFF}- Советуем использовать сложные пароли во избежании взлома аккаунта.\n\n"); ShowPlayerDialog(playerid, 1234, DIALOG_STYLE_MSGBOX,"{FFFFFF}Правила сервера {FFA500}Vida Virtual |RPG|:",string,"В игру","");
www.weddew-shop.ru
Сообщение отредактировал Weddew - Вторник, 05.02.2013, 14:42 |
| |
|
|
| Fabervox | Дата: Вторник, 05.02.2013, 14:53 | Сообщение # 5829 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус: 
| Цитата (Weddew) Не согласен, при объявлении массива он на языке Pawn, массив изначально пуст. Я имел ввиду что он в одну переменную значения 3х аргументов вставил. А насчет заголовка в переменную, я и написал что не обязательно. [off]Просто я думаю даже тайтл достаточно длинный, поэтому читабельней будет если сделать переменную.[/off]
Weddew, вы случайно не знаете какие функции в PAWN заменяют explode и list или в какой библиотеке они есть?
RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_ Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами. Закон сохранения сложности
Сообщение отредактировал Fabervox - Вторник, 05.02.2013, 17:13 |
| |
|
|
| Weddew | Дата: Вторник, 05.02.2013, 17:26 | Сообщение # 5830 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Fabervox) Weddew, вы случайно не знаете какие функции в PAWN заменяют explode и list или в какой библиотеке они есть? Напишите подробнее.
www.weddew-shop.ru
|
| |
|
|
| Fabervox | Дата: Вторник, 05.02.2013, 18:20 | Сообщение # 5831 |
|
Уверенный в себе
Группа:
I'm V.I.P.
Сообщений: 235
Награды: 1
Город: Краматорск
Репутация: 217
Замечания: 0%
Статус: 
| Цитата (Weddew) Напишите подробнее. Я имел ввиду подобные PHP. explode($separator,$string) - разбирает строку по сепаратору, возвращает значения в массив, если массив не пуст, то дописывает. list() - присваивает переменным из списка значения подобно массиву. И может присвоить значения списку переменных из массива, в php следующий синтаксис: Код list($first,$second,$third) = $array;
Вот мне нужны аналоги на PAWN.
RP в мире - как мух в сортире, а нужного чуда не видать покуда..©_Z_ Как посмотришь, сколько тысяч строчек кода, в одном файле, сразу понимаешь почему моды делают годами. Закон сохранения сложности
|
| |
|
|
| Weddew | Дата: Вторник, 05.02.2013, 18:34 | Сообщение # 5832 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Fabervox, если я не ошибаюсь, то функция split аналог той, которую Вы указали, но только на Pawn. Код stock split(const strsrc[], strdest[][], delimiter) { new i, li; new aNum; new len; while(i <= strlen(strsrc)) { if(strsrc[i] == delimiter || i == strlen(strsrc)) { len = strmid(strdest[aNum], strsrc, li, i, 128); strdest[aNum][len] = 0; li = i+1; aNum++; } i++; } return 1; } Добавлено (05.02.2013, 18:34) --------------------------------------------- Пример использования: Код public OnFilterScriptInit() { new tmp[2][128]; split("Hello World!", tmp, ' '); print(tmp[0]); }
www.weddew-shop.ru
|
| |
|
|
| Sa[N]eK | Дата: Вторник, 05.02.2013, 18:56 | Сообщение # 5833 |
|
Новенький
Группа:
Пользователи
Сообщений: 28
Награды: 0
Репутация: 0
Замечания: 0%
Статус: 
| Weddew, и Fabervox, спасибо вам огромное вы мне очень помогли!!!!!
|
| |
|
|
| Jigga | Дата: Среда, 06.02.2013, 08:28 | Сообщение # 5834 |
|
Новенький
Группа:
Пользователи
Сообщений: 53
Награды: 0
Город: Владивосток
Репутация: 0
Замечания: 0%
Статус: 
| помогите исправить ошибки Код C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(41) : error 021: symbol already defined: "mysql_affected_rows" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(42) : error 021: symbol already defined: "mysql_close" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 021: symbol already defined: "mysql_connect" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 025: function heading differs from prototype C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 025: function heading differs from prototype C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(41) : error 021: symbol already defined: "mysql_affected_rows" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(42) : error 021: symbol already defined: "mysql_close" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 021: symbol already defined: "mysql_connect" C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 025: function heading differs from prototype C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : error 025: function heading differs from prototype C:\Users\Михаил\Documents\Misha\test mode\Thedrote\pawno\include\a_mysql.inc(43) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors. строчки 42 43 #define S_SQL_HOST "localhost" // IP адресс БД. #define S_SQL_USER "asd" // Login БД. #define S_SQL_DB "pro2" // Название БД. #define S_SQL_PASS "1111" // Пароль БД.
|
| |
|
|
| Anthony | Дата: Среда, 06.02.2013, 08:42 | Сообщение # 5835 |
|
Уверенный в себе
Группа:
Publishers
Сообщений: 211
Награды: 4
Замечания: 0%
Статус: 
| Здравствуйте! У меня проблема с рестартом,когда в игре пишу /gmx рестарт не делается, а в server.exe работает когда там ввожу gmx.скажите пожалуйста где что не так. else if(strcmp(cmd, "/gmx", true) == 0) { if (PlayerInfo[playerid][pAdmin] >= 8) { if (dostup[playerid] != 1) return SPD(playerid,2934,DIALOG_STYLE_INPUT,"Äîñòóï àäìèíèñòðàòîðà","Ââåäèòå ïàðîëü îò àäìèíèñòðàòèâíîé ïàíåëè","Îê","Îòìåíà"); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessage(playerid, COLOR_GREY, " "); SendClientMessageToAll(COLOR_YELLOW2,"::: {ECF2B6}Âíèìàíèå! Ïðîèñõîäèò ðåñòàðò ñåðâåðà, ýòî çàéì¸ò ìåíåå 30 ñåêóíä :::"); SendClientMessageToAll(COLOR_YELLOW2,"::: {ECF2B6}Àäìèíèñòðàöèÿ {E1F52F}***** RP {ECF2B6}ïðèíîñèò èçâèíåíèÿ, çà ïðåäîñòàâëåííûå íåóäîáñòâà :::"); format(string, sizeof(string), "~r~RESTART"); foreach(new i : Player) { new txtid; GameTextForPlayer(i, string, 5000, txtid); } GameModeExitFunc(); format(string, sizeof(string), "~r~RESTART"); } return true; } else if(strcmp(cmd, "/saveall", true) == 0) { if (PlayerInfo[playerid][pAdmin] >= 1) { SaveAccounts(); SaveMaterials(); SaveGZ(); OnPropUpdate(); SaveCarTuning(playerid); SaveBankMafia(); SaveHomeSbizz(); SaveBankFrac(); SendClientMessage(playerid,COLOR_GRAD1,"Ñîõðàíåíî"); } return true; }
|
| |
|
|
|
 |
|
 | |
| |
|