Начало работы с Pawn

В теме 14 сообщений

Человек-редиска
Активный

Начнем наш урок. Что такое павно?

Павно язык программирования используемый в SAMP для создание мода и файл скриптов(ФильтрСкриптов)!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Далее! есть в павно при скачке любого мода Include что это такое? Это файлы в котором содержатся функции, например подключения функции к моду(Павно) #include <streamer> #include <mail>. Без их подключение мод работать не будет!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Если сервер при компл павно не тянет попробуйте в начале/ в конце мода встать main(В инете)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Есть простые функции павно : print- отправляет строку в консоль сервера!

Пример: 

main()
{
	print("Hello, World!");
}

Функция - printf отправляет форматированную строку  в консоль сервера!

Для форматирования используются следующие заполнители:
%b — двоичная система счисления
%c — один символ
%d — целое число
%f — дробное число
%i — целое число
%s — строка
%x — шестнадцатеричная система счисления
%% — знак %

Пример:

Main()
{
	new x = 1;
	printf("x = %d",x);
}

                                                                                                  Авторские права функций: ziggi — blog

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Цикл- позволяет бесконечно кол-во раз выполнять одно и тоже действие!(Смотря какой while или к примеру do. while).

Например код без цикла:
 

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

SendClientMessage(Playerid,0xFFFFFFFFFF,"");

Код с циклом:

new 8;

while(a++) < 10)

{

       SendClientMessage(playerid, 0xFFFFFFFFFFFFFF,"");

}

2 явно проще, бывают несколько циклов:

while - в общих чертах будет вести цикл до бесконечности 

for -  Упрощенный вид while, действует с интервалом 

do...while -  Выполняются сначала основное потом остальное, while же идет все по порядку!

swith...case -  Какую значительную переменную поставите то и будет.

Для окончания цикла используется оператор Break

for(new a; a < 50; a++)
{
if(a == 10 && GetPlayerMoney(a) == 100) //Если у игрока под ID 10 имеется ровно 100 долларов
{
break; //Завершаем действие цикла
      }
}

Бесконечный цикл указывается через for и если не указать условие!

                                                                                              Авторские права циклов: Dymov1203

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Sleash
Завсегдатый
В 09.01.2022 в 13:45, Donaldo_Farekelka сказал:

Начнем наш урок. Что такое павно?

Павно язык программирования используемый в SAMP

Прошу, в следующий раз перед созданием уроков посети гугл...

Павно - это программа для редактирования кода.

А вот уже PAWN - сам язык программирования.

+ инклуды создают из себя набор функций (нативов) только в связке с плагинами (streamer.inc + stramer.dll / .so)

А все оставшиеся инклуды - дополнения 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Sleash
Завсегдатый

@glvde. Только увидел))

@Donaldo_Farekelka на будущее:

0xFF0000AA - красный цвеТ, теперь разбор:

0x - обозначение цвета вне кавычек и т.д.

FF0000 - HTML-код цвета

AA - прозрачность

ВСЁ, после икса только 8 символов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

Смешно, на самом деле, смотреть на то, как новички пытаются делать какие-либо уроки, не видя элементарных ошибок в коде и в тексте.
Не знаю, какую цель вы тем самым преследуете, но мой вам совет - прекращайте 

"(Смотря какой while или к примеру do. while).". Этот отрывок вообще убил:

 

Спойлер

new 8// - что это?

while(a++) < 10// - вторая скобка, откуда она и зачем? использование цикла неверное.
{
       SendClientMessage(playerid, 0xFFFFFFFFFFFFFF,""); // - 0xFFFFFFFFFFFFFF, что?
}

//

//нормальный, адекватный пример:
new a;

while(a++ < 10) {
    SendClientMessage(playerid, 0xffffffff" ");
}

 


Убедительная просьба к автору: Вы если копируете, то копируйте хотя-бы правильно.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Cawfee
Великий Гуру
2 минуты назад, glvde. сказал:

Убедительная просьба к автору: Вы если копируете, то копируйте хотя-бы правильно.

 

Наверное, лучше попросить автора вообще воздержаться копирований, а попробовать сделать все самостоятельно: возможно, и сам что-нибудь новое для себя откроет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Человек-редиска
Активный

Кхм, нашнем нашу беседу значит по полочкам: 

@Cawfee Согласен( не совсем )

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

А так-же были оставлены ссылки на темы(авторские права)

придраться не к чему, но люди же найдут к чему хоть и не к чему (Слово удалено системой)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

@glvde. Убедительная просьба: купить мозги, если не понял перейди по ссылке основной где я взял тему, ПОЧЕМУ ИМЕННО НАДО ЕСЛИ НЕ ПОНЯЛ ИДТИ И ОБСИРАТЬ ТЕМЫ?

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

@Sleash`en Спасибо.

 

Отредактировано пользователем Donaldo_Farekelka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
LoX_1337
Активный
В 09.01.2022 в 13:45, Donaldo_Farekelka сказал:

main() { print("Hello, World!"); }


Идеально. На этом пожалуй и закончим. ;)
 

В 09.01.2022 в 13:45, Donaldo_Farekelka сказал:

Для форматирования используются следующие заполнители: %b — двоичная система счисления %c — один символ %d — целое число %f — дробное число %i — целое число %s — строка %x — шестнадцатеричная система счисления %% — знак %


Не все перечислили. 

 

В 09.01.2022 в 13:45, Donaldo_Farekelka сказал:

Пример:


Main()
{
	new x = 1;
	printf("x = %d",x);
}


Идеальный пример. :bravo:

 

35 минут назад, Donaldo_Farekelka сказал:

Убедительная просьба: купить мозги, если не понял перейди по ссылке основной где я взял тему, ПОЧЕМУ ИМЕННО НАДО ЕСЛИ НЕ ПОНЯЛ ИДТИ И ОБСИРАТЬ ТЕМЫ?


Вы хотя-бы понимаете часть кода которую вы написали, прежде чем кого обвинять ? 

Лучше-бы вы хоть чуть чуть прочитали основы, прежде создавать такой хлам. 2022 год на дворе, в интернете полным полно информации, даже больше чем надо, так почему-бы не воспользоваться ? Так нет, мы будем дальше создавать свои МеГаКрУтЫeМоДы которые поломаются за считанные секунды.

Отредактировано пользователем LoX_1337

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
danya_white
Старожил

На самом деле выскажу своё мнение, на счет некоторых очень крутых комментаторов, которые умеют только комментировать, человек в какой то мере все-ровно постарался, да возможно у него недостаточно навыков, и он взял код с интернета, он только учиться, но все-же, да есть адекватные комментаторы, которые указывают на ошибки, ну есть такие которым лишь бы показать своё я, какой я тру кодер, и всезнающий, за счет недостаточно опытных поднять своё самооценку, очень сильно, прям молодцы! Нет, чтобы поддержать, помочь человека, мы лучше его будет засирать, не буду говорить о ком этот весь текст, я думаю они сами поймут) 

Отредактировано пользователем danya_white

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
LoX_1337
Активный
24 минуты назад, danya_white сказал:

да возможно у него недостаточно навыков, и он взял код с интернета, он только учиться, но все-же


Нету слов. Откуда берутся ваши мысли - неизвестно. 

 

24 минуты назад, danya_white сказал:

ну есть такие которым лишь бы показать своё я, какой я тру кодер, и всезнающий


Можете аргументировать свои слова ? (желательно с доказательствами)

 

24 минуты назад, danya_white сказал:

Нет, чтобы поддержать, помочь человека, мы лучше его будет засирать, не буду говорить о ком этот весь текст, я думаю они сами поймут) 


Так может люди не будут принимать заказы ? Сядем и будем отвечать как попугаи одно и тоже, чтобы мир полностью отупел. Вместо того чтобы хотя-бы чуть-чуть пошевелить мозгами и зайти в интернет. Действительно, хорошая идея danya_white, без вас мы бы не додумались.

Отредактировано пользователем LoX_1337

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
danya_white
Старожил
9 минут назад, LoX_1337 сказал:


Нету слов. Откуда берутся ваши мысли - неизвестно. 

 


Можете аргументировать свои слова ? (желательно с доказательствами)

 


Так может люди не будут принимать заказы ? Сядем и будем отвечать как попугаи одно и тоже, чтобы мир полностью отупел. Вместо того чтобы хотя-бы чуть-чуть пошевелить мозгами и зайти в интернет. Действительно, хорошая идея danya_white, без вас мы бы не додумались.

Не видел не одной вашей работы на этом форуме, и я же не сказал что речь идет именно о вас, просто относиться нужно с понимаем к человеку, я думаю критиковать человека, который мало в этом понимает, как говориться предложите свои варианты, а не просто напишите "Идеальный пример" как вы сделали, низко очень, я просто высказал свою позицию, согласны вы, нет, мне все-ровно честно, свои навыки нужно делом показывать, а не словами)

Отредактировано пользователем danya_white

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
LoX_1337
Активный
12 минут назад, danya_white сказал:

Не видел не одной вашей работы на этом форуме


Это имеет смысл ? Все простые работы уже есть в интернете, делать миллионную копию нет желание. Масштабные работы для публичного доступа бессмысленны. Вы действительно ничего не понимаете ? 

 

12 минут назад, danya_white сказал:

о вас, просто относиться нужно с понимаем к человеку, я думаю критиковать человека, который мало в этом понимает


А они и не пытаются понимать. Такие личности всё время хотят на халяву. Им ваши слова, как листик на деревне, висел висел и упал. Такие элементарные вещи уже в интернете миллион лет, они проста не хотят прикладывать усилия или вы это не понимаете ? 

 

12 минут назад, danya_white сказал:

а не просто напишите "Идеальный пример" как вы сделали, низко очень


Я его как-то оскорбил или унизил этими словами ?

 

12 минут назад, danya_white сказал:

свои навыки нужно делом показывать, а не словами)


А кто говорил, что я хочу демонстрировать свои навыки ?

Отредактировано пользователем LoX_1337

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
danya_white
Старожил
6 минут назад, LoX_1337 сказал:


Это имеет смысл ? Все простые работы уже есть в интернете, делать миллионную копию нет желание. Масштабные работы для публичного доступа бессмысленны. Вы действительно ничего не понимаете ? 

 


А они и не пытаются понимать. Такие личности всё время хотят на халяву. Им ваши слова, как листик на деревне, висел висел и упал. Такие элементарные вещи уже в интернете миллион лет, они проста не хотят прикладывать усилия или вы это не понимаете ? 

 


Я его как-то оскорбил или унизил этими словами ?

 


А кто говорил, что я хочу демонстрировать свои навыки ?

А смысл тогда от всего этого, я думаю если вы его критикуете, то должны своё что-то предложить, а так просто ну незнаю, бредятина какая то получается)

Отредактировано пользователем danya_white

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Dekmveka
      От Dekmveka
      Здравствуйте, уважаемые пользователи форума PAWNO-RUS.
       
      В этой теме хочу поделиться видеоуроками, ориентированных на новичков, которые сейчас начинают только изучать pawn. 
      Хочу сказать сразу, я не профессиональный блогер с крутым оборудованием, поэтому если что за какие то погрешности в съемке заранее извиняюсь.
      Хотелось бы попросить не писать, что типа pawn и samp уже умер, неактуален, уроков и так полно и так далее и тому подобное. Я лишь просто занимаюсь своим увлечением и решил делиться знаниями с новичками.
      Далее на канале после плейлиста с основами планируется выложить плейлист по MySQL и максимально подробно всё рассказать о MySQL, будет старая добрая рубрика "Мод с нуля" (но на основе плагинов, стандартов и др. актуальных в 2025-2026 году). 
       
      Также хочу сказать, что есть также телеграмм канал. 
      На данный момент там есть ветка для общения, ветка "Инструменты" (там лежат архивы со всем нужным + есть навигационный пост, я просто поделил всё на категории и просто вставил ссылки на архивы которые туда же выложил. Можете зайти посмотреть если интересно). Также в телеграмм канале потом будут исходные файлы с плейлиста "Мод с нуля" и других плейлистах, пока что говорить подробно не буду что буду ещё выкладывать. 
       
      В общем, я даю ссылки, кому интересно, можете смотреть.
      [Часть 1]: Архитектура ядра SAMP || Основы программирования PAWN/PAWNO  -  *кликабельно*
      [Часть 2]: База мода, переменные, format() || Основы программирования PAWN/PAWNO  -  *кликабельно*
      Telegram канал  -  *кликабельно*
       
      Желаю всем приятного просмотра, а также успехов в обучении 
    • Antoxa39
      От Antoxa39
      Здарова бандиты. 
      Вообщем, в этом уроке я расскажу и покажу как подключить Базу Данных к MySQL.
      Не регистрацию,и не в готовом моде где просто пользователя пароль хост и т.д меняете.
      А подключение с нуля.
       
      1.Нам понадобится MySQL.  Я использую R39-6. Скачать 
      2.Приступаем к подготовительному этапу.
      Заходим в Pawn и подключаем MySQL чуть ниже инклюда a_samp. #include <a_mysql>
      Должно быть так.
      После этого отчищаем мод от хлама. Должно получится вот так: жмЫкс
      3.Подключение
      Дальше нам требуется создать переменную,эта переменная будет хранить ИД подключения. в MySQL R39 создаем простую переменную.
      new dbHandle;  В MySQL R41 создаем так:
       new MySQL:dbHandle;  
      теперь создаем Константы
      #define Host "127.0.0.1" #define User "root" // это если вы используете Denwer. Если хостинг указываете другого пользователя. #define DataBase "urok" #define Password_SQL ""//Если вы на хостинге ставите пароль,для Denwer пароль не требуется, чуть позже скажу как его установить Все, теперь переходим в public OnGameModeInit()
      public OnGameModeInit() {     dbHandle = mysql_connect(Host,User,DataBase,Password_SQL); // приравниваем нашу переменную с ИД подключением к коннекту к базе данных. Извиняюсь если коряво обьяснил. Это для R39     return 1; } Для R41
      public OnGameModeInit() {     dbHandle = mysql_connect(Host,User,Password_SQL,DataBase);// В R41 поменялись местами Пароль и База     return 1; } Если сделаем чтобы при подключении к базе выводилось сообщение о том,подключилось или нет. Я сделаю это без switch. Чтобы сильно не загружать смотрящих этот урок.
      Делаем все там же в public OnGameModeInit()
      public OnGameModeInit() {     dbHandle = mysql_connect(Host,User,DataBase,Password_SQL);     if(mysql_errno())     {         printf("Подключение к базе данных %s не удалось.",DataBase); // %s означает строку. То есть будет выводить название базы данных которое указано в #define DataBase     }     else     {         printf("Подключение к базе данных %s успешно",DataBase);     }     return 1; } Все, с этим закончили. Остался последний этап, это отключение базы данных когда мод выключается.
      Идем в паблик OnGameModeExit()
      public OnGameModeExit() {     mysql_close(dbHandle);     return 1; } Все. База данных подключена.
      Чтобы скачать Denwer жмите сюды: плямп
      Для установки можете перейти по этой ссылке: УСТАНОВКА
    • sinvays
      От sinvays
      Продаётся проект Criminal RolePlay с 8-летней историей.

      Проект заморожен и не используется длительное время.
      Потратил на него около 250.000 рублей, продаю за приемлимую цену.

      В комплекте:
      Полноценный игровой мод Мобильный лаунчер с Figma-дизайном Кэш клиентской части Все версии оформления проекта Все группы проекта Criminal RolePlay Шаблоны всех версий сайта, включая ранее не выпущенный шаблон Модуль автодоната YooMoney Помощь с установкой игрового мода на хостинг Цена:
      49 900₽ — за весь комплект.
      Возможен торг при адекватных предложениях.

      Важное:
      Проект продаётся в одни руки. Если в течение месяца не найдётся покупатель, будет рассмотрена продажа по частям.
      Связаться: https://vk.com/rosetta
    • sinvays
      От sinvays
      Продаётся проект Criminal RolePlay с 8-летней историей.

      Проект заморожен и не используется длительное время.
      Потратил на него около 250.000 рублей, продаю за приемлимую цену.

      В комплекте:
      Полноценный игровой мод Мобильный лаунчер с Figma-дизайном Кэш клиентской части Все версии оформления проекта Все группы проекта Criminal RolePlay Шаблоны всех версий сайта, включая ранее не выпущенный шаблон Модуль автодоната YooMoney Помощь с установкой игрового мода на хостинг Цена:
      49 900₽ — за весь комплект.
      Возможен торг при адекватных предложениях.

      Важное:
      Проект продаётся в одни руки. Если в течение месяца не найдётся покупатель, будет рассмотрена продажа по частям.
      Связаться: https://vk.com/rosetta
    • Elvis
      От Elvis
      Настоящим информируем о начале набора сотрудников в нашу студию "AlinSA Studios". В рамках текущего проекта "VanguardRP", основанного на мотивах CRMP, мы ищем профессионалов и энтузиастов для выполнения следующих должностей:
       
      1. Технические специалисты
       
      Требования:
       
      | Базовые знания в области информационных технологий
      | Понимание структур кода и принципов работы компиляторов
      | Готовность к обучению и развитию профессиональных навыков
      | Иметь базовое представлении ЯП "Pawn" или "Kotlin" и "Java".
       
      Обязанности:
       
      | Поддержка технической инфраструктуры проекта
      | Участие в разработке и оптимизации программных решений
      | Взаимодействие с командой разработки для внедрения новых функций
       
      2. Пиар-ассистенты
       
      Требования:
       
      | Опыт работы в сфере SMM, маркетинга или PR
      | Навыки взаимодействия с аудиторией и ведения социальных сетей
       
      Обязанности:
       
      | Продвижение проекта в социальных сетях
       
      3. Дизайнеры
       
      Требования:
       
      | Наличие портфолио с примерами выполненных работ (не обязательно, желательно)
      | Владение графическими редакторами ! (Photoshop и Figma)
      | Креативность, внимательность к деталям и способность работать в сжатые сроки
       
      Обязанности:
       
      | создание графического контента для соцсетей, сайта и внутриигровых материалов
      | Разработка дизайна интерфейсов, баннеров, логотипов и иллюстраций
      | Участие в визуальном оформлении проекта
       
      4. Геймдизайнеры
       
      Обязанности:
       
      | Разработка игровых механик, правил взаимодействия и систем баланса
      | Проработка сюжета, персонажей и сценариев для создания эмоциональной связи с игроками
      | Проектирование уровней, задач и сценариев для обеспечения разнообразия игрового процесса
      | Взаимодействие с командой разработчиков, художников и звукорежиссёров для достижения согласованности элементов игры
      | Участие в тестировании прототипов, выявление проблем и балансировка игрового процесса
       
      5. Рупоры
       
      Цель роли: Обеспечить эффективное взаимодействие с целевой аудиторией, формировать положительный имидж проекта, своевременно информировать участников о новостях, обновлениях и
      мероприятиях, а также модерировать сообщества для поддержания комфортной и безопасной среды.
       
      -————————-
      Условия работы:
       
      Обучение и постоянная поддержка со стороны команды
      Гибкий график работы / удалённый формат (обсуждается индивидуально)
       
       
      Если вы заинтересованы в присоединении к нашей команде или хотите получить дополнительную информацию, обращайтесь по следующему контакту:
      Telegram: @AntonLegost
       
       
      Благодарим за внимание! Надеемся на плодотворное сотрудничество.
       
      p.s Новички приветствуются. Для пополнение портфолио и наработки опыта.
       
      С уважением,
      Команда "AlinSA Studios"