Exemplo n.º 1
0
    def battle(self):

        # Set knight attribute
        knight = Knight(self.knightTuple[0], self.knightTuple[1],
                        self.knightTuple[2], self.knightTuple[3])

        knightRingSignList = knight.getRingSignList()

        index = 1

        for journey in knight.getJourneyList():

            knightHp = knight.getKnightHP()

            # If knight Hp <= 0 => Lose the game
            if knightHp <= 0:
                print("Knight lose")
                break

            # Get journey index
            indexJourney = index

            index += 1

            # print(str(journey) + " " + str(indexJourney))
            eventObj = Event(journey, indexJourney)

            eventTuple = eventObj.checkEventCode()

            event = eventTuple[0]

            if event == 0:
                print("Knight win")
                break
            elif event == -1:
                continue

            knightRingSignList, knightHp = self.battleCase(
                event, knightHp, knight.getKnightMaxHp(),
                knight.getKnightLevel(), knightRingSignList,
                eventObj.getLevelO(), eventObj.getRingSignO())

            knight.setKnightHp(knightHp)

        # print(knight.getRingSignList())
        stringRingSignList = [str(x) for x in knightRingSignList]
        stringRingSignList = "".join(stringRingSignList)

        return stringRingSignList, knight.getKnightHP()