Ir para conteúdo

Featured Replies

Postado

TSF 1.0

 

to tentando fazer uma sword atacar todos os elementos porem em um 3x3 alguém ajuda

 

script

Spoiler

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}
}

local area = createCombatArea( { {1, 1, 1}, {1, 3, 1}, {1, 1, 1} } )
setCombatArea(combat, area)

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

erro aparecendo

Spoiler

[Error - Test Interface]
data/weapons/scripts/axearea.lua
Description:
(LuaInterface::luaSetCombatArea) Combat not found

 

  • 4 weeks later...
Postado
-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Fire = createCombatObject()
setCombatParam(combat0_Fire, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat0_Fire, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatArea(combat0_Fire,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Fire(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat0_Fire, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Fire")
local dfcombat0_Fire = {CONST_ANI_WHIRLWINDSWORD,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}

-- Areas/Combat for 500ms
local combat5_Ice = createCombatObject()
setCombatParam(combat5_Ice, COMBAT_PARAM_EFFECT, CONST_ME_ICEAREA)
setCombatParam(combat5_Ice, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatArea(combat5_Ice,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Ice(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat5_Ice, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Ice")
local dfcombat5_Ice = {CONST_ANI_WHIRLWINDSWORD,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}

-- Areas/Combat for 1000ms
local combat10_Poison = createCombatObject()
setCombatParam(combat10_Poison, COMBAT_PARAM_EFFECT, CONST_ME_POISONAREA)
setCombatParam(combat10_Poison, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE)
setCombatArea(combat10_Poison,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Poison(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat10_Poison, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Poison")
local dfcombat10_Poison = {CONST_ANI_WHIRLWINDSWORD,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}

-- Areas/Combat for 1500ms
local combat15_Death = createCombatObject()
setCombatParam(combat15_Death, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(combat15_Death, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatArea(combat15_Death,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Death(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat15_Death, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Death")
local dfcombat15_Death = {CONST_ANI_WHIRLWINDSWORD,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}

-- Areas/Combat for 2000ms
local combat20_Energy = createCombatObject()
setCombatParam(combat20_Energy, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
setCombatParam(combat20_Energy, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatArea(combat20_Energy,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Energy(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat20_Energy, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Energy")
local dfcombat20_Energy = {CONST_ANI_WHIRLWINDSWORD,1,1,0,1,-1,1,-1,0,-1,-1,0,-1,1,-1,1,0}

-- Areas/Combat for 2500ms
local combat25_Physical = createCombatObject()
setCombatParam(combat25_Physical, COMBAT_PARAM_EFFECT, CONST_ME_DRAWBLOOD)
setCombatParam(combat25_Physical, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat25_Physical, COMBAT_PARAM_BLOCKARMOR, true)
setCombatArea(combat25_Physical,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Physical(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat25_Physical, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Physical")
local dfcombat25_Physical = {CONST_ANI_WHIRLWINDSWORD,1,-1,1,0,1,1,0,1,-1,1,-1,0,-1,-1,0,-1}

-- Areas/Combat for 3000ms
local combat30_Holy = createCombatObject()
setCombatParam(combat30_Holy, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA)
setCombatParam(combat30_Holy, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
setCombatArea(combat30_Holy,createCombatArea({{1, 1, 1},
{1, 2, 1},
{1, 1, 1}}))
function getDmg_Holy(cid, level, maglevel)
	return (242)*-1,(271)*-1 
end
setCombatCallback(combat30_Holy, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Holy")
local dfcombat30_Holy = {CONST_ANI_WHIRLWINDSWORD,1,-1,1,0,1,1,0,1,-1,1,-1,0,-1,-1,0,-1}

-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
	if (isCreature(cid)) then
		doCombat(cid, c, var)
		if (dirList ~= nil) then -- Emit distance effects
			local i = 2;
			while (i < #dirList) do
				doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList[i],y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
				i = i + 2
			end		
		end
	end
end

function onCastSpell(cid, var)
	local startPos = getCreaturePosition(cid)
	RunPart(combat0_Fire,cid,var,dfcombat0_Fire,startPos)
	addEvent(RunPart,500,combat5_Ice,cid,var,dfcombat5_Ice,startPos)
	addEvent(RunPart,1000,combat10_Poison,cid,var,dfcombat10_Poison,startPos)
	addEvent(RunPart,1500,combat15_Death,cid,var,dfcombat15_Death,startPos)
	addEvent(RunPart,2000,combat20_Energy,cid,var,dfcombat20_Energy,startPos)
	addEvent(RunPart,2500,combat25_Physical,cid,var,dfcombat25_Physical,startPos)
	addEvent(RunPart,3000,combat30_Holy,cid,var,dfcombat30_Holy,startPos)
	return true
end

 

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo