Страница 358 из 643 ПерваяПервая ... 258308348356357358359360368408458 ... ПоследняяПоследняя
Показано с 3,571 по 3,580 из 6423

Тема: Общие вопросы

  1. #3571
    Маститый Аватар для HopeBree
    Информация о пользователе
    Регистрация
    27.03.2013
    Сообщений
    1,204
    Записей в дневнике
    6
    Репутация: 38 Добавить или отнять репутацию

    По умолчанию

    хмм, а какие ид слоев использовал?
    я брал с 1-10, вроде проблем не было, мб я использовал другой скрипт, но этот мне самый первый попался в гугле
    нарыл свой старый проект по тохе, который закинул из-за лени скорее всего и пробы перепрыгнуть через свою голову
    посмотри этот еще
    PHP код:
    =begin

     Picture Below Characters Ace
     by Woratana
     Port by PK8
     Created
    2/22/2009
     Ported
    4/25/2012
     Modified
    4/25/2012
     ──────────────────────────────────────────────────────────────────────────────
     ■ Table of Contents
       ○ Introduction 
    Description                    Line 17-18
       ○ Features                                      
    Line 20-22
       ○ Methods Aliased                               
    Line 24-26
       ○ Thanks                                        
    Line 28-29
       ○ Changelog                                     
    Line 31-33
     ──────────────────────────────────────────────────────────────────────────────
     ■ Introduction 
    Description
       Show pictures above the tiles but underneath the characters on the map
    .
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Features
       o Set which pictures would appear under the characters
    .
       
    o The selected pictures will appear above tiles but below characters.
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Methods Aliased
       o Spriteset_Map
    .create_pictures
       o Sprite_Picture
    .update
     ──────────────────────────────────────────────────────────────────────────────
     ■ Thanks
       Woratana 
    for making the script this was ported from.
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Changelog 
    (MM/DD/YYYY)
       
    v1    (2/22/2009) - Initial release.
       
    v1 Ace(4/25/2012) - Ported to Ace.

    =
    end

    #===============================================================================​
    # * Configuration
    #===============================================================================​
    module Picture_Below
      ID_From 
    1  # Set from which picture IDs will appear under the characters.
      
    ID_To   10  # Set which picture ID this stops at.
    end

    #==============================================================================
    # ** Spriteset_Map
    #------------------------------------------------------------------------------
    #  This class brings together map screen sprites, tilemaps, etc.
    #  It's used within the Scene_Map class.
    #==============================================================================

    class Spriteset_Map
      
    #---------------------------------------------------------------------------
      # * Alias Listings
      #---------------------------------------------------------------------------
      
    unless method_defined?(:wora_picbelow_create_pictures)
        
    alias_method(:wora_picbelow_create_pictures, :create_pictures)
      
    end
      
    #--------------------------------------------------------------------------
      # * Create Picture Sprite
      #--------------------------------------------------------------------------
      
    def create_pictures
        wora_picbelow_create_pictures
        
    for i in Picture_Below::ID_From..Picture_Below::ID_To
          
    # Create picture below player in viewport1.
          
    @picture_sprites[i] = Sprite_Picture.new(@viewport1,
            
    $game_map.screen.pictures[i])
        
    end
      end
    end

    #==============================================================================
    # ** Sprite_Picture
    #------------------------------------------------------------------------------
    #  This sprite is used to display the picture.It observes the Game_Character
    #  class and automatically changes sprite conditions.
    #==============================================================================

    class Sprite_Picture Sprite
      
    #---------------------------------------------------------------------------
      # * Alias Listings
      #---------------------------------------------------------------------------
      
    unless method_defined?(:wora_picbelow_update)
        
    alias_method(:wora_picbelow_update, :update)
      
    end
      
    #--------------------------------------------------------------------------
      # * Frame Update
      #--------------------------------------------------------------------------
      
    def update
        wora_picbelow_update
        self
    .$game_player.screen_z if (@picture.number >=
          
    Picture_Below::ID_From and @picture.number <= Picture_Below::ID_To)
      
    end
    end 

  2. #3572
    Местный Аватар для АндрейЕ
    Информация о пользователе
    Регистрация
    24.05.2014
    Адрес
    Тольятти
    Сообщений
    225
    Репутация: 33 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от HopeBree Посмотреть сообщение
    хмм, а какие ид слоев использовал?
    я брал с 1-10, вроде проблем не было, мб я использовал другой скрипт, но этот мне самый первый попался в гугле
    нарыл свой старый проект по тохе, который закинул из-за лени скорее всего и пробы перепрыгнуть через свою голову
    посмотри этот еще
    PHP код:
    =begin

     Picture Below Characters Ace
     by Woratana
     Port by PK8
     Created
    2/22/2009
     Ported
    4/25/2012
     Modified
    4/25/2012
     ──────────────────────────────────────────────────────────────────────────────
     ■ Table of Contents
       ○ Introduction 
    Description                    Line 17-18
       ○ Features                                      
    Line 20-22
       ○ Methods Aliased                               
    Line 24-26
       ○ Thanks                                        
    Line 28-29
       ○ Changelog                                     
    Line 31-33
     ──────────────────────────────────────────────────────────────────────────────
     ■ Introduction 
    Description
       Show pictures above the tiles but underneath the characters on the map
    .
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Features
       o Set which pictures would appear under the characters
    .
       
    o The selected pictures will appear above tiles but below characters.
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Methods Aliased
       o Spriteset_Map
    .create_pictures
       o Sprite_Picture
    .update
     ──────────────────────────────────────────────────────────────────────────────
     ■ Thanks
       Woratana 
    for making the script this was ported from.
     
    ──────────────────────────────────────────────────────────────────────────────
     ■ Changelog 
    (MM/DD/YYYY)
       
    v1    (2/22/2009) - Initial release.
       
    v1 Ace(4/25/2012) - Ported to Ace.

    =
    end

    #===============================================================================​
    # * Configuration
    #===============================================================================​
    module Picture_Below
      ID_From 
    1  # Set from which picture IDs will appear under the characters.
      
    ID_To   10  # Set which picture ID this stops at.
    end

    #==============================================================================
    # ** Spriteset_Map
    #------------------------------------------------------------------------------
    #  This class brings together map screen sprites, tilemaps, etc.
    #  It's used within the Scene_Map class.
    #==============================================================================

    class Spriteset_Map
      
    #---------------------------------------------------------------------------
      # * Alias Listings
      #---------------------------------------------------------------------------
      
    unless method_defined?(:wora_picbelow_create_pictures)
        
    alias_method(:wora_picbelow_create_pictures, :create_pictures)
      
    end
      
    #--------------------------------------------------------------------------
      # * Create Picture Sprite
      #--------------------------------------------------------------------------
      
    def create_pictures
        wora_picbelow_create_pictures
        
    for i in Picture_Below::ID_From..Picture_Below::ID_To
          
    # Create picture below player in viewport1.
          
    @picture_sprites[i] = Sprite_Picture.new(@viewport1,
            
    $game_map.screen.pictures[i])
        
    end
      end
    end

    #==============================================================================
    # ** Sprite_Picture
    #------------------------------------------------------------------------------
    #  This sprite is used to display the picture.It observes the Game_Character
    #  class and automatically changes sprite conditions.
    #==============================================================================

    class Sprite_Picture Sprite
      
    #---------------------------------------------------------------------------
      # * Alias Listings
      #---------------------------------------------------------------------------
      
    unless method_defined?(:wora_picbelow_update)
        
    alias_method(:wora_picbelow_update, :update)
      
    end
      
    #--------------------------------------------------------------------------
      # * Frame Update
      #--------------------------------------------------------------------------
      
    def update
        wora_picbelow_update
        self
    .$game_player.screen_z if (@picture.number >=
          
    Picture_Below::ID_From and @picture.number <= Picture_Below::ID_To)
      
    end
    end 
    Все по прежнему( но спасибо за этот скрипт с описанием, теперь знаю в каком направлении еще можно поискать. Сейчас полезу в гугл, если что найду отпишусь)

    UPD. Использую на данный момент примерно 10 нижних слоев, но ид им назначаю четные числа 2.4.6 и т.д. примерно до 20 выходит. но в дальнейшем возможно больше будет раза в 2, пока не знаю.

  3. #3573
    Маститый Аватар для HopeBree
    Информация о пользователе
    Регистрация
    27.03.2013
    Сообщений
    1,204
    Записей в дневнике
    6
    Репутация: 38 Добавить или отнять репутацию

    По умолчанию

    а что ты делаешь с картинкой под персонажем?
    если банальную анимацию, то мой тебе совет, используй параллакс

  4. #3574
    Местный Аватар для АндрейЕ
    Информация о пользователе
    Регистрация
    24.05.2014
    Адрес
    Тольятти
    Сообщений
    225
    Репутация: 33 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от HopeBree Посмотреть сообщение
    а что ты делаешь с картинкой под персонажем?
    если банальную анимацию, то мой тебе совет, используй параллакс
    Делаю как раз параллаксом) Всё получается можно сказать стандартными командами, но вот только выше персонажа)
    Картинки вывожу скриптом: screen.pictures[12].show("07/12", 1, 256, 416, 100, 100, 255, 0)
    Но минус этого в том что он картинку выводит по координатам экрана а не карты. Скрипт MOG_Picture_Effects позволяет выводить по координате карты. + еще несколько полезных функций.

    Есть у меня хороший скрипт для паралакса(названия сейчас не найду), все делает как мне надо, но его минус большой то что он тормознутый, подходит только для фиксируемых картинок, если заставить его менять картинки то он их долго подгружает и игра тормозит.

  5. #3575
    Маститый Аватар для HopeBree
    Информация о пользователе
    Регистрация
    27.03.2013
    Сообщений
    1,204
    Записей в дневнике
    6
    Репутация: 38 Добавить или отнять репутацию

    По умолчанию

    я использую Overlay Mapping и Galv's Layer Graphics
    ом для статических картинок или анимированых, но без движений в разные стороны
    от галва уже для движущих картинок

  6. #3576
    Местный Аватар для АндрейЕ
    Информация о пользователе
    Регистрация
    24.05.2014
    Адрес
    Тольятти
    Сообщений
    225
    Репутация: 33 Добавить или отнять репутацию

    По умолчанию

    И это снова я)
    Всё таки мне очень хочется чтобы эти 2 скрипта работали вместе, за эти дни уже столько всего перепробовал, нашел даже скрипт который объединяет в себе функции этих двух, но проблема в нижних слоях остается та же.
    Отсюда уже возникла мысль, что возможно это я допустил где то ошибку и просто напросто этого не вижу.
    Если у кого есть возможность посмотрите пожалуйста эту демку(1.5мб): https://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)

    По логике слой 3 должен быть выше слоя 2 но это не так, если менять цифры слоев это не помогает, помогает если только k поменять на z и на оборот. Поэтому даже не могу вычислить в чем закономерность.

    Upd. Придумал как через событие и 2 переменные привязывать картинки к карте.Так что проблему в скрипте MOG_Picture_Effects можно отбросить.
    Показ картинки выглядит так: screen.pictures[3].show("01/k", 1, $game_variables[7]+24,$game_variables[8]+216, 100, 100, 255, 0)
    Где $game_variables[7] и $game_variables[8] это переменные которые получают координаты x и y. Их они получают от события которое находится в левом верхнем углу карты.
    Указывая так: $game_variables[7]+20 значение после плюса можно смещать изображения.
    Поиски решения продолжаются)
    Последний раз редактировалось АндрейЕ; 08.01.2016 в 20:44.

  7. #3577
    Супер-модератор Аватар для dirge
    Информация о пользователе
    Регистрация
    25.02.2013
    Сообщений
    924
    Репутация: 79 Добавить или отнять репутацию

    По умолчанию

    АндрейЕ, держи, переписал немного этот LayeredPicture
    Код:
    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
    но т.к. мне пришлось переписать один метод, а не сделать его через alias, то возможно он теперь с чем работать не будет, но не уверен, протестируй в общем.

    upd
    переписал таки чрез alias, для надежности
    Последний раз редактировалось dirge; 10.01.2016 в 03:00. Причина: обновил скрипт

  8. #3578
    Местный Аватар для АндрейЕ
    Информация о пользователе
    Регистрация
    24.05.2014
    Адрес
    Тольятти
    Сообщений
    225
    Репутация: 33 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от dirge Посмотреть сообщение
    АндрейЕ, держи, переписал немного этот LayeredPicture
    Спойлер :
    Код:
    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-1] = 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-1].dispose
        end 
      end  
    end
    
    class Sprite_Picture < Sprite
      include Soul::LayeredPicture
      
      def update_position
        self.x = @picture.x
        self.y = @picture.y
        if @picture.number == F_PIC..L_PIC 
          self.z = 1
        else
          self.z = @picture.number
        end
      end
    end


    но т.к. мне пришлось переписать один метод, а не сделать его через alias, то возможно он теперь с чем работать не будет, но не уверен, протестируй в общем.
    Спасибо, протестировал, картинки выше персонажа, скрипт как будто не реагирует, но и ошибок нет.

  9. #3579
    Супер-модератор Аватар для dirge
    Информация о пользователе
    Регистрация
    25.02.2013
    Сообщений
    924
    Репутация: 79 Добавить или отнять репутацию

    По умолчанию

    хм, перекинул в чистый проект, все работает. Вот - https://yadi.sk/d/WzT1FiPrmma4b
    Переписал заодно через alias, возможно у тебя какой-то другой скрипт переписывал поверх, сейчас уже не должен.
    Последний раз редактировалось dirge; 10.01.2016 в 03:03.

  10. #3580
    Местный Аватар для АндрейЕ
    Информация о пользователе
    Регистрация
    24.05.2014
    Адрес
    Тольятти
    Сообщений
    225
    Репутация: 33 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от dirge Посмотреть сообщение
    хм, перекинул в чистый проект, все работает. Вот - https://yadi.sk/d/b7jMaXVwmmZsN
    Переписал заодно через alias, возможно у тебя какой-то другой скрипт переписывал поверх.
    В твоем работает, да действительно странно, у себя все скрипты удалил из проекта, глюк остался, видимо что то поломалось.
    Завтра тогда заново создам проект чтобы исключить все глюки и вставлю все свои 14 слоёв. Проверю как с ними будет.
    Спасибо тебе большое! Завтра днем-вечером отпишусь.

    UPD. Перед сном,а то не усну) решил небольшой тест с двумя слоями сделать + фиксировать картинки на карте скриптом MOG_Picture_Effects. Тест прошел на 5+ слои меняются местами, картинки зафиксированы. Есть большой шанс что завтра с остальным заработает)
    Последний раз редактировалось АндрейЕ; 10.01.2016 в 03:13.

Страница 358 из 643 ПерваяПервая ... 258308348356357358359360368408458 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 16 (пользователей: 0 , гостей: 16)

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Общие вопросы