public void Notify_CaravanArrived(Caravan caravan) { Pawn pawn = BestCaravanPawnUtility.FindBestDiplomat(caravan: caravan); if (pawn == null) { Messages.Message(text: "MessagePeaceTalksNoDiplomat".Translate(), lookTargets: caravan, def: MessageTypeDefOf.NegativeEvent, historical: false); } else { CameraJumper.TryJumpAndSelect(target: caravan); var dialogue = new FactionWarDialogue(pawn: pawn, factionOne: this.factionOne, factionInstigator: this.factionInstigator, incidentTarget: caravan); var nodeRoot = dialogue.FactionWarPeaceTalks(); Find.WindowStack.Add(window: new Dialogue_FactionWarNegotiation(factionOne: this.factionOne, factionInstigator: this.factionInstigator, nodeRoot: nodeRoot)); this.canRemoveWithoutPostRemove = true; Find.WorldObjects.Remove(this); } }
public void Notify_CaravanArrived(Caravan caravan) { var pawn = BestCaravanPawnUtility.FindBestDiplomat(caravan); if (pawn == null) { Messages.Message("MessagePeaceTalksNoDiplomat".Translate(), caravan, MessageTypeDefOf.NegativeEvent, false); } else { CameraJumper.TryJumpAndSelect(caravan); var dialogue = new FactionWarDialogue(pawn, factionOne, factionInstigator, caravan); var nodeRoot = dialogue.FactionWarPeaceTalks(); Find.WindowStack.Add(new Dialogue_FactionWarNegotiation(factionOne, factionInstigator, nodeRoot)); canRemoveWithoutPostRemove = true; Find.WorldObjects.Remove(this); } }