Страница 46 из 147 ПерваяПервая ... 3644454647485696146 ... ПоследняяПоследняя
Показано с 451 по 460 из 1470

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

  1. #451

    По умолчанию

    На сколько мне известно, в AS невозможно напрямую заменить символ в строке. Следовательно создаешь новую строку из подстроки до этого символа, затем цепляешь новый символ, затем остальные. Это одна из причин, по которой в нем широко используются регулярные выражения для замены. Ибо так неудобно и, я полагаю, медленно.
    Код:
    position = 2
    char = "Z"
    str.text = str.text.substr(0, position) + char + str.text.substr(position + 1);
    Вот такая конструкция заменит второй (в твоем именовании - третий) символ в строке на Z (типы не объявлял - уже не помню как оно там делается).

    Что касается div и mod, то первый, кажется, и не нужен. Вроде бы, AS, как и любой нормальный язык, считает, что 4/5 == 0. Если я ошибаюсь - ищи, тут не подскажу.
    Что до mod - как и в Руби: %
    5 % 3 // вернет 2

  2. #452
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию

    Спасибо.


  3. #453
    Маститый Аватар для Andrew
    Информация о пользователе
    Регистрация
    08.02.2011
    Адрес
    Беларусь, Витебск
    Сообщений
    1,049
    Записей в дневнике
    3
    Репутация: 30 Добавить или отнять репутацию

    По умолчанию

    А в этом нормальном языке 5/4 == 1?


  4. #454

    По умолчанию

    В C++/C# - да.
    У тебя - не знаю.

  5. #455
    Бывалый Аватар для ViRSneG
    Информация о пользователе
    Регистрация
    08.09.2010
    Адрес
    П.-Камчатский
    Сообщений
    620
    Записей в дневнике
    2
    Репутация: 25 Добавить или отнять репутацию

    По умолчанию

    Вопрос скорее к Рольфу
    Хотелось бы получить консультацию по кастомизации игрового меню и изменению меню в боевке Tanketai(все
    , естественно, XP)

    З.Ы.: Все оцениваем аву ^v^

    Но одно могу сказать точно: я ничего не могу сказать точно!
    Спойлер Страх мейкериста:
    [18:42] ReDS: куча паралельных ивентов и скриптовая ошибка посреди проекта

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

    По умолчанию

    Почему именно ко мне?Tanketai что за боевка тО?

  7. #457
    Бывалый Аватар для ViRSneG
    Информация о пользователе
    Регистрация
    08.09.2010
    Адрес
    П.-Камчатский
    Сообщений
    620
    Записей в дневнике
    2
    Репутация: 25 Добавить или отнять репутацию

    По умолчанию

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

    Но одно могу сказать точно: я ничего не могу сказать точно!
    Спойлер Страх мейкериста:
    [18:42] ReDS: куча паралельных ивентов и скриптовая ошибка посреди проекта

  8. #458
    Познающий Аватар для 100500
    Информация о пользователе
    Регистрация
    22.05.2011
    Сообщений
    351
    Записей в дневнике
    15
    Репутация: 28 Добавить или отнять репутацию

    По умолчанию

    Как-то в теме со своим проектом писал про проблему со скриптом. Но, поскольку она так и не решилась, решил продублировать сюда, вдруг поможет. А тему отдельную ради такой мелочи вроде и создавать не стоило...
    В общем, вот:
    у меня возникли некоторые проблемы. И проблемами этими является скрипт для установки фонов битвы, баттлбэков (речь про мейкер VX, и, соответствено, RGSS2). Поэтому решил просить помощи (или хотя бы совета) у людей, которые разбираются в скриптах лучше меня.
    Дело в том, что вышеупомянутый скрипт (судя по комментариям, содержащимся внутри) должен уметь менять фон битвы в зависимости от ID тайла. (Решить проблему областями невозможно ввиду немаленькой карты мира.) А вот где взять ID тайла я что-то не пойму. Пробовал скачивать различные скрипты для опознания этого самого ID, но либо это не то, что нужно, либо скрипт нифига не работает.
    В связи с этим вопрос: видел ли кто-нибудь этот скрипт раньше? Или может быть кто пользовался и знает, как его настроить? Ну или, в крайнем случае, может ли кто-нибудь умный взглянуть на него и помочь настроить его? Пробовал все что можно, ничего не получается.
    Спойлер СКРИПТ:
    #================================================= =============================
    # ** ExBattle_Background версия 2.00
    #------------------------------------------------------------------------------
    # Скрипт, позволяющий устанавливать фон любого экрана битвы.
    #================================================= =============================

    # Настройки для карт.
    # ID карт и значение фона для них.
    EXBTL_BACKGR_MAP = {
    1 => "Ocean",
    2 => "Mountains",
    }

    # Настройки для областей.
    # ID областей и значение фона для них.
    EXBTL_BACKGR_AREA = {
    1 => "Ocean",
    2 => "Mountains",
    }

    # Настройки для тайлов.
    # ID тайлов и значение фона для них.
    EXBTL_BACKGR_TILE = {
    1 => "Ocean",
    2 => "Mountains",
    }
    # Значение по умолчанию.
    # Устанавливает графику, если для карты или области нет настройки.
    EXBTL_BACKGR_DEFAULT = ""

    # Задник.
    # Устанавливает задник экрана для отображения графики фона.
    # (0:нет 1:экран карты)
    EXBTL_BACKGR_BACK = 1

    # Позиция.
    # Позиция показываемой графики (0:верх 1:центр 2:центр экрана 3:низ).
    EXBTL_BACKGR_POSITION = 0

    # Пол в битве.
    # Определяет показывать ли графику пола в битве.
    # (0:нет 1:показывать)
    EXBTL_BACKGR_FLOOR = 0

    # Папка графики.
    # Папка с графикой для фона (Graphic/xxx/).
    # (0:System 1:Parallaxes 2:Pictures)
    EXBTL_BACKGR_FOLDER = 1

    #------------------------------------------------------------------------------

    class Spriteset_Battle
    #--------------------------------------------------------------------------
    # * Создаёт спрайт фона
    #--------------------------------------------------------------------------
    alias _exbbackgr_create_battleback create_battleback
    def create_battleback
    source = $game_temp.background_bitmap
    bitmap = Bitmap.new(640, 480)
    if EXBTL_BACKGR_BACK == 1
    bitmap.stretch_blt(bitmap.rect, source, source.rect)
    end
    @battleback_sprite = Sprite.new(@viewport1)
    @battleback_sprite.bitmap = bitmap
    @battleback_sprite.ox = 320
    @battleback_sprite.oy = 240
    @battleback_sprite.x = 272
    @battleback_sprite.y = 176
    fixed = false
    unless $BTEST
    for area in $data_areas.values
    if $game_player.in_area?(area) and EXBTL_BACKGR_AREA.has_key?(area.id)
    src_source = EXBTL_BACKGR_AREA[area.id]
    fixed = true
    end
    end
    unless fixed
    if EXBTL_BACKGR_MAP.has_key?($game_map.map_id)
    src_source = EXBTL_BACKGR_MAP[$game_map.map_id]
    fixed = true
    end
    end
    # Получение тега из тайла
    # Номер переменной из скрипта расширения тайлов KGC, метод get_player_terrain_tag(x)
    unless fixed
    if EXBTL_BACKGR_TILE.has_key?($game_variables[19])
    src_source = EXBTL_BACKGR_TILE[$game_variables[19]]
    fixed = true
    end
    end
    end
    unless fixed
    if EXBTL_BACKGR_DEFAULT != ""
    src_source = EXBTL_BACKGR_DEFAULT
    fixed = true
    end
    end
    if fixed
    case EXBTL_BACKGR_FOLDER
    when 0
    src_bitmap = Cache.system(src_source)
    when 1
    src_bitmap = Cache.parallax(src_source)
    when 2
    src_bitmap = Cache.picture(src_source)
    end
    x = (640 - src_bitmap.width) / 2
    case EXBTL_BACKGR_POSITION
    when 0
    y = 64
    when 1
    y = (416 - src_bitmap.height) / 2
    when 2
    y = (480 - src_bitmap.height) / 2 + 32
    when 3
    y = 480 - src_bitmap.height
    end
    @battleback_sprite.bitmap.blt(x, y, src_bitmap, src_bitmap.rect)
    src_bitmap.dispose
    end
    end
    #--------------------------------------------------------------------------
    # * Создание спрайта пола битвы
    #--------------------------------------------------------------------------
    alias _exbbackgr_create_battlefloor create_battlefloor
    def create_battlefloor
    _exbbackgr_create_battlefloor
    @battlefloor_sprite.opacity = 0 if EXBTL_BACKGR_FLOOR == 0
    end
    end

    PS скрипт взят из справки в моей версии РПГ Мейкера VX. Откуда он там взялся и кто его автор - не знаю =)
    PPS а нет, автора знаю. Некий REFMAP

  9. #459

    По умолчанию

    Как сказано в твоем скрипте:
    # Получение тега из тайла
    # Номер переменной из скрипта расширения тайлов KGC, метод get_player_terrain_tag(x)
    Ищи этот самый KGC для расширения тайлов.

    Или другой, или пиши сам скрипт, который будет записывать ID текущего тайла (под ногами партии) в переменную №19 (здесь используется она, за что убил бы).

  10. #460
    Познающий Аватар для 100500
    Информация о пользователе
    Регистрация
    22.05.2011
    Сообщений
    351
    Записей в дневнике
    15
    Репутация: 28 Добавить или отнять репутацию

    По умолчанию

    Equilibrium Keeper, спасибо, о мудрейший! =)
    Я и внимания не обратил на этот комментарий. Точнее, обратил, но не очень понял о чем речь.

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

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

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

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

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

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

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

Ваши права

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