mirror of
https://github.com/fallout2-ce/fallout2-ce.git
synced 2026-07-27 16:47:11 -07:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
75a9303579 | ||
|
|
30a6a8b2d1 |
+70
-1
@@ -789,6 +789,62 @@ struct CustomKarmaFolderDescription {
|
||||
static std::vector<CustomKarmaFolderDescription> gCustomKarmaFolderDescriptions;
|
||||
static std::vector<TownReputationEntry> gCustomTownReputationEntries;
|
||||
|
||||
/* Explaining characterEditorSelectedItem
|
||||
|
||||
0-6: Primary Stats (SPECIAL)
|
||||
|
||||
- 0-6 = The seven primary stats (Strength, Perception, Endurance, Charisma, Intelligence, Agility, Luck)
|
||||
- Used for highlighting which SPECIAL stat is selected
|
||||
|
||||
7-9: Level/Experience Area
|
||||
|
||||
- 7 = Level display
|
||||
- 8 = Experience points display
|
||||
- 9 = Experience needed for next level
|
||||
|
||||
10-42: Folder Content Area (Perks/Karma/Kills)
|
||||
|
||||
- 10-42 = Items within the currently selected folder tab (perks, karma, or kills)
|
||||
- 10 = First visible item in the folder
|
||||
- The actual content depends on which folder is active (characterEditorWindowSelectedFolder)
|
||||
- This is the range where mouse wheel scrolling is active
|
||||
- When scrolling, items shift but the selection stays within this range
|
||||
|
||||
43-50: Status Conditions
|
||||
|
||||
- 43 = Hit Points (EDITOR_HIT_POINTS)
|
||||
- 44 = Poisoned status (EDITOR_POISONED)
|
||||
- 45 = Radiated status (EDITOR_RADIATED)
|
||||
- 46 = Eye damage (EDITOR_EYE_DAMAGE)
|
||||
- 47 = Crippled right arm (EDITOR_CRIPPLED_RIGHT_ARM)
|
||||
- 48 = Crippled left arm (EDITOR_CRIPPLED_LEFT_ARM)
|
||||
- 49 = Crippled right leg (EDITOR_CRIPPLED_RIGHT_LEG)
|
||||
- 50 = Crippled left leg (EDITOR_CRIPPLED_LEFT_LEG)
|
||||
|
||||
51-60: Derived Stats
|
||||
|
||||
- 51-60 = The 10 derived stats (EDITOR_FIRST_DERIVED_STAT + EDITOR_DERIVED_STAT_*)
|
||||
- Armor Class, Action Points, Carry Weight, Melee Damage, etc.
|
||||
|
||||
61-78: Skills
|
||||
|
||||
- 61-78 = The 18 skills (EDITOR_FIRST_SKILL to EDITOR_FIRST_SKILL + SKILL_COUNT)
|
||||
- Small Guns, Big Guns, Energy Weapons, Unarmed, etc.
|
||||
- characterEditorSelectedItem - 61 gives the actual skill index
|
||||
|
||||
79-81: Skill Controls
|
||||
|
||||
- 79 = Tag Skill button (EDITOR_TAG_SKILL)
|
||||
- 80 = Skills header/button (EDITOR_SKILLS)
|
||||
- 81 = Optional Traits button (EDITOR_OPTIONAL_TRAITS)
|
||||
|
||||
82-97: Optional Traits
|
||||
|
||||
- 82-97 = The 16 trait slots (EDITOR_FIRST_TRAIT to EDITOR_FIRST_TRAIT + TRAIT_COUNT)
|
||||
- Fast Metabolism, Bruiser, Small Frame, etc.
|
||||
- Can be arranged in 2 columns (left: 82-89, right: 90-97)
|
||||
*/
|
||||
|
||||
// 0x431DF8
|
||||
int characterEditorShow(bool isCreationMode)
|
||||
{
|
||||
@@ -826,7 +882,20 @@ int characterEditorShow(bool isCreationMode)
|
||||
_frame_time = getTicks();
|
||||
int keyCode = inputGetInput();
|
||||
|
||||
convertMouseWheelToArrowKey(&keyCode);
|
||||
// check for mouse wheel over the "folder" area (perks/karma/kills)
|
||||
if (keyCode == -1 && (mouseGetEvent() & MOUSE_EVENT_WHEEL) != 0 && !gCharacterEditorIsCreationMode && mouseHitTestInWindow(gCharacterEditorWindow, 34, 364, 314, 364 + 9 * (fontGetLineHeight() + 1))) {
|
||||
int wheelX, wheelY;
|
||||
mouseGetWheel(&wheelX, &wheelY);
|
||||
if (wheelY > 0) { // Scroll up
|
||||
characterEditorFolderViewScroll(-1);
|
||||
} else if (wheelY < 0) { // Scroll down
|
||||
characterEditorFolderViewScroll(1);
|
||||
}
|
||||
characterEditorDrawCard();
|
||||
windowRefresh(gCharacterEditorWindow);
|
||||
} else {
|
||||
convertMouseWheelToArrowKey(&keyCode);
|
||||
}
|
||||
|
||||
bool done = false;
|
||||
if (keyCode == 500) {
|
||||
|
||||
Reference in New Issue
Block a user