mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-11-03 10:27:14 +00:00
fix(rails): rider flags default to the RailActivatorComponent row
StartRailMovement's bDamageImmune, bNoAggro and bShowNameBillboard came only from the level keys rail_activator_damage_immune, rail_no_aggro and rail_show_name_billboard, which 23 of the 80 level rails do not have, so those rails sent false. The client reads the same flags from the RailActivatorComponent row (DamageImmune, NoAggro, ShowNameBillboard; all 11 rows are 1) in LWOPlayerForcedMovementComponent::LoadRailData (0x00c85dc0), and the message's values replace the row's unless bUseDB (msgStartRailMovement 0x00ccd9c0). The server now takes the row's value and lets a level key replace it when the key is there. Wire format is unchanged; only the flag values sent for the 23 rails change (to true, matching the 5 live samples). In game: ride the 23 rails without the keys, all in the Ninjago earth gauntlet (earthgauntlet levels: dart spinners, 8 spinners, millstones, boss) near enemies: you are not damaged or targeted while riding, and name billboards behave as on the other rails. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -36,6 +36,10 @@ public:
|
||||
* @param originator the entity that triggered the event
|
||||
*/
|
||||
void OnCancelRailMovement(Entity* originator);
|
||||
|
||||
bool GetDamageImmune() const { return m_DamageImmune; }
|
||||
bool GetNoAggro() const { return m_NoAggro; }
|
||||
bool GetShowNameBillboard() const { return m_ShowNameBillboard; }
|
||||
private:
|
||||
/**
|
||||
* The entities that are currently traversing the rail
|
||||
|
||||
Reference in New Issue
Block a user