Ir para conteúdo

[Talkaction] Twitts


Demonbholder

Posts Recomendados

Faaaala galera, e ai, tudo tranquilo? Já devem ter percebido que eu adoro talkactions, simplesmente gosto de fazer Talks. Essas informações são para caso se você um dia for fazer uma biografia minha ok? Haha, vamos deixar de brincadeira e ir logo para o script.

 

Como funciona: É tipo um twitter, eu nunca usei o twitter ai não sei como funciona ele direito, mas eu fiz algo do tipo. Você fala !twitt Blablabla e é adicionada ao seu Twitter no Tibia, ai para ver os Twitts dos outros é só falar !follow NomeDoJogador e ver seus twitts. Não testei muito esse sistema, creio não há erros, mas não tenho certeza.

 

Talkaction:

 

function onSay(cid, words, param)

if words == "!twitt" then
	if getGlobalStorageValue(30070) == -1 then
		db.executeQuery("ALTER TABLE `players` ADD twits TEXT NOT NULL DEFAULT twitter;")
		setGlobalStorageValue(30070, 1)
	end
	if param == "" then
		doPlayerSendCancel(cid, "Param required.")
		doSendMagicEffect(getCreaturePosition(cid), 2)
	else
		local datas = db.getResult("SELECT `twits` FROM `players` WHERE `id` = ".. getPlayerGUID(cid) .. ";")
		local sentense = datas:getDataString("twits") .. "\n" ..  tostring(param) .. " " .. os.date("%c")
		db.executeQuery("UPDATE `players` SET `twits` = '".. sentense .. "' WHERE `id` = ".. getPlayerGUID(cid) .. ";")
	return TRUE
	end
end

if words == "!follow" then
	if param == "" then
		doPlayerSendCancel(cid, "Param required.")
		doSendMagicEffect(getCreaturePosition(cid), 2)
	else
		local id = playerExists(tostring(param)) and getPlayerGUIDByName(tostring(param)) or getPlayerGUID(cid)
		local datas = db.getResult("SELECT `twits` FROM `players` WHERE `id` = ".. id .. ";")
		local name = id == getPlayerGUID(cid) and getCreatureName(cid) or param
		doShowTextDialog(cid, 2160, name .. " " .. datas:getDataString("twits"))
	end
end

return TRUE
end

 

Lembrando que é um Twitter no OtServer, não tem nada a ver com o site.

 

Tag:

 

<talkaction words="!twitt;!follow" script="NomeDoArquivo.lua" />

 

 

Servidor Testado: New Styller Yourots 0.7.5

 

 

Qualquer erro, por favor me notifique imediatamente, até mais.

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

Boa Demon, se fizer mais Talkactions boas assim deixo você imprimir uma foto da minha irmã '-'

Achei boa sua ideia de twitter kkk

Sou seu faaaaan *-------------------------------------------------------------------*

 

Não acredite muito nisso.

Link para o comentário
Compartilhar em outros sites

!TWITT @Demonbholder É DEMAIS !!!

VOU APERTAR CTRL + D , SE PRECISAR EU USO DEPOIS.

É MAIS PRA BRINCAR ESSE SCRIPT !

KKK

 

OU PRA USAR EM OT DE WAR, TIPO :

 

!TWITT SAI DA PZ SEUS GAYS!

 

MAS AI TEM A QUESTAO DO FOLLOW AI NINGUEM IA VER.

Link para o comentário
Compartilhar em outros sites

function onSay(cid, words, param)

if param == "" then
doPlayerSendCancel(cid, "Parâmetro necessário.")
doSendMagicEffect(getCreaturePosition(cid), 2)
else
for _, pid in ipairs(getPlayersOnline()) do
doShowTextDialog(pid, 2160, getCreatureName(cid) .. " diz: \n" .. param)
end
end
return TRUE
end

 

Assim que tu quer?

Link para o comentário
Compartilhar em outros sites

  • 6 months later...

function onSay(cid, words, param)

       if words == "!twitt" then

	local time = 10 -- tempo em minutos
	if exhaustion.get(cid, ovo.storage) then
	local minutos = math.floor(exhaustion.get(cid, 30069)/60) 
	doPlayerSendCancel(cid, "You must wait  ".. (minutos < 0 and exhaustion.get(cid, 30069).." seconds" or minutos.." minutes") .." to twitt something again.")
	return true 
	end

               if getGlobalStorageValue(30070) == -1 then
                       db.executeQuery("ALTER TABLE `players` ADD twits TEXT NOT NULL DEFAULT twitter;")
                       setGlobalStorageValue(30070, 1)
               end
               if param == "" then
                       doPlayerSendCancel(cid, "Param required.")
                       doSendMagicEffect(getCreaturePosition(cid), 2)
               else
                       local datas = db.getResult("SELECT `twits` FROM `players` WHERE `id` = ".. getPlayerGUID(cid) .. ";")
                       local sentense = datas:getDataString("twits") .. "\n" ..  tostring(param) .. " " .. os.date("%c")
                       db.executeQuery("UPDATE `players` SET `twits` = '".. sentense .. "' WHERE `id` = ".. getPlayerGUID(cid) .. ";")
						for _, pid in ipairs(getPlayersOnline()) do
						doPlayerBroadcastMessage(pid, getCreatureName(cid) .. " twitts: " .. param)
						end
			exhaustion.set(cid, 30069, time*60)
               return TRUE
               end
       end

       if words == "!follow" then
               if param == "" then
                       doPlayerSendCancel(cid, "Param required.")
                       doSendMagicEffect(getCreaturePosition(cid), 2)
               else
                       local id = playerExists(tostring(param)) and getPlayerGUIDByName(tostring(param)) or getPlayerGUID(cid)
                       local datas = db.getResult("SELECT `twits` FROM `players` WHERE `id` = ".. id .. ";")
                       local name = id == getPlayerGUID(cid) and getCreatureName(cid) or param
                       doShowTextDialog(cid, 11677 , name .. " " .. datas:getDataString("twits"))
               end
       end

return TRUE
end

 

 

Alterei o script pra mandar broadcast em todos os twitts e só poder twittar a cada 10 minutos (tempo configuravel)... vou usar, vlw demon.

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

@Demonbholder

 

Coloca uma funçao que ve os ultimos 'x' twitts, ou todos que ja foram Twittados com data e tal ..

(EX em ShowDialog)

"Demonbholder twitted in October 14th

Ola galera, esse eh meu novo talkaction e sistema de Twitter."

 

Ou entao que apareçam todos os Twitts de todas as pessoas que voce segue.

E que receba uma mensagem falando que alguem que voce segue Twittou algo.

Otra coisa legal seriam as Mentions, (@PlayerName) .. E se tiver @ entao via mandar uma mensagem para o PlayerName que recebeu uma Twitt com ele Mencionado.

 

Seria bom fazer algumas funçoes:

getTwitterFollowers(cid)

getTwitterFollowing(cid)

getPlayerTwitts(cid)

getTwittsByDate(date)

 

coisas do genero .. =)

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...