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.

Trocar de Sprite por Item

+5
lucas100vzs
Guardian
SrLoks~
Over~
alenaldo
9 participantes

Ir para baixo

Trocar de Sprite por Item Empty Trocar de Sprite por Item

Mensagem por alenaldo Qui 03 Jan 2013, 19:49

Bom não achei esse sistema aqui, achei ele em outro fórum, desculpe-me se já tiver.

Client~Side

Na frmEditor_Item crie uma label e um scrollBox com as seguintes configurações:

Label
Name: lblSprite
Caption: Sprite: Não mudar


ScrollBox
Name: scrlSprite


Dentro do ScrllBox adicione:

CÓDIGO:
Código:
 ' If debug mode, handle error then exit out
    If Options.Debug = 1 Then On Error GoTo errorhandler
   
    lblSprite.Caption = "Sprite: " & scrlSprite.Value
    Item(EditorIndex).Sprite = scrlSprite.Value
   
    ' Error handler
    Exit Sub
errorhandler:
    HandleError "scrlSprite_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext
    Err.Clear
    Exit Sub


Na cmbType adicione no final da list:

Trocar Sprite


Procure por:

CÓDIGO:
Código:
Public Const ITEM_TYPE_SPELL As Byte = 13


E abaixo adicione:

CÓDIGO:
Código:
Public Const ITEM_TYPE_SPRITE As Byte = 14


Procure por:

CÓDIGO:
Código:
 frmEditor_Item.scrlRarity.Value = .Rarity


Abaixo adiciione:

CÓDIGO:
Código:
 frmEditor_Item.scrlSprite.Value = .Sprite


No final da Private Type ItemRec, antes do End Type, adicione:

CÓDIGO:
Código:
  Sprite As Long


Serve~side

No final da Private Type ItemRec, antes do End Type, adicione:

CÓDIGO:
Código:
  Sprite As Long


Procure por:

CÓDIGO:
Código:
Public Const ITEM_TYPE_SPELL As Byte = 13


E abaixo adicione:

CÓDIGO:
Código:
Public Const ITEM_TYPE_SPRITE As Byte = 14


Procure por:

CÓDIGO:
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, "Você não tem os status requeridos para equipar esse equipamento.", BrightRed
                        Exit Sub
                    End If
                Next
               
                ' level requirement
                If GetPlayerLevel(index) < Item(itemnum).LevelReq Then
                    PlayerMsg index, "Você não tem o level requerido para usar esse item.", BrightRed
                    Exit Sub
                End If
               
                ' class requirement
                If Item(itemnum).ClassReq > 0 Then
                    If Not GetPlayerClass(index) = Item(itemnum).ClassReq Then
                        PlayerMsg index, "Você não tem a classe necessaria para usar esse item.", BrightRed
                        Exit Sub
                    End If
                End If
               
                ' access requirement
                If Not GetPlayerAccess(index) >= Item(itemnum).AccessReq Then
                    PlayerMsg index, "Você não tem o acesso requerido para usar esse 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, "Agora você pode usar a magia " & Trim$(Spell(n).Name) & ".", BrightGreen)
                                Else
                                    Call PlayerMsg(index, "Você ja tem essa magia.", BrightRed)
                                End If

                            Else
                                Call PlayerMsg(index, "Você não pode aprender mais magias.", BrightRed)
                            End If

                        Else
                            Call PlayerMsg(index, "Você precisa estar no nivel " & i & " para aprender essa magia.", BrightRed)
                        End If

                    Else
                        Call PlayerMsg(index, "Essa magia so pode ser aprendida pela classe " & CheckGrammar(GetClassName(Spell(n).ClassReq)) & ".", BrightRed)
                    End If
                End If
               
                ' send the sound
                SendPlayerSound index, GetPlayerX(index), GetPlayerY(index), SoundEntity.seItem, itemnum


Abaixo adicione:

CÓDIGO:
Código:
Case ITEM_TYPE_SPRITE
           
                ' stat requirements
                For i = 1 To Stats.Stat_Count - 1
                    If GetPlayerRawStat(index, i) < Item(itemnum).Stat_Req(i) Then
                        PlayerMsg index, "Você não tem os status requeridos para equipar esse equipamento.", BrightRed
                        Exit Sub
                    End If
                Next
               
                ' level requirement
                If GetPlayerLevel(index) < Item(itemnum).LevelReq Then
                    PlayerMsg index, "Você não tem o level requerido para usar esse item.", BrightRed
                    Exit Sub
                End If
               
                ' class requirement
                If Item(itemnum).ClassReq > 0 Then
                    If Not GetPlayerClass(index) = Item(itemnum).ClassReq Then
                        PlayerMsg index, "Você não tem a classe necessaria para usar esse item.", BrightRed
                        Exit Sub
                    End If
                End If
               
                ' access requirement
                If Not GetPlayerAccess(index) >= Item(itemnum).AccessReq Then
                    PlayerMsg index, "Você não tem o acesso requerido para usar esse item.", BrightRed
                    Exit Sub
                End If
               
                ' Trocar sprite
                Call SetPlayerSprite(index, Item(itemnum).Sprite)
               
                ' send the sound
                SendPlayerSound index, GetPlayerX(index), GetPlayerY(index), SoundEntity.seItem, itemnum

                ' atualizar player
                Call SendPlayerData(index)


Creditos:

Ricardo (Já que foi ele que disponibilizou la )
EU (por disponibiliza aqui)


Última edição por alenaldo em Qui 03 Jan 2013, 22:43, editado 1 vez(es)
alenaldo
alenaldo
Membro
Membro

Mensagens : 128

http://naruto-new-empire.webnode.com

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por Over~ Qui 03 Jan 2013, 19:52

Muito bom cara gostei do sistema Very Happy
+1 Cred.

Abraços,
Over~.
Over~
Over~
Membro Vitalicio
Membro Vitalicio

Mensagens : 565

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por SrLoks~ Qui 03 Jan 2013, 20:09

Boa alenaldo testei aki funfo direitinho Continue assim Very Happy

+1 Cred

Att,
SrLoks~
SrLoks~
SrLoks~
Membro Sênior
Membro Sênior

Mensagens : 252

http://www.themysticgames.com/

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por Guardian Qui 03 Jan 2013, 22:30

No tutorial, a última parte se encontra cortada... Por favor, arrume se possível. Smile

Código:
Case ITEM_TYPE_SPRITE
           
                ' stat requirements
                For i = 1 To Stats.Stat_Count - 1
                    If GetPlayerRawStat(index, i) < Item(itemnum).Stat_Req(i) Then
                        PlayerMsg index, "Você não tem os status requeridos para equipar esse equipamento.", BrightRed
                        Exit Sub
                    End If
                Next
               
                ' level requirement
                If GetPlayerLevel(index) < Item(itemnum).LevelReq Then
                    PlayerMsg index, "Você não tem o level requerido para usar esse item.", BrightRe

Esta parte /\
Guardian
Guardian
Membro de Honra
Membro de Honra

Mensagens : 781

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por alenaldo Qui 03 Jan 2013, 22:46

Arrumado Very Happy valeu pelo toque.
alenaldo
alenaldo
Membro
Membro

Mensagens : 128

http://naruto-new-empire.webnode.com

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por lucas100vzs Sex 04 Jan 2013, 07:19

Tem uma maneira mais simples de fazer do que criar um tipo de item novo...Mas essa não é uma maneira errada de se fazer....
No mais, levou +1 crédito meu ! Muito bom Alenaldo ! Very Happy
lucas100vzs
lucas100vzs
Membro Sênior
Membro Sênior

Mensagens : 396

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por nuno960 Sáb 26 Jan 2013, 14:19

nao consigo fazer este passo:

Código:
Na cmbType adicione no final da list:

Trocar Sprite
nuno960
nuno960
Membro
Membro

Mensagens : 137

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por alenaldo Ter 29 Jan 2013, 07:30

Trocar de Sprite por Item Semttulojcc Clik aqui Para melhor visualizar
alenaldo
alenaldo
Membro
Membro

Mensagens : 128

http://naruto-new-empire.webnode.com

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por Monotoshi Ter 29 Jan 2013, 08:44

Alenaldo não deveria ganhar cred quem deveria seria o criador do sistema e tutorial.
avatar
Monotoshi
Membro Vitalicio
Membro Vitalicio

Mensagens : 591

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por nuno960 Ter 29 Jan 2013, 11:07

ae obrigado
+1 Cred
nuno960
nuno960
Membro
Membro

Mensagens : 137

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por marak-garin Qua 30 Jan 2013, 12:46

tava precisando desse tutorial mesmo Very Happy
marak-garin
marak-garin
Novato
Novato

Mensagens : 20

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

Mensagem por maraquanos-marakgarin Qua 30 Jan 2013, 17:08

gostei mais o menos do projeto
maraquanos-marakgarin
maraquanos-marakgarin
Novato
Novato

Mensagens : 18

Ir para o topo Ir para baixo

Trocar de Sprite por Item Empty Re: Trocar de Sprite por Item

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