Перейти к содержимому


Фотография

(sfall) дополнения


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 1246

#61 Phobos

Phobos

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 49 сообщений

Отправлено 02 Март 2015 - 17:39

Попросил Джима попробовать твой вариант (в его моде как раз это нужно), в общем неполное это решение. Если зажать мышкой по кнопке и увести — не срабатывает событие unpress, UI залипает, приходится кликать еще раз по кнопке.
Он какой-то костыль замутил через hs_moveblocking (не дает ГГ двигаться или поворачивать) — работает надежнее, но это все равно костыль...

Придется ждать новый движок... :D


#62 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 02 Март 2015 - 18:47

QUOTE
Если зажать мышкой по кнопке и увести — не срабатывает событие unpress, UI залипает, приходится кликать еще раз по кнопке.

во косяк...
тогда в событие on(off) региона (и для надежности кнопки тоже) прописывается процедура с game_ui_enable, косяк с залипанием остается, но автоматически отлипает при наведении мыши на окно или кнопки без нажатия.
еще придется конкретно усложнять скрип чтобы выключенный интерфейс из другого скрипта не включался при наведении на окно. в общем полная фигня)

Кстати ты не в курсе как он задавал размеры региона, я вчера сидел тыкал-мыкал так и не смог правильно создать регион по размеру окна.
AddRegion reg_name {x, y, x, y, x, y, ...} вот и как тут понимать какие x/y куда относятся.

QUOTE
Придется ждать новый движок... :D

да ну юзаем reg_anim_clear и чихать что оно дергается)

Это сообщение отредактировано Fakeman - 2 марта 2015 | 19:11


#63 Phobos

Phobos

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 49 сообщений

Отправлено 02 Март 2015 - 20:11

Ну хак через хук скрипт лучше работает :)

По поводу регионов, вот комментарий из исходников sslc:
CODE

//
// regions are defined as:
//
//   region "name", { x, y, x, y, x, y, x, y };
//
// meaning if the mouse is clicked in the region defined by the
// list of points, procedureName is called.
//
// Regions are related to the currently selected window.

Судя по коду — компилятор принимает любое количество пар координат, т.е. сколько угодно точек. Видимо многоугольник.

Это сообщение отредактировано Phobos - 2 марта 2015 | 20:12


#64 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 02 Март 2015 - 21:49

QUOTE
Ну хак через хук скрипт лучше работает :)

хук в официалке будет?

QUOTE
region "name", { x, y, x, y, x, y, x, y };
Судя по коду — компилятор принимает любое количество пар координат, т.е. сколько угодно точек. Видимо многоугольник.

спс разобрался.

Это сообщение отредактировано Fakeman - 2 марта 2015 | 22:18


#65 Phobos

Phobos

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 49 сообщений

Отправлено 03 Март 2015 - 11:12

QUOTE
хук в официалке будет?

Он там давно уже был, старая фича. Если очень интересно, можно выпросить код у Джима.

Вышла 3.6 официалка.


#66 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 03 Март 2015 - 13:24

QUOTE
Он там давно уже был, старая фича. Если очень интересно, можно выпросить код у Джима.

Аа... я подумал он специально для своего мода что-то там соорудил)
Ну так-то если можно давайте код, ибо я не совсем понимаю как с это реализовать через hs_hexmoveblocking.
или скажи название его мода гляну сам как скрип реализован.

Это сообщение отредактировано Fakeman - 3 марта 2015 | 13:36


#67 Phobos

Phobos

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 49 сообщений

Отправлено 03 Март 2015 - 13:36

Вот тут он описал, смотри раздел про UI.


#68 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 08 Март 2015 - 10:18

Добавил отключение абуза отрицательных эффектов (от наркотиков/радиации/etc) при чтении книг — поесть наркотиков, дождаться побочных эффектов и под ними читать книги, а за счёт динамического расчёта статов получать больше очков к скиллу.
Метод абуза подробно описан здесь. Перки не трогал (вообще-то трогал, но закомментил код, потому что там нужен более серьёзный подход).

Довёл до ума "пропадание" неиспользованного перка при получении следующего перкового уровня — как оказалось в sfall уже было это исправление, но сделано (как и мой первый вариант) на скорую руку (открыть экран персонажа -> взять перк -> "положительно" закрыть экран персонажа -> открыть -> взять перк -> "положительно" закрыть и т.д.), сейчас нормально (открыть -> взять перк -> взять перк -> ... -> "положительно" закрыть).


#69 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 10 Март 2015 - 17:07

Еше раз немножко Оффтопну
QUOTE
Вышла 3.6 официалка.

то Phobos: в sfall есть небольшой баг тянется наверное еще с древних версий 2х, в общем суть такая если сменить разрешение в игре(hires) без перезапуска и начать игру то sfall не правильно определяет разрешение т.е. функции get_screen_width(), get_screen_height() возвращают не правильные размеры экрана. во такие дела)


#70 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 17 Март 2015 - 23:46

Долгое время я знал о дополнительных кнопках прокрутки списка квестов в пипбое (если включить их в ddraw.ini через UseScrollingQuestsList=1), но не мог понять как это работает и считал что эта возможность просто сломана. Начав играть в Неваду я наконец-то обратил внимание на те малюсенькие кнопки, да и то только потому что они перекрывали надпись "Задания" ("Статус" в оригинальном F2) в пипбое. Решил заменить их на что-то поприличнее :-p
В конечном итоге я почти полностью переработал и расширил функционал кнопок прокрутки квестов в пипбое: больше размер (кнопки прокрутки из инвентаря), новая позиция (лучше видно), неактивность кнопок когда нечего прокручивать (если открыта последняя страница квестов, то кнопка перехода на следующую становится неактивной), навигация такая же как при просмотре голодисков (кнопка вверх|PgUp и кнопка вниз|PgDn — переход по страницам, кнопка вверх|PgUp на первой странице — возврат в окно со списком зон|голодисков), также кнопки теперь можно использовать и при просмотре голодисков.
Добавил горячие клавиши для кнопок управления пипбоя — '1' для "Статус", '3' для "Карты", '4' для "Архивы". На '2' повесил будильник. Не стал вешать на '5' закрытие пипбоя — для этого и так хватает горячих клавиш (p|P|Esc|Enter).

Исправил два бага движка в пипбое — они не шибко критичны и проявляются в определённых ситуациях. Суть первого (скриншот здесь) — если открыть окно "Статус" и нажать Page Up или Page Down когда курсор мыши находится в левой части (там где 1), то теперь нельзя будет кликнуть по голодискам из части 3, а клик по голодиску из части 2 будет открывать список квестов из части 1 (клик по "Военная база уровень 1" откроет список квестов в Дыре).
Суть второго — если открыть пипбой в зоне где спать нельзя, затем открыть любое окно с кликабельным списком ("Статус", "Карты" или "Архивы") и после этого вызвать будильник, то после закрытия окошка с сообщением о невозможности спать клик по зоне будет вызывать сон из будильника.
Поэтому в первом случае клавиши "заморожены", а во втором вызов будильника в "бодрой" зоне автоматом открывает окно "Статус". Баги исправляются только при UseScrollingQuestsList=1 — лень выносить их отдельно.

Ещё поднял выше окно выбора перков на экране персонажа и раскомментил код для перков при отключении абуза эффектов наркоты.

Это сообщение отредактировано Crafty - 20 марта 2015 | 00:31


#71 Drobovik

Drobovik

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 211 сообщений

Отправлено 18 Март 2015 - 21:00

Crafty,

А можешь перекомпилить sfall c твоими изменениями и новыми сорсами 3.6?

Спасибо


#72 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 19 Март 2015 - 18:46

QUOTE
А можешь перекомпилить sfall c твоими изменениями и новыми сорсами 3.6?
Готово ;) Это "релизная" версия dll, но в ней оставлены SkipSizeCheck и ExtraCRC из секции [Debugging].

И теперь баги кликабельности в пипбое исправляются независимо от значения переменной UseScrollingQuestsList.
Само собой ReloadWeaponHotKey удалена.

Update: Поправил оригинальный подсчёт квестов на страницу, к примеру 21 квест раньше показывался на первой странице 1-10, на второй 10-19, на третьей 19-21. Сейчас 1-10, 11-20, 21.

Это сообщение отредактировано Crafty - 24 марта 2015 | 20:19


#73 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 21 Март 2015 - 13:55

QUOTE
Решил заменить их на что-то поприличнее :-p
В конечном итоге я почти полностью переработал и расширил функционал кнопок прокрутки квестов в пипбое: больше размер (кнопки прокрутки из инвентаря), новая позиция (лучше видно),

Что-то не очень удачная позиция кнопок...

Такое предложение -вывести настройки x,y для положения кнопок в ini-файл сфала, чтобы можно было настроить под любой мод с измененной картинкой pip-boy.


#74 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 21 Март 2015 - 17:56

QUOTE
Что-то не очень удачная позиция кнопок...
Почему? Для оригинала отлично, и даже в Неваду вписались. Для Олимпа согласен — не подходит, ну так там кнопки и не нужны если судить по настройкам ini-файла. А какие ещё есть моды со своей картинкой пипбоя?
Были варианты поместить кнопки в 4 и 5 части.

QUOTE
Такое предложение -вывести настройки x,y для положения кнопок в ini-файл сфала
Честно — лень ;)


#75 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 21 Март 2015 - 21:01

QUOTE
Были варианты поместить кнопки в 4 и 5 части.

вот место 4 так и просится на кнопки, но что-то как-то высоковато

QUOTE
Почему?

Покачанушке)
а если их немного сместить влево чтобы на сетке были, а не на "бордюре" пипбоя.

CODE
Для Олимпа согласен — не подходит, ну так там кнопки и не нужны

это пока не нужны.
так что давай не ленись)


#76 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 21 Март 2015 - 23:53

QUOTE
а если их немного сместить влево чтобы на сетке были, а не на "бордюре" пипбоя.
Не вписывается в концепт — зачем на сетке кнопки прокрутки :-p И для Невады будет неочень.

QUOTE
это пока не нужны.
Если судить по обсуждениям на форуме Олимпа, то "Олимп 2" будет на новом движке.
И будем честными — вероятность появления нового серьёзного проекта на движке F2 стремится к нулю...

QUOTE
так что давай не ленись)
Организационные вопросы мучают — как назвать переменные для ini-файла (QuestsScrollButtons[X|Y]?), какой угол брать за стартовую точку (нижний левый?). А ведь можно вообще каждую кнопку отдельно размещать. Дуристика это :-p


#77 Fakeman

Fakeman

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 557 сообщений

Отправлено 22 Март 2015 - 02:26

QUOTE
Не вписывается в концепт — зачем на сетке кнопки прокрутки :-p И для Невады будет неочень.

а что на бордюре экрана вписывается в концепт? :D
ну если ты мерил по невадскому пипбою тогда ладно...

QUOTE
какой угол брать за стартовую точку (нижний левый?)

не знаю как у вас там в параллельном мире, но у нас тут принято считать от верхнего левого. :)

QUOTE
Организационные вопросы мучают — как назвать переменные для ini-файла (QuestsScrollButtons[X|Y]?)

вот сам же и ответил на вопрос — QuestsScrollButtonsXY=123,346

QUOTE
И будем честными — вероятность появления нового серьёзного проекта на движке F2 стремится к нулю...

Не спорю. Но как говориться — "надо вася..."


#78 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 22 Март 2015 - 04:20

QUOTE
а что на бордюре экрана вписывается в концепт? :D
Конечно, провода же вписываются :-p

QUOTE
вот сам же и ответил на вопрос — QuestsScrollButtonsXY=123,346
Хлопотно, строку разбирать :)
Две переменных — QuestsScrollButtonsX и QuestsScrollButtonsY, с границами 0-618 для X и 0-434 для Y. Всё равно размер окна пипбоя (640x480) зашит в движке.

Перенёс обработку горячих клавиш для кнопок управления пипбоя (1-4) в другое место, а то ранее работали только при UseScrollingQuestsList=1.


#79 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 24 Март 2015 - 20:29

Вообще убрал ограничение на максимальное количество квестов (10) на странице — сколько на экране пипбоя помещается, столько и показывается.


#80 Crafty

Crafty

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 423 сообщений

Отправлено 01 Апрель 2015 - 04:19

Наконец-то дошли руки допилить отображение свободного веса в окне обмена (что включается через FreeWeight). Теперь свободный вес показывается и при обмене с предметами (ящики/багажник/etc) и во время воровства или торговли (свободный вес не показывается для торгаша, посколько ему можно продавать вещи даже загоняя в минус по весу).

Однако при обмене с предметами используется размер/объём, а не вес. И размер как правило не равен весу — размер пустой снайперской винтовки равен 5, а весит она 8.

Формат — "свободный вес/максимальный вес" для персонажей и "свободный объём/максимальный объём" для предметов.

Значение FreeWeight игнорируется (равно 0) если переменная CritterInvSizeLimitMode не равна 0. Конечно надо было бы это дело совместить, но желания пока нет ;-p

А ещё в пипбое при просмотре списка квестов если больше одной страницы, то наверху показывается номер страницы ("1 из 2") аналогиично как при просмотре многостраничных голодисков.




Похожие темы Свернуть

  Название темы Форум Автор Статистика Последнее сообщение


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Рейтинг@Mail.ru