def getInvalidFields(self):
        invalidFields = []

        # Datatype checking
        if (not DatatypeUtils.isIntegerString(self.view.stepsVar.get())):
            invalidFields.append(
                "'Groesse des Ringpuffers' muss eine Ganzzahl sein (zum Beispiel: 1)!"
            )
        if (not DatatypeUtils.isFloatString(self.view.alphaVar.get())):
            invalidFields.append(
                "'Alpha' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
        if (not DatatypeUtils.isFloatString(self.view.gammaVar.get())):
            invalidFields.append(
                "'Gamma' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
        if (not DatatypeUtils.isFloatString(self.view.epsilonVar.get())):
            invalidFields.append(
                "'Epsilon' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
        if (not DatatypeUtils.isFloatString(self.view.lambdaVar.get())):
            invalidFields.append(
                "'Lambda' muss eine Kommazahl sein (zum Beispiel: 1.0)!")

        # Value checking
        # TODO!

        return invalidFields
 def getInvalidFields(self):        
     invalidFields = []
     
     # Datatype checking
     if (not DatatypeUtils.isIntegerString(self.view.stepsVar.get())):
         invalidFields.append("'Groesse des Ringpuffers' muss eine Ganzzahl sein (zum Beispiel: 1)!")
     if (not DatatypeUtils.isFloatString(self.view.alphaVar.get())):
         invalidFields.append("'Alpha' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
     if (not DatatypeUtils.isFloatString(self.view.gammaVar.get())):
         invalidFields.append("'Gamma' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
     if (not DatatypeUtils.isFloatString(self.view.epsilonVar.get())):
         invalidFields.append("'Epsilon' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
     if (not DatatypeUtils.isFloatString(self.view.lambdaVar.get())):
         invalidFields.append("'Lambda' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
     
     # Value checking
     # TODO!
     
     return invalidFields
    def getInvalidFields(self):        
        invalidFields = []
        
        # Datatype checking
        if (not DatatypeUtils.isIntegerString(self.view.numTrainingVar.get())):
            invalidFields.append("'Anzahl der Trainings' muss eine Ganzzahl sein (zum Beispiel: 1)!")
        if (not DatatypeUtils.isIntegerString(self.view.numGamesVar.get())):
            invalidFields.append("'Anzahl der Spiele' muss eine Ganzzahl sein (zum Beispiel: 1)!")
        if (not DatatypeUtils.isIntegerString(self.view.numGhostsVar.get())):
            invalidFields.append("'Anzahl der Geister' muss eine Ganzzahl sein (zum Beispiel: 4)!")
        if (not DatatypeUtils.isString(self.view.layoutVar.get())):
            invalidFields.append("'Spielfeld' muss eine Zeichenkette sein (zum Beispiel: mediumClassic)!")
        if (not DatatypeUtils.isString(self.view.pacmanVar.get())):
            invalidFields.append("'Pacman-Agent' muss eine Zeichenkette sein (zum Beispiel: KeyboardAgent)!")
        if (not DatatypeUtils.isBooleanString(self.view.fixRandomSeedVar.get())):
            invalidFields.append("'Feste Random-Seed' muss ein Wahrheitswert sein (True oder False)!")
        
        if (not DatatypeUtils.isFloatString(self.view.zoomVar.get())):
            invalidFields.append("'Zoomfaktor' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
        if (not DatatypeUtils.isFloatString(self.view.frameTimeVar.get())):
            invalidFields.append("'Spielgeschwindigkeit' muss eine Kommazahl sein (zum Beispiel: 0.1)!")
        if (not DatatypeUtils.isBooleanString(self.view.textGraphicsVar.get())):
            invalidFields.append("'Ausgabe als Text' muss ein Wahrheitswert sein (True oder False)!")
        if (not DatatypeUtils.isBooleanString(self.view.quietTextGraphicsVar.get())):
            invalidFields.append("'Minimale Ausgabe' muss ein Wahrheitswert sein (True oder False)!")
        
        # Value checking (numTraining)
        if (DatatypeUtils.isIntegerString(self.view.numTrainingVar.get())):
            numTrainingValue = DatatypeUtils.stringToInteger(self.view.numTrainingVar.get())
            if (numTrainingValue < 0):
                invalidFields.append("'Anzahl der Trainings' muss groesser oder gleich " + str(0) + " sein!")
        
        # Value checking (numGames)
        if (DatatypeUtils.isIntegerString(self.view.numGamesVar.get())):
            numGamesValue = DatatypeUtils.stringToInteger(self.view.numGamesVar.get())
            if (numGamesValue < 1):
                invalidFields.append("'Anzahl der Spiele' muss groesser oder gleich " + str(1) + " sein!")
        
        # Value checking (numGhosts)
        if (DatatypeUtils.isIntegerString(self.view.numGhostsVar.get())):
            numGhostsValue = DatatypeUtils.stringToInteger(self.view.numGhostsVar.get())
            if (numGhostsValue < 0):
                invalidFields.append("'Anzahl der Geister' muss groesser oder gleich " + str(0) + " sein!")
            
            layout = self.view.layoutVar.get()
            mapNumGhosts = self.getMapNumGhosts(layout)
            if (mapNumGhosts > 5):
                mapNumGhosts = 5
            
            if (numGhostsValue > mapNumGhosts):
                invalidFields.append("'Anzahl der Geister' muss fuer Spielfeld '" + layout + "' kleiner oder gleich " + str(mapNumGhosts) + " sein!")

        # Value checking (zoom)
        if (DatatypeUtils.isFloatString(self.view.zoomVar.get())):
            zoomValue = DatatypeUtils.stringToFloat(self.view.zoomVar.get())
            if (zoomValue > MAX_ZOOM):
                invalidFields.append("'Zoomfaktor' muss kleiner oder gleich " + str(MAX_ZOOM) + " sein!")
            if (zoomValue < MIN_ZOOM):
                invalidFields.append("'Zoomfaktor' muss groesser oder gleich " + str(MIN_ZOOM) + " sein!")
        
        # Value checking (frameTime)
        if (DatatypeUtils.isFloatString(self.view.frameTimeVar.get())):
            frameTimeValue = DatatypeUtils.stringToFloat(self.view.frameTimeVar.get())
            if (frameTimeValue > MAX_SPEED):
                invalidFields.append("'Spielgeschwindigkeit' muss kleiner oder gleich " + str(MAX_SPEED) + " sein!")
            if (frameTimeValue < MIN_SPEED):
                invalidFields.append("'Spielgeschwindigkeit' muss groesser oder gleich " + str(MIN_SPEED) + " sein!")
        
        return invalidFields
Exemplo n.º 4
0
    def getInvalidFields(self):        
        invalidFields = []
        
        # Datatype checking
        if (not DatatypeUtils.isIntegerString(self.view.numTrainingVar.get())):
            invalidFields.append("'Anzahl der Trainings' muss eine Ganzzahl sein (zum Beispiel: 1)!")
        if (not DatatypeUtils.isIntegerString(self.view.numGamesVar.get())):
            invalidFields.append("'Anzahl der Spiele' muss eine Ganzzahl sein (zum Beispiel: 1)!")
        if (not DatatypeUtils.isIntegerString(self.view.numGhostsVar.get())):
            invalidFields.append("'Anzahl der Geister' muss eine Ganzzahl sein (zum Beispiel: 4)!")
        if (not DatatypeUtils.isString(self.view.layoutVar.get())):
            invalidFields.append("'Spielfeld' muss eine Zeichenkette sein (zum Beispiel: mediumClassic)!")
        if (not DatatypeUtils.isString(self.view.pacmanVar.get())):
            invalidFields.append("'Pacman-Agent' muss eine Zeichenkette sein (zum Beispiel: KeyboardAgent)!")
        if (not DatatypeUtils.isBooleanString(self.view.fixRandomSeedVar.get())):
            invalidFields.append("'Feste Random-Seed' muss ein Wahrheitswert sein (True oder False)!")
        
        if (not DatatypeUtils.isFloatString(self.view.zoomVar.get())):
            invalidFields.append("'Zoomfaktor' muss eine Kommazahl sein (zum Beispiel: 1.0)!")
        if (not DatatypeUtils.isFloatString(self.view.frameTimeVar.get())):
            invalidFields.append("'Spielgeschwindigkeit' muss eine Kommazahl sein (zum Beispiel: 0.1)!")
        if (not DatatypeUtils.isBooleanString(self.view.textGraphicsVar.get())):
            invalidFields.append("'Ausgabe als Text' muss ein Wahrheitswert sein (True oder False)!")
        if (not DatatypeUtils.isBooleanString(self.view.quietTextGraphicsVar.get())):
            invalidFields.append("'Minimale Ausgabe' muss ein Wahrheitswert sein (True oder False)!")
        
        # Value checking (numTraining)
        if (DatatypeUtils.isIntegerString(self.view.numTrainingVar.get())):
            numTrainingValue = DatatypeUtils.stringToInteger(self.view.numTrainingVar.get())
            if (numTrainingValue < 0):
                invalidFields.append("'Anzahl der Trainings' muss groesser oder gleich " + str(0) + " sein!")
        
        # Value checking (numGames)
        if (DatatypeUtils.isIntegerString(self.view.numGamesVar.get())):
            numGamesValue = DatatypeUtils.stringToInteger(self.view.numGamesVar.get())
            if (numGamesValue < 1):
                invalidFields.append("'Anzahl der Spiele' muss groesser oder gleich " + str(1) + " sein!")
        
        # Value checking (numGhosts)
        if (DatatypeUtils.isIntegerString(self.view.numGhostsVar.get())):
            numGhostsValue = DatatypeUtils.stringToInteger(self.view.numGhostsVar.get())
            if (numGhostsValue < 0):
                invalidFields.append("'Anzahl der Geister' muss groesser oder gleich " + str(0) + " sein!")
            
            layout = self.view.layoutVar.get()
            mapNumGhosts = self.getMapNumGhosts(layout)
            if (mapNumGhosts > 5):
                mapNumGhosts = 5
            
            if (numGhostsValue > mapNumGhosts):
                invalidFields.append("'Anzahl der Geister' muss fuer Spielfeld '" + layout + "' kleiner oder gleich " + str(mapNumGhosts) + " sein!")

        # Value checking (zoom)
        if (DatatypeUtils.isFloatString(self.view.zoomVar.get())):
            zoomValue = DatatypeUtils.stringToFloat(self.view.zoomVar.get())
            if (zoomValue > MAX_ZOOM):
                invalidFields.append("'Zoomfaktor' muss kleiner oder gleich " + str(MAX_ZOOM) + " sein!")
            if (zoomValue < MIN_ZOOM):
                invalidFields.append("'Zoomfaktor' muss groesser oder gleich " + str(MIN_ZOOM) + " sein!")
        
        # Value checking (frameTime)
        if (DatatypeUtils.isFloatString(self.view.frameTimeVar.get())):
            frameTimeValue = DatatypeUtils.stringToFloat(self.view.frameTimeVar.get())
            if (frameTimeValue > MAX_SPEED):
                invalidFields.append("'Spielgeschwindigkeit' muss kleiner oder gleich " + str(MAX_SPEED) + " sein!")
            if (frameTimeValue < MIN_SPEED):
                invalidFields.append("'Spielgeschwindigkeit' muss groesser oder gleich " + str(MIN_SPEED) + " sein!")
        
        return invalidFields