public void Release(Pawn claimant, Job job, IAttackTarget target) { if (target == null) { Log.Warning(claimant + " tried to release reservation on null attack target.", false); return; } for (int i = 0; i < this.reservations.Count; i++) { AttackTargetReservationManager.AttackTargetReservation attackTargetReservation = this.reservations[i]; if (attackTargetReservation.target == target && attackTargetReservation.claimant == claimant && attackTargetReservation.job == job) { this.reservations.RemoveAt(i); return; } } Log.Warning(string.Concat(new object[] { claimant, " with job ", job, " tried to release reservation on target ", target, ", but it's not reserved by him." }), false); }
public bool IsReservedBy(Pawn claimant, IAttackTarget target) { for (int i = 0; i < this.reservations.Count; i++) { AttackTargetReservationManager.AttackTargetReservation attackTargetReservation = this.reservations[i]; if (attackTargetReservation.target == target && attackTargetReservation.claimant == claimant) { return(true); } } return(false); }
private int GetReservationsCount(IAttackTarget target, Faction faction) { int num = 0; for (int i = 0; i < this.reservations.Count; i++) { AttackTargetReservationManager.AttackTargetReservation attackTargetReservation = this.reservations[i]; if (attackTargetReservation.target == target && attackTargetReservation.claimant.Faction == faction) { num++; } } return(num); }
public void Reserve(Pawn claimant, Job job, IAttackTarget target) { if (target == null) { Log.Warning(claimant + " tried to reserve null attack target.", false); } else if (!this.IsReservedBy(claimant, target)) { AttackTargetReservationManager.AttackTargetReservation attackTargetReservation = new AttackTargetReservationManager.AttackTargetReservation(); attackTargetReservation.target = target; attackTargetReservation.claimant = claimant; attackTargetReservation.job = job; this.reservations.Add(attackTargetReservation); } }
internal bool <> m__0(AttackTargetReservationManager.AttackTargetReservation x) { return(x.target == this.target); }
private static bool <ExposeData> m__1(AttackTargetReservationManager.AttackTargetReservation x) { return(x.claimant.DestroyedOrNull()); }
private static bool <ExposeData> m__0(AttackTargetReservationManager.AttackTargetReservation x) { return(x.target == null); }