예제 #1
0
        public static CharHolder CreateTestChar()
        {
            CharHolder Ret = new CharHolder();
            var        H1  = new Handlung()
            {
                Bezeichner = "Handlung1"
            };

            Ret.Add(H1);
            Ret.Add(new Vorteil()
            {
                Bezeichner = "Vorteil1"
            });

            //H1.LinkedThings.Add(Ret.LinkList.First(x => x.Object == Ret.CTRLAttribut.Charisma));
            //H1.LinkedThings.Add(Ret.LinkList.First(x => x.Object == Ret.CTRLAttribut.Logik));
            //H1.GegenZusammensetzung.Add(Ret.LinkList.First(x => x.Object == Ret.CTRLVorteil[0]));

            return(Ret);
        }
예제 #2
0
        public void TestOfAddition_N()
        {
            AppModel.Initialize();
            SettingsModel.Initialize();

            CharHolder Char = new CharHolder();
            var        H1   = new Handlung()
            {
                Bezeichner = "Handlung1"
            };

            Char.Add(H1);
            Char.Add(new Item()
            {
                Bezeichner = "Item"
            });

            H1.Value.Connected.Add(Char.CTRLAttribut.Charisma.Value);
            H1.Value.Connected.Add(Char.CTRLItem[0].Value);
            TestNewConnections(Char);
        }
예제 #3
0
        public void TestLoadAndSave_N()
        {
            AppModel.Initialize();
            SettingsModel.Initialize();
            CharHolder Char = new CharHolder();
            var        H1   = new Handlung()
            {
                Bezeichner = "Handlung1"
            };

            Char.Add(H1);
            Char.Add(new Item()
            {
                Bezeichner = "Item"
            });

            H1.Value.Connected.Add(Char.CTRLAttribut.Charisma.Value);
            H1.Value.Connected.Add(Char.CTRLItem[0].Value);

            string Ser = SharedIO.Serialize(Char);

            TestNewConnections(CharHolderIO.Deserialize(Ser));
        }
        public static CharHolder TestAllCats(int count = 1)
        {
            var testChar = new CharHolder();

            try
            {
                testChar.FileInfo = new FileInfo(Path.Combine(SharedIO.CurrentSavePath, "CompleteTestChar" + Constants.DATEIENDUNG_CHAR));
            }
            catch (Exception)
            {
            }

            var c = 0;

            foreach (var item in TypeHelper.ThingTypeProperties.Where(x => x.Usable))
            {
                for (int i = 0; i < count; i++)
                {
                    try
                    {
                        var newThing = testChar.Add(item.ThingType);
                        newThing.Bezeichner      = "Test " + i;
                        newThing.Notiz           = @"Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.";
                        newThing.Typ             = item.Type.Name;
                        newThing.Value.BaseValue = c++;
                        newThing.Zusatz          = TLIB.StaticRandom.Next(0, 2) == 0 ? "-1" : "+1";
                    }
                    catch (System.Exception)
                    {
                        continue;
                    }
                }
            }
            testChar.CTRLItem[0].Value.BaseValue     = 123;
            testChar.CTRLHandlung[0].Bezeichner      = "Handlung mit Cons";
            testChar.CTRLHandlung[0].Value.BaseValue = 55;
            testChar.CTRLHandlung[0].Value.Connected.Add(testChar.CTRLItem[0].Value);
            testChar.AfterLoad();
            return(testChar);
        }
        public static CharHolder CreateCharWithStandardContent()
        {
            var ret = new CharHolder();

            #region STD Content
            {
                ret.CTRLAttribut.Konsti.Value.BaseValue    = 1;
                ret.CTRLAttribut.Geschick.Value.BaseValue  = 1;
                ret.CTRLAttribut.Reaktion.Value.BaseValue  = 1;
                ret.CTRLAttribut.Staerke.Value.BaseValue   = 1;
                ret.CTRLAttribut.Charisma.Value.BaseValue  = 1;
                ret.CTRLAttribut.Logik.Value.BaseValue     = 1;
                ret.CTRLAttribut.Intuition.Value.BaseValue = 1;
                ret.CTRLAttribut.Willen.Value.BaseValue    = 1;
            }
            {
                var item = new Item
                {
                    Bezeichner = ModelResources.Content_SmartLink,
                };
                item.Value.BaseValue = 1;
                item.Aktiv           = false;
                item.Besitz          = true;
                ret.Add(item);
                item = new Item
                {
                    Bezeichner = ModelResources.Content_SmartLinkPrecision,
                };
                item.Value.BaseValue = 2;
                item.Aktiv           = true;
                item.Besitz          = true;
                ret.Add(item);
            }
            {
                var item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_Wahrnehmung,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_Schleichen,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_Akrobatik,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Geschick.Value);
                ret.Add(item);

                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_ErsteHilfe,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Logik.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_Bodenfahrzeuge,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Geschick.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_FeuerwaffeFertigkeit,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Geschick.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Bezeichner = ModelResources.Content_Nahkampf,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Geschick.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Typ        = ModelResources.Content_Typ_Elektronik,
                    Bezeichner = ModelResources.Content_Computer,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Logik.Value);
                ret.Add(item);
                item = new Fertigkeit
                {
                    Typ        = ModelResources.Content_Typ_Sprache,
                    Bezeichner = ModelResources.Content_Muttersprache,
                };
                item.Value.BaseValue = 99;
                ret.Add(item);
            }
            {
                var item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Physisch,
                    Bezeichner = ModelResources.Content_Ini,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Reaktion.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Physisch,
                    Bezeichner = ModelResources.Content_FeuerwaffeHandlung,
                };
                item.Value.Connected.Add(ret.CTRLFertigkeit.Data.FirstOrDefault(x => x.Bezeichner == ModelResources.Content_FeuerwaffeFertigkeit).Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Geschick.Value);
                item.Limit.Connected.Add(ret.CTRLFernkampfwaffe.ActiveItem.Precision);
                item.Value.Connected.Add(ret.CTRLItem.Data.FirstOrDefault(x => x.Bezeichner == ModelResources.Content_SmartLink).Value);
                item.Limit.Connected.Add(ret.CTRLItem.Data.FirstOrDefault(x => x.Bezeichner == ModelResources.Content_SmartLinkPrecision).Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Physisch,
                    Bezeichner = ModelResources.Content_Ausweichen,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Reaktion.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Physisch,
                    Bezeichner = ModelResources.Content_Schadenswiderstand,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Konsti.Value);
                item.Value.Connected.Add(ret.CTRLPanzerung.ActiveItem.Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Physisch,
                    Bezeichner = ModelResources.Content_Widerstand,
                    Notiz      = ModelResources.Content_Widerstand_Note,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Konsti.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Willen.Value);
                ret.Add(item);

                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Mental,
                    Bezeichner = ModelResources.Content_Selbstbeherrschung,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Charisma.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Willen.Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Mental,
                    Bezeichner = ModelResources.Content_Menschenkenntnis,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Charisma.Value);
                ret.Add(item);
                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Mental,
                    Bezeichner = ModelResources.Content_Erinnerung,
                };
                item.Value.Connected.Add(ret.CTRLAttribut.Logik.Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Willen.Value);
                ret.Add(item);

                item = new Handlung
                {
                    Typ        = ModelResources.Content_Typ_Matrix,
                    Bezeichner = ModelResources.Content_Matrixsuche,
                };
                item.Value.Connected.Add(ret.CTRLFertigkeit.Data.FirstOrDefault(x => x.Bezeichner == ModelResources.Content_Computer).Value);
                item.Value.Connected.Add(ret.CTRLAttribut.Intuition.Value);
                ret.Add(item);
            }
            #endregion STD Content

            ret.AfterLoad();
            ret.HasChanges = true;
            try
            {
                ret.FileInfo = new FileInfo(SharedIO.CurrentSavePath + ret.MakeName(false));
            }
            catch (Exception ex)
            {
                TLIB.Log.Write("Error setting newchar saveplace", ex);
            }
            return(ret);
        }