public async Task GenerateCharActivityAsync(CharHolder Char) { if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.ApplicationModel.UserActivities.UserActivityChannel")) { return; } UserActivityChannel channel = UserActivityChannel.GetDefault(); var name = Char.MakeName(false); UserActivity userActivity = await channel.GetOrCreateUserActivityAsync(name); userActivity.VisualElements.DisplayText = AppResources.PlayedWith + " " + name.Remove(name.Length - Constants.DATEIENDUNG_CHAR.Length); userActivity.ActivationUri = new Uri(Constants.PROTOCOL_CHAR + Char.FileInfo?.FullName); await userActivity.SaveAsync(); CurrentCharActivity?.Dispose(); ShadowRunHelper.Helper.PlatformHelper.ExecuteOnUIThreadAsync(() => CurrentCharActivity = userActivity.CreateSession()); }
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); }
public static CharHolder CreateEmtpyChar() { var ret = new CharHolder(); ret.AfterLoad(); try { ret.FileInfo = new FileInfo(ShadowRunHelper.IO.SharedIO.CurrentSavePath + ret.MakeName(false)); } catch (Exception) { } return(ret); }