lucasatak 14 Postado Setembro 18, 2009 Share Postado Setembro 18, 2009 Forca Citação: Testado em: Theforgotten server 0.3.1 Requerimento: #####ScriptLib Autor: mock Mais uma inultilidade para você passar o tempo em seu server. todos ja jogaram forca entao nem presiso ficar esplicando como se joga. Entao que tal irmos direto ao que realmente interessa? :smile_positivo: Nosso 1º passo e criar um arquivo chamado forca.xml na pasta NPC e inserir isto dentro dele: <npc name="forca" script="data/npc/scripts/forca.lua" walkinterval="2000" floorchange="0" access="3" level="1" maglevel="1"> <health now="150" max="150"/> <look type="57" head="114" body="94" legs="94" feet="0" addons="3" corpse="2212"/> </npc> Na mesma pasta so que em scripts crie um arquivo chamado forca.lua e ponha este script la dentro: local focuses = 0local n = 0 local wrdnow = "" local err = "" local letras_usadas = "" local letras = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','x','y','w','z','ç','-'} local chance_storage = 16001 function onCreatureAppear(cid) end function onCreatureDisappear(cid) if focuses == cid then focuses = 0 end end local wrds = { --- objetos {wrd="chave",tipo="objeto"}, {wrd="fone",tipo="objeto"}, {wrd="compultador",tipo="objeto"}, {wrd="chuveiro",tipo="objeto"}, {wrd="televisao",tipo="objeto"}, {wrd="tomada",tipo="objeto"}, {wrd="sorvete",tipo="objeto"}, {wrd="conta-de-lua",tipo="objeto"}, --- animais {wrd="urso",tipo="animal"}, {wrd="cavalo",tipo="animal"}, {wrd="cachorro",tipo="animal"}, {wrd="ornitorrinco",tipo="animal"}, {wrd="elefante",tipo="animal"}, --- palavras fodas {wrd="paralelograma",tipo="palavra foda"}, {wrd="paralelepipedo",tipo="palavra foda"}, {wrd="otorrinolaringologista",tipo="palavra foda"}, {wrd="inconstitucionalicimamente",tipo="palavra foda"}, {wrd="hipopotamomonstroesquisopedaliofobia",tipo="palavra foda"}, } function onCreatureSay(cid, type, msg) if stringcontains == nil then selfSay('Para este {NPC} funcionar corretamente você presisa da #####ScriptLib instalada em seu server',cid) return TRUE end if doChangeWord == nil then selfSay('Para este {NPC} funcionar corretamente você presisa da #####ScriptLib instalada em seu server',cid) return TRUE end if stringcontains(msg,'hi') and focuses == 0 then n = math.random(1,#wrds) selfSay('Vamos jogar. A palavra tem '.. string.len(wrds[n].wrd)..' letras e o tema é '.. wrds[n].tipo..'. Você tem 5 chances!',cid) selfSay('Fale uma letra de A-Z use "-" para espaço.',cid) err = "" letras_usadas = "Letras erradas: " wrdnow = wrds[n].wrd for i=1, string.len(wrds[n].wrd) do err = err.."_" end err = err.." ." focuses = cid setPlayerStorageValue(cid, chance_storage,5) return TRUE elseif stringcontains(msg,'hi') and focuses ~= 0 then selfSay('Um momento.',cid) end if stringcontains(msg,'bye') and focuses == cid then selfSay('Até mais',cid) wrdnow = "" err = "" focuses = 0 return TRUE end if focuses == cid then msg = string.lower(msg) local acerto = FALSE local l = string.sub(msg,1,1) if isInArray(letras, l) == FALSE then selfSay('Só sao permitidas letras de A até Z',cid) end for i=1, string.len(wrds[n].wrd) do if l == string.sub(wrds[n].wrd,i,i) then err = doChangeWord(err,i,l) acerto = TRUE end end if acerto == FALSE then if getPlayerStorageValue(cid, chance_storage) == 0 then selfSay('Proximo') selfSay('Você perdeu a palavra era '..wrds[n].wrd,cid) focuses = 0 return TRUE end setPlayerStorageValue(cid, chance_storage,getPlayerStorageValue(cid, chance_storage)-1) selfSay("Desculpe, esta letra não está na palavra. vocÊ ainda tem "..getPlayerStorageValue(cid, chance_storage).." chances.",cid) letras_usadas = letras_usadas..l.."," else selfSay("Isso! letra "..l.." está na palavra.",cid) end selfSay(err..letras_usadas,cid) if stringcontains(err, wrds[n].wrd) then selfSay('Parabéns! você acertou a palavra '..wrds[n].wrd,cid) selfSay('Proximo') focuses = 0 end end end function onThink()end Eu puis algumas palavras ja como exemplo caso queira mudar basta editar a tabela ficou bem facil de mudar. Depois de ocnfigurar a seu gosto vá ate seu server e fale /n forca E veje o que acontece: 16:05 forca: Vamos jogar. A palavra tem 4 letras e o tema é objeto. Você tem 5 chances!16:05 forca: Fale uma letra de A-Z use "-" para espaço. 16:05 Mock [2000]: a 16:05 forca: Desculpe, esta letra não está na palavra. vocÊ ainda tem 4 chances. 16:05 forca: ____ .Letras erradas: a, 16:05 Mock [2000]: e 16:05 forca: Isso! letra e está na palavra. 16:05 forca: ___e .Letras erradas: a, 16:06 Mock [2000]: i 16:06 forca: Desculpe, esta letra não está na palavra. vocÊ ainda tem 3 chances. 16:06 forca: ___e .Letras erradas: a,i, 16:06 Mock [2000]: o 16:06 forca: Isso! letra o está na palavra. 16:06 forca: _o_e .Letras erradas: a,i, 16:06 Mock [2000]: s 16:06 forca: Desculpe, esta letra não está na palavra. vocÊ ainda tem 2 chances. 16:06 forca: _o_e .Letras erradas: a,i,s, 16:06 Mock [2000]: f 16:06 forca: Isso! letra f está na palavra. 16:06 forca: fo_e .Letras erradas: a,i,s, 16:06 Mock [2000]: n 16:06 forca: Isso! letra n está na palavra. 16:06 forca: fone .Letras erradas: a,i,s, 16:06 forca: Parabéns! você acertou a palavra fone Bom divirtam-se :positive: Creditos:Mock Link para o comentário https://xtibia.com/forum/topic/120455-npc-npc-de-forca/ Compartilhar em outros sites More sharing options...
Mock 22 Postado Setembro 19, 2009 Share Postado Setembro 19, 2009 poderia tirar o conteudo desse topico tambem? sem autorização. Link para o comentário https://xtibia.com/forum/topic/120455-npc-npc-de-forca/#findComment-792808 Compartilhar em outros sites More sharing options...
RulezKnight 3 Postado Setembro 25, 2009 Share Postado Setembro 25, 2009 cara so tem uma pergunta ou tem mais? Link para o comentário https://xtibia.com/forum/topic/120455-npc-npc-de-forca/#findComment-795059 Compartilhar em outros sites More sharing options...
Henrique Moura 193 Postado Setembro 25, 2009 Share Postado Setembro 25, 2009 As perguntas você adiciona conforme seu gosto, não existe apenas uma, existem várias já contidas no script. Abraços. Link para o comentário https://xtibia.com/forum/topic/120455-npc-npc-de-forca/#findComment-795065 Compartilhar em outros sites More sharing options...
Posts Recomendados