
Histórico de Curtidas
-
ADMRagnarok deu reputação a FlameArcixt em !rank Level e Vocation Juntoslocal config = { MaxPlayer = 20, fight_skills = { ['fist'] = 0, ['club'] = 1, ['sword'] = 2, ['axe'] = 3, ['distance'] = 4, ['shielding'] = 5, ['fishing'] = 6, ['dist'] = 4, ['shield'] = 5, ['fish'] = 6, }, other_skills = { ['level'] = "level", ['magic'] = "maglevel", ['health'] = "healthmax", ['mana'] = "manamax" }, vocations = { ['sorcerer'] = {1,5}, ['druid'] = {2,6}, ['paladin'] = {3,7}, ['knight'] = {4,8} } } function onSay(cid, words, param) local store,exausted = 156201,5 local param,str = string.lower(param),"" if not config.fight_skills[param] and not config.other_skills[param] and not config.vocations[param] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "this ranking does not exists.") return true elseif getPlayerStorageValue(cid, store) >= os.time() then doPlayerSendCancel(cid, "wait " .. getPlayerStorageValue(cid, store) - os.time() .. " seconds to use this command again.") return true end str = "--[ RANK "..(param == "" and "LEVEL" or string.upper(param)).." ]--\n\n" query = config.fight_skills[param] and db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..config.fight_skills[param].." ORDER BY `value` DESC;") or config.other_skills[param] and db.getResult("SELECT `name`, `"..config.other_skills[param].."` FROM `players` WHERE `id` > 6 AND `group_id` < 2 ORDER BY `"..config.other_skills[param].."` DESC, `name` ASC;") or db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` <= 2 AND `vocation` = "..config.vocations[param][1].." or `vocation` = "..config.vocations[param][2].." ORDER BY `level` DESC;") if (query:getID() ~= -1) then k = 1 while true do str = str .. "\n " .. k .. ". "..(config.fight_skills[param] and getPlayerNameByGUID(query:getDataString("player_id")) or query:getDataString("name")).." - [" .. query:getDataInt((config.fight_skills[param] and "value" or config.vocations[param] and "level" or config.other_skills[param])) .. "] " k = k + 1 if not(query:next()) or k > config.MaxPlayer then break end end query:free() end doShowTextDialog(cid,6500, str) setPlayerStorageValue(cid, store, os.time()+exausted) return true end Voce precisa editar a tabela vocations, caso contrario, nao vai aparecer
-
ADMRagnarok deu reputação a xWhiteWolf em Sistema de Reset 100%cara, aquilo que eu te passei era pra vc substituir no seu script;;; ficando assim:
local combat = createCombatObject()setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 100, 120, 120, 150) local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, 20000) setConditionParam(condition, CONDITION_PARAM_SPEED, -500) setConditionFormula(condition, -0.9, 1, -0.9, 1) setCombatCondition(combat, condition) local arr = { {0, 0, 0, 0, 0}, {0, 1, 1, 1, 0}, {0, 1, 2, 1, 0}, {0, 1, 1, 1, 0}, {0, 0, 0, 0, 0}, } local area = createCombatArea(arr) setCombatArea(combat, area) function onCastSpell(cid, var) if getPlayerStorageValue(cid, 378378) >=3 then doCombat(cid, combat, var) return true else doPlayerSendCancel(cid, "You need to have at least 3 resets to cast this spell.") return false end end toda vez que quiser editar uma spell pra poder usar só com X resets vc só substitui o functionOnCastSpell por esse daí que eu te passei. Mas mantém a estrutura da spell... se não, não vai funcionar né... auheuhauheuh
-
ADMRagnarok recebeu reputação de djteteh em !rank Level e Vocation Juntosboa, essa eu tmb queria, eu vou adicionar até resets do lado no meu
-
ADMRagnarok deu reputação a Reds em Doom spellCriei uma spell para meu servidor baseada em outros jogos, para criar o script eu utilizei outros dois como base, a partir do script do xWhiteWolf: http://www.tibiaking.com/forum/topic/39391-spell-exori-element/e de um script do Tabz do otland, não possuo o link de onde retirei.
A parte do script do Tabz possuia um bug em que o fear fazia com que os playeres atravessassem paredes, que quando eu fui criar meu script removi o bug nao sei como .
Explicando o que ele faz, quando o jogador ativa a spell, o inimigo alvo fica amaldiçoado, andando aleatoriamente e sofrendo dano de death(configuravel) e ao acabar a spell ele continua levando dano de death por alguns segundos.
Para começar crie um arquivo lua em data>spells>scripts>attack com o nome de Doom
Agora entre em data/spells spells.xml na parte de attack adicione:
Testado em um servidor 8.6 tfs 1.0.
Agradeço denovo ao xWhiteWolf e ao Tabz