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.

[EO] Poção de resetar status

+4
Eduardo
Thales12
NeeTo
Sαkurαy
8 participantes

Ir para baixo

[EO] Poção de resetar status Empty [EO] Poção de resetar status

Mensagem por Sαkurαy Sáb 05 maio 2012, 10:17

Uma poção que ao usar, você reseta seus status, podendo assim adicona-los dinovo, recomendo que quando for resetar os status, desequipar o item, pois nunca testei assim, mais por precaução né.

Client side:

Em modConstants Abaixo de:
Código:
Public Const ITEM_TYPE_SPELL As Byte = 8
Add:
Código:
Public Const ITEM_TYPE_STAT_RESET As Byte = 9

Em frmEditor_Item add cmbType's list: Resetador


Server Side:

Em modConstants abaixo de:
Código:
Public Const ITEM_TYPE_SPELL As Byte = 8
Add:
Código:
Public Const ITEM_TYPE_STAT_RESET As Byte = 9

Em modPlayer, na sub UseItem add abaixo do códico:
Código:
            Case ITEM_TYPE_SPELL
           
                ' stat requirements
                For i = 1 To Stats.Stat_Count - 1
                    If GetPlayerRawStat(index, i) < Item(itemnum).Stat_Req(i) Then
                        PlayerMsg index, "You do not meet the stat requirements to use this item.", BrightRed
                        Exit Sub
                    End If
                Next
               
                ' level requirement
                If GetPlayerLevel(index) < Item(itemnum).LevelReq Then
                    PlayerMsg index, "You do not meet the level requirement to use this item.", BrightRed
                    Exit Sub
                End If
               
                ' class requirement
                If Item(itemnum).ClassReq > 0 Then
                    If Not GetPlayerClass(index) = Item(itemnum).ClassReq Then
                        PlayerMsg index, "You do not meet the class requirement to use this item.", BrightRed
                        Exit Sub
                    End If
                End If
               
                ' access requirement
                If Not GetPlayerAccess(index) >= Item(itemnum).AccessReq Then
                    PlayerMsg index, "You do not meet the access requirement to use this item.", BrightRed
                    Exit Sub
                End If
               
                ' Get the spell num
                n = Item(itemnum).Data1

                If n > 0 Then

                    ' Make sure they are the right class
                    If Spell(n).ClassReq = GetPlayerClass(index) Or Spell(n).ClassReq = 0 Then
                        ' Make sure they are the right level
                        i = Spell(n).LevelReq

                        If i <= GetPlayerLevel(index) Then
                            i = FindOpenSpellSlot(index)

                            ' Make sure they have an open spell slot
                            If i > 0 Then

                                ' Make sure they dont already have the spell
                                If Not HasSpell(index, n) Then
                                    Call SetPlayerSpell(index, i, n)
                                    Call SendAnimation(GetPlayerMap(index), Item(itemnum).Animation, 0, 0, TARGET_TYPE_PLAYER, index)
                                    Call TakeInvItem(index, itemnum, 0)
                                    Call PlayerMsg(index, "You feel the rush of knowledge fill your mind. You can now use " & Trim$(Spell(n).Name) & ".", BrightGreen)
                                Else
                                    Call PlayerMsg(index, "You already have knowledge of this skill.", BrightRed)
                                End If

                            Else
                                Call PlayerMsg(index, "You cannot learn any more skills.", BrightRed)
                            End If

                        Else
                            Call PlayerMsg(index, "You must be level " & i & " to learn this skill.", BrightRed)
                        End If

                    Else
                        Call PlayerMsg(index, "This spell can only be learned by " & CheckGrammar(GetClassName(Spell(n).ClassReq)) & ".", BrightRed)
                    End If
                End If
               
                ' send the sound
                SendPlayerSound index, GetPlayerX(index), GetPlayerY(index), SoundEntity.seItem, itemnum
Adicione isso abaixo do códico acima:
Código:
            Case ITEM_TYPE_STAT_RESET
           
                filename = App.Path & "\data\classes.ini"
                   
                Call SetPlayerStat(index, Agility, Val(GetVar(filename, "CLASS" & GetPlayerClass(index), "Agility")))
                Call SetPlayerStat(index, Strength, Val(GetVar(filename, "CLASS" & GetPlayerClass(index), "Strength")))
                Call SetPlayerStat(index, Intelligence, Val(GetVar(filename, "CLASS" & GetPlayerClass(index), "Intelligence")))
                Call SetPlayerStat(index, Endurance, Val(GetVar(filename, "CLASS" & GetPlayerClass(index), "Endurance")))
                Call SetPlayerStat(index, Willpower, Val(GetVar(filename, "CLASS" & GetPlayerClass(index), "Willpower")))
                   
                If Not GetPlayerPOINTS(index) > 0 Then
                    Call SetPlayerPOINTS(index, GetPlayerPOINTS(index)  ((GetPlayerLevel(index) - 1) * 3))
                Else
                    Call SetPlayerPOINTS(index, 0)
                    Call SetPlayerPOINTS(index, GetPlayerPOINTS(index)  ((GetPlayerLevel(index) - 1) * 3))
                End If
                   
                Call TakeInvItem(index, Player(index).Inv(invNum).Num, 0)
                   
                ' send the sound
                SendPlayerSound index, GetPlayerX(index), GetPlayerY(index), SoundEntity.seItem, itemnum
               
                Call PlayerMsg(index, "Your Stats had been reset!", BrightRed)
               

Agora, na mesma sub, modifique o começo do códico onde está:
Código:
Dim n As Long, i As Long, tempItem As Long, x As Long, y As Long, itemnum As Long
Por:
Código:
Dim n As Long, i As Long, tempItem As Long, x As Long, y As Long, itemnum As Long, filename As String

Créditos:
- Sakuray por postar
- mmearrccii por fazer


Sαkurαy
Sαkurαy
Membro Veterano
Membro Veterano

Mensagens : 1386

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por NeeTo Sáb 05 maio 2012, 10:25

Muito boa essa iniciativa de criar esse Sistema, muito bom Very Happy
NeeTo
NeeTo
Membro Veterano
Membro Veterano

Mensagens : 782

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por Thales12 Sáb 05 maio 2012, 12:09

Muito Bom...
Porem Vi muito codigo desnecessario..
neen precisava disso tudo ..
+1 por postar ! Smile
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por Sαkurαy Sáb 05 maio 2012, 12:49

Aham, o códico do som não é necessário, só se quiser por som ao usar o item, rs.
Sαkurαy
Sαkurαy
Membro Veterano
Membro Veterano

Mensagens : 1386

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por Eduardo Sáb 05 maio 2012, 12:51

NeeTo escreveu:Muito boa essa iniciativa de criar esse Sistema, muito bom [EO] Poção de resetar status 535201
Mais nao foi o sakuray quem fez neto affs mais vlw saku
Eduardo
Eduardo
Membro Veterano
Membro Veterano

Mensagens : 1178

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por magleo Sáb 05 maio 2012, 22:27

'-' Alt Alt '-' xD
magleo
magleo
Novato
Novato

Mensagens : 24

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por Thales12 Sáb 05 maio 2012, 23:02

Magleo Punido Por Off-Topic/Flood


veja sua barra de respeito as regras: [EO] Poção de resetar status 44101010

é melhor vc tomar cuidado.. mais uma e ira ser banido
Thales12
Thales12
Membro Veterano
Membro Veterano

Mensagens : 1011

http://www.rdmgames.tk

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por TheKirin Qui 07 Fev 2013, 15:40

Muito Bom adorei +1
TheKirin
TheKirin
Membro Vitalicio
Membro Vitalicio

Mensagens : 561

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por maninho21 Qui 07 Fev 2013, 15:53

Parabens cara reviveu um tópico de maio do ano passadoooo
maninho21
maninho21
Membro
Membro

Mensagens : 234

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

Mensagem por Blizzard Qui 07 Fev 2013, 15:59

Num é reviver,as regras são apenas de 1 ano.Como ainda não é o período correto não é ressuscitamento.Mas irei trancar o tópico para evitar flood's.

Tópico Trancado.
Blizzard
Blizzard
Membro Vitalicio
Membro Vitalicio

Mensagens : 603

Ir para o topo Ir para baixo

[EO] Poção de resetar status Empty Re: [EO] Poção de resetar status

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