void INotifyOwnerChanged.OnOwnerChanged(Actor self, Player oldOwner, Player newOwner) { if (Info.UseFuelReserve) fueltank = newOwner.PlayerActor.Trait<Fueltank>(); resources = newOwner.PlayerActor.TraitOrDefault<PlayerResources>(); }
public Refuel(Actor self, Actor host) { move = self.TraitOrDefault<IMove>(); this.host = host; target = Target.FromActor(host); refuels = host.TraitOrDefault<RefuelsUnits>(); fueltank = self.TraitOrDefault<Fueltank>(); }
public FuelGenerator(Actor self, FuelGeneratorInfo info) { Info = info; var source = info.UseFuelReserve ? self.Owner.PlayerActor : self; fueltank = source.Trait<Fueltank>(); resources = self.Owner.PlayerActor.TraitOrDefault<PlayerResources>(); ticks = info.Interval; }
void INotifyOwnerChanged.OnOwnerChanged(Actor self, Player oldOwner, Player newOwner) { fuelReserve.RemoveCapacity(info.Capacity); fuelReserve = newOwner.PlayerActor.Trait<Fueltank>(); fuelReserve.AddCapacity(info.Capacity); }
public FuelStorage(Actor self, FuelStorageInfo info) { this.info = info; fuelReserve = self.Owner.PlayerActor.Trait<Fueltank>(); }