Tudo que Altairjr postou
-
Site Nginx
Desculpa a demora. Amanhã que horário posso te chamar? Para não te atrapalhar. Olá, boa noite tudo joia e com você? Eu quero bloquear, porque hoje qualquer um acessa digitando o ip/phpmyadmin, então queria restringir somente ao meu IP acessar. Sim, o diretório se encontra no local especificado, conforme imagem. Ele funciona normal e acessa normal, ele só para de acessar e começar aparecer "not found" depois que faço esse processo:?
-
Site Nginx
Fiz, conforme o post porém não abre de forma alguma o phpmyadmin ..... é mais complicado do que eu imaginava!
-
Site Nginx
Eu tinha pensando isso também, mas não é... eu acredito que possa ser nesse caminho: /etc/nginx/sites-available/default Porém não faço ideia do que precisa colocar ou editar lá dentro para restringir o IP (caso realmente seja nesse diretorio que faça) . Obrigado mesmo assim pela ajuda amigo!!
-
Site Nginx
Galera, boa noite. Alguém pode dar um help, como que faz para restringir o acesso por IP no phpmyadmin usando o Nginx? Desde já, obrigado!
- Sistema de Reset 100%
-
[ajuda] Update em sistema
Boa noite galera. Tenho um script que é bem simples, eu configurei para ser usado com Event Coin, quando da use na moeda, o player pode passar pelo SQM e entrar na hunt e tem um total de 5 horas para ficar lá. O que gostaria de modificar é, após acabar o tempo de 5 horas que o player seja teleportado para o templo. Pois da forma que está, quando acaba o tempo, ele continua lá e somente se sair da cave ele não vai mais conseguir voltar, pois caso tente vai ter que passar pelo SQM e ai ele não entra mais, só se usar novamente a moeda. Lembrando que não tem nada a ver com Super Up nem nada, várias pessoas podem usar a moeda e entrar quem quiser na cave, porém só queria que fosse teletransportado para o templo quando o tempo acabasse, para que pessoal não abusasse e ficasse direto sem parar nas caves. Segue o código Movements: local function convertTime(a) if(type(tonumber(a)) == "number" and a > 0) then if (a <= 3599) then local minute = math.floor(a/60) local second = a - (60 * minute) if(second == 0) then return ((minute)..((minute > 1) and " minutos" or " minuto")) else return ((minute ~= 0) and ((minute>1) and minute.." minutos e " or minute.." minuto e ").. ((second>1) and second.." segundos" or second.." segundo") or ((second>1) and second.." segundos" or second.. " segundo")) end else local hour = math.floor(a/3600) local minute = math.floor((a - (hour * 3600))/60) local second = (a - (3600 * hour) - (minute * 60)) if (minute == 0 and second > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(second..((second > 1) and " segundos" or " segundo")) elseif (second == 0 and minute > 0) then return (hour..((hour > 1) and " horas e " or " hora e "))..(minute..((minute > 1) and " minutos" or " minuto")) elseif (second == 0 and minute == 0) then return (hour..((hour > 1) and " horas" or " hora")) end return (hour..((hour > 1) and " horas, " or " hora, "))..(minute..((minute > 1) and " minutos e " or " minuto e "))..(second..((second > 1) and " segundos" or " segundo")) end end end function onStepIn(cid, item, position, fromPosition) if (not isPlayer(cid)) then return false end if getPlayerStorageValue(cid, 29997) - os.time() <= 0 then doPlayerPopupFYI(cid, " ..::: AVISO :::..\nLocal com:\n+ 8 Hunts novas\n+ (ex: asura, infernalist...)\n\n\n ..::: COMO OBTER EVENT COIN :::..\n\n* Daily (quest diária, possível fazer todos os dias)\n* Eventos diarios\n\n ..::: COMO USAR :::..\n\nBasta dar 'USE' no 'Event Coin' e poderá ter acesso a esta área.\nApós usar o 'Event Coin', o tempo permidito dentro das hunts é de 5 horas.\nOBS: Seu tempo não acumula se você utilizar 2 event coins simultaneamente.\n\n\n Você possui: ".. getPlayerItemCount(cid, 12686) .." Event Coin(s).") doTeleportThing(cid, fromPosition, true) else doPlayerSendTextMessage(cid, 27,"Você ainda possui: ".. convertTime(getPlayerStorageValue(cid, 29997) - os.time()) ..".") return false end return true end Action: function onUse(cid, item, itemEx, topos, frompos) if getPlayerLevel(cid) < 50 then return doPlayerSendCancel(cid, "Você não possui level 50+ para utilizar este item.") end if getPlayerStorageValue(cid, 29997) - os.time() <= 0 then if doPlayerRemoveItem(cid, 6527, 1) then setPlayerStorageValue(cid, 29997, 5 * 60 * 60 + os.time()) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Você usou 1 Event Coin! Você pode acessar as Hunts por 5 horas.") doSendMagicEffect(frompos, 30) else return doPlayerSendCancel(cid, "Você precisa ter o item em sua 'BP'.") end elseif getPlayerStorageValue(cid, 29997) - os.time() > 0 then doPlayerSendTextMessage (cid, 19, "Para usar novamente o item você deve esperar ".. convertTime(getPlayerStorageValue(cid, 29997) - os.time()) ..".") end return true end Obrigado desde já! ?
-
AJUDA [Wand]
Fiz como você disse, fiz outras copias e atribui para os outros wands e deu certo!! Vlw pela atenção cara
-
AJUDA [Wand]
Obrigado por responder. Mas você acha que é possível deixar para mudar o efeito em mais 2 wand? pergunto pois, queria colocar 2 quest para gente fazer e ganhar uma cada wand e cada um ser um pouco mais forte no damage. Segue script do wand conforme pediu: local min, max = 870, 1000 local storage = 722656 local function getMinDamage(level, magLevel) local min = ((level * 1.05) + (magLevel * 1.00)) local naturalDamage = math.random(-30,45) min = min + naturalDamage if min < 870 then min = 870 end return math.floor(min) end local function getMaxDamage(level, magLevel) local max = ((level * 1.05) + (magLevel * 1.00)) local naturalDamage = math.random(-20,45) max = max + naturalDamage if max < 1000 then max = 1000 end return math.ceil(max) end local effects = { [10] = {dist = CONST_ANI_ICE, hit = CONST_ME_ICEATTACK, dmg = COMBAT_ICEDAMAGE}, [11] = {dist = CONST_ANI_EARTH, hit = CONST_ME_CARNIPHILA, dmg = COMBAT_POISONDAMAGE}, [12] = {dist = CONST_ANI_HOLY, hit = CONST_ME_HOLYDAMAGE, dmg = COMBAT_HOLYDAMAGE}, [13] = {dist = CONST_ANI_ENERGYBALL, hit = CONST_ME_PURPLEENERGY, dmg = COMBAT_ENERGYDAMAGE}, [14] = {dist = CONST_ANI_CAKE, hit = CONST_ME_CAKE, dmg = COMBAT_DROWNDAMAGE}, [15] = {dist = CONST_ANI_FIRE, hit = CONST_ME_FIREATTACK, dmg = COMBAT_FIREDAMAGE}, [16] = {dist = CONST_ANI_SUDDENDEATH, hit = CONST_ME_MORTAREA, dmg = COMBAT_DEATHDAMAGE} } function onUseWeapon(cid, var) local level, magLevel = getPlayerLevel(cid), getPlayerMagLevel(cid) local min, max = getMinDamage(level, magLevel), getMaxDamage(level, magLevel) local sto = getCreatureStorage(cid, storage) if not effects[sto] then sto = 14; end local target = variantToNumber(var) if isCreature(target) then doSendDistanceShoot(getThingPos(cid), getThingPos(target), effects[sto].dist) doAreaCombatHealth(cid, effects[sto].dmg, getThingPos(target), 0, -min, -max, effects[sto].hit) end return true end
-
AJUDA [Wand]
Boa noite galera. Preciso de uma ajuda, estou com um server só para brincar com os amigos e nele tem um sistema de trocar o elemento do Wand pelo comando !wand, porém ele troca o efeito somente de um wand e eu gostaria de colocar outros wands para poderem utilizar o comando e trocar o efeito também. Segue o código da talkactions: local nme = "wand" local storage = 722656 local storages = { ["ice"] = 10, ["earth"] = 11, ["holy"] = 12, ["energy"] = 13, ["cake"] = 14, ["fire"] = 15, ["death"] = 16 } local effects = { [10] = {dist = CONST_ANI_ICE, hit = CONST_ME_ICEATTACK}, [11] = {dist = CONST_ANI_EARTH, hit = CONST_ME_CARNIPHILA}, [12] = {dist = CONST_ANI_HOLY, hit = CONST_ME_HOLYDAMAGE}, [13] = {dist = CONST_ANI_ENERGYBALL, hit = CONST_ME_PURPLEENERGY}, [14] = {dist = CONST_ANI_CAKE, hit = CONST_ME_CAKE}, [15] = {dist = CONST_ANI_FIRE, hit = CONST_ME_FIREATTACK}, [16] = {dist = CONST_ANI_SUDDENDEATH, hit = CONST_ME_MORTAREA} } function onSay(cid, words, param) if not param or param == "" then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[Wand Effect] Os efeitos disponíveis para a Staff são:\n\n!wand ice\n!wand holy\n!wand energy\n!wand fire\n!wand cake\n!wand earth\n!wand death") return true end local value = storages[param:lower()] if value then if (isSorcerer(cid) or isDruid(cid)) and getPlayerItemCount(cid, 12288) > 0 then if value ~= getCreatureStorage(cid, storage) then if getCreatureStorage(cid, 722657) < os.time() then doCreatureSetStorage(cid, storage, value) doSendMagicEffect(getThingPos(cid), effects[value].hit) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "[Wand Effect] Você alterou o efeito da sua wand para "..param:lower().."!") doCreatureSetStorage(cid, 722657, os.time() + 10) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "[Wand Effect] Aguarde um pouco antes de mudar o efeito novamente.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "[Wand Effect] O efeito da sua wand já está definido como "..param:lower()..".") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "[Wand Effect] Somente sorcerers e druid que possuam uma Staff podem setar um efeito.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Este efeito não está disponível, use !wand para ver todos os efeitos.") doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) end return true end
-
Sistema de Reset 100%
@xWhiteWolf Desculpa o incomodo e reviver algo antigo... Funcionou 100% seu sistema, queria só saber se é possível e se é muito difícil fazer o seguinte, além da mana e hp que já voltam com um % definido a cada reset, é possível colocar também para ganhar um % a mais de exp quando for upar a cada reset e um % a mais de dano?
-
Exclusive Cave System By Account! 8.6
@Vodkart desculpa reviver o tópico, mas pode me dar uma ajuda? ? O sistema em si esta funcionando certinho, ele compra a cave, entra dentro, invita algum amigo, retira, a contagem do tempo está ocorrendo certa, tudo ok, sem nenhum erro da distro nem nada. Porém, quando finaliza o tempo da Cave ele não teletransporta o char para fora da cave, tanto o dono quanto o amigo caso esteja invitado. Se eu dou um /cavetime ele consta "0" no tempo, porém ele continua dentro da cave. Se eu sair e pedir para o NPC "entrar" ele me leva de novo para dentro da cave, e quando peço informações sobre aquela cave ela ainda consta que eu sou o dono mesmo depois do tempo ter acabado. Eu só consigo liberar a cave novamente, se eu for direto no banco na tabela "exclusive_cave" e excluir por lá o dono da cave, ai libera novamente a cave, e eu não consigo mais ter acesso. O que posso ter feito de errado? ;/ Desde já, obrigado !!
- Perfect Upgrade System
-
[Dúvida]Esconder Samples GESIOR
Estou precisando de uma ajuda, pois não consigo esconder os samples do meu site =/ Quero que eles não apareçam nos highscores e também não aparecer quando alguém pesquisar por eles. Eu uso criação de conta tanto com 1/1 e no site, ambas funcionando normal, já transferir os samples para outra conta pra que não apareçam no 1/1, porém eles ainda são mostrados nos highscores e nas pesquisas do site. Mudar de 0 para 1 no "deleted" da database também não adianta, porque quem for criar pelo site o char já vem deletado. Eu dei uma pesquisada aqui no fórum, achei um cara que estava com o mesmo problema que o meu e conseguiu resolver criando um código em php que quando buscasse pela palavra sambles a busca não retornava nada e não mostrasse nos highscores, porém ele só disponibilizou o código mas não falou a onde deveria ser inserido. elseif(($name == 'Sorcerer Sample') or ($name == 'Druid Sample') or ($name == 'Knight Sample') or ($name == 'Paladin Sample') or ($name == 'Account Manager')){ $main_content .= 'Here you can get detailed information about a certain player on '.$config['server']['serverName'].'.<BR> <FORM ACTION="?subtopic=characters" METHOD=post><TABLE WIDTH=100% BORDER=0 CELLSPACING=1 CELLPADDING=4><TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Search Character</B></TD></TR><TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><TABLE BORDER=0 CELLPADDING=1><TR><TD>Name:</TD><TD><INPUT NAME="name" VALUE=""SIZE=29 MAXLENGTH=29></TD><TD><INPUT TYPE=image NAME="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD></TR></TABLE></TD></TR></TABLE></FORM>'; } Se alguém souber onde deve ser posto e puder dizer fico grato ou se tiver algum tópico sobre o assunto resolvido aqui no fórum, por favor me mandem o link para que eu possa resolver minha dúvida. Vlw!! ?
-
(Resolvido)Erro Gesior ao criar conta
Estava com problema no meu banco e isso resolveu também. Muito obrigado por compartilhar! rep+
-
Tibia 8.60 Editor
Estou com o mesmo problema, conseguiu resolver? @Cjaker sabe o que pode ser? ele criou o cliente, porém quando vai logar ele fecha tudo dando como se fosse um bug.
-
Exclusive Cave System By Account! 8.6
@Vodkart sistema fera demais!! Teria como colocar para ser utilizado com um determinado item? Ao invés de comprar pelo npc? Um exemplo, o player compra determinado item, da use nele e ai é selecionado uma cave aleatória ou que o player possa escolher a cave que estiver livre, enfim o que for mais fácil, após dar use no item o item some. Pode explicar também melhor sobre essa parte? Teria que pegar a cave inteira? não entendi muito bem
-
criar comando !buyvip
.Qual servidor ou website você utiliza como base? Qual o motivo deste tópico? Está surgindo algum erro? Se sim coloque-o aqui. Boa noite pessoal. Alguém pode me ajudar a criar um script, acredito que pra quem manja é fácil, porém não é minha praia. Se consiste no comando !buyvip1 e !buyvip2, cada um com um valor e para sempre, sem dias para acabar. E um um ID no piso para quando o player não tiver a vip ele não passar e aparecer a mensagem para comprar e uma de boas vindas para quando ele tiver e passar pelo piso. Eu dei uma pesquisada aqui no TK, achei alguns tutorias porém não dessa forma como quero, alguns utilizavam itens para adquirir a vip outros tinha uma quantia de dias e tals. Minha base é OTX, server 8.6. Desde já, obrigado. Você tem o código disponível? Se tiver publique-o aqui: Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.
-
Gesior - Baiak-PvP 2020
@msousay.94 provavelmente é a key do recaptcha do google precisa colocar uma nova.... se você quiser desabilitar o recaptcha para poder acessar ou criar conta no site, acessa o config.php e localize por: $config['site']['google_captcha_enabled'] = true; Onde está true troque para false vai desabilitar a função do recaptcha e você vai conseguir acessar ou criar conta pelo site. @necroids esse erro é porque não tem os rook sample, sorcerer, druid, paladin e knight junto do account manager, então você não consegue criar conta pelo site se não tiver eles. Para resolver, rode as query a baixo no seu mysql. INSERT INTO `players` (`id`, `name`, `world_id`, `group_id`, `account_id`, `level`, `vocation`, `health`, `healthmax`, `experience`, `lookbody`, `lookfeet`, `lookhead`, `looklegs`, `looktype`, `lookaddons`, `lookmount`, `maglevel`, `mana`, `manamax`, `manaspent`, `soul`, `town_id`, `posx`, `posy`, `posz`, `cap`, `sex`, `lastlogin`, `lastip`, `save`, `skull`, `skulltime`, `rank_id`, `guildnick`, `lastlogout`, `blessings`, `pvp_blessing`, `balance`, `stamina`, `direction`, `loss_experience`, `loss_mana`, `loss_skills`, `loss_containers`, `loss_items`, `premend`, `online`, `marriage`, `promotion`, `deleted`, `description`, `comment`, `create_ip`, `create_date`, `hide_char`, `signature`, `broadcasting`, `castDescription`, `viewers`, `ip`, `offlinetraining_time`, `offlinetraining_skill`, `guildjoin`, `sbw_points`) VALUES (NULL, 'Rook Sample', '0', '1', '1', '8', '0', '185', '185', '4200', '0', '0', '0', '0', '136', '0', '0', '0', '35', '35', '0', '0', '0', '1988', '2018', '7', '480', '0', '0', '0', '0', '0', '0', '0', '', '0', '0', '0', '0', '151200000', '0', '100', '100', '100', '100', '100', '0', '0', '0', '0', '0', '', '', '0', '0', '0', '', '0', '', '0', '127.0.0.1', '43200', '-1', '0', '0') INSERT INTO `players` (`id`, `name`, `world_id`, `group_id`, `account_id`, `level`, `vocation`, `health`, `healthmax`, `experience`, `lookbody`, `lookfeet`, `lookhead`, `looklegs`, `looktype`, `lookaddons`, `lookmount`, `maglevel`, `mana`, `manamax`, `manaspent`, `soul`, `town_id`, `posx`, `posy`, `posz`, `conditions`, `cap`, `sex`, `lastlogin`, `lastip`, `save`, `skull`, `skulltime`, `rank_id`, `guildnick`, `lastlogout`, `blessings`, `pvp_blessing`, `balance`, `stamina`, `direction`, `loss_experience`, `loss_mana`, `loss_skills`, `loss_containers`, `loss_items`, `premend`, `online`, `marriage`, `promotion`, `deleted`, `description`, `comment`, `create_ip`, `create_date`, `hide_char`, `signature`, `broadcasting`, `castDescription`, `viewers`, `ip`, `offlinetraining_time`, `offlinetraining_skill`, `guildjoin`, `sbw_points`) VALUES (3, 'Sorcerer Sample', 0, 1, 1, 8, 1, 185, 185, 4200, 0, 0, 0, 0, 136, 0, 0, 0, 35, 35, 0, 100, 0, 1988, 2018, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 151200000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 0, '', 0, '127.0.0.1', 43200, -1, 0, 0), (4, 'Druid Sample', 0, 1, 1, 8, 2, 185, 185, 4200, 0, 0, 0, 0, 136, 0, 0, 0, 35, 35, 0, 100, 0, 1988, 2018, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 151200000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 0, '', 0, '127.0.0.1', 43200, -1, 0, 0), (5, 'Paladin Sample', 0, 1, 1, 8, 3, 185, 185, 4200, 0, 0, 0, 0, 136, 0, 0, 0, 35, 35, 0, 100, 0, 1988, 2018, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 151200000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 0, '', 0, '127.0.0.1', 43200, -1, 0, 0), (6, 'Knight Sample', 0, 1, 1, 8, 4, 185, 185, 4200, 0, 0, 0, 0, 136, 0, 0, 0, 35, 35, 0, 100, 0, 1988, 2018, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 0, 151200000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', '', 0, 0, 0, '', 0, '', 0, '127.0.0.1', 43200, -1, 0, 0); @luancanela23 pode dizer como fez para adicionar essa função?
-
Cave Exclusiva [SUPER UP] by WooX
@leozincorsair na tag dentro do action apaga esse "cave_exclusiva" deixa somente o nome do script "cave_action" do jeito que está ai "cave_exclusiva/cave_action.lua" você está apontando 2 scriptpara ser aberto, sendo que na pasta script você só criou um que é o "cave_action.lua"... só arrumar isso que vai dar certo! Deve fazer o mesmo para as outras tas, caso estejam dando erro também!
-
Baiak-PvP [8.60] - Watch System + Cast Look
Alguém sabe quais são os itens donates do site? A database veio clean, então não tem nada adicionado ao site.. Os itens como Wand, Sword, Armor, legs, etc.. esses sei quais são, mas queria saber se existem outros items utilitários que entram no site como donate... Outra dúvida, alguém sabe dizer se é possível colocar o sistema de VIP direto pelo site? Em vez do player ter que dar user no item no jogo.
-
(Resolvido)Mudar Elemento dá Wand por Item
@gabrielzika Deu certo mano, tudo funcionando 100% agora. Muito obrigado pela ajuda cara, salvou eu vou dar rep+ em todas suas respostas, vlw mesmo brow!!!
-
(Resolvido)Mudar Elemento dá Wand por Item
Mil perdões cara, foi falha minha nem me atentei que eram IDS diferentes, eu bati o olho por cima e pensei que fossem iguais ?♂️... Enfim, somente o wand do ID 12655 que não esta efetuando a troca dos elementos. Segue o ID de todos os wands: 12655 12629 12661 12662 12663 12664 12665 Sobre cobrar, ele está cobrando sim kkk, o que eu queria era que cobrasse apenas de quem tivesse o wand independente de qual ID dos 6 ele tiver, mas somente quem possuísse um desses 6 IDS do mesmo wand, entendeu? Do jeito que está, qualquer um pode digitar a troca e é cobrado, por mais que não efetue a mudança. Por exemplo, um knight vai la e digita !wand holy, se ele tiver 1kk vai ser cobrado, entendeu? Queria que pudesse executar esse comando da troca de elemento, quanto o do !wand help apenas quem possuísse o wand, mas, se for dar muito trabalho ou não tiver como, pode deixar quieto, não vai interferir em nada é mais uma frescura mesmo minha por querer deixar mais organizado kkk... Enfim, desde já obrigado cara.
-
(Resolvido)Mudar Elemento dá Wand por Item
@gabrielzika Cara, deu super certo muitíssimo obrigado. Uma ultima questão, caso de trabalho ou não de certo não tem problema, não vai interferir em nada. Os elementos estão sendo trocados nos wand, apenas no primeiro wand que não foi. É o wand que é comprado pelo site, ele vem sem nenhum upgrade, ele não trocou o elemento, apenas esta atacando com o holy que é o padrão que ele vem, a partir do upgrade +1 até +6 da pra trocar o elemento tranquilamente. Eu não sei se tem algo a ver, mas esse wand que é comprado pelo site que vem sem upgrade o ID dele é o mesmo do wand +6, ambos tem o mesmo ID. No weapons.xml eles estão assim: Wand do site sem UPGRADE \/ Wand com upgrade +6 \/ A partir do +1 até o +6 eles tem o script e o ataque deles são declarado lá, apenas o Wand do site sem upgrade que é declaro apenas no weapons sem nenhum script. Enfim, se não tiver como arrumar isso não tem problema, só de já ter pego a partir do +1 já está excelente. Uma segunda dúvida e sobre cobrar o preço quando usado o comando da troca e quando digita !wand help... Queria saber se tem como deixar para fazer a troca e digitar wand help apenas se estiver com os wands corretos, pois do jeito que ta qualquer um pode digitar !wand help e ficar trocando os elementos. Enfim, isso também não interfere em nada, era apenas para fazer uma restrição mesmo para quem possuir o wand seja ele sem upgrade ou qualquer upgrade até +6. Mais uma vez, muito obrigado amigo. REP+
-
(Resolvido)Mudar Elemento dá Wand por Item
@gabrielzika Opa cara, primeiramente muito obrigado por responder e estar disposto a ajudar. Bom, vamos lá! Eu tenho um server no qual tem pedra de refinamento, elas servem para dar upgrade nos items. Tanto sword, club, axe, bow como wands. Por exemplo, se eu tenho uma sword ataque 130 e uso uma pedra de refinamento nela, ela fica com +1 ficando então 131atk e assim por diante até o +6 que é o limite de todos. No caso do Wand funciona um pouco diferente, quando eu uso a pedra de refinamento nele para fazer o upgrade, diferente da sword ou qualquer outro item que apenas acrescenta +1 no ataque ou defesa o Wand não faz assim. Nesse caso como o Wand já tem um ataque fixo definido la nos weapons então, não tem como fazer o upgrade e aumentar o ataque dele como o exemplo da sword. Nesse caso do wand, funciona da seguinte maneira, tem 6 ID diferentes para o mesmo wand, então cada vez que é usada a pedra de refinamento no Wand, ele troca somente o ID mas continua o mesmo wand, entendeu? Na pasta weapons tem cadastrado já 6 tipos de ID para o mesmo item, mudando apenas o ID deles e em cada um está configurado um ataque fixado já. Então, cada vez que a pedra for usada no wand para fazer o upgrade, ele vai trocando o ID conforme os que estão configurados la no weapons, indo assim até chegar no +6. Ai que entra minha dúvida, no server tem o comando para trocar o elemento do wand também, no caso o comando é !wand elemento dejado (exemplo: !wand holy) mas no script da troca de wand está configurada apenas 1 ID de wand, então dos 6 ID diferentes que tem, apenas 1 deles irá funcionar o comando para a troca de wand, entende? Vamos supor que esteja configurado no script da troca de elemento o ID do wand +2, então apenas quem fazer upgrade pro +2 consegue executar o comando da troca de elemento, wand sem upgrade,+1,+3,+4,+5,+6 todos esses não vão conseguir, entendeu? Eu queria que independente do upgrade que estiver ou sem nenhum, possa ser usado o comando para efetuar a troca do elemento. Vou deixar aqui o script da troca de elemento e todos os ID do Wand. ID dos Wand: 12629 12661 12662 12663 12664 12665 Script da Troca de elemento local combat_values = { ["none"] = -1, ["ice"] = 1, ["fire"] = 2, ["earth"] = 3, ["energy"] = 4, ["holy"] = 5, ["death"] = 6, } local config = { storage = 101010, time_storage = 101011, price = 1000000, delay = 0, msg = { help = "Use o comando exemplo: !wand holy Efeitos disponíveis: ice, fire, earth, energy, holy, death, e none para desabilitar. A troca para outro elemento custa 1kk.", invalid = "Por favor, digite um tipo valido.", changed = "O elemento da wand foi trocado para %s.", nomoney = "Você não possui dinheiro.", delayed = "Você precisa esperar para trocar o efeito.", } } -- /////////////////////Requerimentos///////////////////-- local req_itemid = 12629 -- ID do item requerido local req_text = "You cannot use this command." -- Mensagem caso nao possua o item --/////////////////////////////////////////////////////-- function onSay(cid, words, param) local param = param:lower() local value = combat_values[param] if getPlayerItemCount(cid, req_itemid) > 0 then if param == "help" or param == "" then doShowTextDialog(cid, 12629, string.format(config.msg.help, config.price)) return true end if not value then doPlayerSendCancel(cid, config.msg.invalid) return true end if getPlayerMoney(cid) < config.price then doPlayerSendCancel(cid, config.msg.nomoney) return true end if getPlayerMoney(cid) < config.price then doPlayerSendCancel(cid, config.msg.nomoney) return true end if getCreatureStorage(cid, config.time_storage) + config.delay > os.time() then doPlayerSendCancel(cid, config.msg.delayed) return true end doCreatureSetStorage(cid, config.storage, value) doCreatureSetStorage(cid, config.time_storage, os.time()) doPlayerRemoveMoney(cid, config.price) doPlayerSendCancel(cid, string.format(config.msg.changed, param)) else doPlayerSendCancel(cid,req_text) end return true end Eu tentei por conta própria dar um jeito, até que foi 50% mas como não manjo de script vim atrás de ajuda. O que eu fiz foi somente adicionar mais uma linha igual. a baixo do "local req_itemid = 12629" e troquei o ID para de outro wand e depois adicionei outra igual, a baixo da "doShowTextDialog(cid, 12629, string.format(config.msg.help, config.price))" e apenas deixei igual o ID da nova linha que eu tinha adicionado. Eu fiz isso para 3 ID diferentes de wand, e como eu disse funcionou 50%, quando abri o server para testar, apenas 2 estavam pegando o 3º não, mas depois o 2º também parou de pegar e ficou apenas o 1º pegando e não deu nenhum erro na distro, nem nada. Enfim, espero que você possa ter entendido e desculpe por deixar tão grande, quis deixar o mais completo possível para você. Desde já muito obrigado!
-
(Resolvido)Mudar Elemento dá Wand por Item
@gabrielzika Desculpa está revivendo o tópico após tanto tempo, mas estou com um problema parecido com esse, você poderia me dar uma força cara? No meu server o wand tem sistema de refinamento, até +6 cada refinamento feito na wand é trocado o ID do wand mas sempre continuando com o mesmo wand apenas trocando o ID. Como wand tem ataque fixo definido nos weapons então a solução para refinamento nele é somente assim trocando o ID. Tem o comando para trocar o elemento do wand também, eu queria saber se tu pode me ajudar a fazer esse comando ser válido para os 6 ID do wand. Pois cada vez que o player refinar o wand ele vai trocar o ID e preciso que o comando para troca de elemento continue sendo válido independe de qual ID esteja, Eu tentei fazer aqui mas não ficou 100%, tem hora que ele troca o elemento de um ID mas do outro não vai, ai volta a troca o elemento do ID que não estava indo, ta bem bagunçado, se puder me ajudar fico grato. Desde já, obrigado!