/// <summary> /// Add command to time line. /// </summary> /// <param name="moveViewModel">The move view model containing the moves.</param> public void AddCommandToTimeline(MoveViewModel moveViewModel, int player) { foreach (InputItemViewModel inputItem in Command.Commands) { TimeLineItemViewModel timeLineItemViewModel = new TimeLineItemViewModel(); timeLineItemViewModel.InputItemViewModel = inputItem; _events.Publish(new AddTimeLineItemMessage(timeLineItemViewModel, player)); } }
internal static TimeLineItemViewModel Deserialize(string stringValue) { //Deserialize actual timeline item TimeLineItem tmpTimeLineItem = TimeLineItem.Deserialize(stringValue); //Setup TimeLineItemViewModel TimeLineItemViewModel result = new TimeLineItemViewModel(); result.TimeLineItem = tmpTimeLineItem; result.WaitFrames = tmpTimeLineItem.GetFrameDuration(); result.Description = tmpTimeLineItem.Description; result.Index = -1; result.PlaySound = tmpTimeLineItem.PlaySound; return result; }
private void playTimeline() { recorder.ResetLockupTimer(); for (int i = 0; i < timeLineItems.Count; i++) { TimeLineItemViewModel item = (TimeLineItemViewModel)TimeLineItems[i]; //highlighting of current item SelectedItem = item; // if we aren't in a match (defined by being on a menu or pause is selected) the play timeline stops. if (recorder.InMatch) item.Action(recorder); else { // Get the last item in the list i = TimeLineItems.Count - 1; item = (TimeLineItemViewModel)TimeLineItems[i]; SelectedItem = item; //also kill loop PlaybackStop(); string message = "The combo trainer has detected that SF4 didn't produce any new frames in the last 3 seconds. Make sure that\n\na) Street Fighter 4 is running and inside a match or training mode\nb) Street Fighter is not paused\nc) You are running the latest version of Street Fighter 4 AEv2012\nd) Stage Quality in your SF4 graphic settings is set to HIGH"; throw new Exception(message); } } recorder.ReleaseALL(); //// Get the last item in the list //TimeLineItem lastItem = (TimeLineItem)TimeLine.Items[TimeLine.Items.Count - 1]; SelectedItem = (TimeLineItemViewModel)TimeLineItems[TimeLineItems.Count - 1]; PlaybackStop(); }
public async Task <ActionResult> GetTimeLineItem(TimeLineItemViewModel model) { string userEmail = HttpContext.User.FindFirst("email")?.Value ?? _defaultUser; UserInfo userinfo = await _progenyHttpClient.GetUserInfo(userEmail); string id = model.ItemId.ToString(); int type = model.TypeId; int itemId; bool idParse = int.TryParse(id, out itemId); if (type == (int)KinaUnaTypes.TimeLineType.Photo) { if (idParse) { PictureViewModel picture = await _mediaHttpClient.GetPictureViewModel(itemId, 0, 1, userinfo.Timezone); if (picture != null) { if (!picture.PictureLink.StartsWith("https://")) { picture.PictureLink = _imageStore.UriFor(picture.PictureLink); } picture.CommentsCount = picture.CommentsList.Count; return(PartialView("TimeLinePhotoPartial", picture)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Video) { if (idParse) { VideoViewModel video = await _mediaHttpClient.GetVideoViewModel(itemId, 0, 1, userinfo.Timezone); if (video != null) { video.CommentsCount = video.CommentsList.Count; return(PartialView("TimeLineVideoPartial", video)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Calendar) { if (idParse) { CalendarItem evt = await _progenyHttpClient.GetCalendarItem(itemId); // _context.CalendarDb.AsNoTracking().SingleOrDefault(e => e.EventId == itemId); if (evt != null && evt.StartTime.HasValue && evt.EndTime.HasValue) { evt.StartTime = TimeZoneInfo.ConvertTimeFromUtc(evt.StartTime.Value, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); evt.EndTime = TimeZoneInfo.ConvertTimeFromUtc(evt.EndTime.Value, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); return(PartialView("TimeLineEventPartial", evt)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Vocabulary) { if (idParse) { VocabularyItem voc = await _progenyHttpClient.GetWord(itemId); // _context.VocabularyDb.AsNoTracking().SingleOrDefault(v => v.WordId == itemId); if (voc != null) { if (voc.Date != null) { voc.Date = TimeZoneInfo.ConvertTimeFromUtc(voc.Date.Value, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); } return(PartialView("TimeLineVocabularyPartial", voc)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Skill) { if (idParse) { Skill skl = await _progenyHttpClient.GetSkill(itemId); // _context.SkillsDb.AsNoTracking().SingleOrDefault(s => s.SkillId == itemId); if (skl != null) { return(PartialView("TimeLineSkillPartial", skl)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Friend) { if (idParse) { Friend frn = await _progenyHttpClient.GetFriend(itemId); // _context.FriendsDb.AsNoTracking().SingleOrDefault(f => f.FriendId == itemId); if (frn != null) { if (!frn.PictureLink.StartsWith("https://")) { frn.PictureLink = _imageStore.UriFor(frn.PictureLink, "friends"); } return(PartialView("TimeLineFriendPartial", frn)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Measurement) { if (idParse) { Measurement mes = await _progenyHttpClient.GetMeasurement(itemId); // _context.MeasurementsDb.AsNoTracking().SingleOrDefault(m => m.MeasurementId == itemId); if (mes != null) { return(PartialView("TimeLineMeasurementPartial", mes)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Sleep) { if (idParse) { Sleep slp = await _progenyHttpClient.GetSleepItem(itemId); // _context.SleepDb.AsNoTracking().SingleOrDefault(s => s.SleepId == itemId); if (slp != null) { slp.SleepStart = TimeZoneInfo.ConvertTimeFromUtc(slp.SleepStart, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); slp.SleepEnd = TimeZoneInfo.ConvertTimeFromUtc(slp.SleepEnd, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); DateTimeOffset sOffset = new DateTimeOffset(slp.SleepStart, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone).GetUtcOffset(slp.SleepStart)); DateTimeOffset eOffset = new DateTimeOffset(slp.SleepEnd, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone).GetUtcOffset(slp.SleepEnd)); slp.SleepDuration = eOffset - sOffset; return(PartialView("TimeLineSleepPartial", slp)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Note) { if (idParse) { Note nte = await _progenyHttpClient.GetNote(itemId); // _context.NotesDb.AsNoTracking().SingleOrDefault(n => n.NoteId == itemId); if (nte != null) { nte.CreatedDate = TimeZoneInfo.ConvertTimeFromUtc(nte.CreatedDate, TimeZoneInfo.FindSystemTimeZoneById(userinfo.Timezone)); return(PartialView("TimeLineNotePartial", nte)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Contact) { if (idParse) { Contact cnt = await _progenyHttpClient.GetContact(itemId); // _context.ContactsDb.AsNoTracking().SingleOrDefault(c => c.ContactId == itemId); if (cnt != null) { if (!cnt.PictureLink.StartsWith("https://")) { cnt.PictureLink = _imageStore.UriFor(cnt.PictureLink, "contacts"); } if (cnt.DateAdded == null) { cnt.DateAdded = new DateTime(1900, 1, 1); } return(PartialView("TimeLineContactPartial", cnt)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Vaccination) { if (idParse) { Vaccination vac = await _progenyHttpClient.GetVaccination(itemId); // _context.VaccinationsDb.AsNoTracking().SingleOrDefault(v => v.VaccinationId == itemId); if (vac != null) { return(PartialView("TimeLineVaccinationPartial", vac)); } } } if (type == (int)KinaUnaTypes.TimeLineType.Location) { if (idParse) { Location loc = await _progenyHttpClient.GetLocation(itemId); // _context.LocationsDb.AsNoTracking().SingleOrDefault(l => l.LocationId == itemId); if (loc != null) { return(PartialView("TimeLineLocationPartial", loc)); } } } Note failNote = new Note(); failNote.CreatedDate = DateTime.UtcNow; failNote.Title = "Error, content not found."; return(PartialView("TimeLineNotePartial", failNote)); }
public AddTimeLineItemMessage(TimeLineItemViewModel timeLineItemViewModel) { TimeLineItemViewModel = timeLineItemViewModel; }
public AddTimeLineItemMessage(TimeLineItemViewModel timeLineItemViewModel, int player) { TimeLineItemViewModel = timeLineItemViewModel; Player = player; }