volleyballsimtypes 0.0.139 → 0.0.141
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{data → formula}/event.formula.json +7 -6
- package/dist/cjs/formula/events.d.ts +125 -0
- package/dist/cjs/formula/events.js +8 -0
- package/dist/cjs/formula/index.d.ts +3 -0
- package/dist/cjs/formula/index.js +19 -0
- package/dist/cjs/formula/roles.d.ts +20 -0
- package/dist/cjs/formula/roles.js +9 -0
- package/dist/cjs/formula/stats.d.ts +22 -0
- package/dist/cjs/formula/stats.js +18 -0
- package/dist/cjs/{src/service → service}/player/index.d.ts +0 -1
- package/dist/cjs/{src/service → service}/player/index.js +0 -1
- package/dist/{esm/src → cjs}/service/player/player.d.ts +3 -3
- package/dist/cjs/{src/service → service}/player/player.js +30 -8
- package/dist/cjs/{src/service → service}/player/role.d.ts +2 -2
- package/dist/cjs/{src/service → service}/player/role.js +2 -5
- package/dist/cjs/{src/service → service}/player/trait.d.ts +2 -2
- package/dist/cjs/{src/service → service}/player/trait.js +32 -9
- package/dist/esm/{data → formula}/event.formula.json +7 -6
- package/dist/esm/formula/events.d.ts +125 -0
- package/dist/esm/formula/events.js +2 -0
- package/dist/esm/formula/index.d.ts +3 -0
- package/dist/esm/formula/index.js +3 -0
- package/dist/esm/formula/roles.d.ts +20 -0
- package/dist/esm/formula/roles.js +3 -0
- package/dist/esm/formula/stats.d.ts +22 -0
- package/dist/esm/formula/stats.js +11 -0
- package/dist/esm/{src/service → service}/player/index.d.ts +0 -1
- package/dist/esm/{src/service → service}/player/index.js +0 -1
- package/dist/{cjs/src → esm}/service/player/player.d.ts +3 -3
- package/dist/esm/{src/service → service}/player/player.js +6 -7
- package/dist/esm/{src/service → service}/player/role.d.ts +2 -2
- package/dist/esm/{src/service → service}/player/role.js +2 -2
- package/dist/esm/{src/service → service}/player/trait.d.ts +2 -2
- package/dist/esm/{src/service → service}/player/trait.js +8 -8
- package/package.json +2 -2
- package/dist/cjs/src/service/event/block.d.ts +0 -30
- package/dist/cjs/src/service/event/block.js +0 -68
- package/dist/cjs/src/service/event/in-play-event.d.ts +0 -19
- package/dist/cjs/src/service/event/in-play-event.js +0 -27
- package/dist/cjs/src/service/event/libero-replacement.d.ts +0 -18
- package/dist/cjs/src/service/event/libero-replacement.js +0 -20
- package/dist/cjs/src/service/event/reception.d.ts +0 -27
- package/dist/cjs/src/service/event/reception.js +0 -43
- package/dist/cjs/src/service/event/serve.d.ts +0 -28
- package/dist/cjs/src/service/event/serve.js +0 -38
- package/dist/cjs/src/service/event/set.d.ts +0 -27
- package/dist/cjs/src/service/event/set.js +0 -48
- package/dist/cjs/src/service/event/spike.d.ts +0 -29
- package/dist/cjs/src/service/event/spike.js +0 -53
- package/dist/cjs/src/service/event/substitution.d.ts +0 -11
- package/dist/cjs/src/service/event/substitution.js +0 -14
- package/dist/cjs/src/service/player/stats.d.ts +0 -11
- package/dist/cjs/src/service/player/stats.js +0 -31
- package/dist/esm/src/service/event/block.d.ts +0 -30
- package/dist/esm/src/service/event/block.js +0 -64
- package/dist/esm/src/service/event/in-play-event.d.ts +0 -19
- package/dist/esm/src/service/event/in-play-event.js +0 -20
- package/dist/esm/src/service/event/libero-replacement.d.ts +0 -18
- package/dist/esm/src/service/event/libero-replacement.js +0 -16
- package/dist/esm/src/service/event/reception.d.ts +0 -27
- package/dist/esm/src/service/event/reception.js +0 -39
- package/dist/esm/src/service/event/serve.d.ts +0 -28
- package/dist/esm/src/service/event/serve.js +0 -34
- package/dist/esm/src/service/event/set.d.ts +0 -27
- package/dist/esm/src/service/event/set.js +0 -44
- package/dist/esm/src/service/event/spike.d.ts +0 -29
- package/dist/esm/src/service/event/spike.js +0 -49
- package/dist/esm/src/service/event/substitution.d.ts +0 -11
- package/dist/esm/src/service/event/substitution.js +0 -10
- package/dist/esm/src/service/player/stats.d.ts +0 -11
- package/dist/esm/src/service/player/stats.js +0 -25
- /package/dist/cjs/{src/data → data}/index.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/index.js +0 -0
- /package/dist/cjs/{src/data → data}/init-models.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/init-models.js +0 -0
- /package/dist/cjs/{src/data → data}/models/coach.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/coach.js +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-champion.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-champion.js +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-match.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-match.js +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-teams.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/competition-teams.js +0 -0
- /package/dist/cjs/{src/data → data}/models/competition.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/competition.js +0 -0
- /package/dist/cjs/{src/data → data}/models/country.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/country.js +0 -0
- /package/dist/cjs/{src/data → data}/models/draft-pick.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/draft-pick.js +0 -0
- /package/dist/cjs/{src/data → data}/models/draft.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/draft.js +0 -0
- /package/dist/cjs/{src/data → data}/models/index.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/index.js +0 -0
- /package/dist/cjs/{src/data → data}/models/iteration.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/iteration.js +0 -0
- /package/dist/cjs/{src/data → data}/models/league-season.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/league-season.js +0 -0
- /package/dist/cjs/{src/data → data}/models/league.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/league.js +0 -0
- /package/dist/cjs/{src/data → data}/models/match-rating.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/match-rating.js +0 -0
- /package/dist/cjs/{src/data → data}/models/match-set-stats.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/match-set-stats.js +0 -0
- /package/dist/cjs/{src/data → data}/models/match-set.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/match-set.js +0 -0
- /package/dist/cjs/{src/data → data}/models/match.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/match.js +0 -0
- /package/dist/cjs/{src/data → data}/models/performance-stats.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/performance-stats.js +0 -0
- /package/dist/cjs/{src/data → data}/models/player-team.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/player-team.js +0 -0
- /package/dist/cjs/{src/data → data}/models/player-trait.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/player-trait.js +0 -0
- /package/dist/cjs/{src/data → data}/models/player.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/player.js +0 -0
- /package/dist/cjs/{src/data → data}/models/rally.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/rally.js +0 -0
- /package/dist/cjs/{src/data → data}/models/set-position.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/set-position.js +0 -0
- /package/dist/cjs/{src/data → data}/models/team.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/team.js +0 -0
- /package/dist/cjs/{src/data → data}/models/trait.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/trait.js +0 -0
- /package/dist/cjs/{src/data → data}/models/user.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/models/user.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/coach.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/coach.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/country.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/country.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/court-position.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/court-position.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/draft-pick.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/draft-pick.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/draft.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/draft.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/formation.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/formation.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/index.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/index.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/iteration.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/iteration.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/league.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/league.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-rating.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-rating.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-set-stats.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-set-stats.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-set.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match-set.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/match.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/performance-stats.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/performance-stats.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/player-team.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/player-team.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/player.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/player.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/rally.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/rally.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/role.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/role.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/season-match.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/season-match.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/season.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/season.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/set-position.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/set-position.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/stage.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/stage.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/team.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/team.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/tournament-match.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/tournament-match.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/tournament.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/tournament.js +0 -0
- /package/dist/cjs/{src/data → data}/transformers/trait.d.ts +0 -0
- /package/dist/cjs/{src/data → data}/transformers/trait.js +0 -0
- /package/dist/cjs/{data → formula}/role.formula.json +0 -0
- /package/dist/cjs/{data → formula}/stat.formula.json +0 -0
- /package/dist/cjs/{src/index.d.ts → index.d.ts} +0 -0
- /package/dist/cjs/{src/index.js → index.js} +0 -0
- /package/dist/cjs/{src/service → service}/coach/coach.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/coach/coach.js +0 -0
- /package/dist/cjs/{src/service → service}/coach/formation.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/coach/formation.js +0 -0
- /package/dist/cjs/{src/service → service}/coach/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/coach/index.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/index.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/iteration.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/iteration.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/league.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/league.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/season.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/season.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/stage.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/stage.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/standing.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/standing.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/tournament-match.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/tournament-match.js +0 -0
- /package/dist/cjs/{src/service → service}/competition/tournament.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/competition/tournament.js +0 -0
- /package/dist/cjs/{src/service → service}/country/country.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/country/country.js +0 -0
- /package/dist/cjs/{src/service → service}/country/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/country/index.js +0 -0
- /package/dist/cjs/{src/service → service}/draft/draft-pick.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/draft/draft-pick.js +0 -0
- /package/dist/cjs/{src/service → service}/draft/draft.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/draft/draft.js +0 -0
- /package/dist/cjs/{src/service → service}/draft/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/draft/index.js +0 -0
- /package/dist/cjs/{src/service → service}/event/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/event/index.js +0 -0
- /package/dist/cjs/{src/service → service}/event/rally-event.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/event/rally-event.js +0 -0
- /package/dist/cjs/{src/service → service}/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/index.js +0 -0
- /package/dist/cjs/{src/service → service}/match/court-position.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/court-position.js +0 -0
- /package/dist/cjs/{src/service → service}/match/court-target-enum.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/court-target-enum.js +0 -0
- /package/dist/cjs/{src/service → service}/match/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/index.js +0 -0
- /package/dist/cjs/{src/service → service}/match/match-rating.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/match-rating.js +0 -0
- /package/dist/cjs/{src/service → service}/match/match-set.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/match-set.js +0 -0
- /package/dist/cjs/{src/service → service}/match/match-team.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/match-team.js +0 -0
- /package/dist/cjs/{src/service → service}/match/match.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/match.js +0 -0
- /package/dist/cjs/{src/service → service}/match/rally.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/match/rally.js +0 -0
- /package/dist/cjs/{src/service → service}/player/performance-stats.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/player/performance-stats.js +0 -0
- /package/dist/cjs/{src/service → service}/team/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/team/index.js +0 -0
- /package/dist/cjs/{src/service → service}/team/team.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/team/team.js +0 -0
- /package/dist/cjs/{src/service → service}/utils/index.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/utils/index.js +0 -0
- /package/dist/cjs/{src/service → service}/utils/object-utils.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/utils/object-utils.js +0 -0
- /package/dist/cjs/{src/service → service}/utils/string-utils.d.ts +0 -0
- /package/dist/cjs/{src/service → service}/utils/string-utils.js +0 -0
- /package/dist/esm/{src/data → data}/index.d.ts +0 -0
- /package/dist/esm/{src/data → data}/index.js +0 -0
- /package/dist/esm/{src/data → data}/init-models.d.ts +0 -0
- /package/dist/esm/{src/data → data}/init-models.js +0 -0
- /package/dist/esm/{src/data → data}/models/coach.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/coach.js +0 -0
- /package/dist/esm/{src/data → data}/models/competition-champion.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/competition-champion.js +0 -0
- /package/dist/esm/{src/data → data}/models/competition-match.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/competition-match.js +0 -0
- /package/dist/esm/{src/data → data}/models/competition-teams.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/competition-teams.js +0 -0
- /package/dist/esm/{src/data → data}/models/competition.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/competition.js +0 -0
- /package/dist/esm/{src/data → data}/models/country.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/country.js +0 -0
- /package/dist/esm/{src/data → data}/models/draft-pick.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/draft-pick.js +0 -0
- /package/dist/esm/{src/data → data}/models/draft.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/draft.js +0 -0
- /package/dist/esm/{src/data → data}/models/index.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/index.js +0 -0
- /package/dist/esm/{src/data → data}/models/iteration.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/iteration.js +0 -0
- /package/dist/esm/{src/data → data}/models/league-season.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/league-season.js +0 -0
- /package/dist/esm/{src/data → data}/models/league.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/league.js +0 -0
- /package/dist/esm/{src/data → data}/models/match-rating.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/match-rating.js +0 -0
- /package/dist/esm/{src/data → data}/models/match-set-stats.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/match-set-stats.js +0 -0
- /package/dist/esm/{src/data → data}/models/match-set.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/match-set.js +0 -0
- /package/dist/esm/{src/data → data}/models/match.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/match.js +0 -0
- /package/dist/esm/{src/data → data}/models/performance-stats.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/performance-stats.js +0 -0
- /package/dist/esm/{src/data → data}/models/player-team.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/player-team.js +0 -0
- /package/dist/esm/{src/data → data}/models/player-trait.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/player-trait.js +0 -0
- /package/dist/esm/{src/data → data}/models/player.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/player.js +0 -0
- /package/dist/esm/{src/data → data}/models/rally.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/rally.js +0 -0
- /package/dist/esm/{src/data → data}/models/set-position.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/set-position.js +0 -0
- /package/dist/esm/{src/data → data}/models/team.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/team.js +0 -0
- /package/dist/esm/{src/data → data}/models/trait.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/trait.js +0 -0
- /package/dist/esm/{src/data → data}/models/user.d.ts +0 -0
- /package/dist/esm/{src/data → data}/models/user.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/coach.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/coach.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/country.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/country.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/court-position.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/court-position.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/draft-pick.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/draft-pick.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/draft.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/draft.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/formation.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/formation.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/index.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/index.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/iteration.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/iteration.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/league.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/league.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-rating.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-rating.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-set-stats.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-set-stats.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-set.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/match-set.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/match.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/match.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/performance-stats.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/performance-stats.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/player-team.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/player-team.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/player.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/player.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/rally.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/rally.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/role.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/role.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/season-match.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/season-match.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/season.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/season.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/set-position.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/set-position.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/stage.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/stage.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/team.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/team.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/tournament-match.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/tournament-match.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/tournament.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/tournament.js +0 -0
- /package/dist/esm/{src/data → data}/transformers/trait.d.ts +0 -0
- /package/dist/esm/{src/data → data}/transformers/trait.js +0 -0
- /package/dist/esm/{data → formula}/role.formula.json +0 -0
- /package/dist/esm/{data → formula}/stat.formula.json +0 -0
- /package/dist/esm/{src/index.d.ts → index.d.ts} +0 -0
- /package/dist/esm/{src/index.js → index.js} +0 -0
- /package/dist/esm/{src/service → service}/coach/coach.d.ts +0 -0
- /package/dist/esm/{src/service → service}/coach/coach.js +0 -0
- /package/dist/esm/{src/service → service}/coach/formation.d.ts +0 -0
- /package/dist/esm/{src/service → service}/coach/formation.js +0 -0
- /package/dist/esm/{src/service → service}/coach/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/coach/index.js +0 -0
- /package/dist/esm/{src/service → service}/competition/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/index.js +0 -0
- /package/dist/esm/{src/service → service}/competition/iteration.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/iteration.js +0 -0
- /package/dist/esm/{src/service → service}/competition/league.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/league.js +0 -0
- /package/dist/esm/{src/service → service}/competition/season.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/season.js +0 -0
- /package/dist/esm/{src/service → service}/competition/stage.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/stage.js +0 -0
- /package/dist/esm/{src/service → service}/competition/standing.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/standing.js +0 -0
- /package/dist/esm/{src/service → service}/competition/tournament-match.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/tournament-match.js +0 -0
- /package/dist/esm/{src/service → service}/competition/tournament.d.ts +0 -0
- /package/dist/esm/{src/service → service}/competition/tournament.js +0 -0
- /package/dist/esm/{src/service → service}/country/country.d.ts +0 -0
- /package/dist/esm/{src/service → service}/country/country.js +0 -0
- /package/dist/esm/{src/service → service}/country/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/country/index.js +0 -0
- /package/dist/esm/{src/service → service}/draft/draft-pick.d.ts +0 -0
- /package/dist/esm/{src/service → service}/draft/draft-pick.js +0 -0
- /package/dist/esm/{src/service → service}/draft/draft.d.ts +0 -0
- /package/dist/esm/{src/service → service}/draft/draft.js +0 -0
- /package/dist/esm/{src/service → service}/draft/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/draft/index.js +0 -0
- /package/dist/esm/{src/service → service}/event/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/event/index.js +0 -0
- /package/dist/esm/{src/service → service}/event/rally-event.d.ts +0 -0
- /package/dist/esm/{src/service → service}/event/rally-event.js +0 -0
- /package/dist/esm/{src/service → service}/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/index.js +0 -0
- /package/dist/esm/{src/service → service}/match/court-position.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/court-position.js +0 -0
- /package/dist/esm/{src/service → service}/match/court-target-enum.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/court-target-enum.js +0 -0
- /package/dist/esm/{src/service → service}/match/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/index.js +0 -0
- /package/dist/esm/{src/service → service}/match/match-rating.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/match-rating.js +0 -0
- /package/dist/esm/{src/service → service}/match/match-set.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/match-set.js +0 -0
- /package/dist/esm/{src/service → service}/match/match-team.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/match-team.js +0 -0
- /package/dist/esm/{src/service → service}/match/match.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/match.js +0 -0
- /package/dist/esm/{src/service → service}/match/rally.d.ts +0 -0
- /package/dist/esm/{src/service → service}/match/rally.js +0 -0
- /package/dist/esm/{src/service → service}/player/performance-stats.d.ts +0 -0
- /package/dist/esm/{src/service → service}/player/performance-stats.js +0 -0
- /package/dist/esm/{src/service → service}/team/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/team/index.js +0 -0
- /package/dist/esm/{src/service → service}/team/team.d.ts +0 -0
- /package/dist/esm/{src/service → service}/team/team.js +0 -0
- /package/dist/esm/{src/service → service}/utils/index.d.ts +0 -0
- /package/dist/esm/{src/service → service}/utils/index.js +0 -0
- /package/dist/esm/{src/service → service}/utils/object-utils.d.ts +0 -0
- /package/dist/esm/{src/service → service}/utils/object-utils.js +0 -0
- /package/dist/esm/{src/service → service}/utils/string-utils.d.ts +0 -0
- /package/dist/esm/{src/service → service}/utils/string-utils.js +0 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
export declare const eventsFormula: {
|
|
2
|
+
SERVE: {
|
|
3
|
+
UNDERHAND: {
|
|
4
|
+
serve: number;
|
|
5
|
+
penalty: number;
|
|
6
|
+
};
|
|
7
|
+
OVERHAND_TOPSPIN: {
|
|
8
|
+
serve: number;
|
|
9
|
+
penalty: number;
|
|
10
|
+
};
|
|
11
|
+
OVERHAND_FLOAT: {
|
|
12
|
+
serve: number;
|
|
13
|
+
penalty: number;
|
|
14
|
+
};
|
|
15
|
+
JUMP_TOPSPIN: {
|
|
16
|
+
serve: number;
|
|
17
|
+
jump: number;
|
|
18
|
+
penalty: number;
|
|
19
|
+
};
|
|
20
|
+
JUMP_FLOAT: {
|
|
21
|
+
serve: number;
|
|
22
|
+
jump: number;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
RECEPTION: {
|
|
26
|
+
DIG: {
|
|
27
|
+
defense: number;
|
|
28
|
+
reception: number;
|
|
29
|
+
pass: number;
|
|
30
|
+
};
|
|
31
|
+
OVERHAND: {
|
|
32
|
+
defense: number;
|
|
33
|
+
reception: number;
|
|
34
|
+
pass: number;
|
|
35
|
+
penalty: number;
|
|
36
|
+
};
|
|
37
|
+
ONE_HAND: {
|
|
38
|
+
defense: number;
|
|
39
|
+
reception: number;
|
|
40
|
+
pass: number;
|
|
41
|
+
penalty: number;
|
|
42
|
+
};
|
|
43
|
+
OTHER_BODY_PART: {
|
|
44
|
+
defense: number;
|
|
45
|
+
reception: number;
|
|
46
|
+
penalty: number;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
SET: {
|
|
50
|
+
OVERHAND: {
|
|
51
|
+
setting: number;
|
|
52
|
+
pass: number;
|
|
53
|
+
awareness: number;
|
|
54
|
+
};
|
|
55
|
+
UNDERHAND: {
|
|
56
|
+
setting: number;
|
|
57
|
+
pass: number;
|
|
58
|
+
reception: number;
|
|
59
|
+
penalty: number;
|
|
60
|
+
};
|
|
61
|
+
SPIKE: {
|
|
62
|
+
spike: number;
|
|
63
|
+
jump: number;
|
|
64
|
+
awareness: number;
|
|
65
|
+
};
|
|
66
|
+
DUMP: {
|
|
67
|
+
spike: number;
|
|
68
|
+
jump: number;
|
|
69
|
+
awareness: number;
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
SPIKE: {
|
|
73
|
+
CROSS_SHOT: {
|
|
74
|
+
spike: number;
|
|
75
|
+
jump: number;
|
|
76
|
+
};
|
|
77
|
+
LINE_SHOT: {
|
|
78
|
+
spike: number;
|
|
79
|
+
jump: number;
|
|
80
|
+
awareness: number;
|
|
81
|
+
};
|
|
82
|
+
TOOL_SHOT: {
|
|
83
|
+
spike: number;
|
|
84
|
+
jump: number;
|
|
85
|
+
awareness: number;
|
|
86
|
+
};
|
|
87
|
+
TIP: {
|
|
88
|
+
spike: number;
|
|
89
|
+
jump: number;
|
|
90
|
+
awareness: number;
|
|
91
|
+
};
|
|
92
|
+
DOWN_BALL: {
|
|
93
|
+
spike: number;
|
|
94
|
+
serve: number;
|
|
95
|
+
penalty: number;
|
|
96
|
+
};
|
|
97
|
+
OVERHAND: {
|
|
98
|
+
serve: number;
|
|
99
|
+
pass: number;
|
|
100
|
+
awareness: number;
|
|
101
|
+
penalty: number;
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
BLOCK: {
|
|
105
|
+
NO_BLOCKER: {
|
|
106
|
+
block: number;
|
|
107
|
+
penalty: number;
|
|
108
|
+
};
|
|
109
|
+
SINGLE: {
|
|
110
|
+
jump: number;
|
|
111
|
+
block: number;
|
|
112
|
+
defense: number;
|
|
113
|
+
};
|
|
114
|
+
DOUBLE: {
|
|
115
|
+
jump: number;
|
|
116
|
+
block: number;
|
|
117
|
+
defense: number;
|
|
118
|
+
};
|
|
119
|
+
TRIPLE: {
|
|
120
|
+
jump: number;
|
|
121
|
+
block: number;
|
|
122
|
+
defense: number;
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const ALL_ROLES: string[];
|
|
2
|
+
export type RolesTuple = typeof ALL_ROLES;
|
|
3
|
+
export type Roles = RolesTuple[number];
|
|
4
|
+
export interface RolesFormula {
|
|
5
|
+
'role': Roles;
|
|
6
|
+
'weight': {
|
|
7
|
+
'serve': number;
|
|
8
|
+
'setting': number;
|
|
9
|
+
'pass': number;
|
|
10
|
+
'reception': number;
|
|
11
|
+
'spike': number;
|
|
12
|
+
'backAttack': number;
|
|
13
|
+
'jump': number;
|
|
14
|
+
'block': number;
|
|
15
|
+
'awareness': number;
|
|
16
|
+
'defense': number;
|
|
17
|
+
'stamina': number;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export declare const rolesFormula: RolesFormula[];
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { PerformanceStats } from '../service';
|
|
2
|
+
export declare const ALL_STATS: string[];
|
|
3
|
+
export type StatsTuple = typeof ALL_STATS;
|
|
4
|
+
export type Stats = StatsTuple[number];
|
|
5
|
+
export interface StatFormula {
|
|
6
|
+
statName: Stats;
|
|
7
|
+
weight: {
|
|
8
|
+
serve: number;
|
|
9
|
+
setting: number;
|
|
10
|
+
pass: number;
|
|
11
|
+
reception: number;
|
|
12
|
+
spike: number;
|
|
13
|
+
backAttack: number;
|
|
14
|
+
jump: number;
|
|
15
|
+
block: number;
|
|
16
|
+
awareness: number;
|
|
17
|
+
defense: number;
|
|
18
|
+
stamina: number;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export declare const statsFormula: StatFormula[];
|
|
22
|
+
export declare function calculateScore(performanceStats: PerformanceStats, statName: Stats): number;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import stats from './stat.formula.json';
|
|
2
|
+
export const ALL_STATS = ['ATTACK', 'DEFENSE', 'SERVE', 'PHYSICAL'];
|
|
3
|
+
export const statsFormula = stats;
|
|
4
|
+
export function calculateScore(performanceStats, statName) {
|
|
5
|
+
const weights = stats.find((s) => s.statName === statName);
|
|
6
|
+
if (weights == null)
|
|
7
|
+
throw new Error('COULD_NOT_FIND_ROLE_WEIGHT');
|
|
8
|
+
const score = Object.entries(weights.weight)
|
|
9
|
+
.reduce((score, [key, value]) => score + (performanceStats[key] * value), 0);
|
|
10
|
+
return Math.round(score);
|
|
11
|
+
}
|
|
@@ -2,12 +2,12 @@ import { PerformanceStats } from './performance-stats';
|
|
|
2
2
|
import { Role } from './role';
|
|
3
3
|
import { Trait } from './trait';
|
|
4
4
|
import { Country } from '../country';
|
|
5
|
-
import
|
|
5
|
+
import * as GeneralStat from '../../formula/stats';
|
|
6
6
|
export declare class Stat {
|
|
7
|
-
readonly name: GeneralStat;
|
|
7
|
+
readonly name: GeneralStat.Stats;
|
|
8
8
|
readonly value: number;
|
|
9
9
|
constructor({ name, value }: {
|
|
10
|
-
name: GeneralStat;
|
|
10
|
+
name: GeneralStat.Stats;
|
|
11
11
|
value: number;
|
|
12
12
|
});
|
|
13
13
|
toString(): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Role } from './role';
|
|
2
2
|
import { validateUUID } from '../utils';
|
|
3
|
-
import
|
|
3
|
+
import * as GeneralStat from '../../formula/stats';
|
|
4
4
|
export class Stat {
|
|
5
5
|
constructor({ name, value }) {
|
|
6
6
|
this.name = name;
|
|
@@ -28,8 +28,7 @@ export class Player {
|
|
|
28
28
|
this.stats = stats;
|
|
29
29
|
this.roles = roles;
|
|
30
30
|
this.traits = traits;
|
|
31
|
-
this.generalStats = GeneralStat.
|
|
32
|
-
.map(stat => ({
|
|
31
|
+
this.generalStats = GeneralStat.ALL_STATS.map(stat => ({
|
|
33
32
|
name: stat,
|
|
34
33
|
value: GeneralStat.calculateScore(stats, stat)
|
|
35
34
|
}));
|
|
@@ -46,16 +45,16 @@ export class Player {
|
|
|
46
45
|
const compareFn = (acc, current) => {
|
|
47
46
|
let x = current.value;
|
|
48
47
|
switch (current.name) {
|
|
49
|
-
case
|
|
48
|
+
case 'ATTACK':
|
|
50
49
|
x *= 0.35;
|
|
51
50
|
break;
|
|
52
|
-
case
|
|
51
|
+
case 'DEFENSE':
|
|
53
52
|
x *= 0.35;
|
|
54
53
|
break;
|
|
55
|
-
case
|
|
54
|
+
case 'SERVE':
|
|
56
55
|
x *= 0.2;
|
|
57
56
|
break;
|
|
58
|
-
case
|
|
57
|
+
case 'PHYSICAL':
|
|
59
58
|
x *= 0.1;
|
|
60
59
|
break;
|
|
61
60
|
default:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { Roles } from '../../formula';
|
|
1
2
|
import { PerformanceStats } from './performance-stats';
|
|
2
|
-
import { RoleType } from '../../data';
|
|
3
3
|
export declare class Role {
|
|
4
4
|
static readonly SETTER: Role;
|
|
5
5
|
static readonly LIBERO: Role;
|
|
@@ -8,7 +8,7 @@ export declare class Role {
|
|
|
8
8
|
static readonly MIDDLE_BLOCKER: Role;
|
|
9
9
|
static readonly DEFENSIVE_SPECIALIST: Role;
|
|
10
10
|
private static readonly ROLES;
|
|
11
|
-
readonly name:
|
|
11
|
+
readonly name: Roles;
|
|
12
12
|
private constructor();
|
|
13
13
|
toString(): string;
|
|
14
14
|
static getRoles(): Role[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { rolesFormula } from '../../formula';
|
|
2
2
|
export class Role {
|
|
3
3
|
constructor(name) {
|
|
4
4
|
this.name = name;
|
|
@@ -10,7 +10,7 @@ export class Role {
|
|
|
10
10
|
return [...Role.ROLES];
|
|
11
11
|
}
|
|
12
12
|
static calculateScore(stats, role) {
|
|
13
|
-
const weights =
|
|
13
|
+
const weights = rolesFormula.find(r => r.role === role.name);
|
|
14
14
|
if (weights == null)
|
|
15
15
|
throw new Error('COULD_NOT_FIND_ROLE_WEIGHT');
|
|
16
16
|
const score = Object.entries(weights.weight)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as GeneralStat from '../../formula/stats';
|
|
2
2
|
import { PerformanceStats } from './performance-stats';
|
|
3
3
|
export declare class Trait {
|
|
4
4
|
static readonly MASTER_MIND: Trait;
|
|
@@ -12,7 +12,7 @@ export declare class Trait {
|
|
|
12
12
|
readonly modifier: number;
|
|
13
13
|
readonly chance: number;
|
|
14
14
|
readonly statThreshold: number;
|
|
15
|
-
readonly stat: GeneralStat;
|
|
15
|
+
readonly stat: GeneralStat.Stats;
|
|
16
16
|
readonly weight: number;
|
|
17
17
|
private constructor();
|
|
18
18
|
static getTraits(): Trait[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as GeneralStat from '../../formula/stats';
|
|
2
2
|
export class Trait {
|
|
3
3
|
constructor({ id, name, modifier, chance, statThreshold, stat, weight }) {
|
|
4
4
|
this.id = id;
|
|
@@ -50,10 +50,10 @@ export class Trait {
|
|
|
50
50
|
Trait.MASTER_MIND = new Trait({
|
|
51
51
|
id: '0117a315-a743-43e3-9ec2-ad5cf700ef08',
|
|
52
52
|
name: 'Master Mind',
|
|
53
|
-
modifier: 1.
|
|
53
|
+
modifier: 1.1,
|
|
54
54
|
chance: 0.2,
|
|
55
55
|
statThreshold: 80,
|
|
56
|
-
stat:
|
|
56
|
+
stat: 'ATTACK',
|
|
57
57
|
weight: 10
|
|
58
58
|
});
|
|
59
59
|
// Will always participate in blocking regardless of chance and adds
|
|
@@ -63,7 +63,7 @@ Trait.MOVING_WALL = new Trait({
|
|
|
63
63
|
modifier: 1.1,
|
|
64
64
|
chance: 1,
|
|
65
65
|
statThreshold: 75,
|
|
66
|
-
stat:
|
|
66
|
+
stat: 'DEFENSE',
|
|
67
67
|
weight: 5
|
|
68
68
|
});
|
|
69
69
|
// On attack, will always pick the worst receiver and adds a 10% to score
|
|
@@ -73,7 +73,7 @@ Trait.MARKSMAN = new Trait({
|
|
|
73
73
|
modifier: 1.01,
|
|
74
74
|
chance: 0.3,
|
|
75
75
|
statThreshold: 75,
|
|
76
|
-
stat:
|
|
76
|
+
stat: 'ATTACK',
|
|
77
77
|
weight: 5
|
|
78
78
|
});
|
|
79
79
|
// Increases the score of the serve by 25% when serve type is Jumping.
|
|
@@ -83,7 +83,7 @@ Trait.METEOR_SERVE = new Trait({
|
|
|
83
83
|
modifier: 1.1,
|
|
84
84
|
chance: 0.1,
|
|
85
85
|
statThreshold: 75,
|
|
86
|
-
stat:
|
|
86
|
+
stat: 'SERVE',
|
|
87
87
|
weight: 10
|
|
88
88
|
});
|
|
89
89
|
// Has a 50% chance of taking an action without decreasing energy.
|
|
@@ -93,7 +93,7 @@ Trait.VIGOROUS = new Trait({
|
|
|
93
93
|
modifier: 1,
|
|
94
94
|
statThreshold: 60,
|
|
95
95
|
chance: 0.5,
|
|
96
|
-
stat:
|
|
96
|
+
stat: 'PHYSICAL',
|
|
97
97
|
weight: 1
|
|
98
98
|
});
|
|
99
99
|
// Takes place of the receiver and increases reception score by 25%, guaranteeing success. Can only trigger in back-row.
|
|
@@ -103,6 +103,6 @@ Trait.GUARDIAN = new Trait({
|
|
|
103
103
|
chance: 0.25,
|
|
104
104
|
statThreshold: 75,
|
|
105
105
|
modifier: 1.25,
|
|
106
|
-
stat:
|
|
106
|
+
stat: 'DEFENSE',
|
|
107
107
|
weight: 10
|
|
108
108
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "volleyballsimtypes",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.141",
|
|
4
4
|
"description": "vbsim types",
|
|
5
5
|
"main": "./dist/cjs/src/index.js",
|
|
6
6
|
"module": "./dist/esm/src/index.js",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"standard": "npx ts-standard --fix",
|
|
13
13
|
"clean": "rimraf dist",
|
|
14
14
|
"validate": "npm run standard && npm run madge",
|
|
15
|
-
"build": "tsc -p tsconfig.json && tsc -p tsconfig-cjs.json",
|
|
15
|
+
"build": "npm run clean && tsc -p tsconfig.json && tsc -p tsconfig-cjs.json",
|
|
16
16
|
"preversion": "npm run validate && npm run build",
|
|
17
17
|
"postversion": "git push --follow-tags"
|
|
18
18
|
},
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { InPlayEvent, InPlayEventOpts } from './in-play-event';
|
|
2
|
-
import { Player, Trait } from '../player';
|
|
3
|
-
export declare enum BlockFailureEnum {
|
|
4
|
-
NO_FAILURE = 0,
|
|
5
|
-
FAULT = 1,
|
|
6
|
-
MISS = 2,
|
|
7
|
-
OUT_OF_BOUNDS = 3,
|
|
8
|
-
WIPE = 4,
|
|
9
|
-
TOOL = 5
|
|
10
|
-
}
|
|
11
|
-
export declare enum BlockTypeEnum {
|
|
12
|
-
NO_BLOCKER = 0,
|
|
13
|
-
SINGLE = 1,
|
|
14
|
-
DOUBLE = 2,
|
|
15
|
-
TRIPLE = 3
|
|
16
|
-
}
|
|
17
|
-
interface BlockOpts extends InPlayEventOpts {
|
|
18
|
-
readonly type: BlockTypeEnum;
|
|
19
|
-
readonly failure: BlockFailureEnum;
|
|
20
|
-
readonly blockers: Player[];
|
|
21
|
-
}
|
|
22
|
-
export declare class Block extends InPlayEvent {
|
|
23
|
-
readonly failure: BlockFailureEnum;
|
|
24
|
-
readonly type: BlockTypeEnum;
|
|
25
|
-
readonly blockers: string[];
|
|
26
|
-
constructor({ score, player, target, failure, type, modifier, eventType, blockers, activeTraits }: BlockOpts);
|
|
27
|
-
static getScore(blockers: Player[], modifier: number, activeTraits: Trait[]): number;
|
|
28
|
-
toString(): string;
|
|
29
|
-
}
|
|
30
|
-
export {};
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Block = exports.BlockTypeEnum = exports.BlockFailureEnum = void 0;
|
|
4
|
-
const in_play_event_1 = require("./in-play-event");
|
|
5
|
-
const player_1 = require("../player");
|
|
6
|
-
var BlockFailureEnum;
|
|
7
|
-
(function (BlockFailureEnum) {
|
|
8
|
-
BlockFailureEnum[BlockFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
|
|
9
|
-
BlockFailureEnum[BlockFailureEnum["FAULT"] = 1] = "FAULT";
|
|
10
|
-
BlockFailureEnum[BlockFailureEnum["MISS"] = 2] = "MISS";
|
|
11
|
-
BlockFailureEnum[BlockFailureEnum["OUT_OF_BOUNDS"] = 3] = "OUT_OF_BOUNDS";
|
|
12
|
-
BlockFailureEnum[BlockFailureEnum["WIPE"] = 4] = "WIPE";
|
|
13
|
-
BlockFailureEnum[BlockFailureEnum["TOOL"] = 5] = "TOOL";
|
|
14
|
-
})(BlockFailureEnum = exports.BlockFailureEnum || (exports.BlockFailureEnum = {}));
|
|
15
|
-
var BlockTypeEnum;
|
|
16
|
-
(function (BlockTypeEnum) {
|
|
17
|
-
BlockTypeEnum[BlockTypeEnum["NO_BLOCKER"] = 0] = "NO_BLOCKER";
|
|
18
|
-
BlockTypeEnum[BlockTypeEnum["SINGLE"] = 1] = "SINGLE";
|
|
19
|
-
BlockTypeEnum[BlockTypeEnum["DOUBLE"] = 2] = "DOUBLE";
|
|
20
|
-
BlockTypeEnum[BlockTypeEnum["TRIPLE"] = 3] = "TRIPLE";
|
|
21
|
-
})(BlockTypeEnum = exports.BlockTypeEnum || (exports.BlockTypeEnum = {}));
|
|
22
|
-
class Block extends in_play_event_1.InPlayEvent {
|
|
23
|
-
constructor({ score, player, target, failure, type, modifier, eventType, blockers, activeTraits }) {
|
|
24
|
-
super({ score, player, target, modifier, eventType, activeTraits });
|
|
25
|
-
this.type = type;
|
|
26
|
-
this.failure = failure;
|
|
27
|
-
this.blockers = blockers.map(b => b.id);
|
|
28
|
-
}
|
|
29
|
-
static getScore(blockers, modifier, activeTraits) {
|
|
30
|
-
const type = blockers.length;
|
|
31
|
-
if (blockers.length > 3)
|
|
32
|
-
throw new Error('UNKNOWN_TYPE');
|
|
33
|
-
let bmod;
|
|
34
|
-
switch (type) {
|
|
35
|
-
case BlockTypeEnum.NO_BLOCKER:
|
|
36
|
-
return 0;
|
|
37
|
-
case BlockTypeEnum.SINGLE:
|
|
38
|
-
bmod = 1;
|
|
39
|
-
break;
|
|
40
|
-
case BlockTypeEnum.DOUBLE:
|
|
41
|
-
bmod = 1.2;
|
|
42
|
-
break;
|
|
43
|
-
case BlockTypeEnum.TRIPLE:
|
|
44
|
-
bmod = 1.4;
|
|
45
|
-
break;
|
|
46
|
-
default:
|
|
47
|
-
throw new Error('UNKNOWN_TYPE');
|
|
48
|
-
}
|
|
49
|
-
const total = blockers.reduce((score, player) => {
|
|
50
|
-
return score + Block.calculateScore(player.stats, 'BLOCK', BlockTypeEnum[type]);
|
|
51
|
-
}, 0);
|
|
52
|
-
const avg = total / blockers.length;
|
|
53
|
-
let score = avg * bmod * modifier;
|
|
54
|
-
for (const trait of activeTraits) {
|
|
55
|
-
switch (true) {
|
|
56
|
-
case trait === player_1.Trait.MOVING_WALL: {
|
|
57
|
-
score *= player_1.Trait.MOVING_WALL.modifier;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return score;
|
|
63
|
-
}
|
|
64
|
-
toString() {
|
|
65
|
-
return `{"score":${this.score},"player":"${this.player}","target":${this.target},"failure":${this.failure},"type":${this.type},"modifier":${this.modifier},"eventType":${this.eventType},"blockers":[${this.blockers.map(b => `"${b}"`).join(',')}],"activeTraits":[${this.activeTraits.map(t => `"${t}"`).join(',')}]}`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
exports.Block = Block;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { RallyEvent, RallyEventOpts } from './rally-event';
|
|
2
|
-
import { CourtTargetEnum } from '../match';
|
|
3
|
-
import { PerformanceStats, Trait } from '../player';
|
|
4
|
-
export interface InPlayEventOpts extends RallyEventOpts {
|
|
5
|
-
readonly target: CourtTargetEnum;
|
|
6
|
-
readonly modifier: number;
|
|
7
|
-
readonly score: number;
|
|
8
|
-
readonly activeTraits: Trait[];
|
|
9
|
-
}
|
|
10
|
-
export declare abstract class InPlayEvent extends RallyEvent {
|
|
11
|
-
abstract failure: number;
|
|
12
|
-
abstract type: number;
|
|
13
|
-
readonly target: CourtTargetEnum;
|
|
14
|
-
readonly modifier: number;
|
|
15
|
-
readonly score: number;
|
|
16
|
-
readonly activeTraits: string[];
|
|
17
|
-
protected constructor({ eventType, player, target, modifier, score, activeTraits }: InPlayEventOpts);
|
|
18
|
-
protected static calculateScore(stats: PerformanceStats, eventType: string, type: string): number;
|
|
19
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.InPlayEvent = void 0;
|
|
7
|
-
const rally_event_1 = require("./rally-event");
|
|
8
|
-
const event_formula_json_1 = __importDefault(require("../../../data/event.formula.json"));
|
|
9
|
-
const utils_1 = require("../utils");
|
|
10
|
-
class InPlayEvent extends rally_event_1.RallyEvent {
|
|
11
|
-
constructor({ eventType, player, target, modifier, score, activeTraits }) {
|
|
12
|
-
super({ player, eventType });
|
|
13
|
-
this.target = target;
|
|
14
|
-
this.score = score;
|
|
15
|
-
this.modifier = modifier;
|
|
16
|
-
this.activeTraits = activeTraits.map(trait => trait.id);
|
|
17
|
-
}
|
|
18
|
-
static calculateScore(stats, eventType, type) {
|
|
19
|
-
const weight = event_formula_json_1.default[eventType][type];
|
|
20
|
-
const penalty = weight.penalty ?? 0;
|
|
21
|
-
const score = (0, utils_1.getKeys)(weight).reduce((score, key) => {
|
|
22
|
-
return score + (key === 'penalty' ? 0 : stats[key] * weight[key]);
|
|
23
|
-
}, 0);
|
|
24
|
-
return Math.round(score * (1 - penalty));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.InPlayEvent = InPlayEvent;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { RallyEvent, RallyEventOpts } from './rally-event';
|
|
2
|
-
import { Player } from '../player';
|
|
3
|
-
interface LiberoReplacementOpts extends RallyEventOpts {
|
|
4
|
-
readonly player: Player;
|
|
5
|
-
readonly libero: Player;
|
|
6
|
-
readonly type: LiberoReplacementTypeEnum;
|
|
7
|
-
}
|
|
8
|
-
export declare enum LiberoReplacementTypeEnum {
|
|
9
|
-
LIBERO_IN = 0,
|
|
10
|
-
LIBERO_OUT = 1
|
|
11
|
-
}
|
|
12
|
-
export declare class LiberoReplacement extends RallyEvent {
|
|
13
|
-
readonly type: LiberoReplacementTypeEnum;
|
|
14
|
-
readonly libero: string;
|
|
15
|
-
constructor({ player, type, libero, eventType }: LiberoReplacementOpts);
|
|
16
|
-
toString(): string;
|
|
17
|
-
}
|
|
18
|
-
export {};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LiberoReplacement = exports.LiberoReplacementTypeEnum = void 0;
|
|
4
|
-
const rally_event_1 = require("./rally-event");
|
|
5
|
-
var LiberoReplacementTypeEnum;
|
|
6
|
-
(function (LiberoReplacementTypeEnum) {
|
|
7
|
-
LiberoReplacementTypeEnum[LiberoReplacementTypeEnum["LIBERO_IN"] = 0] = "LIBERO_IN";
|
|
8
|
-
LiberoReplacementTypeEnum[LiberoReplacementTypeEnum["LIBERO_OUT"] = 1] = "LIBERO_OUT";
|
|
9
|
-
})(LiberoReplacementTypeEnum = exports.LiberoReplacementTypeEnum || (exports.LiberoReplacementTypeEnum = {}));
|
|
10
|
-
class LiberoReplacement extends rally_event_1.RallyEvent {
|
|
11
|
-
constructor({ player, type, libero, eventType }) {
|
|
12
|
-
super({ player, eventType });
|
|
13
|
-
this.type = type;
|
|
14
|
-
this.libero = libero.id;
|
|
15
|
-
}
|
|
16
|
-
toString() {
|
|
17
|
-
return `{"player":"${this.player}","type":${this.type},"eventType":${this.eventType},"libero":"${this.libero}"}`;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.LiberoReplacement = LiberoReplacement;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { PerformanceStats, Trait } from '../player';
|
|
2
|
-
import { InPlayEvent, InPlayEventOpts } from './in-play-event';
|
|
3
|
-
export declare enum ReceptionTypeEnum {
|
|
4
|
-
DIG = 0,
|
|
5
|
-
OVERHAND = 1,
|
|
6
|
-
ONE_HAND = 2,
|
|
7
|
-
OTHER_BODY_PART = 3
|
|
8
|
-
}
|
|
9
|
-
export declare enum ReceptionFailureEnum {
|
|
10
|
-
NO_FAILURE = 0,
|
|
11
|
-
FAULT = 1,
|
|
12
|
-
MISS = 2,
|
|
13
|
-
OUT_OF_BOUNDS = 3,
|
|
14
|
-
BAD_PASS = 4
|
|
15
|
-
}
|
|
16
|
-
interface ReceptionOpts extends InPlayEventOpts {
|
|
17
|
-
readonly type: ReceptionTypeEnum;
|
|
18
|
-
readonly failure: ReceptionFailureEnum;
|
|
19
|
-
}
|
|
20
|
-
export declare class Reception extends InPlayEvent {
|
|
21
|
-
readonly failure: ReceptionFailureEnum;
|
|
22
|
-
readonly type: ReceptionTypeEnum;
|
|
23
|
-
constructor({ score, player, target, failure, type, eventType, modifier, activeTraits }: ReceptionOpts);
|
|
24
|
-
static getScore(stats: PerformanceStats, type: ReceptionTypeEnum, modifier: number, activeTraits: Trait[]): number;
|
|
25
|
-
toString(): string;
|
|
26
|
-
}
|
|
27
|
-
export {};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Reception = exports.ReceptionFailureEnum = exports.ReceptionTypeEnum = void 0;
|
|
4
|
-
const player_1 = require("../player");
|
|
5
|
-
const in_play_event_1 = require("./in-play-event");
|
|
6
|
-
var ReceptionTypeEnum;
|
|
7
|
-
(function (ReceptionTypeEnum) {
|
|
8
|
-
ReceptionTypeEnum[ReceptionTypeEnum["DIG"] = 0] = "DIG";
|
|
9
|
-
ReceptionTypeEnum[ReceptionTypeEnum["OVERHAND"] = 1] = "OVERHAND";
|
|
10
|
-
ReceptionTypeEnum[ReceptionTypeEnum["ONE_HAND"] = 2] = "ONE_HAND";
|
|
11
|
-
ReceptionTypeEnum[ReceptionTypeEnum["OTHER_BODY_PART"] = 3] = "OTHER_BODY_PART";
|
|
12
|
-
})(ReceptionTypeEnum = exports.ReceptionTypeEnum || (exports.ReceptionTypeEnum = {}));
|
|
13
|
-
var ReceptionFailureEnum;
|
|
14
|
-
(function (ReceptionFailureEnum) {
|
|
15
|
-
ReceptionFailureEnum[ReceptionFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
|
|
16
|
-
ReceptionFailureEnum[ReceptionFailureEnum["FAULT"] = 1] = "FAULT";
|
|
17
|
-
ReceptionFailureEnum[ReceptionFailureEnum["MISS"] = 2] = "MISS";
|
|
18
|
-
ReceptionFailureEnum[ReceptionFailureEnum["OUT_OF_BOUNDS"] = 3] = "OUT_OF_BOUNDS";
|
|
19
|
-
ReceptionFailureEnum[ReceptionFailureEnum["BAD_PASS"] = 4] = "BAD_PASS";
|
|
20
|
-
})(ReceptionFailureEnum = exports.ReceptionFailureEnum || (exports.ReceptionFailureEnum = {}));
|
|
21
|
-
class Reception extends in_play_event_1.InPlayEvent {
|
|
22
|
-
constructor({ score, player, target, failure, type, eventType, modifier, activeTraits }) {
|
|
23
|
-
super({ score, player, target, eventType, modifier, activeTraits });
|
|
24
|
-
this.type = type;
|
|
25
|
-
this.failure = failure;
|
|
26
|
-
}
|
|
27
|
-
static getScore(stats, type, modifier, activeTraits) {
|
|
28
|
-
let score = Reception.calculateScore(stats, 'RECEPTION', ReceptionTypeEnum[type]) * modifier;
|
|
29
|
-
for (const trait of activeTraits) {
|
|
30
|
-
switch (true) {
|
|
31
|
-
case trait === player_1.Trait.GUARDIAN: {
|
|
32
|
-
score *= player_1.Trait.GUARDIAN.modifier;
|
|
33
|
-
break;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return score;
|
|
38
|
-
}
|
|
39
|
-
toString() {
|
|
40
|
-
return `{"score":${this.score},"player":"${this.player}","target":${this.target},"failure":${this.failure},"type":${this.type},"modifier":${this.modifier},"eventType":${this.eventType},"activeTraits":[${this.activeTraits.map(t => `"${t}"`).join(',')}]}`;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
exports.Reception = Reception;
|