Ir para conteúdo

Thais - Elane


Poccnn

Posts Recomendados

Elane.xml

<?xml version="1.0"?>
<npc name="Elane" script="data/npc/scripts/Thais/Elane.lua" walkinterval="2000">
<health now="200" max="200" />
<look type="137" head="113" body="100" legs="119" feet="119" addons="3"/>
	<parameters>
		<parameter key="message_greet" value="Welcome to the paladins' guild, |PLAYERNAME|! How can I {help} you?" />
		<parameter key="module_shop" value="1"/>
        <parameter key="shop_buyable" value="" />
        <parameter key="shop_sellable" value="sniper gloves,5875,2000" />
		
        <parameter key="module_keywords" value="1" />
        <parameter key="keywords" value="name;help;job;Paladins;warriors;magicians;missile;news;members;advantages;spells;general;army;excalibug;Ferumbras;time;crossbow;Baxter;Bozo;McRonalds;Eclesius;Elane;Frodo;Galuna;Gorn;Gregor;Harkath Bloodblade;king tibianus;Lugri;Lynda;Marvik;Muriel;Oswald;Quentin;Sam;" />
        <parameter key="keyword_reply1" value="My name is Elane. I am the famous leader of the {Paladins}." />
        <parameter key="keyword_reply2" value="I am the leader of the {Paladins}. I help our members." />
        <parameter key="keyword_reply3" value="I am the leader of the {Paladins}. I help our members." />
        <parameter key="keyword_reply4" value="Paladins are great {warriors} and {magicians}. Besides that we are excellent missile fighters. Many people in Tibia want to join us." />
        <parameter key="keyword_reply5" value="Of course, we aren't as strong as {knights}, but no {druid} or {sorcerer} will ever defeat a paladin with a sword." />
        <parameter key="keyword_reply6" value="There are many magic spells and runes paladins can use." />
        <parameter key="keyword_reply7" value="Paladins are the best missile fighters in Tibia!" />
        <parameter key="keyword_reply8" value="I am a paladin, not a storyteller." />		
        <parameter key="keyword_reply9" value="Every paladin profits from his vocation. It has many advantages to be a paladin." />		
        <parameter key="keyword_reply10" value="We will help you to improve your skills. Besides I offer spells for paladins." />		
        <parameter key="keyword_reply11" value="Sorry, I don't teach spells." />		
        <parameter key="keyword_reply12" value="Harkath Bloodblade is the royal general." />		
        <parameter key="keyword_reply13" value="Some paladins serve in the kings army." />
        <parameter key="keyword_reply14" value="A weapon of myth. I don't believe that this weapon exists." />		
        <parameter key="keyword_reply15" value="Someday I will slay that bastard!" />		
        <parameter key="keyword_reply16" value="Oops. I have forgotten my watch." />		
        <parameter key="keyword_reply17" value="I really wonder what was on this fool's mind when he stole my crossbow. What a huge disappointment." />		
        <parameter key="keyword_reply18" value="He has some potential." />		
        <parameter key="keyword_reply19" value="How spineless do you have to be to become a jester?" />		
		<parameter key="keyword_reply20" value="The McRonalds are simple farmers." />	
		<parameter key="keyword_reply21" value="He must have been skilled before he became the way he is now. Such a pity." />	
		<parameter key="keyword_reply22" value="yes?" />	
		<parameter key="keyword_reply23" value="The alcohol he sells shrouds the mind and the eye." />	
		<parameter key="keyword_reply24" value="One of the most important members of our guild. She makes all the bows and arrows we need." />	
		<parameter key="keyword_reply25" value="He sells a lot of useful equipment." />	
		<parameter key="keyword_reply26" value="He and his guildfellows lack the grace of a true warrior." />	
		<parameter key="keyword_reply27" value="A fine warrior and a skilled general." />	
		<parameter key="keyword_reply28" value="King Tibianus is a wise ruler." />	
		<parameter key="keyword_reply29" value="A follower of evil that will get what he deserves one day." />	
		<parameter key="keyword_reply30" value="Mhm, a little too nice for my taste. Still, it's amazing how she endures all those men stalking her, especially this creepy Oswald." />	
		<parameter key="keyword_reply31" value="A skilled healer, that's for sure." />	
		<parameter key="keyword_reply32" value="Just another arrogant sorcerer." />	
		<parameter key="keyword_reply33" value="If there wouldn't be higher powers to protect him..." />	
		<parameter key="keyword_reply34" value="A humble monk and a wise man." />	
		<parameter key="keyword_reply35" value="Strong man. But a little shy." />		
    </parameters>
</npc>

Elane.lua

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
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
local talkState,talkUser = {}, 0

local function say(npc,text,cid,talk)
	if not(npcHandler:isFocused(cid)) then return false end
	if talk and not(talkState[talkUser] == talk) then return false end
	doCreatureSay(npc,text,TALKTYPE_PRIVATE_NP,cid)
end
local function changeTalk(talk)
	talkState[talkUser] = talk	
end

function creatureSayCallback(cid, type, msg)
if not(npcHandler:isFocused(cid)) then return false end
local msg = string.lower(msg)
talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

	if(msgcontains(msg, 'outfit'))then
		npcHandler:say("Oh, my winged tiara? Those are traditionally awarded after having completed a difficult task for our guild, only to female aspirants though. Male warriors will receive a hooded cloak.", cid)
		talkState[talkUser] = 1
	elseif(talkState[talkUser] == 1 and msgcontains(msg, 'task'))then
		npcHandler:say("So you are saying that you would like to prove that you deserve to wear such a hooded cloak?",cid)
		talkState[talkUser] = 11
	elseif(talkState[talkUser] == 11)then
		if(msgcontains(msg, 'yes'))then
			doPlayerSetStorageValue(cid,1835,1) --1835
			npcHandler:say("Alright, I will give you a chance. Pay close attention to what I'm going to tell you now. ...",cid)	addEvent(say,6000,getNpcCid(),"... Recently, one of our members moved to Liberty Bay out of nowhere, talking about some strange cult. That is not the problem, but he took my favourite crossbow with him. ...",cid,11)
			addEvent(say,14000,getNpcCid(),"... Please find my crossbow. It has my name engraved on it and is very special to me. ...",cid,11)
			addEvent(say,18000,getNpcCid(),"... Secondly, we need a lot of leather for new quivers. 100 pieces of lizard leather and 100 pieces of red dragon leather should suffice. ...",cid,11)	
			addEvent(say,24000,getNpcCid(),"... Third, since we are giving out tiaras, we are always in need of enchanted chicken wings. Please bring me 5, that would help us tremendously. ...",cid,11)
			addEvent(say,30000,getNpcCid(),"... Lastly, for our arrow heads we need a lot of steel. Best would be one piece of royal steel, one piece of draconian steel and one piece of hell steel. ...",cid,11)
			addEvent(say,40000,getNpcCid(),"... Did you understand everything I told you and are willing to handle this task?",cid,11)
			addEvent(changeTalk,40000,12)
		else
			npcHandler:say("ok.",cid)
			talkState[talkUser] = 0
		end
	elseif(talkState[talkUser] == 12)then
		if(msgcontains(msg, 'yes'))then
			npcHandler:say("That's the spirit! I hope you will find my crossbow, "..getCreatureName(cid)..".",cid)
		else
			npcHandler:say("Hmm, maybe next time.",cid)
		end	
		talkState[talkUser] = 0
	elseif(msgcontains(msg, 'crossbow'))then
		npcHandler:say("I'm so excited! Have you really found my crossbow?", cid)
		talkState[talkUser] = 2
	elseif(talkState[talkUser] == 2 and msgcontains(msg, 'yes'))then
		if(getPlayerItemCount(cid,5947) >= 1)then
			npcHandler:say("Yeah! I could kiss you right here and there! Besides, you're a handsome one. Please bring me 100 pieces of lizard {leather} and 100 pieces of red dragon {leather} now!",cid)
			talkState[talkUser] = 21
		else
			npcHandler:say("That's the spirit! I hope you will find my crossbow, "..getCreatureName(cid)..".",cid)
			talkState[talkUser] = 0
		end	
	elseif(talkState[talkUser] == 21 and msgcontains(msg, 'leather'))then
		npcHandler:say("Did you bring me 100 pieces of lizard leather and 100 pieces of red dragon leather?",cid)
		talkState[talkUser] = 22
	elseif(talkState[talkUser] == 22 and msgcontains(msg, 'yes'))then
		if(getPlayerItemCount(cid,5876) >= 100 and getPlayerItemCount(cid,5948) >= 100)then
			npcHandler:say("Good work, "..getCreatureName(cid).."! That is enough leather for a lot of sturdy quivers. Now, please bring me 5 enchanted {chicken wings}.",cid)
			talkState[talkUser] = 23
		else
			npcHandler:say("Ah! you dont have all items.", cid)	
			talkState[talkUser] = 0		
		end
	elseif(talkState[talkUser] == 23 and msgcontains(msg, 'chicken wings'))then
		npcHandler:say("Were you able to get hold of 5 enchanted chicken wings?",cid)
		talkState[talkUser] = 24
	elseif(talkState[talkUser] == 24 and msgcontains(msg, 'yes'))then
		if(getPlayerItemCount(cid,5891) >= 5)then
			npcHandler:say("Great! Now we can create a few more Tiaras. If only they weren't that expensive... Well anyway, please obtain one piece of royal steel, draconian steel and hell steel each.",cid)
			talkState[talkUser] = 25
		else
			npcHandler:say("Ah! you dont have all items.", cid)	
			talkState[talkUser] = 0		
		end		
	elseif(talkState[talkUser] == 25 and msgcontains(msg, 'steel'))then
		npcHandler:say("Ah, have you brought one piece of royal steel, draconian steel and hell steel each?",cid)
		talkState[talkUser] = 26
	elseif(talkState[talkUser] == 26 and msgcontains(msg, 'yes'))then
		if(getPlayerItemCount(cid,5887) >= 1 and getPlayerItemCount(cid,5888) >= 1 and getPlayerItemCount(cid,5889) >= 1 and getPlayerItemCount(cid,5891) >= 5 and getPlayerItemCount(cid,5876) >= 100 and getPlayerItemCount(cid,5948) >= 100 and getPlayerItemCount(cid,5947) >= 1)then
			doPlayerRemoveItem(cid,5887,1, true)
			doPlayerRemoveItem(cid,5888,1, true)
			doPlayerRemoveItem(cid,5889,1, true)
			doPlayerRemoveItem(cid,5891,5, true)
			doPlayerRemoveItem(cid,5876,100, true)
			doPlayerRemoveItem(cid,5948,100, true)
			doPlayerRemoveItem(cid,5947,1, true)			
			if(getPlayerSex(cid) == PLAYERSEX_MALE)then
				doPlayerAddOutfit(cid,129,1)
			else
				doPlayerAddOutfit(cid,137,1)
			end
			npcHandler:say("Wow, I'm impressed, "..getCreatureName(cid)..". Your really are a valuable member of our paladin guild. I shall grant you your reward now. Wear it proudly!",cid)
		else
			npcHandler:say("Ah! you dont have all items.", cid)	
		end
		talkState[talkUser] = 0	
	elseif(msgcontains(msg, 'sniper gloves'))then
		if(isPremium(Cid))then
			npcHandler:say("You found sniper gloves?! Incredible! Listen, if you give them to me, I will grant you the right to wear the sniper gloves accessory. How about it?", cid)
		else
			npcHandler:say("You found sniper gloves?! Incredible! I would love to grant you the sniper gloves accessory, but I can only do that for premium warriors. However, I would pay you 2000 gold pieces for them. How about it?", cid)			
		end
		talkState[talkUser] = 3
	elseif(talkState[talkUser] == 3 and msgcontains(msg, 'yes'))then
		if(getPlayerItemCount(cid,5875) >= 1)then
			doPlayerRemoveItem(cid,5875,1, true)		
			if(isPremium(cid))then
				npcHandler:say("Great! I hereby grant you the right to wear the sniper gloves as accessory. Congratulations!",cid)
				if(getPlayerSex(cid) == PLAYERSEX_MALE)then
					doPlayerAddOutfit(cid,129,2)
				else
					doPlayerAddOutfit(cid,137,2)
				end
			else
				doPlayerAddMoney(cid, 2000)
				npcHandler:say("Congratulations!",cid)
			end
		else
			npcHandler:say("sorry, you dont have a sniper gloves.", cid)	
		end
		talkState[talkUser] = 0
	else
		npcHandler:say('...?',cid)
	end
	return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...