Beispiel #1
0
        public void ResolveSeatingAssignments()
        {
            foreach (VehiclePawn vehicle in vehicles)
            {
                if (vehicleAssigned.Where(k => k.Value.First == vehicle).Select(p => p.Key).Count() < vehicle.PawnCountToOperateLeft)
                {
                    if (!AssignSeats(vehicle))
                    {
                        Messages.Message("VehicleCaravanCanceled".Translate(), MessageTypeDefOf.NeutralEvent);
                        CaravanFormingUtility.StopFormingCaravan(lord);
                        return;
                    }
                }
            }

            AssignRemainingPawns();
        }
        public IEnumerable <Gizmo> GetGizmos()
        {
            _003CGetGizmos_003Ec__Iterator0 _003CGetGizmos_003Ec__Iterator = (_003CGetGizmos_003Ec__Iterator0) /*Error near IL_0038: stateMachine*/;

            using (IEnumerator <Gizmo> enumerator = this.priorityWork.GetGizmos().GetEnumerator())
            {
                if (enumerator.MoveNext())
                {
                    Gizmo g = enumerator.Current;
                    yield return(g);

                    /*Error: Unable to find new state assignment for yield return*/;
                }
            }
            Lord lord = this.pawn.GetLord();

            if (lord == null)
            {
                yield break;
            }
            if (!(lord.LordJob is LordJob_FormAndSendCaravan))
            {
                yield break;
            }
            yield return((Gizmo) new Command_Action
            {
                defaultLabel = "CommandCancelFormingCaravan".Translate(),
                defaultDesc = "CommandCancelFormingCaravanDesc".Translate(),
                icon = TexCommand.ClearPrioritizedWork,
                activateSound = SoundDefOf.TickLow,
                action = delegate
                {
                    CaravanFormingUtility.StopFormingCaravan(lord);
                },
                hotKey = KeyBindingDefOf.DesignatorCancel
            });

            /*Error: Unable to find new state assignment for yield return*/;
IL_01bf:
            /*Error near IL_01c0: Unexpected return in MoveNext()*/;
        }
        public IEnumerable <Gizmo> GetGizmos()
        {
            foreach (Gizmo g in this.priorityWork.GetGizmos())
            {
                yield return(g);
            }
            Lord lord = this.pawn.GetLord();

            if (lord != null && lord.LordJob is LordJob_FormAndSendCaravan)
            {
                yield return(new Command_Action
                {
                    defaultLabel = "CommandCancelFormingCaravan".Translate(),
                    defaultDesc = "CommandCancelFormingCaravanDesc".Translate(),
                    icon = TexCommand.ClearPrioritizedWork,
                    activateSound = SoundDefOf.TickLow,
                    action = delegate
                    {
                        CaravanFormingUtility.StopFormingCaravan(lord);
                    },
                    hotKey = KeyBindingDefOf.DesignatorCancel
                });
            }
        }