Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 3 1 2 3 ПоследняяПоследняя
Показано с 1 по 10 из 24
  1. #1
    Аватар для denis01
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.05.2014
    Сообщений
    70
    Репутация:
    0 ±

    Как сохранять скин(new.pwn)

    Здравствуйте многоуважаемые пользователи Pro-Pawn.
    Пишу мод new.pwn и возник вопрос, как сохранять скин при выборе персонажа??

    Создаю его в enum:
    PHP код:
        pSkin 
    Далее сохраняю его в UPDATE

    А вот после регистрации меня направляет на выбор скина я выбираю далее нажимаю Save и вот в этом действие как сохранять скин который я выбрал???? и записывать его в pSkin??

  2. #2
    Аватар для Wise
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Когда выбрал скин:
    PHP код:
    pInfo[playerid][pSkin] = GetPlayerSkin(playerid); 
    И банальное сохранение аккаунта сделать.
    Также не забудь добавить, чтобы после авторизации скин снова выдавался игроку.
    PHP код:
    SetPlayerSkin(playeridpInfo[playerid][pSkin]); 

  3. Пользователь сказал cпасибо:
    denis01 (04.06.2016)
  4. #3
    Аватар для denis01
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.05.2014
    Сообщений
    70
    Репутация:
    0 ±
    Делаю так:
    PHP код:
        if(GetPlayerMenu(playerid) == bomj[0])
        {
            switch(
    row)
            {
                case 
    0:
                {
                    
    SetPVarInt(playerid"SelectSkin"GetPVarInt(playerid"SelectSkin") +1);
                    if(
    GetPVarInt(playerid"SelectSkin") >= 7SetPVarInt(playerid"SelectSkin"0);
                    
    SetPlayerSkin(playerid,SkinMen[GetPVarInt(playerid"SelectSkin")]);
                    
    ShowMenuForPlayer(bomj[0],playerid);
                }
                case 
    1:
                {
                    
    SetPVarInt(playerid"SelectSkin"GetPVarInt(playerid"SelectSkin") -1);
                    if(
    GetPVarInt(playerid"SelectSkin") <= 0SetPVarInt(playerid"SelectSkin"12);
                    
    SetPlayerSkin(playerid,SkinMen[GetPVarInt(playerid"SelectSkin")]);
                    
    ShowMenuForPlayer(bomj[0],playerid);
                }
                case 
    2:
                {
                    
    PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid); // Тут узнаю какой скин и далее сохраняю в UPDATE при выходе игрока (OnPlayerDisconnect)
                    
    DeletePVar(playerid"SelectCharPlace");
                    
    SetPlayerInterior(playerid0);
                    
    SetPlayerVirtualWorld(playerid0);
                    
    TogglePlayerControllable(playerid1);
                    
    pInChangeSkin[playerid] = 0;
                    
    SpawnPlayer(playerid);
                }
            }
        } 
    Но еще когда я выбираю case 2: у меня спавнится со скином CJ как сделать чтобы он выбирал скин от перебора case 0:, case 1:

  5. #4
    Аватар для Wise
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Цитата Сообщение от denis01 Посмотреть сообщение
    Делаю так:
    PHP код:
        if(GetPlayerMenu(playerid) == bomj[0])
        {
            switch(
    row)
            {
                case 
    0:
                {
                    
    SetPVarInt(playerid"SelectSkin"GetPVarInt(playerid"SelectSkin") +1);
                    if(
    GetPVarInt(playerid"SelectSkin") >= 7SetPVarInt(playerid"SelectSkin"0);
                    
    SetPlayerSkin(playerid,SkinMen[GetPVarInt(playerid"SelectSkin")]);
                    
    ShowMenuForPlayer(bomj[0],playerid);
                }
                case 
    1:
                {
                    
    SetPVarInt(playerid"SelectSkin"GetPVarInt(playerid"SelectSkin") -1);
                    if(
    GetPVarInt(playerid"SelectSkin") <= 0SetPVarInt(playerid"SelectSkin"12);
                    
    SetPlayerSkin(playerid,SkinMen[GetPVarInt(playerid"SelectSkin")]);
                    
    ShowMenuForPlayer(bomj[0],playerid);
                }
                case 
    2:
                {
                    
    PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid); // Тут узнаю какой скин и далее сохраняю в UPDATE при выходе игрока (OnPlayerDisconnect)
                    
    DeletePVar(playerid"SelectCharPlace");
                    
    SetPlayerInterior(playerid0);
                    
    SetPlayerVirtualWorld(playerid0);
                    
    TogglePlayerControllable(playerid1);
                    
    pInChangeSkin[playerid] = 0;
                    
    SpawnPlayer(playerid);
                }
            }
        } 
    Но еще когда я выбираю case 2: у меня спавнится со скином CJ как сделать чтобы он выбирал скин от перебора case 0:, case 1:
    В OnPlayerSpawn тот же код:
    PHP код:
    SetPlayerSkin(playeridpInfo[playerid][pSkin]); 
    Pawn - странный предмет. Вроде понимаешь, а вроде бы нет.

  6. Пользователь сказал cпасибо:
    denis01 (04.06.2016)
  7. #5
    Аватар для denis01
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.05.2014
    Сообщений
    70
    Репутация:
    0 ±
    Просто в OnPlayerSpawn без каких либо проверок типо этого pInChangeSkin?

  8. #6
    Аватар для Wise
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Цитата Сообщение от denis01 Посмотреть сообщение
    Просто в OnPlayerSpawn без каких либо проверок типо этого pInChangeSkin?
    Да.
    Pawn - странный предмет. Вроде понимаешь, а вроде бы нет.

  9. #7
    Аватар для denis01
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.05.2014
    Сообщений
    70
    Репутация:
    0 ±
    а В INSERT INTO надо ставлять ( `skin` ) VALUES ( '%d' ) pInfo[playerid][pSkin]??
    Он у меня вызывается до выбора скина

  10. #8
    Аватар для Wise
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Цитата Сообщение от denis01 Посмотреть сообщение
    а В INSERT INTO надо ставлять ( `skin` ) VALUES ( '%d' ) pInfo[playerid][pSkin]??
    Он у меня вызывается до выбора скина
    Скорее всего это записывается аккаунт в базу данных (ник и пароль), а так, если у тебя есть сохранение, то нет смысла записывать здесь скин.
    Pawn - странный предмет. Вроде понимаешь, а вроде бы нет.

  11. #9
    Аватар для denis01
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.05.2014
    Сообщений
    70
    Репутация:
    0 ±
    Еще вопрос а почему у меня перебор идёт с скина CJ получается когда я перебираю скины выдаётся сперва скин CJ пот когда перебираю уже идут остальные скины а скин CJ исчезает

  12. #10
    Аватар для Wise
    Пользователь

    Статус
    Оффлайн
    Регистрация
    30.10.2014
    Сообщений
    148
    Репутация:
    37 ±
    Цитата Сообщение от denis01 Посмотреть сообщение
    Еще вопрос а почему у меня перебор идёт с скина CJ получается когда я перебираю скины выдаётся сперва скин CJ пот когда перебираю уже идут остальные скины а скин CJ исчезает
    Возможно потому, что ты не изменяешь скин, когда перемещаешь игрока к выбору.
    Pawn - странный предмет. Вроде понимаешь, а вроде бы нет.

  13. Пользователь сказал cпасибо:
    denis01 (04.06.2016)
 

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

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

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