Ir para conteúdo
  • 0

Adaptar Script


JonatasLucasf

Pergunta

então galera estou precisando desses scripts aqui alguém poderia fazendo favor adaptar eles para funcionar em tfs 1.1 versão 10.76

 

ausente.lua

local FRASES = {"AUSENTE!", "VOLTO JÁ!", "JÁ VOLTO!"} -- Auto-Mensagens.
local TEMPO = 1 -- Intervalo de Tempo em segundos.
local say = {}
 
local function doSendAutoMessage(cid, pos, player)
if (isCreature(cid) == TRUE) then
npos = getThingPos(cid)
if (pos.x == npos.x) and (pos.y == npos.y) and (pos.z == npos.z) and say[player] ~= nil then
doSendAnimatedText(pos, FRASES[math.random(#FRASES)], 215)
doSendMagicEffect(pos, 2)
say[player] = addEvent(doSendAutoMessage, TEMPO*1000, cid, npos, player)
else
say[player] = nil
doPlayerSendCancel(cid, "Ausente desativado.")
end
else
say[player] = nil
end
end
 
function onSay(cid, words, param)
local player = getPlayerGUID(cid)
if say[player] == nil then
pos = getThingPos(cid)
doSendAnimatedText(pos, FRASES[math.random(#FRASES)], 215)
doSendMagicEffect(pos, 2)
doPlayerSendCancel(cid, "Ausente ativado.")
say[player] = addEvent(doSendAutoMessage, TEMPO*1000, cid, pos, player)
else
doPlayerSendCancel(cid, "Você já está com o Ausente ativado, saia do piso onde ativou e aguarde desativar.")
end
return TRUE
end

vida.lua

function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida atual: " .. getCreatureHealth(cid) .. "\nVida máxima: " .. getCreatureMaxHealth(cid) .. "")
return true
end
 
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida de [ " .. getCreatureName(pid) .. " ] atual: " .. getCreatureHealth(pid) .. "\nVida de [ " .. getCreatureName(pid) .. " ] máxima: " .. getCreatureMaxHealth(pid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end

mana.lua

 

 

 
function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana atual: " .. getCreatureMana(cid) .. "\nMana máxima: " .. getCreatureMaxMana(cid) .. "")
return true
end
 
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana de [ " .. getCreatureName(pid) .. " ] atual: " .. getCreatureMana(pid) .. "\nMana de [ " .. getCreatureName(pid) .. " ] máxima: " .. getCreatureMaxMana(pid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end

@UP

Editado por JonatasLucasf
Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0

Adaptei o primeiro dps faço os outros :

local frases = {"AUSENTE!", "VOLTO JA!", "JA VOLTO!"} -- Auto-Mensagens.
local tempo = 1 -- Intervalo de Tempo em segundos.
local say = {}

function Player.autoMe(self, pid, pos)
	
	player = Player(self)
	npos = player:getTile()

	if npos == pos and say[pid] ~= nil then
		player:say(frases[math.random(#frases)], TALKTYPE_MONSTER_SAY)
		addEvent(function()
			player:autoMe(pid, pos)
		end, tempo*1000)
	else
		say[pid] = nil
		player:sendCancelMessage("Você já está com o Ausente ativado, saia do piso onde ativou e aguarde desativar.")
	end
end

function onSay(player, words, param)
	
	local player = Player(player)
	local pid = player:getGuid()
	local pos = player:getTile()

	if say[pid] == nil then
		table.insert(say, pid, pid)
		player:autoMe(pid, pos)
	else
		say[pid] = nil
		player:sendCancelMessage("Ausente desativado.")
	end 

	return false
end
Editado por ScreaM
Link para o comentário
Compartilhar em outros sites

  • 0

 

Adaptei o primeiro dps faço os outros :

local frases = {"AUSENTE!", "VOLTO JA!", "JA VOLTO!"} -- Auto-Mensagens.
local tempo = 1 -- Intervalo de Tempo em segundos.
local say = {}

function Player.autoMe(self, pid, pos)
	
	player = Player(self)
	npos = player:getTile()

	if npos == pos and say[pid] ~= nil then
		player:say(frases[math.random(#frases)], TALKTYPE_MONSTER_SAY)
		addEvent(function()
			player:autoMe(pid, pos)
		end, tempo*1000)
	else
		say[pid] = nil
		player:sendCancelMessage("Você já está com o Ausente ativado, saia do piso onde ativou e aguarde desativar.")
	end
end

function onSay(player, words, param)
	
	local player = Player(player)
	local pid = player:getGuid()
	local pos = player:getTile()

	if say[pid] == nil then
		table.insert(say, pid, pid)
		player:autoMe(pid, pos)
	else
		say[pid] = nil
		player:sendCancelMessage("Ausente desativado.")
	end 

	return false
end

Obrigado funcionou, teria como deixar assim e também ficar saindo uma fumaça do pé.

546868220e0dfb33da8a313b2d139419c720bf9b

Editado por JonatasLucasf
Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado funcionou, teria como deixar assim e também ficar saindo uma fumaça do pé.

546868220e0dfb33da8a313b2d139419c720bf9b

local frases = {"AUSENTE!", "VOLTO JA!", "JA VOLTO!"} -- Auto-Mensagens.
local tempo = 5 -- Intervalo de Tempo em segundos.
local say = {}

function Player.autoMe(self, pid, pos)
	
	player = Player(self)
	npos = player:getTile()
	apos = player:getPosition()
	if npos == pos and say[pid] ~= nil then
		player:say(frases[math.random(#frases)], TALKTYPE_MONSTER_SAY)
		doSendMagicEffect(apos, CONST_ME_POFF)
		addEvent(function()
			player:autoMe(pid, pos)
		end, tempo*1000)
	else
		say[pid] = nil
		player:sendCancelMessage("Você já está com o Ausente ativado, saia do piso onde ativou e aguarde desativar.")
	end
end

function onSay(player, words, param)
	
	local player = Player(player)
	local pid = player:getGuid()
	local pos = player:getTile()

	if say[pid] == nil then
		table.insert(say, pid, pid)
		player:autoMe(pid, pos)
	else
		say[pid] = nil
		player:sendCancelMessage("Ausente desativado.")
	end 

	return false
end
Link para o comentário
Compartilhar em outros sites

  • 0
local frases = {"AUSENTE!", "VOLTO JA!", "JA VOLTO!"} -- Auto-Mensagens.
local tempo = 5 -- Intervalo de Tempo em segundos.
local say = {}

function Player.autoMe(self, pid, pos)
	
	player = Player(self)
	npos = player:getTile()
	apos = player:getPosition()
	if npos == pos and say[pid] ~= nil then
		player:say(frases[math.random(#frases)], TALKTYPE_MONSTER_SAY)
		doSendMagicEffect(apos, CONST_ME_POFF)
		addEvent(function()
			player:autoMe(pid, pos)
		end, tempo*1000)
	else
		say[pid] = nil
		player:sendCancelMessage("Você já está com o Ausente ativado, saia do piso onde ativou e aguarde desativar.")
	end
end

function onSay(player, words, param)
	
	local player = Player(player)
	local pid = player:getGuid()
	local pos = player:getTile()

	if say[pid] == nil then
		table.insert(say, pid, pid)
		player:autoMe(pid, pos)
	else
		say[pid] = nil
		player:sendCancelMessage("Ausente desativado.")
	end 

	return false
end

obrigado, mais a mensagem ta saindo laranja tem como mudar? também da uma olhada nos outro scripthappy.png

Link para o comentário
Compartilhar em outros sites

  • 0

Não tem cor branca ... não existe a função "Texto Animado" nas versões superiores a 8.6 logo escolher cor é limitado usando a função creature:say..

Link para o comentário
Compartilhar em outros sites

  • 0

Tenho o que voce precisa!

Acredito que esteja com projeto RadBr.

Estou com projeto 10.76 também, e esta muito bom jah! Se precisa de mais ajuda estou disponivel no PM.

 

Mana

function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana atual: " .. getPlayerMana(cid) .. "\nMana máxima: " .. getPlayerMaxMana(cid) .. "")
return true
end
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana de [ " .. getCreatureName(pid) .. " ] atual: " .. getPlayerMana(cid) .. "\nMana de [ " .. getCreatureName(pid) .. " ] máxima: " .. getPlayerMaxMana(cid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end

Vida

function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida atual: " .. getCreatureHealth(cid) .. "\nVida máxima: " .. getCreatureMaxHealth(cid) .. "")
return true
end
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida de [ " .. getCreatureName(pid) .. " ] atual: " .. getCreatureHealth(pid) .. "\nVida de [ " .. getCreatureName(pid) .. " ] máxima: " .. getCreatureMaxHealth(pid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end
Link para o comentário
Compartilhar em outros sites

  • 0

 

Tenho o que voce precisa!

Acredito que esteja com projeto RadBr.

Estou com projeto 10.76 também, e esta muito bom jah! Se precisa de mais ajuda estou disponivel no PM.

 

Mana

function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana atual: " .. getPlayerMana(cid) .. "\nMana máxima: " .. getPlayerMaxMana(cid) .. "")
return true
end
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nMana de [ " .. getCreatureName(pid) .. " ] atual: " .. getPlayerMana(cid) .. "\nMana de [ " .. getCreatureName(pid) .. " ] máxima: " .. getPlayerMaxMana(cid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end

Vida

function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida atual: " .. getCreatureHealth(cid) .. "\nVida máxima: " .. getCreatureMaxHealth(cid) .. "")
return true
end
if isPremium(cid) == TRUE then
local pid = getPlayerByNameWildcard(param)
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador com o nome " .. param .. " não esta online ou não existe.")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "\nVida de [ " .. getCreatureName(pid) .. " ] atual: " .. getCreatureHealth(pid) .. "\nVida de [ " .. getCreatureName(pid) .. " ] máxima: " .. getCreatureMaxHealth(pid) .. "")
return true
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores VIP podem utilizar este comando para visualizar informações de outros jogadores.")
return true
end
end

obrigado, você teria também o comando !rank reset?

Link para o comentário
Compartilhar em outros sites

  • 0

Script do Lobo :

 

talkactions/scripts/rankinreset

local storage = 378378 -- storage que fica salvo os resets
local itens = {2182, 2190, 2456, 2395} -- itens cujas imagens aparecerao (se nao souber oque eh, nao mexa)

function onSay(cid, words, param, channel)
	local function getRankStorage(cid, value, max, RankName) -- by vodkart
	local str = ""
	str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n"
	local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;")
		if (query:getID() ~= -1) then 
			k = 1 
			repeat
				if k > max then 
					break
				end
			str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]"
			k = k + 1		
			until not 
				query:next() 
			end 
	return doShowTextDialog(cid, itens[math.random(1, #itens)], str)
	end
	getRankStorage(cid, storage, 10, "Ranking of Resets")
return true
end

talkactions.xml:

<talkaction log="yes" words="/resets" event="script" value="rankinreset.lua"/>
Link para o comentário
Compartilhar em outros sites

  • 0

Da erro no :

getRankStorage(cid, storage, 10, "Ranking of Resets")

Substituo por :

getPlayerStorageValue(cid, storage, 10, "Ranking of Resets")

Da certo, mais ai da erro no :

local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;")

Ja tentei substitui por :

local query = db.query
local query = db.storeQuery

Mais nenhum da certo, acredito que o erro esteja apenas ai!

E quando muda pra qual quer um desses, não da mais erro na distro.

E não funciona também.

Agradeço des de ja!

Link para o comentário
Compartilhar em outros sites

  • 0

Da erro no :

getRankStorage(cid, storage, 10, "Ranking of Resets")

Substituo por :

getPlayerStorageValue(cid, storage, 10, "Ranking of Resets")

Da certo, mais ai da erro no :

local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;")

Ja tentei substitui por :

local query = db.query
local query = db.storeQuery

Mais nenhum da certo, acredito que o erro esteja apenas ai!

E quando muda pra qual quer um desses, não da mais erro na distro.

E não funciona também.

Agradeço des de ja!

 

 

q erro q da? e vc n pode mudar a função...

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...