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

Реклама






 
SAMP АДМИНКИ 15 ЛВЛ ПРИ ВХОДЕ КОМАНДА /MAKEADMIN2017 Адрес сервера:176.32.36.34:7777

500р
Маленький баннер400р/мес(Статический показ)
,400рТекстовая реклама300р/мес(Статический показ)
Большой баннер статический
1200р 1000/мес

Внимание ЦЕНЫ СНИЖЕНЫ!!!
Писать по поводу рекламы VK: vk.com/sergey68

** Как получить V.I.P --> КЛИК **
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11
  1. #1
    Пользователь
    Аватар для Andrey_Kiryuhin
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Адрес
    г.Пенза
    Сообщений
    516
    Репутация
    153 [+/-] 

    Сообщение Создание Team и Gang зон.

    Урок по созданию team и gang zone. !
    Здравие всем! Я просвещу вас как создавать тимы с ганг зонами!
    И так начнем:
    Для начала надо сделать команду или так сказать ТИМ.
    В самое начало вписываем:
    PHP код:
    new gTeam[MAX_PLAYERS];//Это для различия тим или банд.
    #define TEAM_BALLA_COLOR 0x80008096 //цвет для вашей тим команды или банды
    #define TEAM_GROVE 1//название тим команды или банды! обязатльно указывайте при создании новой банды ее номер если хотите создать еще 1 банду допустим баласов пишите так 
    #define TEAM_BALLA 2 //обязательно перенумеровывайте. 
    Теперь для вашей банды или тим нужно при выборе сделать скины (какие скины относится к какой банде)
    В паблик суем.
    PHP код:
    public OnPlayerRequestClass(playeridclassid)
    {
    if(
    classid == 5)//5 номер скина! Но считать надо от нуля
    {
    gTeam[playerid] = TEAM_GROVE;//Здесь указываем для какой тим скин
    GameTextForPlayer(playerid"GROVE"10003);//Ну и тексдрав для различия
    }
    retirn 1;

    Также повторяем с остальными тимами или бандами как вам удобно.

    Теперь приступим делать ганг зоны!
    Допустим сделаем зону для грув стрит.

    В самое начало пихаем это:
    PHP код:
    new taketurfbackcount[MAX_PLAYERS];
    new 
    gangkillcount[MAX_PLAYERS];
    #define REOWN_TURF 4
    #define GANGAREA_WARNINGS 2
    #define GANGAREA_TAKE 4
    new grove;//название зоны или территории для захвата. 
    Теперь вставляем ниже указанное.
    PHP код:
    public OnGameModeInit()
    {
    grove GangZoneCreate(2197.193,-1887.144,2630.716,-1381.833);//grove- это название ваше зоны в начале мы указывали ее название.
    В скобках указано(2197.193,-1887.144,2630.716,-1381.833
    2197.193 - минимум по Х
    -1887.144 - минимум по У
    2630.716 - максимум по Х
    -1381.833 - максимум по У

    Для этого я использую удобную программу Xtreme Vehicle Plotter.Как ей пользоваться покажу позже.
    Для того чтоб на карте были видны зоны в ниже указанный паблик пихаем: GangZoneShowForPlayer(playerid,grove, 0x24FF0AB9);
    PHP код:
    public OnPlayerConnect(playerid)
    {
    GangZoneShowForPlayer(playerid,groveCOLOR_GREEN);//Чтоб на карте были видны зоны.grove - название зоны в даный момент мы делаем грув. и соответственно ее цвет.Желательно указывать цвет вашей банды для которой вы это делаете в данный момент грув.
    return 1;

    Для того чтобы когда другие игроки захватывают зоны "захватываемая зона" мигала, делаем ниже указанное.
    PHP код:
    public OnPlayerDeath(playeridkilleridreason)
    {
    if(
    gTeam[killerid] == TEAM_GROVE) {//Указываем тим или банду захватываемой зоны в данный момент грув TEAM_GROVE.
    taketurfbackcount[killerid]++;
    if(
    taketurfbackcount[killerid] == REOWN_TURF) {
    GangZoneStopFlashForAll(grove);//указываем в скобках название зоны которая будет мигать в данный момент это grove
    GangZoneHideForAll(grove);//Вставляем в скобки название зоны в данный момент грув grove
    GangZoneShowForAll(groveGetPlayerColor(killerid) );//Это когда игрок захватил зону! будет перекрашиваться в его цвет, вставляем в скобки название зоны в данный момент grove.
    taketurfbackcount[killerid]=0;
    }

    //Теперь сделаем чтоб писало то что зона захватывается или захвачена!
    Для этого в этом же паблики пишем.
    PHP код:
    new str[256];
    if(
    gTeam[killerid] == TEAM_GROVE) {//Название тима в данный момент грув TEAM_GROVE
    taketurfbackcount[killerid]++;
    if(
    taketurfbackcount[killerid] == REOWN_TURF) {
    GangZoneStopFlashForAll(grove);//название захвачеемой территории в данный момент grove 
    GangZoneHideForAll(grove);//название захвачеемой территории в данный момент grove 
    GangZoneShowForAll(grove,GetPlayerColor(killerid));//название захвачеемой территории в данный момент grove 
    taketurfbackcount[killerid]=0
    }
    }
    if(
    IsPlayerInArea(playerid,2383.532, -1748.9742543.251, -1618.698))//Координаты зоны в даный момент зоны grove
    {
    if((
    gTeam[playerid] == TEAM_GROVE) && (gTeam[killerid] != TEAM_GROVE) && (killerid != INVALID_PLAYER_ID))//Указываем название тим или банды в данный момент TEAM_GROVE
    {
    gangkillcount[playerid]++;
    if(
    gangkillcount[playerid] == GANGAREA_WARNINGS)
    {
    SendClientMessageToAll(COLOR_RED,"Бандит: Территория банды Grove атакована!");//Сообщение в общ. чат то что база атакована
    GangZoneFlashForAll(grove,GetPlayerColor(killerid) );//Указываем название зоны в данный момент grove
    }
    if(
    gangkillcount[playerid] == GANGAREA_TAKE)
    {
    new 
    KillerName[30];
    GetPlayerName(killeridKillerName30);
    format(str256"Бандит: %s Захватил территорию банды Grove!"KillerName);//Пишется игрокам то что определеный игрок захватил зону
    SendClientMessageToAll(GetPlayerColor(killerid), str);
    GangZoneStopFlashForAll(grove);//Указываем захватываемую зону в данный момент grove
    GangZoneHideForAll(grove);//Указываем захватываемую зону в данный момент grove
    GangZoneShowForAll(groveGetPlayerColor(killerid) );//Указываем захватываемую зону в данный момент grove
    gangkillcount[playerid]=0;
    }
    }
    }
    return 
    1;

    ну и в свободное место пихаем
    PHP код:
    stock IsPlayerInArea(playeridFloat:min_xFloat:min_y ,Float:max_xFloat:max_y)
    {
    new 
    Float:XFloat:YFloat:Z;
    GetPlayerPos(playeridXYZ);
    if(
    <= max_x && >= min_x && <= max_y && >= min_y) return 1;
    return 
    0;

    Думаю ваша бандиты со своими ганг зонами готовы.

    Дополнительно:
    Если хотите чтоб у вашей банды был закрытый чат только для нее тогда делаем ниже указаное.
    PHP код:
    public OnPlayerText(playeridtext[])
    {
    if(
    text[0] == '!')
    {
    new 
    name[24], string[256];
    GetPlayerName(playeridname24);
    strdel(text,0,1);
    format(stringsizeof(string), "*Чат банды %s: %s"nametext);
    printf("%s"string);
    for(new 
    0MAX_PLAYERSi++)
    {
    if(
    IsPlayerConnected(i))
    {
    if(
    gTeam[i] == gTeam[playerid])
    SendClientMessage(iGetPlayerColor(playerid), string);
    }
    }
    return 
    0;
    }
    return 
    1;

    Теперь у вас есть тим чат для каждой команды, чтобы в него писать всего лиш стоит поставить в начале текста "!" восклицательный знак идалее пишите что хотите.

    Если хотите чтоб игроки одной банды за убийство своего дружественого бандита соответствено наказывались делаем так.

    В самое начало пихаем
    PHP код:
    #define COLOR_RED 0xAA3333AA // RED
    #define COLOR_GREEN 0x33AA33FF // GREEN 
    new tk[MAX_PLAYERS]; 
    //Потом
    PHP код:
    public OnPlayerDeath(playeridkilleridreason)
    {
    if(
    killerid == INVALID_PLAYER_ID)
    {
    SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    }
    else
    {
    if(
    gTeam[killerid] != gTeam[playerid])
    {
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    GivePlayerMoney(killerid1000);
    }
    //TEAM KILL
    else
    {
    SendClientMessage(killeridCOLOR_RED"Не убивай своих!В следущий раз будь окуратнее!");
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)-1);
    GivePlayerMoney(killerid, -2000);
    SetPlayerHealth(killerid,0);
    tk[killerid] ++;
    if(
    tk[killerid] == 2)
    {
    SendClientMessage(killeridCOLOR_RED"еще раз убеш своего и тебя кикнут!");
    }
    if(
    tk[killerid] >= 3)
    {
    new 
    string[256];
    new 
    name[MAX_PLAYER_NAME];
    GetPlayerName(killerid,namesizeof(name));
    printf(" -A.T.K Script-: %s kicked for teamkilling",name);
    Kick(killerid);
    format(stringsizeof(string), "АнтиТимКилл кикнула %s за убийство своих бандитов!",name);
    SendClientMessageToAll(COLOR_GREENstring);
    }
    }
    }
    return 
    1;

    Все готово система анти тим килл!

    И так я вам обещал научится пользыватся программой!
    Чтобы сделать координаты для ганг зоны делаем следующие
    Заходим в программу, выбераем нужный город где будете создавать ганг зону, с верху выбираем Draw Config, отмечаем на карте зону,
    вам вылазит окошко! выбираем там Gang Zones & World Boundaries! выбераем пункт Use Gang Zone в окошко вписываем название зоны и выбираем ее цвет
    Вот у вас получилось vagos = GangZoneCreate(1147,61, -1863,458, 1626,767, -1346,304); тут есть одно неудобство это запятые вместо точек! заменяем некоторые запятые на точки (1147.61, -1863.458, 1626.767, -1346.304);
    И еще то что там типо надо писать в public OnPlayerSpawn(playerid) пишем в public OnPlayerConnect(playerid)! собствено урок дан.

    Взятая информация:
    АнтиТимКилл - /by Baks
    Xtreme Vehicle Plotter - //Автора не знаю!
    В создание тим /by Mask
    В создании ганг зон мне помогали (merc, just, OFFREAL)
    В тим чате исправил баг /by Linus
    Урок написан /by mask

    Я мог запутатся так как это первый урок который я пишу! если есть ошибки или что то не комплитит обращайтесь.

    Урок от : Denis

  2. 1 пользователь сказал cпасибо Andrey_Kiryuhin за это полезное сообщение:

    kiruxa125 (29.11.2011)

  3. #2
    Заблокирован
    Аватар для Folk
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Сообщений
    8
    Репутация
    28 [+/-] 
    Казачок а пофлудить мне можно?

  4. #3
    Заблокирован
    Аватар для Folk
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Сообщений
    8
    Репутация
    28 [+/-] 
    Во!!! 10 сбщ

  5. #4
    Заблокирован
    Аватар для Folk
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Сообщений
    8
    Репутация
    28 [+/-] 
    Кулл, хоть тут флудить розрешают, кстати у меня идея, чтобы не было флуда который я щас развожу, давайте каждый урок закрывать, создал - закрыл.

  6. #5
    Пользователь
    Аватар для Andrey_Kiryuhin
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Адрес
    г.Пенза
    Сообщений
    516
    Репутация
    153 [+/-] 
    ненадо у пацанов появються вопросы тут и зададут :d

  7. #6
    Заблокирован
    Аватар для Folk
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Сообщений
    8
    Репутация
    28 [+/-] 
    А для чего вопросы по скриптингу и тема "Мелкие вопросы по скриптингу"

  8. #7
    Пользователь
    Аватар для Andrey_Kiryuhin
    Статус
    Оффлайн
    Регистрация
    11.11.2010
    Адрес
    г.Пенза
    Сообщений
    516
    Репутация
    153 [+/-] 
    неее слушай атм будут задавать вопросы простые а тут по теме ганг зоны и тиам зоны

  9. #8
    Пользователь
    Аватар для D_ReMax
    Статус
    Оффлайн
    Регистрация
    11.02.2011
    Сообщений
    7
    Репутация
    0 [+/-] 
    это типа гетто? :D

  10. #9
    Пользователь
    Аватар для Alex_Bacardi
    Статус
    Оффлайн
    Регистрация
    20.11.2011
    Адрес
    Russia, Tver..
    Сообщений
    90
    Репутация
    6 [+/-] 
    Долго мучилсо :O
    Но всё таки понял спасибоу андрюх
    Последний раз редактировалось Alex_Bacardi; 01.12.2011 в 01:43.

  11. #10
    Заблокирован
    Аватар для Jack_Slaiter
    Статус
    Оффлайн
    Регистрация
    17.06.2011
    Сообщений
    257
    Репутация
    27 [+/-] 
    Нормально,Молодец


Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •