TeaM KingS
[center]Ola Convidado, seja bem vindo ao TeaM KingS !

Nós temos tutoriais sobre o WarCraft World Editor: se você tiver alguma duvida pode perguntar que os moderadores ou membros experientes vão lhe ajudar.

Para melhor utilizar nossos recursos é extremamente recomendado que esteja logado em nosso fórum e que leia o nosso regulamento oficial.

Também temos fóruns sobre DotA AllstarS, com guias, estratégias, e muito mais!



Como fazer um Floating Text do Dano de uma Magia???

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Como fazer um Floating Text do Dano de uma Magia???

Mensagem por [UdC]The.Helper em 2011-03-07, 17:29

Eu tentei fazer uma magia que causasse dano extra igual a força do caster entao fiz assim(Nota:A magia é AUTO-CAST) :
Código:
Lightning Lance
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Lightning Lance
    Actions
        Wait 1.00 seconds
        Unit - Cause (Casting unit) to damage (Target unit of ability being cast), dealing (Real((Strength of (Triggering unit) (Exclude bonuses)))) damage of attack type Normal and damage type Normal
        Floating Text - Create floating text that reads (+ + (String(((Real(|cff33ccff)) + (Real((Strength of (Triggering unit) (Exclude bonuses)))))))) above (Target unit of ability being cast) with Z offset 0.00, using font size 8.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
        Floating Text - Change (Last created floating text): Disable permanence
        Floating Text - Change the lifespan of (Last created floating text) to 2.50 seconds
        Floating Text - Change the fading age of (Last created floating text) to 1.00 seconds
        Floating Text - Set the velocity of (Last created floating text) to 90.00 towards 90.00 degrees
Mas ainda nao funciona,aproveitando o topico queria tambem perguntar porque outra magia que eu fiz nao esta funcionando,eu usei um storm bolt como magia base.
Código:
Knock Bolt
Conjura um raio na locação da unidade alvo,esse raio empurrará a unidade a cerca de 500 unidades para trás,causando 100 de dano.
Mas não causa knockback:Trigger 1
Código:
Knock Bolt
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Knock Bolt
    Actions
        Set Angulo_do_Empurrao = (Facing of (Triggering unit))
        Set Unidade_Alvo = (Target unit of ability being cast)
        Trigger - Turn on Knock Bolt 2 <gen>
        Wait 1.00 seconds
        Trigger - Turn off Knock Bolt 2 <gen>
Trigger 2
Código:
Knock Bolt 2
    Events
        Time - Every 0.02 seconds of game time
    Conditions
    Actions
        Unit - Move (Triggering unit) instantly to ((Position of Unidade_Alvo) offset by 10.00 towards Angulo_do_Empurrao degrees)

Desde ja agradeço.



[UdC]The.Helper

Número de Posts : 163
Data de inscrição : 25/09/2010
Reputação : 11 Pontos : 11612

Warning Necropost
0 / 1000 / 100


Voltar ao Topo Ir em baixo

Re: Como fazer um Floating Text do Dano de uma Magia???

Mensagem por [UdC]The.Helper em 2011-03-10, 01:13

Putz ninguem sabe..



[UdC]The.Helper

Número de Posts : 163
Data de inscrição : 25/09/2010
Reputação : 11 Pontos : 11612

Warning Necropost
0 / 1000 / 100


Voltar ao Topo Ir em baixo

Re: Como fazer um Floating Text do Dano de uma Magia???

Mensagem por TroiA em 2011-03-10, 09:51

Knockback em Jass:

Código:

//For all ye JASS' lovers.
function Trig_KnockBackJadd takes real kAng, real kPow, unit kUni, integer kStep returns nothing
    local integer i = 1
    local integer j = 0
    set udg_zzBoolean = false
    loop
        exitwhen i > udg_knockCount
        if not udg_knockZi[i] then
            set udg_zzBoolean = true
            set j = i
            set i = udg_knockCount + 1
        endif
        set i = i + 1
    endloop
    if not udg_zzBoolean then
        set udg_knockCount = udg_knockCount + 1
        set j = udg_knockCount
    endif
    set udg_knockAngle[j] = kAng
    set udg_knockPower[j] = kPow
    set udg_knockUnit[j] = kUni
    set udg_knockTodo[j] = kStep
    set udg_knockShould[j] = kStep
    set udg_knockZi[j] = true
    call EnableTrigger( gg_trg_KnockBackMainJ )
endfunction

function Trig_KnockBackJ_Conditions takes nothing returns boolean
    return GetUnitTypeId(GetAttacker()) == 'hrif'
endfunction

function Trig_KnockBackJ_Actions takes nothing returns nothing
    // Knockback angle:
    set udg_zzReal = Atan2(GetUnitY(GetAttackedUnitBJ())-GetUnitY(GetAttacker()),GetUnitX(GetAttackedUnitBJ())-GetUnitX(GetAttacker()))
    call Trig_KnockBackJadd(udg_zzReal,15,GetAttackedUnitBJ(),12)
endfunction

//===========================================================================
function InitTrig_KnockBackJ takes nothing returns nothing
    set gg_trg_KnockBackJ = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( gg_trg_KnockBackJ, EVENT_PLAYER_UNIT_ATTACKED )
    call TriggerAddCondition( gg_trg_KnockBackJ, Condition( function Trig_KnockBackJ_Conditions ) )
    call TriggerAddAction( gg_trg_KnockBackJ, function Trig_KnockBackJ_Actions )
endfunction

# Continuação: KnockBack ²
Código:

function Trig_KnockBackMainJ_Actions takes nothing returns nothing
    local integer i = 1
    loop
        exitwhen i > udg_knockCount
        if udg_knockZi[i] then
            set udg_zzUnit = udg_knockUnit[i]
            set udg_zzReal = I2R(udg_knockTodo[i]) / udg_knockShould[i]
            set udg_zzReal = (udg_zzReal * udg_zzReal) * udg_knockPower[i]
            set udg_zzX = GetUnitX(udg_zzUnit) + Cos(udg_knockAngle[i]) * udg_zzReal
            set udg_zzY = GetUnitY(udg_zzUnit) + Sin(udg_knockAngle[i]) * udg_zzReal
            if not IsTerrainPathable(udg_zzX, udg_zzY, PATHING_TYPE_WALKABILITY) then
                call SetUnitX(udg_zzUnit,udg_zzX)
                call SetUnitY(udg_zzUnit,udg_zzY)
            endif
            set udg_knockTodo[i] = udg_knockTodo[i] - 1
            if udg_knockTodo[i] <= 0 then
                set udg_knockZi[i] = false
                if i == udg_knockCount then
                    set udg_knockCount = udg_knockCount - 1
                endif
            endif
        elseif i == udg_knockCount then
            set udg_knockCount = udg_knockCount - 1
            if udg_knockCount <= 0 then
                call DisableTrigger(GetTriggeringTrigger())
            endif
        endif
        set i = i + 1
    endloop
endfunction

//===========================================================================
function InitTrig_KnockBackMainJ takes nothing returns nothing
    set gg_trg_KnockBackMainJ = CreateTrigger(  )
    call TriggerRegisterTimerEventPeriodic( gg_trg_KnockBackMainJ, 0.03 )
    call TriggerAddAction( gg_trg_KnockBackMainJ, function Trig_KnockBackMainJ_Actions )
endfunction


- Variavels do Jass: Knock Back:

Variables (name\type)
zzBoolean - Boolean
zzReal - Real
zzX - Real
zzY - Real
zzUnit - Unit
knockCount - Integer
knockZi - Boolean Array
knockAngle - Real Array
knockPower - Real Array
knockUnit - Unit Array
knockTodo - Integer Array
knockShould - Integer Array

________________________________________________

# Floating Text nas Spells Sistema
- Primeira configuração:



# Essa trigger de cima é para dar cores aos textos, tamanho duração e etc.

- FlotingText:




TroiA

Número de Posts : 4150
Data de inscrição : 14/09/2008
Reputação : 127 Pontos : 22905

Warning Necropost
0 / 1000 / 100


http://teamkings.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Como fazer um Floating Text do Dano de uma Magia???

Mensagem por [UdC]The.Helper em 2011-03-10, 19:05

Valeu TroiA,mas não teria como voce postar as variables do floating text? Neutral
Eu me complico um pouco nisso..

EDIT:A pode dexar pra lá,eu consegui achar do nada o sistema que voce colocou de floating text no hive Shocked
mas obrigado ai.



[UdC]The.Helper

Número de Posts : 163
Data de inscrição : 25/09/2010
Reputação : 11 Pontos : 11612

Warning Necropost
0 / 1000 / 100


Voltar ao Topo Ir em baixo

Re: Como fazer um Floating Text do Dano de uma Magia???

Mensagem por TroiA em 2011-03-10, 19:17

Sim eu fiz baseado em um que tinha no hive, só que eu o modifiquei, retirei os leaks e implementei, se quiser te mando o mapa depois LooOOooL



TroiA

Número de Posts : 4150
Data de inscrição : 14/09/2008
Reputação : 127 Pontos : 22905

Warning Necropost
0 / 1000 / 100


http://teamkings.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Como fazer um Floating Text do Dano de uma Magia???

Mensagem por Conteúdo patrocinado Hoje à(s) 05:36


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum