Postado Fevereiro 27, 2017 8 anos Alguém ajuda a fazer um script que checa o outfit?? Ex: </outfit> <outfit id="9" premium="yes"> <list gender="0" lookType="148" name="Druid"/> <list gender="1" lookType="144" name="Druid"/> checar se alguém ta usando Druid full Editado Fevereiro 27, 2017 8 anos por kiinho (veja o histórico de edições)
Postado Fevereiro 27, 2017 8 anos Esse é um esboço: local outfit = getCreatureOutfit(cid) funcão onSay, onUse, onThink, onTime, onStepIn if outfit.lookType == 144 and outfit.lookAddons == 3 then fazer x coisa elseif outfit.lookType == 148 and outfit.lookAddons == 3 then fazer a mesma coisa x end return true end Mas preciso saber exatamente o que o script faz pra poder escrever ele uahuah GitHub: https://github.com/s3kk Conteúdo: [SERVER] Heromassa[GESIOR] Gesior 2012 modificado por Sekk[GESIOR] Shop Addons & Mounts - TFS 1.x[GESIOR] Outfitter para Characters e Rank[SISTEMA] Castle 24h[TALKACTION] Multi Element Wand[ACTION] Multi Elemental Arrow & Shield[PROGRAMAÇÃO] Compilar TFS 0.4 no Linux[PROGRAMAÇÃO] Compilando TFS 0.4 no MSVC(x64 e x32) [INFRAESTRUTURA] Configuração COMPLETA Google VM + Tibia 11.x
Postado Fevereiro 27, 2017 8 anos Autor Em 27/02/2017 em 02:47, Sekk disse: Esse é um esboço: local outfit = getCreatureOutfit(cid) funcão onSay, onUse, onThink, onTime, onStepIn if outfit.lookType == 144 and outfit.lookAddons == 3 then fazer x coisa elseif outfit.lookType == 148 and outfit.lookAddons == 3 then fazer a mesma coisa x end return true end Mas preciso saber exatamente o que o script faz pra poder escrever ele uahuah Mostrar conteúdo oculto local water = {490, 491, 492, 493, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625} local combat = createCombatObject() local meteor = createCombatObject() setCombatParam(meteor, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(meteor, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatFormula(meteor, COMBAT_FORMULA_LEVELMAGIC, -7.2, -400, -7.3, -400) local meteor_water = createCombatObject() setCombatParam(meteor_water, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(meteor_water, COMBAT_PARAM_EFFECT, CONST_ME_LOSEENERGY) setCombatFormula(meteor_water, COMBAT_FORMULA_LEVELMAGIC, -7.2, -400, -7.3, -400) combat_arr = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local combat_area = createCombatArea(combat_arr) setCombatArea(combat, combat_area) local function meteorCast(p) doCombat(p.cid, p.combat, positionToVariant(p.pos)) end function onTargetTile(cid, pos) if (math.random(0, 0) == 0) then local ground = getThingfromPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 1}) if (isInArray(water, ground.itemid) == TRUE) then local newpos = {x = pos.x + 9, y = pos.y - 8, z = pos.z} doSendDistanceShoot(newpos, pos, 28) addEvent(meteorCast, 100, {cid = cid, pos = pos, combat = meteor_water}) else local newpos = {x = pos.x + 9, y = pos.y - 8, z = pos.z} doSendDistanceShoot(newpos, pos, 28) addEvent(meteorCast, 100, {cid = cid,pos = pos, combat = meteor}) end end end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) return doCombat(cid, combat, var) end aqui vai uma spell, meu objetivo é, fazer um check no outfit se for 9 = druid (mas tem que ser o addon completo) ele adiciona paralyze aqui vai o paralyze eu separei o paralyze da spell, espero que consiga ajeitar ou então adicione uma paralyze nova se o player não tiver o addon, usa a spell normal (sem paralyze) com addon ( add paralyze) Mostrar conteúdo oculto local stun = createConditionObject(CONDITION_PARALYZE) setConditionParam(stun, CONDITION_PARAM_TICKS, 20000) setConditionFormula(stun, -0.9, 1, -0.9, 1) setCombatCondition(meteor, stun) local function stunEffect(cid) doSendMagicEffect(getThingPos(cid), CONST_ME_STUN) end se conseguir REP+
Postado Fevereiro 27, 2017 8 anos Em 27/02/2017 em 03:45, kiinho disse: Mostrar conteúdo oculto Mostrar conteúdo oculto local water = {490, 491, 492, 493, 4608, 4609, 4610, 4611, 4612, 4613, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625} local combat = createCombatObject() local meteor = createCombatObject() setCombatParam(meteor, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE) setCombatParam(meteor, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK) setCombatFormula(meteor, COMBAT_FORMULA_LEVELMAGIC, -7.2, -400, -7.3, -400) local meteor_water = createCombatObject() setCombatParam(meteor_water, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(meteor_water, COMBAT_PARAM_EFFECT, CONST_ME_LOSEENERGY) setCombatFormula(meteor_water, COMBAT_FORMULA_LEVELMAGIC, -7.2, -400, -7.3, -400) combat_arr = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 3, 1, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0} } local combat_area = createCombatArea(combat_arr) setCombatArea(combat, combat_area) local function meteorCast(p) doCombat(p.cid, p.combat, positionToVariant(p.pos)) end function onTargetTile(cid, pos) if (math.random(0, 0) == 0) then local ground = getThingfromPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 1}) if (isInArray(water, ground.itemid) == TRUE) then local newpos = {x = pos.x + 9, y = pos.y - 8, z = pos.z} doSendDistanceShoot(newpos, pos, 28) addEvent(meteorCast, 100, {cid = cid, pos = pos, combat = meteor_water}) else local newpos = {x = pos.x + 9, y = pos.y - 8, z = pos.z} doSendDistanceShoot(newpos, pos, 28) addEvent(meteorCast, 100, {cid = cid,pos = pos, combat = meteor}) end end end setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile") function onCastSpell(cid, var) return doCombat(cid, combat, var) end aqui vai uma spell, meu objetivo é, fazer um check no outfit se for 9 = druid (mas tem que ser o addon completo) ele adiciona paralyze aqui vai o paralyze eu separei o paralyze da spell, espero que consiga ajeitar ou então adicione uma paralyze nova se o player não tiver o addon, usa a spell normal (sem paralyze) com addon ( add paralyze) Mostrar conteúdo oculto Mostrar conteúdo oculto local stun = createConditionObject(CONDITION_PARALYZE) setConditionParam(stun, CONDITION_PARAM_TICKS, 20000) setConditionFormula(stun, -0.9, 1, -0.9, 1) setCombatCondition(meteor, stun) local function stunEffect(cid) doSendMagicEffect(getThingPos(cid), CONST_ME_STUN) end se conseguir REP+ outfit 9? GitHub: https://github.com/s3kk Conteúdo: [SERVER] Heromassa[GESIOR] Gesior 2012 modificado por Sekk[GESIOR] Shop Addons & Mounts - TFS 1.x[GESIOR] Outfitter para Characters e Rank[SISTEMA] Castle 24h[TALKACTION] Multi Element Wand[ACTION] Multi Elemental Arrow & Shield[PROGRAMAÇÃO] Compilar TFS 0.4 no Linux[PROGRAMAÇÃO] Compilando TFS 0.4 no MSVC(x64 e x32) [INFRAESTRUTURA] Configuração COMPLETA Google VM + Tibia 11.x
Postado Fevereiro 27, 2017 8 anos Autor Em 27/02/2017 em 03:52, Sekk disse: outfit 9? </outfit> <outfit id="9" premium="yes"> <list gender="0" lookType="148" name="Druid"/> <list gender="1" lookType="144" name="Druid"/> kkk foi o que vc tinha feito xd @Sekk
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.