Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 01/18/16 em %

  1. GOD Bon

    Herói

    Agora sim ficou bem mais sensato, não tem como levar todos os quesitos ao pé da letra, pois cada um contribuiu e impactou de formas diferentes. O titulo de Herói é uma forma de agradecimento pelos serviços prestados pela a comunidade no modo em geral, fico satisfeito sobre a reavaliação pois vi que a equipe do xtibia tem seriedade com todos os seus membros e que estão disposto há ouvi a opinião de todos. Muitos membros novos se olharem para analisar eu quase não tenho reputação pois na época que eu frequentava não existia este sistema, mas enfim. Daniel muito obrigado por me ouvi e reconhecer os méritos que já prestei em toda comunidade. Um abraço GOD Bon Saudações ao eterno Yurots 1.2 (8.1)
    4 pontos
  2. Avuenja

    Visual 2015

    Bom dia pessoal do Ékz, venho até vocês para apenas informar o motivo de voltarmos ao visual de 2015, como todos já devem ter percebido ao entrar no fórum hoje. Para quem não me conhece, sou o Coordenador de Infraestrutura da Comunidade, e cuido desta parte de visual e tudo o que se pode dizer a respeito em relação a isso. O motivo de voltarmos para a antiga skin, foi por alguns motivos que a nova não estava nos possibilitando algumas questões, e também pelo feedback dos vocês membros, pois queremos sempre o melhor para todos. Mas estaremos trabalhando nesta nova skin, e em um novo visual para o Ékz, que nos dará uma entidade visual ótima e única. Aguardem pessoal. Pois bem, é isto. Fiquem na Santa paz de Deus. Abraços
    3 pontos
  3. img: em iologindata.h procure: uint32_t getAccountIdByName(const std::string& name) const; e substituia por: std::string getCheckPlayerLevel(const std::string& name) const; iologindata.cpp para tfs 0.3.6 std::string IOLoginData::getCheckPlayerLevel(const std::string& name) const { Database* db = Database::getInstance(); DBQuery query; query << "SELECT `level`, `vocation`, `promotion` FROM `players` WHERE `name` " << db->getStringComparison() << db->escapeString(name) << ";"; DBResult* result; if (!(result = db->storeQuery(query.str()))) return false; const uint32_t pLevel = result->getDataInt("level"); const uint32_t pVoc = result->getDataInt("vocation"); const uint32_t prom = result->getDataInt("promotion"); std::string voc; if (prom == 0) { switch (pVoc) { case 0: voc = "Rookie"; break; case 1: voc = "S"; break; case 2: voc = "D"; break; case 3: voc = "P"; break; case 4: voc = "K"; break; default: voc = "Uknown"; } } else if (prom == 1) { switch (pVoc) { case 0: voc = "Rookie"; break; case 1: voc = "MS"; break; case 2: voc = "ED"; break; case 3: voc = "RP"; break; case 4: voc = "EK"; break; default: voc = "Uknown"; } } std::stringstream ret; ret << "Level: "<< pLevel << " Voc: " << voc; result->free(); return ret.str(); } para tfs 0.4: std::string IOLoginData::getCheckPlayerLevel(const std::string& name) const { Database* db = Database::getInstance(); DBQuery query; query << "SELECT `level`, `vocation`, `promotion` FROM `players` WHERE `name` " << db->getStringComparer() << db->escapeString(name) << ";"; DBResult* result; if (!(result = db->storeQuery(query.str()))) return false; const uint32_t pLevel = result->getDataInt("level"); const uint32_t pVoc = result->getDataInt("vocation"); const uint32_t prom = result->getDataInt("promotion"); std::string voc; if (prom == 0) { switch (pVoc) { case 0: voc = "Rookie"; break; case 1: voc = "S"; break; case 2: voc = "D"; break; case 3: voc = "P"; break; case 4: voc = "K"; break; default: voc = "Uknown"; } } else if (prom == 1) { switch (pVoc) { case 0: voc = "Rookie"; break; case 1: voc = "MS"; break; case 2: voc = "ED"; break; case 3: voc = "RP"; break; case 4: voc = "EK"; break; default: voc = "Uknown"; } } std::stringstream ret; ret << "Level: "<< pLevel << " Voc: " << voc; result->free(); return ret.str(); } agora em protocollogin.cpp procure: output->putString(g_config.getString(ConfigManager::SERVE R_NAME)); e em baixo adicione: output->putString(IOLoginData::getInstance()->getCheckPlayerLevel((*it))); testado em 0.3.6 e 0.4 tfs. créditos: jetros
    2 pontos
  4. felzan

    Spell de 'Dbuff'

    Bom, fiz assim Add no final do creaturescripts\scripts\login.lua Abaixo de: -- Events player:registerEvent("PlayerDeath") player:registerEvent("DropLoot") player:registerEvent("Debuff") Add no creaturescripts.xml <event type="healthchange" name="Debuff" script="debuff.lua"/> Exemplo de spells.xml <instant group="attack" spellid="61" name="Debuff" words="debuff" lvl="1" mana="0" prem="0" range="4" needtarget="1" blockwalls="1" needweapon="0" exhaustion="6000" groupcooldown="2000" needlearn="0" script="debuff.lua"> </instant> spells\scripts\debuff.lua local combat = Combat() combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_SKULLVERTICAL) local conditionDebuff = Condition(CONDITION_PARALYZE) conditionDebuff:setParameter(CONDITION_PARAM_TICKS, 10000) conditionDebuff:setFormula(0, 0, 0, 0) combat:setCondition(conditionDebuff) local function removeDebuff(parameters) parameters.target:setStorageValue(parameters.key, parameters.value) end function onCastSpell(creature, var) local cid = creature:getId() parameters = {target = Creature(var:getNumber()), key = 99881, value = 0} parameters.target:setStorageValue(parameters.key, 1) addEvent(removeDebuff, 10000, parameters) return combat:execute(creature, var) end creaturescripts\scripts\debuff.lua function onHealthChange(creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType, origin) local hasdebuff = creature:getStorageValue(99881) --storage dada na debuff spell local percent = 2 -- dobro (50% seria 1.5) local tipoDano = COMBAT_FIREDAMAGE if hasdebuff > 0 then return primaryDamage*percent, tipoDano, secondaryDamage, secondaryType else return primaryDamage, primaryType, secondaryDamage, secondaryType end end
    2 pontos
  5. Benny

    Herói

    Nao, nem foi http://www.xtibia.com/forum/topic/226823-o-que-e-ftp-como-usar-o-ftp/?p=1601512 Foi por bobeira, esqueci que informatica n eh bar, levei alerta hasudhasu. Sobre o do Beeki (fabio) foi como disse, foi brincadeira, eu pegava tudo do perfil dele (titulo, avatar, data d nascimento, etc) e usava. Nao sei o que foi, sei que eu brinquei com ele d algo d banir, e ele me suspendeu por 1 hora. Caronte, na realidade, eu fui questionar s O daniel nao entendeu, pensou que eu estava querendo o cargo e me deu, mesmo comigo n concordando com os criterios > birra Pelo amor d deus, ne cara. To batendo o pe no chao? Exigindo algo muito pesado? abç
    2 pontos
  6. Administrador

    Herói

    Introdução Herói é um título (cargo). É concedido à membros que foram importantes para a comunidade. Em tempos passados, este título fora desvalorizado e permaneceu sem supervisão ou definição qualquer enquanto ativo. Herói 1.0 Heróis são avaliados pela contribuição realizada no fórum; 2.0 Alertas, dependendo da seriedade, podem remover o título de um membro. • Atualizado 30/05/17
    1 ponto
  7. Global Full [CLIENTS COMPATÍVEIS] 10 e 11.5. [BUGS E DOWNLOAD] BAIXEM E REPORTEM EM: OTXGlobal Full [FEATURES] NEW DEPOT, NEW SPAWN, NEW CAST SYSTEM, NEW NPC SYSTEM VIA BANK BALANCE, NEW CRITICAL BOOST SYSTEM, NEW POTIONS, REWARD SYSTEM, PREY ... [MAPA] FULL GLOBAL MAP WITH FEYRIST TODAS CIDADES E NOVAS AREAS TODAS QUESTS FUNCIONANDO! [EVENTS] WAR-ANTIENTROSA [CONTATO] SKYPE: onjogos WHATSAPP: (66) 998427-4493 [Créditos]Tfs 1.2 Developers -Zbizu - Pitis91 - MatheusMkalo - Gesior - Lundrial - M4G0 - Fish04k - Printer - Djarek - Ninjalulz - Slavidodo - Thexamx - Socket2810 - Ciroc -Absolute - Gordonbay - Mitsuig - Alissonfgp - Gunz - Bruno Minervino - Comedinha -Hirako - Maya - Mattyx14 – Darkjav - Viking Tibia
    1 ponto
  8. kaleudd

    [TFS 1.x] save automatico ao sair

    em game.cpp,procure por: oid Game::shutdown() { std::cout << "Shutting down..." << std::flush; g_scheduler.shutdown(); g_databaseTasks.shutdown(); g_dispatcher.shutdown(); map.spawns.clear(); raids.clear(); cleanup(); if (serviceManager) { serviceManager->stop(); } ConnectionManager::getInstance().closeAll(); std::cout << " done!" << std::endl; } e substitua por este: void Game::shutdown() { std::cout << ">> Shutting down...\n> " << std::flush; saveGameState(); g_scheduler.shutdown(); g_databaseTasks.shutdown(); g_dispatcher.shutdown(); map.spawns.clear(); raids.clear(); cleanup(); if (serviceManager) { serviceManager->stop(); } ConnectionManager::getInstance().closeAll(); std::cout << "> Done!" << std::endl; } créditos: Fir3element
    1 ponto
  9. totonho18

    Quest Inovadora, CONFIRA!

    É um script de quest feito 100% por mim O que ela retorna? Essa quest simplesmente te fornece um conjunto de itens dentro de uma bag, itens básicos, porém os itens recebidos da quest são diferentes para cada vocação, e detalhe, ela fornece uma sword ou um axe ou um club para o jogador caso ele seja knight, o tipo da arma dependerá do skill do mesmo, se seu maior skill for axe, ele receberá um machado, e o maior skill for club ele recebe uma clava e se o maior for sword ele recebe uma espada, é um sistema de fácil configuração e acredito que pode ser útil de alguma forma principalmente aos programadores iniciantes. Implementação; Abra a pasta data/actions/scripts -> copie e cole um arquivo qualquer e o renomeie para recompensa.lua Apague tudo que tiver dentro e cole o seguinte código: function onUse(cid, item, frompos, item2, topos) --A Configuração abaixo local config = { level_min = 20, -- level mínimo Premium = true, -- Necessita P.A? true para sim ou false para não Club = 7381, -- id da clava caso o suposto knight tenha skill club superior Sword = 7385, -- id da espada caso o suposto knight tenha skill sword superior Axe = 2435 -- id da machado caso o suposto knight tenha skill axe superior } -- Fim da config OBS Configure dessa linha pra baixo se e somente se souber o que está fazendo local SkillClub = getPlayerSkillLevel(cid, 1) local SkillSword = getPlayerSkillLevel(cid, 2) local SkillAxe = getPlayerSkillLevel(cid, 3) local level = getPlayerLevel(cid) local Voc = getPlayerVocation(cid) local QuestStatus = getPlayerStorageValue(cid,13139) if config.Premium and not isPremium(cid) then doPlayerSendTextMessage(cid,29,"Apenas para jogadores premium accounts") return 0 end if Voc == 4 or Voc == 8 then if level >= config.level_min then if QuestStatus == -1 then if (SkillClub > SkillSword) and (SkillClub > SkillAxe) then doPlayerAddItem(cid,config.Club,1) elseif (SkillSword > SkillClub) and (SkillSword > SkillAxe) then doPlayerAddItem(cid,config.Sword,1) elseif (SkillAxe > SkillClub) and (SkillAxe > SkillSword) then doPlayerAddItem(cid,config.Axe,1) end local bag = doPlayerAddItem(cid,3939,1) doPlayerSendTextMessage(cid,29,"Voce recebeu alguns itens uteis") doAddContainerItem(bag, 2152, 50) doAddContainerItem(bag, 2647, 1) doAddContainerItem(bag, 2463, 1) doAddContainerItem(bag, 2457, 1) doAddContainerItem(bag, 2661, 1) doAddContainerItem(bag, 2525, 1) setPlayerStorageValue(cid,13139,1) else return doPlayerSendTextMessage(cid,29,"Vazio") end else doPlayerSendTextMessage(cid,29,"Only Level "..config.level_min.."+") end elseif Voc == 3 or Voc == 7 then if level >= config.level_min then if QuestStatus == -1 then local bag = doPlayerAddItem(cid,3939,1) doPlayerSendTextMessage(cid,29,"Voce recebeu alguns itens uteis") doAddContainerItem(bag, 2152, 50) doAddContainerItem(bag, 2647, 1) doAddContainerItem(bag, 8872, 1) doAddContainerItem(bag, 2457, 1) doAddContainerItem(bag, 2661, 1) doAddContainerItem(bag, 2525, 1) doAddContainerItem(bag, 7438, 1) setPlayerStorageValue(cid,13139,1) else return doPlayerSendTextMessage(cid,29,"Vazio") end else doPlayerSendTextMessage(cid,29,"Only Level "..config.level_min.."+") end elseif Voc == 1 or Voc == 5 then if level >= config.level_min then if QuestStatus == -1 then local bag = doPlayerAddItem(cid,3939,1) doPlayerSendTextMessage(cid,29,"Voce recebeu alguns itens uteis") doAddContainerItem(bag, 2152, 50) doAddContainerItem(bag, 2323, 1) doAddContainerItem(bag, 2188, 1) doAddContainerItem(bag, 2647, 1) doAddContainerItem(bag, 8892, 1) doAddContainerItem(bag, 2525, 1) doAddContainerItem(bag, 2661, 1) setPlayerStorageValue(cid,13139,1) else return doPlayerSendTextMessage(cid,29,"Vazio") end else doPlayerSendTextMessage(cid,29,"Only Level "..config.level_min.."+") end elseif Voc == 2 or Voc == 6 then if level >= config.level_min then if QuestStatus == -1 then local bag = doPlayerAddItem(cid,3939,1) doPlayerSendTextMessage(cid,29,"Voce recebeu alguns itens uteis") doAddContainerItem(bag, 2152, 50) doAddContainerItem(bag, 2323, 1) doAddContainerItem(bag, 2185, 1) doAddContainerItem(bag, 2647, 1) doAddContainerItem(bag, 8892, 1) doAddContainerItem(bag, 2525, 1) doAddContainerItem(bag, 2661, 1) setPlayerStorageValue(cid,13139,1) else return doPlayerSendTextMessage(cid,29,"Vazio") end else doPlayerSendTextMessage(cid,29,"Only Level "..config.level_min.."+") end end return true end feito isso salve e feche o arquivo. Agora vá na pasta data/actions/actions.xml e cole a seguinte tag abaixo: <action uniqueid="7111" script ="recompensa.lua" /> Feito isso basta abrir seu map editor e colocar o unique id no local onde o player vai clicar pra fazer a quest, seja lá o que for, um baú, uma estátua, uma parede,etc. Gostou? REP+ Analíse, critique, elogie, comente, me ajude a crescer. By Totonho 18, autor do código :smile_positivo:
    1 ponto
  10. Em vasto mundo de mistérios, existe uma pequena ilha, que também guarda grandes segredos, chamada de Rookgaard. Seus habitantes se resume a cidadãos camponeses, pescadores e comerciantes, que sobrevivem do que a ilha tem para lhes oferecer. Apesar da vida calma e tranqüila que a ilha tem a oferecer, existe uma segunda realidade que cerca a ilha até os dias atuais. Aventureiros são os que decidem encarar está segunda realidade, tendo como pagamento a experiência e um vasto conhecimento que a ilha pode oferecer. Desde pequeno, Frimzen fora um garoto divertido, justo e corajoso. Por ser filho de comerciantes, e ajudá-los na loja, Frimzen sempre tivera desconfiança do mundo lá fora, pois as histórias que ele ouvia de alguns aventureiros que passavam por lá, o deixava bastante pensativo. Certo dia, como mais um dia de trabalho qualquer, Frimzen foi abastecer os suprimentos da loja, quando um homem aparentemente velho e com uma barba longa adentrou na loja, com um sorriso de um canto à outro. A felicidade tomou conta de Frimzen, que correu em direção do velho homem. - Tio Rimla, o senhor finalmente voltou! - Gritou Frimzen. Rimla é o irmão do pai de Frimzen, Paul. Rimla seu havia partido para aperfeicçoar os conhecimentos de uma linguagem antiga, uma linguagem que foi esquecida há muito tempo, A Linguagem Fict. Rimla era um Druida que se importava com as criaturas que existia em Rookgaard, porém a convivência entre humanos e as criaturas só tem piorado, desde que Banor, o Divino morreu. Era uma noite de festa, e todo o vilarejo estava presente, afinal era Rimla que estava de volta, o homem cujo conseguiu manter as ainda existentes relações com algumas criaturas, permitindo que o vilarejo fique à salvo de ataques. Era uma noite clara, onde as estrelas brilhavam bastante, e Frimzen resolveu passear pela floresta, já que a cidade toda estava em festa, e os guardas abandonaram seus postos. Frimzen nunca acreditara nas histórias de seu tio, pois no fundo, ele tinha medo. Medo de saber que existem pessoas e criaturas perversas no mundo, medo de ter medo, medo de morrer. O que viria depois da morte? Frimzen se perguntava bastante do porque nunca poder sair da vila; é tão perigoso lá fora? Foi se deixando levar durante o caminho, que Frimzen já não sabia mais onde estava. O barulho da floresta era mínimo, os sons presentes eram de alguns animais que ali estavam, e do balançar das folhas provocado pelo vento. De longe, ainda dava para ver que a cidade ainda estava comemorando a volta de Rimla. Tudo estava calmo e silencioso, até que uma lança atingiu seu braço. A descrição de tamanha dor não tem palavras. Frimzen gritou profundamente, e saiu correndo floresta adentro, sem saber mais onde estava, e isso acordou algumas criaturas que por ali estavam. O pânico já havia tomado conta de Frimzen, juntamente com um sentimento que nunca tinha sentido antes, o medo. Frimzen procurou em todas as direções, e avistou uma criatura esverdeada, que vestia um capuz azul, e carregava consigo várias lanças, além de soltar grunhidos e sons que Frimzen não conseguia assemelhar com nada que já tinha ouvido antes. A criatura segue em sua direção, acompanhado de outras criaturas esverdeadas, porém estes estavam sen lanças, e apenas com vestimentas de couro bastante velhas. Os seres que ali estavam, avançavam em sua direção, quando de repente, Frimzen escuta uma palavras estranhas, acompanhadas de uma voz familiar. - Utevo gran lux. - Disse a voz Após as palavras serem pronunciadas, um clarao de luz tomou conta daquela área, fazendo com que todas as criaturas partissem em retirada. - Você está bem? - Disse a voz. - Tio... Como você?... - Perguntou Frimzen, abismado. - É uma longa história, mas tudo o que ouviu até hoje é verdade. - Respondeu Rimla. Após isso, o susto, o medo, a felicidade e o alívio de estar vivo, contribuíram para que Frimzen desmaiasse. Frimzen não sabia, mas aquilo que ele acabara de ver, era apenas o início de algo muito vasto, e magnífico, a magia. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Bom pessoal, esse foi meu primeiro conto baseado no Tibia. Se vocês gostaram, comentem ai que eu vou dando continuidade à história. OBS: Saiu 2 tópicos porque eu tava pelo celular, peço desculpas à todos.
    1 ponto
  11. Basicamente isso: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 10000) setConditionParam(condition, CONDITION_PARAM_SKILL_MELEE, 1) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, 1) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 1) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, 1) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setCombatCondition(combat, condition) local outfit = { lookType = 31 , lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0} function undoTransform(cid, itemid1, itemid2) if getPlayerItemCount(cid, itemid1) > 0 then local item = getPlayerItemById(cid, true, itemid1) doTransformItem(item.uid, itemid2) end end function onCastSpell(cid, var) if getPlayerItemCount(cid, 2250) > 0 then local item = getPlayerItemById(cid, true, 2250) doTransformItem(item.uid, 2502) addEvent(undoTransform, 1000, cid, 2502, 2250) doSetCreatureOutfit(cid, outfit, 1000) return doCombat(cid, combat, var) end return false end Agora tem que criar um storage pra controlar isso e adicionar um check no login.lua, se o player logar no meio da magia, quando ele entrar novamente o item retornará ao anterior. Abraços,
    1 ponto
  12. felzan

    Spell de 'Dbuff'

    Deve ser a versão entao, pq fiz pra 1.x Faz mt tempo que não faço nada pra versões antigas. Vai ter de traduzir de 1.x pra 0.4
    1 ponto
  13. 1 ponto
  14. Pera, deixa eu ver se eu entendi: O player usa a magia, tudo aquilo acontece e o item x vira y? Após um tempo T y volta a ser x e os efeitos passam, correto?
    1 ponto
  15. Benny

    Herói

    Ficar o dia todo na seçao de suporte eh motivo pra receber o cargo sim, lobo Voce ajudou bastante, sim. E merece rsrs E realmente, existem pessoas que merecem bem mais que a pip, mas uma coisa de cada vez rsrs
    1 ponto
  16. SamueLGuedes

    Dual Wield || Weapons for tfs (1.x)

    Entendi, bem legal, vai ser super útil, parabéns pelo script xD.
    1 ponto
  17. e se ele não possuir esse item 2250? a magia não irá funcionar? E se ele usar a spell e jogar fora o item 2502?
    1 ponto
  18. "Como posso pegar um valor da database e colocar em uma variável: Ex: Variavelid = Valor do id da tabela players" em geral os servidores utilizam a função db.getResult pra pegar o resultado de uma query na database, porém isso muda com a versão. "E como pegar o ultimo ID criado?" utilize a query na database SELECT * from players ORDER BY id DESC LIMIT 1 Selecionar tudo de players, ordenar por id de forma descendente e pegar só o primeiro. "Esses IDs das tabelas são gerados automaticamente em sequencia?" Depente, id do que? se for de players, sim pois eles possuem um trigger (ativador) que cada vez que uma conta é inserida o id é auto incrementado (se era 15, vira 16 no novo)
    1 ponto
  19. Bluester

    ALTERA SCRIPT

    altere o local tempo = 2 -- Quanta horas ele vai usar o comando novamente ? ali está 2 = 2 horas. para local tempo = 168 -- Quanta horas ele vai usar o comando novamente ? ali está 168 = 1 semana.
    1 ponto
  20. 1 ponto
  21. Nossa... muito legal, parabéns pelo script xD. só uma dúvida, funcionaria para OTC?
    1 ponto
  22. Beeki

    Herói

    @@Danihcv, prazer. Fábio. :lolz:
    1 ponto
  23. Será que esse resolve? http://www.xtibia.com/forum/topic/195776-swelia-acc-maker-7x/
    1 ponto
  24. Administrador

    Mapa não mostra nada.

    Não é erro, é um aviso de que o mapa foi importado. Veja se o mapa ainda não aparece após clicar em ok.
    1 ponto
  25. Administrador

    Herói

    Irei avaliar com a equipe @@SkyDangerous :biggrin:
    1 ponto
  26. SkyDangerous

    Herói

    No caso de mim Eu já fui da equipe, participei junto com o guh por algum tempo quando ele ficou mais ativo no fórum, ajudei o fórum tanto no suporte como no conteúdo e estou esperando meu computador novo para voltar a ficar ativo.
    1 ponto
  27. Dennyz Dias

    Qual Sistema Esolher ?

    Assim Vlw, Tambem estou usando debian 6 gostei muito tambem so que pensei algum outro fosse bem melhor
    1 ponto
  28. Use um RME diferente, talvez um extendido, caso sua SPR seja extendida. se você não sabe extender o RME, utilize esse Link
    1 ponto
  29. GOD Bon

    Herói

    Fico muito honrado em saber que você tem o Yurots 8.1, foi um grande servidor na época. Obrigado por contribuir pela minha reavaliação.
    1 ponto
  30. kaleudd

    Qual Sistema Esolher ?

    usei debian 6 e debian 7,os dois são muito bom,pouca diferença,recomendo debian 6 ou 7,ai fica seu critério.
    1 ponto
  31. Uma pequena alteração no script acima, porem que pode facilitar a configuração e o entendimento do sistema. function onCastSpell(cid, var) local time = 5 local creature = { "Demon", "Demon", "Dragon" } for index, creatureName in ipairs(creature) do local monster = doSummonCreature(creatureName, getThingPos(cid)) doConvinceCreature(cid, monster) creature[index] = monster end addEvent(function() for i = 1, #creature do if isCreature(creature[i]) then doRemoveCreature(creature[i]) end end end, 1000 * time) return true end
    1 ponto
  32. Caronte

    Herói

    Realmente, e é por isso que ainda estamos reavaliando, e você está contribuindo com a reavaliação
    1 ponto
  33. Henrique Moura

    Herói

    pelo amor de deus né cara acabou com o titulo
    1 ponto
  34. Administrador

    Herói

    Se sugerir alguns nomes, dos que foram removidos para avaliação ou dos que nunca tiveram o cargo, teremos o prazer de avaliar. Estes dias de análises percebi junto com meus colegas da equipe, que algumas coisas precisam ser reescritas e seguidas de outra forma, graças às opiniões dos membros.
    1 ponto
  35. Administrador

    OpenTibia e o Socialismo

    Nightmare, reveja alguns conceitos, eu já não consigo entender o que você está querendo dizer, e algumas coisas que você está falando atualmente não fazem sentido pra mim. De qualquer forma, estou no meio do muro, quero compreender os dois lados de uma maneira sólida, peço que não transformem essa discussão em uma briga, ou terei que fechar o tópico.
    1 ponto
  36. NightmareStalker

    Cargo Heroi

    Só acho que se removeu os conteúdos, deveria perder os Reps...
    1 ponto
  37. @@lokoga Se não me engano, é no accountmanagement.php Se não for lá, vc tem que editar o lvl e exp dos samples na database. Boa sorte
    1 ponto
  38. Skulls

    Spell de 'Dbuff'

    addDamageCondition(CONDITION_FIRE, rounds, time, value)
    1 ponto
  39. Caronte

    [DUVIDA] Nessa spell

    Cara você não pode dar espaços em variáveis. Variáveis são uma só palavra. essas variáveis que você criou: demon sumor best summon as duas não funcionarão corretamente... O que nós usamos para dar espaço nas variáveis é _ (underline) , logo sua variável ficaria assim: demon_sumor best_summon Também usamos o esquema de letras maiúsculas, como você vê nas funções Lua: demonSumor bestSummon Toma a spell, veja se tem mais algum erro (dei uma olhada só superficial) function onCastSpell(cid, var) local removeTime = 60 local summons = getCreatureSummons(cid) local MaximoSummon = 4 if (#summons == MaximoSummon) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você Já tem 4 Summons.") end if( #summons < MaximoSummon) then local anyPos, pos = {x = 0, y = 0, z = 0}, getCreaturePosition(cid) local toPos = { {x = pos.x + 1, y = pos.y, z = pos.z}, {x = pos.x - 1, y = pos.y, z = pos.z}, {x = pos.x, y = pos.y + 1, z = pos.z}, {x = pos.x, y = pos.y - 1, z = pos.z} } if getPlayerVocation(cid) == 6 then local demon_summor = doSummonCreature("Summon Master", pos) doConvinceCreature(cid, demon_summor) setCreatureMaxHealth(demon_summor, getCreatureMaxHealth(cid)) doCreatureAddHealth(demon_summor, getCreatureMaxHealth(cid)) setCreatureMaxMana(demon_summor, getCreatureMaxMana(cid)) doCreatureAddMana(demon_summor, getCreatureMaxMana(cid)) doChangeSpeed(demon_summor, getCreatureBaseSpeed(cid)) doSetCreatureOutfit(demon_summor, getCreatureOutfit(cid), -1) end if getPlayerVocation(cid) == 7 then local best_summon = doSummonCreature("best summon", pos) doConvinceCreature(cid, best_summon) setCreatureMaxHealth(best_summon, getCreatureMaxHealth(cid)) doCreatureAddHealth(best_summon, getCreatureMaxHealth(cid)) setCreatureMaxMana(best_summon, getCreatureMaxMana(cid)) doCreatureAddMana(best_summon, getCreatureMaxMana(cid)) doChangeSpeed(best_summon, getCreatureBaseSpeed(cid)) doSetCreatureOutfit(best_summon, getCreatureOutfit(cid), -1) end end return true end Também editei a função table.maxn(), para pegar o número de indexes da sua tabela, basta colocar # na frente do nome dela, assim: #tabela Também vi que sua magia ainda não tá pronta. Quando estiver, que tal postar aqui? Com certeza terá meu REP + Aaaaah, mais uma coisinha, seria legal você criar uma função para isso, pois você tá repetindo um número muito grande de linhas... vou mostrar como: function createSummon(cid, summon, pos) local summonCid = doSummonCreature(summon, pos) doConvinceCreature(cid, summonCid) setCreatureMaxHealth(summonCid, getCreatureMaxHealth(cid)) doCreatureAddHealth(summonCid, getCreatureMaxHealth(cid)) setCreatureMaxMana(summonCid, getCreatureMaxMana(cid)) doCreatureAddMana(summonCid, getCreatureMaxMana(cid)) doChangeSpeed(summonCid, getCreatureBaseSpeed(cid)) doSetCreatureOutfit(summonCid, getCreatureOutfit(cid), -1) return true end function onCastSpell(cid, var) local removeTime = 60 local summons = getCreatureSummons(cid) local MaximoSummon = 4 if (#summons == MaximoSummon) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você Já tem 4 Summons.") end if(#summons < MaximoSummon) then local anyPos, pos = {x = 0, y = 0, z = 0}, getCreaturePosition(cid) local toPos = { {x = pos.x + 1, y = pos.y, z = pos.z}, {x = pos.x - 1, y = pos.y, z = pos.z}, {x = pos.x, y = pos.y + 1, z = pos.z}, {x = pos.x, y = pos.y - 1, z = pos.z} } if getPlayerVocation(cid) == 6 then createSummon(cid, "Summon Master", pos) end if getPlayerVocation(cid) == 7 then createSummon(cid, "Best Summon", pos) end end return true end Se der erro posta aqui...
    1 ponto
  40. Obrigado pelos comentários!!! O servidor está bem legal e graças a Deus está enchendo!! Vale apena dar uma conferida
    1 ponto
  41. Josegvb

    Perfect nick system 100%

    ^^ nem quero sair do lixo pda pois trabalhar com sourcers é complicado e minha equipe é: eu, eu e eu ^^ entao to de boa com pda só mas msm assim reputei valeu pela contribuçao
    1 ponto
  42. Pera aí, esqueci de uma coisa, as portas já tem um arquivo. vá na pasta others/doors.lua em baixo de: function onUse(cid, item, fromPosition, itemEx, toPosition) , e coloque isso if item.uid == 1234 then local items = { --[Quantidade] = ITEMID, [10] = 2160, [2] = 2148, } for count, id in pairs(items) do if getPlayerItemCount(cid, id) < count then doPlayerSendTextMessage(cid,20, "Voce nao tem "..(count - getPlayerItemCount(cid, id)).." ".. getItemNameById(id).." para passar.") doSendMagicEffect(fromPosition, CONST_ME_POFF) return false end end doorEnter(cid, item, toPosition) return true end Na porta você deve colocar uniqueId 1234, você pode alterar no script o 1234 para outro, e colocar no remeres esse outro... o player só passará se tiver todos os items da tabela, seguindo o exemplo...
    1 ponto
  43. Kydrai

    Perfect nick system 100%

    Precisa remover o break da função luaDoCreatureSetNick para o nome ser enviado para todos os jogadores na tela. E também tem que arrumar o que a função lua irá retornar, no caso acho que seria bom um false ou true. O certo seria assim: int32_t LuaScriptInterface::luaDoCreatureSetNick(lua_State* L) { //doCreatureSetNick(cid, nick) ScriptEnviroment* env = getEnv(); std::string nick = popString(L); Creature* creature = env->getCreatureByUID(popNumber(L)); if (creature) { SpectatorVec list; g_game.getSpectators(list, creature->getPosition()); Player* player = NULL; creature->Nick = nick; for (SpectatorVec::const_iterator it = list.begin(); it != list.end(); ++it) { if (player = (*it)->getPlayer()) { player->sendCreatureNick(creature); } } lua_pushboolean(L, true); } else { lua_pushboolean(L, false); } return 1; }
    1 ponto
  44. Adicionado ao tópico: Pokemon Dash v10(Revolution) by valakas ------ Adicionado ao tópico: Dragon Ball - DBRelated 1.2 + Site + Data + Sources posted by AnimalPak ------ Adicionado ao tópico: Pokémon Draw (Linux) by Sickcunt
    1 ponto
  45. Whither

    Piso De Level

    aew galera sou novo aqui vamos la vo postar um movements, que so passa pela position se tiver tal level. ex: so passa pela position x:100 y:50 z:7 se tiver level 300+ Va em movements/scripts e crie um bloco de notas e renomei para level.lua. Depois abra o bloco de notas e bota isso abaixo: function onStepIn(cid, item, position, fromPosition) level = 300 if getPlayerLevel(cid) < level then doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED) doPlayerSendCancel(cid,"Somente level " .. level .. " ou mais podem passar aqui.") end return TRUE end Depois Va em movements.xml e bote: <movevent type="StepIn" uniqueid="13550" event="script" value="level.lua"/> para edita o level que passa pela position se vai em movements/scripts level.lua na parte (level: 300) você edita o level que você deseja. para edita a animação quando você não tem level para passar, nessa parte (doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED) a na parte MAGIC_RED e o brilho vermelho você pode botar azul ou outro ex;MAGIC_BLUE. tambem pode edita o texto quando você não tem level para passar, nessa parte (doPlayerSendCancel(cid,"Somente level " .. level .. " ou mais podem passar aqui.") Você so mexe na parte:"somente pra la>" e tambem não mexa na parte "..level.." edite ex: você não passar Por aqui so "..level.." passa. se você tiver mapeditor, click com o botão direito no chão va em (propriedades) ai na unique bote (13550) vlw, Galera Aqui Foi Meu Primeiro poster Qualquer erro me avisem deixem comentarios porfavor By: whither
    1 ponto
  46. Night Wolf

    Monstros se matando

    Rapaz, se for 0.3~0.4 vc tem uma gama infinita de creaturescripts pra brincar.. onAttack onFollow onTarget Experimenta cada um deles com return false e verifica qual que impede o monstro de seguir o player. Não sei se vou levar advertencia por postar link de outros fóruns mas não tem como eu copiar todo o contéudo que eu escrevi lá aqui. To meio sem tempo pra ficar abrindo sv e fazendo testes, mas prometo q se vc não conseguir eu vou fazer de tudo pra tentar algo aqui também. Boa sorte amigo, e se conseguir, por favor compartilhe a solução ^^
    -1 pontos
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...