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

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±

    Смена ника.

    Вообщем столкнулся я с проблемой сохранения домов после смены ника.

    Суть проблемы: Если у меня куплен дом и я меняю ник и хозяин дома не меняется помогите сделать что бы менялся.

    Код смены ника:
    PHP код:
            if(dialogid == 10)//Смена ника
            
    {
                if(
    response)
                {
                    if(
    strlen(inputtext) < || !valid_sym(inputtext) || strlen(inputtext) > MAX_PLAYER_NAME) return SCM(playerid, -1"{00FF00}Energy Drift: {FFFFFF}Ник слишком короткий или в тексте найдены запрещенные символы.");
                    new 
    str[256],str2[256],string[256],neck[300];
                    
    format(str,256,"Accouns/%s.ini",inputtext);
                    if(
    fexist(str)) return SCM(playerid, -1"{00FF00}Energy Drift: {FFFFFF}Этот ник уже занят");
                    
    format(str2,256,"Accouns/%s.ini",pNick(playerid));
                    
    fremove(str2);
                    
    strmid(Player[playerid][Name], inputtext0strlen(inputtext), MAX_PLAYER_NAME);
                    
    format(string,256,"Accouns/%s.ini",pNick(playerid));
                    new 
    iniFile ini_createFile(string);
                    
    ini_setString(iniFile,"Name",pNick(playerid));
                    
    ini_setString(iniFile,"Pass",Player[playerid][Pass]);
                    
    ini_setInteger(iniFile,"Level",Player[playerid][Level]);
                    
    ini_setInteger(iniFile,"Drift",Player[playerid][Drift]);
                    
    ini_setInteger(iniFile,"Win",Player[playerid][Win]);
                    
    ini_setInteger(iniFile,"Lose",Player[playerid][Lose]);
                    
    ini_setInteger(iniFile,"Money",GetPlayerMoney(playerid));
                    
    ini_setInteger(iniFile,"Skin",Player[playerid][Skin]);
                    
    ini_setInteger(iniFile,"Admin",Player[playerid][Admin]);
                    
    ini_setInteger(iniFile,"Bann",Player[playerid][Bann]);
                    
    ini_setInteger(iniFile,"Muted",Player[playerid][Muted]);
                    
    ini_setInteger(iniFile,"MuteTime",Player[playerid][MuteTime]);
                    
    ini_setInteger(iniFile,"Exist",Player[playerid][Exist]);
                    
    ini_setInteger(iniFile,"Warn",Player[playerid][pWarns]);
                    
    ini_setInteger(iniFile,"VIP",Player[playerid][pVIP]);//Вип система
                    
    ini_setInteger(iniFile,"Donate",Player[playerid][pDonate]);//Система доната
                    
    ini_setInteger(iniFile,"pGift",Player[playerid][pGift]);//Новый год
                    
    ini_setInteger(iniFile,"pJump",Player[playerid][pJump]);//Доп.возможности (прыжек на машине)
                    
    ini_setInteger(iniFile,"pCrash",Player[playerid][pCrash]);//Доп.возможности (AntiCraser)
                    
    ini_setInteger(iniFile,"pDriftX5",Player[playerid][pDriftX5]);//Доп.возможности (Множетель дрифта x5)
                    
    ini_setInteger(iniFile,"pJailed",Player[playerid][pJailed]);//Система тюрьмы
                    
    ini_setInteger(iniFile,"pMestoJail",Player[playerid][pMestoJail]);//Система тюрьмы
                    
    ini_setInteger(iniFile,"pJailTime",Player[playerid][pJailTime]);//Система тюрьмы
                    
    ini_setInteger(iniFile,"Klan",PKlan[playerid]);//Система кланов доработка
                    
    ini_setInteger(iniFile,"KlanLvl",KlanLvl[playerid]);//Система кланов доработка
                    
    ini_setFloat(iniFile,"Posx",Player[playerid][Posx]);
                    
    ini_setFloat(iniFile,"Posy",Player[playerid][Posy]);
                    
    ini_setFloat(iniFile,"Posz",Player[playerid][Posz]);
                    
    ini_setFloat(iniFile,"Posa",Player[playerid][Posa]);
                    
    ini_setFloat(iniFile,"SaveX",Player[playerid][pPosX]);//Сохронение позиции по команде
                    
    ini_setFloat(iniFile,"SaveY",Player[playerid][pPosY]);//Сохронение позиции по команде
                    
    ini_setFloat(iniFile,"SaveZ",Player[playerid][pPosZ]);//Сохронение позиции по команде
                    
    ini_setFloat(iniFile,"Angle",Player[playerid][pPosA]);//Сохронение позиции по команде
                    
    ini_closeFile(iniFile);
                    
    SavePlayer(playerid);

                    return 
    1;
                }
            } 
    Код сохранения домов
    PHP код:
    stock HouseFile_Save(HouseID)
    {
        new 
    file[100], File:HFileLineForFile[100];
        
    format(filesizeof(file), HouseFileHouseID);
        
    HFile fopen(fileio_write);
        if(
    AHouseData[HouseID][Owned] == true)
        
    format(LineForFile100"Owned Yes\r\n");
        else
        
    format(LineForFile100"Owned No\r\n");
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"Owner %s\r\n"AHouseData[HouseID][Owner]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseName %s\r\n"AHouseData[HouseID][HouseName]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseX %f\r\n"AHouseData[HouseID][HouseX]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseY %f\r\n"AHouseData[HouseID][HouseY]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseZ %f\r\n"AHouseData[HouseID][HouseZ]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseLevel %i\r\n"AHouseData[HouseID][HouseLevel]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HouseMaxLevel %i\r\n"AHouseData[HouseID][HouseMaxLevel]);
        
    fwrite(HFileLineForFile);
        
    format(LineForFile100"HousePrice %i\r\n"AHouseData[HouseID][HousePrice]);
        
    fwrite(HFileLineForFile);
        if(
    AHouseData[HouseID][HouseOpened] == true)
        
    format(LineForFile100"HouseOpened Yes\r\n");
        else
        
    format(LineForFile100"HouseOpened No\r\n");
        
    fwrite(HFileLineForFile);
        if(
    AHouseData[HouseID][StaticHouse] == true)
        
    format(LineForFile100"StaticHouse Yes\r\n");
        else
        
    format(LineForFile100"StaticHouse No\r\n");
        
    fwrite(HFileLineForFile);
        
    /*fwrite(HFile, "\r\n");
        {
            {
                format(LineForFile, 100, "[Vehicle]\r\n");
                fwrite(HFile, LineForFile);
                format(LineForFile, 100, "[/Vehicle]\r\n");
                fwrite(HFile, LineForFile);
                fwrite(HFile, "\r\n");
            }
        }*/
        
    fclose(HFile);
        return 
    1;

    Вот как дома выгледят в файле:
    PHP код:
    Owned Yes
    Owner eXtaz
    HouseName 
    {00FF11}eXtaz's house
    HouseX -264.639434
    HouseY 1529.455200
    HouseZ 76.062660
    HouseLevel 1
    HouseMaxLevel 10
    HousePrice 2100000
    HouseOpened No
    StaticHouse No 
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Есть переменная отвечающая за ID дома игрока?

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

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Есть переменная отвечающая за ID дома игрока?
    owner[24]
    PHP код:
    enum THouseData
    {
        
    PickupID,
        
    Text3D:DoorText,
        
    MapIconID,
        
    bool:Owned,
        
    Owner[24],
        
    HouseName[100],
        
    Float:HouseX,
        
    Float:HouseY,
        
    Float:HouseZ,
        
    HouseLevel,
        
    HouseMaxLevel,
        
    HousePrice,
        
    bool:HouseOpened,
        
    /*bool:StaticHouse*/
    }
    new 
    AHouseData[MAX_HOUSES][THouseData]; 
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    Не переменная дома, а игрока, что-то типа:
    PHP код:
    PlayerInfo[playerid][pHouse

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

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Не переменная дома, а игрока, что-то типа:
    PHP код:
    PlayerInfo[playerid][pHouse
    Ой сорри )
    PHP код:
    APlayerData[playerid][CurrentHouse] = 0
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    PHP код:
    strmid(AHouseData[APlayerData[playerid][CurrentHouse]][Owner], inputtext0MAX_PLAYER_NAMEMAX_PLAYER_NAME 1); 

  9. Пользователь сказал cпасибо:
    BaBuIIIkaDrifteR (30.01.2015)
  10. #7
    Аватар для BaBuIIIkaDrifteR
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    PHP код:
    strmid(AHouseData[APlayerData[playerid][CurrentHouse]][Owner], inputtext0MAX_PLAYER_NAMEMAX_PLAYER_NAME 1); 
    Это if(dialogid == 10) суда ?
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    После
    PHP код:
    fremove(str2); 
    добавляйте.

  12. Пользователь сказал cпасибо:
    BaBuIIIkaDrifteR (30.01.2015)
  13. #9
    Аватар для BaBuIIIkaDrifteR
    Пользователь

    Статус
    Оффлайн
    Регистрация
    24.03.2014
    Адрес
    Ямайка
    Сообщений
    303
    Репутация:
    8 ±
    Не работает =(
    ip adress: В разработке:7777
    My Skype: Skype Phone
    [В]контакте: Рома Уруру
    Разработка: EnergyDRIFT©|2015

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

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Адрес
    Ярославль
    Сообщений
    1,366
    Репутация:
    774 ±
    В файле не меняется?

 

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

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

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

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

Ваши права

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