initial framework added
[fp1415-soccerfun.git] / src / StdTeam / Team_Opponent_DeepPass_Assignment.icl
diff --git a/src/StdTeam/Team_Opponent_DeepPass_Assignment.icl b/src/StdTeam/Team_Opponent_DeepPass_Assignment.icl
new file mode 100644 (file)
index 0000000..1871f1f
--- /dev/null
@@ -0,0 +1,37 @@
+implementation module Team_Opponent_DeepPass_Assignment\r
+\r
+import StdEnvExt\r
+import Team\r
+from   Buffer import buffer\r
+\r
+Team_Opponent_DeepPass :: !Home FootballField -> Team\r
+Team_Opponent_DeepPass home field\r
+                                       = map tagName fielders\r
+where\r
+       club                    = base_TeamName_Opponent_DeepPass +++ if (home == West) "_W" "_E"\r
+       fielders                = getFielders club home field\r
+\r
+base_TeamName_Opponent_DeepPass :: String\r
+base_TeamName_Opponent_DeepPass = "Opp_Deep_Pass"\r
+\r
+getFielders :: String Home FootballField -> [Footballer]\r
+getFielders club home field\r
+       # buf1                  = {buffer field home south {clubName=club,playerNr=2 } & pos={px=scale 0.07 field.flength, py=scale  0.40 field.fwidth}}\r
+       # buf2                  = {buffer field home south {clubName=club,playerNr=3 } & pos={px=scale 0.12 field.flength, py=scale  0.08 field.fwidth}}\r
+       # buf3                  = {buffer field home north {clubName=club,playerNr=4 } & pos={px=scale 0.06 field.flength, py=scale  0.00 field.fwidth}}\r
+       # buf4                  = {buffer field home south {clubName=club,playerNr=5 } & pos={px=scale 0.11 field.flength, py=scale -0.20 field.fwidth}}\r
+       # buf5                  = {buffer field home north {clubName=club,playerNr=6 } & pos={px=scale 0.12 field.flength, py=scale  0.20 field.fwidth}}\r
+       # buf6                  = {buffer field home south {clubName=club,playerNr=7 } & pos={px=scale 0.13 field.flength, py=scale  0.00 field.fwidth}}\r
+       # buf7                  = {buffer field home south {clubName=club,playerNr=8 } & pos={px=scale 0.10 field.flength, py=scale -0.19 field.fwidth}}\r
+       # buf8                  = {buffer field home north {clubName=club,playerNr=9 } & pos={px=scale 0.15 field.flength, py=scale  0.07 field.fwidth}}\r
+       # buf9                  = {buffer field home north {clubName=club,playerNr=10} & pos={px=scale 0.05 field.flength, py=scale -0.08 field.fwidth}}\r
+       # buf10                 = {buffer field home south {clubName=club,playerNr=11} & pos={px=scale 0.15 field.flength, py=scale  0.22 field.fwidth}}\r
+       # buf11                 = {buffer field home north {clubName=club,playerNr=12} & pos={px=scale 0.08 field.flength, py=scale -0.14 field.fwidth}}\r
+       # fielders              = [buf1,buf2,buf3,buf4,buf5,buf6,buf7,buf8,buf9,buf10,buf11]\r
+       | home == East  = fielders\r
+       | otherwise             = mirror field fielders\r
+where\r
+       (south,north)   = if (home == West) (North,South) (South,North)\r
+               \r
+tagName :: !Footballer -> Footballer\r
+tagName fb=:{playerID,name}    = {Footballer | fb & name = name <+++ "_" <+++ playerID.playerNr}\r