![]()
Showwwwww ![]()
![]()
Muito Bom cara , bem inovador.
info
Grupo: Artesão
Registrado: 27/03/10
Posts: 112
Reputação: +108
Gênero: Masculino
Char no Tibia: Ny Uchiha

![]()
Showwwwww ![]()
![]()
Muito Bom cara , bem inovador.
info
Grupo: Lorde
Registrado: 17/01/09
Posts: 2.1k
Reputação: +395
Char no Tibia: Adra Sata

Sistema Muito Legal.
Bom para aqueles curiosos que gostam de saber sobre as coisas.
REP +
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

Quem viu o script logo que eu postei pode perceber que eu mudei um pouco, antes estava com número e um pouco mais difícil de entender.
Agora ta tranquilo, valeu pelos comentários. Abraços.
info
Grupo: Visconde
Registrado: 03/02/09
Posts: 361
Reputação: +200
Char no Tibia: Fearless Man

O código em si está bom. Só recomendo que aprenda a identar o código pois fica muito mais fácil de entender e localizar algum erro caso exista.
flw
info
Grupo: Herói
Registrado: 17/02/08
Posts: 2.5k
Reputação: +193

Curti bastante. Apesar de não saber criar muita coisa, eu gosto de ler scripts desse tipo, hahaha.
Abraço.
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

@Apocarai
Valeu, não sou muito de identar, tenho preguiça haha.
@Kakilo
Riairiai, tenta começar a aprender, é bacana.
--
Abraços.
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder
Faaala pessoal, estive um pouco ausente, pois estava bem ocupado, tanto com as novidades que estão por vir no XTibia, quanto com a minha vida pessoal. Enfim, o que importa é que eu fiz esse script agora pouco, e eu acho que pode ser útil no seu OT Serv.
Como funciona: É um sistema de busca melhorado, você fala a talkaction junto com dois ou um parâmetro.
No caso de um único parâmetro é para checar quais são as possíveis buscas. Você poderá editar o script para adicionar mais buscas, mas eu fiz apenas de nome, nível e sexo. Então você fala !search check e isso aparecerá:
O que esta em negrito é o que você vai poder adicionar mais no script. Ensinarei no final como adicionar mais.
Quando você usar dois parâmetros, deve ser como o exemplo ali em cima. No exemplo acima, esta !search level,100 isso quer dizer que o script vai mostrar o nome dos jogadores que possuem o level 100.
Talkaction
function getInformation(pa) local n = {} local pla = tonumber(db.getResult("SELECT `id` FROM `players` ORDER BY `id` DESC;"):getDataString("id")) local t = {} for i = 1, pla do info = {"name", "level", "sex"} for a, b in pairs(info) do local data = db.getResult("SELECT `"..b.."` FROM `players` WHERE `id` = "..i..";"):getDataString(b) table.insert(n, data) end table.insert(t, n) n = {} end return pa and info or t end function onSay(cid, words, param) local str = nil if param == "" then return TRUE, doPlayerSendCancel(cid, "Wrong param.") end if param == "check" then for _, da in pairs(getInformation(TRUE)) do str = str == nil and "First param: \n\n" .. da or str .. "\n" .. da end str = str .. "\n\nSecond param: Match result \n\nExemple: "..words.." level,100" return doShowTextDialog(cid, 2160, str), TRUE end local par = string.explode(param, ",") if par[2] == nil or par[2] == "" then return TRUE, doPlayerSendCancel(cid, "Wrong param.") end local ta = {} for z, a in pairs(getInformation()) do for b, c in pairs(a) do if table.find(getInformation(TRUE), par[1]) == b and c == par[2] then table.insert(ta, getInformation()[z][1]) end end end for _, d in pairs(ta) do str = str == nil and d or str .. "\n" .. d end return str and doShowTextDialog(cid, 2160, str) or doPlayerSendTextMessage(cid, 4, "No players found."), TRUE endCrie um arquivo .lua em data/talkactions/scripts e cole o script acima. Depois vá em data/talkactions, abra o arquivo talkactions.xml e cole esta tag:
Refinando ainda mais sua busca:
Ache esta linha no script:
{"name", "level", "sex"}
Para adicionar mais quesitos para a busca, siga o exemplo:
{"name", "level", "sex", "vocation", "cap"}
Os nomes dos quesitos são de acordo com a database do seu OT Serv.
Espero que tenha ficado claro, obrigado.
Editado Junho 2 por Demonbholder