Страница 13 из 19 ПерваяПервая ... 31112131415 ... ПоследняяПоследняя
Показано с 121 по 130 из 189

Тема: Мастера мэйкера

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Создатель Аватар для Рольф
    Информация о пользователе
    Регистрация
    14.04.2008
    Адрес
    Южно- Сахалинск/Пенза
    Сообщений
    10,182
    Записей в дневнике
    2
    Репутация: 108 Добавить или отнять репутацию

    По умолчанию

    Не баллов ради, а ради объяснения. Я сам долго не мог допереть до этого.
    Не в обиду рассмешил. Народ изучайте стандартные функции.

  2. #2
    Хранитель Аватар для Paranoid
    Информация о пользователе
    Регистрация
    22.12.2014
    Сообщений
    2,776
    Записей в дневнике
    34
    Репутация: 28 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Рольф Посмотреть сообщение
    Народ изучайте стандартные функции.
    До сих пор не пойму за что треть этих штук отвечает. У меня мейкер вроде бы локализован, но всплывающие подсказки никто не перевел.
    Лицензионный VX Ace. Спасибо Петр.
    2 года мукеризма в пустую.

  3. #3
    Создатель Аватар для Рольф
    Информация о пользователе
    Регистрация
    14.04.2008
    Адрес
    Южно- Сахалинск/Пенза
    Сообщений
    10,182
    Записей в дневнике
    2
    Репутация: 108 Добавить или отнять репутацию

    По умолчанию

    Я ими не пользовался. Это тем конечно создана, чтобы раскрывать весь потенциал ивентов, но и чуток сркиптов, но это действительно легкий вопрос был.

  4. #4

    По умолчанию

    Нужно на Chocobo(vehicle) перепрыгнуть через мост, но Chocobo упирается и не прыгает




    Использую 2 скрипта:

    Спойлер Land Vehicle:

    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ This script changes how the "Boat" vehicle functions. By default, the ║
    # ║ boat an travel on water, the same as the ship. Why isn't there a land ║
    # ║ vehicle? This script changes the boat to function as a land vehicle, able ║
    # ║ to travel over any terrain that the player can (at a faster speed and ║
    # ║ without encounters), and blocks it from traveling over water or ║
    # ║ activating touch and confirm event processes. ║
    # ║ ║
    # ║ Anyone familiar with how Chocobos functioned in the SNES-era Final ║
    # ║ Fantasy titles should notice similarities here. ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ TERMS OF USE ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ ► Do not edit the script's header or comments. ║
    # ║ ► Free to use in commercial projects as long as proper credit is given to ║
    # ║ ALL the names in the above header. ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ CHANGE LOG ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ ■ October 31, 2014 : Option to disable stepping animation. │ (v1.04) ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ July 21, 2014 : Option to disable action button events. │ (v1.03) ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ January 30, 2013 : Bug fixed. │ (v1.02) ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ December 01, 2012 : Added option to keep encounters & touch │ (v1.01) ║
    # ║ events. │ ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ November 27, 2012 : Initial release. │ (v1.00) ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ NEXT VERSION ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ ■ Script completed! ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ OVERWRITTEN METHODS ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ This script overwrites a few methods in various default scripts. ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ class Game_Map ║
    # ║ ► def boat_passable? ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ class Game_Player < Game_Character ║
    # ║ ► def map_passable? ║
    # ║ ► def update_encounter ║
    # ║ ► def check_touch_event ║
    # ║ ► def check_action_event ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ ■ class Game_Vehicle > Game_Character ║
    # ║ ► def init_move_speed ║
    # ║ ► def get_on ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ INSTRUCTIONS ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ Paste this script ABOVE Main and BELOW Game_Vehicle. ║
    # ╠═══════════════ ════════════════ ════════════════ ════════════════ ═════════╣
    # ║ IMPORT SETTING ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    $imported = {} if $imported.nil?
    $imported["WC-LandVehicle_1.04"] = true
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ CUSTOMIZATION MODULE ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    module COOLIE
    module VEHICLE
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ VEHICLE SPEED: Set from 1-6 [Higher no. = higher speed] ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    VEHICLE_SPEED = 5
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ VEHICLE ENCOUNTERS: Set to true to allow enemy encounters while piloting. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    VEHICLE_ENCOUNTERS = false
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ VEHICLE TOUCH: Set to true to allow touch event processing. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    VEHICLE_TOUCH = false
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ VEHICLE PRESS: Set to true to allow action button event processing. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    VEHICLE_PRESS = true
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ STEP ANIM: When false, vehicle will not use step animation when idle. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    STEP_ANIM = true
    end
    end
    #-------------------------------------------------------------------------------
    class Game_Map
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Determine if Passable by Land Vehicle ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Changes the Boat vehicle to have the same passability as the player. ║
    # ║ I.E. Can travel on land, not water. Cannot pass through same level tiles. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def boat_passable?(x, y, d)
    check_passage(x, y, (1 << (d / 2 - 1)) & 0x0f)
    end
    end

    class Game_Player < Game_Character
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Map Passable? ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Determines passability. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def map_passable?(x, y, d)
    case @vehicle_type
    when :boat
    $game_map.boat_passable?(x, y, d)
    when :ship
    $game_map.ship_passable?(x, y)
    when :airship
    true
    else
    super
    end
    end
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Update Encounters ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Turns off encounters if piloting the Land Vehicle. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def update_encounter
    return if $TEST && Input.press?(:CTRL)
    return if $game_party.encounter_none?
    return if in_airship?
    unless COOLIE::VEHICLE::VEHICLE_ENCOUNTERS == true
    return if in_boat?
    end
    return if @move_route_forcing
    @encounter_count -= encounter_progress_value
    end
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Determine if Event Start Caused by Touch (Overlap) ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Disables touch events when driving the Land Vehicle, including teleports. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def check_touch_event
    return false if in_airship?
    unless COOLIE::VEHICLE::VEHICLE_TOUCH == true
    return false if in_boat?
    end
    check_event_trigger_here([1,2])
    $game_map.setup_starting_event
    end

    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Determine if Event Start Caused by OK Button (Action) ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Disables "action button" events when driving the Land Vehicle. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def check_action_event
    return false if in_airship?
    unless COOLIE::VEHICLE::VEHICLE_PRESS == true
    return false if in_boat?
    end
    check_event_trigger_here([0])
    return true if $game_map.setup_starting_event
    check_event_trigger_there([0,1,2])
    $game_map.setup_starting_event
    end
    end # class Game_Player

    class Game_Vehicle < Game_Character
    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Initialize Move Speed ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Changes the player's movement speed when piloting the Land Vehicle. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def init_move_speed
    @move_speed = COOLIE::VEHICLE::VEHICLE_SPEED if @type == :boat
    @move_speed = 5 if @type == :ship
    @move_speed = 6 if @type == :airship
    end

    # ╔═══════════════ ════════════════ ════════════════ ════════════════ ═════════╗
    # ║ Get On ║
    # ╟─────────────── ──────────────── ──────────────── ──────────────── ─────────╢
    # ║ Handles the functions of the vehicle when entering it. ║
    # ╚═══════════════ ════════════════ ════════════════ ════════════════ ═════════╝
    def get_on
    @driving = true
    @walk_anime = true
    @step_anime = COOLIE::VEHICLE::STEP_ANIM
    @walking_bgm = RPG::BGM.last
    system_vehicle.bgm.play
    end
    end # class Game_Vehicle


    Спойлер Jump Ability v.1.6:

    #------------------------------------------------------------------------------#
    # Only the jump bonus for the party leader and his/her equips are calculated
    #------------------------------------------------------------------------------#
    # SCRIPT CALL:
    # You can change an actor's jump bonus (that was set with the notetag) during
    # the game with a script call:
    #
    # jump_bonus(actor_id,jump_bonus)
    #
    # EXAMPLE:
    # jump_bonus(3,2) # Changes actor 3's jump bonus to 2
    #------------------------------------------------------------------------------#

    ($imported ||= {})["Galvs_Jump_Ability"] = true
    module Galv_Jump

    #------------------------------------------------------------------------------#
    # SCRIPT SETUP OPTIONS
    #------------------------------------------------------------------------------#

    DISABLE_SWITCH = 41 # Cannot jump when this switch is ON

    BUTTON = :X # Button to press to jump. :X is "a" key.

    DEFAULT_DISTANCE = 2 # Distance player can jump with no bonuses
    SPRINT_BONUS = 1 # Distance increased with a running jump

    JUMP_SE = ["Jump1", 80, 120]

    MAX_JUMP_BONUS = 3 # The maximum bonus you can get from equips/actors

    NO_JUMP_REGIONS = [1,2,3] # Region ID's that the player cannot jump over

    #------------------------------------------------------------------------------#
    # END SCRIPT SETUP OPTIONS
    #------------------------------------------------------------------------------#

    end

    class RPG::BaseItem
    def jump_bonus
    if @jump_bonus.nil?
    if @note =~ /<jump_bonus: (.*)>/i
    @jump_bonus = $1.to_i
    else
    @jump_bonus = 0
    end
    end
    @jump_bonus
    end
    end # RPG::BaseItem


    class Game_Player < Game_Character
    attr_accessor riority_type

    alias galv_jump_player_initialize initialize
    def initialize
    galv_jump_player_initialize
    @jump_equip_bonus = 0
    end

    alias galv_jump_player_refresh refresh
    def refresh
    get_jump_equip_bonus
    galv_jump_player_refresh
    end

    def get_jump_equip_bonus
    bonus = 0 + $game_party.leader.jump_bonus
    $game_party.leader.equips.each { |eq| bonus += eq.jump_bonus if !eq.nil?}
    @jump_equip_bonus = [bonus,Galv_Jump::MAX_JUMP_BONUS].min
    end

    alias galv_jump_move_by_input move_by_input
    def move_by_input
    return if jumping?
    @priority_type = 1 if !jumping?
    galv_jump_move_by_input
    if !$game_switches[Galv_Jump:ISABLE_SWITCH] && Input.trigger?(Galv_Jump::BUTTON)
    do_jump if !$game_map.interpreter.running? && !jumping? && normal_walk?
    end
    end

    def do_jump
    get_bonuses
    @distance = Galv_Jump:EFAULT_DISTANCE + @jump_bonus
    check_region
    check_distance
    if @can_jump
    RPG::SE.new(Galv_Jump::JUMP_SE[0], Galv_Jump::JUMP_SE[1], Galv_Jump::JUMP_SE[2]).play
    jump(@jump_x, @jump_y)
    @followers.each { |f| f.jump(@x - f.x, @y - f.y) }
    end
    end

    def get_bonuses
    @jump_bonus = 0 + @jump_equip_bonus
    @jump_bonus += Galv_Jump::SPRINT_BONUS if dash? && moving?
    end

    def check_region
    @max_x = 0
    @max_y = 0
    case @direction
    when 2
    @max_y = @distance
    (@distance+1).times { |i| return @max_y = i if stopper?(@x, @y+i+1) }
    when 4
    @max_x = -@distance
    (@distance+1).times { |i| return @max_x = -i if stopper?(@x-i-1, @y) }
    when 6
    @max_x = @distance
    (@distance+1).times { |i| return @max_x = i if stopper?(@x+i+1, @y) }
    when 8
    @max_y = -@distance
    (@distance+1).times { |i| return @max_y = -i if stopper?(@x, @y-i-1) }
    end
    end

    def stopper?(x,y)
    Galv_Jump::NO_JUMP_REGIONS.include?($game_map.regi on_id(x,y)) ||
    !$game_map.stopper_event?(x,y)
    end

    def canpass?(x,y)
    map_passable?(x, y, @direction) &&
    $game_map.blocking_event?(x,y) ||
    Galv_Jump::NO_JUMP_REGIONS.include?($game_map.regi on_id(x,y))
    end

    def check_distance
    @jump_x = 0
    @jump_y = 0
    ch = []
    @can_jump = true

    case @direction
    when 2
    @jump_y = @distance
    @distance.times { |i| ch << @jump_y - i if canpass?(@x, @y + @jump_y - i) }
    ch.delete_if {|x| x > @max_y }
    @jump_y = ch.max if !ch.empty?
    when 4
    @jump_x = -@distance
    @distance.times { |i| ch << @jump_x + i if canpass?(@x + @jump_x + i, @y) }
    ch.delete_if {|x| x < @max_x }
    @jump_x = ch.min if !ch.empty?
    when 6
    @jump_x = @distance
    @distance.times { |i| ch << @jump_x - i if canpass?(@x + @jump_x - i, @y) }
    ch.delete_if {|x| x > @max_x }
    @jump_x = ch.max if !ch.empty?
    when 8
    @jump_y = -@distance
    @distance.times { |i| ch << @jump_y + i if canpass?(@x, @y + @jump_y + i) }
    ch.delete_if {|x| x < @max_y }
    @jump_y = ch.min if !ch.empty?
    end
    if ch.empty?
    @jump_y = 0
    @jump_x = 0
    @can_jump = false
    end
    end

    def jump(x_plus, y_plus)
    @priority_type = 1.5
    super
    end
    end # Game_Player < Game_Character


    class Game_Map
    def blocking_event?(x,y)
    events_xy(x,y).each { |e| return false if e.priority_type == 1 }
    return true
    end

    def stopper_event?(x,y)
    events_xy(x,y).each { |e|
    next if e.list.nil?
    return false if e.list[0].code == 108 && e.list[0].parameters[0] == "<block>"
    }
    return true
    end
    end # Game_Map


    class Game_Actor < Game_Battler
    attr_accessor :jump_bonus

    alias galv_jump_actor_initialize initialize
    def initialize(actor_id)
    galv_jump_actor_initialize(actor_id)
    @jump_bonus = $data_actors[actor_id].jump_bonus
    end
    end # Game_Actor < Game_Battler


    class Scene_Menu < Scene_MenuBase
    def return_scene
    $game_player.refresh
    super
    end
    end # Scene_Menu < Scene_MenuBase

    class Game_Interpreter
    def jump_bonus(actor,bonus)
    $game_actors[actor].jump_bonus = bonus
    $game_player.refresh
    end
    end # Game_Interpreter
    Последний раз редактировалось Kerotan; 29.05.2015 в 15:36.



  5. #5
    Создатель Аватар для Рольф
    Информация о пользователе
    Регистрация
    14.04.2008
    Адрес
    Южно- Сахалинск/Пенза
    Сообщений
    10,182
    Записей в дневнике
    2
    Репутация: 108 Добавить или отнять репутацию

    По умолчанию

    Это тебе не сюда. Тут делаю все своими руками. Тебе в тему помощи скриптов, в разделе скрипты.

  6. #6

    По умолчанию

    Цитата Сообщение от Рольф Посмотреть сообщение
    Это тебе не сюда. Тут делаю все своими руками. Тебе в тему помощи скриптов, в разделе скрипты.
    может кто подскажет лучший способ вначале хотел прыгнуть через ивент, но прыжок получается корявый по У



  7. #7
    Маститый Аватар для Temendir13
    Информация о пользователе
    Регистрация
    12.07.2010
    Адрес
    в городе я проживаю, в Иркутске.
    Сообщений
    1,048
    Записей в дневнике
    1
    Репутация: 38 Добавить или отнять репутацию

    По умолчанию

    Керотан, а зачем скрипты. Просто делаешь ветвление условий, что нажата клавиша прыжка, то передвижение события "игрок" вправо", тоже самое с другой стороны. Триггер события от касания персонажа

    К тому же в скрипте прописана, что надо нажать кнопку прыжка, ты нажимаешь?

    Вот эта строка - BUTTON = :X # Button to press to jump. :X is "a" key.

    Плюс есть дистанция прыжка. У тебя она соблюдена?
    Последний раз редактировалось Temendir13; 29.05.2015 в 14:42.

  8. #8

    По умолчанию

    Цитата Сообщение от Temendir13 Посмотреть сообщение
    Керотан, а зачем скрипты. Просто делаешь ветвление условий, что нажата клавиша прыжка, то передвижение события "игрок" вправо", тоже самое с другой стороны. Триггер события от касания персонажа

    К тому же в скрипте прописана, что надо нажать кнопку прыжка, ты нажимаешь?

    Вот эта строка - BUTTON = :X # Button to press to jump. :X is "a" key.

    Плюс есть дистанция прыжка. У тебя она соблюдена?
    персонажи прыгают, но стоит сесть на чокобо, нажимай-не нажимай Х, всё без толку



  9. #9
    Маститый Аватар для Элрик
    Информация о пользователе
    Регистрация
    09.09.2010
    Сообщений
    1,284
    Записей в дневнике
    47
    Репутация: 24 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Kerotan Посмотреть сообщение
    персонажи прыгают, но стоит сесть на чокобо, нажимай-не нажимай Х, всё без толку
    Смотри, щас попытаюсь объяснить чтобы было понятно. У мейкер дефолтная раскладка управления такая: стрелочки, ABC XYZ LR где^
    А - Shift
    B - X на клавиатуре
    C - Z
    X - A
    Y - S
    Z - D
    L - Q
    R - W
    Untitled20150529153825.png
    Т.е. если ты указываешь в скрипте кнопка "Х" нажата, то на самом деле задействуется кнопка A на клавиатуре, а не Х (английская раскладка).
    Также может быть проблема в том, что у тебя чокобо это наземный транспорт, а скрипт возможно не рассчитан на то, что транспорт будет прыгать.
    Попробуй через common event сделать conditional branch кнопка Х нажата и потом через Set Move Route сделать Jump на нужную тебе X/Y (высчитывай их из того, что нули это левый верхний угол).
    Последний раз редактировалось Элрик; 29.05.2015 в 15:40.

  10. #10

    По умолчанию

    Цитата Сообщение от Элрик Посмотреть сообщение
    Смотри, щас попытаюсь объяснить чтобы было понятно. У мейкер дефолтная раскладка управления такая: стрелочки, ABC XYZ LR где^
    А - Shift
    B - X на клавиатуре
    C - Z
    X - A
    Y - S
    Z - D
    L - Q
    R - W
    Т.е. если ты указываешь в скрипте кнопка "Х" нажата, то на самом деле задействуется кнопка A на клавиатуре, а не Х (английская раскладка).
    Также может быть проблема в том, что у тебя чокобо это наземный транспорт, а скрипт возможно не рассчитан на то, что транспорт будет прыгать.
    Попробуй через common event сделать conditional branch кнопка Х нажата и потом через Set Move Route сделать Jump на нужную тебе X/Y (высчитывай их из того, что нули это левый верхний угол).
    Попробую через common event, как ты посоветовал

    P.S. чокобо это наземный транспорт; насчёт кнопок-у меня английская раскладка, здесь ошибок быть не может.



Страница 13 из 19 ПерваяПервая ... 31112131415 ... ПоследняяПоследняя

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

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

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

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

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

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

Ваши права

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