private void OnNewHit(TimeIterActionArgs <TsVal <InvincibilityType> > args) { var invType = args.List[args.Index].Value; player.Hit(invType); if (invType == InvincibilityType.Normal) { CollisionOccurred(); } else if (invType == InvincibilityType.Heart) { player.HeartLost(); } }
private void OnNewPosition(TimeIterActionArgs <TsVal <Vector2> > args) { prevCenter = Center; Center = args.List[args.Index].Value; if (args.Index > 0) { var deltaT = args.List[args.Index].Time - args.List[args.Index - 1].Time; if (deltaT != 0) { velocityPerMs = (prevCenter - base.Center) / deltaT; } else { velocityPerMs = Vector2.Zero; } } }
private void OnNewSlomo(TimeIterActionArgs <TsVal <bool> > args) { SetSlomo(args.List[args.Index].Value); }
private void OnNewHeart(TimeIterActionArgs <float> args) { HasHeart = true; }