Ir para conteúdo

totonho18

Campones
  • Total de itens

    60
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Tudo que totonho18 postou

  1. Galera é o seguinte,eu bolei uma spell pra dar dano de acordo com o ataque da arma,level,e o skill do jogador,a spell funciona,porém ela da dano apenas dependendo do level e skill,o ataque da arma n faz diferença,ou seja o jogador com uma knife ATTACK 5 da o mesmo dano que um jogador com uma sov attack 48,o que ouve? não era pra isso acontecer, eu quero que dê dano de acordo com o LEVEL do player + o skill dele com a arma + o ataque da arma! ta ae a formula,4 REP+ pra quem conseguir corrigir pra mim! Desde já obrigado! local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 36) function getSpellDamage(cid, weaponSkill, weaponAttack) damage_min = (weaponSkill + weaponAttack / 70) * 1.6 damage_max = (weaponSkill + weaponAttack / 70) * 1.7 if(damage_max > damage_min) then local tmp = damage_max damage_max = damage_min damage_min = tmp end return -damage_min, -damage_max end local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "getSpellDamage") function onCastSpell(cid, var) return doCombat(cid, combat, var) end
  2. Não sei se pensaram nisso ou se o ot já tem implantado,mas um sistema de Auto-loot é muito interessante,melhora a jogabilidade e deixa mais RPG o jogo. Abraços!
  3. Duvida sanada,kra perfeito só n dou 1000 REP+ pra vc pq não tem jeito
  4. desculpa realmente me expressei mal,você adicionou uma storage global,pelo que eu entendo a storage global serve para que apenas 1 player por vez possa fazer tal ação. talvez me ajude. O que eu realmete queria era poder usar esse mesmo script outras vezes,só isso,ex: Usei esse script numa quest usando a pedra 1304 com o uid 1333. Criei outro script IGUAL porem com Uids diferentes em situações diferentes, e queria que 1 não atrapalhasse o outro. melhorou? tipo o primeiro que postei funciona,porém se eu criar outro script igual com uid diferente em outra quest eles se atrapalham,entende ? um atrapalha o funcionamento do outro,mas REP+ amigo só pela boa vontade! Muito obrigado!
  5. por favor eu preciso de uma action que remove uma parede durante x segundos e dps ela é re-criada! eu tenho um script que funciona aqui é esse: local id = 3739 --- id da parede local config = { parede1 = {x = 2733, y = 2440, z= 8, stackpos=1} } function createItem() doCreateItem(id,1,config.parede1) return TRUE end function onUse(cid, item) paredi1 = getThingFromPos(config.parede1) doRemoveItem(paredi1.uid,1) addEvent(createItem, 6000) return TRUE end o problema é que só pode ter UM desses no server inteiro,ou seja o primeiro da certo,agora se eu criar um segundo,o mesmo falha,a parede não volta! POR FAVOR PRECISO DEMAAAIS!
  6. Olá galera,sou eu de novo com meu segundo script,esse tenho certeza que vai ajudar muito mais que o ultimo. Explicando: É um script de quest,que da um BP com itens dentro,quantos itens você quiser. OBS:Aqui no forum achei um script desse de quest de multiplos itens,porém encontrei alguns erros nele,ele era assim,você clicava no chest,e ganhava uma bp com itens dentro,até aí tudo bem,mas se você clicasse outra vez no chest,você ganhava outra BP vazia,isso fazia uma bagunça,isso ocorreu porque a BP que regia a Action era uma bp "independente" ou seja uma bp sem codificação,não existia um storage nela,aí o player podia dropar a bp infinitas x,porém a bp vinha vazia... créditos 50% meu que montei e corrigi o erro e 50% do criador que não sei quem é! Vá na pasta data/actions/scripts crie um arquivo.lua e o renomeie para "multichest.lua" sem as aspas! cole a seguinte função: function onUse(cid, item, frompos, item2, topos) if item.uid == 7778 then queststatus = getPlayerStorageValue(cid,7778) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"Voce Ganhou um Tera Set!.") local bp = doPlayerAddItem(cid, 1991, 1) -- doAddContainerItem(bp, 7884, 1) doAddContainerItem(bp, 7903, 1) doAddContainerItem(bp, 7885, 2) doAddContainerItem(bp, 7887, 1) setPlayerStorageValue(cid,7778,1) else doPlayerSendTextMessage(cid,22,"It is empty.") end else return 0 end return 1 end Modifique a seu gosto salve e feche! tem essa forma aqui também! function onUse(cid, item, frompos, item2, topos) local items = { [7884] = 1, --Tabela, para facilitar a configuração. Configuração: [id do item] = quantida [7903] = 1, [7885] = 2, [7887] = 1, } if item.uid == 7778 then queststatus = getPlayerStorageValue(cid,7778) if queststatus == -1 then doPlayerSendTextMessage(cid, 22, "Voce Ganhou um Tera Set!.") local bp = doPlayerAddItem(cid, 1991, 1) for a, b in pairs(items) do --looping da tabela items: a = id do item, b = quantidade. Esse "a" generaliza todos os IDs; já "b", todas as quantidades (e seus respectivos items). for i = 1, b do --looping: sem esse looping, a quantidade seria sempre 1. doAddContainerItem(bp, a, 1) --Sendo a = ids configurados na tabela items; esse 1 foi alterado no looping acima, para ter como valor a quantidade "b". end end setPlayerStorageValue(cid,7778,1) else doPlayerSendTextMessage(cid, 22, "It is empty.") end else return 0 end return 1 end qualquer uma das 2 funções que você usar vai dar certo,a diferença é que a de baixo tem tabela,OBS o meu script é o primeiro,esse segundo é do zipter98 créditos pra ele. Use a que você achar mais fácil,as 2 tem a msm função. Agora na pasta data/actions/actions.xml cole essa tag: <action uniqueid="7778" script="multichest.lua" /> salve e feche,e dps no map editor coloque o unique id 7778 no item que você quiser,não precisa ser um chest,pode ser numa statue,num tile,numa wall,qualquer coisa que possa ser add um unique id,Certo? O que você precisa saber? Primeira linha= não meche Segunda linha = Unique id coloque o que você quiser desde q n exista no seu serv Terceira linha = Storage coloque o que você quiser que ainda n exista quarta linha = n meche nela quinta linha = msg que vai receber ao clicar no chest sexta linha = id da bp que vai ser dropada com os itens dentro apartir da sexta linha = os itens que estarão dentro da bp setPlayerStorageValue(cid,7778,1) = é o storage que o player vai ganhar, lembre-se dos prefixos, "Set" = Ganhar "get"=Checar não mecha nos else,nos return e nos end,se n vai dar zebra. doPlayerSendTextMessage(cid,22,"It is empty.") esse é a msg que o player vai receber quando concluir LEIA IMPORTANTE= É interessante você colocar um storage diferente do Uid,porque se você colocar um tile ou uma door pra abrir se o player tiver concluido a quest,com o uid igual ao storage vai bugar,nesse caso é legal colocar o uid diferente do storage.. Muito obrigado por ler,critique! comente! elogie! mas n deixe de se manifestar sua opinião é o que me move e inspira!
  7. Muito Obrigado Omega! Prometo que o proximo será ainda melhor!
  8. Antes de mais nada,queria deixar claro que sou um aprendiz,na verdade sou mapper,entendo muito de map editor,RME,criação de maps etc,sou novo no mundo dos scripts,então críticas e dicas são muito bem vindas.CRÉDITOS 80% meu e 20% de uma talkaction que me inspirou,minha ideia saiu de uma talkaction,mas eu modifiquei para ser uma action e troquei algumas funções. Sem mais delongas,o que é esse script? Você da use em alguma coisa,statue,wall,stone, sei la,você que sabe,e você ganha um item se tiver outros x itens. É como se fosse uma compra,você da x itens e ganha um Item,dando use na pedra. Abra a pasta data/action/script e crie um arquivo.lua com o nome "stonetrade.lua" sem as aspas,cole essa função: function onUse(cid, item, frompos, item2, topos) if doPlayerRemoveItem(cid,2157,200) then doPlayerAddItem(cid,2400,1) doSendMagicEffect(getPlayerPosition(cid), 14) else doPlayerSendCancel(cid, 'you not have 200 Gold Nuggets.') doSendMagicEffect(getPlayerPosition(cid), 3) end end salve e vá na pasta data/actions/actions.xml e add essa tag: <action actionid="5005" script="stonetrade.lua" /> feito isso,agora é só ir no seu map editor e colocar a action id 5005 no item que você quiser,no meu caso coloquei numa "angel statue",mas fica a seu critério,pode colocar no item que vc quiser,uma arvore,uma parede até um tile,só basta colocar a mesma action que foi gravada no arquivo xml,e a mesma ainda não pode existir no seu server,se n vai dar errado! Explicando a função: Vermelho: significa que a função é executada através de um "Use" ou seja clicando com o botão direito do mouse na estatua. Verde: É o item ou os itens que serão retirados do jogador para que ele ganhe a recompensa, o primeiro é o id e o segundo a quantia. Azul: O item que o player irá ganhar caso ele tenha na bp os itens exigidos na linha de cima =2400 no caso uma sov no exemplo acima. Cinza: É a animação que vai surgir no corpo do jogador se ele tiver o item ,o número indica a animação. Azul Claro:A msg que vai aparecer caso o jogador não tenha os itens necessários para processar a função. Roxo:A animação que irá aparecer no corpo do player se ele não tiver o item,o numero 3 indica o tipo de animação Muito obrigado,esse foi meu primeiro post,espero que me critiquem com respeito se preciso,mas estou aprendendo,prometo que com um pouco de inspiração consigo criar coisas muito mais interessantes,mas esse foi só o inicio,comente,elogie,critique,me de um motivo para me superar e sempre postar novas coisas!
  9. pronto acho que consegui te dar REP+ vc tava com 187 e agora ta com 188 eu cliquei e curtir,acho q é isso,se tiver errado,me ensina que mando seu Merecido REP+
  10. Olá galera,é a primeira vez que mando uma duvida,espero que tenha sorte,não creio que seja algo dificil,mas não consegui,precido de um script que faça com que o player só possa passar num tile ou entrar numa Door se tiver DUAS Storages. Exemplo: Ele só passa no tile concluindo a poi e a inqui. Exemplo2:Ele só passa no tile se tiver concluido o Addon Assassin Full, Ou seja 2 storages do first e second addon.. A aplicabilidade é essa,se puderem me ajudar, REP+ A já ia me esquecendo,to trabalhando num serv Styller Yurots 0.75 (8.60) Nivel de experiencia=Baixo,porém sei editar muito bem,crio as minhas proprias actions inovadoras usando outras como base!
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...