ADM Dev Taleon
06-02-2017, 16:37
Estarei compartilhando aqui um comando muito simples que eu codei em 2014~
Em talkactions.xml:
<talkaction words="!zuera" groupId="1" script="effects/zuera.lua"/>
na pasta scripts dentro pasta talkaction colocar esse codigo dentro de um arquivo chamado zuera.lua:
local secondsToUseCommandAgain = 30
local function isOdd(number)
return (number % 2 == 0)
end
function onSay(player, words, param)
if not(player:getStorageValue(100514) <= os.time()) then
player:sendCancelMessage(string.format("Só pode usar esse comando a cada %s segundos.", secondsToUseCommandAgain))
return false
end
player:setStorageValue(100514, os.time() + secondsToUseCommandAgain)
local position = player:getPosition()
for x = position.x -2, position.x + 2, 1 do
for y = position.y -2, position.y + 2,1 do
local p = Position(x, y, position.z)
if isOdd(x) and isOdd(y) then
player:say('Hue Hue', TALKTYPE_MONSTER_YELL, false, nil, p)
player:say('Br', TALKTYPE_MONSTER_YELL, false, nil, p)
p:sendMagicEffect(CONST_ME_SOUND_PURPLE)
end
end
end
return false
end
ps: esse script é para tfs 1.0+
ps: Graças ao storage 100514 o comando só pode ser usado a cada 30 segundos(configurado na variavel secondsToUseCommandAgain).
Agora basta usar !zuera para testar esse comando.
Resultado final:
http://i.imgur.com/j5sD0b3.png
Em talkactions.xml:
<talkaction words="!zuera" groupId="1" script="effects/zuera.lua"/>
na pasta scripts dentro pasta talkaction colocar esse codigo dentro de um arquivo chamado zuera.lua:
local secondsToUseCommandAgain = 30
local function isOdd(number)
return (number % 2 == 0)
end
function onSay(player, words, param)
if not(player:getStorageValue(100514) <= os.time()) then
player:sendCancelMessage(string.format("Só pode usar esse comando a cada %s segundos.", secondsToUseCommandAgain))
return false
end
player:setStorageValue(100514, os.time() + secondsToUseCommandAgain)
local position = player:getPosition()
for x = position.x -2, position.x + 2, 1 do
for y = position.y -2, position.y + 2,1 do
local p = Position(x, y, position.z)
if isOdd(x) and isOdd(y) then
player:say('Hue Hue', TALKTYPE_MONSTER_YELL, false, nil, p)
player:say('Br', TALKTYPE_MONSTER_YELL, false, nil, p)
p:sendMagicEffect(CONST_ME_SOUND_PURPLE)
end
end
end
return false
end
ps: esse script é para tfs 1.0+
ps: Graças ao storage 100514 o comando só pode ser usado a cada 30 segundos(configurado na variavel secondsToUseCommandAgain).
Agora basta usar !zuera para testar esse comando.
Resultado final:
http://i.imgur.com/j5sD0b3.png