elder720 4 Postado Novembro 3, 2007 Share Postado Novembro 3, 2007 Olá galera, sou Administrador de um server e estamos colocando RookGuard nele e, por ventura havíamos esquecido do The Oracle, e sem ele nem da pra mexe com Rook. Por favor quem tiver em seu computador, ou que saiba fazer, peço esse gde favor, mande para min respondendo á este tópico, pode ajudar outras pessoas tbm.. té mais.. Link para o comentário https://xtibia.com/forum/topic/67644-pedido-the-oracle-800/ Compartilhar em outros sites More sharing options...
nathbort 0 Postado Novembro 20, 2007 Share Postado Novembro 20, 2007 local focus = 0local talk_start = 0 local target = 0 local following = false local attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreatureSay(cid, type, msg) msg = string.lower(msg) pos = {x=160, y=54, z=7} -- greeting phrase if string.find(msg, '(%a*)hi(%a*)') and focus == 0 and string.len(msg) == 2 and getDistanceToCreature(cid) < 4 then selfSay('Hello, young adventurer! Are you ready to face your destiny?') focus = cid talk_start = os.clock() elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.') elseif focus == cid then talk_start = os.clock() if msgcontains(msg, 'yes') and talk_state ~= 458 then if getPlayerLevel(cid) >= 8 then selfSay('Great! What would you like to be? A sorcerer, a druid, a paladin or a knight?') talk_state = 459 else selfSay('Sorry, you need level 8 to leave rookgaard.') talk_state = 0 end elseif msgcontains(msg, 'no') then selfSay('Come back when you are ready then.') talk_state = 0 elseif talk_state == 459 then vocationid = 0 talk_state = 458 if msgcontains(msg, 'sorcerer') then selfSay('A mighty sorcerer! Are you sure?') vocationid = 1 elseif msgcontains(msg, 'knight') then selfSay('A valorous knight! Are you sure?') vocationid = 4 elseif msgcontains(msg, 'paladin') then selfSay('A nimble paladin! Are you sure?') vocationid = 3 elseif msgcontains(msg, 'druid') then selfSay('A mysterious druid! Are you sure?') vocationid = 2 else selfSay('Sorry, I cannot understand that. Please type your vocation again.') talk_state = 459 end elseif talk_state == 458 then if msgcontains(msg, 'yes') then selfSay('Great! Where would you like to go? I can take you to CIDADE.') talk_state = 452 else selfSay('What vocation do you want then?') talk_state = 459 end elseif talk_state == 452 then if msgcontains(msg, 'now') then doPlayerSetVocation(cid,vocationid) doPlayerSetMasterPos(cid,pos) selfSay('/send ' .. creatureGetName(cid) .. ', 160 54 7') <<< Cordenadas da Cidade end end talk_state = 0 talk_start = 0 elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then selfSay('Good bye, ' .. creatureGetName(cid) .. '!') focus = 0 talk_start = 0 end end function onCreatureChangeOutfit(creature) end function onThink() doNpcSetCreatureFocus(focus) if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end end end OBS: AREA ERRADA!! :icon2: Link para o comentário https://xtibia.com/forum/topic/67644-pedido-the-oracle-800/#findComment-424263 Compartilhar em outros sites More sharing options...
Posts Recomendados