-
Total de itens
30 -
Registro em
-
Última visita
Tudo que jefersonzc postou
-
pedido scripts [Pedido] Tempo do item vip fica bugado.
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Depois de muito bater cabeça eu consegui achar uma solução quase perfeita para o problema. Então vou compartilhar aqui, vai que ajuda outros... Bom, primeiramente em items.xml precisamos configurar as skills do item, o tempo, etc. Como a ideia é que o item desapareça depois de algum tempo, vou por um decayTo 0. <item id="25971" article="a" name="Chopper of Corruptedheart"> <attribute key="weight" value="5000" /> <attribute key="defense" value="35" /> <attribute key="attack" value="56" /> <attribute key="skillAxe" value="3" /> <attribute key="weaponType" value="axe" /> <attribute key="decayTo" value="0" /> <!--faz o item sumir depois que seu tempo expira--> <attribute key="duration" value="360000" /> <attribute key="showduration" value="1" /> <attribute key="slotType" value="two-handed" /> </item> Reparem que não configurei o transformEquipTo e o transformDeEquipTo, pois meu item não tem duas sprites (como no caso dos rings e da soft) Agora em movements.xml eu preciso configurar quem pode ou não usar o item. <movevent event="Equip" itemid="25971" slot="hand" level="0" function="onEquipItem"> <vocation name="Knight" /> <vocation name="Elite Knight" showInDescription="0" /> </movevent> <movevent event="DeEquip" itemid="25971" slot="hand" function="onDeEquipItem" />< Por se tratar de uma arma, vou precisar configurar tbm o weapons.xml (se fosse um helmet, um ring ou algo do gênero, eu poderia pular essa etapa). <melee id="25971" unproperly="1"> <vocation name="Knight" /> <vocation name="Elite Knight" showInDescription="0" /> </melee> Blz, até aqui nada de novo, tudo isso a gente já precisa fazer quando vai criar qualquer item novo, certo? Mas é agora que vem o pulo do gato (o gato que no caso sou eu ?, rsrs). Em data/events/scripts/events.xml vamos habilitar o onMoveItem. <event class="Player" method="onMoveItem" enabled="1" /> E em data/events/scripts/player.lua, vamos configurar a função onMoveItens. function Player:onMoveItem(item, count, fromPosition, toPosition, fromCylinder, toCylinder) local itensVIP = {25187,25175,25185,25429,25946,25915,25971} --todos os itens que eu preciso configurar for i = 1, #itensVIP do if item.itemid == itensVIP[i] then item:decay() --toda vez que um item for movido, ele checa se faz parte dos itensVIP e starta o decay. end end return true end Resumidamente o resultado vai ser: 1. O tempo do item não para de decair, independente dele estar no slot, na bp, na casa, no dp, etc. Ok 2. Com o char deslogado, o tempo para de contar. Ok 3. Se o player deixar o item no DP e relogar o char, o tempo do item fica pausa, mas volta cair quando ele der move no item. Ok 4. O meu site possui um sistema de compra de itens que adiciona tal item no char. Quando o player compra o item que configuramos, o tempo dele vem pausado e se tal item cair dentro do seu respectivo slot (exemplo: o char compra uma sword e ele nao tem nenhuma sword na mão, logo, o a sword vai cair direto no slot dela), o tempo permanecerá pausado até que o char mova essa sword para a bp ou relogue. Bom, não era exatamente isso que eu queria, mas acho que posso considerar esse um bug pequeno e que não trará nenhum efeito colateral negativo, posto que cedo ou tarde esse char terá que relogar, no máximo ele irá conseguir umas horas há mais com o item, então, acho que ok. -
Se essa for a seção errada, desculpa. Bom, criei uns itens vips que dão atributo para os players, mas esses itens possuem tempo, e somem quando o tempo acaba. (decayTo O). Até aí blz... não usei as funções onEquipe e onDeEquipe por duas razões: 1. Não tenho IDs com sprites repetidos para esses itens e não quero mexer no meu OTB pq já deu ruim outras vezes. 2. A intenção era que o tempo continuasse contando mesmo com o item dentro da mochila, ou seja, não adianta desequipar o item que O Tempo Não Para (já dizia Cazuza, rsrs). Até aí tudo bem. Mas acabei descobrindo um bug... se o player guardar o item no depot e depois deslogar, quando ele relogar e pegar o item do depot outra vez, o tempo buga e fica parado. E só volta a ser contato caso ele relogue com o item no char outra vez. Ou seja, se o cara for malando, ele fica com o item pra sempre, pq basta ficar guardando ele no dp sempre que for deslogar. Preciso resolver isso de alguma forma, aceito sugestões. Alguém poderia me ajudar? PS.: Uso TFS 1.3
-
Mano, tá mt mal explicado. O NPC "vai" pra quest, ou envia o player para uma quest? Se ele de fato for pra algum lugar, outros player ficarão temporariamente sem acesso à ele (já que ele não estará em seu lugar original). Isso mesmo que vc quer? E quem é que mata os monstros? Eu entendi que é o próprio NPC, aliás, parece que vc quer que o NPC faço tudo sozinho. Isso mesmo? E o que seria "teleportado pro cp"? O que é cp? Tenta ser um pouco mais claro. Ps.: Acho que cp seria dp, certo?
-
dúvida [DUVIDA] Mapa não abre +REP QM AJUDA
pergunta respondeu ao ErickDiass de jefersonzc em Mapping
Não desista ainda, tente mais uma coisa: 1 - Clique o botão direito do mouse e vá em propriedades; 2 - Selecione a aba compatibilidade; 3 - Marque a caixa "executar este programa em modo de compatibilidade" e escolha Windows XP Service Pack 2. Tenta aí, dedos cruzados aqui -
dúvida [DUVIDA] Mapa não abre +REP QM AJUDA
pergunta respondeu ao ErickDiass de jefersonzc em Mapping
Seu windows é o 7? Tenta executar como administrador. Não é mostrado nenhuma tela de erro? Ele apenas trava e para de responder? Se for isso, tenta abrir um outro mapa qualquer, de preferência um pequeno, apenas para testar. Se o mapa for mt grande e o pc não for bom o suficiente, pode ser que a memória ou o processador não aguente o tranco e trave. Eu tenho 8 de ram e levo cerca de uma hora para abrir o mapa global 9.83. -
dúvida [DUVIDA] Mapa não abre +REP QM AJUDA
pergunta respondeu ao ErickDiass de jefersonzc em Mapping
cara, isso acontece as vezes. Na hora do erro não diz qual versão que ele seria não? Tenta esse remeres aki da cmm, ele é atualizado para 9.83. http://www.xtibia.com/forum/topic/173891-983-remeres-map-editor/ -
dúvida Unique ID igual em baús diferentes para quest com escolha funciona?
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Saquei... então melhor evitar possíveis erros né mesmo!? Bom, dúvida sanada, obrigado ai galera.- 5 respostas
-
- unique id
- baus diferentes
- (e 2 mais)
-
dúvida Unique ID igual em baús diferentes para quest com escolha funciona?
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Então, foi como eu disse, não gerou erro no console, e não veio o mesmo item, testei uma vez com cada baú. Sei que é estranho que tenha funcionado, mas pode ter sido uma feliz coincidência. Por via das dúvidas, vou fazer do modo chato mesmo Vlw- 5 respostas
-
- unique id
- baus diferentes
- (e 2 mais)
-
Seguinte galera, como todos sabemos, quando desejamos fazer uma quest onde o player tem que escolher qual recompensa ele quer (tipo a poi), é preciso criar um LUA para que independente de qual baú o player escolha, seja adicionado à ele o ID da quest e ele não possa mais pegar os outros baús. Acontece que no meu OT eu testei o seguinte: - Criei dois baús e coloquei dentro dele os itens que cada um iria dar - Coloquei o action 2000, como manda o figurino. - Na hora de colocar o unique ID, coloquei o mesmo em ambos os baús E não é que isso deu certo!! Não gerou erro nem nada! Minha dúvida é: isso tá certo ou foi apenas alguma feliz coincidência? Posso adotar esse método para quests desse tipo ou devo fazer pelo modo antigo (o chato)?
- 5 respostas
-
- unique id
- baus diferentes
- (e 2 mais)
-
npc NPC vendendo bless para quem já possui
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Fawz, não acredito que passei tão perto, tava tentando getPlayerBless ao invés de getPlayerBlessing. Uahauhauhaha!!! Vlw brother, ta show agora rep+ -
Galera, to com um npc que vende bless, promotion e premium scroll. Tá tudo funcionando bem, exceto por um único detalhe, ele vende a bless mesmo que o player já tenha. Queria que ele só vendesse quando o player estivesse sem bless. Segue o LUA dele Acredito que a solução seja trivial, bastando usar um "getPlayerBless", mas qual seria o comando certo? Digo, esse "getPlayerBless" não existe, então como posso verificar se o player já tem as bless?
-
pedido NPC que vende itens por Scarab coins
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Cara.... muito obrigado por toda a ajuda, de verdade, mas vou desistir disso. Fiz o que você sugeriu, mas ai virou bagunça. Auahuahuahuahauh! Todos os npcs passaram a intender que a scarab coin valia 10k. E eu queria que apenas um npc aceitasse ela como grana. Acho que o que quero não ficará perfeito nunca. Vou pensar se faço como o omega blueheaven sugeriu e colocar uma pop up ou algo assim. De todo o modo, muito obrigado pela atenção. Rep++- 7 respostas
-
- npc
- scarab coins
- (e 4 mais)
-
Tava tentando isso, mas devia estar digitando algo errado, sei lá vlw
- 16 respostas
-
- npc de promoção de vocation
- resolvido
- (e 2 mais)
-
Cara, o que você procura é um sistema de "second promotion", creio que já existam alguns tópicos a respeito. Mas tudo bem. Tenta o seguinte: ANTES DE QUALQUER MUDANÇA, FAÇA UM BACKUP COMPLETO. 1º No seu arquivo vocations.xml, adicione isso: 2º procure por algo tipo 031-vocations.lua (no meu tá assim, no seu pode estar um pouco diferente), edite-o e deixe assim: 3º nas pasta onde ficam os scripts dos npcs, crie um arquivo chamado promotion.lua (ou edite-o caso já exista): 4º agora o seu npc, nesse caso, ele tem a mesma aparecia do oraculo de rook (mude se quiser): Acho que é isso... não sei se vai funcionar, mas tenta ai Quanto ao spell, acho que não deve ser difícil mas como nunca criei um, não vou poder ajudar mt ^^ Dá uma pesquisada na comu, deve ter tutorial explicando como criar novos spells PS.: COMO QUE FAÇO PARA ADICIONAR AQUELE BOTÃO DE SPOILER???? NÃO CONSEGUI.
- 16 respostas
-
- npc de promoção de vocation
- resolvido
- (e 2 mais)
-
pedido NPC que vende itens por Scarab coins
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
up.... quem sabe né- 7 respostas
-
- npc
- scarab coins
- (e 4 mais)
-
Fawz. Funcionou, coloquei o doCreateItem, ai ele cria um floor em cima do outro. Vlw Rp +
-
Galera, to tentando mudar o tipo do chão através de um alavanca. O player usa ela e o chão muda, usa outra vez e o chão volta ao original. O doTransformItem tá funcionando, só que com o seguinte problema: Ele não mostra a mudança para o player, o player precisa sair de perto do chão que sofreu a mudança e voltar, como se tivesse que "recarregar" a tela. Só que isso só acontece com os pisos, se eu quiser transformar uma pedra em uma parede ou uma porta fechada em aberta, ele funciona de boa, muda na hora e o player consegue ver a mudança. Pq quando é um tipo de chão isso não acontece? Meu script é esse (o do oil da poi, mas o mesmo aconteceu com outro que tentei fazer). function onUse(cid, item, frompos, item2, topos) wall = {x=190, y=265, z=10, stackpos=0} oil = {x = 189, y = 268, z = 10, stackpos = 1} bplayer = {x=190, y=265, z=10, stackpos=253} local getwall = getThingfromPos(wall) local getoil = getThingfromPos(oil) local bplayer2 = getThingfromPos(bplayer) if item.uid == 10203 and item.itemid == 1945 then if getoil.itemid == 2016 then doTransformItem(item.uid,item.itemid+1) doTransformItem(getwall.uid,5770) else doCreatureSay(cid, "The lever is creeking and rusty.", TALKTYPE_MONSTER, nil, nil, oil) end elseif item.uid == 10203 and item.itemid == 1946 then doTransformItem(item.uid,item.itemid-1) doTransformItem(getwall.uid,493) if isCreature(bplayer2.uid) == TRUE then doMoveCreature(bplayer2.uid,WEST) end end return 1 end
-
pedido NPC que vende itens por Scarab coins
pergunta respondeu ao jefersonzc de jefersonzc em Scripts
Primeiramente, obrigado pelas respostas. omega blueheaven, creio que o sistema que você descreveu não seja muito interessante para o meu propósito. Até porque eu poderia colocar alguns "black boards" na parede atrás do nnpc que mostrasse os preços quando o player desse look, seria mais fácil. Vodkart, vou testar aqui e posto um feedback Mano, funcionou parcialmente. O que aconteceu foi o seguinte: Sabe quando vc vai comprar algo e ta sem grana na mochila? Os nomes dos itens não ficam ressaltados de branco, eles ficam escurecidos. Então, quando falei trade para o npc, os nomes ficaram assim e eu não conseguia comprar nada. Mas se eu tiver com grana bag (gps mesmo), ai os itens ficam compráveis, só que quando compro, disconta as Scarab coins numa boa. Resumindo, vc só consegue comprar se tiver com gp na bag. PS.: a quantidade de gp na bag tem que ser igual ou superior ao price do item para ele ser habilitado, como nos npcs normais ----------------------------------------------------------------------------------------------- Mais alguém? Alguma solução?- 7 respostas
-
- npc
- scarab coins
- (e 4 mais)
-
pedido [Globalevents] Modificar Exp e atualizar
pergunta respondeu ao cs007 de jefersonzc em Scripts
Dessa eu não sabia -
pedido [Globalevents] Modificar Exp e atualizar
pergunta respondeu ao cs007 de jefersonzc em Scripts
Bom.... posso estar falando besteira, mas acho que o que você quer é um pouco inviável de ser feito do modo como você explicou. Você quer um script que altere o conteúdo do config.lua, mas para isso ele deveria saber exatamente qual linha alterar, ou seja, ele teria que carregar o confi.lua, mudar a linha e salvar novamente. Tá, até ai acho viável, complicado porém viável. Mas a parte de "reload"... bom, para que as alterações do config.lua entrassem em execução, creio que seria necessário reiniciar o servidor. Agora imagine que seu servidor esteja rodando e junto com ele esse script que vc precisa, então este script fecha o serve (para o tal reload), agora como ele conseguiria abrir o servidor novamente? Afinal, ele foi fechado junto com o servidor, portanto não está mais em execução. Bom, como disse, posso ter falado besteira. Então, alguém me corrija se eu estiver errado ^^ Agora, talvez exista alguma maneira de mudar a xp a cada hora, mas sem ser por esse caminho que vc imaginou. Só que infelizmente nunca vi. -
Galera, queria um npc que vendesse itens por Scarab coins ao invés de gps. Mas não queria que o player falasse o nome do item para que o npc descontasse as coins. Queria que quando o player dissesse "trade", aparecesse aquela janelinha para selecionar o item e a quantidade desejada, tal como é feito com os npcs normais de compra e venda. A única diferença é que onde é mostrado o dinheiro do jogardor, seria mostrado a quantidade de Scarab coins que ele tem e quanto ele iria gastar. Só não sei se isso é possível
- 7 respostas
-
- npc
- scarab coins
- (e 4 mais)
-
Galera, seguinte, tô criando um npc que vende bless, aol e premium scroll, tudo junto (mas sem o sistema de trade, apenas por palavras). A parte do scroll e do aol tão funcionando de boa, mas a parte da bless tá me matando. Já li e testei um monte de dicas aki do fórum mas nada me ajudou. Acho que o erro está no doPlayerAddBlessing. Segue meu Script: 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, 'premium')) then selfSay('You must pay 30000 gps for a premium scroll. Is it ok for you?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if(doPlayerRemoveMoney(cid, 30000) == TRUE) then doPlayerAddItem(cid, 16101) selfSay('Enjoy it!', cid) else selfSay('Sorry, you dont have enough money.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'aol')) then selfSay('It will coust 10000 gps. Is it ok for you?', cid) talkState[talkUser] = 2 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then if(doPlayerRemoveMoney(cid, 10000) == TRUE) then doPlayerAddItem(cid, 2173) selfSay('Here you are!', cid) else selfSay('Sorry, you dont have enough money.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'bless')) then selfSay('I can give you all blesseings for an amount of 10000. Is it ok for you?', cid) talkState[talkUser] = 3 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 3) then if(doPlayerRemoveMoney(cid, 10000) == TRUE) then doPlayerAddBlessing(cid, 1) doPlayerAddBlessing(cid, 2) doPlayerAddBlessing(cid, 3) doPlayerAddBlessing(cid, 4) doPlayerAddBlessing(cid, 5) selfSay('You are now blessed!', cid) doSendMagicEffect(getPlayerPosition(cid), 49) else selfSay('Sorry, you dont have enough money.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then talkState[talkUser] = 0 selfSay('Ok then.', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) O erro é o segunte: o npc, desconta a grana, fala a mensagem, manda o magic effect, mas sempre que eu morro pra testar, perco a bag. Obs.: No console não é mostrado nenhum erro ------------------------------------------------------------------------------------------------------------ Aff gente, perdoem-me pela minha noobisse, eu martelei a cabeça o dia todo com esse script. Então, apenas fiz o post e de repente tive um insight. O problema estava no config.lua Agora ta certo: blessings = true blessingOnlyPremium = true Perdão pelo post, acabou sendo desnecessário.
- 2 respostas
-
- bless não funciona
- doplayeraddblessing
- (e 4 mais)
-
[Encerrado] Base Otserver para mapa
tópico respondeu ao llfeehll de jefersonzc em Tópicos Sem Resposta
Estou querendo a mesma coisa -
Olá, estou a procura de uma distro compilada só que sem mapa, isso mesmo que você leu, sem mapa. Eu gostaria de começar meu mapa do zero. Já tentei trocar o mapa de um servidor por um mapa "em braco", mantendo apenas o local do acc manager, mas isso gera um bocado de erros, dos quais não consigo me livrar. Será que alguém teria algum para liberar, preferencialmente 9.6 ou 9.8 e sem itens editados e tudo mais que não for global. Apenas um OT "cru". Att, Jeferson.
-
[Arquivado]Free VPS? Não custa tentar :)
tópico respondeu ao jefersonzc de jefersonzc em Noticias - Arquivo
Sério? Aff... eu e minha ingênua tentativa de continuar acreditando na humanidade Obrigado pela dica então. Pelo visto o jeito vai ser pagar um semi dedicado pra começar.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.