Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

a lot more stuff #15

Merged
merged 38 commits into from
Jul 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
e147b39
feat: Scaleform IDs updated.
FlenarnTemp Jun 15, 2024
fb70714
feat: NiController ID update.
FlenarnTemp Jun 15, 2024
40e5c6c
feat: Actor IDs updated.
FlenarnTemp Jun 15, 2024
5eb5c63
Merge branch 'master' of https://github.com/FlenarnTemp/CommonLibF4
FlenarnTemp Jul 10, 2024
1c1e46a
chore: Update 'BSInputEnableManager' IDs.
FlenarnTemp Jul 11, 2024
e53d969
chore: More misc. IDs updated.
FlenarnTemp Jul 12, 2024
27bf491
chore: More IDs updated.
FlenarnTemp Jul 12, 2024
cfc8887
chore: Single ID update.
FlenarnTemp Jul 12, 2024
4d60c5e
feat: Few more functions.
FlenarnTemp Jul 12, 2024
1709fa1
feat: Further implementation of BGSSceneAction classes.
FlenarnTemp Jul 14, 2024
9bde65a
feat: More RE/IDs.
FlenarnTemp Jul 15, 2024
967b0c9
chore: Update ID.
FlenarnTemp Jul 16, 2024
1106d70
feat: More REing.
FlenarnTemp Jul 17, 2024
df91494
feat: Further REing & IDs.
FlenarnTemp Jul 20, 2024
e2a1bb1
feat: Further RE.
FlenarnTemp Jul 21, 2024
a7448f4
feat: Further RE.
FlenarnTemp Jul 23, 2024
c91e87d
fix: BSTList is fucked.
FlenarnTemp Jul 23, 2024
70cdcb1
Merge branch 'master' into master
FlenarnTemp Jul 23, 2024
69c3e78
feat: Further progress on `Pipboy*Data` classes.
FlenarnTemp Jul 25, 2024
ed64004
Merge branch 'master' of https://github.com/FlenarnTemp/CommonLibF4
FlenarnTemp Jul 25, 2024
89cb0d1
chore: ID update.
FlenarnTemp Jul 25, 2024
082e32b
feat: `PipboyArray` class declared.
FlenarnTemp Jul 26, 2024
1ce3edc
feat: `PipboySpecialData` class declared.
FlenarnTemp Jul 26, 2024
7a2624c
feat: Update and correct RE of `MapMarkerData`.
FlenarnTemp Jul 26, 2024
4562ed5
feat: `TravelMarkerStateChange::Event` declared.
FlenarnTemp Jul 26, 2024
75e4623
feat: Declared `PipboyMapData` class.
FlenarnTemp Jul 26, 2024
c1edb3b
chore: Misc. fixes and some RE.
FlenarnTemp Jul 26, 2024
91275f2
feat: `InitDataRepairFailure`.
FlenarnTemp Jul 28, 2024
30b09f4
feat: Declared `PipboyPerksData` class.
FlenarnTemp Jul 29, 2024
d84d5c5
feat: Enum declarations.
FlenarnTemp Jul 29, 2024
f528844
feat: More events RE'd.
FlenarnTemp Jul 29, 2024
8afd47e
feat: VATS event.
FlenarnTemp Jul 29, 2024
1d8d394
feat: A few weapon related enums.
FlenarnTemp Jul 29, 2024
d2bc068
feat: Declared `PipboyStatusData` class.
FlenarnTemp Jul 29, 2024
a915eef
feat: Declared `PipboyWorkshopData` class.
FlenarnTemp Jul 30, 2024
fe4832d
feat: Declared `PipboyPlayerInfoData` class.
FlenarnTemp Jul 30, 2024
5b2c313
feat: Declaed `PipboyStatsData` class, last needed for
FlenarnTemp Jul 30, 2024
6cd3693
Merge branch 'master' into master
FalloutCascadia Jul 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions CommonLibF4/cmake/sourcelist.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -197,11 +197,24 @@ set(SOURCES
include/RE/Bethesda/Movement.h
include/RE/Bethesda/NavMesh.h
include/RE/Bethesda/NavMeshInfoMap.h
include/RE/Bethesda/PipboyArray.h
include/RE/Bethesda/PipboyDataGroup.h
include/RE/Bethesda/PipboyDataManager.h
include/RE/Bethesda/PipboyInventoryData.h
include/RE/Bethesda/PipboyInventoryUtils.h
include/RE/Bethesda/PipboyLogData.h
include/RE/Bethesda/PipboyManager.h
include/RE/Bethesda/PipboyMapData.h
include/RE/Bethesda/PipboyPerksData.h
include/RE/Bethesda/PipboyPlayerInfoData.h
include/RE/Bethesda/PipboyQuestData.h
include/RE/Bethesda/PipboyRadioData.h
include/RE/Bethesda/PipboySpecialData.h
include/RE/Bethesda/PipboyStatsData.h
include/RE/Bethesda/PipboyStatusData.h
include/RE/Bethesda/PipboyThrottleManager.h
include/RE/Bethesda/PipboyValue.h
include/RE/Bethesda/PipboyWorkshopData.h
include/RE/Bethesda/PlayerCharacter.h
include/RE/Bethesda/PlayerControls.h
include/RE/Bethesda/PowerArmor.h
Expand Down
38 changes: 35 additions & 3 deletions CommonLibF4/include/RE/Bethesda/Actor.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,6 @@

namespace RE
{
enum class ACTOR_CRITICAL_STAGE;
enum class ACTOR_LIFE_STATE;
enum class ACTOR_LOS_LOCATION;
enum class ATTACK_STATE_ENUM;
enum class COMMAND_TYPE;
enum class DEFAULT_OBJECT;
Expand Down Expand Up @@ -112,6 +109,41 @@ namespace RE
struct PerkEntryUpdatedEvent;
}

enum class ACTOR_CRITICAL_STAGE : std::int32_t
{
kNone = 0,
kGooStart = 1,
kGooEnd = 2,
kDisintegrateStart = 3,
kDisintegrateEnd = 4,
kFreezeStart = 5,
kFreezeEnd = 6,
kCount = 7
};

enum class ACTOR_LIFE_STATE : std::int32_t
{
kAlive = 0,
kDying = 1,
kDead = 2,
kUnconscious = 3,
kReanimate = 4,
kRecycle = 5,
kRestrained = 6,
kEssentialDown = 7,
kBleedout = 8
};

enum class ACTOR_LOS_LOCATION : std::int32_t
{
kNone = 0,
kEye = 1,
kHead = 2,
kTorse = 3,
kFeet = 4,
kCount = 5
};

enum class PTYPE : std::int32_t
{
kExplore = 0,
Expand Down
7 changes: 7 additions & 0 deletions CommonLibF4/include/RE/Bethesda/BGSInventoryInterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,13 @@ namespace RE
return func(this, a_handleID);
}

[[nodiscard]] bool ForceMergeStacks(const std::uint32_t& a_handleID)
{
using func_t = decltype(&BGSInventoryInterface::ForceMergeStacks);
static REL::Relocation<func_t> func{ REL::ID(2194032) };
return func(this, a_handleID);
}

// members
BSTArray<Agent> agentArray; // B8
};
Expand Down
26 changes: 26 additions & 0 deletions CommonLibF4/include/RE/Bethesda/BGSInventoryItem.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,25 @@ namespace RE
};
static_assert(sizeof(CheckStackIDFunctor) == 0x10);

class alignas(0x08) CheckExtraDataFunctor :
public StackDataCompareFunctor // 00
{
public:
static constexpr auto RTTI{ RTTI::BGSInventoryItem__CheckExtraDataFunctor };
static constexpr auto VTABLE{ VTABLE::BGSInventoryItem__CheckExtraDataFunctor };

CheckExtraDataFunctor(const BGSInventoryItem::Stack* a_stack) noexcept :
extra(a_stack->extra.get())
{}

// override (StackDataCompareFunctor)
bool CompareData(const BGSInventoryItem::Stack&) override { return this->extra == extra; }

// members
const ExtraDataList* extra; // 08
};
static_assert(sizeof(CheckExtraDataFunctor) == 0x10);

class __declspec(novtable) alignas(0x08) StackDataWriteFunctor
{
public:
Expand Down Expand Up @@ -194,6 +213,13 @@ namespace RE
return func(this, a_index);
}

[[nodiscard]] void MergeStacks()
{
using func_t = decltype(&BGSInventoryItem::MergeStacks);
static REL::Relocation<func_t> func{ REL::ID(2194109) };
return func(this);
}

// members
TESBoundObject* object; // 00
BSTSmartPointer<Stack> stackData; // 08
Expand Down
100 changes: 99 additions & 1 deletion CommonLibF4/include/RE/Bethesda/BSExtraData.h
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,105 @@ namespace RE
struct __declspec(novtable) MapMarkerData :
public TESFullName // 00
{
std::uint32_t flags; // 10
enum MARKER_TYPE : std::uint16_t
{
kCave = 0,
kCity,
kDiamondCity,
kEncampment,
kIndustrial,
kGovtBuilding,
kMetro,
kMilitaryBase,
kLandmark,
kOffice,
kRuinsTown,
kRuinsUrban,
kSanctuary,
kSettlement,
kSewer,
kVault,
kAirfield,
kBunkerHill,
kCamper,
kCar,
kChurch,
kCountryClub,
kCustomHouse,
kDriveIn,
kElevatedHighway,
kFaneuilHall,
kFarm,
kFillingStation,
kForest,
kGoodNeighbor,
kGraveyard,
kHospital,
kIndustrialDome,
kIndustrialStacks,
kInstitute,
kIrishPride,
kJunkyard,
kObservatory,
kPier,
kPondOrLake,
kQuarry,
kRadioactiveArea,
kRadioTower,
kSalem,
kSchool,
kShipwreck,
kSubmarine,
kSwanPond,
kSynthHead,
kTown,
kBOS,
kBrownstone,
kBunker,
kCastle,
kSkyscraper,
kLibertalia,
kLowrise,
kMinutemen,
kPoliceStation,
kPrydwen,
kRailroadFaction,
kRailroad,
kSatellite,
kSentinel,
kUSSConstitution,
kMechanist,
kRaiderSettlement,
kVassalSettlement,
kPotentialVassalSettlement,
kBottlingPlant,
kGalactic,
kHub,
kKiddieKingdom,
kMonorail,
kRides,
kSafari,
kWildWest,
kPOI,
kDisciples,
kOperators,
kPack,
kDoor,
kCountEditor,
kQuest,
kQuestDoor,
kQuestMultiple,
kPlayerSet,
kPlayerLocation,
kPowerArmorLocation,
kDogmeat,
kTeammate,
kCountTotal
};

std::uint8_t flags; // 10
std::uint8_t originalFlags; // 11
MARKER_TYPE type; // 12
};
static_assert(sizeof(MapMarkerData) == 0x18);

Expand Down
Loading