Страница 144 из 147 ПерваяПервая ... 4494134142143144145146 ... ПоследняяПоследняя
Показано с 1,431 по 1,440 из 1470

Тема: Помощь с скриптами (RGSS)

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

    По умолчанию

    чот решил снова к мукеру вернуться и вдруг, проблема реализации
    Спойлер дб с персами выглядит так:
    PHP код:
    module Charaters
      Names 
    = ["Name_1","Name_2"]
      
    Name_1 = {
        :
    idle       =>  13,
        :
    walk_f     =>   0,
        :
    walk_b     =>   0,
        :
    run_f      =>   0,
        :
    run_b      =>   0,
        :
    sit        =>   0
      
    }
      
    Name_2 = {
        :
    idle       =>  13,
        :
    walk_f     =>   0,
        :
    walk_b     =>   0,
        :
    run_f      =>   0,
        :
    run_b      =>   0,
        :
    sit        =>   0
      
    }
    end 
    Спойлер class Sprite_Character < Sprite_Base:
    PHP код:
    class Sprite_Character Sprite_Base

    ....................................................................................

      
    def set_character_bitmap
        
    if Charaters::Names.include?(@actor.name)
          
    self.bitmap Cache.character(@actor.name "/Idle")
          @
    cw bitmap.width Charaters::Name_1[:idle]
          @
    ch bitmap.height
          
    @fps 5
          
    @index 0
        
    else
          
    self.bitmap Cache.character(@character_name)
          
    sign = @character_name[/^[\!\$]./]
          if 
    sign && sign.include?('$')
            @
    cw bitmap.width 3
            
    @ch bitmap.height 4
          
    else
            @
    cw bitmap.width 12
            
    @ch bitmap.height 8
          end
        end
        self
    .ox = @cw 2
        self
    .oy = @ch
      end

      def update_src_rect
        
    if Charaters::Names.include?(@actor.name)
          @
    fps += 1
          
    if @fps 5
            
    @fps 0
            
    @index += 1
            
    @index if @index >= Charaters::Name_1[:idle]
            
    sx = @index * @cw
            sy 
    0
            self
    .src_rect.set(sx sy, @cw, @ch)
          
    end
        
    else
          if @
    tile_id == 0
            index 
    = @character.character_index
            pattern 
    = @character.pattern ? @character.pattern 1
            sx 
    = (index pattern) * @cw
            sy 
    = (index + (@character.direction 2) / 2) * @ch
            self
    .src_rect.set(sx sy, @cw, @ch)
          
    end
        end
      end

    ....................................................................................

      
    end
    end 

    self.bitmap = Cache.character(@actor.name + "/Idle") - использую как тест вариант, "/Idle" будет переменной.
    Charaters::Name_1[:idle]
    Name_1 и [:idle] - как это реализовать в виде переменных?
    или есть какой-то другой вариант?
    также при движении персонажа спрайт дублируется, хотя и анимацию проигрывается нормально
    Последний раз редактировалось HopeBree; 27.03.2018 в 21:38.

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

    По умолчанию

    Помогите пожалуйста отредактировать небольшой скрипт:

    Спойлер Скрипт:

    PHP код:
    module INACTION 
       
      SWITCH_ID 
    5    # ID переключателя, при котором вызов ивента возможен 
      
    COMMON_EVENT 1  # ID ивента 
      
    STAY_TIME 60   # Время вызова ивента после не активности 
      
    REPEAT true     # Повторять ивент после его завершения через STAY_TIME 
       
    end 

    class Sprite_Character Sprite_Base 
      alias inaction_initialize initialize 
      def initialize
    (viewportcharacter nil
        @
    standtime 
        inaction_initialize
    (viewportcharacter
      
    end 
       
      alias inaction_update update 
      def update 
        inaction_update 
        
    return move if $game_player.moving
        return if 
    $game_switches[INACTION::SWITCH_ID] == true 
        
    @standtime += 1
        
        inaction 
    if @standtime == INACTION::STAY_TIME 
         $game_variables
    [15] = @standtime
      end  
       
      def move 
        
    @standtime 
       
      end 
       
      def inaction 
        $game_temp
    .reserve_common_event(INACTION::COMMON_EVENT
        @
    standtime if INACTION::REPEAT 
        
      end 
    end 


    Этот скрипт если не ошибаюсь HopeBree

    Нужно чтобы при простое героя 60кадров включался 5 переключатель. Когда персонаж движется выключался.
    Или если с ожиданием кадров сложно, то можно без него. Главное чтобы переключатель включался-выключался.

    У меня мозгов хватило только вставить строчку $game_variables[15] = @standtime и в общем событие поставить ветвление на переменной. Но минус в том что значение переменной постоянно скачет от 1 до 60

  3. #1433
    Администратор Аватар для Пётр
    Информация о пользователе
    Регистрация
    24.04.2014
    Адрес
    Краснодар
    Сообщений
    3,940
    Записей в дневнике
    6
    Репутация: 132 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от АндрейЕ Посмотреть сообщение
    Помогите пожалуйста отредактировать небольшой скрипт:

    Спойлер Скрипт:

    PHP код:
    module INACTION 
       
      SWITCH_ID 
    5    # ID переключателя, при котором вызов ивента возможен 
      
    COMMON_EVENT 1  # ID ивента 
      
    STAY_TIME 60   # Время вызова ивента после не активности 
      
    REPEAT true     # Повторять ивент после его завершения через STAY_TIME 
       
    end 

    class Sprite_Character Sprite_Base 
      alias inaction_initialize initialize 
      def initialize
    (viewportcharacter nil
        @
    standtime 
        inaction_initialize
    (viewportcharacter
      
    end 
       
      alias inaction_update update 
      def update 
        inaction_update 
        
    return move if $game_player.moving
        return if 
    $game_switches[INACTION::SWITCH_ID] == true 
        
    @standtime += 1
        
        inaction 
    if @standtime == INACTION::STAY_TIME 
         $game_variables
    [15] = @standtime
      end  
       
      def move 
        
    @standtime 
       
      end 
       
      def inaction 
        $game_temp
    .reserve_common_event(INACTION::COMMON_EVENT
        @
    standtime if INACTION::REPEAT 
        
      end 
    end 


    Этот скрипт если не ошибаюсь HopeBree

    Нужно чтобы при простое героя 60кадров включался 5 переключатель. Когда персонаж движется выключался.
    Или если с ожиданием кадров сложно, то можно без него. Главное чтобы переключатель включался-выключался.

    У меня мозгов хватило только вставить строчку $game_variables[15] = @standtime и в общем событие поставить ветвление на переменной. Но минус в том что значение переменной постоянно скачет от 1 до 60
    А обнулять переменную когда бежишь не сможешь прописать?

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

    По умолчанию

    Цитата Сообщение от Пётр Посмотреть сообщение
    А обнулять переменную когда бежишь не сможешь прописать?
    Это уже сложно для меня(

  5. #1435
    Администратор Аватар для Пётр
    Информация о пользователе
    Регистрация
    24.04.2014
    Адрес
    Краснодар
    Сообщений
    3,940
    Записей в дневнике
    6
    Репутация: 132 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от АндрейЕ Посмотреть сообщение
    Это уже сложно для меня(
    Я конечно тот еще гений, но...
    def move
    $game_variables[15] = 0
    @standtime = 0

    end

    Но это не точно.)
    Я бы бахнул в параллельном событии всё.)
    Ставишь в условии
    $game_player.moving?
    ​и пляшешь как хочешь.)

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

    По умолчанию

    Цитата Сообщение от Пётр Посмотреть сообщение
    Я конечно тот еще гений, но...
    def move
    $game_variables[15] = 0
    @standtime = 0

    end

    Но это не точно.)
    Я бы бахнул в параллельном событии всё.)
    Ставишь в условии
    $game_player.moving?
    ​и пляшешь как хочешь.)
    Идея с $game_player.moving? хороша! Правда появилась временами небольшая дёрганность но думаю с этим разберусь, спасибо!

  7. #1437

    По умолчанию

    rpg maker vx ace
    помогите пожалуйста запихать скрипт мыши в проект.
    скрипт мыши:
    https://forums.rpgmakerweb.com/index...for-ace.17829/
    как его пихать в проект? я настолько давно и неправда работал со скриптами в мейкерах хоть в какой то степени что даже не соображу сейчас что, где и зачем.

  8. #1438
    Бывалый Аватар для Phileas
    Информация о пользователе
    Регистрация
    05.02.2016
    Адрес
    HD 128620, HR 5459, CP−60°5483, GCTP 3309.00A, LHS 50
    Сообщений
    617
    Записей в дневнике
    26
    Репутация: 22 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от череззаборногузадеришко Посмотреть сообщение
    rpg maker vx ace
    помогите пожалуйста запихать скрипт мыши в проект.
    скрипт мыши:
    https://forums.rpgmakerweb.com/index...for-ace.17829/
    как его пихать в проект? я настолько давно и неправда работал со скриптами в мейкерах хоть в какой то степени что даже не соображу сейчас что, где и зачем.
    Просто вставь скрипт в раздел "Пользовательский" Выше скрипта "Main", но ниже всех остальных.
    Мои игры

    Мой Telegram-канал

    Мой Boosty



    Спойлер In my humble opinion :

    Все мои сообщения отражают лишь моё скромное мнение. Я ни в коем случае не пытаюсь кого-либо обидеть, ни на кого/что не наезжаю и ничего не навязываю. Благодарю за понимание и адекватность.

  9. #1439

    По умолчанию

    Цитата Сообщение от Phileas Посмотреть сообщение
    Просто вставь скрипт в раздел "Пользовательский" Выше скрипта "Main", но ниже всех остальных.
    там вроде всё не настолько просто в данном случае... но начну с этого.

  10. #1440

    По умолчанию

    rpg maker vx ace

    ошибка:
    картинка

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

    но я не настолько хорошо разбираюсь в скриптах чтобы понять чего там мыше не хватает...
    одно из решений - вставить проверку на недостающее и добавить его при отсутствии.

    люди разбирающиеся в скриптах - помогите допилить этот момент. в остальном меня скрипт устраивает вроде.

Страница 144 из 147 ПерваяПервая ... 4494134142143144145146 ... ПоследняяПоследняя

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

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

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

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

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

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

Ваши права

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