Ir para conteúdo
Entre para seguir isso  
MaXwEllDeN

Sealed Body ("Bless de Corpo")

Recommended Posts

MaXwEllDeN    13
MaXwEllDeN

Autor: MaXwEllDeN (Maxwell Denisson)
Versão testada: TFS 0.3.6, 8.54

 

#Explicação

 

Eu falo com um npc, e digo à ele bless, ai ele me abençoa, ai na próxima vez que eu morrer, só eu posso abrir o meu corpo.

 

#Instalação

 

@Actions

 

Na pasta scripts copie qualquer arquivo com a extenção lua, e renomeie ele para BlessDie, abra, delete tudo que houver dentro dele, copie esse conteúdo e salve:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
   if item.uid ~= getPlayerGUID(cid) + 1000 then
       doPlayerSendCancel(cid, "This corpse has blessed by the gods, so it you can't touch it.")
       return true
   end
end                       

 

TAG:

 

   <action actionid="90100" script="BlessDie.lua"/>

 

 

@Creaturescripts

 

Na pasta scripts copie qualquer arquivo com a extenção lua, e renomeie ele para BlessDie, abra, delete tudo que houver dentro dele, copie esse conteúdo e salve:

 

function onDeath(cid, corpse, deathList)

if getPlayerStorageValue(cid, 21718) > 0 then
  setPlayerStorageValue(cid, 21718, -1) 
  doItemSetAttribute(corpse.uid, "aid", 90100)
  doItemSetAttribute(corpse.uid, "uid", getPlayerGUID(cid) + 1000)
end
  return true
end      

 

TAG:

 

<event type="death" name="BlessDie" event="script" value="blessdie.lua"/>

 

Abra o arquivo login.lua, que está na pasta scripts, e antes do return true coloque isso:

registerCreatureEvent(cid, "BlessDie")

 

@NPC

Fiz um npc só de exemplo pra mostrar como por a bless...

ai está o xml dele:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Max" script="BlessDie.lua" walkinterval="0" floorchange="0">
<health now="150" max="150"/>
<look type="335" head="79" body="95" legs="95" feet="81" corpse="2212"/>
   <parameters>
           <parameter key="message_greet" value= 'Olá |PLAYERNAME|, estou distribuindo uma bless especial que quando você morre ninguém pode tocar no seu corpo.'/>
   </parameters>
</npc>

 

Ai está o Script que deve ser nomeado de BlessDie:

 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}


function onCreatureAppear(cid)            npcHandler:onCreatureAppear(cid)        end
function onCreatureDisappear(cid)        npcHandler:onCreatureDisappear(cid)        end
function onCreatureSay(cid, type, msg)        npcHandler:onCreatureSay(cid, type, msg)    end
function onThink()                npcHandler:onThink()                end


function creatureSayCallback(cid, type, msg)

   if(not npcHandler:isFocused(cid)) then
       return false
   end


   if msgcontains(msg, 'bless') and getPlayerStorageValue(cid, 21718) < 1 then
       setPlayerStorageValue(cid, 21718, 1)
       selfSay("{".. getCreatureName(cid) .."} você está abençoado, e na próxima vez que você morrer, {ninguém além de você poderá tocar no seu corpo}.", cid)
   end


end    
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

É só isso, agora se você pegar a bless, quando morrer não vão poder pegar seus items, mas podem arrastar o corpo.. >.<, só falta ajeitar esse pequeno problema :P, Flw

Editado por MaXwEllDeN

Compartilhar este post


Link para o post
Oneshot    24
Oneshot

Você mostrou que um código mesmo que simples, não deixa de ser bem feito e ter muita utilidade. Gostei bastante da idéia.

 

Aprovado!

Você receberá V$ 35 pela contribuição.

Script avaliado como B-.

Editado por Garou

Compartilhar este post


Link para o post
Dargosh    0
Dargosh

Muito legal esse sistema, mas, não sei se alguem ira usar esse sistema, mais msm assim não deixar de ser intereçante.

Parabens

Compartilhar este post


Link para o post
iuniX    4
iuniX

Gostei pakas, como o garou disse, Simples porem bem original :]

Compartilhar este post


Link para o post
The Ukor    0
The Ukor

uma ideia bacana

só melhora o ingles

e o portugues tb

e tem que ser pago ne mano senao avacalha

Compartilhar este post


Link para o post
Captha    0
Captha

o script ficou ótimo, so não vejo muita utilidade, pois qual é a graça de morrer e somente você poder pegar seu loot?

mesmo assim, inovou no script

Compartilhar este post


Link para o post
kacalsilvera    0
kacalsilvera

mais depois de um certo tempo o corpo aprodece tbm?? e o0 item so usa uma vex?

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN
mais depois de um certo tempo o corpo aprodece tbm?? e o0 item so usa uma vex?

 

 

item só usa uma vez? que item? o.O

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×