Архив за 18.05.2011

Pawn. Создание и работа с функциями

Функции безусловно важны в программировании. Они упрощают код и делают его понятным для всех.

Создать функцию можно несколькими способами:

stock func_name() // stock - резервирует адрес в памяти, поэтому для функций рекомендуется использовать именно это
{
 
}
func_name() // отличия от stock в том, что если функция не используется, то pawn компилятор выдаст предупреждение
{
 
}

Ещё одна особенность этих способов в том, что при не использовании функции, заданной с помощью этих способов, компилятор их игнорирует и в скомпилированную программу они не включаются. Это очень удобно при использовании различных библиотек с огромным количеством функций, расширяющих функционал Pawn. Читать дальше »

Открыл я блог…

Время настало, старый добрый php-fusion отправляется на пенсию. Теперь здесь будет господствовать wordpress. Все файлы и статьи со старого движка перенесены, всё стало гораздо удобнее и красивее, дизайн сохранился в моём стиле:) Тут буду писать что-нибудь интересное, когда найду время… Глядишь, что-нибудь путное получится:)

Pawn. Операторы

Операторы — это команды языка программирования, которые выполняют последовательность инструкций.

Операторы присваивания

Все операторы присваивания идентичны с операторами присваивания языка C.

x = a; // присвоит переменной x значение переменной a
x = a + b; // присвоит переменной x сумму значений переменных a и b
x = a - b; // присвоит переменной x разность значений переменных a и b
x = a * b; // присвоит переменной x произведение значений переменных a и b
x = a / b; // присвоит переменной x деление значений переменных a на b
x = a % b; // присвоит переменной x остаток от деления значения переменной a на b

Все эти операторы имеют сокращённый синтаксис(этот синтаксис транслируется на уровне компиляции и на скорость выполнения кода никак не влияет), выглядит он следующим образом:

x += a; // присвоит переменной x сумму значений переменных x и a, идентично x = x + a
x -= a; // присвоит переменной x разность значений переменных x и a, идентично x = x - a

и так далее.
Существуют ещё побитовые операторы, о которых рассказано в одной из следующих статей.

Читать дальше »

Pawn. Подробнее о переменных и массивах

Переменная в Pawn (как и в большинстве языков) — это поименованная, либо адресуемая область памяти, имя или адрес которой можно использовать для осуществления доступа к данным, находящимся в переменной или по данному адресу.

Если заглянуть «под капот» Pawn, то мы увидим, что на самом деле в этом языке отсутствует типизация. В действительности каждая переменная является одной четырёхбайтовой ячейкой. Но, для простоты повествования, опустим подробности и будем считать, что в Pawn для переменных отведено несколько типов.

Переменные бывают нескольких типов: целые(Integer), дробные(Float), строковые(Char).

Они создаются следующим образом:

new x; // переменная типа Integer(целое число)
new Float:x; // переменная типа Float(число с плавающей запятой, проще - дробное)
new x[12]; // переменный массив типа char(в каждой ячейке массива один символ)

И эта статья о том, как работать с каждым типом.

Читать дальше »

Pawn. Основы

Вступление

Прочитав различные Pawn уроки(иногда именуемые как Pawno уроки, что в корне неправильно) в Интернете, я понял, что большинство из них нельзя читать новичкам, ибо это может привести к деформации мировоззрения о программировании в целом… В связи с этим, я решил начать писать свою серию уроков по языку Pawn. Постараюсь излагать всё как можно более понятно и подробно.
Собственно, первый Pawn урок, дальше — больше, лучше. Следить за уроками можно по метке pawn уроки

Основы

Pawn — компилируемый язык программирования. Язык не приобрел широкой популярности, самые знаменитые проекты, использующие этот язык, это: AMXX и SA-MP.

Синтаксис языка имеет ‘Си-подобный’ вид. Форматы исходного файла: p, pwn, inc. Формат компилированного файла — amx.

Есть несколько редакторов Pawn скриптов, разработчики SA-MP по умолчанию предлагают использовать редактор Pawno.

Нам необходимо иметь SA-MP сервер, библиотеки(инклуды) и компилятор, всё это можно скачать с сайта sa-mp.com.

В каталоге pawno/ есть файл new.pwn, с ним то мы и будем работать.

Читать дальше »

Перейти к верхней панели