MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!

Participe do fórum, é rápido e fácil

MMORPG Brasil
Ola, visitante! Agradecemos sua visita, para ter acesso a todo nosso conteúdo recomendamos que faça um cadastro no fórum, com ele você pode participar de tópicos e ter acesso a todas áreas da comunidade!
MMORPG Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Spell Baseado em Stats

+6
x1sian1x
willunited
SsasuKeeUuchiHaa
Eduardo
Guardian
Thales12
10 participantes

Ir para baixo

Spell Baseado em Stats Empty Spell Baseado em Stats

Mensagem por Thales12 Seg 11 Jun 2012, 17:12

Spell Basiado em tal Stats

no client~Side vai na frmEditor_spell crie uma frm chamada:

fraBaseStat
Basiado em Stat

dentro dela adicione:

uma hscrolbar com name:

scrlBaseStat

em cima adicione uma label com name e caption:

lblBaseStat
Stat:Nenhum
dps de 2 clicks na scrlbasestat e adicione:

Código:
 
Select Case scrlBaseStat.Value
  Case 0
    lblBaseStat.Caption = "Stat:Nenhum"
  Case 1
    lblBaseStat.Caption = "Stat:Strength"
  Case 2
    lblBaseStat.Caption = "Stat:Intelligence"
  Case 3
    lblBaseStat.Caption = "Stat:Agillity"
  Case 4
    lblBaseStat.Caption = "Stat:Endurance"
  Case 5
    lblBaseStat.Caption = "Stat:WillPower"
End Select

    Spell(EditorIndex).BaseStat = scrlBaseStat.Value

na private type spell rec adicione:

Código:
BaseStat As Byte

dps na spelleditorinit procure por:

Código:
.scrlStun.Value = Spell(EditorIndex).StunDuration

em baixo adicione:

Código:
.scrlBaseStat.Value = Spell(EditorIndex).BaseStat

agora no server~side na Private Type Spellrec adicione:

Código:
BaseStat As Byte

na castspell procure por:

Código:
' set the vital
    Vital = Spell(spellnum).Vital
    AoE = Spell(spellnum).AoE
    range = Spell(spellnum).range

mude para:

Código:
' set the vital
    Vital = GetSpellBaseStat(index, SpellNum)
    AoE = Spell(SpellNum).AoE
    Range = Spell(SpellNum).Range

dps procure por:

Código:
Public Sub HandleDoT_Player(ByVal Index As Long, ByVal dotNum As Long)
    With TempPlayer(Index).DoT(dotNum)
        If .Used And .Spell > 0 Then
            ' time to tick?
            If GetTickCount > .Timer + (Spell(.Spell).Interval * 1000) Then
                If CanPlayerAttackPlayer(.Caster, Index, True) Then
                    PlayerAttackPlayer .Caster, Index, Spell(.Spell).Vital
                End If
                .Timer = GetTickCount
                ' check if DoT is still active - if player died it'll have been purged
                If .Used And .Spell > 0 Then
                    ' destroy DoT if finished
                    If GetTickCount - .StartTime >= (Spell(.Spell).duration * 1000) Then
                        .Used = False
                        .Spell = 0
                        .Timer = 0
                        .Caster = 0
                        .StartTime = 0
                    End If
                End If
            End If
        End If
    End With
End Sub

e mude para:

Código:
Public Sub HandleDoT_Player(ByVal index As Long, ByVal dotNum As Long)
    With TempPlayer(index).DoT(dotNum)
        If .Used And .Spell > 0 Then
            ' time to tick?
            If GetTickCount > .Timer + (Spell(.Spell).Interval * 1000) Then
                If CanPlayerAttackPlayer(.Caster, index, True) Then
                    PlayerAttackPlayer .Caster, index, RAND(1, GetSpellBaseStat(.Caster, .Spell))
                End If
                .Timer = GetTickCount
                ' check if DoT is still active - if player died it'll have been purged
                If .Used And .Spell > 0 Then
                    ' destroy DoT if finished
                    If GetTickCount - .StartTime >= (Spell(.Spell).Duration * 1000) Then
                        .Used = False
                        .Spell = 0
                        .Timer = 0
                        .Caster = 0
                        .StartTime = 0
                    End If
                End If
            End If
        End If
    End With
End Sub

agora procuure por:

Código:
Public Sub HandleDoT_Npc(ByVal mapNum As Long, ByVal Index As Long, ByVal dotNum As Long)
    With MapNpc(mapNum).NPC(Index).DoT(dotNum)
        If .Used And .Spell > 0 Then
            ' time to tick?
            If GetTickCount > .Timer + (Spell(.Spell).Interval * 1000) Then
                If CanPlayerAttackNpc(.Caster, Index, True) Then
                    PlayerAttackNpc .Caster, Index, Spell(.Spell).Vital, , True
                End If
                .Timer = GetTickCount
                ' check if DoT is still active - if NPC died it'll have been purged
                If .Used And .Spell > 0 Then
                    ' destroy DoT if finished
                    If GetTickCount - .StartTime >= (Spell(.Spell).duration * 1000) Then
                        .Used = False
                        .Spell = 0
                        .Timer = 0
                        .Caster = 0
                        .StartTime = 0
                    End If
                End If
            End If
        End If
    End With
End Sub

e mude para:

Código:
Public Sub HandleDoT_Npc(ByVal MapNum As Long, ByVal index As Long, ByVal dotNum As Long)
    With MapNpc(MapNum).Npc(index).DoT(dotNum)
        If .Used And .Spell > 0 Then
            ' time to tick?
            If GetTickCount > .Timer + (Spell(.Spell).Interval * 1000) Then
                If CanPlayerAttackNpc(.Caster, index, True) Then
                    PlayerAttackNpc .Caster, index, RAND(1, GetSpellBaseStat(.Caster, .Spell)), , True
                End If
                .Timer = GetTickCount
                ' check if DoT is still active - if NPC died it'll have been purged
                If .Used And .Spell > 0 Then
                    ' destroy DoT if finished
                    If GetTickCount - .StartTime >= (Spell(.Spell).Duration * 1000) Then
                        .Used = False
                        .Spell = 0
                        .Timer = 0
                        .Caster = 0
                        .StartTime = 0
                    End If
                End If
            End If
        End If
    End With
End Sub

no final da modgamelogic adicione:

Código:
Public Function GetSpellBaseStat(ByVal index As Long, ByVal SpellNum As Long) As Long

  If SpellNum > 0 Then
      Select Case Spell(SpellNum).BaseStat
          Case 1
              GetSpellBaseStat = GetPlayerStat(index, Stats.strength) * 2 + Spell(SpellNum).Vital
          Case 2
              GetSpellBaseStat = GetPlayerStat(index,
Stats.Intelligence) * 2 +
Spell(SpellNum).Vital
          Case 3
              GetSpellBaseStat = GetPlayerStat(index, Stats.Agility) * 2 + Spell(SpellNum).Vital
          Case 4
              GetSpellBaseStat = GetPlayerStat(index, Stats.Endurance) * 2 + Spell(SpellNum).Vital
          Case 5
              GetSpellBaseStat = GetPlayerStat(index, Stats.Willpower) * 2 + Spell(SpellNum).Vital

          End Select
    End If

End Function

fim, credits ao titio thales


Última edição por Thales12 em Seg 11 Jun 2012, 19:21, editado 1 vez(es)
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Guardian Seg 11 Jun 2012, 17:17

Basiado ? kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk'
Só nas dorgas o cara rapaz kkkkkkkkkkkkk'
Foi mal véi, não deu pra aguentar kkkk'

Ai ai, mas enfim...
Belo Tuto, só vi os códigos rapidamente, ficou interessante. Very Happy
Valeu pela contribuição! (+1 quando alguém confirmar que funciona kk')

Fica ligado no português kkkk'
Guardian
Guardian
Membro de Honra
Membro de Honra

Mensagens : 781

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Eduardo Seg 11 Jun 2012, 17:42

Guardian escreveu:Basiado ? kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk'
Só nas dorgas o cara rapaz kkkkkkkkkkkkk'
Foi mal véi, não deu pra aguentar kkkk'

Ai ai, mas enfim...
Belo Tuto, só vi os códigos rapidamente, ficou interessante. Very Happy
Valeu pela contribuição! (+1 quando alguém confirmar que funciona kk')

Fica ligado no português kkkk'

digo o mesmo
Eduardo
Eduardo
Membro Veterano
Membro Veterano

Mensagens : 1178

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por SsasuKeeUuchiHaa Ter 12 Jun 2012, 13:18

Sistema Perfect merece meu +1
SsasuKeeUuchiHaa
SsasuKeeUuchiHaa
Novato
Novato

Mensagens : 33

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por willunited Seg 25 Jun 2012, 19:34

Eclipse Origins Parou de funcionar...
Fiz tudo certin mas não deu
willunited
willunited
Membro
Membro

Mensagens : 227

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por x1sian1x Seg 25 Jun 2012, 23:00

cara falando serio esse merece meu cred...
pena que eu nao uso origins mas vo da o cred mesmo assim ^^
x1sian1x
x1sian1x
Membro
Membro

Mensagens : 143

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Thales12 Ter 26 Jun 2012, 11:05

willunited escreveu:Eclipse Origins Parou de funcionar...
Fiz tudo certin mas não deu

pow companheiro vc fez algo errado entao ..
pq o sistema e 100% funcional ..
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por willunited Ter 26 Jun 2012, 11:41

Notei q o erro não esta no client e sim no server,vo refazer depois
Edit:
Funciono,mas as skills levaro reset e algumas invalid property value,mas sem problema o importante é que funciono,vlw Thales.
Edit:
Tive que reseta todas skills pq dava overflow O.O
willunited
willunited
Membro
Membro

Mensagens : 227

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Naziozeno Ter 26 Jun 2012, 12:51

will, pra nao aparecer esse invalid property value faz isso

vai no frmeditor_npc

clica no scrlSpellNum para aparecer a properties

procura por: max e coloca 255

pronto não vai mais dar esse erro de invalid property value ^^
Naziozeno
Naziozeno
Membro
Membro

Mensagens : 174

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por willunited Ter 26 Jun 2012, 13:33

Vlw,mas agora o problema é que o Stun não funciona mais...
willunited
willunited
Membro
Membro

Mensagens : 227

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Naziozeno Ter 26 Jun 2012, 13:40

vish, então vc fez alguma coisa errada que aqui o stun ainda está funcionando
Naziozeno
Naziozeno
Membro
Membro

Mensagens : 174

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por willunited Ter 26 Jun 2012, 14:31

Arrumei,alguém pode me ajuda
é o seguinte
eu stuno,blz
só que eles continua atacando...
ele só para de caminha
só que se fica na frente dele tu leva ataque

Pro stun funciona tem q bota ele baseado em alguma coisa...
willunited
willunited
Membro
Membro

Mensagens : 227

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Alumaary Sáb 01 Set 2012, 15:21

Desculpe por reviver o topico mas, vlw to aprendendo a programar agora e me ajudou bastante esse topico vlw msm +1 cred Thales ^^'
Alumaary
Alumaary
Membro Sênior
Membro Sênior

Mensagens : 407

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por twistergames Dom 30 Dez 2012, 22:21

Desculpem reviver o topic mas preciso de ajuda! Fiz o client tudo certinho e copilei, mas quando faço o server e mando copilar da ium erro com o seguinte texto: Meoth or data member not found

A parte marcada do erro e essa:

Spoiler:

Alguém me ajude por favor?

Edit:

Consegui corrigir o erro editando o script!!
Agora tenho uma duvida, o dano de uma skill com vital 10 esta com dano de 60+! Como posso fazer para diminuir a quantidade que o dano e afetado pelo stats?
twistergames
twistergames
Novato
Novato

Mensagens : 22

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por owarer Seg 31 Dez 2012, 13:44

Cara to cansado de ver esses sistemas que você posta e diz que os creditos são seus cara!mais eles ja estão postados em outro forum ou site.
owarer
owarer
Banido
Banido

Mensagens : 98

Ir para o topo Ir para baixo

Spell Baseado em Stats Empty Re: Spell Baseado em Stats

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos