Ir para conteúdo

Sealed Body ("bless De Corpo")


MaXwEllDeN

Posts Recomendados

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

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...