Ir para conteúdo

Rayo

Membro
  • Registro em

  • Última visita

Tudo que Rayo postou

  1. Posts/Reputação/Tempo por favor!
  2. Qual a versão da sua base/distro? 1.3?
  3. Você tem uma imagem dessa aura? o efeito só vai desaparecer quando o cara deslogar?
  4. Coloca ai o código do seu layout.php
  5. Rayo postou uma resposta no tópico em Suporte OTServer Derivados
    Pelo que eu consegui entender, o erro está nesta função getItemInfo(), essa função não existe na SOURCE da sua base/distro. Você terá que adiciona-la manualmente,depois compilar a sua distro ai sim ela pode ser utilizada no seu script LUA.
  6. Muita das vezes não é bug, o problema é que a galera quer que as distros sejam 100% iguais ao PXG. Ai seria muito fácil!
  7. É por que você ta usando uma função que adiciona o efeito das bless ao equipar o item,então obviamente ao retira-lo o efeito sairá ?. Até onde eu sei,não tem como fazer o efeito permanecer quando retirar o equipamento.
  8. Qual a versão da sua base? 1.3?
  9. Rayo postou uma resposta no tópico em Suporte Tibia OTServer
    Da uma olhada neste tutorial da otland: https://otland.net/threads/tfs-1-2-teleport-pad-system-rewrite.245784/
  10. Que base é essa que você ta utilizando?Pelo o que eu consegui entender,tem muitas funções faltando. Solução: É melhor escolher outra base!
  11. Cara, então não sei como é... pq o player vai sim conseguir usar o item MAS o script não vai da os dias de VIP de novo(pq o próprio script verifica antes se o player ja usou o beneficio do item que no caso é os dias de Vip donate que ele ganha.) Se o player ja possui os dias de vip, vai aparecer a msg em azul: e depois uma mensagem verde dizendo a quantida de dias de vip restante. CASO ele esteja usando o item pela primeira vez, ai ele ganha a quantidade de dias de vip que você escolheu.
  12. Fiz a modificação,testei e funcionou corretamente agora: function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" -- remover quando usar ("yes" or "no") } local days = 1 -- dias que serão adicionados local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 23569) local timenow = os.time() if getPlayerStorageValue(cid, 23569) - os.time() <= 0 then time = timenow + daysvalue doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram Adicionados ".. days .." Dia de Vip Donate no Seu Character.") setPlayerStorageValue(cid, 23569, time) else time = storageplayer + daysvalue local quantity = math.floor((getPlayerStorageValue(cid, 23569) - timenow)/(24 * 60 * 60)) doSendMagicEffect(getPlayerPosition(cid), math.random(30,30)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,"Não foi possível adicionar dias de Vip Donate no Seu Character.") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ainda tem ".. quantity .." dias de Vip Donate Restantes.") end if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE end
  13. No caso se ele ainda tiver dias de vip, é para aparecer a mensagem: "Você tem x dias de vip restantes" ? ou você quer que o script não informe nada(caso ele esteja com vip ativa).
  14. Eu pensei que o problema era com os dias de vip kkkk, a modificação que eu fiz é para não da dias de vip caso ele ja estivesse vip(evitando acumulações de ganhos de vip com o item). Provavelmente o problema está na função doRemoveItem() , o item que você quer remover ele se encontra na BP ou no piso? Preciso saber dessa informação para poder fazer a correção.
  15. Testa agora: function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" -- remover quando usar ("yes" or "no") } local days = 1 -- dias que serão adicionados local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 23569) local timenow = os.time() if getPlayerStorageValue(cid, 23569) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end local quantity = math.floor((getPlayerStorageValue(cid, 23569) - timenow)/(24 * 60 * 60)) if(quantity > 0) then doSendMagicEffect(getPlayerPosition(cid), math.random(30,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você Tem ".. quantity .." Dias de Vip Donate Restantes.") else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram Adicionados ".. days .." Dia de Vip Donate no Seu Character.") setPlayerStorageValue(cid, 23569, time) end if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE end
  16. Eu fiz aqui a modificação,teste: function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" -- remover quando usar ("yes" or "no") } local days = 1 -- dias que serão adicionados local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 23569) local timenow = os.time() if getPlayerStorageValue(cid, 23569) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end local quantity = math.floor((getPlayerStorageValue(cid, 23569) - timenow)/(24 * 60 * 60)) if(quantity > 0) then { doSendMagicEffect(getPlayerPosition(cid), math.random(30,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você Tem ".. quantity .." Dias de Vip Donate Restantes.") }else{ doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram Adicionados ".. days .." Dia de Vip Donate no Seu Character.") setPlayerStorageValue(cid, 23569, time) } end if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE end
  17. Rayo postou uma resposta no tópico em Suporte Tibia OTServer
    Não entendi... você quer saber como o comando funciona? Ou quer que seja criado o comando?
  18. Tenta desta forma: case "sellchar": $topic = "Sell Char"; $subtopic = "sellchar"; include("sellchar.php"); break; case "buychar": $topic = "Buy Char"; $subtopic = "buychar"; include("buychar.php"); break;
  19. <?PHP if($logged) { $main_content .= '<center><b>Here you can put your character on sale!</center></b><br>'; $main_content .= 'If you put your character on sale anyone can buy it, you will lose acces to that character and you wont be able to log in with that character until someone buys it, you can also delete your offer by talking to an admin!<br><b>when someone buys your character you will get the price in points!</b>'; $main_content .= '<br>'; $main_content .= '<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$config['site']['vdarkborder'].'><TD CLASS=white width="64px"><CENTER><B>Sell your characters</B></CENTER></TD></TR>'; $main_content .= '<TR BGCOLOR='.$config['site']['darkborder'].'><TD CLASS=black width="64px"><B></B>'; $players_from_logged_acc = $account_logged->getPlayersList(); $level_necessario = 100; $players_from_logged_acc->addOrder(new SQL_Order(new SQL_Field('name'), SQL_Order::ASC)); $main_content .= '<form action="" method="post"><select name="char">'; foreach($players_from_logged_acc as $player) { $main_content .= '<option>'.$player->getName().'</option>'; } $main_content .= '</select>Select a character to sell<br>'; $main_content .= '<input type="text" name="price" maxlength="10" size="4" >Select the price of the character<br>'; $main_content .= '<input type="submit" name="submit" value="Sell character"></TD></TR>'; $main_content .= '</form></table>'; if (isset($_POST['submit'])) { $char = stripslashes($_POST['char']); $price = stripslashes($_POST['price']); if ($char && $price) { if(is_numeric(trim($_POST['price']))) { $check2 = $SQL->query("SELECT * FROM `players` WHERE `name` = '$char'") or die(mysql_error()); foreach ($check2 as $re) { $voc = $re['vocation']; $oid = $re['account_id']; $level_char = $re['level']; } if($level_char >= $level_necessario){ $check1 = $SQL->query("UPDATE `players` SET `account_id` = 1 WHERE `name` = '$char'") or die(mysql_error()); $check3 = $SQL->query("INSERT INTO `sellchar` VALUES ('','$char','$voc','$price','1','$oid')"); $main_content .= '<b><center>You added your character correctly, thanks!</b></center>'; header("Location: index.php?subtopic=buychar"); } else { $main_content .= '<b><center>Sorry! the character need to be level greater than or equal to '.$level_necessario.'</b></center>'; } } else { $main_content .= '<b><center>Set a numeric price!!</b></center>'; } } else { $main_content .= '<b><center>Fill out all fields!</b></center>'; } } } else { $main_content .= '<b><center>Please log in first!</b></center>'; } ?> Criei uma variavel chamada $level_necessario modifique-a com o level que você achar melhor. Veja se funciona corretamente,não tive como testar pois não tenho acesso aos arquivos do seu site!
  20. Rayo postou uma resposta no tópico em Suporte Tibia OTServer
    Amigo, se o seu VPS for Linux as vezes da erro no caminho das pastas pelo fato do windows utilizador a esta barra nos caminhos "\" e o linux usar esta barra "/". Tira um printo do erro!
  21. Rayo postou uma resposta no tópico em Suporte Websites
    Então a base de dados do seu Gesior deve está incompleta ou incompatível com o seu Gesior.
  22. Rayo postou uma resposta no tópico em Suporte Websites
    Você adicionou/tentou uma nova skill recentemente? Pelo que eu entendi o script está tentando abrir uma skill com o ID 0 e essa skill não existe.
  23. Gostei da solução , porem resta saber se funcionará no OT dele que é 0.3.6
  24. Eu gostaria de ajudar MAS eu precisaria ter acesso a esse script de sumonar que você utiliza! O que você quer fazer é uma spell de invocação substituir outra spell de invocação? Ou seja.. um summon substitui outro summon?
  25. Testa ai amigo: local config = { name = "Morgaroth", -- Nome do Summon max = 1, -- Máximo de summons exaust_sto = 5555, -- Storage que contabiliza o exaust exaust_time = 2 -- Segundos de Exaust } function onUse(cid, item, fromPosition, itemEx, toPosition) local player = Creature(cid) local position = player:getPosition() local summon = Game.createMonster(config.name,position,true) if not exhaustion.check(player, config.exaust_sto) then if #player:getSummons() < config.max then player:addSummon(summon) doPlayerSendTextMessage(player, 27, "Voce invocou o monstro ".. config.name .."!!") doSendMagicEffect(position, CONST_ME_TELEPORT) exhaustion.set(cid, config.exaust_sto, config.exaust_time) return true else doPlayerSendTextMessage(player, 27, "Você ja tem a quantidade máxima de summons ativos!") doSendMagicEffect(position, POFF) return false end else doPlayerSendTextMessage(player 27, "Exhaustion!! Wait ".. exhaustion.get(player, config.exaust_sto) .." seconds.") doSendMagicEffect(position, POFF) return false end return true end

Informação Importante

Confirmação de Termo