Ir para conteúdo

Featured Replies

Postado

Funções:

  • Ao utilizar o comando !checkitem, itemId irá visualizar todos os jogadores da database no qual possuí o item sendo carregado no personagem e irá falar in-game.

 

Script funcionando:

 

EWvgmqw.png

 

Script:

 

function onSay(player, words, param)
	if not player:getGroup():getAccess() then
		return true
	end

	if not param then
		player:sendCancelMessage('Please type the command: !checkItem, itemId')
		return false
	end

	local itemId = tonumber(param)
    if not itemId then
        player:sendCancelMessage('The value should be numeric.')
        return false
    end

	local resultId = db.storeQuery(string.format('SELECT `name`, `id` FROM `players` WHERE `id` IN (SELECT `player_id` FROM `player_items` WHERE `itemtype` = %d)', itemId))
	local message = string.format('Results from the search from the itemId %d in our database:\n\n', itemId)
	if resultId ~= false then
		repeat
   			local playerName = result.getDataString(resultId, "name")
   			local playerId = result.getDataInt(resultId, "id")

   			local checkOnline = db.storeQuery(string.format('SELECT `player_id` FROM `players_online` WHERE `players_online`.`player_id` = %d', playerId))
   			if checkOnline ~= false then 
   				status = 'Online'
   			else
   				status = 'Offline'
   			end

			message = message .. playerName .." [".. status .."]\n"

		until not result.next(resultId)
		result.free(resultId)
	else
		message = message .. "There is no players with this item at our server."
	end

	player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, message)
	return false
end

 

NOTAS:

  • Na tag do talkaction.xml precisa ter separator = " "
  • Esse script só funciona na versão TFS 1.x do The Forgotten Server

 

Créditos ao van key key AKA eu.

  • Respostas 5
  • Visualizações 2k
  • Created
  • Última resposta

Top Posters In This Topic

Postado

Parabéns, seu tópico de conteúdo foi aprovado!
Muito obrigado pela sua contribuição, nós do Tibia King agradecemos.
Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.

Spoiler

Congratulations, your content has been approved!
Thank you for your contribution, we of Tibia King we are grateful.
Your content will help many other users, you received +1 REP.

 

                              _
                          .-'` `}
                  _./)   /       }
                .'o   \ |       }
                '.___.'`.\    {`
                /`\_/  , `.    }                                      ME DA UMA NOZ!
                \=' .-'   _`\  {
                 `'`;/      `,  }
                    _\   @   ;  }
                   /__`;-...'--'

Cluck!

Postado
  • Autor
1 hora atrás, login12 disse:

Isso é bom p quem ta querendo economizar tempo inves de ir procurar na db. Por ser query...se tiver mt gente online na hr de
Execucao do script, n tem risco de lag? Tipo umas 1200 pessoas

Enviado de meu SM-J105B usando Tapatalk
 

 

Eu não fiz esse tipo de teste, mas é uma boa pergunta. Uma boa melhoria para o script é setar um display, como por exemplo.. O Administrador selecionar quantas pessoas que deveria mostrar.

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96k
  • Posts 512.6k

Informação Importante

Confirmação de Termo