San Andreas Multiplayer 0.3
Каталог статей

Категории раздела

Наш опрос

Оцените мой сайт
Всего ответов: 106

Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Мы нашли Вас!

Главная » Статьи » Статьи о GTA SAMP

Создание GameMode
Как создать дефматч
Нет ничего проще. Открываем Pawno и нажимаем New. Вот он, Ваш первый скрипт. Чтобы запустить его, надо сначала его сохранить (большинство людей сохраняют в директорию "/samp/gamemodes/src/", но будет проще (для локального тестирования) сохранить его в "/samp/gamemodes/"). Затем кликните по кнопке с изображением синей стрелочки. Это действие компилирует Ваш файл .pwn в файл .amx, который появится в том же каталоге, однако чтобы запустить его в игре, этот файл должен лежать в "/samp/gamemodes/" (теперь понятно, зачем было сохранять Ваш скрипт в этом каталоге - теперь не придется ничего никуда переносить в ручную, все уже на своих местах после компиляции). Теперь, чтобы опробовать свой новый мод, Вы должны настроить локальный сервер и сменить игровой режим (наберите "changemode " в окне сервера).

Если все прошло удачно, когда подключитесь к своему серверу через клиент sa-mp, в игре Вы окажетесь снаружи казино в Las Venturas. К сожалению Вы не сможете выбрать себе персонажа, так как на данный момент доступен только один, но это можно будет легко исправить в будущем. Кроме того это не очень уж и интересный ДМ – из оружия у Вас только кулаки а вокруг ни души. Но это локальный сервер и по поводу второй проблемы на данный момент ничего нельзя поделать.

Следующим шагом, который Вы скорее всего захотите сделать, будет добавление в игровой режим оружия (контролируется на основе «каждому классу свое»). Каждый игрок, которого Вы выберете в начале игры (или позже в случае замены) будет принимать значение "класса". У классов может быть одинаковое оружие, или у всех разное, или комбинация. Вы назначаете оружие для каждого класса отдельно. Поэтому, чтобы дать всем классам одинаковое оружие, Вам просто нужно скопировать информацию об оружии и добавить ее к описанию каждого из существующих в Вашем игровом режиме классов. Это действие обеспечит сбалансированную игру, хотя играть будет не так интересно, если все будут бегать с одинаковым оружием. Однако выбор остается за Вами. В редакторе найдите следующую строку:

AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);

Это описание класса, параметры в том же порядке:
AddPlayerClass(Player model, X, Y, Z, A, Weapon 0, Ammo 0, Weapon 1, Ammo 1, Weapon 2, Ammo 2);

Модель персонажа можно взять из файла "peds.ide". "X", "Y" и "Z" – это координаты места появления игрока в игре, после выбора персонажа. "A" – это угол, под которым игрок будет развернут (направление камеры). Есть только одна точка появления для каждого класса, однако это можно обойти с помощью других средств, которые будут рассмотрены позже. Номера оружия можно узнать здесь. А цифры рядом с ammo – это точное количество патронов к каждому оружию, которым будет располагать игрок (у оружия ближнего боя количество патронов всегда 0).

Теперь скопируйте эту строку:
AddPlayerClass(102, 1958.3783, 1343.1572, 15.3746, 269.1425, 5, 0, 22, 100, 32, 50);

И поместите ее под той, что Вы нашли в Вашем скрипте. Теперь в игре у Вас будет выбор между CJ (без оружия) и Balla (с бейсбольной битой, пистолетом и Tec9). Если хотите, можете сами дать оружие для CJ или добавить больше других классов с другим оружием.

Примечание: некоторое оружие, которое перечислено на странице по ссылке выше, рядом с которым есть пометка "(crashes if you try to fire)" или "(Unusable)" не работает в данной версии SA-MP. В список оружия, которое нельзя использовать, входят и гранаты, однако эта досадность будет исправлена в будущем.

Узнаём координаты, углы и ID моделей

Вам, возможно, захочется изменить координаты появления игроков, чтобы они все не появлялись в одном и том же месте. Если оставить как есть, то ДМ выйдет не самый интересный, а так же это идеальная возможность для кемперства. В этом деле нам поможет Режим Отладки. Запустите "samp_debug.exe" в основном каталоге с игрой и когда бы Вам ни потребовалось, напишите "/save" прямо в игре (для этого нажмите "t" или тильду, чтобы вызвать строку чата). Это действие сохранит Ваше текущее положение в игре (в координатах), угол и ID игрока в файл "savedpositions.txt" в основном каталоге игры SA. Чтобы изменить персонажа в Режиме Отладки нажимайте F11 и F12, переключаясь по кругу между доступными в данном моде моделями.

Знакомство с функциями и callbacks

Прежде, чем мы продолжим, Вы должны узнать, что такое callbacks, или callback`и. Это – массивы кода, внутри Вашего игрового режима, представляющие из себя нечто похожее на следующее:

public OnPlayerDisconnect(playerid)
{
printf("OnPlayerDisconnect(%d)", playerid);
return 1;
}
Это - OnPlayerDisconnect callback, который означает, что эта секция кода будет запускаться при отключении игрока от сервера. Если Вы захотите, чтобы появлялось большое сообщение о том, что тот или иной игрок покидает сервер, то Вы добавляете для этого код именно в этот массив. Все callback`и, которые использует игра (кроме 2, они используются в filterscripts, а не в gamemodes. О них мы рассказывать не будем), находятся в Вашем файле. Вы не сможете сделать другие. Большинство из них появляется так же, как и та, что выше. Но некоторые из них ("OnPlayerCommandText", "OnPlayerRequestClass", "OnGameModeInit" и "main" (который является не совсем callback`ом и нигде больше не фигурирует, кроме как на титульном экране вашего игрового режима)) призваны заставлять игровой режим работать или показать игрокам, что нужно делать. Вы так же можете использовать и другие, похожие блоки (на те, о которых ниже), которые выглядят так же, но являются вызываемыми функциями. Они должны быть вызваны Вами самим. Вот функция "IMadeThis" (обратите внимание на полное отсутствие пробелов).

public IMadeThis()
{
// Это однострочный комментарий, он будет проигнорирован

/* Это
многострочный
комментарий */

print("This will be printed to the server window");
return 0;
}
Вы, должно быть, обратили внимание на небольшое описание комментариев. Все, что находится в строке за "//" будет игнорироваться. То же будет происходить и с текстом между "/*" и "*/". Так как функция не вызывается игрой, мы должны вызвать ее сами с помощью callback, это смертельно просто, совсем так же, как вы вызываете большинство команд в своем коде. Итак, если вы добавите строку:

IMadeThis();
В Ваш OnPlayerDisconnect callback (она должно находиться между "{" и "}", а так же перед "return 1;")
 
она должна запускаться как функция и печатать сообщение в окне сервера, когда Вы покидаете сервер во время игры (помните, что другие вещи, описанные там, будут игнорироваться). Мы не хотели, чтобы что-либо печаталось в окне сервера и все "print" и "printf" функции, что были в файле, удалены скриптером. Только строки, заключенные между фигурными скобками находятся в функции/callback`е (функция относится к callback`ам так же, как будто они - специальный случай функции), строка выше - имя функции. "public" подразумевает, что функция может быть выполнена любым другим кусочком кода, это в основном означает, что ваш код может быть выполнен, когда Вы вызываете функцию по имени. Мы не волнуемся о частных функциях, поскольку они вообще не используются в SA-MP. Скобки после имени функции включают список параметров, мы не охватили их все, но Вы можете увидеть пример их использования в некоторых из callback`ов в вашем чистом скрипте. Отметим, что эти параметры автоматически передаются, когда игра вызывает функцию. Если мы используем сторонние функции (то есть не callback`и), и мы хотим использовать некоторые параметры, мы должны будем передать их непосредственно. Одна крошечная вещь, которая должна быть упомянута, - то, что все строки, кроме строк с фигурными скобками (и даже они при определенных обстоятельствах, но они будут охвачены позже), и строки непосредственно перед открытой скобкой (фигурные скобки могут быть в конце той строки или, как показано здесь, на новой строке), требуют постановки в своем конце точки с запятой, чтобы обозначить конец процесса.



Источник: http://www.samp-rus.com/blog/
Категория: Статьи о GTA SAMP | Добавил: Andruxa (07.11.2009) | Автор: AXE W
Просмотров: 3722 | Комментарии: 8 | Теги: SAMP, GameMode, Game Mode, Pawno, Создание GM | Рейтинг: 0.0/0
Всего комментариев: 8
8 quaffodia  
0
Мне недавно рекомендовали ссылку: http://srub-dizain.ru/pilomaterial - цены от производителя на половую доску
и решил я строить дом! Мне тогда срочно нужен был сухой профилированный брус камерного сушения. В общем пройдя туда и повёз туда деньги! Там конечно всё профессионально сделано и сухой брусок не тяжело выбрать. Всему этому действию сопутствовала продуманная навигация сайта, которую не мог не обнаружить.Хорошо конечно то, что это завод производителя – но сайтец страшный.

7 Gorfreemn  
0
Совсем не умышленно наткнулся на не обычное предложение и был заплакан до слёз! Теперь предлагаю его к Вашему рассмотрению: сдам 5 комнатную квартирочку в жк http://odessarealt.com/tags/%CC%E0%F0%F1%E5%EB%FC/ - марсель
Одесса. Рядом: ресторан Пальмира , кирпичный пляж , паркинг для автомобилей и Таврия . Недвижимость с евроремонтом , Белой кожаной мебелью и Харьковской электротехникой .

6 Gorfreemn  
0
Сдам 4-х квартaиру в жк http://rentrealtycrimea.com - Симферополе
Одесса Украина. неподалёку : ресторан Бабочка , Прибрежная зона , парковка и Таврия . Апартаменты со свежим дорогим ремонтом , Лондонской мебелью и Харьковской электротехникой .

5 bypeTieplex  
0
CatholicMatch has the perfect solution for meeting people. We even help you to meet locals who you can easily meet up with for coffee or a dinner date. You will meet someone who shares your faith in fact, youll meet new people every day. Join today and meet a Catholic near you.
If you aim at launching a web dating or social network that would stand in a row with AdultFriendFinder, eHarmony, Dating.com, Shaadi, MySpace, FaceBook, Bebo, Friendster, Cyworld, hi5, Orkut, LinkedIn - SkaDate Community and Dating Software would be the best platform to power up your project.
We all have one person that we wish we had never slept with, mine just happened to start from a one night stand. The mere thought of it makes my skin crawl with regret and embarrassment. To this day I can’t help but think why the hell did I do that? I am not sure who your WTH person is, for me it is...

4 TorCregewoole  
0
lasbian.com
delete plz

3 KinoUnsedditsUriB  
0
Привет! Нужен сайт с фильмами чтобы можно скачать и смотреть онлайн
Благодарю.

2 Salomon  
0
помогите создать свой серв позвоните мне на скайп Solamon9 плиз я ваще долго уже мучиюся как сделаю его почемуто в интернете невидет подскажите а лучше звоните на скайп

1 Кирилл  
0
Спасибо мне очень помогла эта статья!

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Поиск

Друзья сайта