Corrigindo Erros do Escorrega (Slide)

    Compartilhe
    avatar
    Thales12
    Administrador
    Administrador

    Mensagens : 140
    Level : 8
    Data de inscrição : 01/11/2011
    Idade : 23
    Localização : Rio de Janeiro

    default Corrigindo Erros do Escorrega (Slide)

    Mensagem por Thales12 em Seg Fev 13, 2012 12:07 am

    São dois erros, o primeiro erro acontece quando você coloca um escorrega:

    E que na frente do escorrega tem um bloqueio ou uma resource e o jogador colide em direção a estes. O segundo erro é que o jogador não escorrega para a direção escolhida no editor, esse tutorial irá ensinar a corrigir ambos os erros que ocorre no servidor.

    Abra o Servidor

    1 - No modPlayer, procure por:
    Código:
            ' Slide
            If .Type = TILE_TYPE_SLIDE Then
                ForcePlayerMove Index, MOVING_WALKING, GetPlayerDir(Index)
                Moved = YES
            End If
        End With

    2 - Substitua por:
    Código:
            ' Slide
            If .Type = TILE_TYPE_SLIDE Then
                Select Case .Data1
                    Case DIR_UP
                        If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) - 1).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) - 1).Type = TILE_TYPE_BLOCKED Then Exit Sub
                    Case DIR_LEFT
                        If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) - 1, GetPlayerY(Index)).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) - 1, GetPlayerY(Index)).Type = TILE_TYPE_BLOCKED Then Exit Sub
                    Case DIR_DOWN
                        If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) + 1).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index), GetPlayerY(Index) + 1).Type = TILE_TYPE_BLOCKED Then Exit Sub
                    Case DIR_RIGHT
                        If Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) + 1, GetPlayerY(Index)).Type = TILE_TYPE_RESOURCE Or Map(GetPlayerMap(Index)).Tile(GetPlayerX(Index) + 1, GetPlayerY(Index)).Type = TILE_TYPE_BLOCKED Then Exit Sub
                End Select
                ForcePlayerMove Index, MOVING_WALKING, .Data1
                Moved = YES
            End If
        End With

    Créditos
    Marlos Gama (Por criar e disponibilizar o tutorial)
    Ricardo (Por ajudar a corrigir um segundo bug do slide)

      Data/hora atual: Seg Dez 17, 2018 7:59 am