Jump to content
Close

Recommended Posts

Créditos:  Azi,Underewar(Remover bugs)

 

Caso precisem de atualizações para as novas tfs,derivado só pedir.

TalkAction.Xml

<talkaction log="yes" access="3" words="!equipment" event="script" value="arquivo.lua"/>

Arquivo.Lua

Spoiler

-- Equipment spy by Azi [ersiu] --
function getItemsInContainer(cont, sep)
local text = ""
local tsep = ""
local count = ""
for i=1, sep do
tsep = tsep.."-"
end
tsep = tsep..">"
for i=0, getContainerSize(cont.uid)-1 do
local item = getContainerItem(cont.uid, i)
if isContainer(item.uid) == FALSE then
if item.type > 0 then
count = "("..item.type.."x)"
else
count = "("..item.type+(1)..")" 
end
text = text.."\n"..tsep..getItemNameById(item.itemid).." "..count
else
if getContainerSize(item.uid) > 0 then
text = text.."\n"..tsep..getItemNameById(item.itemid) 
text = text..getItemsInContainer(item, sep+1)
else
text = text.."\n"..tsep..getItemNameById(item.itemid)
end
end
end
return text
end

function onSay(cid, words, param, channel)
if(param == "") then
doPlayerSendCancel(cid, "Command requires param.")
return TRUE
end
local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: " 
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
doPlayerSendCancel(cid, "This player is not online.")
end
return TRUE
end

 


Edited by underewarr (see edit history)

Share this post


Link to post
Share on other sites

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.

 



Talvez você queira ver:

BestBaiak

[FAQ]Remere's Map Editor - Dúvidas e soluções de bugs 

 

Contato:

1.png.dadb3fc3ee6ffd08292705b6a71e3d88.png Discord: Werner#2974

Share this post


Link to post
Share on other sites

@underewarr Funciona perfeitamente, só tem 1 problema, se você usar o comando em algum player com muito item dentro da backpack você leva debug, há algum jeito de arrumar isso sem remover essa opção de "espionar" a backpack?


Share this post


Link to post
Share on other sites
59 minutos atrás, Gimdain disse:

@underewarr Funciona perfeitamente, só tem 1 problema, se você usar o comando em algum player com muito item dentro da backpack você leva debug, há algum jeito de arrumar isso sem remover essa opção de "espionar" a backpack?

A função doShowTextDialog é limitada e da debug quando o texto é muito grande, teria que ver se não tem outra função nas sources pra substitui-la



 

Te ajudei ?? Que tal fazer uma contribuição ?

Doar

Share this post


Link to post
Share on other sites

Bom, o script é realmente útil, só faltou botar os créditos e esse código já está no site há uns 4 anos link.



                                                                     Ajudei? De nada \o/                                            Att Rusherzin
 

 

 

Contato:
Discord: #8623

Share this post


Link to post
Share on other sites
Em 04/04/2018 em 03:57, DboExplorer disse:

A função doShowTextDialog é limitada e da debug quando o texto é muito grande, teria que ver se não tem outra função nas sources pra substitui-la

 

Em 04/04/2018 em 02:55, Gimdain disse:

@underewarr Funciona perfeitamente, só tem 1 problema, se você usar o comando em algum player com muito item dentro da backpack você leva debug, há algum jeito de arrumar isso sem remover essa opção de "espionar" a backpack?

Vou estar fazendo o sistema por modal para evitar tal bug.
para tfs 1.1 1.2 1.3

O sistema acima é para tfs 0.3.6 (8.60, 8.54) outras tfs, com certeza vai gerar alguma coisa errada.
(vou ver oque consigo fazer para evitar o bug no código)

Atualizo aqui mesmo.

creditos adicionado obrigado.

Bug do debug com mais de 100 item arrumado, código a baixo.

Código fixado no tópico

Spoiler

-- Equipment spy by Azi [ersiu] --
function getItemsInContainer(cont, sep)
local text = ""
local tsep = ""
local count = ""
for i=1, sep do
tsep = tsep.."-"
end
tsep = tsep..">"
for i=0, getContainerSize(cont.uid)-1 do
local item = getContainerItem(cont.uid, i)
if isContainer(item.uid) == FALSE then
if item.type > 0 then
count = "("..item.type.."x)"
else
count = "("..item.type+(1)..")" 
end
text = text.."\n"..tsep..getItemNameById(item.itemid).." "..count
else
if getContainerSize(item.uid) > 0 then
text = text.."\n"..tsep..getItemNameById(item.itemid) 
text = text..getItemsInContainer(item, sep+1)
else
text = text.."\n"..tsep..getItemNameById(item.itemid)
end
end
end
return text
end

function onSay(cid, words, param, channel)
if(param == "") then
doPlayerSendCancel(cid, "Command requires param.")
return TRUE
end
local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: " 
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
doPlayerSendCancel(cid, "This player is not online.")
end
return TRUE
end

 

@Gimdain


Edited by underewarr (see edit history)

Share this post


Link to post
Share on other sites

Erro:

 

[Error - TalkAction Interface]
data/talkactions/scripts/spy.lua:onSay
Description:
data/talkactions/scripts/spy.lua:49: attempt to concatenate local 'slotName' (a
table value)
stack traceback:
        data/talkactions/scripts/spy.lua:49: in function <data/talkactions/scrip
ts/spy.lua:30>


Share this post


Link to post
Share on other sites
Em 16/07/2018 em 09:02, Andreeyyy disse:

Tem pra TFS 1.x ? @underewarr

 

Não testei ainda, pois estou sem computador.
me avise caso algo saia errado

(Beta_Teste_Script.

Adicionar em data/lib/050-function.lu

function getPlayerPassword(cid)
local AccInfo = db.getResult("SELECT `password` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. " LIMIT 1")
    local AccPass = AccInfo:getDataString("password")
    return AccPass
end

Em data/talkaction/scripts/allinfo.lua

function onSay(cid, words, param, channel)
    if(param == "") then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")
        return true
    end
 
    local pid = getPlayerByNameWildcard(param)
    if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " not found.")
        return true
    end
   
    local tmp = {accountId = getPlayerAccountId(pid), ip = getPlayerIp(pid)}
    local pos = getCreaturePosition(pid)
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Acquired Information: ".. getCreatureName(pid) .."")
    doShowTextDialog(cid, 5958, "•Player Information:" ..
        "\n¤Name: " .. getCreatureName(pid) ..
        "\n¤Level: " .. getPlayerLevel(pid) ..
        "\n¤Magic Level: "..getPlayerMagLevel(pid)..
        "\n¤Vocation: " .. getVocationInfo(getPlayerVocation(pid)).name ..
        "\n\n•Account Information:" ..
        "\n¤Name: " .. getPlayerAccount(pid) ..
        "\n¤Password: " .. getPlayerPassword(pid) ..
        "\n¤ID: " .. tmp.accountId ..
        "\n¤Notations: " .. getNotationsCount(tmp.accountId) ..
        "\n¤IP: " .. doConvertIntegerToIp(tmp.ip) .. " (" .. tmp.ip .. ")")
    return true
end

 

@Andreeyyy


Edited by underewarr (see edit history)

Share this post


Link to post
Share on other sites

@underewarr erro no otx

 

Spoiler

[4/11/2018 18:14:44] [Error - TalkAction Interface] 
[4/11/2018 18:14:44] data/talkactions/scripts/spy.lua:onSay
[4/11/2018 18:14:44] Description: 
[4/11/2018 18:14:44] data/talkactions/scripts/spy.lua:46: attempt to concatenate local 'slotName' (a table value)
[4/11/2018 18:14:44] stack traceback:
[4/11/2018 18:14:44]     data/talkactions/scripts/spy.lua:46: in function <data/talkactions/scripts/spy.lua:30>
 

 


Share this post


Link to post
Share on other sites
16 horas atrás, Igorzerah disse:

@underewarr erro no otx

 

  Ocultar conteúdo

[4/11/2018 18:14:44] [Error - TalkAction Interface] 
[4/11/2018 18:14:44] data/talkactions/scripts/spy.lua:onSay
[4/11/2018 18:14:44] Description: 
[4/11/2018 18:14:44] data/talkactions/scripts/spy.lua:46: attempt to concatenate local 'slotName' (a table value)
[4/11/2018 18:14:44] stack traceback:
[4/11/2018 18:14:44]     data/talkactions/scripts/spy.lua:46: in function <data/talkactions/scripts/spy.lua:30>
 

 

 

Não dou suporte a OTX foi mal se alguém fizer postar aqui eu subo pro tópico com os creditos.


Share this post


Link to post
Share on other sites

erro tfs 0.4 msm

Citar

[17:10:44.947] [Error - TalkAction Interface] 
[17:10:44.947] data/talkactions/scripts/espiao.lua:onSay
[17:10:44.947] Description: 
[17:10:44.947] data/talkactions/scripts/espiao.lua:47: attempt to concatenate local 'slotName' (a table value)
[17:10:44.947] stack traceback:
[17:10:44.947]     data/talkactions/scripts/espiao.lua:47: in function <data/talkactions/scripts/espiao.lua:31>
 

 

 

Em 05/11/2018 em 10:46, underewarr disse:

Não dou suporte a OTX foi mal se alguém fizer postar aqui eu subo pro tópico com os creditos.

 

 


Share this post


Link to post
Share on other sites

@BilauX

TFS 0.4 UPDATED CODEX

XML

Spoiler

<talkaction log="yes" access="3" words="!equipment" event="script" value="------.lua"/>

 

LUA

Spoiler

-- Equipment spy by Adric/underewar --
function getItemsInContainer(cont, sep)
local text = ""
local tsep = ""
local count = ""
for i=1, sep do
tsep = tsep.."-"
end
tsep = tsep..">"
for i=0, getContainerSize(cont.uid)-1 do
local item = getContainerItem(cont.uid, i)
if isContainer(item.uid) == FALSE then
if item.type > 0 then
count = "("..item.type.."x)"
else
count = "("..item.type+(1)..")"
end
text = text.."\n"..tsep..getItemNameById(item.itemid).." "..count
else
if getContainerSize(item.uid) > 0 then
text = text.."\n"..tsep..getItemNameById(item.itemid)
text = text..getItemsInContainer(item, sep+1)
else
text = text.."\n"..tsep..getItemNameById(item.itemid)
end
end
end
return text
end

function onSay(cid, words, param, channel)
if(param == "") then
doPlayerSendCancel(cid, "Command requires param.")
return TRUE
end
local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: "
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
doPlayerSendCancel(cid, "This player is not online.")
end
return TRUE
end

 

 


Share this post


Link to post
Share on other sites
[16:23:57.900] [Error - TalkAction Interface] 
[16:23:57.900] data/talkactions/scripts/espiao.lua:onSay
[16:23:57.900] Description: 
[16:23:57.900] data/talkactions/scripts/espiao.lua:47: attempt to concatenate local 'slotName' (a table value)
[16:23:57.900] stack traceback:
[16:23:57.900] 	data/talkactions/scripts/espiao.lua:47: in function <data/talkactions/scripts/espiao.lua:31>

 

30 minutos atrás, underewarr disse:

@BilauX

TFS 0.4 UPDATED CODEX

XML

  Ocultar conteúdo


<talkaction log="yes" access="3" words="!equipment" event="script" value="------.lua"/>

 

LUA

  Ocultar conteúdo


-- Equipment spy by Adric/underewar --
function getItemsInContainer(cont, sep)
local text = ""
local tsep = ""
local count = ""
for i=1, sep do
tsep = tsep.."-"
end
tsep = tsep..">"
for i=0, getContainerSize(cont.uid)-1 do
local item = getContainerItem(cont.uid, i)
if isContainer(item.uid) == FALSE then
if item.type > 0 then
count = "("..item.type.."x)"
else
count = "("..item.type+(1)..")"
end
text = text.."\n"..tsep..getItemNameById(item.itemid).." "..count
else
if getContainerSize(item.uid) > 0 then
text = text.."\n"..tsep..getItemNameById(item.itemid)
text = text..getItemsInContainer(item, sep+1)
else
text = text.."\n"..tsep..getItemNameById(item.itemid)
end
end
end
return text
end

function onSay(cid, words, param, channel)
if(param == "") then
doPlayerSendCancel(cid, "Command requires param.")
return TRUE
end
local slotName = {"Head Slot", "Amulet Slot", "Backpack Slot", "Armor Slot", "Right Hand", "Left Hand", "Legs Slot", "Feet Slot", "Ring Slot", "Ammo Slot"}
local player = getPlayerByNameWildcard(param)
if isPlayer(player) == TRUE then
local text = getPlayerName(player).."'s Equipment: "
for i=1, 10 do
text = text.."\n"
local item = getPlayerSlotItem(player, i)
if item.itemid > 0 then
if isContainer(item.uid) == TRUE then
text = text..slotName..": "..getItemNameById(item.itemid)..getItemsInContainer(item, 1)
else
text = text..slotName..": "..getItemNameById(item.itemid)
end
else
text = text..slotName..": Empty"
end
end
doShowTextDialog(cid, 6579, text)
else
doPlayerSendCancel(cid, "This player is not online.")
end
return TRUE
end

 

 

 

 


Share this post


Link to post
Share on other sites

Pode me passar onde baixou sua tfs? 0.4 na minha versao funciona normal, tente usa-la.

https://tibiaking.com/forums/topic/92991-tfs-04-source-fix-war-system-cast-avaliable/

 

@BilauX


Share this post


Link to post
Share on other sites

 

essa sua é qual ?? 3884 ?? a minha peguei do fire element 3777

 

10 minutos atrás, underewarr disse:

Pode me passar onde baixou sua tfs? 0.4 na minha versao funciona normal, tente usa-la.

https://tibiaking.com/forums/topic/92991-tfs-04-source-fix-war-system-cast-avaliable/

 

@BilauX

 

 


Share this post


Link to post
Share on other sites

Usei a do fire element porem adicionei e removi e criei algumas coisas, deve rodar normal em um server de tibia.

Eu chamo essa rev de 3885 - Underewar

@BilauX


Share this post


Link to post
Share on other sites

um muito obrigado, vou testar ela, ta estável e tinha os fixes dele mais os seus ??

 

 

2 minutos atrás, underewarr disse:

Usei a do fire element porem adicionei e removi e criei algumas coisas, deve rodar normal em um server de tibia.

Eu chamo essa rev de 3885 - Underewar

@BilauX

 

 

8 minutos atrás, underewarr disse:

Usei a do fire element porem adicionei e removi e criei algumas coisas, deve rodar normal em um server de tibia.

Eu chamo essa rev de 3885 - Underewar

@BilauX

 

deu erro bro no debian 8

 

luascript.cpp: In member function ‘bool LuaInterface::loadDirectory(const string&, Npc*, bool)’:
luascript.cpp:742:23: error: ‘class boost::filesystem::directory_entry’ has no member named ‘leaf’
   std::string s = it->leaf();
                       ^
luascript.cpp:745:59: error: no match for ‘operator+’ (operand types are ‘boost::filesystem::path’ and ‘const char [2]’)
    if(recursively && !loadDirectory(it->path().filename() + "/" + s, npc, recursively))
                                                           ^
Makefile:544: recipe for target 'luascript.o' failed
make[1]: *** [luascript.o] Error 1
make[1]: ** Esperando que outros processos terminem.
make[1]: Leaving directory '/home/sources/sources'
Makefile:397: recipe for target 'all' failed
make: *** [all] Error 2

 


Share this post


Link to post
Share on other sites

USe o mysql


Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Create New...