add hooks for passengers entering/leaving a vehicle

This commit is contained in:
Chris Forbes
2011-07-29 17:53:12 +12:00
parent 206cb88146
commit f085b79491

View File

@@ -99,6 +99,10 @@ namespace OpenRA.Mods.RA
var a = cargo[0]; var a = cargo[0];
cargo.RemoveAt(0); cargo.RemoveAt(0);
totalWeight -= GetWeight(a); totalWeight -= GetWeight(a);
foreach( var npe in self.TraitsImplementing<INotifyPassengerExited>() )
npe.PassengerExited( self, a );
return a; return a;
} }
@@ -130,6 +134,9 @@ namespace OpenRA.Mods.RA
{ {
cargo.Add(a); cargo.Add(a);
totalWeight += GetWeight(a); totalWeight += GetWeight(a);
foreach( var npe in self.TraitsImplementing<INotifyPassengerEntered>() )
npe.PassengerEntered( self, a );
} }
public void Killed(Actor self, AttackInfo e) public void Killed(Actor self, AttackInfo e)
@@ -139,4 +146,7 @@ namespace OpenRA.Mods.RA
cargo.Clear(); cargo.Clear();
} }
} }
public interface INotifyPassengerEntered { void PassengerEntered(Actor self, Actor passenger); }
public interface INotifyPassengerExited { void PassengerExited(Actor self, Actor passenger); }
} }