Jump to content

Search the Community

Showing results for tags 'weapon'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Sou

Found 11 results

  1. Gostaria de saber se tem como por para que se o player estiver com um item de sword fique mostrando só as skills (ML, sword, shielding e fishing), mesmo processo se for club, axe ou distance, e obviamente se não tiver nenhum item na mão apareça o Fist
  2. Olá Xtibianos! Vim trazer este script bem criativo. Ele permite você mudar o elemento da wand/rod que escolher. Siga as instruções para que funcione corretamente. Créditos: StrutZ (Otland) Jano (Otland) Non Sequitur (Otland) EXPLICAÇÃO http://imgur.com/kvBzDh5 REQUISITOS INFORMAÇÕES -- Config-- Set wand how the wand deals damageDamageTypeWand = { values = false, -- If this is set to true then it will use the min and max values. If set to false the wand will use the formula -- Damage Values min/max wandMinDam = 20, wandMaxDam = 50, -- Damage Formula formula = { wandMinDam = function(level, maglevel) return -((level / 5) + (maglevel * 1.4) + 8) end, wandMaxDam = function(level, maglevel) return -((level / 5) + (maglevel * 2.2) + 14) end, }}-- Modal window config and storage idlocal config = { storage = 10009, titleMsg = "Change Weapon Damage Type", mainMsg = "Choose a damage type from the list",-- End Config -- Damage Table [1] = {element = "Holy"}, [2] = {element = "Fire"}, [3] = {element = "Death"}, [4] = {element = "Poison"}, [5] = {element = "Energy"}, [6] = {element = "Earth"}, [7] = {element = "Ice"},} INSTALAÇÃO Instale o Modal Window Helper, citado acima Registre o script /data/actions/actions.xml adicionando esta linha (Substituindo "ITEMID" com o item que você quiser usar: <action itemid="ITEMID" script="weapon_damage"/> <action actionid="ACTIONID" script="weapon_damage"/> Crie um novo documento de texto em /data/actions/scripts e nomeie para "weapon_damage.lua" e cole o seguinte: -- Config -- Set wand how the wand deals damageDamageTypeWand = { values = false, -- If this is set to true then it will use the min and max values. If set to false the wand will use the formula -- Damage Values min/max wandMinDam = 20, wandMaxDam = 50, -- Damage Formula formula = { wandMinDam = function(level, maglevel) return -((level / 5) + (maglevel * 1.4) + 8) end, wandMaxDam = function(level, maglevel) return -((level / 5) + (maglevel * 2.2) + 14) end, }} -- Modal window config and storage idlocal config = { storage = 10009, titleMsg = "Change Weapon Damage Type", mainMsg = "Choose a damage type from the list",-- End Config -- Damage Table [1] = {element = "Holy"}, [2] = {element = "Fire"}, [3] = {element = "Death"}, [4] = {element = "Poison"}, [5] = {element = "Energy"}, [6] = {element = "Earth"}, [7] = {element = "Ice"},} function onUse(player, item, fromPosition, itemEx, toPosition, isHotkey) player:sendDamageWindow(config) return trueend Adicione esta linha no seu global.lua: dofile('data/lib/weapon_damage.lua') Crie um novo documento de texto em /data/lib/ e renomeie para "weapon_damage.lua" e cole isto: function Player:sendDamageWindow(config) local function buttonCallback(button, choice) -- Modal window functionallity if button.text == "Confirm" then self:setStorageValue(10009, choice.id) end end -- Modal window design local window = ModalWindow { title = config.titleMsg, -- Title of the modal window message = config.mainMsg, -- The message to be displayed on the modal window } -- Add buttons to the window (Note: if you change the names of these you must change the functions in the modal window functionallity!) window:addButton("Confirm", buttonCallback) window:addButton("Cancel") -- Set what button is pressed when the player presses enter or escape window:setDefaultEnterButton("Confirm") window:setDefaultEscapeButton("Cancel") -- Add choices from the action script for i = 1, #config do local o = config[i].element window:addChoice(o) end -- Send the window to player window:sendToPlayer(self)end Registre o item em /data/weapons/weapons.xml Adicionando essa linha: Essa linha é para se você estiver usando wand <wand id="ITEM ID HERE" level="300" mana="20" script="weapon_damage.lua"><!-- Shadow's Sceptre --> <vocation name="Sorcerer" /> </wand> Crie um novo documento de texto em /data/weapons/scripts e nomeie para "weapon_damage.lua" e cole: local DamageTypes = { [1] = {DamageType = COMBAT_HOLYDAMAGE, DamageEffect = CONST_ANI_HOLY}, [2] = {DamageType = COMBAT_FIREDAMAGE, DamageEffect = CONST_ANI_FIRE}, [3] = {DamageType = COMBAT_DEATHDAMAGE, DamageEffect = CONST_ANI_DEATH}, [4] = {DamageType = COMBAT_POISONDAMAGE, DamageEffect = CONST_ANI_POISON}, [5] = {DamageType = COMBAT_ENERGYDAMAGE, DamageEffect = CONST_ANI_ENERGY}, [6] = {DamageType = COMBAT_EARTHDAMAGE, DamageEffect = CONST_ANI_EARTH}, [7] = {DamageType = COMBAT_ICEDAMAGE, DamageEffect = CONST_ANI_ICE}} function onGetFormulaValues(player, level, maglevel) if DamageTypeWand.values == true then min = -(DamageTypeWand.wandMinDam) max = -(DamageTypeWand.wandMaxDam) else min = DamageTypeWand.formula.wandMinDam(level, maglevel) max = DamageTypeWand.formula.wandMaxDam(level, maglevel) end return min, maxend local combat = {}for k, dam_Table in pairs(DamageTypes) do combat[k] = Combat() combat[k]:setParameter(COMBAT_PARAM_BLOCKARMOR, 1) combat[k]:setParameter(COMBAT_PARAM_BLOCKSHIELD, 1) combat[k]:setParameter(COMBAT_PARAM_TYPE, dam_Table.DamageType) combat[k]:setParameter(COMBAT_PARAM_DISTANCEEFFECT, dam_Table.DamageEffect) -- _G Is used to manually define 'onGetFormulaValues' in this loop in doesnt seem to be able to find the function. _G['onGetFormulaValues' .. k] = onGetFormulaValues combat[k]:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues" .. k)end function onUseWeapon(player, var) local value = player:getStorageValue(10009) local combatUse = combat[value] if not combatUse then return true end return combatUse:execute(player, var)end
  3. Então galera, no meu servidor tem um item que encanta armor, legs,weapons... e quando alguém da use em algum item com ele dá esse erro no distro. Alguém me ajuda a resolver??? arm100.lua desde já obrigado!
  4. Queria saber o seguinte qual o type de uma wand que vi uma vez num ot de war que o type dela era como a foto anexada queria saber como colocar esse feito na wand desde ja agradeço.
  5. Boa noite galera do xtibia. Primeiramente não sei se estou na area correta, creio que sim. Eu gostaria de um script que eu possa usar em weapons, um script que é igual wand, mas como arma, porque eu quero transformar um certo item em fist, para que eu possa usar como arma, porque não consigo fazer uma certa arma treinar fist, dai eu queria um script que possa fazer isso por mim sem mecher em item.xml porque nao deu certo. eu uso tfs 1.0 versão 10.80
  6. Boa noite galera do xtibia. Não sei se estou na area correta, se eu não estiver por favor mover, fico muito agradeçido. Bom gostaria de saber como faço uma arma fist fighting, tentei mudar no item.xml <attribute key="weaponType" value="fist" /> mas da o seguinte erro --------->
  7. Introdução: É uma wand que ataca vários elementos aleatoriamente, porém não somente isso, você pode travar um único elemento através de uma talkaction. OBS: Testado em tfs 0.4 Instalação: Vá até data/weapons/scripts e crie um arquivo chamando wandelementos.lua e coloque o seguinte conteúdo: local min, max = 1700,1900 --Ataque mínino e ataque máximo local w = { [1] = {ef = 36, sh = 3, dmg = COMBAT_FIREDAMAGE}, [2] = {ef = 42, sh = 28, dmg = COMBAT_ICEDAMAGE}, [3] = {ef = 46, sh = 38, dmg = COMBAT_POISONDAMAGE}, [4] = {ef = 17, sh = 31, dmg = COMBAT_DEATHDAMAGE}, [5] = {ef = 47, sh = 35, dmg = COMBAT_ENERGYDAMAGE}, [6] = {ef = 36, sh = 31, dmg = COMBAT_PHYSICALDAMAGE}, [7] = {ef = 49, sh = 37, dmg = COMBAT_HOLYDAMAGE} } function onUseWeapon(cid, var) local effect = getPlayerStorageValue(cid, 4561) local target = getCreatureTarget(cid) if target ~= 0 then local wx = w[effect] or w[math.random(#w)] doSendDistanceShoot(getThingPos(cid), getThingPos(target), wx.sh) addEvent(doAreaCombatHealth, 100, cid, wx.dmg, getThingPos(target), 0, -min, -max, wx.ef) end return true end Altere o min e max de acordo com sua necessidade. Agora vá em data/weapons/weapons.xml e coloque o seguinte conteúdo: <wand id="7424" level="100" mana="30" event="script" value="wandelementos.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5" showInDescription="0"/> <vocation id="6" showInDescription="0"/> </wand> Altere o id, level e mana de acordo com sua necessidade. Agora vamos configurar a talkaction que troca os elementos. Vá até data/talkactions/scripts e crie um arquivo chamando elementos.lua e coloque o seguinte conteúdo: local config = { wand_id = 7424, --ID da wand types = { ["all"] = -1, --Ataca os elementos aleatoriamente ["fire"] = 1, ["ice"] = 2, ["poison"] = 3, ["death"] = 4, ["energy"] = 5, ["physical"] = 6, ["holy"] = 7 } } function onSay(cid, words, param) local wand_left = getPlayerSlotItem(cid, CONST_SLOT_LEFT).itemid local wand_right = getPlayerSlotItem(cid, CONST_SLOT_RIGHT).itemid if wand_left ~= config.wand_id and wand_right ~= config.wand_id then doPlayerSendCancel(cid, "Voce deve estar equipado com uma ".. getItemNameById(config.wand_id) .." para usar este comando.") return true end if config.types[param] then setPlayerStorageValue(cid, 4561, config.types[param]) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Sua wand ira atacar ".. param .. ".") else local str = "" for i, _ in pairs(config.types) do str = str .. ", ".. i end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ORANGE, "Os elementos disponiveis sao: ".. string.sub(str, 3, #str) ..".") end return true end Altere o wand_id conforme configurado em weapons. Agora vá em data/talkactions/talkactions.xml e coloque o seguinte conteúdo: <talkaction words="!elemento;/elemento" event="script" value="elementos.lua"/> Exemplo de funcionamento: Agradeço MaXwEllDeN pela ajuda.
  8. Bom, não tem muito o que explicar, então vou ser direto: Paralyze Sword, é um script que adiciona o efeito paralyse na sword. Vamos ao script: Em data/weapons/weapons.xml adicione a Tag <melee id="2392" level="100" unproperly="1" event="script" value="paralyze sword.lua"/> e em data/weapons/scripts adicione um arquivo com o nome de paralyze sword.lua e cole o script a seguir. local duration = 3 * 1000 local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, true) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_FORMULA_SKILL, 1, 0, 1, 0) local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, duration) setConditionFormula(condition, -0.9, 0, -0.9, 0) setCombatCondition(combat, condition) function onUseWeapon(cid, var) return doCombat(cid, combat, var) end creditos: Script Factory
  9. Bom, criei esse tópico, para ensinar como fazer aquelas armas que soltam 6 elementos igual Servs do tipo "kamikaze". Vejo muita gente querendo saber como criar essas armas e vejo poucos Tutoriais ensinando a criaras. Bom, Chega de Papo furado e vamos a o Scripter Vá na pasta do seu Ot em data/items Abra o items.xml, procure pelo item que você vai usar e substitua por isso: Vermelho= Id do Item que vai soltar os 6 elementos Verde= Nome do Item que vai soltar os 6 elementos Azul claro= Peso do item que vai soltar os 6 elementos Azul escuro= Tipo do Item que vai soltar os 6 Elementos ( Wand para Armas de Mage)-(Sword para armas de Knight)-(Distance para armas de Paladin) Marrom= Quantos Sqm o item vai atingir o Inimigo (Se for arma de Knight tipo Sword, você tira essa Opção) Agora vá em data/weapons/scripts e Crie um arquivo com nome de seiselementos.lua e cole isso lá: w = { [1] = {ef = 36, sh = 3, dmg = COMBAT_FIREDAMAGE}, [2] = {ef = 42, sh = 28, dmg = COMBAT_ICEDAMAGE}, [3] = {ef = 45, sh = 38, dmg = COMBAT_POISONDAMAGE}, [4] = {ef = 17, sh = 31, dmg = COMBAT_DEATHDAMAGE}, [5] = {ef = 11, sh = 35, dmg = COMBAT_ENERGYDAMAGE}, [6] = {ef = 31, sh = 35, dmg = COMBAT_PHYSICALDAMAGE}, [7] = {ef = 49, sh = 37, dmg = COMBAT_HOLYDAMAGE} } function onUseWeapon(cid, var) min, max = 100 , 200 -- dano minimo e maximo target = getCreatureTarget(cid) wx = w[math.random(1, #w)] doSendDistanceShoot(getThingPos(cid), getThingPos(target), wx.sh) addEvent(doAreaCombatHealth, 100, cid, wx.dmg, getThingPos(target), 0, -min, -max, wx.ef) end return true end Agora vá em data/weapons abra o seu weapons.xml e cole Isto lá: Se for Wand ou Rod: <wand id="123" level="20" mana="10" min="0" max="0" type="physical" event="script" value="seislementos.lua"> <!-- New Wand --> <vocation id="2"/> <vocation id="6"/> </wand> Se for Sword,axe ou club: <melee id="123" level="60" unproperly="1" event="script" value="seiselementos.lua"/> <vocation id="4"/> <vocation id="8"/> </melee> Se for Star,spear: <distance id="123" level="20" event="script" value="seiselementos.lua"/>"<!-- New Star --> Se for Arrow ou Bolt: <distance id="123" event="script" value="seislementos.lua"/> Como Configurar: Vermelho= Id da Arma Verde= Level para usar a Arma Marrom= Mana que gastara quando a Arma for usada Azul claro= Deixe os dois em 0, o Dano da Wand ou Rod não e definido por ai, e sim la no arquivo.lua dela como mostrei acima /\ Azul escuro= Id da Vocation que poderam usar a Arma Pronto, Agora sua Arma esta Pronta !
  10. To querendo um sistema para enchantar armaduras swords axe spear boots só equipes armaduras e weapons por exemplo uma scroll enchant = (rune por exemplo) 1 carga se falhar a armadura ou weapon quebra e quando enchantar na armadura ou weapon aparecerá por exemplo: Spike Sword (Atk: 31 Def: 12) +1 Spike Sword (Atk: 31 Def: 12) +2 cada enchant que conseguir enchantar aumentará +1 ai teria as rune Scroll enchant Weapon 30% chance Scroll enchant Armor 30% chance Blessed Scroll enchant Weapon 100% chance Blessed Scroll enchant Armor 100% chance
  11. Ae galera scripter gostaria de um script tipo "STUN" assim gostaria de tal arma dar stun entende? tivesse % de chance de stunar o oponente enquando voce ataka ele !! quem poder ajudar vlw !! stun= deixar o cara parado no sqm por algun segundos... slow= deixar o cara lento , tipo paralyse do tibia.
×
×
  • Create New...