SQUIRREL tutorial - Форум




Главная О проекте Статьи Файлы Фотоальбомы Форум
Добавить сайт в «Избранное» | Вход в профиль

GTA V

Информация: iFruit

Информация: Изображения:

GTA: Chinatown Wars

Информация:

GTA IV

Информация:

Информация:

Информация:

Информация:

GTA: Vice City Stories

Информация: Изображения:

GTA: Liberty City Stories

Файлы: Информация: Изображения:

GTA: San-Andreas

Информация: Статьи: Изображения:

GTA: Vice City

Информация: Изображения: Файлы:

Информация: Изображения:

GTA ]I[

Информация: Файлы:

Информация: Изображения:

GTA 2

  • 1
  • 2

GTA: Advance

Информация:

GTA




  • 1
  • 2

Меню сайта

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    Страница 1 из 11
    Форум » SQUIRELL » Справочник » SQUIRREL tutorial
    SQUIRREL tutorial
    009 Дата: Понедельник, 27/07/2009, 20:59 | Сообщение # 1
    Criminal Syndicate Developer



    Регистрация: 10/06/2008
    Клан:
    [ACF]
    Страна:
    Статус:


    Code

    local a = 10; // значение переменной a равно 10
    local b = 20; // значение переменной b равно 20

    // Принцип if/else
    if (a > b) // Если значение a больше значения b, то...
    print("a > b");
    else // Иначе
    print("b > a");
    print ("\n");
    // Принцип while
    while (a < b) { // Пока (в то время, когда...) a меньше b, делаем следующее...
    a+=1; // короткая запись выражения local a = a + 1;
    print (a + "\n"); // выведем A для проверки значений
    }
    print ("\n");
    // Принцип do/while
    do // Одним слово - "Делай"
    {
    print(a +"\n");
    a+=1;
    } while(a < 25) // Пока a меньше 25
    print ("\n");

    const gta4mp = "tol'ko FOUR-MP"; // Объявление константы
    print ("Dlya nas syshestvyet " + gta4mp);

    local a = ["Ya stro4ka", 666] // Задали массив с 2-мя значениями
    print ("\n");
    print (a[0]); // Вывод "Ya stro4ka"
    print ("\n");
    print(typeof a[0]); //Выведет "string"
    print ("\n");
    print (a[1]); // Вывод "666"
    print ("\n");
    print(typeof a[1]); //Выведет "integer"
    /*
    Да-да, это демонстрация блокового комментария
    Успехов всем в программировании, ждите следующего...
    By Boxster special for FOUR-MP's Team
    */

    Code

    PlayerKills <- array(200,0); // Создаём глобальный массив PlayerKills размер - 200(максимум игроков), 0 - значение для заполнения(все значения массива = 0)
    PlayerDeaths <- array(200,0); // Создаём глобальный массив PlayerDeaths размер - 200(максимум игроков), 0 - значение для заполнения(все значения массива = 0)

    function OnGameModeInit() // Стандартная функция,вызывается при старте мода
    {
    print("Array test mode loaded"); // Выводим сообщение в консоль: Array test mode loaded
    }

    function OnGameModeExit() // Стандартная функция,вызывается при выключении мода
    {
    print("Array test mode unloaded"); // Выводим сообщение в консоль: Array test mode unloaded
    }

    function OnPlayerConnect(playerid) // Стандартная функция,вызывается при подключении игрока
    {
    ::PlayerKills[playerid] = 0; // Обнуляем значение убийств игрока
    ::PlayerDeaths[playerid] = 0; // Обнуляем значение убийств смертей
    }

    function OnPlayerDisconnect(playerid) // Стандартная функция,вызывается при отключении игрока
    {
    ::PlayerKills[playerid] = 0; // Обнуляем значение убийств игрока (приставка :: пишется т.к. это глобальны массив(всё глобальное с :: ))
    ::PlayerDeaths[playerid] = 0; // Обнуляем значение убийств смертей
    }

    function OnPlayerDeath(playerid, killerid, reason) // Стандартная функция,вызывается при смерти игрока
    {
    ::PlayerKills[killerid] +=1; // Прибавляем 1 убийство игроку с идом killerid(убийца)
    ::PlayerDeaths[playerid]+=1; // Прибавляем 1 смерть игроку с идом playerid(погибший)
    }
    /*
    by 009
    */

    Code

    IsConnected <- array(200,false) // Создаём глобальный массив,размер 200(стандартно),со значением false
    Config <- { // Создаём глобальную таблицу,с "ключами": hostname(стандартно значение noname),modename(стандартно значение Blank Mode),maxplayers(стандартно значение 200)
    hostname="noname"
    modename="Blank Mode"
    maxplayers=200
    }

    function OnGameModeInit()
    {
    print("start -> OnGameModeInit \n");
    if(fexist("server.cfg")==true) // Проверяем есть ли файл server.cfg
    {
    local f = fopen("server.cfg","r"); // если есть то открываем в режиме "чтение" ("w" - запись,"a"-дописать,"r"-чтение)
    while(!feof(f)) // Пока не конец файла...
    {
    local line = fgets(f); // ...считываем строку
    local varname = ""; // создаём переменную для записи "ключа",формат строка
    local var = ""; // создаём переменную для записи значения ключа,формат строка
    local iskeywrite = false; // создаём переменную для указывания позиции знака =
    for(local i = 0; i < line.len(); i++) // цикл от 0 до конца строки
    {
    if(line[i]!='=') // если символ не равен =
    {
    if(iskeywrite == false) // если идёт запись ключа...
    {
    varname+=line[i].tochar(); // добавляем символ к ключу
    }
    else
    { // если запись значения...
    if(line[i].tointeger() != 10) // если символ не перевод строки на новую...
    {
    var+=line[i].tochar(); // добавляем символ к значению
    }
    }
    }
    else
    { // если символ равен =
    if(iskeywrite==false) // если запись ключа...
    {
    iskeywrite=true; // переключаем на запись значения
    }
    }
    }
    if(varname=="hostname") // если ключ - hostname
    {
    ::Config.hostname = var; // записываем значение ключа в таблицу
    }
    else if(varname=="modename") // если ключ - modename
    {
    ::Config.modename = var; // записываем значение ключа в таблицу
    }
    else if(varname=="maxplayers") // если ключ - maxplayers
    {
    ::Config.maxplayers = var.tointeger(); // записываем значение ключа в таблицу в формате integer(число)
    }
    }
    fclose(f); // закрываем файл
    }
    else
    { // если файла не существует
    local f = fopen("server.cfg","w"); // открываем файл для записи,в режиме записи можно создавать файлы(т.е. мы только что создали файл)
    fwrite(f,"hostname=" + ::Config.hostname + "\r\n"); // записываем в файл hostname и его значение,после чего переводим на след. строку(+ "\r\n")
    fwrite(f,"modename=" + ::Config.modename + "\r\n"); // записываем в файл modename и его значение,после чего переводим на след. строку(+ "\r\n")
    fwrite(f,"maxplayers=" + ::Config.maxplayers + "\r\n"); // записываем в файл maxplayers и его значение,после чего переводим на след. строку(+ "\r\n")
    fclose(f); // закрываем файл
    }
    print("Server configuration:\n"); // выводим конфигурацию...
    print("Host Name: " + ::Config.hostname + "\n"); // значение hostname
    print("Mode Name: " + ::Config.modename + "\n"); // значение modename
    print("Max Players: " + ::Config.maxplayers + "\n"); // значение maxplayers
    ::IsConnected.resize(::Config.maxplayers,false); // меняем размер массива в соответствии с конфигом
    print("end -> OnGameModeInit \n");
    return 1;
    }

    function OnGameModeExit()
    {
    print("start -> OnGameModeExit \n");
    print("end -> OnGameModeExit \n");
    return 1;
    }

    function OnPlayerConnect(playerid)
    {
    print("start -> OnPlayerConnect \n");
    print("Connect player with playerid = "+playerid + "\n");
    ::IsConnected[playerid] = true; // ставим значение true на ячейку массива
    print("IsConnected["+playerid+"] = "+::IsConnected[playerid]+"\n");
    print("end -> OnPlayerConnect \n");
    return 1;
    }

    function OnPlayerDisconnect(playerid)
    {
    print("start -> OnPlayerDisconnect \n");
    print("Disconnect player with playerid = "+playerid + "\n");
    ::IsConnected[playerid] = false; // ставим значение false на ячейку массива
    print("IsConnected["+playerid+"] = "+::IsConnected[playerid]+"\n");
    print("end -> OnPlayerDisconnect \n");
    return 1;
    }
    /*  
    by 009
    */




     
    Форум » SQUIRELL » Справочник » SQUIRREL tutorial
    Страница 1 из 11
    Поиск:

    GTA MP

    Мультиплееры

    GTA Modding

    Статьи:
    GTA III

    Блок пользователя

    GTA: Criminal Russia


    Календарь новостей
    «  Март 2015  »
    ПнВтСрЧтПтСбВс
          1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031

    Поиск

    Наша кнопка



    Партнёры

    Multi Theft Auto Community Russia

    Alliance of Cheater's Fighters
    Elite Force Opossition
    Brotherhood of Plumbum
    E1ect
    San-Andreas Bugousers
    Seville Crew
    Русский•Exclusive•Сервер
    Mixes
    http://rus-gta.do.am/
    Здесь вы можете все узнать про pawno,так же скачать моды,скрипты,программы,новости и много другое

    Вход на сайт

    Корзина
    Ваша корзина пуста

    Поиск

    Мини-чат

    Наш опрос
    Считаете ли вы IV-MP лучше SA-MP?
    Всего ответов: 476

    Статистика


    Copyright © Лаборатория O.K.Style 2001-2016 | GTA-Exclusive 2007-2016 | GTA News 2007-2016 | Хостинг от uCoz