Здесь я рассмотрю public'и их функцию и предназначение. Не судите строго, урок делаю для тех кто начал писать в Pawno, но не полностью орентируется в нём.

public OnFilterScriptInit() или public OnGameModeInit()//данный public отвечает за запуск скрипта или мода. То есть что в данном public есть, то в первую очередь отобразится. Обычно сюда добавляют объекты и авто.
Code

              SetGameModeText("Название мода)");
               SetTimer("Имя", 1000, true);//Таймер (не обязательно)
       ShowPlayerMarkers(1);//показывать иконки игроков на радаре 1-вкл 0-выкл
       ShowNameTags(1);//Показать ники 1-вкл 0-выкл
       EnableStuntBonusForAll(1);//Деньги за трюки 1-вкл 0-выкл

              AddPlayerClass(id скина,X,Y,Z,Угол,Weapon1,ammo1,Weapon2,ammo2,Weapon3,ammo3);//добавить скин игрока при включении сервера
              AddStaticVehicle(id,X,Y,Z,Угол,цвет1,цвет2);//добавить авто при включении сервера   

public OnPlayerConnect(playerid)//данный public отвечает за подключение игрока или вход на сервер
(некоторые люди любят вставлять суда функцию, которая показывает кто подключился )
Code

       GameTextForPlayer(playerid, "~w~PYCCK~b~NN CE~r~PBEP!", 5000, 3);
       SendClientMessage(playerid, 0xFFFF00AA, "Добро пожаловать к нам .");//Тексты которые видят игроки, когда заходят к вам (конектятся)
         
       SetPlayerMapIcon( playerid, ID иконки, 414.5210, 2535.6313, 19.1484, 5, 0 );//Иконка на радар для пришедших игроков (координаты постав те свой)

new string[85],pname[24];
GetPlayerName(playerid,pname,24);
format(string,sizeof(string),"*** %s пришел(а) к нам.(ID:%d)",pname,playerid);//эта функция показывает кто пришел к нам
SendClientMessageToAll(COLOR_GREEN,string);   

public OnPlayerDisconnect(playerid, reason)//даный public отвечает за выход игрока из сервера
Code

new string[85],pname[24];
GetPlayerName(playerid,pname,24);
format(string,sizeof(string),"*** %s покинул(а) наш сервер.(ID:%d) Прощай мишка!!! :)",pname,playerid);
SendClientMessageToAll(COLOR_GREEN,string);   

public OnPlayerSpawn(playerid)//данный public отвечает за появление игрока в начале игры и после смерти
Code

       GivePlayerMoney(playerid, 50000);//даем денег
       TogglePlayerClock(playerid,1);//устанавливаем время

public OnPlayerDeath(playerid, killerid, reason)//данный public отвечает за смерть игрока(сюда вставлять фраги и деньги за убийства)
Code

if(killerid == INVALID_PLAYER_ID)
{
SetPlayerScore(playerid,GetPlayerScore(playerid)-1);//отнимаем 1 очко у горе игрока
}
else
{
SetPlayerScore(playerid,GetPlayerScore(playerid)-1);//отнимаем 1 очко у игрока которому не повезло встретится с другим игроком
SetPlayerScore(killerid,GetPlayerScore(killerid)+1 );//Прибавляем 1 очко убийце
}

public OnPlayerCommandText(playerid, cmdtext[])//данный public отвечает за команды
Code

if (strcmp("/своя команда", cmdtext, true, 10)==0)//здесь проведена команда телепорт
       {
           SetPlayerPos(playerid, 1669.0194, 1569.9172, 10.7752);
           SendClientMessage(playerid, 0xFFFFFFAA, "Вы оказались в Лас Вентурас ");

public OnPlayerText(playerid, text[])//данный public отвечает за чат
Code

GivePlayerMoney(playerid, -10);//отнимаем деньги за разговор в чате

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)//данный public отвечает за "вход" в машину

public OnPlayerExitVehicle(playerid, vehicleid)//данный public отвечает за "выход" из машины

public OnPlayerEnterCheckpoint(playerid)//данный public отвечает за "вход" в маркер/чекпойнт

public SetupPlayerForClassSelection(playerid)//данный public отвечает за выбор игрока (экран выбора)
Code

        SetPlayerInterior(playerid,14);
       SetPlayerPos(playerid,258.4893,-41.4008,1002.0234);//позиция
       SetPlayerFacingAngle(playerid, 270.0);//угол
       SetPlayerCameraPos(playerid,256.0815,-43.0475,1004.0234);//позиция камеры
       SetPlayerCameraLookAt(playerid,258.4893,-41.4008,1002.0234);

Если у Вас есть public Имя_любое(playerid), но в public OnGameModeInit() есть SetTimer("Имя_любое",время,true);//то данный public отвечает за действие после истечения времени
Code

public Имя таймера()
{
действие после истечения времени
}

Здесь проведены конечно не все publici, но они все таки встречаются при написании мода и скрипта!