Olá XTibianos. Sou novo por aqui e gostaria de fazer um pedido de script que eu estou procurando a Muito tempo. Mas não encontro de maneira nenhuma.
----------
Estou com um projeto em andamento baseado no RPG. (coisa que esta sendo esquecida atualmente nos ots.)
Eu preciso de um Script para um NPC.
Parece simples, mas eu quero um script que contenha 3 ou + quests em apenas um unico NPC. E que se deva fazer na seguencia. Podendo fazer apenas a segunda Mission, se tiver completado a Primeira.
Gostaria que fizessem um Modelo, contendo 3 Quests no Script. (Para que eu possa editar caso queria mais.)
Use as Actions que quiserem as recompensa que quiserem.
Exemplo :.
Player :. HI
NPC :. Hello!
Player :. Mission
NPC :. Houve um ataque de Orc's na cidade vizinha. Preciso de informações sobre minha familia que vive por lá. Poderia buscar informações deles?
- (Algo simples. Modelo apenas se baseando em uma quest onde tem que se falar com outro NPC para buscar certa Storage para prosseguir com a Segunda Mission!) -
Player :. yes
NPC :. Cuidado, e Boa Sorte!
- ( Ao falar com o "Tal NPC" e ganha a storage que nescessitava. Volta, reporta o acontecido e prossegue para uma nova missão com o mesmo NPC.) -
Aqui esta um Exemplo de um script que encontrei em meu PC.
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
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, 'inquisitor') then
selfSay('The churches of the gods entrusted me with the enormous and responsible task to lead the inquisition. I leave the field work to inquisitors who I recruit from fitting people that cross my way. If you wanna {join} in the inquisition, ask me why!' ,cid)
talkState[talkUser] = 1
elseif talkState[talkUser] == 1 then
if msgcontains(msg, 'join') then
selfSay('Do you want to join the inquisition?', cid)
talkState[talkUser] = 2
elseif talkState[talkUser] == 2 then
selfSay('So be it. Now you are a member of the inquisition. You might ask me for a {mission} to raise in my esteem.', cid)
talkState[talkUser] = 3
end
elseif msgcontains(msg, 'mission') then
if getPlayerStorageValue(cid,20000) == 1 then
selfSay('Your mission is simple,You must enter in the retreat and destruct the Shadow Nexus. Then report to me about your mission.', cid)
setPlayerStorageValue(cid,20000,2)
setPlayerStorageValue(cid,15202,1)
elseif getPlayerStorageValue(cid,20000) == 2 then
selfSay('Are you so crazy? You don\'t have finished this mission.', cid)
elseif getPlayerStorageValue(cid,20000) == 3 then
selfSay('Did you destructed the shadow nexus?', cid)
setPlayerStorageValue(cid,20000,4)
elseif getPlayerStorageValue(cid,20000) == 5 then
selfSay('Sorry, no missions yet!', cid)
end
elseif msgcontains(msg, 'yes') then
if getPlayerStorageValue(cid,20000) == -1 then
selfSay('So be it. Now you are a member of the inquisition. You might ask me for a {mission} to raise in my esteem.', cid)
setPlayerStorageValue(cid,20000,1)
elseif getPlayerStorageValue(cid,20000) == 4 then
selfSay('Thank you! Now you can get just one reward in the north room.', cid)
doPlayerAddExp(cid,1500000)
setPlayerStorageValue(cid,20000,5)
setPlayerStorageValue(cid,15203,1)
elseif talkState[talkUser] == 5 then
selfSay('Ok, Good Looky. Then report to me about your mission.', cid)
setPlayerStorageValue(cid,15201,4)
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Ele so deixa você passar pela porta, quando identifica sua Storage. Se poderem Editar este script e adicionar mais uma missão abaixo desse...
-------------
Por favor, preciso muito de um Script assim para que meu Projeto ande pra Frente! Se poderem me ajudar. Agradeço!
-------------
OBS :. Aproveitando este Pedido, será se poderia tambem me ensinar como faço para o NPC falar bastante .. Tipo ..
Player :. HI
NPC :. Em que posso ajudar?
Player :. Mission
NPC :. Esta cidade ja esta aqui a muito tempo. Lutando contra tudo e todos por sua sobrevivencia. Alcansamos premios inêditos, em busca de Paz e reconhecimento...
'... Mas atualmente a cidade passa por serios perigos. Monstros terriveis estão a espreita aos arredores da cidade. Estamos praticamente presos...'
'... Mas felizmente fiquei sabendo que bravos guerreiros havia resurgido nas Terras Tibianas. Por favor, ajude-me a eliminar essas criaturas que atormentão esta ilustre cidade!.
------------
Algo mais ou menos assim. Que ele realmente fale bastante coisas, para que eu possa transcrever e detalhar os acontecimentos em minhas quests.
Aqui esta um exemplo que encontrei aqui.
elseif(msgcontains(msg, 'Mission') or msgcontains(msg, 'mission')) and getPlayerStorageValue(cid,102502) == 3 thensetPlayerStorageValue(cid, 102502, 4)
setPlayerStorageValue(cid, 102504, -1)
setPlayerStorageValue(cid, 58266, 1)
doPlayerAddOutfit(cid,324,1)
doPlayerAddOutfit(cid,325,1)
local msgs={
"Thanks God that they sent you to us. Because of you we can normally sleep. Let me remunerate you. ...",
"You get possibility to wear our addon to your Yalaharian Outfit. Centraily it looks great at you. ...",
"Futhermore, you can choose one of rewards in room inside castle. As i want to tellin' this, i will repeat one more time. Choose wisely!"
}
doNPCTalkALot(msgs,6500) --if the 2750 is ommited, it uses 3000 always
elseif(msgcontains(msg, 'Mission') or msgcontains(msg, 'mission')) and getPlayerStorageValue(cid,102502) == 4 then
selfSay('Azerus understood that he do not have any chances to control Evil. I am glad that You have helped him understood.', cid)
Não consegui entender nem editar de maneira nenhuma. Help-me Plx!
Bom Galerinha .. è apenas isso !
Ajudem aew Por Favor!