-
Notifications
You must be signed in to change notification settings - Fork 3
/
Helper.fs
109 lines (98 loc) · 3.72 KB
/
Helper.fs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
module Helper
open FSharp.Data
open FSharp.Data.JsonExtensions
open Domain
let printLine item =
printf "%s\n" item
let whatToPrint player =
"Name: " + player.FirstName + " " + player.LastName + ". Team: " + player.Team + ". Position: " + player.Position + ". Rating: " + player.Rating.ToString()
let printTeam team =
printf ""
printLine "-----------TEAM------------"
printLine ""
printLine "GOALKEEPERS"
printLine ""
printLine (whatToPrint team.Goalkeeper)
printLine ""
printLine "DEFENDERS"
printLine ""
team.Defenders |> Array.iter (fun x -> printLine (whatToPrint x))
printLine ""
printLine "MIDFIELDERS"
printLine ""
team.Midfielder |> Array.iter (fun x -> printLine (whatToPrint x))
printLine ""
printLine "ATTACKERS"
printLine ""
team.Attacker |> Array.iter (fun x -> printLine (whatToPrint x))
printLine ""
printLine "------------END------------"
let findBestGoalkeeper player =
player?rating.AsInteger() +
(player?composure.AsInteger() * 10) +
(player?gkdiving.AsInteger() * 10) +
(player?gkhandling.AsInteger() * 10) +
(player?gkkicking.AsInteger() * 10) +
(player?gkpositioning.AsInteger() * 10) +
(player?gkreflexes.AsInteger() * 10) +
player?longpassing.AsInteger() +
player?agility.AsInteger() +
player?freekickaccuracy.AsInteger() +
player?jumping.AsInteger() +
player?positioning.AsInteger() +
player?strength.AsInteger() +
player?vision.AsInteger() +
player?weakFoot.AsInteger()
let findBestDefenders player =
player?rating.AsInteger() +
player?composure.AsInteger() +
player?acceleration.AsInteger() +
player?aggression.AsInteger() +
player?ballcontrol.AsInteger() +
player?headingaccuracy.AsInteger() +
player?interceptions.AsInteger() +
player?jumping.AsInteger() +
player?marking.AsInteger() +
player?positioning.AsInteger() +
player?shortpassing.AsInteger() +
player?slidingtackle.AsInteger() +
player?sprintspeed.AsInteger() +
player?standingtackle.AsInteger() +
player?strength.AsInteger() +
player?vision.AsInteger() +
player?weakFoot.AsInteger()
let findBestMidfielders player =
player?rating.AsInteger() +
player?acceleration.AsInteger() +
player?aggression.AsInteger() +
player?agility.AsInteger() +
player?balance.AsInteger() +
player?ballcontrol.AsInteger() +
player?skillMoves.AsInteger() +
player?crossing.AsInteger() +
player?interceptions.AsInteger() +
player?longpassing.AsInteger() +
player?longshots.AsInteger() +
player?positioning.AsInteger() +
player?shortpassing.AsInteger() +
player?standingtackle.AsInteger() +
player?stamina.AsInteger() +
player?strength.AsInteger() +
player?vision.AsInteger()
let findBestAttackers player =
player?rating.AsInteger() +
player?composure.AsInteger() +
player?acceleration.AsInteger() +
player?aggression.AsInteger() +
player?agility.AsInteger() +
player?balance.AsInteger() +
player?ballcontrol.AsInteger() +
player?skillMoves.AsInteger() +
player?curve.AsInteger() +
player?dribbling.AsInteger() +
player?finishing.AsInteger() +
player?freekickaccuracy.AsInteger() +
player?longshots.AsInteger() +
player?penalties.AsInteger() +
player?shotpower.AsInteger() +
player?sprintspeed.AsInteger()