public async Task MoreIntent(IDialogContext context, LuisResult result) { int BillNumber = Continuity.GetSavedBillNumber(context); if (BillNumber < 0) { // none left await context.PostAsync("Not anymore bills to show."); context.Wait(MessageReceived); return; } string CurVoter = Continuity.GetSavedLegislator(context); Newtonsoft.Json.Linq.JArray arr = Continuity.GetSavedBills(context); string State = Continuity.GetSavedState(context); if (arr == null) { await context.PostAsync("No bills saved to show."); context.Wait(MessageReceived); return; } int NumLeft = arr.Count; if (BillNumber >= NumLeft) { // none left await context.PostAsync("No more bills to show."); context.Wait(MessageReceived); return; } int NumToShow = NumLeft; if (NumToShow > Continuity.NumBillsToShowInGroup) { NumToShow = Continuity.NumBillsToShowInGroup; } for (int i = BillNumber; i < BillNumber + NumToShow; i++) { if (arr != null && i < arr.Count) { await BillDialogUtil.DisplayOneBill(context, arr[i], State, CurVoter); } } BillNumber += NumToShow; if (BillNumber < arr.Count) { Continuity.SetSavedBillNumber(context, BillNumber); await context.PostAsync("Type 'More' to see more bills.\n"); } else { Continuity.SetSavedBills(context, null); Continuity.SetSavedBillNumber(context, -1); } }