Commit Graph

340 Commits

Author SHA1 Message Date
Jonathan Lamothe c65bcbbca4 added goalie-related fields to GameState 2019-10-31 00:46:12 -04:00
Jonathan Lamothe 66a2a70bbe implemented addGoalie 2019-10-30 23:50:13 -04:00
Jonathan Lamothe 667cf34475 implemented resetCreatePlayerState and resetCreateGoalieState 2019-10-30 23:50:13 -04:00
Jonathan Lamothe 2d2ee61aae implemented confirmCreateGoalieC 2019-10-30 23:50:13 -04:00
Jonathan Lamothe ed31ce5b1d added missing documentation comments 2019-10-30 01:29:16 -04:00
Jonathan Lamothe 0812ae3ddd implemented goalie name prompt 2019-10-30 01:29:16 -04:00
Jonathan Lamothe ec914a38b1 implemented goalieNumPrompt 2019-10-30 01:29:16 -04:00
Jonathan Lamothe a9b5ada114 implemented getGoalieNumC 2019-10-30 01:29:16 -04:00
Jonathan Lamothe 67bb12920c added goalie creation to main menu 2019-10-30 01:29:16 -04:00
Jonathan Lamothe e94bf59c81 implemented createGoalieStateL 2019-10-30 01:29:16 -04:00
Jonathan Lamothe 2a94e99371 allow ProgMode to handle goalie creation 2019-10-30 01:29:16 -04:00
Jonathan Lamothe 1782c0bc48 implemented CreateGoalieState type 2019-10-30 01:29:16 -04:00
Jonathan Lamothe a234d8e802 removed (redundant) gsGoalsAgainst 2019-10-30 01:29:16 -04:00
Jonathan Lamothe 6b30e27836 typo fix 2019-10-30 01:28:54 -04:00
Jonathan Lamothe 4a113d06e1 bugfix: don't abort player selection
...upon cancellation of player creation
2019-10-30 00:45:16 -04:00
Jonathan Lamothe ef8f7f3fee don't abort creating new player on selection 2019-10-19 00:41:56 -04:00
Jonathan Lamothe cfe2969106 generate empty game stats report on failure 2019-10-16 02:32:57 -04:00
Jonathan Lamothe 19e0242135 fixed name column spacing 2019-10-16 02:26:42 -04:00
Jonathan Lamothe 32f61ccc89 implemented year-to-date report 2019-10-16 02:23:52 -04:00
Jonathan Lamothe bfe568492d implemented playerReport
a private function in the Mtlstats.Report module
2019-10-16 02:23:52 -04:00
Jonathan Lamothe 277ba9a9dd implemented playerNameColWidth 2019-10-15 01:03:32 -04:00
Jonathan Lamothe d338930800 implemented playerIsActive 2019-10-15 00:51:42 -04:00
Jonathan Lamothe 363d0cb2d3 don't scroll past top of page 2019-10-15 00:16:44 -04:00
Jonathan Lamothe a91ed5afb3 enable scrolling of report 2019-10-11 23:13:00 -04:00
Jonathan Lamothe db8bbd9786 added scrollOffset field to ProgState 2019-10-11 22:24:27 -04:00
Jonathan Lamothe e2c3b57749 implemented assignPMins 2019-10-11 01:10:50 -04:00
Jonathan Lamothe 3d1f6170f6 implemented assignPMinsPrompt 2019-10-09 22:33:48 -04:00
Jonathan Lamothe 1a481ab49d implemented getPMinsC 2019-10-09 22:24:30 -04:00
Jonathan Lamothe afd2bac7b5 implemented pMinPlayerPrompt 2019-10-09 21:54:55 -04:00
Jonathan Lamothe ffe9b7f87f implemented pMinPlayerC 2019-10-09 01:24:55 -04:00
Jonathan Lamothe e1a48afc5c penalty minutes control framework 2019-10-09 00:58:49 -04:00
Jonathan Lamothe 1810434716 added selectedPlayer and pMinsRecorded fields to GameState 2019-10-09 00:50:10 -04:00
Jonathan Lamothe a9c036f876 renamed pPoints to psPoints 2019-10-09 00:35:35 -04:00
Jonathan Lamothe 0b249bcdae calculate and display total game stats 2019-10-09 00:30:03 -04:00
Jonathan Lamothe 74fd4fe2fb implemented addPlayerStats 2019-10-09 00:24:34 -04:00
Jonathan Lamothe 5f53413ef7 split report into standings and game stats 2019-10-09 00:01:12 -04:00
Jonathan Lamothe 8424d5f40c add game stats to report 2019-10-03 03:08:17 -04:00
Jonathan Lamothe 9d04abecff update awardAssist 2019-10-03 02:28:16 -04:00
Jonathan Lamothe ad840cca65 awardGoal updates game stats 2019-10-03 02:10:22 -04:00
Jonathan Lamothe b17e63246f added gamePlayerStats field to GameState 2019-10-03 01:10:44 -04:00
Jonathan Lamothe 0aa2b49ba2 fixed formatting of goal data confirmation prompt 2019-10-02 01:57:58 -04:00
Jonathan Lamothe 7da4c54e65 implemented resetGoalData 2019-10-02 01:55:07 -04:00
Jonathan Lamothe 4f70c84c6b implemented playerSummary 2019-10-02 01:31:07 -04:00
Jonathan Lamothe 2be7d2bf1d implemented confirmGoalDataC 2019-10-01 01:02:12 -04:00
Jonathan Lamothe 66148a25d8 don't automatically update goal/assist stats 2019-10-01 01:02:12 -04:00
Jonathan Lamothe 08c3382fe8 recordGoalAssists should clear confirmGoalDataFlag 2019-10-01 00:06:54 -04:00
Jonathan Lamothe 739db189ae added confirmGoalDataFlag field to GameState 2019-10-01 00:02:49 -04:00
Jonathan Lamothe b8a3af11a1 reference goals and assists by index number, not names 2019-09-28 02:09:11 -04:00
Jonathan Lamothe ac92182b20 insert players at end of list (preserve index numbers) 2019-09-28 01:46:28 -04:00
Jonathan Lamothe 669c854f4f implemented awardGoalAssists 2019-09-27 01:39:50 -04:00
Jonathan Lamothe 11fcbfcbdd implemented awardAssist 2019-09-26 02:07:55 -04:00
Jonathan Lamothe c7c267b2a1 pressing enter without input results in player search failure 2019-09-26 01:36:10 -04:00
Jonathan Lamothe 75803edfe7 implemented assist prompt 2019-09-26 01:23:34 -04:00
Jonathan Lamothe ffdb8e1e8c framework for recording assists 2019-09-25 02:44:42 -04:00
Jonathan Lamothe 8c8a2d52a6 implemented modifyPlayer 2019-09-25 02:42:37 -04:00
Jonathan Lamothe 625d9c616a added goalBy and assistsBy to GameState 2019-09-25 02:42:37 -04:00
Jonathan Lamothe fc58b0a72b added maxAssists config value 2019-09-25 01:30:28 -04:00
Jonathan Lamothe a9918c559b update report to contain goals for and goals against 2019-09-21 00:35:46 -04:00
Jonathan Lamothe 06c94260ad update goals for and goals against when updating game stats 2019-09-21 00:31:40 -04:00
Jonathan Lamothe 9f68d0da1d added gmsGoalsFor and gmsGoalsAgainst fields to GameStats 2019-09-21 00:03:33 -04:00
Jonathan Lamothe 23a33fc27a save database on exit 2019-09-19 07:34:19 -04:00
Jonathan Lamothe d58293bef5 load database on start 2019-09-19 07:34:19 -04:00
Jonathan Lamothe e3388c45c7 limit number of player shortcuts displayed 2019-09-19 06:34:03 -04:00
Jonathan Lamothe f7e6ac9437 clear input buffer after player selection with function key 2019-09-19 06:25:38 -04:00
Jonathan Lamothe a66be1a45e prompt user for players who've scored goals 2019-09-19 06:21:04 -04:00
Jonathan Lamothe e80b7ec48c implemented recordGoalPrompt 2019-09-19 06:21:04 -04:00
Jonathan Lamothe b125e72034 implemented awardGoal 2019-09-19 06:21:04 -04:00
Jonathan Lamothe 156c2baaba implemented selectPlayerPrompt 2019-09-19 06:21:04 -04:00
Jonathan Lamothe 11a66cfd33 allow player creation callbacks to be impure 2019-09-19 04:01:28 -04:00
Jonathan Lamothe 8277f8bac7 implemented playerSearchExact 2019-09-19 03:11:48 -04:00
Jonathan Lamothe d4cfbcb968 changed promptFunctionKey to promptSpecialKey 2019-09-19 02:45:50 -04:00
Jonathan Lamothe 3d705c4e6d implemented nth 2019-09-18 02:45:20 -04:00
Jonathan Lamothe ed9e437a1a implemented playerSearch 2019-09-18 02:45:20 -04:00
Jonathan Lamothe 2ff8cff1c8 implemented unaccountedPoints helper function 2019-09-14 00:42:04 -04:00
Jonathan Lamothe 926a125692 added pointsAccounted field to GameState 2019-09-14 00:41:38 -04:00
Jonathan Lamothe 1a25c0dc92 made callbacks pure 2019-09-14 00:03:26 -04:00
Jonathan Lamothe 6ceb5415c5 use player creation callbacks 2019-09-13 23:54:36 -04:00
Jonathan Lamothe 6dd9350189 added callbacks to CreatePlayerState 2019-09-13 02:26:03 -04:00
Jonathan Lamothe 06a762cfdc removed cpsConfirmed from CreatePlayerStatus 2019-09-10 16:07:46 -04:00
Jonathan Lamothe 375e87a49e implemented player confirmation/addition 2019-09-09 23:35:28 -04:00
Jonathan Lamothe 0ee0451496 prompt for player's position 2019-09-09 22:58:04 -04:00
Jonathan Lamothe 57ac90038a prompt for player name 2019-09-09 22:58:04 -04:00
Jonathan Lamothe 754b3dd25c prompt for player number 2019-09-09 22:58:04 -04:00
Jonathan Lamothe 154c3979a5 implemented createPlayerStateL 2019-09-09 11:43:37 -04:00
Jonathan Lamothe d5d08aa0f7 added create player option to main menu 2019-09-09 10:51:32 -04:00
Jonathan Lamothe 6b73e367e4 implemented CreatePlayerState 2019-09-08 12:06:38 -04:00
Jonathan Lamothe be5d10b6fd moved ProgMode 2019-09-07 11:33:03 -04:00
Jonathan Lamothe 9c0ebb42d1 renamed date to gameDate 2019-09-07 09:06:16 -04:00
Jonathan Lamothe dc2f632563 prompt for confirmation of game input 2019-09-07 00:27:18 -04:00
Jonathan Lamothe 27867ba69d implemented Mtlstats.Report.date 2019-09-07 00:26:15 -04:00
Jonathan Lamothe e0dd80079d implemented ynHandler 2019-09-06 23:25:13 -04:00
Jonathan Lamothe 1e7c4d6c19 added dataVerified field to GameState 2019-09-06 11:21:46 -04:00
Jonathan Lamothe a9ce9a54d7 overtime losses don't count towards the loss column 2019-09-06 10:13:48 -04:00
Jonathan Lamothe f8519c31ce fit report to screen 2019-09-05 12:22:25 -04:00
Jonathan Lamothe cc377492bb removed unused modules 2019-09-04 23:16:54 -04:00
Jonathan Lamothe 07f335fd73 switch over to Mtlstats.Control module 2019-09-04 23:16:05 -04:00
Jonathan Lamothe 3a44bdca94 reset YTD stats before starting new game 2019-09-04 23:15:32 -04:00
Jonathan Lamothe 38fae17d44 implemented Mtlstats.Control module 2019-09-04 23:14:41 -04:00
Jonathan Lamothe ba7d694b14 defined Controller 2019-09-04 22:56:53 -04:00
Jonathan Lamothe 5b6ecc8c40 refactored updateGameStats and validageGameDate 2019-09-04 00:58:44 -04:00
Jonathan Lamothe 24f02b427e bugfix: ensure game wins are recorded 2019-09-04 00:49:05 -04:00
Jonathan Lamothe acb3be8427 wait for keypress to clear report 2019-09-03 17:54:20 -04:00
Jonathan Lamothe 6c17d88353 generate report 2019-09-03 15:50:34 -04:00
Jonathan Lamothe 258cf59417 implemented gmsGames 2019-09-03 14:15:29 -04:00
Jonathan Lamothe 84cb2c8c19 implemented overlay 2019-09-02 22:56:29 -04:00
Jonathan Lamothe 8dd4896f07 place game number header above relevant prompts 2019-09-02 22:39:03 -04:00
Jonathan Lamothe 6136151614 implemented homeTeam and awayTeam 2019-09-02 18:50:21 -04:00
Jonathan Lamothe f0e0d644d2 implemented month 2019-09-02 10:29:32 -04:00
Jonathan Lamothe 8b88cbff75 implemented centre 2019-09-02 09:54:04 -04:00
Jonathan Lamothe 6145dd5c0c implemented right 2019-09-02 09:41:47 -04:00
Jonathan Lamothe 60c662396f implemented left 2019-09-02 09:41:47 -04:00
Jonathan Lamothe d71d3c86e9 implemented padNum 2019-09-01 22:50:56 -04:00
Jonathan Lamothe c7c76b60f1 validate game date 2019-09-01 22:29:04 -04:00
Jonathan Lamothe eef773b7fa prompt for day of month game took place 2019-08-31 12:42:11 -04:00
Jonathan Lamothe bd0cffc56c prompt for game month 2019-08-31 12:29:37 -04:00
Jonathan Lamothe 79f8df50a0 make menu input case insensitive 2019-08-31 12:29:37 -04:00
Jonathan Lamothe 0798786d36 prompt for game year 2019-08-31 12:29:37 -04:00
Jonathan Lamothe f718757bea whitespace fix 2019-08-31 12:29:37 -04:00
Jonathan Lamothe 9f076db27b missing haddock comments 2019-08-31 11:24:55 -04:00
Jonathan Lamothe ab5408f464 added date fields to GameState 2019-08-31 10:32:03 -04:00
Jonathan Lamothe f9e7710122 implemented addGameStats 2019-08-31 09:33:26 -04:00
Jonathan Lamothe 9e855d9672 implemented gmsPoints 2019-08-30 18:57:56 -04:00
Jonathan Lamothe 4c13cc9103 implemented updateGameStats 2019-08-30 01:21:17 -04:00
Jonathan Lamothe a9d952b97b implemented gameLost 2019-08-30 00:44:40 -04:00
Jonathan Lamothe 3fe2ff10f6 make gameWon and gameTied return Maybe Bool instead of Bool 2019-08-30 00:43:09 -04:00
Jonathan Lamothe 45427a050e prompt user if game went into overtime when necessary 2019-08-29 00:29:30 -04:00
Jonathan Lamothe 3c8302174b implemented overtimeCheck 2019-08-29 00:12:30 -04:00
Jonathan Lamothe 7ee53ee8c1 implemented gameWon 2019-08-28 23:31:33 -04:00
Jonathan Lamothe c15ad6a477 implemented gameTied helper function 2019-08-28 01:47:30 -04:00
Jonathan Lamothe 2854c54474 removed unnecessary lenses 2019-08-28 01:23:47 -04:00
Jonathan Lamothe d7dd682532 implemented gameStateL 2019-08-28 01:23:47 -04:00
Jonathan Lamothe 6088974aea reordered functions 2019-08-27 13:07:43 -04:00
Jonathan Lamothe 97a42fd1de implemented otherScore 2019-08-27 12:50:40 -04:00
Jonathan Lamothe 29459063c8 changed teamScore to check GameState 2019-08-27 12:50:40 -04:00
Jonathan Lamothe 13d422100b added _dbHomeGameStats and _dbAwayGameStats with associated lenses 2019-08-27 11:14:15 -04:00
Jonathan Lamothe 3e4a9dd525 implemented GameStats and newGameStats 2019-08-27 11:13:40 -04:00
Jonathan Lamothe 9ba91f1f01 prompt for other team 2019-08-25 10:04:37 -04:00
Jonathan Lamothe 0f9f76ce4e added _otherTeam with its associated lenses 2019-08-25 09:46:53 -04:00
Jonathan Lamothe 2a2189c7d1 implenented strPrompt 2019-08-25 09:43:16 -04:00
Jonathan Lamothe 74809ced2e prompt for away team score 2019-08-24 20:14:49 -04:00
Jonathan Lamothe 0eb56cda81 implemented homeScorePrompt 2019-08-24 19:35:37 -04:00
Jonathan Lamothe bd561bb7a8 implemented numPrompt 2019-08-24 19:24:06 -04:00
Jonathan Lamothe 054289e3d6 implemented addChar and removeChar 2019-08-24 19:24:06 -04:00
Jonathan Lamothe 3cc76d881c basic prompting framework 2019-08-24 19:24:06 -04:00
Jonathan Lamothe 7e93b329b2 allow drawing functions to set cursor visibility 2019-08-24 09:41:23 -04:00
Jonathan Lamothe e6bc853b7f typo 2019-08-23 10:35:59 -04:00
Jonathan Lamothe 3df01be49a better drscription for _menuDefault 2019-08-23 10:16:26 -04:00
Jonathan Lamothe cff6c19ed8 added missing haddock comments 2019-08-23 10:10:49 -04:00
Jonathan Lamothe 2c77053bbe refactored handleEvent and draw 2019-08-23 10:04:33 -04:00
Jonathan Lamothe a3ccb47128 typo 2019-08-23 09:50:21 -04:00
Jonathan Lamothe 923c143826 removed setHomeGame and setAwayGame
made redundant by gameTypeL
2019-08-23 09:47:11 -04:00
Jonathan Lamothe 02f04a3d6c bugfix: increment game number in startNewGame 2019-08-23 09:32:21 -04:00
Jonathan Lamothe c95520832d created Action type 2019-08-23 09:22:32 -04:00
Jonathan Lamothe fd9ffd5220 display game type menu 2019-08-22 16:48:30 -04:00
Jonathan Lamothe 4d158a28db renamed/refactored teamPoints
- renamed to teamScore
2019-08-22 14:59:19 -04:00
Jonathan Lamothe ef7d34110a implemented awayScoreL 2019-08-22 14:33:39 -04:00
Jonathan Lamothe 2c2f9f5fc7 implemented homeScoreL 2019-08-22 14:19:43 -04:00
Jonathan Lamothe 7b7529339a implemented gameTypeL 2019-08-22 13:05:25 -04:00
Jonathan Lamothe 4f2dd119d2 use ?~ operator (where applicable) 2019-08-22 10:25:23 -04:00
Jonathan Lamothe 2e6a0f5ba4 renamed visitorScore to awayScore 2019-08-22 03:10:22 -04:00
Jonathan Lamothe ff19cd9fb5 implemented teamPoints 2019-08-22 03:06:36 -04:00
Jonathan Lamothe 87eb2b9f16 implemented setHomeGame and setAwayGame 2019-08-22 02:37:47 -04:00
Jonathan Lamothe c300542635 implemented startNewGame 2019-08-22 01:18:44 -04:00
Jonathan Lamothe ca60d71006 missing haddock comments 2019-08-22 01:16:26 -04:00
Jonathan Lamothe 51e591861d implemented resetYtd 2019-08-21 15:57:52 -04:00
Jonathan Lamothe 943efe0599 refactored new season menu 2019-08-21 01:15:26 -04:00
Jonathan Lamothe 7cffac245c refactored main menu 2019-08-21 01:08:12 -04:00
Jonathan Lamothe d6c51e6854 menu functions 2019-08-21 00:51:08 -04:00
Jonathan Lamothe 8f0bd22f90 added haddock comments and default menu return value 2019-08-21 00:50:22 -04:00
Jonathan Lamothe 314b41b90b define menu types 2019-08-21 00:21:22 -04:00
Jonathan Lamothe 27761d2b87 implemented new season handler 2019-08-20 12:50:39 -04:00
Jonathan Lamothe 76b4b85a0f implemented startNewSeason 2019-08-20 12:26:24 -04:00
Jonathan Lamothe 25034f0c48 missing haddock comments 2019-08-20 12:25:40 -04:00
Jonathan Lamothe 43c2a4ff4e added new game menu 2019-08-20 11:17:24 -04:00
Jonathan Lamothe 113127d33d draw new season menu 2019-08-20 10:41:15 -04:00
Jonathan Lamothe 1662705e4d implemented main menu 2019-08-20 10:41:15 -04:00
Jonathan Lamothe 3fab328e17 split mainLoop up into eventHandler and draw functions 2019-08-20 00:23:18 -04:00
Jonathan Lamothe 72f9d51977 add Database to ProgState 2019-08-19 23:58:18 -04:00
Jonathan Lamothe 95d125973b relicensed under GPLv3 (because of ncurses) 2019-08-19 23:57:24 -04:00
Jonathan Lamothe baadb5ae54 store number of games in database 2019-08-19 09:31:24 -04:00
Jonathan Lamothe d491a30ea7 remove initial render 2019-08-17 13:39:38 -04:00
Jonathan Lamothe 0be1a64119 built database 2019-08-16 11:49:04 -04:00
Jonathan Lamothe 505d0d8e96 disable keyboard echoing 2019-08-16 11:05:00 -04:00
Jonathan Lamothe 79ea0e4710 render display 2019-08-16 11:01:58 -04:00
Jonathan Lamothe 77ee289e1f missing haddock comments 2019-08-16 10:59:32 -04:00
Jonathan Lamothe 44f596102e ncurses framework 2019-08-13 10:11:10 -04:00
Jonathan Lamothe 33f87bcfe6 implemented Goalie (and GoalieStats) 2019-08-11 10:24:39 -04:00
Jonathan Lamothe 59eb7491f6 JSON encoding/decoding of players 2019-08-10 10:01:36 -04:00
Jonathan Lamothe 57b0b74cd1 implemented Player and PlayerStats 2019-08-09 11:43:20 -04:00
Jonathan Lamothe 98274615cc initial commit 2019-08-08 16:34:03 -04:00