Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
dbfd24e
Implement SW sidebar
ZivDero Nov 3, 2024
6579e69
Cleanup, use vanilla function to get hotkey string
ZivDero Nov 3, 2024
c286439
finished
NetsuNegi Nov 10, 2024
e4ff579
Merge remote-tracking branch 'upstream/develop' into origin/branch/ex…
NetsuNegi Nov 11, 2024
ded978f
更新 YRpp
NetsuNegi Nov 11, 2024
64a55a4
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Nov 11, 2024
14343f7
Revert "更新 YRpp"
NetsuNegi Nov 11, 2024
5588ff4
fix error
NetsuNegi Nov 11, 2024
8765e5f
Merge branch 'origin/branch/exclusive-sw-sidebar' of https://github.c…
NetsuNegi Nov 11, 2024
41e15ca
fix YRpp
NetsuNegi Nov 11, 2024
595e220
Merge remote-tracking branch 'upstream/develop' into origin/branch/ex…
NetsuNegi Nov 13, 2024
ce59a56
YRpp fix
Aephiex Dec 7, 2024
a1e170f
solve conflict
Aephiex Dec 7, 2024
5ab4bfd
gerge branch 'Phobos-developers-develop' into exclusive-sw-sidebar
Aephiex Dec 7, 2024
00b5254
Merge pull request #3 from Aephiex/exclusive-sw-sidebar
NetsuNegi Dec 7, 2024
88b4b57
fix something
NetsuNegi Dec 7, 2024
f83770d
Update .gitmodules
Aephiex Dec 7, 2024
4d42eb4
Merge pull request #4 from Aephiex/patch-1
NetsuNegi Dec 7, 2024
09dc6d5
Update AresAddressInit.cpp
Aephiex Dec 7, 2024
59aaa4a
Update User-Interface.md
Aephiex Dec 7, 2024
1229f03
Merge pull request #5 from Aephiex/patch-1
NetsuNegi Dec 7, 2024
1a81634
change tags and update docs
NetsuNegi Dec 10, 2024
497f371
changes
NetsuNegi Dec 10, 2024
9462d82
docs fix
NetsuNegi Dec 10, 2024
8bdf383
更新 AresAddressInit.cpp
NetsuNegi Dec 11, 2024
ca25cbd
删除 AresAddressTable.cpp
NetsuNegi Dec 11, 2024
05d78cf
update ToggleSWButtonClass.cpp
NetsuNegi Dec 12, 2024
2686746
named some magic number
NetsuNegi Dec 20, 2024
ad89d94
fix docs
NetsuNegi Dec 20, 2024
5ac6ce5
[Minor] [Ares Fix] Ares academy fix (#1456)
Aephiex Dec 20, 2024
3751cb4
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Dec 21, 2024
d10e503
align bottom background
NetsuNegi Dec 21, 2024
bc426c9
Merge branch 'origin/branch/exclusive-sw-sidebar' of https://github.c…
NetsuNegi Dec 21, 2024
8d31bc4
impl
NetsuNegi Dec 21, 2024
cb54e0e
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Dec 22, 2024
23bc93c
merge conflict
Aephiex Dec 28, 2024
ff30b9f
Merge branch 'develop' into pr/1384
CrimRecya Jan 9, 2025
b9d901a
修复合并
CrimRecya Jan 9, 2025
8c27445
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Jan 9, 2025
d14dcd8
Update SWButtonClass.cpp
NetsuNegi Jan 9, 2025
a2a48fa
移除无关的部分
CrimRecya Jan 9, 2025
9ec6df5
改成画PCX
CrimRecya Jan 9, 2025
25e4580
补充图标所属方优先级功能
CrimRecya Jan 9, 2025
71d6ac6
增加新的自定义选项
CrimRecya Jan 9, 2025
13b791d
补充判断优先级时需要包含的头文件
CrimRecya Jan 9, 2025
de62ff9
修复栏目回收机制的错误
CrimRecya Jan 9, 2025
a5b03f0
不影响使用的细节
CrimRecya Jan 10, 2025
7baaae4
鼠标在背景上时重置指针图形并跳过点击行为
CrimRecya Jan 10, 2025
450b7f6
Merge branch 'origin/branch/exclusive-sw-sidebar' into NetsuNegi-SWSi…
NetsuNegi Jan 10, 2025
6dd74ad
Merge pull request #7 from Aephiex/NetsuNegi-SWSidebar
NetsuNegi Jan 10, 2025
ab66211
右键功能
CrimRecya Jan 10, 2025
7f09196
位置修复
CrimRecya Jan 10, 2025
bac33dc
Update YRpp
CrimRecya Jan 10, 2025
bd69231
Merge pull request #9 from CrimRecya/develop-SWtest2
NetsuNegi Jan 10, 2025
c2d74df
移除硬编的部分尺寸
CrimRecya Jan 10, 2025
464e851
移除 DLLDelete
CrimRecya Jan 10, 2025
cc672f0
Merge pull request #10 from CrimRecya/develop-SWtest2
NetsuNegi Jan 10, 2025
d1712bb
修复两个小问题
CrimRecya Jan 10, 2025
4685130
Merge pull request #11 from CrimRecya/develop-SWtest2
NetsuNegi Jan 11, 2025
8a31180
Update Phobos.INI.cpp
NetsuNegi Jan 11, 2025
c7f9d73
maybe GameCreate() is better?
NetsuNegi Jan 11, 2025
2f3ce7f
prevent sw sidebar triggered when hidden
NetsuNegi Jan 11, 2025
68fc05a
Update PhobosToolTip.cpp
Aephiex Jan 12, 2025
fa952a9
Merge pull request #12 from Aephiex/patch-1
NetsuNegi Jan 12, 2025
7173170
add global tag
NetsuNegi Jan 16, 2025
2029d84
try to fix
NetsuNegi Jan 16, 2025
8671642
fix docs
NetsuNegi Jan 16, 2025
7b2867f
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Jan 19, 2025
c45fa43
add screenshots
NetsuNegi Jan 19, 2025
c63757b
improve the response speed of ToolTip
NetsuNegi Jan 21, 2025
dbe8a1e
cameos automatic filling
NetsuNegi Jan 21, 2025
68db175
change something
NetsuNegi Jan 21, 2025
b446a82
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Feb 10, 2025
b788b7b
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Feb 22, 2025
a474978
fix priority
NetsuNegi Feb 22, 2025
948089d
Merge branch 'origin/branch/exclusive-sw-sidebar' of https://github.c…
NetsuNegi Feb 22, 2025
6cc849e
fix EVA_SelectTarget
NetsuNegi Feb 22, 2025
a1a5660
.
NetsuNegi Feb 22, 2025
e9a6f57
fix error
NetsuNegi Feb 22, 2025
5c4a230
Fix some bugs related to mouse clicking or hovering
CrimRecya Feb 22, 2025
1e42476
Fit with develop
CrimRecya Feb 22, 2025
06d9e9e
Timely update current button and optimize function order
CrimRecya Feb 22, 2025
d74fb64
Fix doc
CrimRecya Feb 22, 2025
cc3c489
Optimize
CrimRecya Feb 22, 2025
3c15e87
Revert commit
CrimRecya Feb 28, 2025
09d180a
Merge remote-tracking branch 'upstream/develop' into pr/1384
CrimRecya Feb 28, 2025
15492de
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Mar 3, 2025
3661982
improve
NetsuNegi Mar 3, 2025
da75383
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Mar 12, 2025
4f5abfb
move
NetsuNegi Mar 19, 2025
91c5cc4
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Mar 19, 2025
9d654f6
what can i say
NetsuNegi Mar 19, 2025
d15f72b
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Mar 24, 2025
c562983
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Mar 30, 2025
2d49aed
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Apr 5, 2025
a81931e
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Apr 6, 2025
e5a1f0e
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Apr 7, 2025
6f44f17
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Apr 7, 2025
3c51540
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Apr 26, 2025
cc957ff
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi May 16, 2025
5ea480f
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi May 26, 2025
c1851d2
Fit with `AnchoredToolTips`
CrimRecya May 26, 2025
589fb5e
add switch if hotkeys is enabled
NetsuNegi May 27, 2025
5cf5405
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi May 28, 2025
4f7d5ac
optimize
NetsuNegi May 29, 2025
47ea918
significance
NetsuNegi May 29, 2025
14e59ac
change
NetsuNegi May 29, 2025
44451dc
Update Commands.cpp
NetsuNegi May 31, 2025
ed34ba6
Merge branch 'develop' into origin/branch/exclusive-sw-sidebar
NetsuNegi Jun 5, 2025
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
2 changes: 2 additions & 0 deletions CREDITS.md
Original file line number Diff line number Diff line change
Expand Up @@ -399,6 +399,7 @@ This page lists all the individual contributions to the project by their author.
- Fix the bug that ships can travel on elevated bridges
- Original `Arcing` elevation inaccuracy fix
- Fix the bug that uncontrolled scatter when elite techno attacked by aircraft or some unit try crush it
- Exclusive SuperWeapon Sidebar
- **Apollo** - Translucent SHP drawing patches
- **ststl**:
- Customizable `ShowTimer` priority of superweapons
Expand Down Expand Up @@ -473,6 +474,7 @@ This page lists all the individual contributions to the project by their author.
- Aggressive attack move mission
- Amphibious access vehicle
- Fix an issue that spawned `Strafe` aircraft on aircraft carriers may not be able to return normally if aircraft carriers moved a short distance when the aircraft is landing
- Exclusive SuperWeapon Sidebar
- **Ollerus**:
- Build limit group enhancement
- Customizable rocker amplitude
Expand Down
11 changes: 11 additions & 0 deletions Phobos.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,11 @@
<ClCompile Include="src\Blowfish\Hooks.Blowfish.cpp" />
<ClCompile Include="src\Ext\Cell\Body.cpp" />
<ClCompile Include="src\Ext\House\Hooks.ForceEnemy.cpp" />
<ClCompile Include="src\Commands\ToggleSWSidebar.cpp" />
<ClCompile Include="src\Ext\Sidebar\SWSidebar\SWColumnClass.cpp" />
<ClCompile Include="src\Ext\Sidebar\SWSidebar\SWSidebarClass.cpp" />
<ClCompile Include="src\Ext\Sidebar\SWSidebar\SWButtonClass.cpp" />
<ClCompile Include="src\Ext\Sidebar\SWSidebar\ToggleSWButtonClass.cpp" />
<ClCompile Include="src\Ext\TechnoType\Hooks.MatrixOp.cpp" />
<ClCompile Include="src\Ext\Techno\Hooks.Airstrike.cpp" />
<ClCompile Include="src\Ext\Unit\Hooks.Harvester.cpp" />
Expand Down Expand Up @@ -200,6 +205,12 @@
<ClInclude Include="src\New\Type\Affiliated\CreateUnitTypeClass.h" />
<ClInclude Include="src\Blowfish\blowfish.h" />
<ClInclude Include="src\Ext\Cell\Body.h" />
<ClInclude Include="src\Commands\FireTacticalSW.h" />
<ClInclude Include="src\Commands\ToggleSWSidebar.h" />
<ClInclude Include="src\Ext\Sidebar\SWSidebar\SWColumnClass.h" />
<ClInclude Include="src\Ext\Sidebar\SWSidebar\SWSidebarClass.h" />
<ClInclude Include="src\Ext\Sidebar\SWSidebar\SWButtonClass.h" />
<ClInclude Include="src\Ext\Sidebar\SWSidebar\ToggleSWButtonClass.h" />
<ClInclude Include="src\New\Entity\AttachEffectClass.h" />
<ClInclude Include="src\New\Type\Affiliated\TiberiumEaterTypeClass.h" />
<ClInclude Include="src\New\Type\AttachEffectTypeClass.h" />
Expand Down
55 changes: 55 additions & 0 deletions docs/User-Interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -678,3 +678,58 @@ In `RA2MD.INI`:
[Phobos]
ToolTipBlur=false ; boolean, whether the blur effect of tooltips will be enabled.
```

### Exclusive SuperWeapon Sidebar

![image](_static/images/sw_sidebar-01-on.png)
![image](_static/images/sw_sidebar-02-on.png)

- It is possible to put sw cameos on the left of screen like C&C3 when `SuperWeaponSidebar` is true. Cameos arranged in a pyramid shape. In theory, it should be compatible with Ares.
- `SuperWeaponSidebar.Interval` controls the distance between two column cameos (excluding the background). When you need to make a background, the width of the background should be (`SuperWeaponSidebar.Interval` + cameo fixed width 60).
- `SuperWeaponSidebar.LeftOffset` controls the distance between the left side of cameo and the left side of its column (background). This will not be greater than `SuperWeaponSidebar.Interval`.
- `SuperWeaponSidebar.CameoHeight` controls the distance from the top of the previous cameo to the top of the next cameo. That is, the space between the upper and lower cameos is (`SuperWeaponSidebar.CameoHeight` - cameo fixed height 48). This will not be less than 48. When you need to make a background, this is the height of the background.
- `SuperWeaponSidebar.Max` controls the maximum number of cameos on the leftmost column, which also depends on the current game resolution.
- `SuperWeaponSidebar.MaxColumns` controls that maximum count of columns.
- Only sw with `SuperWeaponSidebar.Significance` not lower than `SuperWeaponSidebar.RequiredSignificance` are allowed to be added to the sw sidebar.
- `SuperWeaponSidebarKeysEnabled` should be true that you can use hotkeys about superweapon sidebar.
- You can also launch first 10 SW by hotkey in INTERFACE category.
- For localization of hotkey, add `TXT_FIRE_TACTICAL_SW_XX`, `TXT_FIRE_TACTICAL_SW_XX_DESC`, `TXT_TOGGLE_SW_SIDEBAR` and `TXT_TOGGLE_SW_SIDEBAR_DESC` into your `.csf` file.

In `uimd.ini`:
```ini
[Sidebar]
SuperWeaponSidebar=false ; boolean
SuperWeaponSidebar.Interval=0 ; integer, pixels
SuperWeaponSidebar.LeftOffset=0 ; integer, pixels
SuperWeaponSidebar.CameoHeight=48 ; integer, pixels
SuperWeaponSidebar.Max=0 ; integer
SuperWeaponSidebar.MaxColumns= ; integer
```

In `rulesmd.ini`
```ini
[GlobalControls]
SuperWeaponSidebarKeysEnabled=false ; boolean

[AudioVisual]
SuperWeaponSidebar.AllowByDefault=false ; boolean

[SOMESIDE]
SuperWeaponSidebar.OnPCX= ; filename - including the .pcx extension
SuperWeaponSidebar.OffPCX= ; filename - including the .pcx extension
SuperWeaponSidebar.TopPCX= ; filename - including the .pcx extension
SuperWeaponSidebar.CenterPCX= ; filename - including the .pcx extension
SuperWeaponSidebar.BottomPCX= ; filename - including the .pcx extension

[SOMESW]
SuperWeaponSidebar.Allow= ; boolean
SuperWeaponSidebar.PriorityHouses= ; list of house types
SuperWeaponSidebar.RequiredHouses= ; list of house types
SuperWeaponSidebar.Significance=0 ; integer
```

In `ra2md.ini`
```ini
[Phobos]
SuperWeaponSidebar.RequiredSignificance=0 ; integer
```
1 change: 1 addition & 0 deletions docs/Whats-New.md
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,7 @@ New:
- Dehardcoded 255 limit of `OverlayType` (by secsome)
- [Customizable airstrike flare colors](Fixed-or-Improved-Logics.md#airstrike-flare-customizations) (by Starkku)
- Allowed player's self-healing effects to be benefited by allied or `PlayerControl=true` houses (by Ollerus)
- Exclusive SuperWeapon Sidebar (by NetsuNegi & CrimRecya)

Vanilla fixes:
- Fixed sidebar not updating queued unit numbers when adding or removing units when the production is on hold (by CrimRecya)
Expand Down
Binary file added docs/_static/images/sw_sidebar-01-on.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/images/sw_sidebar-02-on.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions src/Commands/Commands.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
#include "ToggleDigitalDisplay.h"
#include "ToggleDesignatorRange.h"
#include "SaveVariablesToFile.h"
#include "ToggleSWSidebar.h"
#include "FireTacticalSW.h"
#include <Ext/Sidebar/SWSidebar/SWSidebarClass.h>

DEFINE_HOOK(0x533066, CommandClassCallback_Register, 0x6)
{
Expand All @@ -19,6 +22,21 @@ DEFINE_HOOK(0x533066, CommandClassCallback_Register, 0x6)
MakeCommand<QuickSaveCommandClass>();
MakeCommand<ToggleDigitalDisplayCommandClass>();
MakeCommand<ToggleDesignatorRangeCommandClass>();
MakeCommand<ToggleSWSidebar>();

if (Phobos::Config::SuperWeaponSidebarCommands)
{
SWSidebarClass::Commands[0] = MakeCommand<FireTacticalSWCommandClass<0>>();
SWSidebarClass::Commands[1] = MakeCommand<FireTacticalSWCommandClass<1>>();
SWSidebarClass::Commands[2] = MakeCommand<FireTacticalSWCommandClass<2>>();
SWSidebarClass::Commands[3] = MakeCommand<FireTacticalSWCommandClass<3>>();
SWSidebarClass::Commands[4] = MakeCommand<FireTacticalSWCommandClass<4>>();
SWSidebarClass::Commands[5] = MakeCommand<FireTacticalSWCommandClass<5>>();
SWSidebarClass::Commands[6] = MakeCommand<FireTacticalSWCommandClass<6>>();
SWSidebarClass::Commands[7] = MakeCommand<FireTacticalSWCommandClass<7>>();
SWSidebarClass::Commands[8] = MakeCommand<FireTacticalSWCommandClass<8>>();
SWSidebarClass::Commands[9] = MakeCommand<FireTacticalSWCommandClass<9>>();
}

if (Phobos::Config::DevelopmentCommands)
{
Expand Down
3 changes: 2 additions & 1 deletion src/Commands/Commands.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
#include <Utilities/Debug.h>

template <typename T>
void MakeCommand()
T* MakeCommand()
{
T* command = GameCreate<T>();
CommandClass::Array.AddItem(command);
return command;
};

#define CATEGORY_TEAM StringTable::LoadString(GameStrings::TXT_TEAM)
Expand Down
61 changes: 61 additions & 0 deletions src/Commands/FireTacticalSW.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
#pragma once
#include "Commands.h"

#include <Ext/Sidebar/Body.h>
#include <Ext/Sidebar/SWSidebar/SWSidebarClass.h>

template<size_t Index>
class FireTacticalSWCommandClass : public CommandClass
{
virtual const char* GetName() const override;
virtual const wchar_t* GetUIName() const override;
virtual const wchar_t* GetUICategory() const override;
virtual const wchar_t* GetUIDescription() const override;
virtual void Execute(WWKey eInput) const override;
};

template<size_t Index>
inline const char* FireTacticalSWCommandClass<Index>::GetName() const
{
_snprintf_s(Phobos::readBuffer, Phobos::readLength, "FireTacticalSW%d", Index + 1);
return Phobos::readBuffer;
}

template<size_t Index>
inline const wchar_t* FireTacticalSWCommandClass<Index>::GetUIName() const
{
const wchar_t* csfString = StringTable::TryFetchString("TXT_FIRE_TACTICAL_SW_XX", L"Fire Super Weapon %d");
_snwprintf_s(Phobos::wideBuffer, std::size(Phobos::wideBuffer), csfString, Index + 1);
return Phobos::wideBuffer;
}

template<size_t Index>
inline const wchar_t* FireTacticalSWCommandClass<Index>::GetUICategory() const
{
return CATEGORY_INTERFACE;
}

template<size_t Index>
inline const wchar_t* FireTacticalSWCommandClass<Index>::GetUIDescription() const
{
const wchar_t* csfString = StringTable::TryFetchString("TXT_FIRE_TACTICAL_SW_XX_DESC", L"Fires the Super Weapon at position %d in the Super Weapon sidebar.");
_snwprintf_s(Phobos::wideBuffer, std::size(Phobos::wideBuffer), csfString, Index + 1);
return Phobos::wideBuffer;
}

template<size_t Index>
inline void FireTacticalSWCommandClass<Index>::Execute(WWKey eInput) const
{
if (!SWSidebarClass::IsEnabled())
return;

const auto& columns = SWSidebarClass::Instance.Columns;

if (columns.empty())
return;

const auto& buttons = columns.front()->Buttons;

if (Index < buttons.size())
buttons[Index]->LaunchSuper();
}
33 changes: 33 additions & 0 deletions src/Commands/ToggleSWSidebar.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#include "ToggleSWSidebar.h"
#include <HouseClass.h>

#include <Utilities/GeneralUtils.h>
#include <Ext/Sidebar/SWSidebar/SWSidebarClass.h>

const char* ToggleSWSidebar::GetName() const
{
return "Toggle Super Weapon Sidebar";
}

const wchar_t* ToggleSWSidebar::GetUIName() const
{
return GeneralUtils::LoadStringUnlessMissing("TXT_TOGGLE_SW_SIDEBAR", L"Toggle Super Weapon Sidebar");
}

const wchar_t* ToggleSWSidebar::GetUICategory() const
{
return CATEGORY_INTERFACE;
}

const wchar_t* ToggleSWSidebar::GetUIDescription() const
{
return GeneralUtils::LoadStringUnlessMissing("TXT_TOGGLE_SW_SIDEBAR_DESC", L"Toggle the Super Weapon Sidebar.");
}

void ToggleSWSidebar::Execute(WWKey eInput) const
{
ToggleSWButtonClass::SwitchSidebar();

if (SWSidebarClass::Instance.CurrentColumn)
MouseClass::Instance.UpdateCursor(MouseCursorType::Default, false);
}
14 changes: 14 additions & 0 deletions src/Commands/ToggleSWSidebar.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#pragma once

#include "Commands.h"

// Display damage strings
class ToggleSWSidebar : public CommandClass
{
public:
virtual const char* GetName() const override;
virtual const wchar_t* GetUIName() const override;
virtual const wchar_t* GetUICategory() const override;
virtual const wchar_t* GetUIDescription() const override;
virtual void Execute(WWKey eInput) const override;
};
3 changes: 3 additions & 0 deletions src/Ext/Rules/Body.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ void RulesExt::ExtData::LoadBeforeTypeData(RulesClass* pThis, CCINIClass* pINI)
this->PlacementPreview.Read(exINI, GameStrings::AudioVisual, "PlacementPreview");
this->PlacementPreview_Translucency.Read(exINI, GameStrings::AudioVisual, "PlacementPreview.Translucency");

this->SuperWeaponSidebar_AllowByDefault.Read(exINI, GameStrings::AudioVisual, "SuperWeaponSidebar.AllowByDefault");

this->ConditionYellow_Terrain.Read(exINI, GameStrings::AudioVisual, "ConditionYellow.Terrain");
this->Shield_ConditionYellow.Read(exINI, GameStrings::AudioVisual, "Shield.ConditionYellow");
this->Shield_ConditionRed.Read(exINI, GameStrings::AudioVisual, "Shield.ConditionRed");
Expand Down Expand Up @@ -370,6 +372,7 @@ void RulesExt::ExtData::Serialize(T& Stm)
.Process(this->PlacementGrid_TranslucencyWithPreview)
.Process(this->PlacementPreview)
.Process(this->PlacementPreview_Translucency)
.Process(this->SuperWeaponSidebar_AllowByDefault)
.Process(this->ConditionYellow_Terrain)
.Process(this->Shield_ConditionYellow)
.Process(this->Shield_ConditionRed)
Expand Down
4 changes: 4 additions & 0 deletions src/Ext/Rules/Body.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@ class RulesExt
Valueable<bool> PlacementPreview;
TranslucencyLevel PlacementPreview_Translucency;

Valueable<bool> SuperWeaponSidebar_AllowByDefault;

Nullable<double> ConditionYellow_Terrain;
Nullable<double> Shield_ConditionYellow;
Nullable<double> Shield_ConditionRed;
Expand Down Expand Up @@ -259,6 +261,8 @@ class RulesExt
, PlacementPreview { false }
, PlacementPreview_Translucency { 75 }

, SuperWeaponSidebar_AllowByDefault { false }

, Shield_ConditionYellow { }
, Shield_ConditionRed { }
, Pips_Shield_Background { }
Expand Down
Loading
Loading