Новости Релиз Of Ash and Steel состоится 6 ноября
  • 7.425
  • 12
Of Ash and Steel: атмосферный экшен выходит 6 ноября 6 ноября станет важной датой для поклонников сложных и атмосферных игр - именно в этот день состоится релиз долгожданного проекта Of Ash and...
Новости В Of Ash and Steel начался закрытый плейтест
  • 11.526
  • 12
Разработчики "Русской Готики" объявили о старте закрытого плейтеста. Если вы оставляли заявку на участие, не забудьте проверить электронную почту или посмотреть свою библиотеку - возможно игра уже...
Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 5.929
  • 2
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...

Решено Кажется ошибка в регене динамической выносливости

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#1
В воде если не шевелиться слишком быстро регенит (также как и на земле стоя)
По ощущениям
 
Автор
Автор
zauronix

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#2
Код:
if (ATR_STAMINA < ATR_STAMINA_MAX * 10)
&& (PLAYERISSICK == FALSE) && (SBMODE == TRUE)
&& (HERO_FATIGUE >= 1) && (HEROTRANS == FALSE)
&& (ENDGAMECREDITS == FALSE) && (HEROISDEAD == FALSE)
&& (HERO.ATTRIBUTE[0] > 0) && (!C_BODYSTATECONTAINS(HERO, BS_SWIM)
|| !C_BODYSTATECONTAINS(HERO, BS_DIVE) || !C_BODYSTATECONTAINS(HERO, BS_CLIMB)
|| !C_BODYSTATECONTAINS(HERO, BS_JUMP) || !C_BODYSTATECONTAINS(HERO, BS_SPRINT)
|| RX_ISANIACTIVE(HERO, "S_SWIM"))
кажется последний аргумент глючит )))
 
Автор
Автор
zauronix

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#3
@Liker , сюда загляни
 

Liker

Демиург
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
21 Фев 2016
Сообщения
29.132
Реакции
26.156
Баллы
1.446
Лучшие ответы
1.079
#4
Я записал, посмотрю.

Хотя уже посмотрел, не, все ок. Когда гг на месте (не шевелится), то реген быстрый.
 
Автор
Автор
zauronix

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#5
Не ну что-то можно бы придумать)) мы же все таки в воде
 

Divik

Паладин
Участник форума
Регистрация
21 Авг 2022
Сообщения
4.931
Реакции
1.306
Баллы
276
Лучшие ответы
33
#6
Не надо, плавать до маяка и особенно до острова на Западном Побережье - сильно долго, быстрый реген - это отлично!
 

KyMuP

Наемник
Участник форума
Регистрация
3 Май 2019
Сообщения
781
Реакции
441
Баллы
146
Лучшие ответы
26
#7
Автор
Автор
zauronix

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#8
Cлегка изменил и стало поинтереснее
Код:
    if (((((((((atr_stamina < (atr_stamina_max * 10)) && (playerissick == false)) && (sbmode == true)) && (hero_fatigue >= 1)) && (herotrans == false)) && (endgamecredits == false)) && (heroisdead == false)) && (hero.attribute[atr_hitpoints] /*0*/ > 0)) && ((((((!c_bodystatecontains(hero, bs_swim)) || (!c_bodystatecontains(hero, bs_dive))) || (!c_bodystatecontains(hero, bs_climb))) || (!c_bodystatecontains(hero, bs_jump))) || (!c_bodystatecontains(hero, bs_sprint))) || rx_isaniactive(hero, "S_SWIM"))) {
        if (!rx_isnightmarearena()) {
            staminabonus += 1;
        };
        if ((rx_bonusstaregen == true) && (reloadstam >= 1)) {
            staminabonus += 2;
        };
        if (vatras_teachregenstam) {
            staminabonus += 1;
            if (vatras_teachregenstam_level2) {
                staminabonus += 3;
                if ((hero.guild == gil_tpl) && rx_checktplguild()) {
                    staminabonus += 1;
                };
            };
        };
        if (reloadstam >= 5) {
            if (c_bodystatecontains(hero, bs_stand) || c_bodystatecontains(hero, bs_sit)) {
                staminabonus += (1 + (hero_fatigue / 5)) + (atr_stamina_max / 4);
            }
            else {
                staminabonus += (hero_fatigue / 5) + (atr_stamina_max / 4);
            };
            reloadstam = 0;
        }
        else {
            reloadstam += 1;
        };
        if (rx_isaniactive(hero, "S_SWIM")) {
            staminabonus = staminabonus / 2;
        };
    }
последнее условие добавил (стало чуть медленнее, но не сильно)
 
Последнее редактирование:

Melkor

Труженик
Участник форума
Регистрация
21 Дек 2023
Сообщения
477
Реакции
134
Баллы
56
Лучшие ответы
7
#9
Cлегка изменил и стало поинтереснее
Код:
    if (((((((((atr_stamina < (atr_stamina_max * 10)) && (playerissick == false)) && (sbmode == true)) && (hero_fatigue >= 1)) && (herotrans == false)) && (endgamecredits == false)) && (heroisdead == false)) && (hero.attribute[atr_hitpoints] /*0*/ > 0)) && ((((((!c_bodystatecontains(hero, bs_swim)) || (!c_bodystatecontains(hero, bs_dive))) || (!c_bodystatecontains(hero, bs_climb))) || (!c_bodystatecontains(hero, bs_jump))) || (!c_bodystatecontains(hero, bs_sprint))) || rx_isaniactive(hero, "S_SWIM"))) {
        if (!rx_isnightmarearena()) {
            staminabonus += 1;
        };
        if ((rx_bonusstaregen == true) && (reloadstam >= 1)) {
            staminabonus += 2;
        };
        if (vatras_teachregenstam) {
            staminabonus += 1;
            if (vatras_teachregenstam_level2) {
                staminabonus += 3;
                if ((hero.guild == gil_tpl) && rx_checktplguild()) {
                    staminabonus += 1;
                };
            };
        };
        if (reloadstam >= 5) {
            if (c_bodystatecontains(hero, bs_stand) || c_bodystatecontains(hero, bs_sit)) {
                staminabonus += (1 + (hero_fatigue / 5)) + (atr_stamina_max / 4);
            }
            else {
                staminabonus += (hero_fatigue / 5) + (atr_stamina_max / 4);
            };
            reloadstam = 0;
        }
        else {
            reloadstam += 1;
        };
        if (rx_isaniactive(hero, "S_SWIM")) {
            staminabonus = staminabonus / 2;
        };
    }
последнее условие добавил (стало чуть медленнее, но не сильно)
А что за первое условие в первой строке? Если наша текущая стамина меньше максимальной стамины, умноженной на 10. Иначе вообще бывает?
 
Автор
Автор
zauronix

zauronix

Гвардеец
Пользователь VIP
Участник форума
Регистрация
26 Сен 2025
Сообщения
1.075
Реакции
170
Баллы
125
Лучшие ответы
0
#10
@Melkor, это кусок оригинального кода НБ
Я только последнее условие добавил
 
Сверху Снизу