Postado Março 18, 2019 6 anos Estou com um problema em um Script aqui, eu não sei se é por falta de Script ou se é no Script. Vou explicar como que ele funciona. Você vai lá no NPC e pega a missão de matar 30 Jogadores, mais não é qualquer Jogador que irá contabilizar as mortes, é preciso ser level 350+ para contabilizar, por exemplo, eu sou level 50 e mato um cara level 349, ai essa morte não irá contar, pois o cara não era level 350. Caso você mate os 30 Jogadores level 350+ você volta lá no NPC e entrega a missão, dai você uma prêmio e poderá fazer a missão de novo depois de 24h. NPC Mostrar conteúdo oculto <?xml version="1.0" encoding="UTF-8"?> <npc name="Morte Task" script="data/npc/scripts/morte.lua" floorchange="0" walkinterval="2000" access="5" level="1" emblem="2" maglevel="1"> <health now="150" max="150"/> <look type="300" skull="2"/> <parameters> <parameter key="module_shop" value="1" /> <parameter key="message_greet" value="Ola |PLAYERNAME|. Eu tenho uma {missao} de PvP para voce." /> </parameters> </npc> Mostrar conteúdo oculto 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, 'missao') or msgcontains(msg, 'mission')) then setPlayerStorageValue(cid,22867,1) selfSay('Mate 35 jogadores level 350 ou mais e eu lhe presentiarei com uma surprise box. Você pode verificar seu progresso com o comando !mortes, ja matou? diga yes', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if getPlayerLevel(cid) >= 300 then if getPlayerStorageValue(cid,34766) < os.time() then if(getPlayerStorageValue(cid, 34765) >= 35) then doPlayerAddItem(cid, 10503) setPlayerStorageValue(cid,34766, os.time()+(1*24*60*60)) setPlayerStorageValue(cid,34765,0) setPlayerStorageValue(cid,22867,0) selfSay('Obrigado, você pode estar fazendo esta missão novamente amanha.', cid) else selfSay('Você ainda não cumprio com o objetivo.', cid) end else selfSay('Você ja fez esta task em menos de 24 horas espere 1 dia e volte novamente.', cid) end else selfSay('Você precisa ser level superior a 350 para completar a missao.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then talkState[talkUser] = 0 selfSay('Ok bye.', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Creaturescripts Mostrar conteúdo oculto local level = 350 function onKill(cid, target, lastHit) if (isPlayer(cid) and isPlayer(target)) then if getPlayerLevel(target) >= 350 then if getPlayerIp(cid) ~= getPlayerIp(target) then if getPlayerStorageValue(cid,22867) >= 1 and getPlayerStorageValue(cid,34765) <= 35 then setPlayerStorageValue(cid, 34765, getPlayerStorageValue(cid, 34765) + 1) end end end end return true end Mostrar conteúdo oculto <event type="kill" name="morte" event="script" value="morte.lua"/> Talkactions Mostrar conteúdo oculto function onSay(cid, words, param) if getPlayerStorageValue(cid,22867) >= 1 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você matou "..getPlayerStorageValue(cid, 34765).." jogadores level 350+.") else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui uma task de morte ativa.") end end Mostrar conteúdo oculto <talkaction words="!mortes" event="script" value="mortes.lua"/> Esses são os Scripts. O erro que estar surgindo é que quando você mata um Jogador level 350+ ele não estar contabilizando as mortes. E sempre fica -1 morte. Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Mostrar conteúdo oculto • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
Postado Março 19, 2019 6 anos Autor @victor4312 ? Pior que é mesmo ?? nem parei pra ver isso, em fim, vou dar como resolvido, caso seja outra coisa além de não poder matar MCS eu volto aqui e posto o erro. Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Mostrar conteúdo oculto • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.