Ah eu ia postar antes mas pelo visto você postou primeiro x(
Nice script hehehe
Abraços
Por ShadowMapper, 18 de set. de 2008 em Actions e Talkactions
Ah eu ia postar antes mas pelo visto você postou primeiro x(
Nice script hehehe
Abraços
info
Grupo: Campones
Registrado: 11/06/07
Posts: 46
Reputação: 0
Char no Tibia: Eternal Brucy

a cara no meu nao deu certo nao, apaece esse erro:
[19/09/2008 11:02:06] [Warning - NpcScript::NpcScript] Can not load script: data/npc/scripts/oldrak.lua
[19/09/2008 11:02:06] data/npc/scripts/oldrak.lua:31: 'then' expected near 'player_money'
sabe oq eh?
info
Grupo: Conde
Registrado: 18/12/05
Posts: 912
Reputação: +86
Gênero: Masculino
Char no Tibia: Kohzete

Hm essa quest eu desconheço
vou ver sobre ela e depois comento
+ deve ser bom pelo jeito do script
info
Grupo: Campones
Registrado: 18/09/08
Posts: 13
Reputação: 0

Adicionei um link sobre a quest no tópico e arrumei alguns bugs meus.
Eu não posso dar suporte sobre esse script pois não fui eu que fiz, eu apenas trouxe ao fórum.
Obrigado por todos os comentários.
Att,
ShadowMapper.
info
Grupo: Conde
Registrado: 07/05/08
Posts: 612
Reputação: +12
Char no Tibia: leviana luciferiana

caraca manow gostei vou tentar fazer ele funfa no meu tfs...
show =x
Realmente é ótimo mas ta meio confuso o script..Nunca fui na demon oak quest no global dai me confundi todo ;(
No caso de summona os bichos são o que? Todos demon? Sorry a noobice ^^ Não conheço bem essa quest...Apesar de ser ebm famosa ja 0_0 mas o script ta ótimo..Obrigado por trazer ao XTibia
info
Grupo: Campones
Registrado: 03/10/07
Posts: 49
Reputação: 0
Char no Tibia: Halozzabe Fareox

isso nao esta dando serto ^^
info
Grupo: Conde
Registrado: 18/12/05
Posts: 912
Reputação: +86
Gênero: Masculino
Char no Tibia: Kohzete

Script ta errado =/
eu tentei corrigir
+ sinceramente ele foi tão mal feito (Os cara quis usar funções que eles não conhenciam)
Que refiz ele
Depois eu coloco ele na net
info
Grupo: Conde
Registrado: 18/12/05
Posts: 912
Reputação: +86
Gênero: Masculino
Char no Tibia: Kohzete

Eh eu vi
Teve umas 2 pessoas que ja arrumaram
O meu falta so arrumar as falas
Deixe ele menor ![]()
info
Grupo: Campones
Registrado: 18/09/08
Posts: 13
Reputação: 0
Olá XTibianos,
Esse script foi postado na OTFans, então todos créditos vão para Mazen, eu apenas traduzi o tópico.
Esse é o script para o novo The Demon Oak Quest (completo). Foi feito para rodar somente em The Forgotten Server 3.0. (Última revisão e items.otb v3).
Os Scripts da Quest
Não esqueça de adicionar os monstros e suas posições no script. Mude o: "doSummonCreature("", summonmediumtwo2Position)". Exemplo: "doSummonCreature("Demon", summonmediumtwo2Position)". Os summonposition precisa estar dentro da area e os backpostion precisam estar fora da arena, então o player será teleportado para fora quando ele terminar a quest.
actions/scripts/tools/Hallowed Axe.lua:
--- Made by GM Rufus --- function onUse(cid, item, fromPosition, itemEx, toPosition) --- Config -- blocktree = {32193} --- The uniqueid of the dead tree. --- levelneeded = 120 --- How much level you need to enter the arena --- --- First part --- summonweak1Position = {x=XXX, y=XXX, z=X} summonweak2Position = {x=XXX, y=XXX, z=X} summonweak3Position = {x=XXX, y=XXX, z=X} summonweak4Position = {x=XXX, y=XXX, z=X} summonweakone1Position = {x=XXX, y=XXX, z=X} summonweakone2Position = {x=XXX, y=XXX, z=X} summonweakone3Position = {x=XXX, y=XXX, z=X} summonweakone4Position = {x=XXX, y=XXX, z=X} summonweaktwo1Position = {x=XXX, y=XXX, z=X} summonweaktwo2Position = {x=XXX, y=XXX, z=X} summonweaktwo3Position = {x=XXX, y=XXX, z=X} summonweaktwo4Position = {x=XXX, y=XXX, z=X} --- Second Part --- summonnormal1Position = {x=XXX, y=XXX, z=X} summonnormal2Position = {x=XXX, y=XXX, z=X} summonnormal3Position = {x=XXX, y=XXX, z=X} summonnormal4Position = {x=XXX, y=XXX, z=X} summonnormalone1Position = {x=XXX, y=XXX, z=X} summonnormalone2Position = {x=XXX, y=XXX, z=X} summonnormalone3Position = {x=XXX, y=XXX, z=X} summonnormalone4Position = {x=XXX, y=XXX, z=X} summonnormaltwo1Position = {x=XXX, y=XXX, z=X} summonnormaltwo2Position = {x=XXX, y=XXX, z=X} summonnormaltwo3Position = {x=XXX, y=XXX, z=X} summonnormaltwo4Position = {x=XXX, y=XXX, z=X} --- Third Part --- summonmedium1Position = {x=XXX, y=XXX, z=X} summonmedium2Position = {x=XXX, y=XXX, z=X} summonmedium3Position = {x=XXX, y=XXX, z=X} summonmedium4Position = {x=XXX, y=XXX, z=X} summonmediumone1Position = {x=XXX, y=XXX, z=X} summonmediumone2Position = {x=XXX, y=XXX, z=X} summonmediumone3Position = {x=XXX, y=XXX, z=X} summonmediumone4Position = {x=XXX, y=XXX, z=X} summonmediumtwo1Position = {x=XXX, y=XXX, z=X} summonmediumtwo2Position = {x=XXX, y=XXX, z=X} summonmediumtwo3Position = {x=XXX, y=XXX, z=X} summonmediumtwo4Position = {x=XXX, y=XXX, z=X} --- Fourth Part --- summonhard1Position = {x=XXX, y=XXX, z=X} summonhard2Position = {x=XXX, y=XXX, z=X} summonhard3Position = {x=XXX, y=XXX, z=X} summonhard4Position = {x=XXX, y=XXX, z=X} summonhardone1Position = {x=XXX, y=XXX, z=X} summonhardone2Position = {x=XXX, y=XXX, z=X} summonhardone3Position = {x=XXX, y=XXX, z=X} summonhardone4Position = {x=XXX, y=XXX, z=X} --- Teleport Back Positions --- back1Position = {x=XXX, y=XXX, z=X} back2Position = {x=XXX, y=XXX, z=X} back3Position = {x=XXX, y=XXX, z=X} back4Position = {x=XXX, y=XXX, z=X} back5Position = {x=XXX, y=XXX, z=X} --- End Config --- demonoak = {8288, 8289, 8290, 8291} if itemEx.itemid == 2717 and itemEx.itemuid == blocktree and getPlayerLevel(cid) >= levelneeded and (getPlayerStorageValue(cid, 21544) == 3) == FALSE then doTransformItem(itemEx.uid, 3669) doTeleportThing(cid, toPosition, TRUE) elseif itemEx.itemid == demonoak then if getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == -1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21541, 1) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonweak1Position) doSummonCreature("", summonweak2Position) doSummonCreature("", summonweak3Position) doSummonCreature("", summonweak4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21541, 2) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonweakone1Position) doSummonCreature("", summonweakone2Position) doSummonCreature("", summonweakone3Position) doSummonCreature("", summonweakone4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 2 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21541, 3) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonweaktwo1Position) doSummonCreature("", summonweaktwo2Position) doSummonCreature("", summonweaktwo3Position) doSummonCreature("", summonweaktwo4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) if itemEx.itemid == 8288 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8289 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8290 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8291 then setPlayerStorageValue(cid, itemEx.itemid, 1) end elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == -1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21542, 1) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonnormal1Position) doSummonCreature("", summonnormal2Position) doSummonCreature("", summonnormal3Position) doSummonCreature("", summonnormal4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21542, 2) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonnormalone1Position) doSummonCreature("", summonnormalone2Position) doSummonCreature("", summonnormalone3Position) doSummonCreature("", summonnormalone4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 2 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21542, 3) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonnormaltwo1Position) doSummonCreature("", summonnormaltwo2Position) doSummonCreature("", summonnormaltwo3Position) doSummonCreature("", summonnormaltwo4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) if itemEx.itemid == 8288 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8289 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8290 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8291 then setPlayerStorageValue(cid, itemEx.itemid, 1) end elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == -1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21543, 1) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonmedium1Position) doSummonCreature("", summonmedium2Position) doSummonCreature("", summonmedium3Position) doSummonCreature("", summonmedium4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == 1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21543, 2) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonmediumone1Position) doSummonCreature("", summonmediumone2Position) doSummonCreature("", summonmediumone3Position) doSummonCreature("", summonmediumone4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == 2 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21543, 3) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonmediumtwo1Position) doSummonCreature("", summonmediumtwo2Position) doSummonCreature("", summonmediumtwo3Position) doSummonCreature("", summonmediumtwo4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) if itemEx.itemid == 8288 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8289 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8290 then setPlayerStorageValue(cid, itemEx.itemid, 1) elseif itemEx.itemid == 8291 then setPlayerStorageValue(cid, itemEx.itemid, 1) end elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == 3 and getPlayerStorageValue(cid, 21544) == -1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21544, 1) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonmedium1Position) doSummonCreature("", summonmedium2Position) doSummonCreature("", summonmedium3Position) doSummonCreature("", summonmedium4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == 3 and getPlayerStorageValue(cid, 21544) == 1 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21544, 2) doSendMagicEffect(toPosition, 0) doSummonCreature("", summonmediumone1Position) doSummonCreature("", summonmediumone2Position) doSummonCreature("", summonmediumone3Position) doSummonCreature("", summonmediumone4Position) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end elseif getPlayerStorageValue(cid, itemEx.itemid) == -1 and getPlayerStorageValue(cid, 21541) == 3 and getPlayerStorageValue(cid, 21542) == 3 and getPlayerStorageValue(cid, 21543) == 3 and getPlayerStorageValue(cid, 21544) == 2 then if math.random(1, 2) == 1 then setPlayerStorageValue(cid, 21544, 3) doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) if itemEx.itemid == 8288 then setPlayerStorageValue(cid, itemEx.itemid, 1) if getPlayerStorageValue(cid, demonoak) == 1 then setPlayerStorageValue(cid, 21545, 1) if math.random(1, 5) == 1 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back1Position) elseif math.random(1, 5) == 2 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back2Position) elseif math.random(1, 5) == 3 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back3Position) elseif math.random(1, 5) == 4 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back4Position) elseif math.random(1, 5) == 5 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back5Position) end end elseif itemEx.itemid == 8289 then setPlayerStorageValue(cid, itemEx.itemid, 1) if getPlayerStorageValue(cid, demonoak) == 1 then setPlayerStorageValue(cid, 21545, 1) if math.random(1, 5) == 1 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back1Position) elseif math.random(1, 5) == 2 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back2Position) elseif math.random(1, 5) == 3 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back3Position) elseif math.random(1, 5) == 4 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back4Position) elseif math.random(1, 5) == 5 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back5Position) end end elseif itemEx.itemid == 8290 then setPlayerStorageValue(cid, itemEx.itemid, 1) if getPlayerStorageValue(cid, demonoak) == 1 then setPlayerStorageValue(cid, 21545, 1) if math.random(1, 5) == 1 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back1Position) elseif math.random(1, 5) == 2 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back2Position) elseif math.random(1, 5) == 3 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back3Position) elseif math.random(1, 5) == 4 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back4Position) elseif math.random(1, 5) == 5 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back5Position) end end elseif itemEx.itemid == 8291 then setPlayerStorageValue(cid, itemEx.itemid, 1) if getPlayerStorageValue(cid, demonoak) == 1 then setPlayerStorageValue(cid, 21545, 1) if math.random(1, 5) == 1 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back1Position) elseif math.random(1, 5) == 2 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back2Position) elseif math.random(1, 5) == 3 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back3Position) elseif math.random(1, 5) == 4 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back4Position) elseif math.random(1, 5) == 5 then doSendMagicEffect(fromPosition, 10) doTeleportThing(cid,back5Position) end end end elseif math.random(1, 2) == 2 then doSendMagicEffect(toPosition, 0) doTargetCombatHealth(0, cid, COMBAT_EARTHDAMAGE, -270, -310, CONST_ME_BIGPLANTS) end else doSendMagicEffect(toPosition, 2) end end return TRUE endAdicione isto no arquivo actions.xml:
Adicione dotile.lua em data/movemments/scripts:
E adicione isto em movemments.xml:
As recompensas:
Este é o script da recompensa, quests/DOQChests.lua:
Adicione isto em actions.xml:
O cemitério:
Adicione este script, DOQgravestone.lua:
--- Made by Mazen --- function onUse(cid, item, fromPosition, itemEx, toPosition) newnPosition = {x=XXX, y=XXX, z=X} --- Reward Room Position --- if item.itemuid == 55100 and getPlayerStorageValue(cid,21545) == 2 then doTeleportThing(cid,newnPosition) doSendMagicEffect(newnPosition,10) else return 0 end return 1 endAdicione isto em actions.xml:
O NPC:
Aqui está o NPC que vende o Hallowed Axe.
npc/scripts/oldrak.lua:
-- WAS NOT Made by Coltain13 // Coltain, I only made it work for TFS -- local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) -- OTServ event handling functions start 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 -- OTServ event handling functions end function creatureSayCallback(cid, type, msg) -- Place all your code in here. Remember that hi, bye and all that stuff is already handled by the npcsystem, so you do not have to take care of that yourself. if(npcHandler.focus ~= cid) then return false end player_gold = getPlayerItemCount(cid,2148) player_plat = getPlayerItemCount(cid,2152)*100 player_crys = getPlayerItemCount(cid,2160)*10000 player_money = player_gold + player_plat + player_crys playerCap = getPlayerFreeCap(cid) item = 8293 --Hallowed Axe itemweight = getItemWeight(item, 1) if msgcontains(msg, 'hallowed axe') then if isPlayer(cid) then if getPlayerItemCount(cid,2386) >= 1 player_money >= 3500000 then selfSay('Do you want to buy a Hallowed Axe from me?') talk_state = 1 else selfSay('You have to bring me an axe and 1000 gp first.') talk_state = 0 end else selfSay('You need premium to buy this axe from me.') talk_state = 0 end elseif msgcontains(msg, 'yes') and talk_state == 1 then talk_state = 0 if getPlayerItemCount(cid,2386) >= 1 player_money >= 3500000 then if doPlayerTakeItem(cid,2386,1) == 1 and pay(cid,3500000) and playerCap >= itemweight then selfSay('Here you are. You can now defeat the demon oak with this axe.') doPlayerAddItem(cid,item,1) talk_state = 0 else selfSay('The Hallowed Axe is too heavy for you. Make sure that you have enough capacity.') talk_state = 0 end else selfSay('Please bring with you an axe and enough with money.') talk_state = 0 end elseif msgcontains(msg, 'demon oak') then if getPlayerItemCount(cid,2386) >= 1 player_money >= 3500000 then selfSay('Did you defeat the demon oak?') talk_state = 2 else selfSay('Go defeat the demon oak.') talk_state = 0 end elseif msgcontains(msg, 'yes') and talk_state == 2 then talk_state = 0 if getPlayerStorageValue(cid,21545) == 1 then selfSay('Good job!') setPlayerStorageValue(cid,21545,2) end ------------------------------------------------ confirm no ------------------------------------------------ elseif msgcontains(msg, 'no') and (talk_state >= 1 and talk_state <= 1) then selfSay('Ok thanks.') talk_state = 0 end -- Place all your code in here. Remember that hi, bye and all that stuff is already handled by the npcsystem, so you do not have to take care of that yourself. return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())npcs/Oldrak.xml:
Lembrando que este script não foi feito por mim, eu apenas traduzi o post do Mazen.
Para ver mais sobre a Demon Oak Quest clique aqui.
Att,
ShadowMapper.
Editado Setembro 19 por ShadowMapper