Ir para conteúdo
Banner com Efeitos

Pricila

Membro
  • Registro em

  • Última visita

Histórico de Curtidas

  1. Gostei
    Pricila deu reputação a Kemmlly em [BUG] Auto save derrubando o servidor   
    @ivs6556740
    Tenta esse:
    local config = { broadcast = {120, 30}, shallow = "no", delay = 120, events = 30 } config.shallow = getBooleanFromString(config.shallow) local function executeSave(seconds) if(seconds > 0) then addEvent(executeSave, config.events * 1000, seconds - config.events) else doSaveServer(config.shallow) end end function onThink(interval) if(table.maxn(config.broadcast) == 0) then doSaveServer(config.shallow) else executeSave(config.delay) end return true end  
  2. Gostei
    Pricila deu reputação a Kemmlly em Nome [VIP] Gesior   
    Vi alguns tópicos antigos com a seguinte dúvida; "Quando um jogador fica vip e adicionar o nome [VIP] na frente, outros jogadores conseguem criar um cha com o mesmo nome que o dele, assim, quando acaba a VIP e o nome vai voltar ao normal da erro na distro, como corrigir isso?" e não achei solução, então, criei uma, para quem precisa está aqui:
     
    accountmanagement.php, procure por:
    $newchar_errors[] .= 'You have too many characters on your account <b>('.$number_of_players_on_account.'/'.$config['site']['max_players_per_account'].')</b>!'; Adicione embaixo:
    $check_name_in_database->find("[vip] $newchar_name"); if($check_name_in_database->isLoaded()) $newchar_errors[] .= 'Esse nome ja esta sendo usado, por favor, escolha outro!'; Em:
    ("[vip] $newchar_name") Se sua abreviação do vip for difetene como (vip) ou só VIP você altera.
  3. Gostei
    Pricila deu reputação a Kemmlly em (Resolvido)[Pedido] NPC Task System   
    item = {2123,1} Mude para o id do item e a quantidade que você quer
    exp = 200 Mude para a quantidade de XP que você quer q o player receba quando terminar a task
  4. Gostei
    Pricila deu reputação a Kemmlly em (Resolvido)[Pedido] NPC Task System   
    @Xaraziinho
    ["cyclops"] = {monster_race={"cyclops","cyclops smith","cyclops drone"}, storage_start = 200204, storage = 91004,count = 500,exp = 50000,money = 30000},
     
    800 era o dinheiro q iria receber
  5. Gostei
    Pricila deu reputação a Kemmlly em [TALKACTION] Caixa Postal   
    Bem, procurei aqui no Tibia King e não achei nada relacionado, então, criei um script de Caixa Postal, ou, Mensagem Offline, como preferirem.
     
    Versão: TFS 0.4
    Autor: Kemmlly
     
    Como funciona: 
    Enviar: O jogador usa o comando: !caixa "nome do jogador" - "Mensagem", sem as aspas. Se o jogador estiver Off, a mensagem ficará guardada na Caixa Postal dele, se não, o jogo te indicará a falar pelo PV.
    Receber: O jogador que recebeu a mensagem usa o comando: !recados ler, para ler as mensagens que tem disponíveis na caixa, ou, !recados apagar, para limpar a caixa postal se estiver muito cheia, pois acumula mensagens, segue exemplo:
     
    !recados ler

     
     
    !recados apagar

     
     
    Instalação:
    data/talkactions/scripts/caixapostal.lua
    function onSay(cid, words, param, channel) local t = string.explode(param, "-") if t[1] == '' or t[1] == nil then doPlayerSendTextMessage(cid, 19, "Comando invalido, use !caixa 'NOME DO JOGADOR' - 'MENSAGEM' sem as aspas.") return true else local player = db.getResult("SELECT `id` FROM `players` WHERE `name` = '"..t[1].."';"):getDataInt("id") if player == nil then doPlayerSendTextMessage(cid, 19, "Esse jogador nao existe!") return true elseif player ~= nil and t[2] == '' then doPlayerSendTextMessage(cid, 19, "A mensagem nao pode ser vazia!") return true elseif player ~= nil and t[2] ~= '' then if getPlayerByNameWildcard(t[1]) ~= nil then doPlayerSendTextMessage(cid, 19, "Esse jogador esta online, fale pelo PV!") return true else local origem = getCreatureName(cid) local caixa = getGlobalStorageValue(player) local data = os.date("%d/%b as %X") if caixa == -1 or caixa == "Voce nao tem nenhum recado!" then caixa = "\n" end doPlayerSendTextMessage(cid, 19, "A mensagem foi enviada com sucesso!") setGlobalStorageValue(player, "["..data.."] - "..origem..": "..t[2].." \n\n"..caixa.."") return true end end end end  
    data/talkactions/scripts/recados.lua
    function onSay(cid, words, param, channel) local t = string.explode(param, ",") local player = db.getResult("SELECT `id` FROM `players` WHERE `name` = '"..getCreatureName(cid).."';"):getDataInt("id") local mensagens = getGlobalStorageValue(player) if t[1] == '' or t[1] == nil then doPlayerSendTextMessage(cid, 19, 'Comando invalido.') elseif t[1] == 'ler' then if mensagens == -1 then mensagens = "Voce nao tem nenhum recado!" doShowTextDialog(cid, words, '-- Recados --\n\n'..mensagens..'') else doShowTextDialog(cid, words, '-- Recados --\n\n'..mensagens..'') end elseif t[1] == 'apagar' then doPlayerSendTextMessage(cid, 19, 'Mensagens apagadas com sucesso!') setGlobalStorageValue(player, "Voce nao tem nenhum recado!") end return true end  
    data/talkactions/talkactions.xml
    <talkaction words="!caixa" event="script" value="caixapostal.lua"/> <talkaction words="!recados" event="script" value="recados.lua"/>  
    Ultimo passo, porém, importante;
     
    em data/lib/004-database.lua vá até a linha 60 e mude:
    error("[Result:getDataInt] Result not set!") para:
    return nil  
    Se no seu não for exatamente na linha 60, procure a função:
    function Result:getDataInt(s) if(self:getID() == -1) then error("[Result:getDataInt] Result not set!") end E faça a alteração. Isso é para não dar erro na hora de procurar um player pelo nome quando o jogador escrever um nome de player inválido.
     
    Espero que gostem, abraços.

Informação Importante

Confirmação de Termo