Tudo que Adriano SwaTT postou
-
(Resolvido)[Ajuda] setPlayerStorageValue Lendo variáveis
Teste assim: O arquivo npcquest.lua ficará assim: local msg_completed = 'Voce completou sua task de Orcs.' local monster = 'Orc' local strg = 9755 local strg_c = 9756 -- Storage ao completar missão local qtdd = 3 -- Quantidade que ele precisa matar. function onKill(cid, target, lastHit) local get = getPlayerStorageValue(cid, strg) if isMonster(target) and getCreatureName(target):lower() == monster:lower() then if get < qtdd then setPlayerStorageValue(cid, strg, (get + 1)) doCreatureSay(cid, 'Voce matou '..get..' orcs ateh agora.', TALKTYPE_ORANGE_1) else setPlayerStorageValue(cid, strg_c, 1) doCreatureSay(cid, msg_completed, TALKTYPE_ORANGE_1) end end return true end function onCombat(cid, target) if getPlayerStorageValue(cid, strg) >= 1 then if isMonster(target) and getCreatureName(target):lower() == monster:lower() then registerCreatureEvent(target, "NPCQuest") end end return true end Em CreatureScripts.xml as tags abaixo: <event type="kill" name="NPCQuest" event="script" value="npcquest.lua"/> <event type="combat" name="NPCQuest" event="script" value="npcquest.lua"/> E em Login.lua, adicione a tag: registerCreatureEvent(target, "NPCQuest") Boa sorte.
-
(Resolvido)[Ajuda] setPlayerStorageValue Lendo variáveis
Mals, estou de saída. Teste assim: function onKill(cid, target, lastHit) local msg_completed = 'Voce completou sua task de Orcs.' local monster = "Orc" local strg = 9755 local strg_c = 9756 -- Storage ao completar missão local qtdd = 3 -- Quantidade que ele precisa matar. local get = getPlayerStorageValue(killer, strg) if isMonster(target) and getCreatureName(target):lower() == monster:lower() then if get < qtdd then setPlayerStorageValue(cid, strg, (get + 1)) doCreatureSay(cid, 'Voce matou '..get..' orcs ateh agora.', TALKTYPE_ORANGE_1) else setPlayerStorageValue(cid, strg_c, 1) doCreatureSay(cid, msg_completed, TALKTYPE_ORANGE_1) end end return true end Se não funcionar agora, precisará declarar no monstro o Evento.
-
(Resolvido)[Ajuda] setPlayerStorageValue Lendo variáveis
Boa noite. Vacilo meu, mas a função deveria ser onKill e não onDeath. onDeath é quando você está morrendo e onKill quando está matando. (quase certeza) Ou seja, teste assim: function onKill(cid, target, lastHit) local msg = 'Voce matou '..get..' orcs ateh agora.' local msg_completed = 'Voce completou sua task de Orcs.' local monster = "Orc" local strg = 9755 local strg_c = 9756 -- Storage ao completar missão local qtdd = 3 -- Quantidade que ele precisa matar. local get = getPlayerStorageValue(killer, strg) if isMonster(target) and getCreatureName(target):lower() == monster:lower() then if get < qtdd then setPlayerStorageValue(cid, strg, (get + 1)) doCreatureSay(cid, msg, TALKTYPE_ORANGE_1) else setPlayerStorageValue(cid, strg_c, 1) doCreatureSay(cid, msg_completed, TALKTYPE_ORANGE_1) end end return true end Boa sorte. ____________________________________________________________________ #OFF TOPIC E o que o Alencar postou acima, usando "setPlayerStorageValue" você define o valor e não adiciona. Ou seja, da maneira que está, você estará adicionando o valor +1 ao invés de somar ao existente. Isso funcionaria se fosse algo como "doAddStorageValue" aí sim ele adicionaria. Quando é set é igual a "mudar" o valor, e se coloca o valor que deseja que seja.
-
(Resolvido)[Ajuda] setPlayerStorageValue Lendo variáveis
Teste assim: function onDeath(cid, corpse, killer) local msg = 'Voce matou "..get.." orcs ateh agora.' local msg_completed = 'Voce completou sua task de Orcs.' local monster = "Orc" local strg = 9755 local strg_c = 9756 -- Storage ao completar missão local qtdd = 3 -- Quantidade que ele precisa matar. local get = getPlayerStorageValue(killer, strg) if isMonster(cid) and getCreatureName(cid):lower() == monster:lower() then if get < qtdd then setPlayerStorageValue(killer, strg, (get + 1)) doCreatureSay(killer, msg, TALKTYPE_ORANGE_1) else setPlayerStorageValue(killer, strg_c, 1) doCreatureSay(killer, msg_completed, TALKTYPE_ORANGE_1) end end return true end Boa sorte.
-
Urgente Ajudem nos Error
Para carater informativo, qual é a linha 520 do EXP2.0.lua, pois quando copiamos aí da página o script fica desalinhado. Aguardo.
-
Shaders do OTClient
Por acaso está tudo ok com as coordenadas né? Início e fim das coordenadas que iniciam o efeito.
-
[Pedido] 4º Moeda
E aconselho que além do Script do Komuro, você editar também no Items.xml a id e colocar um valor worth maior do que a da Crystal. Ficará assim a tag: <attribute key="worth" value="1000000" /> Pois assim os NPCs também o reconhecerá como dinheiro. Boa sorte.
-
Como fazer cada vocação nascer em uma cidade.
Crie um arquivo chamado "city_voc.lua" em Creaturescripts. local strg = 12129 -- Storage que salva se o player local first_login = "yes" -- Se somente no primeiro login local city_sorc = getTownTemplePosition(1) local city_druid = getTownTemplePosition(2) local city_pally = getTownTemplePosition(3) local city_knight = getTownTemplePosition(4) function onLogin(cid) if getPlayerStorageValue(cid, strg) < 1 then if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 5 then doTeleportThing(cid, city_sorc) if first_login == "yes" then setPlayerStorageValue(cid, strg, 1) end elseif getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 6 then doTeleportThing(cid, city_druid) if first_login == "yes" then setPlayerStorageValue(cid, strg, 1) end elseif getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 7 then doTeleportThing(cid, city_pally) if first_login == "yes" then setPlayerStorageValue(cid, strg, 1) end elseif getPlayerVocation(cid) == 4 or getPlayerVocation(cid) == 8 then doTeleportThing(cid, city_knight) if first_login == "yes" then setPlayerStorageValue(cid, strg, 1) end end end return true end Agora em CreatureScripts.xml adicione a tag: <event type="login" name="CityVocation" event="script" value="city_voc.lua"/> E em login.lua adicione a tag: registerCreatureEvent(cid, "CityVocation") Não testei, teste e poste o resultado. Abraços e boa sorte.
-
[MEGA PEDIDO]SCRIPTES
Ok, de manhã dou uma analisada neste script. Abraços e boa noite.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Ah sim, que bom que já voltou ao normal.
-
[MEGA PEDIDO]SCRIPTES
Já pedi para postar seu playerattack.lua da pasta CreatureScripts aqui? Se não, poste-o para que possamos testar a alteração que fiz para saber se será fácil como foi no meu, ou se será complicado como está sendo no do meu cliente.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Estou por aqui todo dia, novamente. Obrigado pelo elogio, estou meramente estudando os scripts ainda. Gosto de ajudar as pessoas nos meus tempos vagos, para aprendizado próprio, para ajudar o próximo e também para contribuir com o fórum. Mais uma vez, obrigado. Faça bom aproveito.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Nossa, mals.. Falta de atenção minha, é que estou dando suporte a um amigo pelo Skype e criando uma função na Lib também, deve ser por isso. Mas que bom que você encontrou o erro e funcionou. Boa sorte com seu Projeto. #Editei o tópico, deixando da maneira correta caso alguém mais queira utilizar.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Editei o tópico, acho que ficou uma linha faltando.
-
[MEGA PEDIDO]SCRIPTES
A talkaction para fazer com "for" eu apanho um pouco eu acho, apesar de que, pra quem sabe, ler eu falando isso deve achar um absurdo de tão simples que é.. mas eu não me acostumei ainda. Sobre o sistema de PVP, estou criando pra um Cliente do meu site de scripts. Algumas configurações serão necessárias em seu playerattack.lua em CreatureScripts. Que inclusive em um servidor de teste que tenho aqui, "Serve Gabrieltxu Full 3.0" funcionou a alteração que fiz, já no do meu Cliente não deu certo a alteração. Ou seja, varia de servidor para servidor. :/
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Bom, teste aí. Arquivo, morte_stamina.lua em CreatureScripts. local strg = 12134 -- Storage que salva a Stamina local strg_dead = 12135 -- Storage que salva a morte do Player function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) then sta = getPlayerStamina(cid) setPlayerStorageValue(cid, strg, sta) setPlayerStorageValue(cid, strg_dead, 1) return true end return true end function onLogin(cid) if isPlayer(cid) then if getPlayerStorageValue(cid, strg_dead) == 1 then sta = getPlayerStorageValue(cid, strg) setPlayerStamina(cid, sta) setPlayerStorageValue(cid, strg_dead, 0) doPlayerSendTextMessage(cid, 18, "Sua stamina continua como antes da morte.") end end return true end Em CreatureScripts.xml, adicione as tags: <event type="login" name="DeadStamina" event="script" value="morte_stamina.lua"/> <event type="preparedeath" name="DeadStamina2" event="script" value="morte_stamina.lua"/> Agora em login.lua adicione esta tag: registerCreatureEvent(cid, "DeadStamina") registerCreatureEvent(cid, "DeadStamina2") Não tenho certeza se precisa mudar os nomes como fiz aí, "DeadStamina" e "DeadStamina2", mas teste assim. Criei com a intenção de serem 2 scripts, porém, creio que não seja necessário 2 arquivos. #EDITADO Boa sorte.
-
[MEGA PEDIDO]SCRIPTES
Ah sim, fico aguardando informações.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
É, creio que realmente teria que fazer um onPrepareDeath para controlar isso. Quando ele morrer, checar quanto de Stamina, salvar o valor em um Storage (talvez) e quando ele relogar, setar para este valor.
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Quando morre a Stamina se regenera totalmente, é isso? Os players upam e depois morrem para conseguir mais stamina?
-
[MEGA PEDIDO]SCRIPTES
E aí, novidades?
-
[MEGA PEDIDO]SCRIPTES
Apenas apagou ou substituiu?
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Qual é a sua intenção, remover todas stamina ao morrer? Que quando ele morra a stamina fique zerada?
-
(Resolvido)[Dúvida] Existe como deixar a stamina subindo mesmo online?
Na verdade nem reparei como funciona.. Ao morrer a Stamina se regenera por inteira? é isso?
-
[MEGA PEDIDO]SCRIPTES
Sugiro que teste substituir o script inteiro para ver se o erro para, se parar já sabe em qual script está o problema.. Aí sugiro com muita cautela editar aquela parte que citei acima, de uma nova BALL, e creio que precise por IDS diferentes pois ficaria inviável ter 2 itens distintos com a mesma ID. Boa sorte.
-
[MEGA PEDIDO]SCRIPTES
Boa noite. Pude analisar em seu script que você tentou aumentar a quantidade de balls, e nisso esqueceu de editar alguns detalhes, como por exemplo: pokeballs = { ["normal"] = {effect = 188, on = 11826, use = 11827, off = 11828, all = {11826, 11827, 11828}}, ["ultra"] = {effect = 191, on = 11829, use = 11830, off = 11831, all = {11829, 11830, 11831}}, ["super"] = {effect = 190, on = 11835, use = 11836, off = 11837, all = {11835, 11836, 11837}}, ["great"] = {effect = 189, on = 11832, use = 11833, off = 11834, all = {11832, 11833, 11834}}, ["shinynormal"] = {effect = 188, on = 11737, use = 11738, off = 11739, all = {11737, 11738, 11739}}, ["shinygreat"] = {effect = 189, on = 11740, use = 11741, off = 11742, all = {11740, 11741, 11742}}, ["shinysuper"] = {effect = 190, on = 11743, use = 11744, off = 11745, all = {11743, 11744, 11745}}, ["shinyultra"] = {effect = 191, on = 11746, use = 11747, off = 11748, all = {11746, 11747, 11748}}, -- Linha original ["masterball"] = {effect = 191, on = 11746, use = 11747, off = 11748, all = {11746, 11747, 11748}}, -- Este é cópia da linha acima } Só que ao copiar, deixou as ids das pokeballs iguais, ou seja, deve estar ocasionando em bug por causa disso. Esta parte do script, no script original está assim: pokeballs = { ["normal"] = {effect = 188, on = 11826, use = 11827, off = 11828, all = {11826, 11827, 11828}}, ["ultra"] = {effect = 191, on = 11829, use = 11830, off = 11831, all = {11829, 11830, 11831}}, ["super"] = {effect = 190, on = 11835, use = 11836, off = 11837, all = {11835, 11836, 11837}}, ["great"] = {effect = 189, on = 11832, use = 11833, off = 11834, all = {11832, 11833, 11834}}, ["shinynormal"] = {effect = 188, on = 11737, use = 11738, off = 11739, all = {11737, 11738, 11739}}, ["shinygreat"] = {effect = 189, on = 11740, use = 11741, off = 11742, all = {11740, 11741, 11742}}, ["shinysuper"] = {effect = 190, on = 11743, use = 11744, off = 11745, all = {11743, 11744, 11745}}, ["shinyultra"] = {effect = 191, on = 11746, use = 11747, off = 11748, all = {11746, 11747, 11748}}, } Veja que não tem ids repetidas, apenas efeitos. O script completo e original é este abaixo: Mediafire para ver o arquivo. Mediafire para fazer download do arquivo. É possível que isso possa resolver seu problema. Boa sorte.