From f085b794912b31c49e5bee711880033a5606120e Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Fri, 29 Jul 2011 17:53:12 +1200 Subject: [PATCH] add hooks for passengers entering/leaving a vehicle --- OpenRA.Mods.RA/Cargo.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/OpenRA.Mods.RA/Cargo.cs b/OpenRA.Mods.RA/Cargo.cs index 38eec01300..726506c521 100644 --- a/OpenRA.Mods.RA/Cargo.cs +++ b/OpenRA.Mods.RA/Cargo.cs @@ -99,6 +99,10 @@ namespace OpenRA.Mods.RA var a = cargo[0]; cargo.RemoveAt(0); totalWeight -= GetWeight(a); + + foreach( var npe in self.TraitsImplementing() ) + npe.PassengerExited( self, a ); + return a; } @@ -130,6 +134,9 @@ namespace OpenRA.Mods.RA { cargo.Add(a); totalWeight += GetWeight(a); + + foreach( var npe in self.TraitsImplementing() ) + npe.PassengerEntered( self, a ); } public void Killed(Actor self, AttackInfo e) @@ -139,4 +146,7 @@ namespace OpenRA.Mods.RA cargo.Clear(); } } + + public interface INotifyPassengerEntered { void PassengerEntered(Actor self, Actor passenger); } + public interface INotifyPassengerExited { void PassengerExited(Actor self, Actor passenger); } }