Require explicit implementation of INotifyPassenger(Entered|Exited)
This commit is contained in:
@@ -93,7 +93,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
getArmaments = () => armaments;
|
getArmaments = () => armaments;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PassengerEntered(Actor self, Actor passenger)
|
void INotifyPassengerEntered.OnPassengerEntered(Actor self, Actor passenger)
|
||||||
{
|
{
|
||||||
paxFacing.Add(passenger, passenger.Trait<IFacing>());
|
paxFacing.Add(passenger, passenger.Trait<IFacing>());
|
||||||
paxPos.Add(passenger, passenger.Trait<IPositionable>());
|
paxPos.Add(passenger, passenger.Trait<IPositionable>());
|
||||||
@@ -103,7 +103,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
.Where(a => Info.Armaments.Contains(a.Info.Name)));
|
.Where(a => Info.Armaments.Contains(a.Info.Name)));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PassengerExited(Actor self, Actor passenger)
|
void INotifyPassengerExited.OnPassengerExited(Actor self, Actor passenger)
|
||||||
{
|
{
|
||||||
paxFacing.Remove(passenger);
|
paxFacing.Remove(passenger);
|
||||||
paxPos.Remove(passenger);
|
paxPos.Remove(passenger);
|
||||||
|
|||||||
@@ -246,7 +246,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
SetPassengerFacing(a);
|
SetPassengerFacing(a);
|
||||||
|
|
||||||
foreach (var npe in self.TraitsImplementing<INotifyPassengerExited>())
|
foreach (var npe in self.TraitsImplementing<INotifyPassengerExited>())
|
||||||
npe.PassengerExited(self, a);
|
npe.OnPassengerExited(self, a);
|
||||||
|
|
||||||
var p = a.Trait<Passenger>();
|
var p = a.Trait<Passenger>();
|
||||||
p.Transport = null;
|
p.Transport = null;
|
||||||
@@ -311,7 +311,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach (var npe in self.TraitsImplementing<INotifyPassengerEntered>())
|
foreach (var npe in self.TraitsImplementing<INotifyPassengerEntered>())
|
||||||
npe.PassengerEntered(self, a);
|
npe.OnPassengerEntered(self, a);
|
||||||
|
|
||||||
var p = a.Trait<Passenger>();
|
var p = a.Trait<Passenger>();
|
||||||
p.Transport = self;
|
p.Transport = self;
|
||||||
@@ -406,7 +406,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
c.Trait<Passenger>().Transport = self;
|
c.Trait<Passenger>().Transport = self;
|
||||||
|
|
||||||
foreach (var npe in self.TraitsImplementing<INotifyPassengerEntered>())
|
foreach (var npe in self.TraitsImplementing<INotifyPassengerEntered>())
|
||||||
npe.PassengerEntered(self, c);
|
npe.OnPassengerEntered(self, c);
|
||||||
}
|
}
|
||||||
|
|
||||||
initialized = true;
|
initialized = true;
|
||||||
@@ -421,8 +421,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface INotifyPassengerEntered { void PassengerEntered(Actor self, Actor passenger); }
|
[RequireExplicitImplementation]
|
||||||
public interface INotifyPassengerExited { void PassengerExited(Actor self, Actor passenger); }
|
public interface INotifyPassengerEntered { void OnPassengerEntered(Actor self, Actor passenger); }
|
||||||
|
|
||||||
|
[RequireExplicitImplementation]
|
||||||
|
public interface INotifyPassengerExited { void OnPassengerExited(Actor self, Actor passenger); }
|
||||||
|
|
||||||
public class RuntimeCargoInit : IActorInit<Actor[]>, ISuppressInitExport
|
public class RuntimeCargoInit : IActorInit<Actor[]>, ISuppressInitExport
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user