antiblock
Elveron
  • Chatbox

    You don't have permission to chat.
    Load More
  • 0
ButchGraig

Itens não aparecem no MALL

Question

Configurei itemshop no site.

Quando compro o item, se for de 1 slot ele vai para o armazem de artigos, mas se ele é item de 2 slots (armas ou armaduras por exemplo), ele não aparece no armazem de artigos.

Share this post


Link to post
Share on other sites

19 answers to this question

  • 1
13 horas atrás, Gésley Costa disse:

Configurei itemshop no site.

Quando compro o item, se for de 1 slot ele vai para o armazem de artigos, mas se ele é item de 2 slots (armas ou armaduras por exemplo), ele não aparece no armazem de artigos.

Mas tens algum log na base de dados, ou nem sequer chega a comprar?

Share this post


Link to post
Share on other sites
antiblock
Cyphriun
  • 1
13 horas atrás, Gésley Costa disse:

Fiz um teste aqui e realmente o problema de sumir acontece somente com itens que estão com tempo.

Como resolver?

Quando crias um item com tempo no item shop ao comprares a itemshop não adiciona o tempo. O que podes fazer é criar um cofre em que saia o traje ou então ao adicionar os itens ao item shop ir modificar na database para adicionar o tempo.

 

 

Share this post


Link to post
Share on other sites
  • 1
12 horas atrás, Gésley Costa disse:

Então te faço a seguinte pergunta;

Como criar um cofre?

isso resolveria meu problema.

podes fazer mais uma vez com uma quest.

 

quest cofre_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(iddoitem, quantidade)

end

end

end

Share this post


Link to post
Share on other sites
  • 1
38 minutos atrás, Gésley Costa disse:

Certo! Acho que ja estou abusando da sua boa vontade, mas vou lhe fazer mais uma pergunta.

E por exemplo, posso fazer 2 quests usando o mesmo cofre para dar itens diferentes?

Por exemplo:

 

quest cofre1_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(41029, 1)

end

end

end

 

e outra 

 

quest cofre2_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(41030, 1)

end

end

end

 

 

Podes fazer com opção de escolha

Spoiler

quest cofre2_item begin
state start begin
when 1222.use begin
local premio = select("Traje Guerreiro", "Traje Ninja", "Sair")
if premio == 1 then
pc.give_item2(iddoitem, quantidade)
else if premio == 2 then 
pc.give_item2(iddoitem, quantidade)
else if premio == 3 then 
return
end
end
end
end

Ou então um item aleatório de uma lista

Spoiler

quest cofre2_item begin
state start begin
when 1222.use begin
local item = {ITEM_VNUM1, ITEM_VNUM2, }
pc.give_item2(item[number(1, table.getn(item))])
end
end
end
end

 

 

Ou outra mais simples com o mesmo efeito

 

 
Spoiler

 


quest cofre_beran_setaou begin
state start begin  
when 50080.use begin   

local premio = math.random(1,2)  
 
if premio == 1 then    
pc.give_item2("50821", 1) 
  
elseif premio == 2 then    
pc.give_item2("50821", 2)  
end  
end
end
end


 

 

 

Thanks Paci, pelos math.random

Share this post


Link to post
Share on other sites
  • 1

Tenta assim separei os elseif

 

quest cofre_item begin
state start begin
when 53501.use begin
local premio = select("Traje Guerreiro M", "Traje Guerreiro F", "Sair")
if premio == 1 then
pc.give_item2(41029, 1)
elseif premio == 2 then 
pc.give_item2(41030, 1)
elseif premio == 3 then 
return
end
end
end
end

Share this post


Link to post
Share on other sites
  • 1

quest cofre_item begin
state start begin
when 53501.use begin
local premio = select("Traje Guerreiro M", "Traje Guerreiro F", "Sair")


if premio == 1 then
pc.give_item2(41029, 1)

pc.remove_item(53501, 1)


elseif premio == 2 then 
pc.give_item2(41030, 1)

pc.remove_item(53501, 1)


elseif premio == 3 then 
return
end
end

end

end

Share this post


Link to post
Share on other sites
  • 0
49 minutos atrás, .รtгเкє disse:

Mas tens algum log na base de dados, ou nem sequer chega a comprar?

Fiz 2 testes.

Coloquei a armadura aço+8 e +9 e caixa do luar.

A Caixa do Luar, no log aparece no VNUM o código dela 50011, mas a armadura no campo VNUM aparece se for +8 só o 8 e se for +9 só o 9.

Tirei print:
http://prntscr.com/f43dre

Share this post


Link to post
Share on other sites
  • 0
21 minutos atrás, Gésley Costa disse:

Fiz 2 testes.

Coloquei a armadura aço+8 e +9 e caixa do luar.

A Caixa do Luar, no log aparece no VNUM o código dela 50011, mas a armadura no campo VNUM aparece se for +8 só o 8 e se for +9 só o 9.

Tirei print:
http://prntscr.com/f43dre

mete aí o código da itemshop, pode ser que alguém que perceba de php ajude. Isso deve ser um erro lá 

Share this post


Link to post
Share on other sites
  • 0
1 hora atrás, .รtгเкє disse:

mete aí o código da itemshop, pode ser que alguém que perceba de php ajude. Isso deve ser um erro lá 

<div id="con-top">Loja de Itens</div>
<div id="con-mid">
<?PHP

    function canBuy()
    {
        if(!isset($_SESSION['nextBuy']))
        {
            $_SESSION['nextBuy']=time();
        }
        
        if($_SESSION['nextBuy']<=time())
        {
            $_SESSION['nextBuy']=time()+5;
            return true;
        }
        else
            return false;
    }

  if(isset($_SESSION['user_admin']) && checkInt($_SESSION['user_admin']) && $_SESSION['user_admin']>=0) {
  
    echo'<h2>Loja de Itens</h2>';
    if(isset($_GET['id']) && checkInt($_GET['id'])) {
    
      $sqlCmd="SELECT vnum, preis, attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2 FROM ".SQL_HP_DB.".is_items WHERE id='".$_GET['id']."' AND anzeigen='J' LIMIT 1";
      $sqlQry=mysql_query($sqlCmd,$sqlHp);
      if(mysql_num_rows($sqlQry)==1) {
      
        $getItem=mysql_fetch_object($sqlQry);
        
        $sqlCoins = "SELECT coins FROM account.account WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1";
        $qryCoins = mysql_query($sqlCoins,$sqlServ);
        $getCoins = mysql_fetch_object($qryCoins);
        
        if(canBuy())
        {
            if(($getCoins->coins)>=$getItem->preis) {
          
              $getGroesse = compareItems($getItem->vnum);
              $belPos = checkPos($_SESSION['user_id']);
              $possiblePos = findPos($belPos['islager'],$getGroesse['groesse']);
              if(!empty($possiblePos)) {
                
                $nCoins = $getCoins->coins-$getItem->preis;
                
                $sqlCmd="UPDATE account.account SET coins='".mysql_real_escape_string($nCoins)."' WHERE id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1";
                $sqlQry=mysql_query($sqlCmd,$sqlServ);
                
                $sqlLog="INSERT INTO ".SQL_HP_DB.".is_log (account_id,vnum,preis,zeitpunkt) VALUES ('".mysql_real_escape_string($_SESSION['user_id'])."','".$getItem->vnum."','".$getItem->preis."','".$sqlZeit."')";
                $qryLog=mysql_query($sqlLog,$sqlHp);
                
                $sqlItem="INSERT INTO player.item 
                (owner_id,window,pos,count,vnum,attrtype0, attrvalue0, attrtype1, attrvalue1, attrtype2, attrvalue2, attrtype3, attrvalue3, attrtype4, attrvalue4, attrtype5, attrvalue5, attrtype6, attrvalue6, socket0, socket1, socket2)
                VALUES 
                ('".mysql_real_escape_string($_SESSION['user_id'])."','MALL','".$possiblePos[0]."','1','".$getItem->vnum."','".$getItem->attrtype0."', '".$getItem->attrvalue0."', '".$getItem->attrtype1."', '".$getItem->attrvalue1."', '".$getItem->attrtype2."', '".$getItem->attrvalue2."', '".$getItem->attrtype3."', '".$getItem->attrvalue3."', '".$getItem->attrtype4."', '".$getItem->attrvalue4."', '".$getItem->attrtype5."', '".$getItem->attrvalue5."', '".$getItem->attrtype6."', '".$getItem->attrvalue6."', '".$getItem->socket0."', '".$getItem->socket1."', '".$getItem->socket2."')";
                $qryItem=mysql_query($sqlItem,$sqlServ) or die(mysql_error());
                
                echo'<p class="meldung">O item foi comprado com sucesso. Caso ocorra erro entre em contacto com a Administração o mais rapido possível.</p>';
                
              }
              else {
                echo'<p>Você não tem espaço suficiente no seu armazenamento loja de itens.</p>';
              }
              
            }
            else {
              echo'<p class="meldung">Você não tem On3Coins suficientes.</p>';
            }
        }
        else
        {
            echo'<p class="meldung">Só é permetido comprar um item de 5 (cinco) em 5 (cinco) Minutos</p>';
        }
      }
      else {
        echo'<p class="meldung">O item especificado não existe.</p>';
      }
    }
    else {
      echo'<p class="meldung">Ocurreu um Erro, Por favor entre em contacto com a Administração.</p>';
    }
    echo'<p><a href="javascript:history.back()">Voltar Atrás</a></p>';
  }
  else {
    echo'<p class="meldung">Você precisa estar logado para esta área.</p>';
  }
?>
</div>
<div id="con-bot"></div>

Share this post


Link to post
Share on other sites
  • 0
22 horas atrás, Gésley Costa disse:

Configurei itemshop no site.

Quando compro o item, se for de 1 slot ele vai para o armazem de artigos, mas se ele é item de 2 slots (armas ou armaduras por exemplo), ele não aparece no armazem de artigos.

Consegui resolver uma parte. Agora as armaduras aparecem no MALL quando compra.

Mas o traje, código 41029 e 41030 compra, registra no log.

Ai logo o personagem e entro no armazem de artigos, quando abre o armazem o item aparece la e some na mesma hora.

Share this post


Link to post
Share on other sites
  • 0
16 horas atrás, Gésley Costa disse:

Consegui resolver uma parte. Agora as armaduras aparecem no MALL quando compra.

Mas o traje, código 41029 e 41030 compra, registra no log.

Ai logo o personagem e entro no armazem de artigos, quando abre o armazem o item aparece la e some na mesma hora.

Se calhar os trajes teem tempo 

Share this post


Link to post
Share on other sites
  • 0
3 horas atrás, .รtгเкє disse:

Se calhar os trajes teem tempo 

Sim. Quando eu invoco eles, vem com 7 dias.

Mas com tempo não da pra vender no Item Shop?

O que precisaria fazer? Tirar o tempo?

como tirar?

Share this post


Link to post
Share on other sites
  • 0

Fiz um teste aqui e realmente o problema de sumir acontece somente com itens que estão com tempo.

Como resolver?

Share this post


Link to post
Share on other sites
  • 0

Então te faço a seguinte pergunta;

Como criar um cofre?

isso resolveria meu problema.

Share this post


Link to post
Share on other sites
  • 0
4 horas atrás, .รtгเкє disse:

podes fazer mais uma vez com uma quest.

 

quest cofre_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(iddoitem, quantidade)

end

end

end

Certo! Acho que ja estou abusando da sua boa vontade, mas vou lhe fazer mais uma pergunta.

E por exemplo, posso fazer 2 quests usando o mesmo cofre para dar itens diferentes?

Por exemplo:

 

quest cofre1_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(41029, 1)

end

end

end

 

e outra 

 

quest cofre2_item begin

state start begin

when 1222.use begin

say_chat("Recebeste traje de Guerreiro")

pc.give_item2(41030, 1)

end

end

end

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now