Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Изображение ниже персонажа. Помощь. Скрипт.

Изображение ниже персонажа. Помощь. Скрипт. 8 года 3 мес. назад #88879

  • AndreyE
  • AndreyE аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 60
  • Спасибо получено: 107
  • За 2 место на конкурсе маппингаПроект месяца 1 местоПроект года 3 местоПобедитель конкурса
Доброго времени суток! Хочу попросить помощи в разборе или поиске похожего скрипта.

Хочу сделать так чтобы картинки ИД с 1 по 30 показывались под событиями и персонажем.

Мне помогли таким скриптом:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]


Так же нашел похожий скрипт:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]


Они выполняют свою функцию и персонаж с событиями находится над картинками. Но проблема заключается в том что нарушена последовательность слоев. Например картинка(1) слоя 4 может быть выше слоя 20 картинки(2). Если поменять цифры слоев местами не помогает.
Вызов изображения у меня записан скриптом: screen.pictures[2].show("01/2", 0, 312, 200, 100, 100, 255, 0)

Если у кого есть возможность посмотрите пожалуйста эту демку(1.5мб): yadi.sk/d/2R05nIEFmjfu5

Строчка от скрипта MOG_Picture_Effects: "picture_position(3,-2)" Первая цифра это ИД слоя(картинки), вторая это просто значение для того чтобы картинка привязывалась к координатам карты, поэтому оно всегда -2.

У меня сделано так:
picture_position(3,-2)
screen.pictures[3].show("01/k", 1, 312, 200, 100, 100, 255, 0)
picture_position(2,-2)
screen.pictures[2].show("01/z", 1, 24, 216, 100, 100, 255, 0)


Скрипты между собой не конфликтуют, проверил без MOG_Picture_Effects.

Возможно дело не в скрипте а моей невнимательности.
Последнее редактирование: 8 года 3 мес. назад от AndreyE.
Администратор запретил публиковать записи гостям.

Изображение ниже персонажа. Помощь. Скрипт. 8 года 3 мес. назад #88889

  • AndreyE
  • AndreyE аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 60
  • Спасибо получено: 107
  • За 2 место на конкурсе маппингаПроект месяца 1 местоПроект года 3 местоПобедитель конкурса
Проблема решена, большое спасибо dirge за помощь в скрипте.
Сам скрипт:
module Soul
  module LayeredPicture
    F_PIC = 1 # id первой картинки
    L_PIC = 50 # id последней
  end
end
 
class Spriteset_Map
  include Soul::LayeredPicture
  #--------------------------------------------------------------------------
  # ● Alias Listings
  #--------------------------------------------------------------------------  
  unless method_defined?(:soul_layered_picture_initialize)
    alias_method(:soul_layered_picture_initialize, :initialize)
  end  
  unless method_defined?(:soul_layered_picture_dispose)
    alias_method(:soul_layered_picture_dispose, :dispose)
  end    
  #--------------------------------------------------------------------------
  # ● Initialize
  #--------------------------------------------------------------------------  
  def initialize
    soul_layered_picture_initialize
    for i in F_PIC..L_PIC
      @picture_sprites[i] = Sprite_Picture.new(@viewport1, $game_map.screen.pictures[i])
    end    
  end
  #--------------------------------------------------------------------------
  # ● Dispose
  #--------------------------------------------------------------------------
  def dispose
    soul_layered_picture_dispose
    for i in F_PIC..L_PIC
      @picture_sprites[i].dispose
    end 
  end  
end
 
class Sprite_Picture < Sprite
  include Soul::LayeredPicture
  alias picture_z_update_position update_position
  def update_position
    picture_z_update_position
    if @picture.number == F_PIC..L_PIC 
      self.z = 1
    else
      self.z = @picture.number
    end
  end
end
Администратор запретил публиковать записи гостям.
Модераторы: NeKotZima
Время создания страницы: 0.188 секунд