Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 318
  • 1
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...
Новости Моддеры Oblivion Remastered нашли способ внедрения абсолютно любых скриптов
  • 421
  • 4
Сообщество моддинга Oblivion Remastered (ORM) переживает настоящий расцвет. После долгих месяцев работы, энтузиасты научили игру работать с мощным скриптовым языком Lua, открыв перед создателями...
Новости Tainted Grail: The Fall of Avalon — Польская «Skyrim» теперь официально
  • 2.069
  • 30
23 мая 2025 после двух лет успешного раннего доступа в Steam польская студия Questline наконец представила свою фэнтези-RPG в полной версии. Tainted Grail: The Fall of Avalon доступна на ПК...
Иконка ресурса

Дополнительный лут неписям и в сундуки 3.0

Нет прав доступа на загрузку
Позволяет выдавать неписям и сундукам дополнительный лут.
Автор
Автор
punkkk

punkkk

Наемник
Участник форума
Регистрация
5 Июн 2018
Сообщения
938
Реакции
400
Баллы
161
Лучшие ответы
4

Haart

Герой
Команда форума
Редактор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
3 Дек 2012
Сообщения
6.453
Реакции
3.614
Баллы
741
Лучшие ответы
407
@punkkk, да на здоровье. Выпиливать не собираемся.

Остальное там таймеры. Запуск зачастую из скриптов.
C++:
void RarePotion::CheckRarePotions( int index, int value ) {
        zSTRING inst = "";
        int isActive = 0;
        // магическое зелье
        if ( index == 1 && value == 0 ) {
            player->attribute[ NPC_ATR_MANAMAX ] -= 200;
            player->attribute[ NPC_ATR_MANA ] -= 200;
            if ( player->attribute[ NPC_ATR_MANA ] < 0 ) {
                player->attribute[ NPC_ATR_MANA ] = 0;
            }
        }
        // зелье неутомимости
        else if ( index == 4 && value > 0 ) {
            if ( *gameVars.staminaPtr < *gameVars.staminaMaxPtr * 10 ) {
                *gameVars.staminaPtr += 15;
                if ( *gameVars.staminaPtr > *gameVars.staminaMaxPtr * 10 ) {
                    *gameVars.staminaPtr = *gameVars.staminaMaxPtr * 10;
                }
            }
        }
        // зелье бесконечной маны
        else if ( index == 5 && value > 0 ) {
            if ( player->attribute[ NPC_ATR_MANA ] < player->attribute[ NPC_ATR_MANAMAX ] ) {
                player->attribute[ NPC_ATR_MANA ] += 50;
                if ( player->attribute[ NPC_ATR_MANA ] > player->attribute[ NPC_ATR_MANAMAX ] ) {
                    player->attribute[ NPC_ATR_MANA ] = player->attribute[ NPC_ATR_MANAMAX ];
                }
            }
        }
        // зелье регенерации
        else if ( index == 7 && value > 0 ) {
            if ( player->attribute[ NPC_ATR_HITPOINTS ] < player->attribute[ NPC_ATR_HITPOINTSMAX ] && !player->IsDead() ) {
                player->attribute[ NPC_ATR_HITPOINTS ] += ( player->attribute[ NPC_ATR_HITPOINTSMAX ] * 0.03f );
                if ( player->attribute[ NPC_ATR_HITPOINTS ] > player->attribute[ NPC_ATR_HITPOINTSMAX ] ) {
                    player->attribute[ NPC_ATR_HITPOINTS ] = player->attribute[ NPC_ATR_HITPOINTSMAX ];
                }
            }
        }
        // зелье скорости
        else if ( index == 8 && value == 0 ) {
            if ( additionalAcceleration ) {
                *additionalAcceleration = *additionalAcceleration - 50;
            }
        }
        // зелье магической мощи
        else if ( index == 10 && value == 0 ) {
            if ( CountLearnSpell ) {
                *CountLearnSpell = *CountLearnSpell - 50;
            }
        }

        for ( int i = 1; i <= 12; i++ ) {
            if ( i < 10 ) {
                inst = "rarePotion_0" + zSTRING( i ) + "_numOfSec";
            } else {
                inst = "rarePotion_" + zSTRING( i ) + "_numOfSec";
            }

            int value = parser->GetScriptInt( inst );

            if ( value >= 1 ) {
                isActive++;
            }
        }

        if ( !isActive ) {
            *rarePotion_isActive = FALSE;
        }
    }
void RarePotion::Loop() {

        //printWin("RefreshLocations loop");

        if ( !init ) {
            init = TRUE;
            Init();
        }

        // таймеры редких зелий
        if ( *rarePotion_isActive == TRUE ) {
            if ( !( player->GetInstanceName() == "PC_HERO" ) ) {
                return;
            }

            zSTRING inst = "";
            for ( int i = 1; i <= 12; i++ ) {
                if ( i < 10 ) {
                    inst = "rarePotion_0" + zSTRING( i ) + "_numOfSec";
                } else {
                    inst = "rarePotion_" + zSTRING( i ) + "_numOfSec";
                }

                int value = parser->GetScriptInt( inst );
                int tickValue = 1000;
                if ( gameVars.accelerationActive ) {
                    tickValue /= settings.worldTime_AccelerationRatio;
                }

                if ( value && MainTimer[ AST_TIMER_RarePotions + ( i - 1 ) ].Await( tickValue ) ) {
                    parser->SetScriptInt( inst, --value );
                    CheckRarePotions( i, value );
                }
            }
        }
    }
 
Автор
Автор
punkkk

punkkk

Наемник
Участник форума
Регистрация
5 Июн 2018
Сообщения
938
Реакции
400
Баллы
161
Лучшие ответы
4

DarkV

Наемник
Тестировщик
Участник форума
Регистрация
24 Апр 2018
Сообщения
901
Реакции
234
Баллы
156
Лучшие ответы
2
Обновил прошлая не нб версия без ошибок была сейчас вот
 

Вложения

Автор
Автор
punkkk

punkkk

Наемник
Участник форума
Регистрация
5 Июн 2018
Сообщения
938
Реакции
400
Баллы
161
Лучшие ответы
4

DarkV

Наемник
Тестировщик
Участник форума
Регистрация
24 Апр 2018
Сообщения
901
Реакции
234
Баллы
156
Лучшие ответы
2
все работает
 

CJIabuk

Житель города
Участник форума
Регистрация
14 Окт 2022
Сообщения
109
Реакции
39
Баллы
68
Лучшие ответы
1
Вот такая ошибка появляется при запуске НБ :-[ Вступительные ролики проходят, дальше меню игры и вылет
 

Вложения

  • 19,2 КБ Просмотров: 19

Hero

Наемник
Участник форума
Регистрация
8 Апр 2012
Сообщения
792
Реакции
113
Баллы
116
Лучшие ответы
2
а можно как нибудь добавить настройку, чтобы доп. лут был только с определенных типов врагов? к примеру, с нежити или с орков
 
Автор
Автор
punkkk

punkkk

Наемник
Участник форума
Регистрация
5 Июн 2018
Сообщения
938
Реакции
400
Баллы
161
Лучшие ответы
4
Вот такая ошибка появляется при запуске НБ :-[ Вступительные ролики проходят, дальше меню игры и вылет
Я вижу что ошибка от мода который для карманной кражи.. :) Гляну.
--- Добавлено: ---

а можно как нибудь добавить настройку, чтобы доп. лут был только с определенных типов врагов? к примеру, с нежити или с орков
Я могу добавить доп категорию в конфиг файл в теории.
 

bobyk23

Новичок
Участник форума
Регистрация
18 Сен 2014
Сообщения
23
Реакции
5
Баллы
23
Лучшие ответы
0
@punkkk, Добрый день! Спасибо за плагины, вносят долю приятного разнообразия в стопятисотое прохождение! Нет в планах запилить альтернативную карту монстров как в гильдиях, кузнеце и т.п?
 
Сверху Снизу