Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


    Questão da passagem de estrela - Bug fix

    Valentine
    Valentine
    Administrador
    Administrador


    Medalhas : Questão da passagem de estrela - Bug fix ZgLkiRU
    Mensagens : 5343
    Créditos : 1164

    Questão da passagem de estrela - Bug fix Empty Questão da passagem de estrela - Bug fix

    Mensagem por Valentine Seg maio 21, 2018 12:20 pm

    Qual o problema?
    Por padrão, as tiles definidas como estrela no Bloqueio do Tileset ignoram as passagens das setas/direções.
    Questão da passagem de estrela - Bug fix UGbvD

    Como concertar?
    Aqui está a solução. Ela checa se a tile é uma estrela antes de checar a passagem. Se a tile for uma estrela e for passável, então ele checa a tile sob ela. Se não, retorna falso de qualquer jeito. Isso previne tudo que faça a tile estrela ser passável.

    Script:
    Código:
    class Game_Map
      def check_passage(x, y, bit)
        all_tiles(x, y).each do |tile_id|
          flag = tileset.flags[tile_id]
          if flag & 0x10 != 0 # [☆]: No effect on passage
            next if flag & bit == 0 # [○] : Passable but star
            return false if flag & bit == bit # [×] : Impassable
          else
            return true if flag & bit == 0 # [○] : Passable
            return false if flag & bit == bit # [×] : Impassable
          end
        end
        return false # Impassable
      end
    end

    Créditos:
    Neon Black

      Data/hora atual: Sex Nov 15, 2024 6:01 am