VX как добавить систему репутации.

Тестер
Больше
7 года 7 мес. назад #105819 от Spot the fox
мне нужно изменить скрипт rpg maker vx так что бы в меню появился пункт в котором при открытии показывалась название переменной а затем отображалось само значение переменной.по эвентам я сам разберусь.Кто нибудь знает как такое сделать?
Заранее спасибо

Когда искусство порождает искусство, это высшее признание.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Ветеран Разработчик
Больше
7 года 7 мес. назад #105820 от Seibur
Сложно. Викс старый движок - сейчас на нем ничего почти не делают. Темы со скриптами - или удалены, или с битыми ссылками. Бери Асе или МВ
Может тут что-нибудь найдешь: www.google.com.ua/search?ie=UTF-8&hl=uk&...0script%20reputation
или тут: atelierrgss.wordpress.com/scripts/rpg-maker-vx/

Будь таким, каким хочешь казаться.
Спасибо сказали: Dmy

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Ветеран Поддержка Фонда Разработчик Проект месяца 3 место Учитель Оратор Даритель Стимкея 2 место За 2 место на конкурсе маппинга Программист Ruby Паладин
Больше
7 года 7 мес. назад - 7 года 7 мес. назад #105821 от Dmy
Вам нужен пункт меню (типа «Статус»; когда его выбираешь, открывается подменю) или нужно окошко наподобие окошка с золотыми? Мне показалось странным делать подменю для двух слов, поэтому я сделал как окошко:



Такое окошко можно создать, добавив вот такой скрипт (замените REPUTATION_TEXT и REPUTATION_VARIABLE на свой текст и свой номер переменной):
Code:
class Window_Reputation < Window_Base # Замените текст в кавычках на тот, который нужен REPUTATION_TEXT = "Рэпутацыя: " # Замените 4 на номер переменной REPUTATION_VARIABLE = 4 def initialize(x, y) super(x, y, 160, WLH * 2 + 32) refresh end def refresh self.contents.clear value = $game_variables[REPUTATION_VARIABLE] if value > 0 then value = '+' + value.to_s end draw_reputation_value(REPUTATION_TEXT, value, 4, 0, 120) end def draw_reputation_value(text, value, x, y, width) self.contents.font.color = system_color self.contents.draw_text(x, y, width, WLH, text, 0) self.contents.font.color = normal_color self.contents.draw_text(x, y + WLH, width, WLH, value, 2) end end class Scene_Menu < Scene_Base alias reputation__start start def start reputation__start @reputation_window = Window_Reputation.new(0, 280) end alias reputation__terminate terminate def terminate reputation__terminate @reputation_window.dispose end alias reputation__update update def update @reputation_window.update reputation__update end end

[Я передаю этот код в общественное достояние согласно CC0 : его можно использовать как угодно и где угодно, и можно даже говорить, что вы сами его написали.]

Подключается как обычные скрипты (если что, см. инструкцию по установке скриптов от Демия ). Обратите внимание, что код именно для VX (не для VX Ace).

Если что, скрипт легко отредактировать. Например, можно менять цвета (красный — плохая, зелёный — хорошая) или писать репутацию словами («ненависть», «настороженность» «нейталитет», «дружелюбие», «любовь»), как в Migth and Magic 7. Если нужно что-то такое — пишите.

Если я неправильно понял задачу и вам нужно было что-то другое — тоже пишите :)
Последнее редактирование: 7 года 7 мес. назад пользователем Dmy.
Спасибо сказали: Arykray, DK, Cabbit, Mur, VarVarKa, WhitePaper, Spot the fox

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
7 года 7 мес. назад - 7 года 7 мес. назад #105827 от Arykray
Два типа людей, одни изначально кричат, что это не возможно, а другие просто берут и делают!

Чем сложнее задача - тем проще ее не решать.

[img
Последнее редактирование: 7 года 7 мес. назад пользователем Arykray.
Спасибо сказали: Alisa

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Тестер
Больше
7 года 7 мес. назад #106017 от Spot the fox
Тоесть ты хочешь сказать номер 4 или номер 0004?И да это идеально подойдет я думаю.

Когда искусство порождает искусство, это высшее признание.
Спасибо сказали: Dmy

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Ветеран Поддержка Фонда Разработчик Проект месяца 3 место Учитель Оратор Даритель Стимкея 2 место За 2 место на конкурсе маппинга Программист Ruby Паладин
Больше
7 года 7 мес. назад #106018 от Dmy

Spot the fox пишет: Тоесть ты хочешь сказать номер 4 или номер 0004?И да это идеально подойдет я думаю.

Да, 4 — это переменная 0004, если нужна другая переменная, то нужно другой номер:
Code:
# Замените 4 на номер переменной REPUTATION_VARIABLE = 4

Но здесь есть засада: нули перед номером ставить не надо! Руби считает, что 0 перед числом — признак восьмеричной системы (то есть 0010 — это переменная №8, а не №10; 0100 — это переменная №64, а не №100).
Спасибо сказали: ZX_Lost_Soul, WhitePaper, Spot the fox

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.122 секунд
Работает на Kunena форум