Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 2 ПерваяПервая 1 2
Показано с 11 по 14 из 14

Тема: Sscanf + Pickup

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

    Статус
    Оффлайн
    Регистрация
    25.12.2016
    Сообщений
    31
    Репутация:
    0 ±
    Цитата Сообщение от qwezert Посмотреть сообщение
    Ну насколько я понимаю - тут все попроще будет. При загрузке пикапов сохраняй в массив с пикапами - их ID из бд. Когда игрок будет вставать на пикап - доставай их БДшный ID из ячейки и отправляй запрос на изменение. И можно упростить тот код который ты написал)
    в паблик пикапов
    PHP код:
        for(new 0ArtefaktPiCkUpSi++)
            if(
    pickupid == PlayerInfo[playerid][PlayerPickup][i])
            {
                new 
    string[92];
                
    format(string,sizeof(string), "SELECT * FROM `HideThings` WHERE `ID` = '%d' AND `Nick` = '%s'",PlayerInfo[playerid][PlayerPickup][i],PlayerInfo[playerid][pName]);
                
    mysql_tquery(MYSQL_ARGstring"CheckThings""ds"iplayerid);
                break;
               } 
    проверка

    PHP код:
    forward CheckThings(iplayerid);
    public 
    CheckThings(iplayerid)
    {
        new 
    rowsfields;
        
    cache_get_data(rowsfields);
        if(
    rows)
        {
            new 
    check_id;
            
    check_id cache_get_field_content_int(i,"ID");
            if(
    check_id == i)return SendClientMessage(playerid0xCC6699FF,"Вы уже собирали эту вещь!");
        }
        else 
        {
               
    PlayerInfo[playerid][AllPick]++;
            
    UppedArtefaktPiCkUpS[playerid][i] = 1;
            
    DestroyDynamicPickup(PlayerInfo[playerid][PlayerPickup][i]);
            
    Pick_SaveInfo(playerid);
            new 
    string[144];
            if(
    PlayerInfo[playerid][AllPick] == ArtefaktPiCkUpS)
            {
                
    GivePlayerMoney(playerid1000000*COMBO_PREDMER_EARN);
            }
            else
            {
                
    GivePlayerMoney(playerid, (ArtZones[i][ObjID]*random(7))*COMBO_PREDMER_EARN);
                new 
    squery[512];
                
    format(squery,sizeof(squery),"INSERT INTO `HideThings` (`ID`,`Nick`) VALUES ('%d','%s')",i,PlayerInfo[playerid][pName]);
                
    mysql_tquery(MYSQL_ARGsquery"""");
            }
        }
        return 
    1;

    Как то так?)

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

    Статус
    Оффлайн
    Регистрация
    13.06.2016
    Адрес
    Одесса, Украина
    Сообщений
    281
    Репутация:
    51 ±
    Просто если у тебя пикапы разных типов - то тебе нужно в бд хранить всю инфу о пикапе координаты, его тип, что бы ты потом мог проверить - на тот ли ты пикап встал.
    Лучше лишний раз показаться глупым и что то узнать, чем вы*бнуться и обосраться.

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

    Статус
    Оффлайн
    Регистрация
    25.12.2016
    Сообщений
    31
    Репутация:
    0 ±
    Цитата Сообщение от qwezert Посмотреть сообщение
    Просто если у тебя пикапы разных типов - то тебе нужно в бд хранить всю инфу о пикапе координаты, его тип, что бы ты потом мог проверить - на тот ли ты пикап встал.
    пикапы одного типа, иды пикапов и координаты берутся с массива, ну так по коду выше, всё верно или нет?

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

    Статус
    Оффлайн
    Регистрация
    25.12.2016
    Сообщений
    31
    Репутация:
    0 ±
    Собственно сделал по твоему способу, всё отлично работает, спасибо) тему можно закрыть!)

 

 
Страница 2 из 2 ПерваяПервая 1 2

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

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

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

Ваши права

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