Untitled

From Commodious Stork, 2 Weeks ago, written in Python, viewed 2 times. This paste will hop the perch in 1 Week.
URL https://paste.afonso.co/view/58160c3c Embed
Download Paste or View Raw
  1. # -*- encoding: utf-8 -*-
  2. import clr
  3. clr.AddReference("System")
  4. import System
  5. from slidescgv5mvvm import *
  6. import StaticLib
  7. from Wtvision.Sports.Models.Football import FootballEvents, FootballEventAttributes, EPenaltyKickResult
  8. from System import TimeSpan, Tuple, ValueTuple
  9.  
  10.  
  11. class FormViewModel(ObservableObject):
  12.         def __init__(self, appCore, project, script):
  13.                 self.appCore = appCore
  14.                 self.project = project
  15.                 self.script = script
  16.  
  17.                 auxGame = self.project.ScriptingObjects["Game"] if self.project.ScriptingObjects.ContainsKey("Game") else None
  18.                 self.Game = None if not auxGame else auxGame
  19.  
  20.                 self.homeTeamName = ""
  21.                 self.awayTeamName = ""
  22.  
  23.                 self.round1 = 1
  24.                 self.round2 = 2
  25.                 self.round3 = 3
  26.                 self.round4 = 4
  27.                 self.round5 = 5
  28.                
  29.                 self.isHomeStarting = True
  30.                
  31.                 self.homeGoal1IsChecked = False
  32.                 self.homeGoal2IsChecked = False
  33.                 self.homeGoal3IsChecked = False
  34.                 self.homeGoal4IsChecked = False
  35.                 self.homeGoal5IsChecked = False
  36.                 self.homeMissed1IsChecked = False
  37.                 self.homeMissed2IsChecked = False
  38.                 self.homeMissed3IsChecked = False
  39.                 self.homeMissed4IsChecked = False
  40.                 self.homeMissed5IsChecked = False
  41.  
  42.                 self.awayGoal1IsChecked = False
  43.                 self.awayGoal2IsChecked = False
  44.                 self.awayGoal3IsChecked = False
  45.                 self.awayGoal4IsChecked = False
  46.                 self.awayGoal5IsChecked = False
  47.                 self.awayMissed1IsChecked = False
  48.                 self.awayMissed2IsChecked = False
  49.                 self.awayMissed3IsChecked = False
  50.                 self.awayMissed4IsChecked = False
  51.                 self.awayMissed5IsChecked = False
  52.  
  53.                 self.homeGoal1ClickCommand = ScriptRelayCommand(self.script, self.HomeGoal1Action, lambda arg: True)
  54.                 self.homeGoal2ClickCommand = ScriptRelayCommand(self.script, self.HomeGoal2Action, lambda arg: True)
  55.                 self.homeGoal3ClickCommand = ScriptRelayCommand(self.script, self.HomeGoal3Action, lambda arg: True)
  56.                 self.homeGoal4ClickCommand = ScriptRelayCommand(self.script, self.HomeGoal4Action, lambda arg: True)
  57.                 self.homeGoal5ClickCommand = ScriptRelayCommand(self.script, self.HomeGoal5Action, lambda arg: True)
  58.                 self.homeMissed1ClickCommand = ScriptRelayCommand(self.script, self.HomeMissed1Action, lambda arg: True)
  59.                 self.homeMissed2ClickCommand = ScriptRelayCommand(self.script, self.HomeMissed2Action, lambda arg: True)
  60.                 self.homeMissed3ClickCommand = ScriptRelayCommand(self.script, self.HomeMissed3Action, lambda arg: True)
  61.                 self.homeMissed4ClickCommand = ScriptRelayCommand(self.script, self.HomeMissed4Action, lambda arg: True)
  62.                 self.homeMissed5ClickCommand = ScriptRelayCommand(self.script, self.HomeMissed5Action, lambda arg: True)
  63.  
  64.                 self.awayGoal1ClickCommand = ScriptRelayCommand(self.script, self.AwayGoal1Action, lambda arg: True)
  65.                 self.awayGoal2ClickCommand = ScriptRelayCommand(self.script, self.AwayGoal2Action, lambda arg: True)
  66.                 self.awayGoal3ClickCommand = ScriptRelayCommand(self.script, self.AwayGoal3Action, lambda arg: True)
  67.                 self.awayGoal4ClickCommand = ScriptRelayCommand(self.script, self.AwayGoal4Action, lambda arg: True)
  68.                 self.awayGoal5ClickCommand = ScriptRelayCommand(self.script, self.AwayGoal5Action, lambda arg: True)
  69.                 self.awayMissed1ClickCommand = ScriptRelayCommand(self.script, self.AwayMissed1Action, lambda arg: True)
  70.                 self.awayMissed2ClickCommand = ScriptRelayCommand(self.script, self.AwayMissed2Action, lambda arg: True)
  71.                 self.awayMissed3ClickCommand = ScriptRelayCommand(self.script, self.AwayMissed3Action, lambda arg: True)
  72.                 self.awayMissed4ClickCommand = ScriptRelayCommand(self.script, self.AwayMissed4Action, lambda arg: True)
  73.                 self.awayMissed5ClickCommand = ScriptRelayCommand(self.script, self.AwayMissed5Action, lambda arg: True)
  74.                
  75.                 self.newRoundClickCommand = ScriptRelayCommand(self.script, self.NewRoundAction, lambda arg: True)
  76.                 self.resetClickCommand = ScriptRelayCommand(self.script, self.ResetAction, lambda arg: True)
  77.                 self.showClickCommand = ScriptRelayCommand(self.script, self.ShowAction, lambda arg: True)
  78.                 self.outClickCommand = ScriptRelayCommand(self.script, self.OutAction, lambda arg: True)
  79.                
  80.                 self.updateClickCommand = ScriptRelayCommand(self.script, self.UpdateAction, lambda arg: True)
  81.                 self.Penalties = []
  82.                 if self.Game:
  83.                         self.loadPenaltyEvents()
  84.  
  85.         def SetGame(self, game):
  86.                 try:
  87.                         self.Game = game
  88.                 except Exception as e:
  89.                         print "SetGame: %s" %str(e)
  90. ##############################################################################################
  91.                
  92.         @property
  93.         def HomeTeamName(self):
  94.                 return self.homeTeamName
  95.                
  96.         @HomeTeamName.setter
  97.         def HomeTeamName(self, value):
  98.                 self.homeTeamName = value
  99.                 self.OnPropertyChanged("HomeTeamName")
  100.  
  101.         @property
  102.         def AwayTeamName(self):
  103.                 return self.awayTeamName
  104.                
  105.         @AwayTeamName.setter
  106.         def AwayTeamName(self, value):
  107.                 self.awayTeamName = value
  108.                 self.OnPropertyChanged("AwayTeamName")
  109.  
  110.         @property
  111.         def Round1(self):
  112.                 return self.round1
  113.                
  114.         @Round1.setter
  115.         def Round1(self, value):
  116.                 self.round1= value
  117.                 self.OnPropertyChanged("Round1")       
  118.  
  119.         @property
  120.         def Round2(self):
  121.                 return self.round2
  122.                
  123.         @Round2.setter
  124.         def Round2(self, value):
  125.                 self.round2= value
  126.                 self.OnPropertyChanged("Round2")
  127.  
  128.         @property
  129.         def Round3(self):
  130.                 return self.round3
  131.                
  132.         @Round3.setter
  133.         def Round3(self, value):
  134.                 self.round3= value
  135.                 self.OnPropertyChanged("Round3")
  136.  
  137.         @property
  138.         def Round4(self):
  139.                 return self.round4
  140.                
  141.         @Round4.setter
  142.         def Round4(self, value):
  143.                 self.round4= value
  144.                 self.OnPropertyChanged("Round4")
  145.  
  146.         @property
  147.         def Round5(self):
  148.                 return self.round5
  149.                
  150.         @Round5.setter
  151.         def Round5(self, value):
  152.                 self.round5= value
  153.                 self.OnPropertyChanged("Round5")       
  154.        
  155.        
  156.         @property
  157.         def IsHomeStarting(self):
  158.                 return self.isHomeStarting
  159.                
  160.         @IsHomeStarting.setter
  161.         def IsHomeStarting(self, value):
  162.                 self.isHomeStarting = value
  163.                 self.OnPropertyChanged("IsHomeStarting")
  164. ##############################################################################################
  165.  
  166.         @property
  167.         def HomeGoal1IsChecked(self):
  168.                 return self.homeGoal1IsChecked
  169.                
  170.         @HomeGoal1IsChecked.setter
  171.         def HomeGoal1IsChecked(self, value):
  172.                 self.homeGoal1IsChecked = value
  173.                 self.OnPropertyChanged("HomeGoal1IsChecked")
  174.  
  175.         @property
  176.         def HomeGoal2IsChecked(self):
  177.                 return self.homeGoal2IsChecked
  178.                
  179.         @HomeGoal2IsChecked.setter
  180.         def HomeGoal2IsChecked(self, value):
  181.                 self.homeGoal2IsChecked = value
  182.                 self.OnPropertyChanged("HomeGoal2IsChecked")
  183.  
  184.         @property
  185.         def HomeGoal3IsChecked(self):
  186.                 return self.homeGoal3IsChecked
  187.                
  188.         @HomeGoal3IsChecked.setter
  189.         def HomeGoal3IsChecked(self, value):
  190.                 self.homeGoal3IsChecked = value
  191.                 self.OnPropertyChanged("HomeGoal3IsChecked")   
  192.                
  193.         @property
  194.         def HomeGoal4IsChecked(self):
  195.                 return self.homeGoal4IsChecked
  196.                
  197.         @HomeGoal4IsChecked.setter
  198.         def HomeGoal4IsChecked(self, value):
  199.                 self.homeGoal4IsChecked = value
  200.                 self.OnPropertyChanged("HomeGoal4IsChecked")   
  201.                
  202.         @property
  203.         def HomeGoal5IsChecked(self):
  204.                 return self.homeGoal5IsChecked
  205.                
  206.         @HomeGoal5IsChecked.setter
  207.         def HomeGoal5IsChecked(self, value):
  208.                 self.homeGoal5IsChecked = value
  209.                 self.OnPropertyChanged("HomeGoal5IsChecked")
  210.  
  211. ##############################################################################################
  212.  
  213.         @property
  214.         def AwayGoal1IsChecked(self):
  215.                 return self.awayGoal1IsChecked
  216.                
  217.         @AwayGoal1IsChecked.setter
  218.         def AwayGoal1IsChecked(self, value):
  219.                 self.awayGoal1IsChecked = value
  220.                 self.OnPropertyChanged("AwayGoal1IsChecked")   
  221.  
  222.         @property
  223.         def AwayGoal2IsChecked(self):
  224.                 return self.awayGoal2IsChecked
  225.                
  226.         @AwayGoal2IsChecked.setter
  227.         def AwayGoal2IsChecked(self, value):
  228.                 self.awayGoal2IsChecked = value
  229.                 self.OnPropertyChanged("AwayGoal2IsChecked")
  230.  
  231.         @property
  232.         def AwayGoal3IsChecked(self):
  233.                 return self.awayGoal3IsChecked
  234.                
  235.         @AwayGoal3IsChecked.setter
  236.         def AwayGoal3IsChecked(self, value):
  237.                 self.awayGoal3IsChecked = value
  238.                 self.OnPropertyChanged("AwayGoal3IsChecked")   
  239.                
  240.         @property
  241.         def AwayGoal4IsChecked(self):
  242.                 return self.awayGoal4IsChecked
  243.                
  244.         @AwayGoal4IsChecked.setter
  245.         def AwayGoal4IsChecked(self, value):
  246.                 self.awayGoal4IsChecked = value
  247.                 self.OnPropertyChanged("AwayGoal4IsChecked")   
  248.  
  249.         @property
  250.         def AwayGoal5IsChecked(self):
  251.                 return self.awayGoal5IsChecked
  252.                
  253.         @AwayGoal5IsChecked.setter
  254.         def AwayGoal5IsChecked(self, value):
  255.                 self.awayGoal5IsChecked = value
  256.                 self.OnPropertyChanged("AwayGoal5IsChecked")   
  257.  
  258. ##############################################################################################
  259.  
  260.         @property
  261.         def HomeMissed1IsChecked(self):
  262.                 return self.homeMissed1IsChecked
  263.                
  264.         @HomeMissed1IsChecked.setter
  265.         def HomeMissed1IsChecked(self, value):
  266.                 self.homeMissed1IsChecked = value
  267.                 self.OnPropertyChanged("HomeMissed1IsChecked") 
  268.  
  269.         @property
  270.         def HomeMissed2IsChecked(self):
  271.                 return self.homeMissed2IsChecked
  272.                
  273.         @HomeMissed2IsChecked.setter
  274.         def HomeMissed2IsChecked(self, value):
  275.                 self.homeMissed2IsChecked = value
  276.                 self.OnPropertyChanged("HomeMissed2IsChecked")
  277.  
  278.         @property
  279.         def HomeMissed3IsChecked(self):
  280.                 return self.homeMissed3IsChecked
  281.                
  282.         @HomeMissed3IsChecked.setter
  283.         def HomeMissed3IsChecked(self, value):
  284.                 self.homeMissed3IsChecked = value
  285.                 self.OnPropertyChanged("HomeMissed3IsChecked") 
  286.                
  287.         @property
  288.         def HomeMissed4IsChecked(self):
  289.                 return self.homeMissed4IsChecked
  290.                
  291.         @HomeMissed4IsChecked.setter
  292.         def HomeMissed4IsChecked(self, value):
  293.                 self.homeMissed4IsChecked = value
  294.                 self.OnPropertyChanged("HomeMissed4IsChecked") 
  295.                
  296.         @property
  297.         def HomeMissed5IsChecked(self):
  298.                 return self.homeMissed5IsChecked
  299.                
  300.         @HomeMissed5IsChecked.setter
  301.         def HomeMissed5IsChecked(self, value)
  302.                 self.homeMissed5IsChecked = value
  303.                 self.OnPropertyChanged("HomeMissed5IsChecked") 
  304.  
  305. ##############################################################################################
  306.  
  307.         @property
  308.         def AwayMissed1IsChecked(self):
  309.                 return self.awayMissed1IsChecked
  310.                
  311.         @AwayMissed1IsChecked.setter
  312.         def AwayMissed1IsChecked(self, value):
  313.                 self.awayMissed1IsChecked = value
  314.                 self.OnPropertyChanged("AwayMissed1IsChecked") 
  315.  
  316.         @property
  317.         def AwayMissed2IsChecked(self):
  318.                 return self.awayMissed2IsChecked
  319.                
  320.         @AwayMissed2IsChecked.setter
  321.         def AwayMissed2IsChecked(self, value):
  322.                 self.awayMissed2IsChecked = value
  323.                 self.OnPropertyChanged("AwayMissed2IsChecked")
  324.  
  325.         @property
  326.         def AwayMissed3IsChecked(self):
  327.                 return self.awayMissed3IsChecked
  328.                
  329.         @AwayMissed3IsChecked.setter
  330.         def AwayMissed3IsChecked(self, value)
  331.                 self.awayMissed3IsChecked = value
  332.                 self.OnPropertyChanged("AwayMissed3IsChecked") 
  333.                
  334.         @property
  335.         def AwayMissed4IsChecked(self):
  336.                 return self.awayMissed4IsChecked
  337.                
  338.         @AwayMissed4IsChecked.setter
  339.         def AwayMissed4IsChecked(self, value):
  340.                 self.awayMissed4IsChecked = value
  341.                 self.OnPropertyChanged("AwayMissed4IsChecked") 
  342.  
  343.         @property
  344.         def AwayMissed5IsChecked(self):
  345.                 return self.awayMissed5IsChecked
  346.                
  347.         @AwayMissed5IsChecked.setter
  348.         def AwayMissed5IsChecked(self, value):
  349.                 self.awayMissed5IsChecked = value
  350.                 self.OnPropertyChanged("AwayMissed5IsChecked")
  351.  
  352. ##############################################################################################
  353.  
  354.         @property
  355.         def HomeGoal1ClickCommand(self):
  356.                 return self.homeGoal1ClickCommand
  357.  
  358.         def HomeGoal1Action(self, param=None, args1 = None, args2 = None):
  359.                 try:
  360.                         self.__GoalAction(self.Game.HomeTeam, "Home", "1", args2[0])
  361.                 except Exception as e:
  362.                         print "HomeGoal1Action: %s" %str(e)
  363.  
  364.         @property
  365.         def HomeGoal2ClickCommand(self):
  366.                 return self.homeGoal2ClickCommand
  367.  
  368.         def HomeGoal2Action(self, param=None, args1 = None, args2 = None):
  369.                 try:
  370.                         self.__GoalAction(self.Game.HomeTeam, "Home", "2", args2[0])
  371.                 except Exception as e:
  372.                         print "HomeGoal2Action: %s" %str(e)
  373.  
  374.         @property
  375.         def HomeGoal3ClickCommand(self):
  376.                 return self.homeGoal3ClickCommand
  377.  
  378.         def HomeGoal3Action(self, param=None, args1 = None, args2 = None):
  379.                 try:
  380.                         self.__GoalAction(self.Game.HomeTeam, "Home", "3", args2[0])
  381.                 except Exception as e:
  382.                         print "HomeGoal3Action: %s" %str(e)
  383.  
  384.         @property
  385.         def HomeGoal4ClickCommand(self):
  386.                 return self.homeGoal4ClickCommand
  387.  
  388.         def HomeGoal4Action(self, param=None, args1 = None, args2 = None):
  389.                 try:
  390.                         self.__GoalAction(self.Game.HomeTeam, "Home", "4", args2[0])
  391.                 except Exception as e:
  392.                         print "HomeGoal4Action: %s" %str(e)
  393.  
  394.         @property
  395.         def HomeGoal5ClickCommand(self):
  396.                 return self.homeGoal5ClickCommand
  397.  
  398.         def HomeGoal5Action(self, param=None, args1 = None, args2 = None):
  399.                 try:
  400.                         self.__GoalAction(self.Game.HomeTeam, "Home", "5", args2[0])
  401.                 except Exception as e:
  402.                         print "HomeGoal5Action: %s" %str(e)
  403.  
  404. ##############################################################################################
  405.  
  406.         @property
  407.         def AwayGoal1ClickCommand(self):
  408.                 return self.awayGoal1ClickCommand
  409.  
  410.         def AwayGoal1Action(self, param=None, args1 = None, args2 = None):
  411.                 try:
  412.                         self.__GoalAction(self.Game.AwayTeam, "Away", "1", args2[0])
  413.                 except Exception as e:
  414.                         print "AwayGoal1Action: %s" %str(e)
  415.  
  416.         @property
  417.         def AwayGoal2ClickCommand(self):
  418.                 return self.awayGoal2ClickCommand
  419.  
  420.         def AwayGoal2Action(self, param=None, args1 = None, args2 = None):
  421.                 try:
  422.                         self.__GoalAction(self.Game.AwayTeam, "Away", "2", args2[0])
  423.                 except Exception as e:
  424.                         print "AwayGoa21Action: %s" %str(e)
  425.  
  426.         @property
  427.         def AwayGoal3ClickCommand(self):
  428.                 return self.awayGoal3ClickCommand
  429.  
  430.         def AwayGoal3Action(self, param=None, args1 = None, args2 = None):
  431.                 try:
  432.                         self.__GoalAction(self.Game.AwayTeam, "Away", "3", args2[0])
  433.                 except Exception as e:
  434.                         print "AwayGoal3Action: %s" %str(e)
  435.  
  436.         @property
  437.         def AwayGoal4ClickCommand(self):
  438.                 return self.awayGoal4ClickCommand
  439.  
  440.         def AwayGoal4Action(self, param=None, args1 = None, args2 = None):
  441.                 try:
  442.                         self.__GoalAction(self.Game.AwayTeam, "Away", "4", args2[0])
  443.                 except Exception as e:
  444.                         print "AwayGoal4Action: %s" %str(e)
  445.  
  446.         @property
  447.         def AwayGoal5ClickCommand(self):
  448.                 return self.awayGoal5ClickCommand
  449.  
  450.         def AwayGoal5Action(self, param=None, args1 = None, args2 = None):
  451.                 try:
  452.                         self.__GoalAction(self.Game.AwayTeam, "Away", "5", args2[0])
  453.                 except Exception as e:
  454.                         print "AwayGoal5Action: %s" %str(e)
  455.  
  456. ##############################################################################################
  457.  
  458.         @property
  459.         def HomeMissed1ClickCommand(self):
  460.                 return self.homeMissed1ClickCommand
  461.  
  462.         def HomeMissed1Action(self, param=None, args1 = None, args2 = None):           
  463.                 try:
  464.                         self.__MissedAction(self.Game.HomeTeam, "Home", "1", args2[0])                 
  465.                 except Exception as e:
  466.                         print "HomeMissed1Action: %s" %str(e)
  467.  
  468.         @property
  469.         def HomeMissed2ClickCommand(self):
  470.                 return self.homeMissed2ClickCommand
  471.  
  472.         def HomeMissed2Action(self, param=None, args1 = None, args2 = None):
  473.                 try:
  474.                         self.__MissedAction(self.Game.HomeTeam, "Home", "2", args2[0])
  475.                 except Exception as e:
  476.                         print "HomeMissed2Action: %s" %str(e)
  477.  
  478.         @property
  479.         def HomeMissed3ClickCommand(self):
  480.                 return self.homeMissed3ClickCommand
  481.  
  482.         def HomeMissed3Action(self, param=None, args1 = None, args2 = None):
  483.                 try:
  484.                         self.__MissedAction(self.Game.HomeTeam, "Home", "3", args2[0])
  485.                 except Exception as e:
  486.                         print "HomeMissed3Action: %s" %str(e)
  487.  
  488.         @property
  489.         def HomeMissed4ClickCommand(self):
  490.                 return self.homeMissed4ClickCommand
  491.  
  492.         def HomeMissed4Action(self, param=None, args1 = None, args2 = None):
  493.                 try:
  494.                         self.__MissedAction(self.Game.HomeTeam, "Home", "4", args2[0])
  495.                 except Exception as e:
  496.                         print "HomeMissed4Action: %s" %str(e)
  497.  
  498.         @property
  499.         def HomeMissed5ClickCommand(self):
  500.                 return self.homeMissed5ClickCommand
  501.  
  502.         def HomeMissed5Action(self, param=None, args1 = None, args2 = None):
  503.                 try:
  504.                         self.__MissedAction(self.Game.HomeTeam, "Home", "5", args2[0])
  505.                 except Exception as e:
  506.                         print "HomeMissed5Action: %s" %str(e)
  507.                
  508. ##############################################################################################
  509.  
  510.         @property
  511.         def AwayMissed1ClickCommand(self):
  512.                 return self.awayMissed1ClickCommand
  513.  
  514.         def AwayMissed1Action(self, param=None, args1 = None, args2 = None):
  515.                 try:
  516.                         self.__MissedAction(self.Game.AwayTeam, "Away", "1", args2[0])
  517.                 except Exception as e:
  518.                         print "AwayMissed1Action: %s" %str(e)
  519.  
  520.         @property
  521.         def AwayMissed2ClickCommand(self):
  522.                 return self.awayMissed2ClickCommand
  523.  
  524.         def AwayMissed2Action(self, param=None, args1 = None, args2 = None):
  525.                 try:
  526.                         self.__MissedAction(self.Game.AwayTeam, "Away", "2", args2[0])
  527.                 except Exception as e:
  528.                         print "AwayMissed2Action: %s" %str(e)
  529.  
  530.         @property
  531.         def AwayMissed3ClickCommand(self):
  532.                 return self.awayMissed3ClickCommand
  533.  
  534.         def AwayMissed3Action(self, param=None, args1 = None, args2 = None):
  535.                 try:
  536.                         self.__MissedAction(self.Game.AwayTeam, "Away", "3", args2[0])
  537.                 except Exception as e:
  538.                         print "AwayMissed3Action: %s" %str(e)
  539.  
  540.         @property
  541.         def AwayMissed4ClickCommand(self):
  542.                 return self.awayMissed4ClickCommand
  543.  
  544.         def AwayMissed4Action(self, param=None, args1 = None, args2 = None):
  545.                 try:
  546.                         self.__MissedAction(self.Game.AwayTeam, "Away", "4", args2[0])
  547.                 except Exception as e:
  548.                         print "AwayMissed4Action: %s" %str(e)
  549.  
  550.         @property
  551.         def AwayMissed5ClickCommand(self):
  552.                 return self.awayMissed5ClickCommand
  553.  
  554.         def AwayMissed5Action(self, param=None, args1 = None, args2 = None):
  555.                 try:
  556.                         self.__MissedAction(self.Game.AwayTeam, "Away", "5", args2[0])
  557.                 except Exception as e:
  558.                         print "AwayMissed5Action: %s" %str(e)
  559.  
  560. ##############################################################################################
  561.  
  562.         @property
  563.         def NewRoundClickCommand(self):
  564.                 return self.newRoundClickCommand
  565.  
  566.         def NewRoundAction(self, param=None, args1 = None, args2 = None):
  567.                 try:
  568.                         for i in range(5, 0, -1):
  569.                                 if not ((getattr(self, "HomeGoal%sIsChecked" %i) or getattr(self, "HomeMissed%sIsChecked" %i)) and (getattr(self, "AwayGoal%sIsChecked" %i) or getattr(self, "AwayMissed%sIsChecked" %i))):
  570.                                         self.appCore.StatusManager.Add("Fill all rounds before create a new one!")
  571.                                         return False
  572.                                        
  573.                         if not self.appCore.UserIteraction.ShowMessageBoxYesNo("NEW ROUND", "CREATE NEW ROUND?").ToString() == "Yes": return
  574.                        
  575.                         for i in range(1, 6):
  576.                                 setattr(self, "Round%s" %i, (getattr(self, "Round%s" %i) + 5))
  577.                        
  578.                         for i in range(5, 0, -1):
  579.                                 setattr(self, "HomeGoal%sIsChecked" %i, False)
  580.                                 setattr(self, "HomeMissed%sIsChecked" %i, False)
  581.                                 setattr(self, "AwayGoal%sIsChecked" %i, False)
  582.                                 setattr(self, "AwayMissed%sIsChecked" %i, False)
  583.                 except Exception as e:
  584.                         print "NewRoundAction: %s" %str(e)
  585.                                
  586.         @property
  587.         def ResetClickCommand(self):
  588.                 return self.resetClickCommand
  589.  
  590.         def ResetAction(self, param=None, args1 = None, args2 = None):
  591.                 try:
  592.                         if not self.appCore.UserIteraction.ShowMessageBoxYesNo("RESET", "RESET PENALTYS!\n\nCONTINUE ANYWAY?").ToString() == "Yes": return
  593.                         configurations = {
  594.                                 "Round1": 1,
  595.                                 "Round2": 2,
  596.                                 "Round3": 3,
  597.                                 "Round4": 4,
  598.                                 "Round5": 5,
  599.                                 "HomeGoal1IsChecked": False,
  600.                                 "HomeGoal2IsChecked": False,
  601.                                 "HomeGoal3IsChecked": False,
  602.                                 "HomeGoal4IsChecked": False,
  603.                                 "HomeGoal5IsChecked": False,
  604.                                 "HomeMissed1IsChecked": False,
  605.                                 "HomeMissed2IsChecked": False,
  606.                                 "HomeMissed3IsChecked": False,
  607.                                 "HomeMissed4IsChecked": False,
  608.                                 "HomeMissed5IsChecked": False,
  609.                                 "AwayGoal1IsChecked": False,
  610.                                 "AwayGoal2IsChecked": False,
  611.                                 "AwayGoal3IsChecked": False,
  612.                                 "AwayGoal4IsChecked": False,
  613.                                 "AwayGoal5IsChecked": False,
  614.                                 "AwayMissed1IsChecked": False,
  615.                                 "AwayMissed2IsChecked": False,
  616.                                 "AwayMissed3IsChecked": False,
  617.                                 "AwayMissed4IsChecked": False,
  618.                                 "AwayMissed5IsChecked": False,
  619.                                
  620.                         }
  621.        
  622.                         penaltyEvents = filter(lambda event: event.Event and event.Name == "Penalty", self.Game.OrderedGameEvents)
  623.                         self.Game.DeleteGameEvents(penaltyEvents)
  624.                         for configuration in configurations:
  625.                                 setattr(self, configuration, configurations[configuration])
  626.                                
  627.                         graphic = GraphicTemplatesManager.GetGraphicByName("PENALTIES")
  628.                         if not graphic: return
  629.                         if not IntelliflowController.GetGraphicOnAirItems(graphic, OutputManager.ActiveChannelOutput):return
  630.                        
  631.                         Project.ExecuteScript(graphic.Script, "__updatePenalties")
  632.                 except Exception as e:
  633.                         print "ResetAction: %s" %str(e)
  634.  
  635.         @property
  636.         def ShowClickCommand(self):
  637.                 return self.showClickCommand
  638.  
  639.         def ShowAction(self, param=None, args1 = None, args2 = None):
  640.                 graphic = GraphicTemplatesManager.GetGraphicByName("PENALTIES")
  641.                
  642.                 if not graphic: return
  643.                
  644.                 if IntelliflowController.GetGraphicOnAirItems(graphic, OutputManager.ActiveChannelOutput):
  645.                         self.appCore.StatusManager.Add("Graphic is OnAir!")
  646.                         return
  647.  
  648.                 IntelliflowController.TakeIn(graphic, OutputManager.ActiveChannelOutput, workflowType = IntelliflowController.EWorkflowType.Preview if graphic.Preview else IntelliflowController.EWorkflowType.Program)
  649.        
  650.         @property
  651.         def UpdateClickCommand(self):
  652.                 return self.updateClickCommand
  653.  
  654.         def UpdateAction(self, param=None, args1 = None, args2 = None):
  655.                 graphic = GraphicTemplatesManager.GetGraphicByName("PENALTIES")
  656.                
  657.                 if not graphic: return
  658.                 if not IntelliflowController.GetGraphicOnAirItems(graphic, OutputManager.ActiveChannelOutput):return
  659.                 Project.ExecuteScript(graphic.Script, "__updatePenalties")
  660.        
  661.                
  662.         @property
  663.         def OutClickCommand(self):
  664.                 return self.outClickCommand
  665.  
  666.         def OutAction(self, param=None, args1 = None, args2 = None):
  667.                 graphic = GraphicTemplatesManager.GetGraphicByName("PENALTIES")
  668.                
  669.                 if not graphic: return
  670.  
  671.                 IntelliflowController.TakeOut(graphic, OutputManager.ActiveChannelOutput)
  672.  
  673.         def validateShootouts(self, number):
  674.                 for i in range(1, number):
  675.                         if not getattr(self, "homeGoal%sIsChecked" %i) and not getattr(self, "homeMissed%sIsChecked" %i):
  676.                                 self.appCore.StatusManager.Add("Round %s for Home Team is not valid!" %i)
  677.                                 return False
  678.  
  679.                         if not getattr(self, "awayGoal%sIsChecked" %i) and not getattr(self, "awayMissed%sIsChecked" %i):
  680.                                 self.appCore.StatusManager.Add("Round %s for Away Team is not valid!" %i)
  681.                                 return False
  682.  
  683.                 return True
  684.        
  685.         def loadPenaltyEvents(self):
  686.                 try:
  687.                         event = FootballEvents.Penalty
  688.                         homeTeamPenalties = 1
  689.                         awayTeamPenalties = 1
  690.                         orderedGameEvents = self.Game.OrderedGameEvents
  691.                         homeGameEvents = filter(lambda item: item.Event == event and item.Team == self.Game.HomeTeam, list(orderedGameEvents))
  692.                         awayGameEvents = filter(lambda item: item.Event == event and item.Team == self.Game.AwayTeam, list(orderedGameEvents))
  693.                         homeRes = int(homeGameEvents.Count % 5) if int(homeGameEvents.Count % 5) != 0 else 5
  694.                         awayRes = int(awayGameEvents.Count % 5) if int(awayGameEvents.Count % 5) != 0 else 5
  695.                                
  696.                         for gameEvent in homeGameEvents[-homeRes:]:
  697.                                 eventAttr = next((item for item in list(gameEvent.Attributes) if (item.Name == FootballEventAttributes.PenaltyKickResult.Name)), None)
  698.                                 if eventAttr:
  699.                                         if eventAttr.Value == EPenaltyKickResult.Goal.ToString():
  700.                                                 setattr(self, "HomeGoal%sIsChecked"%homeTeamPenalties, True)
  701.                                         elif eventAttr.Value == EPenaltyKickResult.Other.ToString():
  702.                                                 setattr(self, "HomeMissed%sIsChecked"%homeTeamPenalties, True) 
  703.                                                
  704.                                         homeTeamPenalties += 1
  705.                                
  706.                         for gameEvent in awayGameEvents[-awayRes:]:    
  707.                                 eventAttr = next((item for item in list(gameEvent.Attributes) if (item.Name == FootballEventAttributes.PenaltyKickResult.Name)), None)
  708.                                 if eventAttr:
  709.                                         if eventAttr.Value == EPenaltyKickResult.Goal.ToString():
  710.                                                 setattr(self, "AwayGoal%sIsChecked"%awayTeamPenalties, True)
  711.                                         elif eventAttr.Value == EPenaltyKickResult.Other.ToString():
  712.                                                 setattr(self, "AwayMissed%sIsChecked"%awayTeamPenalties, True) 
  713.                                                
  714.                                         awayTeamPenalties += 1
  715.                        
  716.                         maxEvents = max(homeGameEvents.Count, awayGameEvents.Count)
  717.                         round = (int(maxEvents / 5) + 1) * 5
  718.                        
  719.                         for enum, i in enumerate(reversed(range(round, round - 5, -1))):
  720.                                 setattr(self, "Round%s" % (enum+1), i)
  721.                 except Exception as e:
  722.                         print "loadPenaltyEvents: %s" %str(e)
  723.  
  724.         def __GoalAction(self, team, propertyTeam, propertyNumber, eventNumber):
  725.                 try:
  726.                         print propertyNumber
  727.                         print self.isHomeStarting
  728.                         print team.IsHomeTeam
  729.                         if propertyNumber == 1 and (self.isHomeStarting == True) and not team.IsHomeTeam:
  730.                                 self.appCore.StatusManager.Add("Home team is starting!")
  731.                                 isChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  732.                                 setattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  733.                                 return
  734.                                
  735.                         if not self.Game.Clock.ActivePart.Number == 9:
  736.                                 self.appCore.StatusManager.Add("You're not on Penalties part!")
  737.                                 isChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  738.                                 setattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  739.                                 return
  740.                                
  741.                         if not self.validateShootouts(int(propertyNumber)):
  742.                                 isChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  743.                                 setattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  744.                                 return
  745.                        
  746.                         event = FootballEvents.Penalty                 
  747.                         gamePart = self.Game.Clock.ActivePart.Number
  748.                         time = TimeSpan(0, int(eventNumber), 0)        
  749.                         goalChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  750.                         missedChecked = getattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber))
  751.        
  752.                         if goalChecked: #creates a new penalty event
  753.                                 if missedChecked:
  754.                                         setattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber), False)
  755.                                
  756.                                         orderedGameEvents = self.Game.OrderedGameEvents
  757.                                         gameEvents = filter(lambda item: item.Event == event and item.Team == team, list(orderedGameEvents))
  758.                                         gameEvent = gameEvents[int(eventNumber) - 1]
  759.                                        
  760.                                         eventAttr = next((item for item in list(gameEvent.Attributes) if (item.Name == FootballEventAttributes.PenaltyKickResult.Name)), None)
  761.                                         if eventAttr and eventAttr.Value == EPenaltyKickResult.Other.ToString():
  762.                                                 eventAttr.Value = EPenaltyKickResult.Goal.ToString()                                   
  763.                                                 self.Game.UpdateGameEvent(gameEvent)
  764.                                 else:
  765.                                         penaltyValueTuple = ValueTuple.Create(FootballEventAttributes.PenaltyKickResult.Name, EPenaltyKickResult.Goal.ToString())
  766.                                         gameEvent = self.Game.AddEvent(event, gamePart, time, team, None, None, None, None, [penaltyValueTuple])
  767.                                        
  768.                         else: #delete penalty event
  769.                                 orderedGameEvents = self.Game.OrderedGameEvents                        
  770.                                 #gameEvent = next((item for item in reversed(list(orderedGameEvents)) if (item.Event == event and item.Team == team)), None)
  771.                                 gameEvents = filter(lambda item: item.Event == event and item.Team == team, list(orderedGameEvents))
  772.                                 gameEvent = gameEvents[int(eventNumber) - 1]
  773.                                
  774.                                 if gameEvent:
  775.                                         self.Game.DeleteGameEvent(gameEvent)
  776.                 except Exception as e:
  777.                         print "__GoalAction: %s" %str(e)
  778.  
  779.         def __MissedAction(self, team, propertyTeam, propertyNumber, eventNumber):
  780.                 try:
  781.                         if propertyNumber == 1 and self.isHomeStarting == True and not team.IsHomeTeam:
  782.                                 self.appCore.StatusManager.Add("Home team is starting!")
  783.                                 isChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  784.                                 setattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  785.                                 return
  786.                                
  787.                         if not self.Game.Clock.ActivePart.Number == 9:
  788.                                 self.appCore.StatusManager.Add("You're not on Penalties part!")
  789.                                 isChecked = getattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber))
  790.                                 setattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  791.                                 return
  792.  
  793.                         if not self.validateShootouts(int(propertyNumber)):
  794.                                 isChecked = getattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber))
  795.                                 setattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber), False if isChecked else True)
  796.                                 return
  797.                        
  798.                         event = FootballEvents.Penalty
  799.                         gamePart = self.Game.Clock.ActivePart.Number
  800.                         time = TimeSpan(0, int(eventNumber), 0)
  801.                         goalChecked = getattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber))
  802.                         missedChecked = getattr(self, "%sMissed%sIsChecked"%(propertyTeam, propertyNumber))
  803.                        
  804.                         if missedChecked:
  805.                                 if goalChecked:
  806.                                         setattr(self, "%sGoal%sIsChecked"%(propertyTeam, propertyNumber), False)
  807.                                        
  808.                                         orderedGameEvents = self.Game.OrderedGameEvents
  809.                                         gameEvents = filter(lambda item: item.Event == event and item.Team == team,list(orderedGameEvents))
  810.                                         gameEvent = gameEvents[int(eventNumber) - 1]
  811.                                         eventAttr = next((item for item in list(gameEvent.Attributes) if (item.Name == FootballEventAttributes.PenaltyKickResult.Name)), None)
  812.                                        
  813.                                         if eventAttr and eventAttr.Value == EPenaltyKickResult.Goal.ToString():
  814.                                                 eventAttr.Value = EPenaltyKickResult.Other.ToString()                                  
  815.                                                 self.Game.UpdateGameEvent(gameEvent)
  816.                                 else:
  817.                                         penaltyValueTuple = ValueTuple.Create(FootballEventAttributes.PenaltyKickResult.Name, EPenaltyKickResult.Other.ToString())
  818.                                         gameEvent = self.Game.AddEvent(event, gamePart, time, team, None, None, None, None, [penaltyValueTuple])               
  819.                                        
  820.                         else: #delete penalty event
  821.                                 orderedGameEvents = self.Game.OrderedGameEvents                        
  822.                                 gameEvents = filter(lambda item: item.Event == event and item.Team == team, list(orderedGameEvents))
  823.                                
  824.                                 gameEvent = gameEvents[int(eventNumber) - 1]                           
  825.                                 if gameEvent:
  826.                                         self.Game.DeleteGameEvent(gameEvent)           
  827.                                        
  828.                 except Exception as e:
  829.                         print "__MissedAction: %s" %str(e)
  830.  

Reply to "Untitled"

Here you can reply to the paste above