Skip to content
This repository was archived by the owner on Jan 5, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
f75edf5
Add dedicated `Activity` function `LoseControlOfActor` that needs to …
fourZK Jan 12, 2023
5188215
Change the preposition "on" to "via" in Preset descriptions to better…
fourZK Jan 12, 2023
6626b1f
Crutches for the terminally ill cpp AI (sorry Causeless)
fourZK Jan 12, 2023
4c0403a
Refer to the Velocity of the item when it gets dropped (otherwise inh…
fourZK Jan 12, 2023
505cc40
Allow penetrating particles to omit the hitee MOSR if it has already …
fourZK Jan 12, 2023
b940fd6
Use flip `AEmitter` Flashes instead of rotating them
fourZK Jan 12, 2023
89aa378
`AHuman` head rotation fixes and HUD fix where item in pickup reach p…
fourZK Jan 12, 2023
03acb75
Added settings property for `CompactingHeight`, i.e. the maximum heig…
fourZK Jan 12, 2023
7cbb83b
Settling logic cleanup, namely removing seemingly prehistoric `VelOsc…
fourZK Jan 12, 2023
c51c7b9
Review changes + reformatting
fourZK Jan 13, 2023
0a32cf8
Reverting and reformatting settling logic
fourZK Jan 14, 2023
cae0dc7
Important changes regarding arms and dropped items;
fourZK Jan 14, 2023
93ce769
Merge branch 'development' into 4zk-content-source
fourZK Jan 14, 2023
3c351d5
Minor refactor
garethyr Jan 15, 2023
fc24cda
Merge branch 'development' into 4zk-content-source
garethyr Jan 15, 2023
787ee0a
Fix `MovableMan::GetClosestBrainActor` early return due to not checki…
fourZK Jan 15, 2023
a42f383
Tutorial mission edits
fourZK Jan 15, 2023
036fc4b
Reset actor stable recovery timer when made unstable
fourZK Jan 15, 2023
c6086e1
Merge branch '4zk-content-source' of https://github.com/cortex-comman…
fourZK Jan 15, 2023
11c5f5a
Merge branch 'development' into 4zk-content-source
fourZK Jan 15, 2023
0fdd25a
Added Actor PlayerControllable flag that can make Actors not able to …
garethyr Jan 17, 2023
654578d
Merge branch 'development' into 4zk-content-source
fourZK Jan 17, 2023
576c27b
New `Attachable` property `IgnoresParticlesWhileAttached`
fourZK Jan 17, 2023
e2f6a8f
`AHuman` item pickup detection improvements
fourZK Jan 17, 2023
7b8153e
Whoops lol
fourZK Jan 18, 2023
0d5ac57
Added the ability to replace one PieSlice in a PieMenu with another (…
garethyr Jan 19, 2023
40087e6
Fixed a bug caused by carelessness
garethyr Jan 19, 2023
70361fd
AHuman hand reaches out to picked up item instead of going to Holster…
fourZK Jan 24, 2023
cd05024
Enable AHuman FGArm crawl when not holding any items
fourZK Jan 24, 2023
12ac3e3
Fix unequipping BGArm when climbing; MoveState is in fact never set t…
fourZK Jan 24, 2023
08cd550
Use InheritedRotAngleOffset for wound angles instead of EmitAngle. Th…
fourZK Jan 24, 2023
b6d7f88
Merge branch '4zk-content-source' of https://github.com/cortex-comman…
fourZK Jan 24, 2023
67ba557
Merge branch 'development' into 4zk-content-source
fourZK Jan 24, 2023
6cb0665
Merge branch 'development' into 4zk-content-source
fourZK Jan 25, 2023
a6c88d1
Merge branch 'development' into 4zk-content-source
fourZK Jan 29, 2023
7821809
Merge branch 'development' into 4zk-content-source
fourZK Feb 2, 2023
5c1924b
New `SceneMan` function `DislodgePixel`
fourZK Feb 2, 2023
462ec8d
`NotResting` function to reset oscillation checks
fourZK Feb 2, 2023
f1681da
`Gib` property `InheritsVel` is now float instead of bool, similar to…
fourZK Feb 2, 2023
e7d5d9c
Move camera shake under `ActivityState::Running` condition so that it…
fourZK Feb 2, 2023
fbb07df
Have BG arm unequip first so that the FG weapon is always the first o…
fourZK Feb 2, 2023
17e8abb
Arm sway improvements
fourZK Feb 2, 2023
3a2c27c
`AHuman` dropping logic fixes; Inventory drop now only possible when …
fourZK Feb 2, 2023
8aa18bd
`INACTIVE` checks on `AHuman` Pie Slices
fourZK Feb 2, 2023
fbf5997
FG Arm needs to be empty to climb
fourZK Feb 2, 2023
fb36ddf
Change a couple `Arm` property names for clarity
fourZK Feb 2, 2023
2926553
Merge branch 'development' into 4zk-content-source
fourZK Feb 7, 2023
9f56e22
Remove `AHuman`-side reload angle stuff
fourZK Feb 7, 2023
f055e12
Visual recoil fine-tuning
fourZK Feb 7, 2023
b080018
Remove reload angle getters and setters, too
fourZK Feb 7, 2023
cd446ca
Spaced out `AHuman` dual-wielded fire + some reformatting along with …
fourZK Feb 7, 2023
c6129ff
Forgot to commit the removal of `OneHandedReloadAngleOffset` luabind
fourZK Feb 7, 2023
9a6b7e1
`AHuman` reload animation rework, new properties `ReloadAngle` and `O…
fourZK Feb 7, 2023
5af7501
Rotate arms according to the leg of their own layer for a better pose…
fourZK Feb 7, 2023
a724081
Treat very high `SupportOffset`s as non-reachable
fourZK Feb 7, 2023
0c5037f
Update `AHuman` HUD to indicate being affected by reload time multipl…
fourZK Feb 7, 2023
2f0323a
Remove unused commented block
fourZK Feb 7, 2023
ff95582
Doubles
fourZK Feb 7, 2023
b7fc461
Review changes
fourZK Feb 9, 2023
58202aa
Fix crash in `Activity::LoseControlOfActor`
fourZK Feb 9, 2023
9d41193
Tweaks to gib limit to attachable interaction logic
fourZK Feb 9, 2023
c21c737
Add `Attachable` property `GibWhenRemovedFromParent`
fourZK Feb 9, 2023
960f3ce
Default `JetReplenishRate` to correspond to 1:1 instead of always bei…
fourZK Feb 9, 2023
4c0bd3a
Added safety checks when replacing pie slices
garethyr Feb 9, 2023
55a6962
Added internal `MovableObject` function `GetTotalForce`
fourZK Feb 12, 2023
f67add0
Tweak jetpack icon offsets and make the fuel gauge colors more robust
fourZK Feb 12, 2023
f27bef9
Re-enabled `Actor` `GoldCarried` logic as an optional gameplay mutator;
fourZK Feb 19, 2023
044ad68
Allow inverse arm swing and device sway rates for `AHuman`
fourZK Feb 19, 2023
55414a5
Use `GetTotalBurstSize` for jetpack fuel consumption in order to matc…
fourZK Feb 19, 2023
d29eff9
Merge branch 'development' into 4zk-content-source
fourZK Feb 19, 2023
3f48d47
Minor cleanup
garethyr Feb 19, 2023
ea46ae9
Update CHANGELOG.md
fourZK Feb 19, 2023
13d65ab
Merge branch '4zk-content-source' of https://github.com/cortex-comman…
fourZK Feb 19, 2023
4fd026d
Move attachable-detaching impulse logic into a dedicated function + r…
fourZK Feb 21, 2023
8a02596
Fix some faulty parameter descriptions in ClosestWhatever MovableMan …
fourZK Feb 21, 2023
591521c
Improve crab walking slightly by halving the rate at which the paths …
fourZK Feb 22, 2023
4acab23
Use decimals for weights in buy and inventory menus when weight is un…
fourZK Feb 22, 2023
00f6646
Merge branch 'development' into 4zk-content-source
fourZK Feb 23, 2023
9459db6
Fix to AHuman throwing animation
fourZK Mar 9, 2023
ca41b5d
Revert screen shake related changes
fourZK Mar 15, 2023
a423804
Move `DistanceTraveled` from `MOPixel` to `MovableObject`, remove met…
fourZK Mar 15, 2023
a954502
Changelog entry for `DistanceTravelled`
fourZK Mar 15, 2023
c895e30
Merge branch 'development' into 4zk-content-source
fourZK Mar 15, 2023
bf3456c
Allow Jetpack fuel indicator to persist until full
fourZK Mar 16, 2023
86f6bc0
Merge branch 'development' into 4zk-content-source
garethyr Mar 18, 2023
9c155a2
Various bits of minor cleanup
garethyr Mar 19, 2023
eaeb940
Merge branch 'development' into 4zk-content-source
MaximDude Apr 12, 2023
2802363
Merge branch 'development' into 4zk-content-source
MaximDude Apr 12, 2023
26a2cd9
Merge branch 'development' into 4zk-content-source
garethyr Apr 13, 2023
ae9a127
Review changes - renamed m_ActivateBGItem to m_CanActivateBGItem
garethyr Apr 13, 2023
106e973
Fix a logic flaw that didn't actually matter
garethyr Apr 13, 2023
3f6cfcd
Merge branch 'development' into 4zk-content-source
MaximDude Apr 28, 2023
fb31dc8
Prevent SceneMan::DislodgePixel from imploding if passing in out-of-b…
MaximDude Apr 28, 2023
ce17eff
Use FlipFactor
MaximDude Apr 28, 2023
60f446e
Move ScrapCompactingHeight from SettingsMan to SceneMan
MaximDude Apr 28, 2023
bfd204d
Added new rounding mode to round things to nearest 0.5 (accounting fo…
garethyr Apr 29, 2023
0449664
Merge branch 'development' into 4zk-content-source
garethyr Apr 29, 2023
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
43 changes: 21 additions & 22 deletions Activities/GATutorial.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ void GATutorial::Clear()
for (int stage = 0; stage < FIGHTSTAGECOUNT; ++stage)
m_FightTriggers[stage].Reset();

m_EnemyCount = 0;
m_CurrentFightStage = NOFIGHT;
m_pCPUBrain = 0;
}
Expand Down Expand Up @@ -141,6 +142,7 @@ int GATutorial::Create(const GATutorial &reference)
for (int stage = 0; stage < FIGHTSTAGECOUNT; ++stage)
m_FightTriggers[stage] = reference.m_FightTriggers[stage];

m_EnemyCount = reference.m_EnemyCount;
m_CurrentFightStage = reference.m_CurrentFightStage;
// DOn't, owned and need to make deep copy in that case
// m_pCPUBrain;
Expand Down Expand Up @@ -293,6 +295,7 @@ int GATutorial::Start()
pOtherBrain = 0;
}
}
m_EnemyCount = g_MovableMan.GetTeamRoster(m_CPUTeam)->size();
}
// Give the player some scratch
else
Expand Down Expand Up @@ -767,23 +770,19 @@ void GATutorial::Update()
////////////////////////
// FIGHT LOGIC

if (m_ControlledActor[m_TutorialPlayer])
{
// Triggered defending stage
if (m_CurrentFightStage == NOFIGHT && m_FightTriggers[DEFENDING].IsWithinBox(m_ControlledActor[m_TutorialPlayer]->GetPos()))
{
// Take over control of screen messages
m_MessageTimer[m_TutorialPlayer].Reset();
// Display the text of the current step
g_FrameMan.ClearScreenText(ScreenOfPlayer(m_TutorialPlayer));
g_FrameMan.SetScreenText("DEFEND YOUR BRAIN AGAINST THE INCOMING FORCES!", ScreenOfPlayer(m_TutorialPlayer), 500, 8000, true);
// This will make all the enemy team AI's go into brain hunt mode
GameActivity::InitAIs();
DisableAIs(false, Teams::TeamTwo);

// Advance the stage
m_CurrentFightStage = DEFENDING;
}
// Triggered defending stage
if (m_CurrentFightStage == NOFIGHT && ((m_ControlledActor[m_TutorialPlayer] && m_FightTriggers[DEFENDING].IsWithinBox(m_ControlledActor[m_TutorialPlayer]->GetPos())) || g_MovableMan.GetTeamRoster(m_CPUTeam)->size() < m_EnemyCount)) {
// Take over control of screen messages
m_MessageTimer[m_TutorialPlayer].Reset();
// Display the text of the current step
g_FrameMan.ClearScreenText(ScreenOfPlayer(m_TutorialPlayer));
g_FrameMan.SetScreenText("DEFEND YOUR BRAIN AGAINST THE INCOMING FORCES!", ScreenOfPlayer(m_TutorialPlayer), 500, 8000, true);
// This will make all the enemy team AI's go into brain hunt mode
GameActivity::InitAIs();
DisableAIs(false, Teams::TeamTwo);

// Advance the stage
m_CurrentFightStage = DEFENDING;
}

///////////////////////////////////////////
Expand Down Expand Up @@ -1043,7 +1042,7 @@ void GATutorial::SetupAreas()
m_TutAreaSteps[ROOFTOP].push_back(TutStep("If you dig up gold, it is added to your team's funds", 4000, "Missions.rte/Objects/Tutorial/Funds.png", 2, 250));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Funds can be spent in the Buy Menu", 4000, "Missions.rte/Objects/Tutorial/Funds.png", 1, 333));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Which is opened through the Command Menu", 4000, "Missions.rte/Objects/Tutorial/MenuBuyMenu.png", 1, 500));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Hold [" + PieName + "] and point up-left to 'Buy Menu'", 6000, "Missions.rte/Objects/Tutorial/MenuBuyMenu.png", 2, 500));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Hold [" + PieName + "] and point up and left to 'Buy Menu'", 6000, "Missions.rte/Objects/Tutorial/MenuBuyMenu.png", 2, 500));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("The Buy Menu works like a shopping cart", 6000, "Missions.rte/Objects/Tutorial/BuyMenuCargo.png", 1, 500));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Add to the Cargo list the items you want delivered", 6000, "Missions.rte/Objects/Tutorial/BuyMenuCargo.png", 2, 500));
m_TutAreaSteps[ROOFTOP].push_back(TutStep("Then use the BUY button, or click outside the menu", 4000, "Missions.rte/Objects/Tutorial/BuyMenuBuy.png", 2, 500));
Expand All @@ -1062,12 +1061,12 @@ void GATutorial::SetupAreas()
m_TextOffsets[ROOFEAST].SetXY(m_apCommonScreens[0]->w / 2, -16);
// Set up the steps
m_TutAreaSteps[ROOFEAST].clear();
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Hold [" + PieName + "] and point up-right to 'Form Squad'", 4000, "Missions.rte/Objects/Tutorial/MenuTeam.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Hold [" + PieName + "] and point down and right to 'Form Squad'", 4000, "Missions.rte/Objects/Tutorial/MenuTeam.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Adjust selection circle to select nearby bodies", 4000, "Missions.rte/Objects/Tutorial/TeamSelect.png", 4, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("All selected units will follow you, and engage on their own", 4000, "Missions.rte/Objects/Tutorial/TeamFollow.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Units with weapons similar to the leader's will fire in unison with him.", 4000, "Missions.rte/Objects/Tutorial/TeamFollow.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Hold [" + PieName + "] and point up-right again to disband squad", 4000, "Missions.rte/Objects/Tutorial/MenuTeam.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Next, you can go to the east for a TRIAL BATTLE!", 8000, "Missions.rte/Objects/Tutorial/ArrowRight.png", 2));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Units with similar weapons will fire in unison with the leader", 4000, "Missions.rte/Objects/Tutorial/TeamFollow.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Hold [" + PieName + "] and point down and right again to disband squad", 4000, "Missions.rte/Objects/Tutorial/MenuTeam.png", 2, 500));
m_TutAreaSteps[ROOFEAST].push_back(TutStep("Next, you can head east for a TRIAL BATTLE!", 8000, "Missions.rte/Objects/Tutorial/ArrowRight.png", 2));

m_AreaTimer.Reset();
m_StepTimer.Reset();
Expand Down
1 change: 1 addition & 0 deletions Activities/GATutorial.h
Original file line number Diff line number Diff line change
Expand Up @@ -313,6 +313,7 @@ ClassInfoGetters;
TutorialRoom m_CurrentRoom;
// Trigger box for the subsequent fight
Box m_FightTriggers[FIGHTSTAGECOUNT];
int m_EnemyCount; //!< The amount of enemy actors at the start of the activity.
// The current fight stage
FightStage m_CurrentFightStage;
// The CPU opponent brain; not owned!
Expand Down
11 changes: 3 additions & 8 deletions Activities/GameActivity.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ void GameActivity::Clear()
{
m_ObservationTarget[player].Reset();
m_DeathViewTarget[player].Reset();
m_DeathTimer[player].Reset();
m_ActorSelectTimer[player].Reset();
m_ActorCursor[player].Reset();
m_pLastMarkedActor[player] = 0;
Expand Down Expand Up @@ -166,7 +165,6 @@ int GameActivity::Create(const GameActivity &reference)
{
m_ObservationTarget[player] = reference.m_ObservationTarget[player];
m_DeathViewTarget[player] = reference.m_DeathViewTarget[player];
// m_DeathTimer[player] = reference.m_DeathTimer[player];
m_ActorCursor[player] = reference.m_ActorCursor[player];
m_pLastMarkedActor[player] = reference.m_pLastMarkedActor[player];
m_LandingZone[player] = reference.m_LandingZone[player];
Expand Down Expand Up @@ -1365,14 +1363,13 @@ void GameActivity::Update()
if (g_MovableMan.IsActor(m_ControlledActor[player]))
{
m_DeathViewTarget[player] = m_ControlledActor[player]->GetPos();
m_DeathTimer[player].Reset();
}
// Add delay after death before switching so the death comedy can be witnessed
// Died, so enter death watch mode
else
{
m_ControlledActor[player] = 0;
m_ViewState[player] = ViewState::DeathWatch;
m_DeathTimer[player].Reset();
LoseControlOfActor(player);
}
}
// Ok, done watching death comedy, now automatically switch
Expand All @@ -1392,9 +1389,7 @@ void GameActivity::Update()
// Any other viewing mode and the actor died... go to deathwatch
else if (m_ControlledActor[player] && !g_MovableMan.IsActor(m_ControlledActor[player]))
{
m_ControlledActor[player] = 0;
m_ViewState[player] = ViewState::DeathWatch;
m_DeathTimer[player].Reset();
LoseControlOfActor(player);
}
}
// Player brain is now gone! Remove any control he may have had
Expand Down
2 changes: 0 additions & 2 deletions Activities/GameActivity.h
Original file line number Diff line number Diff line change
Expand Up @@ -1018,8 +1018,6 @@ class GameActivity : public Activity {
Vector m_ObservationTarget[Players::MaxPlayerCount];
// The player death sceneman scroll targets, for when a player-controlled actor dies and the view should go to his last position
Vector m_DeathViewTarget[Players::MaxPlayerCount];
// Timers for measuring death cam delays.
Timer m_DeathTimer[Players::MaxPlayerCount];
// Times the delay between regular actor swtich, and going into manual siwtch mode
Timer m_ActorSelectTimer[Players::MaxPlayerCount];
// The cursor for selecting new Actors
Expand Down
Loading