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

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±

    Загрузка заправок

    Вот допустим у меня 2 кода есть они похожи немного вначале загрузка бизнесов и заправок,
    суть одна и та же должна быть, и в БД таблицы построены тоже схожим методом:
      Открыть/закрыть
    PHP код:
    publicsLoadSBizz()
    {
        static 
    rowsfields;
        
    cache_get_data(rowsfields);
        new 
    temp[64],string2[360],i=0;
        if(
    rows)
        {
            for(new 
    he 0;he rowshe++)
            {
                
    cache_get_row(he0temp), SBizzInfo[he][sID] = strval(temp);
                
    cache_get_row(he1temp), SBizzInfo[he][sOwned] = strval(temp);
                
    cache_get_row(he2temp), strmid(SBizzInfo[he][sOwner], temp0strlen(temp), 255);
                
    cache_get_row(he3temp), strmid(SBizzInfo[he][sMessage], temp0strlen(temp), 255);
                
    cache_get_row(he4temp), SBizzInfo[he][sEntranceX] = floatstr(temp);
                
    cache_get_row(he5temp), SBizzInfo[he][sEntranceY] = floatstr(temp);
                
    cache_get_row(he6temp), SBizzInfo[he][sEntranceZ] = floatstr(temp);
                
    cache_get_row(he7temp), SBizzInfo[he][sBuyPrice] = strval(temp);
                
    cache_get_row(he8temp), SBizzInfo[he][sLocked] = strval(temp);
                
    cache_get_row(he9temp), SBizzInfo[he][sPrice] = strval(temp);
                
    cache_get_row(he10temp), SBizzInfo[he][sBenz] = strval(temp);
                
    cache_get_row(he11temp), SBizzInfo[he][sPriceBenz] = strval(temp);
                
    cache_get_row(he12temp), SBizzInfo[he][sTill] = strval(temp);
                
    i++;
                if(
    SBizzInfo[he][sOwned] == 0)
                {
                    
    format(string2sizeof(string2), "{FFFF00}%s\n{FFFFFF}Цена: {32CD32}%d{FFFFFF} вирт\n\n\n[{FF0000}Заправка не работает{FFFFFF}]",SBizzInfo[he][sMessage],SBizzInfo[he][sBuyPrice]);
                    
    SBizzInfo[he][sLocked] = 1;
                }
                else
                {
                    if(
    SBizzInfo[he][sLocked] == 0format(string2sizeof(string2), "{FFFF00}%s\n{FFFFFF}Владелец: {32CD32}%s\nБензин: %d/10000\nСтоимость: %d вирт.\n\n{FFFFFF}[{32CD32}Заправка работает{FFFFFF}]",SBizzInfo[he][sMessage],SBizzInfo[he][sOwner],SBizzInfo[he][sBenz],SBizzInfo[he][sPriceBenz]);
                    else 
    format(string2sizeof(string2), "{FFFF00}%s\n{FFFFFF}Владелец: {32CD32}%s\nБензин: %d/10000\nСтоимость: %d вирт.\n\n{FFFFFF}[{FF0000}Заправка не работает{FFFFFF}]",SBizzInfo[he][sMessage],SBizzInfo[he][sOwner],SBizzInfo[he][sBenz],SBizzInfo[he][sPriceBenz]);
                }
                
    SBizzInfo[he][sLabel] = Create3DTextLabel(string2,COLOR_YELLOW,SBizzInfo[he][sEntranceX], SBizzInfo[he][sEntranceY], SBizzInfo[he][sEntranceZ],20.0,0,1);
                
    SBizzInfo[he][sIcon] = CreateDynamicMapIcon(SBizzInfo[he][sEntranceX], SBizzInfo[he][sEntranceY], SBizzInfo[he][sEntranceZ], 42COLOR_WHITE0, -1, -150.0);
            }
            
    printf("[ %d ] Заправки успешно загружены.",i);
        }
        else 
    printf("Заправки не загружены.");
        return 
    true;


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

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

    Статус
    Оффлайн
    Регистрация
    31.07.2015
    Сообщений
    154
    Репутация:
    17 ±
    Так конечно, вы координаты округляете для чего-то..

    Для чего Вам использовать floatstr & strlen(inputtext)? Если можно напрямую из БД выгрузить значение Float (перейти), а так же и с целым числом (перейти)

    И если вы используете версию R9 +, то мне кажется так удобней и практичней загружать значения
    PHP код:
    for(new  = hehe <= rowshe++)
     {
         
    SBizzInfo[he][sID]= cache_get_field_content_int(he"Название_в_базе_данных");
         
    // etc

     

    Последний раз редактировалось Роуди.; 11.01.2016 в 22:34. Причина: Не внимательно посмотрел код.

  3. Пользователь сказал cпасибо:
    vovandolg (11.01.2016)
 

 

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

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

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

Ваши права

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