AI. Проблема реализации открытия htm, если у чара есть определённые итемы

  • Автор темы Автор темы pipkader
  • Дата начала Дата начала

pipkader

Последний из атеистов
Пользователь
Сообщения
3
Розыгрыши
0
Репутация
0
Реакции
0
Баллы
823
Всем привет!

Столкнулся с надобностью реализовать открытие items.htm , если у чара есть итем 57 ЛИБО итем 58.
Если нет ни одного, то открывать noitems.htm

Сделал такой код, но он не заработал так как мне нужно.
Код:
class 1 dark : citizen
{
handler:
    EventHandler TALKED(talker)
    {
        if( myself::OwnItemCount(talker,57) >= 1 )
        {
            myself::ShowPage(talker,"items.htm");
        }
        else
        {
            myself::ShowPage(talker,"noitems.htm");
        }
        if( myself::OwnItemCount(talker,58) >= 1 )
        {
            myself::ShowPage(talker,"items.htm");
        }
        else
        {
            myself::ShowPage(talker,"noitems.htm");
        }
    }

}


Задача сделать как-то вот так:
class 1 dark : citizen
{
handler:
EventHandler TALKED(talker)
{
if( myself::OwnItemCount(talker,57 OR 58) >= 1 )
{
myself::ShowPage(talker,"items.htm");
}
else
{
myself::ShowPage(talker,"noitems.htm");
}

}

}

Большая просьба помочь правильно составить код.
 

Код:
class 1 dark : citizen
{
handler:
    EventHandler TALKED(talker)
    {
        if( myself::OwnItemCount(talker,57) >= 1  || myself::OwnItemCount(talker, 58) >= 1)
        {
            myself::ShowPage(talker,"items.htm");
        }
        else
        {
            myself::ShowPage(talker,"noitems.htm");
        }
    }

}
 
Разобрался, нужно было сделать вот так:
Код:
class 1 dark : citizen
{
handler:
    EventHandler TALKED(talker)
    {
        if( myself::OwnItemCount(talker,57) >= 1 ) 
        {
            myself::ShowPage(talker,"items.htm");
        }
        
        
        else if ( myself::OwnItemCount(talker,58) >= 1 )
                {
                    myself::ShowPage(talker, "items.htm");
                }
        
        
        else
        {
            myself::ShowPage(talker,"noitems.htm");
        }
    
    }

}
 
Код:
class 1 dark : citizen
{
handler:
    EventHandler TALKED(talker)
    {
        if( myself::OwnItemCount(talker,57) >= 1  || myself::OwnItemCount(talker, 58) >= 1)
        {
            myself::ShowPage(talker,"items.htm");
        }
        else
        {
            myself::ShowPage(talker,"noitems.htm");
        }
    }

}
спасибо! Похоже твой вариант грамотней моего выше написанного )
 
В твоем примере проверка шла на 57-й итем и открывался нужный диалог
Потом проверка шла на 58-й итем и открывался снова нужный диалог

Если посмотреть в сервере, то увидишь, что открывало два диалога, один перекрывал другой.
 
Назад
Сверху Снизу