Ir para conteúdo
  • 0

Npc E Movements(Eu Acho)


godjean

Pergunta

Ola pessoal do xtibia hoje estou aqui para pedir uns pequenos script ou como fazer :D

 

Npc--

O npc que eu to precisando é o seguinte...Ele é um npc de quest (Multi quest nele) e para falar precisa de certo level ou superior.

 

Movements--

São 2 movements que são isso mesmo.A primeira é:

Algo que tipo o player poem 5 items em certo lugar e da use em certo item que retira um item de certo quanto.

Explicando de outra forma:

tem os items dessa forma

A

B

C X (é um exemplo)

D

E

Tem que ter certo item (item exato) no ponto A,B,C,D e E em certa position e outro item na posição X e quando der use no item X ele retira uma pedra do caminho.

Eu até tenho o script mais ele é meio ultra passado mas vou posta para ver se entende melhor:

 

function onUse(cid, item, frompos, item2, topos)

piece1pos = {x=471, y=253, z=13, stackpos=3}

piece2pos = {x=471, y=255, z=13, stackpos=3}

piece3pos = {x=471, y=257, z=13, stackpos=3}

piece4pos = {x=471, y=259, z=13, stackpos=3}

piece5pos = {x=471, y=261, z=13, stackpos=3}

piece6pos = {x=476, y=257, z=13, stackpos=1}

eng1 = {x=471, y=253, z=13, stackpos=1}

eng1 = {x=471, y=253, z=13, stackpos=1}

eng1 = {x=471, y=253, z=13, stackpos=1}

eng2 = {x=471, y=255, z=13, stackpos=2}

eng2 = {x=471, y=255, z=13, stackpos=2}

eng2 = {x=471, y=255, z=13, stackpos=2}

eng3 = {x=471, y=257, z=13, stackpos=3}

eng3 = {x=471, y=257, z=13, stackpos=3}

eng3 = {x=471, y=257, z=13, stackpos=3}

eng4 = {x=471, y=259, z=13, stackpos=4}

eng4 = {x=471, y=259, z=13, stackpos=4}

eng4 = {x=471, y=259, z=13, stackpos=4}

eng5 = {x=471, y=261, z=13, stackpos=5}

eng5 = {x=471, y=261, z=13, stackpos=5}

eng5 = {x=471, y=261, z=13, stackpos=5}

eng6 = {x=474, y=257, z=13, stackpos=6}

getpiece1 = getThingfromPos(piece1pos)

getpiece2 = getThingfromPos(piece2pos)

getpiece3 = getThingfromPos(piece3pos)

getpiece4 = getThingfromPos(piece4pos)

getpiece5 = getThingfromPos(piece5pos)

getpiece6 = getThingfromPos(piece6pos)

if item.uid == 6036 and item.itemid == 4331 and getpiece1.itemid == 1982 and getpiece2.itemid == 1983 and getpiece3.itemid == 1984 and getpiece4.itemid == 1985 and getpiece5.itemid == 1986 and getpiece6.itemid == 1354 then

doCreateItem(5070,1,eng1)

doCreateItem(5070,1,eng2)

doCreateItem(5070,1,eng3)

doCreateItem(5070,1,eng4)

doCreateItem(5070,1,eng5)

doCreateItem(5070,1,eng6)

doRemoveItem(getpiece6.uid,1)

doSendAnimatedText(getPlayerPosition(cid), "Cleck!", TEXTCOLOR_ORANGE)

doSendMagicEffect(topos,CONST_ME_BLOCKHIT)

doSendMagicEffect(getPlayerPosition(cid),CONST_ME_BLOCKHIT)

doTransformItem(item.uid,item.itemid+1)

elseif item.uid == 6036 and item.itemid == 4332 then

doTransformItem(item.uid,item.itemid-1)

else

doPlayerSendTextMessage(cid,20,"Sorry you need the sequence of mystic books.")

end

return 1

end

É esse o script.

 

E o outro script é praticamente a mesma coisa porem você pega um item e usa numa pedra e ele apaga uma parede.

 

Eu agradeço desde ja

Jean :D

 

Ajuda please eu sei que isso é double post mas eu preciso dessa força

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Um exemplo de NPC de Quest que fiz, ele apenas verbal, não precisa de nada alem de saber o que tem que falar.

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Rougan" script="rougan.lua" walkinterval="2000" floorchange="0">
<health now="150" max="150"/>
<look type="42" head="20" body="100" legs="50" feet="99" corpse="2212"/>
<parameters>
 <parameter key="message_greet" value="Get out my way. I have better things to do."/>
</parameters>
</npc>

 

 

 

E o Script dele:

 

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

local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if msgcontains(msg, 'quest') and getPlayerLevel(cid) >= 10 then
	 selfSay('What? Do you want to start a quest?', cid)
 setPlayerStorageValue(cid,30000,1)
 elseif msgcontains(msg, 'yes') and getPlayerStorageValue(cid,30000) == 1  then
	  selfSay('Ok, there is a cave.........', cid)
  setPlayerStorageValue(cid,30000,2)
return true
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

É só um exemplo, modifique como bem entender já que você não explicou como seria o NPC completamente.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...