Sujet n°7435
Posté par LaPampa le 7 Aoû - 09:32 (2010)
Titre : DS Résolution
Salut à tous :^^:

Voilà, je sais qu'il y a déjà un sujet sur DS-Résolution, sauf que moi, j'ai un problème différent :S
Donc, lorsque je lance le jeu, ce message d'erreur s'affiche (juste après le 2009 - Pokémon, 2007-2010 - PSP-Krosk etc ...) :
????? 'DS Résolution' ? 329 ??? SyntaxError ????????

Voici mon log :

---------- Erreur de script : DS Résolution ----------
----- Type
RGSSError
----- Message
failed to create bitmap
----- Position dans DS Résolution
Ligne 318
----- Backtrace
Script : DS Résolution | Ligne : 318 | Méthode : in `initialize'
Script : DS Résolution | Ligne : 318 | Méthode : in `new'
Script : DS Résolution | Ligne : 318 | Méthode : in `draw_autotile'
Script : DS Résolution | Ligne : 290 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 283 | Méthode : in `each'
Script : DS Résolution | Ligne : 283 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 282 | Méthode : in `each'
Script : DS Résolution | Ligne : 282 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 281 | Méthode : in `each'
Script : DS Résolution | Ligne : 281 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 280 | Méthode : in `each'
Script : DS Résolution | Ligne : 280 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 256 | Méthode : in `update'
Script : MAPLINK | Ligne : 217 | Méthode : in `update'
Script : Scene_Map | Ligne : 61 | Méthode : in `alias_update'
Script : MAPPANEL* | Ligne : 89 | Méthode : in `oldUpdate'
Script : Bouton_Rouge* | Ligne : 54 | Méthode : in `update'
Script : Scene_Map | Ligne : 26 | Méthode : in `main'
Script : Scene_Map | Ligne : 21 | Méthode : in `loop'
Script : Scene_Map | Ligne : 33 | Méthode : in `main'
Script : Main | Ligne : 58

Merci d'avance Imbécile heureux

Posté par IamTheAdic le 7 Aoû - 22:32 (2010)
Ouaip,
Mais en fait la, le truc de Pal' marche pas ^^

Posté par Peter le 7 Aoû - 22:37 (2010)
Le bug de l'autotils.
Apres :   

 bitmap = Bitmap.new(32, 32)
    tiles = Autotiles[tile_id / 8][tile_id % 8]
    frames = autotile.width / 96

rajoute :
 if frames == 0
   frames = 1
   end

Normalement ca devrai marcher Clin d'œil foireux

Posté par LaPampa le 8 Aoû - 12:37 (2010)
J'ai essayer, mais ça me fais le même bug avec un nouveau message d'erreur :?
????? 'DS Résolution' 335 ??? SyntaxError ????????

---------- Erreur de script : DS Résolution ----------
----- Type
RGSSError
----- Message
failed to create bitmap
----- Position dans DS Résolution
Ligne 318
----- Backtrace
Script : DS Résolution | Ligne : 318 | Méthode : in `initialize'
Script : DS Résolution | Ligne : 318 | Méthode : in `new'
Script : DS Résolution | Ligne : 318 | Méthode : in `draw_autotile'
Script : DS Résolution | Ligne : 290 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 283 | Méthode : in `each'
Script : DS Résolution | Ligne : 283 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 282 | Méthode : in `each'
Script : DS Résolution | Ligne : 282 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 281 | Méthode : in `each'
Script : DS Résolution | Ligne : 281 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 280 | Méthode : in `each'
Script : DS Résolution | Ligne : 280 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 256 | Méthode : in `update'
Script : MAPLINK | Ligne : 217 | Méthode : in `update'
Script : Scene_Map | Ligne : 61 | Méthode : in `alias_update'
Script : MAPPANEL* | Ligne : 89 | Méthode : in `oldUpdate'
Script : Bouton_Rouge* | Ligne : 54 | Méthode : in `update'
Script : Scene_Map | Ligne : 26 | Méthode : in `main'
Script : Scene_Map | Ligne : 21 | Méthode : in `loop'
Script : Scene_Map | Ligne : 33 | Méthode : in `main'
Script : Main | Ligne : 58

Posté par Peter le 8 Aoû - 17:27 (2010)
Met tout le script ds résolution en spoiler s'il te plait.

Posté par LaPampa le 8 Aoû - 20:40 (2010)
Et voilà

Spoiler
#=============================================================================
# ■ DS Résolution
# Pokemon Script Project DS - Brendan & SephirothSpawn
# 05/04/10
#-----------------------------------------------------------------------------
# Redimensionnement des sprites à 1*1 pixel.
#-----------------------------------------------------------------------------
class Sprite_Character < RPG::Sprite
  def initialize(viewport, character = nil)
    super(viewport)
    self.zoom_x = $game_map.tilemap_zoom_x
    self.zoom_y = $game_map.tilemap_zoom_y
    @character = character
    update
  end
end
class Game_Character
 
  #--------------------------------------------------------------------------
  # ? ?? X ?????
  #--------------------------------------------------------------------------
  def screen_x
    # ***
    #return (@real_x - $game_map.display_x + 3) / 4 + 16
    zx = $game_map.tilemap_zoom_x
    return (@real_x - $game_map.display_x + 3*zx) / 4*zx + 16*zx
  end
  #--------------------------------------------------------------------------
  # ? ?? Y ?????
  #--------------------------------------------------------------------------
  def screen_y
    # ***
    # y = (@real_y - $game_map.display_y + 3) / 4 + 32
    zy = $game_map.tilemap_zoom_y
    y = (@real_y - $game_map.display_y + 3*zy) / 4*zy + 32*zy
    # ???????????? Y ????????
    if @jump_count >= @jump_peak
      n = @jump_count - @jump_peak
    else
      n = @jump_peak - @jump_count
    end
    return y - (@jump_peak * @jump_peak - n * n) / 2
  end
  #--------------------------------------------------------------------------
  # ? ?? Z ?????
  #     height : ?????????
  #--------------------------------------------------------------------------
  def screen_z(height = 0)
    # ?????????? ON ???
    if @always_on_top
      # ???? 999
      return 999
    end
    # ***
    # z = (@real_y - $game_map.display_y + 3) / 4 + 32
    zy = $game_map.tilemap_zoom_y
    z = (@real_y - $game_map.display_y + 3*zy) / 4*zy + 32*zy
    # ??????
    if @tile_id > 0
      # ??????????? * 32 ???
      #return z + $game_map.priorities[@tile_id] * 32
      return z + $game_map.priorities[@tile_id] * 32*zy
    # ?????????
    else
      # ??? 32 ??????? 31 ???
      return z + ((height > 32*zy) ? 31 : 0)
    end
  end
  #--------------------------------------------------------------------------
  # ? bush_depth ***
  #--------------------------------------------------------------------------
  def bush_depth
    # ???????????????????? ON ???
    if @tile_id > 0 or @always_on_top
      return 0
    end
    # ?????????????????? 12??????? 0
    if @jump_count == 0 and $game_map.bush?(@x, @y)
      return 6
    else
      return 0
    end
  end
end
class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Set Map Display Position to Center of Screen
  #--------------------------------------------------------------------------
  def center(x, y)
    center_x = (256+9) * 4   # ????? X ?? * 4
    center_y = (192+10) * 4   # ????? Y ?? * 4
    $game_map.display_x = x * 128 - center_x # [0, [x * 128 - center_x, max_x].min].max
    $game_map.display_y = y * 128 - center_y # [0, [y * 128 - center_y, max_y].min].max
  end
end

#==============================================================================
# Tilemap Class
#------------------------------------------------------------------------------
# Script by SephirothSpawn
#==============================================================================
class Game_Map
  #--------------------------------------------------------------------------
  attr_reader   :map
  attr_accessor :tilemap_tone
  attr_accessor :tilemap_plane
  attr_accessor :tilemap_zoom_x
  attr_accessor :tilemap_zoom_y
  attr_accessor :tilemap_tile_width
  attr_accessor :tilemap_tile_height
  #--------------------------------------------------------------------------
  alias seph_tilemap_gmap_init initialize
  def initialize
    seph_tilemap_gmap_init
    @tilemap_tone        = nil
    @tilemap_plane       = false
    @tilemap_zoom_x      = 0.5
    @tilemap_zoom_y      = 0.5
    @tilemap_tile_width  = 32
    @tilemap_tile_height = 32
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_down(distance)
    @display_y = @display_y + distance# [@display_y + distance, (self.height - 15) * 128].min
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_left(distance)
    @display_x = @display_x - distance # ([@display_x - distance, 0].max)
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_right(distance)
    @display_x = @display_x + distance # ([@display_x + distance, (self.width - 20) * 128].min)
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_up(distance)
    @display_y = @display_y - distance# ([@display_y - distance, 0].max)
  end
end

class Tilemap
  #--------------------------------------------------------------------------
  Animated_Autotiles_Frames = 15
  #--------------------------------------------------------------------------
  Autotiles = [
    [ [27, 28, 33, 34], [ 5, 28, 33, 34], [27,  6, 33, 34], [ 5,  6, 33, 34],
      [27, 28, 33, 12], [ 5, 28, 33, 12], [27,  6, 33, 12], [ 5,  6, 33, 12] ],
    [ [27, 28, 11, 34], [ 5, 28, 11, 34], [27,  6, 11, 34], [ 5,  6, 11, 34],
      [27, 28, 11, 12], [ 5, 28, 11, 12], [27,  6, 11, 12], [ 5,  6, 11, 12] ],
    [ [25, 26, 31, 32], [25,  6, 31, 32], [25, 26, 31, 12], [25,  6, 31, 12],
      [15, 16, 21, 22], [15, 16, 21, 12], [15, 16, 11, 22], [15, 16, 11, 12] ],
    [ [29, 30, 35, 36], [29, 30, 11, 36], [ 5, 30, 35, 36], [ 5, 30, 11, 36],
      [39, 40, 45, 46], [ 5, 40, 45, 46], [39,  6, 45, 46], [ 5,  6, 45, 46] ],
    [ [25, 30, 31, 36], [15, 16, 45, 46], [13, 14, 19, 20], [13, 14, 19, 12],
      [17, 18, 23, 24], [17, 18, 11, 24], [41, 42, 47, 48], [ 5, 42, 47, 48] ],
    [ [37, 38, 43, 44], [37,  6, 43, 44], [13, 18, 19, 24], [13, 14, 43, 44],
      [37, 42, 43, 48], [17, 18, 47, 48], [13, 18, 43, 48], [ 1,  2,  7,  8] ]
  ]
  #--------------------------------------------------------------------------
  attr_reader   :layers
  attr_accessor :tileset
  attr_accessor :autotiles
  attr_accessor :map_data
  attr_accessor :flash_data
  attr_accessor :priorities
  attr_accessor :visible
  attr_accessor Bouche extensiblex
  attr_accessor Bouche extensibley
  #--------------------------------------------------------------------------
  def initialize(viewport, map = $game_map.map)
    @layers = []
    for l in 0...6
      layer = Sprite.new(viewport)
      layer.bitmap = Bitmap.new(map.width * 32, map.height * 32)
      layer.z = l * 150
      layer.zoom_x = $game_map.tilemap_zoom_x
      layer.zoom_y = $game_map.tilemap_zoom_y
      if (tone = $game_map.tilemap_tone).is_a?(Tone)
        layer.tone = tone
      end
      @layers << layer
    end
    @tileset    = nil  # Refers to Map Tileset Name
    @autotiles  = []   # Refers to Tileset Auto-Tiles (Actual Auto-Tiles)
    @map_data   = nil  # Refers to 3D Array Of Tile Settings
    @flash_data = nil  # Refers to 3D Array of Tile Flashdata
    @priorities = nil  # Refers to Tileset Priorities
    @visible    = true # Refers to Tilest Visibleness
    @ox         = 0    # Bitmap Offsets
    @oy         = 0    # bitmap Offsets
    @data       = nil  # Acts As Refresh Flag
    @map         = map
    @tone        = $game_map.tilemap_tone
    @plane       = $game_map.tilemap_plane
    @zoom_x      = $game_map.tilemap_zoom_x
    @zoom_y      = $game_map.tilemap_zoom_y
    @tile_width  = $game_map.tilemap_tile_width
    @tile_height = $game_map.tilemap_tile_height
  end
  #--------------------------------------------------------------------------
  def dispose
    for layer in @layers
      layer.dispose
    end
  end
  #--------------------------------------------------------------------------
  def update
    unless @data == @map_data && @tile_width == $game_map.tilemap_tile_width &&
           @tile_height == $game_map.tilemap_tile_height
      refresh
    end
    unless @tone == $game_map.tilemap_tone
      @tone = $game_map.tilemap_tone
      @tone = Tone.new(0, 0, 0, 0) if @tone.nil?
      for layer in @layers
        layer.tone = @tone
        layer.tone = @tone
      end
    end
    unless @zoom_x == $game_map.tilemap_zoom_x
      @zoom_x = $game_map.tilemap_zoom_x
      for layer in @layers
        layer.zoom_x = @zoom_x
        layer.zoom_x = @zoom_x
      end
    end
    unless @zoom_y == $game_map.tilemap_zoom_y
      @zoom_y = $game_map.tilemap_zoom_y
      for layer in @layers
        layer.zoom_y = @zoom_y
        layer.zoom_y = @zoom_y
      end
    end
    for layer in @layers
      layer.ox = @ox
      layer.oy = @oy
    end
    if Graphics.frame_count % Animated_Autotiles_Frames == 0
      refresh_autotiles
    end
  end
  #--------------------------------------------------------------------------
  def refresh
    @data = @map_data
    for p in 0..5
      for z in 0...@map_data.zsize
        for x in 0...@map_data.xsize
          for y in 0...@map_data.ysize
            id = @map_data[x, y, z]
            next if id == 0
            next unless p == @priorities[id]
            #p = 2 if p > 2
            id < 384 ? draw_autotile(x, y, p, id) : draw_tile(x, y, p, id)
          end
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  def refresh_autotiles
    autotile_locations = Table.new(@map_data.xsize, @map_data.ysize,
      @map_data.zsize)
    for p in 0..5
      for z in 0...@map_data.zsize
        for x in 0...@map_data.xsize
          for y in 0...@map_data.ysize
            id = @map_data[x, y, z]
            next if id == 0
            next unless p == @priorities[id]
            p = 2 if p > 2
            if id < 384
              next unless @autotiles[id / 48 - 1].width / 96 > 1
              draw_autotile(x, y, p, id)
              autotile_locations[x, y, z] = 1
            else
              if autotile_locations[x, y, z] == 1
                draw_tile(x, y, p, id)
              end
            end
          end
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  def draw_tile(x, y, z, id)
    rect = Rect.new((id - 384) % 8 * 32, (id - 384) / 8 * 32, 32, 32)
    x *= @tile_width
    y *= @tile_height
    if @tile_width == 32 && @tile_height == 32
      @layers[z].bitmap.blt(x, y, @tileset, rect)
    else
      dest_rect = Rect.new(x, y, @tile_width, @tile_height)
      @layers[z].bitmap.stretch_blt(dest_rect, @tileset, rect)
    end
  end
  #--------------------------------------------------------------------------
  def draw_autotile(x, y, z, tile_id)
    autotile = @autotiles[tile_id / 48 - 1]
    tile_id %= 48
    bitmap = Bitmap.new(32, 32)
    tiles = Autotiles[tile_id / 8][tile_id % 8]
    frames = autotile.width / 96
     if frames == 0
   frames = 1
    if frames == 0
   frames = 1
   end
 end
     if frames == 0 
  frames = 1
end 
    anim = (Graphics.frame_count / Animated_Autotiles_Frames) % frames * 96
    for i in 0...4
      tile_position = tiles[i] - 1
      src_rect = Rect.new(tile_position % 6 * 16 + anim,
    x *= @tile_width
    y *= @tile_height
    if @tile_width == 32 && @tile_height == 32
      @layers[z].bitmap.blt(x, y, bitmap, Rect.new(0, 0, 32, 32))
    else
      dest_rect = Rect.new(x, y, @tile_width, @tile_height)
      @layers[z].bitmap.stretch_blt(dest_rect, bitmap, Rect.new(0, 0, 32, 32))
    end
  end
  #--------------------------------------------------------------------------
  def bitmap
    bitmap = Bitmap.new(@layers[0].bitmap.width, @layers[0].bitmap.height)
    for layer in @layers
      bitmap.blt(0, 0, layer.bitmap, Rect.new(0, 0,
        bitmap.width, bitmap.height))
    end
    return bitmap
  end
  #--------------------------------------------------------------------------
end

Posté par Peter le 9 Aoû - 00:19 (2010)
Spoiler


#=============================================================================
# ■ DS Résolution
# Pokemon Script Project DS - Brendan & SephirothSpawn
# 05/04/10
#-----------------------------------------------------------------------------
# Redimensionnement des sprites à 1*1 pixel.
#-----------------------------------------------------------------------------

class Sprite_Character < RPG::Sprite
  def initialize(viewport, character = nil)
    super(viewport)
    self.zoom_x = $game_map.tilemap_zoom_x
    self.zoom_y = $game_map.tilemap_zoom_y
    @character = character
    update
  end
end

class Game_Character
 
  #--------------------------------------------------------------------------
  # ? ?? X ?????
  #--------------------------------------------------------------------------
  def screen_x
    # ***
    #return (@real_x - $game_map.display_x + 3) / 4 + 16
    zx = $game_map.tilemap_zoom_x
    return (@real_x - $game_map.display_x + 3*zx) / 4*zx + 16*zx
  end
  #--------------------------------------------------------------------------
  # ? ?? Y ?????
  #--------------------------------------------------------------------------
  def screen_y
    # ***
    # y = (@real_y - $game_map.display_y + 3) / 4 + 32
    zy = $game_map.tilemap_zoom_y
    y = (@real_y - $game_map.display_y + 3*zy) / 4*zy + 32*zy
    # ???????????? Y ????????
    if @jump_count >= @jump_peak
      n = @jump_count - @jump_peak
    else
      n = @jump_peak - @jump_count
    end
    return y - (@jump_peak * @jump_peak - n * n) / 2
  end
  #--------------------------------------------------------------------------
  # ? ?? Z ?????
  #     height : ?????????
  #--------------------------------------------------------------------------
  def screen_z(height = 0)
    # ?????????? ON ???
    if @always_on_top
      # ???? 999
      return 999
    end
    # ***
    # z = (@real_y - $game_map.display_y + 3) / 4 + 32
    zy = $game_map.tilemap_zoom_y
    z = (@real_y - $game_map.display_y + 3*zy) / 4*zy + 32*zy
    # ??????
    if @tile_id > 0
      # ??????????? * 32 ???
      #return z + $game_map.priorities[@tile_id] * 32
      return z + $game_map.priorities[@tile_id] * 32*zy
    # ?????????
    else
      # ??? 32 ??????? 31 ???
      return z + ((height > 32*zy) ? 31 : 0)
    end
  end
  #--------------------------------------------------------------------------
  # ? bush_depth ***
  #--------------------------------------------------------------------------
  def bush_depth
    # ???????????????????? ON ???
    if @tile_id > 0 or @always_on_top
      return 0
    end
    # ?????????????????? 12??????? 0
    if @jump_count == 0 and $game_map.bush?(@x, @y)
      return 6
    else
      return 0
    end
  end
end

class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Set Map Display Position to Center of Screen
  #--------------------------------------------------------------------------
  def center(x, y)
    center_x = (256+9) * 4   # ????? X ?? * 4
    center_y = (192+10) * 4   # ????? Y ?? * 4
    $game_map.display_x = x * 128 - center_x # [0, [x * 128 - center_x, max_x].min].max
    $game_map.display_y = y * 128 - center_y # [0, [y * 128 - center_y, max_y].min].max
  end
end


#==============================================================================
# Tilemap Class
#------------------------------------------------------------------------------
# Script by SephirothSpawn
#==============================================================================

class Game_Map
  #--------------------------------------------------------------------------
  attr_reader   :map
  attr_accessor :tilemap_tone
  attr_accessor :tilemap_plane
  attr_accessor :tilemap_zoom_x
  attr_accessor :tilemap_zoom_y
  attr_accessor :tilemap_tile_width
  attr_accessor :tilemap_tile_height
  #--------------------------------------------------------------------------
  alias seph_tilemap_gmap_init initialize
  def initialize
    seph_tilemap_gmap_init
    @tilemap_tone        = nil
    @tilemap_plane       = false
    @tilemap_zoom_x      = 0.5
    @tilemap_zoom_y      = 0.5
    @tilemap_tile_width  = 32
    @tilemap_tile_height = 32
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_down(distance)
    @display_y = @display_y + distance# [@display_y + distance, (self.height - 15) * 128].min
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_left(distance)
    @display_x = @display_x - distance # ([@display_x - distance, 0].max)
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_right(distance)
    @display_x = @display_x + distance # ([@display_x + distance, (self.width - 20) * 128].min)
  end
  #--------------------------------------------------------------------------
  # ? ???????
  #     distance : ?????????
  #--------------------------------------------------------------------------
  def scroll_up(distance)
    @display_y = @display_y - distance# ([@display_y - distance, 0].max)
  end
end


class Tilemap
  #--------------------------------------------------------------------------
  Animated_Autotiles_Frames = 15
  #--------------------------------------------------------------------------
  Autotiles = [
    [ [27, 28, 33, 34], [ 5, 28, 33, 34], [27,  6, 33, 34], [ 5,  6, 33, 34],
      [27, 28, 33, 12], [ 5, 28, 33, 12], [27,  6, 33, 12], [ 5,  6, 33, 12] ],
    [ [27, 28, 11, 34], [ 5, 28, 11, 34], [27,  6, 11, 34], [ 5,  6, 11, 34],
      [27, 28, 11, 12], [ 5, 28, 11, 12], [27,  6, 11, 12], [ 5,  6, 11, 12] ],
    [ [25, 26, 31, 32], [25,  6, 31, 32], [25, 26, 31, 12], [25,  6, 31, 12],
      [15, 16, 21, 22], [15, 16, 21, 12], [15, 16, 11, 22], [15, 16, 11, 12] ],
    [ [29, 30, 35, 36], [29, 30, 11, 36], [ 5, 30, 35, 36], [ 5, 30, 11, 36],
      [39, 40, 45, 46], [ 5, 40, 45, 46], [39,  6, 45, 46], [ 5,  6, 45, 46] ],
    [ [25, 30, 31, 36], [15, 16, 45, 46], [13, 14, 19, 20], [13, 14, 19, 12],
      [17, 18, 23, 24], [17, 18, 11, 24], [41, 42, 47, 48], [ 5, 42, 47, 48] ],
    [ [37, 38, 43, 44], [37,  6, 43, 44], [13, 18, 19, 24], [13, 14, 43, 44],
      [37, 42, 43, 48], [17, 18, 47, 48], [13, 18, 43, 48], [ 1,  2,  7,  8] ]
  ]
  #--------------------------------------------------------------------------
  attr_reader   :layers
  attr_accessor :tileset
  attr_accessor :autotiles
  attr_accessor :map_data
  attr_accessor :flash_data
  attr_accessor :priorities
  attr_accessor :visible
  attr_accessor Bouche extensiblex
  attr_accessor Bouche extensibley
  #--------------------------------------------------------------------------
  def initialize(viewport, map = $game_map.map)
    @layers = []
    for l in 0...6
      layer = Sprite.new(viewport)
      layer.bitmap = Bitmap.new(map.width * 32, map.height * 32)
      layer.z = l * 150
      layer.zoom_x = $game_map.tilemap_zoom_x
      layer.zoom_y = $game_map.tilemap_zoom_y
      if (tone = $game_map.tilemap_tone).is_a?(Tone)
        layer.tone = tone
      end
      @layers << layer
    end
    @tileset    = nil  # Refers to Map Tileset Name
    @autotiles  = [] # Refers to Tileset Auto-Tiles (Actual Auto-Tiles)
    @map_data   = nil  # Refers to 3D Array Of Tile Settings
    @flash_data = nil  # Refers to 3D Array of Tile Flashdata
    @priorities = nil  # Refers to Tileset Priorities
    @visible    = true # Refers to Tilest Visibleness
    @ox         = 0    # Bitmap Offsets
    @oy         = 0    # bitmap Offsets
    @data       = nil  # Acts As Refresh Flag
    @map         = map
    @tone        = $game_map.tilemap_tone
    @plane       = $game_map.tilemap_plane
    @zoom_x      = $game_map.tilemap_zoom_x
    @zoom_y      = $game_map.tilemap_zoom_y
    @tile_width  = $game_map.tilemap_tile_width
    @tile_height = $game_map.tilemap_tile_height
  end
  #--------------------------------------------------------------------------
  def dispose
    for layer in @layers
      layer.dispose
    end
  end
  #--------------------------------------------------------------------------
  def update
    unless @data == @map_data && @tile_width == $game_map.tilemap_tile_width &&
           @tile_height == $game_map.tilemap_tile_height
      refresh
    end
    unless @tone == $game_map.tilemap_tone
      @tone = $game_map.tilemap_tone
      @tone = Tone.new(0, 0, 0, 0) if @tone.nil?
      for layer in @layers
        layer.tone = @tone
        layer.tone = @tone
      end
    end
    unless @zoom_x == $game_map.tilemap_zoom_x
      @zoom_x = $game_map.tilemap_zoom_x
      for layer in @layers
        layer.zoom_x = @zoom_x
        layer.zoom_x = @zoom_x
      end
    end
    unless @zoom_y == $game_map.tilemap_zoom_y
      @zoom_y = $game_map.tilemap_zoom_y
      for layer in @layers
        layer.zoom_y = @zoom_y
        layer.zoom_y = @zoom_y
      end
    end
    for layer in @layers
      layer.ox = @ox
      layer.oy = @oy
    end
    if Graphics.frame_count % Animated_Autotiles_Frames == 0
      refresh_autotiles
    end
  end
  #--------------------------------------------------------------------------
  def refresh
    @data = @map_data
    for p in 0..5
      for z in 0...@map_data.zsize
        for x in 0...@map_data.xsize
          for y in 0...@map_data.ysize
            id = @map_data[x, y, z]
            next if id == 0
            next unless p == @priorities[id]
            #p = 2 if p > 2
            id < 384 ? draw_autotile(x, y, p, id) : draw_tile(x, y, p, id)
          end
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  def refresh_autotiles
    autotile_locations = Table.new(@map_data.xsize, @map_data.ysize,
      @map_data.zsize)
    for p in 0..5
      for z in 0...@map_data.zsize
        for x in 0...@map_data.xsize
          for y in 0...@map_data.ysize
            id = @map_data[x, y, z]
            next if id == 0
            next unless p == @priorities[id]
            p = 2 if p > 2
            if id < 384
              next unless @autotiles[id / 48 - 1].width / 96 > 1
              draw_autotile(x, y, p, id)
              autotile_locations[x, y, z] = 1
            else
              if autotile_locations[x, y, z] == 1
                draw_tile(x, y, p, id)
              end
            end
          end
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  def draw_tile(x, y, z, id)
    rect = Rect.new((id - 384) % 8 * 32, (id - 384) / 8 * 32, 32, 32)
    x *= @tile_width
    y *= @tile_height
    if @tile_width == 32 && @tile_height == 32
      @layers[z].bitmap.blt(x, y, @tileset, rect)
    else
      dest_rect = Rect.new(x, y, @tile_width, @tile_height)
      @layers[z].bitmap.stretch_blt(dest_rect, @tileset, rect)
    end
  end
  #--------------------------------------------------------------------------
  def draw_autotile(x, y, z, tile_id)
    autotile = @autotiles[tile_id / 48 - 1]
    tile_id %= 48

    bitmap = Bitmap.new(32, 32)
    tiles = Autotiles[tile_id / 8][tile_id % 8]
    frames = autotile.width / 96
    if frames == 0
   frames = 1
   end

    anim = (Graphics.frame_count / Animated_Autotiles_Frames) % frames * 96
    for i in 1...4
      tile_position = tiles - 1
      src_rect = Rect.new(tile_position % 6 * 16 + anim,
        tile_position / 6 * 16, 16, 16)
      bitmap.blt(i % 2 * 16, i / 2 * 16, autotile, src_rect)
    end
    x *= @tile_width
    y *= @tile_height
    if @tile_width == 32 && @tile_height == 32
      @layers[z].bitmap.blt(x, y, bitmap, Rect.new(0, 0, 32, 32))
    else
      dest_rect = Rect.new(x, y, @tile_width, @tile_height)
      @layers[z].bitmap.stretch_blt(dest_rect, bitmap, Rect.new(0, 0, 32, 32))
    end
  end
  #--------------------------------------------------------------------------
  def bitmap
    bitmap = Bitmap.new(@layers[0].bitmap.width, @layers[0].bitmap.height)
    for layer in @layers
      bitmap.blt(0, 0, layer.bitmap, Rect.new(0, 0,
        bitmap.width, bitmap.height))
    end
    return bitmap
  end
  #--------------------------------------------------------------------------
end


Ton script est pas complet.
Remplace tout le script par celui là et dit moi si ca bug Clin d'œil foireux

Posté par Nuri Yuri le 9 Aoû - 06:42 (2010)
42 Maintenant c'est au tour de DS résolution de nous taper des failed to creat bitmap XD !
Normalement si tu ne touche pas trop au scripts et/ou au datas tu ne devrais pas avoir de bug !
Fin ce script la je ne le connais pas trop donc je ne préfères pas y toucher ...

Posté par LaPampa le 9 Aoû - 08:32 (2010)
Ca fait un autre bug XD... Ca devrait m'énerver à force :^^:
Mais c'est peut être à cause des smileys, tu pourrais les désactiver ?

Sinon, voici mon nouveau message d'erreur et mon nouveau log ^^

????? 'DS Résolution' ? 184 ??? NameError ????????

---------- Erreur de script : DS Résolution ----------
----- Type
RGSSError
----- Message
failed to create bitmap
----- Position dans DS Résolution
Ligne 318
----- Backtrace
Script : DS Résolution | Ligne : 318 | Méthode : in `initialize'
Script : DS Résolution | Ligne : 318 | Méthode : in `new'
Script : DS Résolution | Ligne : 318 | Méthode : in `draw_autotile'
Script : DS Résolution | Ligne : 290 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 283 | Méthode : in `each'
Script : DS Résolution | Ligne : 283 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 282 | Méthode : in `each'
Script : DS Résolution | Ligne : 282 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 281 | Méthode : in `each'
Script : DS Résolution | Ligne : 281 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 280 | Méthode : in `each'
Script : DS Résolution | Ligne : 280 | Méthode : in `refresh_autotiles'
Script : DS Résolution | Ligne : 256 | Méthode : in `update'
Script : MAPLINK | Ligne : 217 | Méthode : in `update'
Script : Scene_Map | Ligne : 61 | Méthode : in `alias_update'
Script : MAPPANEL* | Ligne : 89 | Méthode : in `oldUpdate'
Script : Bouton_Rouge* | Ligne : 54 | Méthode : in `update'
Script : Scene_Map | Ligne : 26 | Méthode : in `main'
Script : Scene_Map | Ligne : 21 | Méthode : in `loop'
Script : Scene_Map | Ligne : 33 | Méthode : in `main'
Script : Main | Ligne : 58

Posté par Peter le 9 Aoû - 12:50 (2010)
A oui c'est un bug que je ne peux pas corriger,utilise pas les autotils *visible* pour le moment car ils s'affichent mal et bug si il est trop utiliser,remplace le par un élément du tilset au hasard  et quand le script sera corriger par Pal" tu fera remplissage avec ton autotils ok ?
(Je le corrigerai bien mais je ne comprend pas le script de Pal alors va falloir attendre qu'il revienne de Vacance ^^")

Posté par LaPampa le 9 Aoû - 16:47 (2010)
Ca marche pas -_-
J'ai peut être oublié des autotiles, mais j'ai vérifié pas mal de fois, et rien...
Mais en tout cas, merci beaucoup d'avoir essayé de m'aider, vraiment Imbécile heureux
Mais si une idée te vient... :D

Posté par Peter le 9 Aoû - 18:34 (2010)
Tu es sûr d'avoir retiré tout les autotils de tes cartes?

Posté par LaPampa le 10 Aoû - 22:04 (2010)
Certains :?
J'ai vérifié pas mal de fois, de près, et rien  ><

Posté par RevengeOfShadow le 16 Aoû - 15:53 (2010)
Essaie de mettre un fichier "Scripts" dans "Data" juste pour voir si ça vient de là. Et un conseil : Mettez vos scripts en balises code ou citation parce que sinon c'est pas clair.