Question

Приветствую уважаемые пользователи Павно форумом, столкнулся с такой проблемкой, при регистрации, я не могу сделать систему выборов скинов, вообще, обращаюсь за помощью к вам.

Сам Код

Сase DLG_REGSEX:
{
    if(response)
    {
 
    }
    else
    {
 
    }
}

 

Кординаты

AddPlayerClass(0,204.3690,866.8369,1019.1500,359.0978,0,0,0,0,0,0); // Место положение скина
AddPlayerClass(0,204.2657,870.9763,1019.1500,180.0901,0,0,0,0,0,0); // камера

 

Сам текст драв

 

Спойлер

new Text:nevsliv_TD[15];

nevsliv_TD[0] = TextDrawCreate(237.2421421.9666"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[0], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[0], 1);
TextDrawColor(nevsliv_TD[0], 808333055);
TextDrawBackgroundColor(nevsliv_TD[0], 255);
TextDrawFont(nevsliv_TD[0], 4);
TextDrawSetProportional(nevsliv_TD[0], 0);
TextDrawSetShadow(nevsliv_TD[0], 0);

nevsliv_TD[1] = TextDrawCreate(385.9350421.9833"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[1], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[1], 1);
TextDrawColor(nevsliv_TD[1], 808333055);
TextDrawBackgroundColor(nevsliv_TD[1], 255);
TextDrawFont(nevsliv_TD[1], 4);
TextDrawSetProportional(nevsliv_TD[1], 0);
TextDrawSetShadow(nevsliv_TD[1], 0);

nevsliv_TD[2] = TextDrawCreate(240.6902419.4834"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[2], 163.000015.0000);
TextDrawAlignment(nevsliv_TD[2], 1);
TextDrawColor(nevsliv_TD[2], 808333055);
TextDrawBackgroundColor(nevsliv_TD[2], 255);
TextDrawFont(nevsliv_TD[2], 4);
TextDrawSetProportional(nevsliv_TD[2], 0);
TextDrawSetShadow(nevsliv_TD[2], 0);

nevsliv_TD[3] = TextDrawCreate(247.7181426.4004"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[3], 148.209315.0699);
TextDrawAlignment(nevsliv_TD[3], 1);
TextDrawColor(nevsliv_TD[3], 808333055);
TextDrawBackgroundColor(nevsliv_TD[3], 255);
TextDrawFont(nevsliv_TD[3], 4);
TextDrawSetProportional(nevsliv_TD[3], 0);
TextDrawSetShadow(nevsliv_TD[3], 0);

nevsliv_TD[4] = TextDrawCreate(238.4476419.9165"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[4], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[4], 1);
TextDrawColor(nevsliv_TD[4], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[4], 255);
TextDrawFont(nevsliv_TD[4], 4);
TextDrawSetProportional(nevsliv_TD[4], 0);
TextDrawSetShadow(nevsliv_TD[4], 0);

nevsliv_TD[5] = TextDrawCreate(384.4524419.7998"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[5], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[5], 1);
TextDrawColor(nevsliv_TD[5], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[5], 255);
TextDrawFont(nevsliv_TD[5], 4);
TextDrawSetProportional(nevsliv_TD[5], 0);
TextDrawSetShadow(nevsliv_TD[5], 0);

nevsliv_TD[6] = TextDrawCreate(242.1328421.8167"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[6], 42.000010.8999);
TextDrawAlignment(nevsliv_TD[6], 1);
TextDrawColor(nevsliv_TD[6], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[6], 255);
TextDrawFont(nevsliv_TD[6], 4);
TextDrawSetProportional(nevsliv_TD[6], 0);
TextDrawSetShadow(nevsliv_TD[6], 0);

nevsliv_TD[7] = TextDrawCreate(356.4398421.8167"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[7], 45.099811.0000);
TextDrawAlignment(nevsliv_TD[7], 1);
TextDrawColor(nevsliv_TD[7], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[7], 255);
TextDrawFont(nevsliv_TD[7], 4);
TextDrawSetProportional(nevsliv_TD[7], 0);
TextDrawSetShadow(nevsliv_TD[7], 0);

nevsliv_TD[8] = TextDrawCreate(247.7550428.2335"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[8], 45.000010.8899);
TextDrawAlignment(nevsliv_TD[8], 1);
TextDrawColor(nevsliv_TD[8], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[8], 255);
TextDrawFont(nevsliv_TD[8], 4);
TextDrawSetProportional(nevsliv_TD[8], 0);
TextDrawSetShadow(nevsliv_TD[8], 0);

nevsliv_TD[9] = TextDrawCreate(348.3612429.1335"LD_SPAC:white"); // пусто
TextDrawTextSize(nevsliv_TD[9], 47.279710.0000);
TextDrawAlignment(nevsliv_TD[9], 1);
TextDrawColor(nevsliv_TD[9], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[9], 255);
TextDrawFont(nevsliv_TD[9], 4);
TextDrawSetProportional(nevsliv_TD[9], 0);
TextDrawSetShadow(nevsliv_TD[9], 0);

nevsliv_TD[10] = TextDrawCreate(275.2185418.2664"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[10], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[10], 1);
TextDrawColor(nevsliv_TD[10], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[10], 255);
TextDrawFont(nevsliv_TD[10], 4);
TextDrawSetProportional(nevsliv_TD[10], 0);
TextDrawSetShadow(nevsliv_TD[10], 0);

nevsliv_TD[11] = TextDrawCreate(344.8872418.2330"LD_BEAT:chit"); // пусто
TextDrawTextSize(nevsliv_TD[11], 21.000023.0000);
TextDrawAlignment(nevsliv_TD[11], 1);
TextDrawColor(nevsliv_TD[11], 1336760063);
TextDrawBackgroundColor(nevsliv_TD[11], 255);
TextDrawFont(nevsliv_TD[11], 4);
TextDrawSetProportional(nevsliv_TD[11], 0);
TextDrawSetShadow(nevsliv_TD[11], 0);

nevsliv_TD[12] = TextDrawCreate(296.9852425.0000"€aўepҐњ¦©"); // пусто
TextDrawLetterSize(nevsliv_TD[12], 0.20741.2558);
TextDrawTextSize(nevsliv_TD[12], 344.00000.0000);
TextDrawAlignment(nevsliv_TD[12], 1);
TextDrawColor(nevsliv_TD[12], -1);
TextDrawUseBox(nevsliv_TD[12], 1);
TextDrawBoxColor(nevsliv_TD[12], 1107296000);
TextDrawBackgroundColor(nevsliv_TD[12], 255);
TextDrawFont(nevsliv_TD[12], 2);
TextDrawSetProportional(nevsliv_TD[12], 1);
TextDrawSetShadow(nevsliv_TD[12], 0);
TextDrawSetSelectable(nevsliv_TD[12], true);

nevsliv_TD[13] = TextDrawCreate(254.8183422.6667"<<"); // пусто
TextDrawLetterSize(nevsliv_TD[13], 0.41681.6525);
TextDrawTextSize(nevsliv_TD[13], 274.00000.0000);
TextDrawAlignment(nevsliv_TD[13], 1);
TextDrawColor(nevsliv_TD[13], -1);
TextDrawUseBox(nevsliv_TD[13], 1);
TextDrawBoxColor(nevsliv_TD[13], 1107296000);
TextDrawBackgroundColor(nevsliv_TD[13], 255);
TextDrawFont(nevsliv_TD[13], 3);
TextDrawSetProportional(nevsliv_TD[13], 1);
TextDrawSetShadow(nevsliv_TD[13], 0);
TextDrawSetSelectable(nevsliv_TD[13], true);

nevsliv_TD[14] = TextDrawCreate(373.0255422.6667">>"); // пусто
TextDrawLetterSize(nevsliv_TD[14], 0.41681.6525);
TextDrawTextSize(nevsliv_TD[14], 392.20720.0000);
TextDrawAlignment(nevsliv_TD[14], 1);
TextDrawColor(nevsliv_TD[14], -1);
TextDrawUseBox(nevsliv_TD[14], 1);
TextDrawBoxColor(nevsliv_TD[14], 1107296000);
TextDrawBackgroundColor(nevsliv_TD[14], 255);
TextDrawFont(nevsliv_TD[14], 3);
TextDrawSetProportional(nevsliv_TD[14], 1);
TextDrawSetShadow(nevsliv_TD[14], 0);
TextDrawSetSelectable(nevsliv_TD[14], true);

 

Share this post


Link to post

2 answers to this question

  • 1

Есть 2 варинта, но перед этим  надо создать переменную со скинами, к примеру:

new male_skins[] = {1, 2, 3, 4, 5, 6}, female_skins[] = {7, 8, 9, 10, 11, 12}; // ID взяты примерно, может не совпадать

дальше выбираем, либо сделать на текстдравах: создавать по алгоритму ряды со скину в зависимости от выбора пола

ЛИБО

переместить игрок веда-либо, отдалить камеру, запретить управление персом и направить камеру на перса

Дальше будем двигаться по ID:
 

SetPVarInt(playerid, "changeskins"0);
switch(PlayerInfo[playerid][pSex]) // переменные могут не совпадать
{
    case 0// мужчина
    {
        // позиция, поворот игрока, камера, фриз перса и т.д.
        SetPlayerSkin(playerid, male_skins[GetPVarInt(playerid, "changeskins")]);
        // вывод сообщения, типа "нажимайте такие-то кнопки" или можете добаить кликабельыный текстдрав
    }
    case 1// женщина
    {
        // позиция, поворот игрока, камера, фриз перса и т.д.
        SetPlayerSkin(playerid, female_skins[GetPVarInt(playerid, "changeskins")]);
        // вывод сообщения, типа "нажимайте такие-то кнопки" или можете добаить кликабельыный текстдрав
    }
}

Перелистывание скинов

// left
{
    switch(PlayerInfo[playerid][pSex])
    {
        case 0:
        {
            if(GetPVarInt(playerid) == 0) SetPVarInt(playerid, "changeskins"sizeof(male_skins)-1);
            else SetPVarInt(playerid, "changeskins", GetPVarInt(playerid)-1);
            SetPlayerSkin(playerid, male_skins[GetPVarInt(playerid)]);
        }
        case 1:
        {
            if(GetPVarInt(playerid) == 0) SetPVarInt(playerid, "changeskins"sizeof(female_skins)-1);
            else SetPVarInt(playerid, "changeskins", GetPVarInt(playerid)-1);
            SetPlayerSkin(playerid, female_skins[GetPVarInt(playerid)]);
        }
    }
}
// right
{
    switch(PlayerInfo[playerid][pSex])
    {
        case 0:
        {
            if(GetPVarInt(playerid) == sizeof(male_skins)-1) SetPVarInt(playerid, "changeskins"0);
            else SetPVarInt(playerid, "changeskins", GetPVarInt(playerid)-1);
            SetPlayerSkin(playerid, male_skins[GetPVarInt(playerid)]);
        }
        case 1:
        {
            if(GetPVarInt(playerid) == sizeof(female_skins)-1) SetPVarInt(playerid, "changeskins"0);
            else SetPVarInt(playerid, "changeskins", GetPVarInt(playerid)-1);
            SetPlayerSkin(playerid, female_skins[GetPVarInt(playerid)]);
        }
    }
}

Ну я думаю с окончанием выбора скина всё ясно, спавн игрока, возращать камеру и управление, а так же записать ID скина в переменную

Share this post


Link to post
  • 0

@Sleash`en Лови +сик

Заметка от keyl , создано

2.8. Если вы нашли ответ на свой вопрос, рекомендуется поощрить автора лучшего ответа поднятием репутации, а также обязательно пометить ответ на вопрос лучшим.  Как пометить ответ лучшим?

Устное предупреждение.

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • phizlfs
      By phizlfs
      Привет! У меня небольшая проблема. Дело в том, что когда я подключаюсь к серверу у меня вылетает текстдрав, а точнее только box(черная, прозрачная штука). Я в коннект вписал скрытие всех текстдравов игроку - не помогло, пробовал делать это стоком - не помогло, пробовал вместо for(new i... просто в столбик по порядку всё писать - не помогло. Кто знает, в чем может быть проблема? Заранее огромное спасибо.