ThupaThuplex
-
Total de itens
5 -
Registro em
-
Última visita
Posts postados por ThupaThuplex
-
-
Gostaria de mudar a escrita da imagem abaixo:
Quero que no lugar da escrita OGANZA, esteja escrito Inotia Online, e na palavra SERVER, esteja escrito 10.77.
Aguardando qualquer resposta, obrigado desde já...
-
3 horas atrás, gabriel28 disse:
@ThupaThuplex
Se cada uma der uma storage diferente, o player poderá trocar de vocação.
E você arrumou o 'fromvoc' de cada promotion em vocations.xml?
Poe exemplo, usando o nome que você deu.
O fromvoc de Blade Knight e Templar Knight devem ser 4, já que ambos são uma promoção da vocação Knight.
Dai seguindo essa lógica você faz pras outras.
Se continuar o erro, provavelmente terá que modificar o script, pra ao invés de setar uma vocação, setar um nível de promotion.
Faça o que eu disse primeiro, se continuar voltando a vocação, me diz que eu arrumo.No meu vocations.xml está tudo seguindo a ordem do "fromvoc", porém mesmo assim ao "Deslogar" e depois "Logar",
o player volta a sua Vocação Inicial e não pode mais fazer a troca de Vocação, pois o Npc reconhece que ele já fez a troca.
Preciso que ele apenas mantenha a Nova Vocação que foi trocada, fora isso está tudo certo...
-
1 hora atrás, Qwizer disse:
vou fazer aqui pra voce
Valeu, no Aguarde =)
33 minutos atrás, gabriel28 disse:@ThupaThuplex
Fiz minha versão:
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 local storage = 1111514 --storage da quest local voc1 = {1} local voc2 = {2} local voc3 = {3} local voc4 = {4} 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, "promotion") then if getPlayerStorageValue(cid, storage) == -1 then if isInArray(voc1, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {A} ou {B}?", cid) --Opções para Sorc talkState[talkUser] = 1 elseif isInArray(voc2, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {C} ou {D}?", cid) --Opções para Druid talkState[talkUser] = 2 elseif isInArray(voc3, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {E} ou {F}?", cid) --Opções para Pally talkState[talkUser] = 3 elseif isInArray(voc4, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {G} ou {H}?", cid) --Opções para Kina talkState[talkUser] = 4 end else selfSay("Você já pegou a promotion.", cid) npcHandler:addFocus(cid) end end if msgcontains(msg, "A") and talkState[talkUser] == 1 then selfSay("ai está, você agora é a promotion A", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "B") and talkState[talkUser] == 1 then selfSay("ai está, você agora é a promotion B", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "C") and talkState[talkUser] == 2 then selfSay("ai está, você agora é a promotion C", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "D") and talkState[talkUser] == 2 then selfSay("ai está, você agora é a promotion D", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "E") and talkState[talkUser] == 3 then selfSay("ai está, você agora é a promotion E", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "F") and talkState[talkUser] == 3 then selfSay("ai está, você agora é a promotion F", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "G") and talkState[talkUser] == 4 then selfSay("ai está, você agora é a promotion G", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "H") and talkState[talkUser] == 4 then selfSay("ai está, você agora é a promotion H", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Em 'doPlayerSetVocation(cid, X)' no script, troque o X pela id da vocation.
Edit: Acrescentei uma mensagem, que eu tinha esquecido, pra caso o player já tenha pego uma promotion.Obrigado mesmo antes de Testar.
Agradeço pela atenção.
#Testando^^
58 minutos atrás, gabriel28 disse:@ThupaThuplex
Fiz minha versão:
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 local storage = 1111514 --storage da quest local voc1 = {1} local voc2 = {2} local voc3 = {3} local voc4 = {4} 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, "promotion") then if getPlayerStorageValue(cid, storage) == -1 then if isInArray(voc1, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {A} ou {B}?", cid) --Opções para Sorc talkState[talkUser] = 1 elseif isInArray(voc2, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {C} ou {D}?", cid) --Opções para Druid talkState[talkUser] = 2 elseif isInArray(voc3, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {E} ou {F}?", cid) --Opções para Pally talkState[talkUser] = 3 elseif isInArray(voc4, getPlayerVocation(cid)) then selfSay("Então você quer ser promovido? Bem, que promotion você deseja, {G} ou {H}?", cid) --Opções para Kina talkState[talkUser] = 4 end else selfSay("Você já pegou a promotion.", cid) npcHandler:addFocus(cid) end end if msgcontains(msg, "A") and talkState[talkUser] == 1 then selfSay("ai está, você agora é a promotion A", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "B") and talkState[talkUser] == 1 then selfSay("ai está, você agora é a promotion B", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "C") and talkState[talkUser] == 2 then selfSay("ai está, você agora é a promotion C", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "D") and talkState[talkUser] == 2 then selfSay("ai está, você agora é a promotion D", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "E") and talkState[talkUser] == 3 then selfSay("ai está, você agora é a promotion E", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "F") and talkState[talkUser] == 3 then selfSay("ai está, você agora é a promotion F", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "G") and talkState[talkUser] == 4 then selfSay("ai está, você agora é a promotion G", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end if msgcontains(msg, "H") and talkState[talkUser] == 4 then selfSay("ai está, você agora é a promotion H", cid) doPlayerSetVocation(cid, X) setPlayerStorageValue(cid, storage, 1) end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Em 'doPlayerSetVocation(cid, X)' no script, troque o X pela id da vocation.
Edit: Acrescentei uma mensagem, que eu tinha esquecido, pra caso o player já tenha pego uma promotion.Eu testei e está funcionando 100%.
Muito Obrigado.
Queria saber se não seria possível adicionar no Script, com level para mudar a Vocação e
se cada vocação que fosse trocada ganhasse um StoreValue diferente..
De Qualquer forma muito obrigado.
1 hora atrás, ThupaThuplex disse:Valeu, no Aguarde =)
Obrigado mesmo antes de Testar.
Agradeço pela atenção.
#Testando^^
Eu testei e está funcionando 100%.
Muito Obrigado.
Queria saber se não seria possível adicionar no Script, com level para mudar a Vocação e
se cada vocação que fosse trocada ganhasse um StoreValue diferente..
De Qualquer forma muito obrigado.
Quando o Player desloga, volta na Vocação que ele estava... =/
-
Preciso muito de um Npc Script para a versão 8.6 que funciona da seguinte maneira:
Quando o player alcançar o level 20, e for por exemplo Knight, o Player conversará com o Npc
e terá duas opções de vocações diferentes para escolher, ele poderá ser Blade ou Templar por exemplo.
Se ele for Sorcerer terá outras duas Vocações para escolher, e assim por diante.
Lembrando que o Player só pode fazer a mudança de Vocação apenas uma vez.
Ficarei muito Grato pela ajuda e Atenção de Todos.
Obrigado e Até mais!
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
Complemento para o Sistema AGS
em Scripts
Postado · Editado por ThupaThuplex
Olá para todos, eu uso o sistema AGS:
Eu uso o executável(Otserv) OTX 9.8,
gostaria de ter um Npc que só teletransporta players que tenham Guild, e que a Guild tenha completado certa Task do sistema AGS.
Exemplo: Um player sem Guild chega no Npc, e o Npc diz que só pode teletransportar(deixar viajar) apenas quem tem Guild.
Exemplo 2: Um player com Guild chega no Npc, e o Npc diz que só pode teletransportar(deixar viajar) apenas membro de Guild que tenha completado certa Task.
Resumindo: O Npc só deixa viajar quem tem Guild, e que a Guild tenha completado certa Task.
Se o player(membro de Guild) não tiver Guild ou a Guild ainda não tenha feito certa Task, o membro da Guild não vai conseguir viajar.
Estarei no aguarde de qualquer ajuda ou dúvida sobre o meu pedido.
Obrigado desde já.