Quedada del ChatBox
Conectarse

Recuperar mi contraseña

Estadísticas
Tenemos 2162 miembros registrados.
El último usuario registrado es chichox.

Nuestros miembros han publicado un total de 37845 mensajes en 4922 argumentos.
Últimos temas
» Denme su opinión sobre este sprite
por mrhawi Hoy a las 5:13 pm

» Relato de Seytan
por jehyknaria Hoy a las 4:44 pm

» Saludos gente
por orochii Hoy a las 4:43 pm

» CONCURSO DE TROFEOS (Nº2)
por EdénTheGame Hoy a las 4:40 pm

» Vehiculos por agua
por heroZX Hoy a las 4:32 pm

» script Titulo animado -Modificacion-
por Felipe_9595 Hoy a las 4:27 pm

» Galeria de Dibujos
por Wecoc Hoy a las 3:32 pm

» D.R.E.A.M.S [RPGXP] [DEMO 2.0!]
por ZeroTwilight Hoy a las 3:05 pm

» Ganar dinero con el maker
por gerrtunk Hoy a las 12:57 pm

» Quisiera información ANTES de descargar VX Ace
por orochii Hoy a las 10:29 am

Afiliados
Temas importantes
----------------------------------------
Páginas con recursos RPG Maker
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
----------------------------------------
Topic de screens
----------------------------------------
Navega con Firefox
[DESCARGA]

(XP y VX)(SCRIPT) Mini mapa

 :: RPG Maker :: Scripts

Ver el tema anterior Ver el tema siguiente Ir abajo

(XP y VX)(SCRIPT) Mini mapa

Mensaje por jugito08 el Vie Ene 29, 2010 11:24 pm

Este script es para que se vea un mini mapa en la esquina de tu juego,muy util.

Código:
    --------------------------------------------------------------------------------
    #==============================================================================
    # ■ Passability Mini Map
    #------------------------------------------------------------------------------
    # made by squall // [mail]squall@rmxp.ch[/mail]
    # released the 30th of May 2006
    #==============================================================================

    #==============================================================================
    # ■ Scene_Map
    #------------------------------------------------------------------------------
    # draw the mini map
    # @corner is the corner you want the mini map to be displayed in.
    # 1 is upper left, 2 is upper right, 3 is bottom left and 4 is bottom right
    #==============================================================================

    class Scene_Map
    alias main_passminimap main
    alias update_passminimap update
    alias transfer_passminimap transfer_player
    #--------------------------------------------------------------------------
    # ● initialize
    #--------------------------------------------------------------------------
    def initialize
      @corner = 4 # 1 or 2 or 3 or 4
    end
    #--------------------------------------------------------------------------
    # ● main
    #--------------------------------------------------------------------------
    def main
      @mini_map = Map_Event.new(@corner)
      main_passminimap
      @mini_map.dispose
    end
    #--------------------------------------------------------------------------
    # ● update
    #--------------------------------------------------------------------------
    def update
      @mini_map.update
      if $game_system.map_interpreter.running?
        @mini_map.visible = false
      elsif not $game_system.map_interpreter.running? and @mini_map.on?
        @mini_map.visible = true
      end
      update_passminimap
    end
    #--------------------------------------------------------------------------
    # ● transfer_player
    #--------------------------------------------------------------------------
    def transfer_player
      transfer_passminimap
      @mini_map.dispose
      @mini_map = Map_Event.new(@corner)
    end
    end

    #==============================================================================
    # ■ Map_Base
    #------------------------------------------------------------------------------
    #  Base class for mini maps
    #==============================================================================

    class Map_Base < Sprite
    #--------------------------------------------------------------------------
    # ● constants and instances
    #--------------------------------------------------------------------------
    PMP_VERSION  = 6
    ACTIVATED_ID = 26 # set the switch id for the minimap display (on/off)
    attr_reader :event
    #--------------------------------------------------------------------------
    # ● initialize
    #--------------------------------------------------------------------------
    def initialize(corner)
      super(Viewport.new(16, 16, width, height))
      viewport.z = 8000
      @border = Sprite.new
      @border.x = viewport.rect.x - 6
      @border.y = viewport.rect.y - 6
      @border.z = viewport.z - 1
      @border.bitmap = RPG::Cache.picture("mapback")
      self.visible = on?
      self.opacity = 180
      case corner
      when 1
        self.x = 16
        self.y = 16
      when 2
        self.x = 640 - width - 16
        self.y = 16
      when 3
        self.x = 16
        self.y = 480 - height - 16
      when 4
        self.x = 640 - width - 16
        self.y = 480 - height - 16
      else
        self.x = 16
        self.y = 16
      end
      self.visible = on?
    end
    #--------------------------------------------------------------------------
    # ● dispose
    #--------------------------------------------------------------------------
    def dispose
      @border.dispose
      super
    end
    #--------------------------------------------------------------------------
    # ● x=
    #--------------------------------------------------------------------------
    def x=(x)
      self.viewport.rect.x = x
      @border.x = x - 6
    end
    #--------------------------------------------------------------------------
    # ● y=
    #--------------------------------------------------------------------------
    def y=(y)
      self.viewport.rect.y = y
      @border.y = y - 6
    end
    #--------------------------------------------------------------------------
    # ● visible=
    #--------------------------------------------------------------------------
    def visible=(bool)
      super
      self.viewport.visible = bool
      @border.visible = bool
    end
    #--------------------------------------------------------------------------
    # ● minimap_on?
    #--------------------------------------------------------------------------
    def on?
      return $game_switches[ACTIVATED_ID]
    end
    #--------------------------------------------------------------------------
    # ● update
    #--------------------------------------------------------------------------
    def update
      super
      self.visible = on?
     
      if viewport.ox < display_x
        viewport.ox += 1
      elsif viewport.ox > display_x
        viewport.ox -= 1
      end
      if viewport.oy < display_y
        viewport.oy += 1
      elsif viewport.oy > display_y
        viewport.oy -= 1
      end
    end
    #--------------------------------------------------------------------------
    # ● width
    #--------------------------------------------------------------------------
    def width
      return 120
    end
    #--------------------------------------------------------------------------
    # ● height
    #--------------------------------------------------------------------------
    def height
      return 90
    end
    #--------------------------------------------------------------------------
    # ● display_x
    #--------------------------------------------------------------------------
    def display_x
      return $game_map.display_x * 3 / 64
    end
    #--------------------------------------------------------------------------
    # ● display_y
    #--------------------------------------------------------------------------
    def display_y
      return $game_map.display_y * 3 / 64
    end
    end

    #==============================================================================
    # ■ Map_Passability
    #------------------------------------------------------------------------------
    #  draws the mini map
    #
    #  thanks to Fanha Giang (aka fanha99) for the autotile drawing method
    #==============================================================================

    class Map_Passability < Map_Base
    #--------------------------------------------------------------------------
    # ● constants
    #--------------------------------------------------------------------------
    INDEX  =
    [
    26, 27, 32, 33,    4, 27, 32, 33,  26,  5, 32, 33,    4,  5, 32, 33, 
    26, 27, 32, 11,    4, 27, 32, 11,  26,  5, 32, 11,    4,  5, 32, 11, 
    26, 27, 10, 33,    4, 27, 10, 33,  26,  5, 10, 33,    4,  5, 10, 33,
    26, 27, 10, 11,    4, 27, 10, 11,  26,  5, 10, 11,    4,  5, 10, 11,
    24, 25, 30, 31,  24,  5, 30, 31,  24, 25, 30, 11,  24,  5, 30, 11,
    14, 15, 20, 21,  14, 15, 20, 11,  14, 15, 10, 21,  14, 15, 10, 11,
    28, 29, 34, 35,  28, 29, 10, 35,    4, 29, 34, 35,    4, 29, 10, 35,
    38, 39, 44, 45,    4, 39, 44, 45,  38,  5, 44, 45,    4,  5, 44, 45,
    24, 29, 30, 35,  14, 15, 44, 45,  12, 13, 18, 19,  12, 13, 18, 11,
    16, 17, 22, 23,  16, 17, 10, 23,  40, 41, 46, 47,    4, 41, 46, 47,
    36, 37, 42, 43,  36,  5, 42, 43,  12, 17, 18, 23,  12, 13, 42, 43,
    36, 41, 42, 47,  16, 17, 46, 47,  12, 17, 42, 47,    0,  1,  6,  7
    ]
    X = [0, 1, 0, 1]
    Y = [0, 0, 1, 1]
    #--------------------------------------------------------------------------
    # ● initialize
    #--------------------------------------------------------------------------
    def initialize(corner)
      super(corner)
      @autotile = RPG::Cache.picture("minimap_tiles")
      setup()
    end
    #--------------------------------------------------------------------------
    # ● setup
    #--------------------------------------------------------------------------
    def setup()
      @map = load_data(sprintf("Data/Map%03d.rxdata", $game_map.map_id))
      tileset = $data_tilesets[@map.tileset_id]
      @passages = tileset.passages
      @priorities = tileset.priorities
      redefine_tiles
      refresh
    end
    #--------------------------------------------------------------------------
    # ● pass
    #--------------------------------------------------------------------------
    def pass(tile_id)
      return 15 if tile_id == nil
      return @passages[tile_id] != nil ? @passages[tile_id] : 15
    end
    #--------------------------------------------------------------------------
    # ● passable
    #--------------------------------------------------------------------------
    def passable(tile_id)
      return pass(tile_id) < 15
    end
    #--------------------------------------------------------------------------
    # ● redefine_tile
    #--------------------------------------------------------------------------
    def redefine_tiles
      width = @map.width
      height = @map.height
      map = RPG::Map.new(width, height)
      map.data = @map.data.dup
      for x in 0...width
        for y in 0...height
          for level in [1, 2]
            id = @map.data[x, y, level]
            if id != 0 and @priorities[id] == 0
              @map.data[x, y, 0] = id
              @passages[@map.data[x, y, 0]] = @passages[id]
            end
          end
        end
      end
      for x in 0...width
        for y in 0...height
          for level in [0]
          tile = @map.data[x, y, level]
          u = @map.data[x,  y-1, level]
          l = @map.data[x-1, y,  level]
          r = @map.data[x+1, y,  level]
          d = @map.data[x,  y+1, level]
          if !passable(tile)
            map.data[x, y] = 0
          else
            if tile == 0
              map.data[x, y, level] = 0
              next
            end
            if pass(tile) < 15
              if !passable(u) and !passable(l) and !passable(r) and !passable(d)
                map.data[x, y, level] = 0
              elsif !passable(u) and !passable(l) and !passable(r) and passable(d)
                map.data[x, y, level] = 90
              elsif !passable(u) and !passable(l) and !passable(d) and passable(r)
                map.data[x, y, level] = 91
              elsif !passable(u) and !passable(r) and !passable(d) and passable(l)
                map.data[x, y, level] = 93
              elsif !passable(l) and !passable(r) and !passable(d) and passable(u)
                map.data[x, y, level] = 92
              elsif !passable(u) and !passable(d) and passable(r) and passable(l)
                map.data[x, y, level] = 81
              elsif !passable(u) and !passable(r) and passable(d) and passable(l)
                map.data[x, y, level] = 84
              elsif !passable(u) and !passable(l) and passable(d) and passable(r)
                map.data[x, y, level] = 82
              elsif !passable(d) and !passable(r) and passable(l) and passable(u)
                map.data[x, y, level] = 86
              elsif !passable(d) and !passable(l) and passable(r) and passable(u)
                map.data[x, y, level] = 88
              elsif !passable(r) and !passable(l) and passable(d) and passable(u)
                map.data[x, y, level] = 80
              elsif !passable(u) and passable(d) and passable(r) and passable(l)
                map.data[x, y, level] = 68
              elsif !passable(d) and passable(u) and passable(r) and passable(l)
                map.data[x, y, level] = 76
              elsif !passable(r) and passable(d) and passable(u) and passable(l)
                map.data[x, y, level] = 72
              elsif !passable(l) and passable(d) and passable(u) and passable(r)
                map.data[x, y, level] = 64
              else
                map.data[x, y, level] = 48
              end
            else
              map.data[x, y, level] = 0
            end
          end
          end
        end
      end
      @map = map.dup
      map = nil
    end
    #--------------------------------------------------------------------------
    # ● refresh
    #--------------------------------------------------------------------------
    def refresh
      self.visible = false
      self.bitmap = Bitmap.new(@map.width * 6, @map.height * 6)
      bitmap = Bitmap.new(@map.width * 6, @map.height * 6)
      rect1 = Rect.new(6, 0, 6, 6)
      for y in 0...@map.height
        for x in 0...@map.width
          for level in [0]
            tile_id = @map.data[x, y, level]
            next if tile_id == 0
            id = tile_id / 48 - 1
            tile_id %= 48
            for g in 0..3
              h = 4 * tile_id + g
              y1 = INDEX[h] / 6
              x1 = INDEX[h] % 6
              rect2 = Rect.new(x1 * 3, y1 * 3, 3, 3)
              bitmap.blt(x * 6 + X[g] *  3, y * 6 + Y[g] * 3, @autotile, rect2)
            end
          end
        end
      end
      d_rect = Rect.new(0, 0, @map.width * 6, @map.height * 6)
      s_rect = Rect.new(0, 0, bitmap.width, bitmap.height)
      self.bitmap.stretch_blt(d_rect, bitmap, s_rect)
      self.viewport.ox = display_x
      self.viewport.oy = display_y
      bitmap.clear
      bitmap.dispose
    end
    end

    #==============================================================================
    # ■ Map_Event
    #------------------------------------------------------------------------------
    #  draw the events and hero position
    #==============================================================================

    class Map_Event < Map_Passability
    #--------------------------------------------------------------------------
    # ● initialize
    #--------------------------------------------------------------------------
    def initialize(corner = 4)
      super(corner)
      @dots = []
      @player = Sprite.new(self.viewport)
      @player.bitmap = RPG::Cache.picture("mm cursors")
      @player.src_rect = Rect.new(0, 0, 15, 15)
      @player.z = self.z + 3
      @events = {}
     
      for key in $game_map.events.keys
        event = $game_map.events[key]
        next if event.list == nil
        for i in 0...event.list.size
          next if event.list[i].code != 108
          @events[key] = Sprite.new(self.viewport)
          @events[key].z = self.z + 2
          if event.list[i].parameters[0].include?("event")
            @events[key].bitmap = RPG::Cache.picture("event")
          elsif event.list[i].parameters[0].include?("enemy")
            @events[key].bitmap = RPG::Cache.picture("enemy")
          elsif event.list[i].parameters[0].include?("teleport")
            @events[key].bitmap = RPG::Cache.picture("teleport")
          elsif event.list[i].parameters[0].include?("chest")
            @events[key].bitmap = RPG::Cache.picture("chest")
          elsif event.list[i].parameters[0].include?("npc")
            @events[key].bitmap = RPG::Cache.picture("npc")
          elsif event.list[i].parameters[0].include?("savepoint")
            @events[key].bitmap = RPG::Cache.picture("savepoint")
          end
        end
      end
    end
    #--------------------------------------------------------------------------
    # ● dispose
    #--------------------------------------------------------------------------
    def dispose
      @player.dispose
      for event in @events.values
        event.dispose
      end
      super
    end
    #--------------------------------------------------------------------------
    # ● update
    #--------------------------------------------------------------------------
    def update
      super
      @player.x = $game_player.real_x * 3 / 64 - 5
      @player.y = $game_player.real_y * 3 / 64 - 4
      @player.src_rect.x = ($game_player.direction / 2 - 1) * 15
      for key in @events.keys
        event = @events[key]
        mapevent = $game_map.events[key]
        event.x = mapevent.real_x * 3 / 64
        event.y = mapevent.real_y * 3 / 64
      end
    end
    end

    --------------------------------------------------------------------------------


Bueno,adios

jugito08
Iniciado
Iniciado

0/3

Créditos 43


http://jugito10.creatuforo.com

Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por exellomenos el Sáb Mar 27, 2010 9:07 pm

No me sirve sale un error que dice "script `mini_mapa` line 424: syntaxerror ocurred"
pd: yo le puse el nombre de mini mapa

exellomenos
Veterano
Veterano

2/3

Créditos 157


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por Arestame el Sáb Mar 27, 2010 10:35 pm

no será que necesitará gráficos

Arestame
Veterano
Veterano

0/3

Créditos 1563


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por exellomenos el Sáb Mar 27, 2010 11:32 pm

nose me sale ese error no entiendo

exellomenos
Veterano
Veterano

2/3

Créditos 157


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por Dorvin el Sáb Mar 27, 2010 11:44 pm

Si, sera que necesita graficos me extranyaria muchissimo un script de minimapa sin graficos...

Dorvin
Veterano
Veterano

0/3

Créditos 348


http://thesexydeath.webnode.es/

Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por exellomenos el Dom Mar 28, 2010 12:14 am

MMMM PERO QUE GRAFICOS?

exellomenos
Veterano
Veterano

2/3

Créditos 157


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por Arestame el Dom Mar 28, 2010 10:31 am

Unos gráficos que seguramente se les habrá olvidado ponerlos

Arestame
Veterano
Veterano

0/3

Créditos 1563


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por exellomenos el Dom Mar 28, 2010 8:54 pm

ok pero quien me puede pasar una pagina con el script de mini mapa comleto ...

exellomenos
Veterano
Veterano

2/3

Créditos 157


Volver arriba Ir abajo

Re: (XP y VX)(SCRIPT) Mini mapa

Mensaje por Arestame el Lun Mar 29, 2010 8:25 am

yo me sé un mini mapa al estilo final fantasy (poseriormente lo postearé)

Arestame
Veterano
Veterano

0/3

Créditos 1563


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 :: RPG Maker :: Scripts

Permiso de este foro:
No puedes responder a temas en este foro.