Beispiel #1
0
        private Dialog_Restrictions(RestrictionType type, Rules rules)
        {
            _rules = rules;
            _type  = type;

            _presetList = new Listing_Preset <Restriction>(_type, _rules.GetRestriction(_type), new[] { Registry.GetVoidPreset <Restriction>(_type) }, RefreshTemplate, SaveTemplate, null);
            RefreshTemplate();
        }
Beispiel #2
0
        private Dialog_Rules(PawnType type) : base(new Vector2(700f, 600f))
        {
            var defaultRules = Registry.GetDefaultRules(type);

            _type     = type;
            _template = defaultRules.ClonePreset();
            _preset   = new Listing_Preset <Rules>(type, defaultRules, new[] { Registry.GetVoidPreset <Rules>(type) }, UpdateSelected, CommitTemplate, RevertTemplate);

            foreach (var pawnType in PawnType.List)
            {
                _floatMenuViews.Add(new FloatMenuOption(Lang.Get("Dialog_Rules.DefaultType", pawnType.Label), () => ChangeType(pawnType)));
            }

            _floatMenuAssign = GetAssignmentOptions();
        }
Beispiel #3
0
        private Dialog_Rules(Pawn pawn, Rules rules) : base(new Vector2(700f, 600f))
        {
            _pawn = pawn;

            _personalized = rules.CloneRulesFor(_pawn);
            _template     = rules.IsPreset ? rules.ClonePreset() : _personalized;

            _preset = new Listing_Preset <Rules>(rules.Type, rules.IsPreset ? rules : _personalized, new[] { _personalized }, UpdateSelected, CommitTemplate, RevertTemplate);

            if (_pawn != null)
            {
                _floatMenuViews.Add(new FloatMenuOption(Lang.Get("PawnType.Individual"), () => ChangeType(null)));
            }
            foreach (var type in PawnType.List)
            {
                _floatMenuViews.Add(new FloatMenuOption(Lang.Get("Dialog_Rules.DefaultType", type.Label), () => ChangeType(type)));
            }

            _floatMenuAssign = GetAssignmentOptions();
        }