Suporte ao desenvolvimento de jogos!


    Magia em área somente nos NPC's

    Compartilhe
    avatar
    GalaxyHells
    Ocasional
    Ocasional

    Mensagens : 167
    Créditos : 4

    Ficha do personagem
    Nível: 1
    Vida:
    30/30  (30/30)
    Energia:
    0/0  (0/0)

    Magia em área somente nos NPC's

    Mensagem por GalaxyHells em Sex Mar 16, 2018 12:34 am

    Introdução


    A modificação consiste basicamente em adicionar uma animação em área apenas nos npcs dentro do alcance da magia.
    Muitos já tem essa modificação, mas pra quem não tem ta ai...
    Tambem não sei se já postaram esse tutorial aqui... de qualquer forma uarever

    Pré-requisitos
                        Engine: Qualquer versão da Eclipse origins ou CrystalShire
                        Programas: Visual Basic 6
                        Sistema/Modificação: http://www.aldeiarpg.com/t5176-animacao-da-magia-em-area

    Vamos ao Sistema


    Client-Side
    1-  No editor de spells:


    Crie 1 CheckBox
    Name: chkAOE2


    Coloque esse codigo dentro:



    Código:
        ' If debug mode, handle error then exit out
        If Options.Debug = 1 Then On Error GoTo errorhandler

        If chkAOE2.Value = 0 Then
            Spell(EditorIndex).IsAoE2 = False
        Else
            Spell(EditorIndex).IsAoE2 = True
        End If
        
        ' Error handler
        Exit Sub
    errorhandler:
        HandleError "chkAOE2_Click", "frmEditor_Spell", Err.Number, Err.Description, Err.Source, Err.HelpContext
        Err.Clear
        Exit Sub

    Procure por:

    Código:
    IsAoE As Boolean


    Abaixo adicione:


    Código:
    IsAoE2 As Boolean


    Procure por: 

    Código:
    If Spell(EditorIndex).IsAoE Then
                .chkAOE.Value = 1
            Else
                .chkAOE.Value = 0
            End If


    Abaixo Adicione:

    Código:
    If Spell(EditorIndex).IsAoE2 Then
                .chkAOE2.Value = 1
            Else
                .chkAOE2.Value = 0
            End If


    Fim do Client


    Server-Side


    Procure por:
    Código:
    IsAoE As Boolean


    Abaixo adicione:

    Código:
    IsAoE2 As Boolean

    Procure por:
    Código:
    If Spell(SpellNum).Type = SPELL_TYPE_DAMAGEHP Then
            If Spell(SpellNum).IsAoE = True Then
                InUseArea index, SpellNum
                DidCast = True
            End If
        End If

    Mude para:
    Código:
    If Spell(SpellNum).Type = SPELL_TYPE_DAMAGEHP Then
            If Spell(SpellNum).IsAoE = True Then
                If Not Spell(SpellNum).IsAoE2 Then
                    InUseArea index, SpellNum
                End If
                DidCast = True
            End If
        End If

    No modCombat, na sub CastSpell procure por:
    Código:
    SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, i

    Mude para:
    Código:
    If Not Spell(SpellNum).IsAoE2 Then
                                                'SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, i
                                                Else
                                                    SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, i
                                                End If

    Ainda na CastSpell procure por:
    Código:
    SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_NPC, i

    Mude para:
    Código:
    If Not Spell(SpellNum).IsAoE2 Then
                                            'SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_NPC, i
                                            Else
                                            SendAnimation mapnum, Spell(SpellNum).SpellAnim, 0, 0, TARGET_TYPE_NPC, i
                                            End If


    Pronto! Salve e compile client e server.
    Não se esqueca de deletar todas as magias da pasta \server\data\spells

    Creditos a mim (GalaxyHells)


    _________________

      Data/hora atual: Qui Abr 26, 2018 10:41 am