Данная статья предназначена для людей, не знающих принципов работы pawno. Pawno это упрощённый и адапртированый для сампа вариант с++.
В конце КАЖДОЙ строчки и функции должен стоять знак ;
В павно существуют паблики, после каждого паблика открывается поток, в нём открывается неограниченное количество потоков. В конце поток закрывается и ретёрнится (ставится return=0 или return=1).
Потоки, в которые вставляются функции, переменные и значения, открываются знаком { и закрываются знаком }
Паблики:
Паблики можно переводить самим, однако вот расшифровка сандартных:
OnGameModeInit
в этом паблике должно находится то, что будет происходить при запуске мода
OnPlayerConnect
что будет происходить при присоединении игрока
OnPlayerSpawn
что будет происходить когда заспавница игрок
OnPlayerCommandText
ягодка павно-сюда команды
OnPlayerDeath
сюда то, что будет при смерти игрока
OnPlayerDisconenct
при отключении игрока
---------
Функции:
Краткое описание некоторых функций:
замена id:
в переменных, где присутствует ид игрока, если хочешь, что бы функция выполнялась для игрока, приведшему команду в децйствие, пиши туды playerid, но если хочешь чтоб команда выполнялась для определённого ид, пиши туда номер ид.
Ну функции тоже можно самим перевести, вот стандартные
AddPlayerClass(id,x,y,z,a) - пихаецо в OnGameModeInit, добавляет новый скин в мод, в скобочках идёт (ид скина, координаты x y z a)
AddStaticVehicle(id,x,y,z,a,color1,color2) - присутствует тоже только в OnGameModeInit, добавляет в мод тачек, в скобочках (ид тачк, координаты, цвет1, цвет2) // существуют "таблицы цвета", в которых расписаны ид разных цветов, цвет с номером "-1" означает рандомный выбор цвета
SetPlayerHealth(id, points) - задаёт здоровье игрока, в скобках (ид игрока, кол-во хп)
SetPlayerArmour(id, points) - задаёт броню, скобки думаю понятны
SetPlayerColor(id, color) - задаёт цвет игрока(ника и значка на радаре), в скобках-(ид игрока, цвет) // для данной функции цвет отсчитывается в 16-ричной системе(код цвета далее как |CODE| ), вставляется в функцию в виде 0x|CODE|FF, например для чёрного (000000) цвет будет 0x000000FF, для красного (код FF0000) будет выглядеть так: 0xFF0000FF
SetPlayerPos(id, x,y,z) - координаты игрока, думаю расшифровывать скобки не надо.
После КАЖДОЙ функции должны стоять ";", например SetPlayerHealth(playerid, 100);
Это был только пример функций, на самом же деле их множество, но я надеюсь, используя логику и эти знания, можно будет легко догадаться о значениях и устройстве других функций
А теперь самое интересное:
команды!
В разных модах примеры команд выглядят по разному, так же есть несколько типов вида команд. Я покажу только стандартные, в кодировании strcmp (а не dcmd, например).
Команда вставляется в OnPlayerCommandText, выглядит так:
if (strcmp("/тексткоманды", cmdtext, true, 10) == 0)
{
функция
return 1;
}
return 0;
например для того, что бы убить игрока (/kill, т.е. задать здоровье на 0), команда должна выглядеть так:
if (strcmp("/kill", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid, 0);
return 1;
}
return 0;
или чтоб по команде /fuck игроку давалась броня, здоровья становилось 20 хп, давался чёрный цвет и координаты становились 0.0.0
if (strcmp("/fuck", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid, 0);
SetPlayerArmour(playerid, 100);
SetPlayerColor(playerid, 0x000000FF);
SetPlayerPos(playerid, 0,0,0);
return 1;
}
return 0;
На сегодня это всё=)