Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 6 из 6
  1. #1
    Аватар для GodFather
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.05.2014
    Сообщений
    30
    Репутация:
    1 ±

    Проблемка с загрузкой домов

    Загрузка домов вызывается в ongamemodeinit:
    PHP код:
    mysql_function_query(MYSQL_ARG"SELECT * FROM `"TABLE_HOUSES"`"true"OnHousesLoad",""); 
    PHP код:
    public OnHousesLoad() // Коллбэк загрузки
    {
        new 
    time GetTickCount();
        new 
    string[128],klass[2];
        new 
    temp[32],rows,fieldsconnectionHandle;
        
    cache_get_data(rows,fields,connectionHandle);
        if(
    rows)
        {
            for(new 
    idx 1idx <= rowsidx++)
            {
                
    cache_get_field_content(idx-1,"hID",temp,connectionHandle), HouseInfo[idx][hID] = strval(temp);
                
    cache_get_field_content(idx-1,"hOwned",temp,connectionHandle), HouseInfo[idx][hOwned] = strval(temp);
                
    cache_get_field_content(idx-1,"hOwner",HouseInfo[idx][hOwner],connectionHandle,24);
                
    cache_get_field_content(idx-1,"hEnterX",temp,connectionHandle), HouseInfo[idx][hEnterX] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hEnterY",temp,connectionHandle), HouseInfo[idx][hEnterY] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hEnterZ",temp,connectionHandle), HouseInfo[idx][hEnterZ] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hExitX",temp,connectionHandle), HouseInfo[idx][hExitX] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hExitY",temp,connectionHandle), HouseInfo[idx][hExitY] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hExitZ",temp,connectionHandle), HouseInfo[idx][hExitZ] = floatstr(temp);
                
    cache_get_field_content(idx-1,"hLevel",temp,connectionHandle), HouseInfo[idx][hLevel] = strval(temp);
                
    cache_get_field_content(idx-1,"hPrice",temp,connectionHandle), HouseInfo[idx][hPrice] = strval(temp);
                
    cache_get_field_content(idx-1,"hLock",temp,connectionHandle), HouseInfo[idx][hLock] = strval(temp);
                
    cache_get_field_content(idx-1,"hTakings",temp,connectionHandle), HouseInfo[idx][hTakings] = strval(temp);
                
    cache_get_field_content(idx-1,"hInt",temp,connectionHandle), HouseInfo[idx][hInt] = strval(temp);
                
    cache_get_field_content(idx-1,"hHel",temp,connectionHandle), HouseInfo[idx][hHel] = strval(temp);
                
    cache_get_field_content(idx-1,"hClass",temp,connectionHandle), HouseInfo[idx][hClass] = strval(temp);
                
    TOTALHOUSES++;
                if(
    HouseInfo[idx][hOwned] == 0)
                {
                    
    HouseInfo[idx][hPickupID] = CreatePickup(127323HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ],-1);
                    
    HouseInfo[idx][hIconID] = CreateDynamicMapIcon(HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ], 31COLOR_WHITE0, -1, -1200.0);
                    switch(
    HouseInfo[idx][hClass])
                    {
                    case 
    0klass "E";
                    case 
    1klass "D";
                    case 
    2klass "C";
                    case 
    3klass "B";
                    case 
    4klass "A";
                    case 
    5klass "S";
                    }
                    
    format(string,256,"Номер дома: %i\nЦена: %i долларов\nКласс: %s",idx,HouseInfo[idx][hPrice],klass);
                    
    HouseInfo[idx][hTextID] = Create3DTextLabel(string,COLOR_SEND,HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ],20.0,0,1);
                }
                else
                {
                    
    HouseInfo[idx][hPickupID] = CreatePickup(127223HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ],-1);
                    
    HouseInfo[idx][hIconID] = CreateDynamicMapIcon(HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ], 32COLOR_WHITE0, -1, -1200.0);
                    switch(
    HouseInfo[idx][hClass])
                    {
                    case 
    0klass "E";
                    case 
    1klass "D";
                    case 
    2klass "C";
                    case 
    3klass "B";
                    case 
    4klass "A";
                    case 
    5klass "S";
                    }
                    
    format(string,256,"Номер дома: %i\nВладелец: %s\nКласс: %s",idx,HouseInfo[idx][hOwner],klass);
                    
    HouseInfo[idx][hTextID] = Create3DTextLabel(string,COLOR_LIGHTRED,HouseInfo[idx][hEnterX], HouseInfo[idx][hEnterY], HouseInfo[idx][hEnterZ],20.0,0,1);
                }
            }
        }
        
    printf("[Загружено домов]: <%i>. Времени затрачено: <%i мс>",TOTALHOUSES,GetTickCount()-time);
        return 
    true;

    Проблема в том, что всегда загружается 0 домов.


    - - - Добавлено - - -

    Версия MySQL R34

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Включите логирование при отсылке запроса (mysql_debug) и плагин вам сам всё расскажет
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. #3
    Аватар для GodFather
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.05.2014
    Сообщений
    30
    Репутация:
    1 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Включите логирование при отсылке запроса (mysql_debug) и плагин вам сам всё расскажет
    Включил логирование...
    PHP код:
    [20:17:46] [DEBUGmysql_tquery connection1query"SELECT * FROM `house`"callback"OnHousesLoad"format"(null)"
    [20:17:46] [DEBUGCMySQLQuery::CMySQLQuery() - constructor called
    [20:17:46] [DEBUGmysql_tquery scheduling query "SELECT * FROM `house`"..
    [
    20:17:46] [DEBUGCMySQLQuery::Execute[OnHousesLoad()] - starting query execution
    [20:17:46] [DEBUGCMySQLQuery::Execute[OnHousesLoad()] - query was successful
    [20:17:46] [DEBUGCMySQLResult::CMySQLResult() - constructor called
    [20:17:46] [DEBUGCMySQLQuery::Execute[OnHousesLoad()] - data being passed to ProcessCallbacks()
    [
    20:17:46] [DEBUGCalling callback "OnHousesLoad"..
    [
    20:17:46] [DEBUGcache_get_data connection0
    [20:17:46] [ERROR"cache_get_data" invalid connection handle (ID 0)
    [
    20:17:46] [DEBUGCMySQLResult::~CMySQLResult() - deconstructor called
    [20:17:46] [DEBUGCMySQLQuery::~CMySQLQuery() - deconstructor called 
    И... что это значит?

  4. #4
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    PHP код:
    cache_get_data(rows,fields,connectionHandle); 
    На
    PHP код:
    cache_get_data(rows,fields); 
    Как и в остальных случаях. На месте этой переменной должна быть та, в которую записывается результат подключения к бд (mysql_connect)
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    18.05.2014
    Сообщений
    30
    Репутация:
    1 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    PHP код:
    cache_get_data(rows,fields,connectionHandle); 
    На
    PHP код:
    cache_get_data(rows,fields); 
    Как и в остальных случаях. На месте этой переменной должна быть та, в которую записывается результат подключения к бд (mysql_connect)
    Исправил как вы сказали, помогло. Большое спасибо.

  7. #6
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,282
    Репутация:
    417 ±
    Closed.

 

 

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

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

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

Ваши права

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