[Tutorial]Mudando Quantidade de Frame par 4x4[Dx8's]
2 participantes
Página 1 de 1
[Tutorial]Mudando Quantidade de Frame par 4x4[Dx8's]
Bom to sem tempo para explicar mais vou deixar como mudar,deposi é só vocês compararem.
Substituir a Public Sub DrawPlayer por:
Depois de fazer o tutorial oq vai acontecer? Sua engine que antes só lia 3 frames mai ler sprites normal de 4 frames.
obs:esse é o da prospekt,nunca mechi em Eo 3.0,mais deve ser a mesma coisa
Substituir a Public Sub DrawPlayer por:
- Código:
Public Sub DrawPlayer(ByVal Index As Long)
Dim Anim As Byte, I As Long, X As Long, y As Long
Dim Sprite As Long, spritetop As Long
Dim Rec As RECT
Dim attackspeed As Long, slashon As Boolean
' If debug mode, handle error then exit out
If Options.Debug = 1 Then On Error GoTo ErrorHandler
Sprite = GetPlayerSprite(Index)
If Sprite < 1 Or Sprite > NumCharacters Then Exit Sub
' speed from weapon
If GetPlayerEquipment(Index, Weapon) > 0 Then
attackspeed = Item(GetPlayerEquipment(Index, Weapon)).speed
Else
attackspeed = 1000
End If
If Not isAnimated(GetPlayerSprite(Index)) Then
' Reset frame
Anim = 1
' Check for attacking animation
If TempPlayer(Index).AttackTimer + (attackspeed / 2) > GetTickCount Then
If TempPlayer(Index).Attacking = 1 Then
slashon = True
Anim = 3
End If
Else
' If not attacking, walk normally
Select Case GetPlayerDir(Index)
Case DIR_UP
If (TempPlayer(Index).yOffset > Then Anim = TempPlayer(Index).Step
Case DIR_DOWN
If (TempPlayer(Index).yOffset < -8) Then Anim = TempPlayer(Index).Step
Case DIR_LEFT
If (TempPlayer(Index).xOffset > Then Anim = TempPlayer(Index).Step
Case DIR_RIGHT
If (TempPlayer(Index).xOffset < -8) Then Anim = TempPlayer(Index).Step
End Select
End If
Else
If TempPlayer(Index).AttackTimer + (attackspeed / 2) > GetTickCount Then
If TempPlayer(Index).Attacking = 1 Then
slashon = True
End If
End If
If TempPlayer(Index).AnimTimer + 100 <= GetTickCount Then
TempPlayer(Index).Anim = TempPlayer(Index).Anim + 1
If TempPlayer(Index).Anim >= 2 Then TempPlayer(Index).Anim = 0
TempPlayer(Index).AnimTimer = GetTickCount
End If
Anim = TempPlayer(Index).Anim
End If
' Check to see if we want to stop making him attack
With TempPlayer(Index)
If .AttackTimer + attackspeed < GetTickCount Then
.Attacking = 0
.AttackTimer = 0
End If
End With
' Set the left
Select Case GetPlayerDir(Index)
Case DIR_UP
spritetop = 3
Case DIR_RIGHT
spritetop = 2
Case DIR_DOWN
spritetop = 0
Case DIR_LEFT
spritetop = 1
End Select
With Rec
.Top = spritetop * (Tex_Character(Sprite).height / 4)
.Bottom = .Top + (Tex_Character(Sprite).height / 4)
.Left = Anim * (Tex_Character(Sprite).width / 4)
.Right = .Left + (Tex_Character(Sprite).width / 4)
End With
' Calculate the X
X = GetPlayerX(Index) * PIC_X + TempPlayer(Index).xOffset - ((Tex_Character(Sprite).width / 3 - 32) / 2)
' Is the player's height more than 32..?
If (Tex_Character(Sprite).height) > 32 Then
' Create a 32 pixel offset for larger sprites
y = GetPlayerY(Index) * PIC_Y + TempPlayer(Index).yOffset - ((Tex_Character(Sprite).height / 4) - 32)
Else
' Proceed as normal
y = GetPlayerY(Index) * PIC_Y + TempPlayer(Index).yOffset
End If
' render player shadow
Call DrawShadow(Sprite, X, y + 5)
' render the actual sprite
If GetTickCount > TempPlayer(Index).StartFlash Then
Call DrawSprite(Sprite, X, y, Rec)
TempPlayer(Index).StartFlash = 0
Else
Call DrawSprite(Sprite, X, y, Rec, , , , , True)
End If
If GetPlayerEquipment(Index, Helmet) Then
If Item(GetPlayerEquipment(Index, Helmet)).Paperdoll > 0 Then
If Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width > Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height Then
Select Case GetPlayerDir(Index)
Case DIR_UP
RenderTexture Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll), ConvertMapX((X + ((Tex_Character(Sprite).width / 3) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 6)), ConvertMapY((y + ((Tex_Character(Sprite).height / 4) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height / 2)), 0, 0, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, D3DColorARGB(255 - Item(GetPlayerEquipment(Index, Helmet)).a, 255 - Item(GetPlayerEquipment(Index, Helmet)).R, 255 - Item(GetPlayerEquipment(Index, Helmet)).G, 255 - Item(GetPlayerEquipment(Index, Helmet)).B)
Case DIR_LEFT
RenderTexture Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll), ConvertMapX((X + ((Tex_Character(Sprite).width / 3) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 6)), ConvertMapY((y + ((Tex_Character(Sprite).height / 4) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height / 2)), 2 * (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3), 0, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, D3DColorARGB(255 - Item(GetPlayerEquipment(Index, Helmet)).a, 255 - Item(GetPlayerEquipment(Index, Helmet)).R, 255 - Item(GetPlayerEquipment(Index, Helmet)).G, 255 - Item(GetPlayerEquipment(Index, Helmet)).B)
' render the actual sprite
If GetTickCount > TempPlayer(Index).StartFlash Then
Call DrawSprite(Sprite, X, y, Rec)
TempPlayer(Index).StartFlash = 0
Else
Call DrawSprite(Sprite, X, y, Rec, , , , , True)
End If
Case DIR_RIGHT
RenderTexture Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll), ConvertMapX((X + ((Tex_Character(Sprite).width / 3) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 6)), ConvertMapY((y + ((Tex_Character(Sprite).height / 4) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height / 2)), Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, 0, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, D3DColorARGB(255 - Item(GetPlayerEquipment(Index, Helmet)).a, 255 - Item(GetPlayerEquipment(Index, Helmet)).R, 255 - Item(GetPlayerEquipment(Index, Helmet)).G, 255 - Item(GetPlayerEquipment(Index, Helmet)).B)
' render the actual sprite
If GetTickCount > TempPlayer(Index).StartFlash Then
Call DrawSprite(Sprite, X, y, Rec)
TempPlayer(Index).StartFlash = 0
Else
Call DrawSprite(Sprite, X, y, Rec, , , , , True)
End If
Case DIR_DOWN
RenderTexture Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll), ConvertMapX((X + ((Tex_Character(Sprite).width / 3) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 6)), ConvertMapY((y + ((Tex_Character(Sprite).height / 4) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height / 2)), 0, 0, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 3, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, D3DColorARGB(255 - Item(GetPlayerEquipment(Index, Helmet)).a, 255 - Item(GetPlayerEquipment(Index, Helmet)).R, 255 - Item(GetPlayerEquipment(Index, Helmet)).G, 255 - Item(GetPlayerEquipment(Index, Helmet)).B)
' render the actual sprite
If GetTickCount > TempPlayer(Index).StartFlash Then
Call DrawSprite(Sprite, X, y, Rec)
TempPlayer(Index).StartFlash = 0
Else
Call DrawSprite(Sprite, X, y, Rec, , , , , True)
End If
End Select
Else
RenderTexture Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll), ConvertMapX((X + ((Tex_Character(Sprite).width / 3) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width / 2)), ConvertMapY((y + ((Tex_Character(Sprite).height / 4) / 2)) - (Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height / 2)), 0, 0, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).width, Tex_Aura(Item(GetPlayerEquipment(Index, Helmet)).Paperdoll).height, D3DColorARGB(255 - Item(GetPlayerEquipment(Index, Helmet)).a, 255 - Item(GetPlayerEquipment(Index, Helmet)).R, 255 - Item(GetPlayerEquipment(Index, Helmet)).G, 255 - Item(GetPlayerEquipment(Index, Helmet)).B)
' render the actual sprite
If GetTickCount > TempPlayer(Index).StartFlash Then
Call DrawSprite(Sprite, X, y, Rec)
TempPlayer(Index).StartFlash = 0
Else
Call DrawSprite(Sprite, X, y, Rec, , , , , True)
End If
End If
End If
End If
If slashon Then Call DrawSlash(X, y, Index)
' Error handler
Exit Sub
ErrorHandler:
HandleError "DrawPlayer", "modGraphics", Err.Number, Err.Description, Err.Source, Err.HelpContext
Err.Clear
Exit Sub
End Sub
Depois de fazer o tutorial oq vai acontecer? Sua engine que antes só lia 3 frames mai ler sprites normal de 4 frames.
obs:esse é o da prospekt,nunca mechi em Eo 3.0,mais deve ser a mesma coisa
Antes:
Depois:
Última edição por guifs em Seg 02 Set 2013, 11:33, editado 1 vez(es)
guifs- Membro Vitalicio
- Mensagens : 561
Re: [Tutorial]Mudando Quantidade de Frame par 4x4[Dx8's]
não testei mais deve funcionar e,e
por que não coloca uma imagem de exemplo ?
por que não coloca uma imagem de exemplo ?
Ian- Membro Veterano
- Mensagens : 1238
Tópicos semelhantes
» [Tutorial] Quantidade Randômica de Drop
» [Tutorial]Mudando a resolução do jogo (PicScreen)
» Sistema de sentar e recuperar HP/MP por frame
» [TUTORIAL] Mudando as barras de scroll para campos digitaveis no editor de NPC
» [Dúvida] Frame
» [Tutorial]Mudando a resolução do jogo (PicScreen)
» Sistema de sentar e recuperar HP/MP por frame
» [TUTORIAL] Mudando as barras de scroll para campos digitaveis no editor de NPC
» [Dúvida] Frame
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Dom 08 Abr 2018, 18:40 por JorgeZinhoo002
» Ojkjeeeee
Seg 10 Out 2016, 23:19 por Frozen
» Naruto Great Ninja Batle
Dom 09 Out 2016, 14:29 por GuiinhoLP
» Recrutamento de um Designer para jogo de CDZ.
Sex 23 Set 2016, 18:37 por newbie123
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:11 por Eduardo
» Serviços de suporte maker( Programação , Design , PixelArt ) E Vendas de Jogos
Qui 22 Set 2016, 20:09 por Eduardo
» Projeto Dbz
Qua 31 Ago 2016, 23:46 por 157
» Avaliação - Sprites Naruto
Qua 31 Ago 2016, 17:09 por 157
» [Sprites] DBZ (Plix)
Qua 31 Ago 2016, 14:13 por 157
» Super Pack - Bleach V.2
Qua 31 Ago 2016, 13:02 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:04 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:03 por 157
» [PEDIDO][PROJETO][RECRUTAMENTO] DYNISTYGAMES
Ter 30 Ago 2016, 10:02 por 157
» [Pedido] Contador de resets na FrmMain
Sáb 13 Ago 2016, 17:45 por killers97
» [Recrutamento]
Qua 10 Ago 2016, 23:09 por Monsters
» Ajuda erro no Cliente e Servidor do EEB 2.6!
Qua 20 Jul 2016, 19:53 por Binholx
» Como criar tilesets para Eclipse Origins 3.0 (POKÉMON)
Qua 29 Jun 2016, 19:46 por Sir Aaron
» Recursos Pokemons
Qua 29 Jun 2016, 19:34 por Sir Aaron
» erro frm flash
Qua 25 maio 2016, 13:51 por vava123
» Pedido - Pack de star wars
Qui 19 maio 2016, 05:06 por edsonpet
» [Ajuda] Sobre como por o servidor on por ip fixo
Ter 17 maio 2016, 16:14 por vava123
» Illusion Dimension - O Misterio do ID: BETA TESTE ONLINE
Sex 06 maio 2016, 20:02 por LksFlorencio
» [NSME] Naruto Shinobi Maker Engine
Qua 23 Mar 2016, 15:11 por luana1457
» Script /base,/casa Igual DBZ Forces
Dom 21 Fev 2016, 07:34 por JorgeZinhoo002
» [Pedido]Colar Tsunade item sprite eclipse origin
Qui 21 Jan 2016, 07:38 por lawllietbr
» [Pedido] Elysium
Sáb 19 Dez 2015, 11:31 por luana1457
» Naruto - Recruta
Ter 15 Dez 2015, 18:40 por Uchiha ~
» [Avaliação] - Kirito from Sword Art Online; Red and Pikachu from Pokemon.
Qua 25 Nov 2015, 13:43 por Thanakii
» [Avaliação] - Kenpachi Zaraki from Bleach; Libra Shiryu From Saint Seiya.
Qua 25 Nov 2015, 12:55 por Thanakii
» Demonstração de Sprites (Á VENDA!)
Qua 25 Nov 2015, 12:40 por Thanakii
» [Sistema de Reset]Para Eclipse .
Ter 24 Nov 2015, 16:51 por VithorUchi
» Cada Guild Nascer em Certo Mapa
Qui 12 Nov 2015, 06:13 por fabiofeijó_HIT
» Dragon Ball z Fusion A Grande Volta
Qui 29 Out 2015, 15:17 por fabiofeijó_HIT
» Ajuda com Ip fixo
Seg 26 Out 2015, 16:07 por GalaxyHells15
» Como Fazer um GUI no Eclipse Origins
Dom 18 Out 2015, 22:10 por Jeanleee
» Shisui Susanoo
Dom 18 Out 2015, 20:23 por Jeanleee
» Fantasy Art Online
Dom 18 Out 2015, 16:41 por daviih123
» Ajuda !!
Seg 05 Out 2015, 12:13 por andersonzika
» como passar o usuário e senha para o MainMenu?
Seg 28 Set 2015, 22:03 por Bëzerk
» Ru time ero 13 Type mismatch
Seg 28 Set 2015, 09:08 por andredarle
» Jarvis 1.3 Download
Qua 23 Set 2015, 18:42 por soares125
» [Avaliação/Disponibilização]Árvore 64x64
Qua 23 Set 2015, 15:15 por Over~
» Mlk's Zikas Signatures
Ter 22 Set 2015, 21:15 por Aikawa Reborn'
» Pedido de Sistemas
Dom 20 Set 2015, 18:05 por cleyton_05
» [AjudaEEB]Gerador de EXP
Qua 16 Set 2015, 14:04 por Over~
» [Avaliar] Base, Humano e Goblin.
Seg 14 Set 2015, 22:51 por .iBlaz3.
» Fabrica do Tio Cronos!
Dom 13 Set 2015, 21:31 por [ADM]Cronos
» [PixelArt] Minion - Meu malvado favorito
Dom 13 Set 2015, 12:51 por [ADM]Cronos
» [Avaliar] Goku Dragon Ball Z
Qua 05 Ago 2015, 21:36 por Setrux