예제 #1
0
    def test_lacamento_vertical(self):
        """
        Tests a vertical  launch. So only y changes while x keep the same value during the flight
        :return:
        """
        yellow_bird = YellowBird(1, 1)
        yellow_bird.launch(90, 2)  # bird launched at 90 grad on time 2 seconds



        # moving up

        self.assert_vertical_position(1, 2.0, yellow_bird)
        self.assert_vertical_position(1, 2.01, yellow_bird)
        self.assert_vertical_position(2, 2.02, yellow_bird)
        self.assert_vertical_position(2, 2.03, yellow_bird)
        self.assert_vertical_position(2, 2.04, yellow_bird)
        self.assert_vertical_position(2, 2.05, yellow_bird)

        # moving down

        self.assert_vertical_position(46, 5.26, yellow_bird)
        self.assert_vertical_position(46, 5.27, yellow_bird)
        self.assert_vertical_position(46, 5.279999999999999, yellow_bird)
        self.assert_vertical_position(46, 5.29, yellow_bird)
        self.assert_vertical_position(46, 5.3, yellow_bird)
        self.assert_vertical_position(46, 5.3100000000000005, yellow_bird)
        self.assert_vertical_position(45, 5.32, yellow_bird)
        self.assert_vertical_position(45, 5.33, yellow_bird)
        self.assert_vertical_position(45, 5.34, yellow_bird)
        self.assert_vertical_position(45, 5.35, yellow_bird)
        self.assert_vertical_position(45, 5.359999999999999, yellow_bird)
        self.assert_vertical_position(45, 5.37, yellow_bird)
        self.assert_vertical_position(45, 5.38, yellow_bird)
        self.assert_vertical_position(45, 5.390000000000001, yellow_bird)
        self.assert_vertical_position(45, 5.4, yellow_bird)
        self.assert_vertical_position(45, 5.41, yellow_bird)
        self.assert_vertical_position(45, 5.42, yellow_bird)
        self.assert_vertical_position(45, 5.43, yellow_bird)
        self.assert_vertical_position(45, 5.4399999999999995, yellow_bird)
        self.assert_vertical_position(45, 5.45, yellow_bird)
        self.assert_vertical_position(45, 5.46, yellow_bird)
        self.assert_vertical_position(45, 5.470000000000001, yellow_bird)
        self.assert_vertical_position(45, 5.48, yellow_bird)

        # preparing for ground impact
        self.assert_vertical_position(1, 8.0, yellow_bird)
        self.assert_vertical_position(1, 8.01, yellow_bird)

        # clashing
        self.assert_vertical_position(0, 8.04, yellow_bird)
        yellow_bird.ground_clash()
        self.assertEqual(DESTROYED, yellow_bird.status)
예제 #2
0
 def test_45_grads_launch(self):
     yellow_bird = YellowBird(1, 1)
     yellow_bird.launch(45, 2)  # bird launched with 45 grads on time 2 seconds
     self.assert_bird_position(1, 1, ACTIVE, yellow_bird, 2.0)
     self.assert_bird_position(1, 1, ACTIVE, yellow_bird, 2.01)
     self.assert_bird_position(1, 1, ACTIVE, yellow_bird, 2.02)
     self.assert_bird_position(2, 2, ACTIVE, yellow_bird, 2.03)
     self.assert_bird_position(2, 2, ACTIVE, yellow_bird, 2.04)
     self.assert_bird_position(2, 2, ACTIVE, yellow_bird, 2.05)
     self.assert_bird_position(2, 2, ACTIVE, yellow_bird, 2.06)
     self.assert_bird_position(2, 2, ACTIVE, yellow_bird, 2.07)
     self.assert_bird_position(3, 3, ACTIVE, yellow_bird, 2.08)
     self.assert_bird_position(3, 3, ACTIVE, yellow_bird, 2.09)
     self.assert_bird_position(3, 3, ACTIVE, yellow_bird, 2.1)
     self.assert_bird_position(3, 3, ACTIVE, yellow_bird, 2.11)
     self.assert_bird_position(4, 3, ACTIVE, yellow_bird, 2.12)
     self.assert_bird_position(4, 4, ACTIVE, yellow_bird, 2.13)
     self.assert_bird_position(4, 4, ACTIVE, yellow_bird, 2.14)
     self.assert_bird_position(4, 4, ACTIVE, yellow_bird, 2.15)
     self.assert_bird_position(4, 4, ACTIVE, yellow_bird, 2.16)
     self.assert_bird_position(5, 4, ACTIVE, yellow_bird, 2.17)
     self.assert_bird_position(5, 5, ACTIVE, yellow_bird, 2.18)
     self.assert_bird_position(5, 5, ACTIVE, yellow_bird, 2.19)
     self.assert_bird_position(5, 5, ACTIVE, yellow_bird, 2.2)
     self.assert_bird_position(5, 5, ACTIVE, yellow_bird, 2.21)
     self.assert_bird_position(6, 5, ACTIVE, yellow_bird, 2.22)
     self.assert_bird_position(6, 6, ACTIVE, yellow_bird, 2.23)
     self.assert_bird_position(6, 6, ACTIVE, yellow_bird, 2.24)
     self.assert_bird_position(6, 6, ACTIVE, yellow_bird, 2.25)
     self.assert_bird_position(7, 6, ACTIVE, yellow_bird, 2.26)
     self.assert_bird_position(7, 6, ACTIVE, yellow_bird, 2.27)
     self.assert_bird_position(7, 7, ACTIVE, yellow_bird, 2.2800000000000002)
     self.assert_bird_position(7, 7, ACTIVE, yellow_bird, 2.29)
     self.assert_bird_position(7, 7, ACTIVE, yellow_bird, 2.3)
     self.assert_bird_position(8, 7, ACTIVE, yellow_bird, 2.31)
     self.assert_bird_position(8, 7, ACTIVE, yellow_bird, 2.32)
     self.assert_bird_position(8, 7, ACTIVE, yellow_bird, 2.33)
     self.assert_bird_position(8, 8, ACTIVE, yellow_bird, 2.34)
     self.assert_bird_position(8, 8, ACTIVE, yellow_bird, 2.35)
     self.assert_bird_position(9, 8, ACTIVE, yellow_bird, 2.36)
     self.assert_bird_position(9, 8, ACTIVE, yellow_bird, 2.37)
     self.assert_bird_position(9, 8, ACTIVE, yellow_bird, 2.38)
     self.assert_bird_position(9, 9, ACTIVE, yellow_bird, 2.39)
     self.assert_bird_position(9, 9, ACTIVE, yellow_bird, 2.4)
     self.assert_bird_position(10, 9, ACTIVE, yellow_bird, 2.41)
     self.assert_bird_position(10, 9, ACTIVE, yellow_bird, 2.42)
     self.assert_bird_position(10, 9, ACTIVE, yellow_bird, 2.43)
     self.assert_bird_position(10, 9, ACTIVE, yellow_bird, 2.44)
     self.assert_bird_position(11, 10, ACTIVE, yellow_bird, 2.45)
     self.assert_bird_position(11, 10, ACTIVE, yellow_bird, 2.46)
     self.assert_bird_position(11, 10, ACTIVE, yellow_bird, 2.4699999999999998)
     self.assert_bird_position(11, 10, ACTIVE, yellow_bird, 2.48)
     self.assert_bird_position(11, 10, ACTIVE, yellow_bird, 2.49)
     self.assert_bird_position(12, 10, ACTIVE, yellow_bird, 2.5)
     self.assert_bird_position(12, 11, ACTIVE, yellow_bird, 2.51)
     self.assert_bird_position(12, 11, ACTIVE, yellow_bird, 2.52)
     self.assert_bird_position(12, 11, ACTIVE, yellow_bird, 2.5300000000000002)
     self.assert_bird_position(12, 11, ACTIVE, yellow_bird, 2.54)
     self.assert_bird_position(13, 11, ACTIVE, yellow_bird, 2.55)
     self.assert_bird_position(13, 11, ACTIVE, yellow_bird, 2.56)
     self.assert_bird_position(13, 11, ACTIVE, yellow_bird, 2.57)
     self.assert_bird_position(13, 12, ACTIVE, yellow_bird, 2.58)
     self.assert_bird_position(14, 12, ACTIVE, yellow_bird, 2.59)
     self.assert_bird_position(14, 12, ACTIVE, yellow_bird, 2.6)
     self.assert_bird_position(14, 12, ACTIVE, yellow_bird, 2.61)
     self.assert_bird_position(14, 12, ACTIVE, yellow_bird, 2.62)
     self.assert_bird_position(14, 12, ACTIVE, yellow_bird, 2.63)
     self.assert_bird_position(15, 13, ACTIVE, yellow_bird, 2.64)
     self.assert_bird_position(15, 13, ACTIVE, yellow_bird, 2.65)
     self.assert_bird_position(15, 13, ACTIVE, yellow_bird, 2.66)
     self.assert_bird_position(15, 13, ACTIVE, yellow_bird, 2.67)
     self.assert_bird_position(15, 13, ACTIVE, yellow_bird, 2.68)
     self.assert_bird_position(16, 13, ACTIVE, yellow_bird, 2.69)
     self.assert_bird_position(16, 13, ACTIVE, yellow_bird, 2.7)
     self.assert_bird_position(16, 14, ACTIVE, yellow_bird, 2.71)
     self.assert_bird_position(16, 14, ACTIVE, yellow_bird, 2.7199999999999998)
     self.assert_bird_position(16, 14, ACTIVE, yellow_bird, 2.73)
     self.assert_bird_position(17, 14, ACTIVE, yellow_bird, 2.74)
     self.assert_bird_position(17, 14, ACTIVE, yellow_bird, 2.75)
     self.assert_bird_position(17, 14, ACTIVE, yellow_bird, 2.76)
     self.assert_bird_position(17, 14, ACTIVE, yellow_bird, 2.77)
     self.assert_bird_position(18, 15, ACTIVE, yellow_bird, 2.7800000000000002)
     self.assert_bird_position(18, 15, ACTIVE, yellow_bird, 2.79)
     self.assert_bird_position(18, 15, ACTIVE, yellow_bird, 2.8)
     self.assert_bird_position(18, 15, ACTIVE, yellow_bird, 2.81)
     self.assert_bird_position(18, 15, ACTIVE, yellow_bird, 2.82)
     self.assert_bird_position(19, 15, ACTIVE, yellow_bird, 2.83)
     self.assert_bird_position(19, 15, ACTIVE, yellow_bird, 2.84)
     self.assert_bird_position(19, 15, ACTIVE, yellow_bird, 2.85)
     self.assert_bird_position(19, 16, ACTIVE, yellow_bird, 2.86)
     self.assert_bird_position(19, 16, ACTIVE, yellow_bird, 2.87)
     self.assert_bird_position(20, 16, ACTIVE, yellow_bird, 2.88)
     self.assert_bird_position(20, 16, ACTIVE, yellow_bird, 2.89)
     self.assert_bird_position(20, 16, ACTIVE, yellow_bird, 2.9)
     self.assert_bird_position(20, 16, ACTIVE, yellow_bird, 2.91)
     self.assert_bird_position(21, 16, ACTIVE, yellow_bird, 2.92)
     self.assert_bird_position(21, 16, ACTIVE, yellow_bird, 2.93)
     self.assert_bird_position(21, 17, ACTIVE, yellow_bird, 2.94)
     self.assert_bird_position(21, 17, ACTIVE, yellow_bird, 2.95)
     self.assert_bird_position(21, 17, ACTIVE, yellow_bird, 2.96)
     self.assert_bird_position(22, 17, ACTIVE, yellow_bird, 2.9699999999999998)
     self.assert_bird_position(22, 17, ACTIVE, yellow_bird, 2.98)
     self.assert_bird_position(22, 17, ACTIVE, yellow_bird, 2.99)
     self.assert_bird_position(22, 17, ACTIVE, yellow_bird, 3.0)
     self.assert_bird_position(22, 17, ACTIVE, yellow_bird, 3.01)
     self.assert_bird_position(23, 17, ACTIVE, yellow_bird, 3.02)
     self.assert_bird_position(23, 18, ACTIVE, yellow_bird, 3.0300000000000002)
     self.assert_bird_position(23, 18, ACTIVE, yellow_bird, 3.04)
     self.assert_bird_position(23, 18, ACTIVE, yellow_bird, 3.05)
     self.assert_bird_position(23, 18, ACTIVE, yellow_bird, 3.06)
     self.assert_bird_position(24, 18, ACTIVE, yellow_bird, 3.0700000000000003)
     self.assert_bird_position(24, 18, ACTIVE, yellow_bird, 3.08)
     self.assert_bird_position(24, 18, ACTIVE, yellow_bird, 3.09)
     self.assert_bird_position(24, 18, ACTIVE, yellow_bird, 3.1)
     self.assert_bird_position(25, 18, ACTIVE, yellow_bird, 3.1100000000000003)
     self.assert_bird_position(25, 18, ACTIVE, yellow_bird, 3.12)
     self.assert_bird_position(25, 19, ACTIVE, yellow_bird, 3.13)
     self.assert_bird_position(25, 19, ACTIVE, yellow_bird, 3.1399999999999997)
     self.assert_bird_position(25, 19, ACTIVE, yellow_bird, 3.15)
     self.assert_bird_position(26, 19, ACTIVE, yellow_bird, 3.16)
     self.assert_bird_position(26, 19, ACTIVE, yellow_bird, 3.17)
     self.assert_bird_position(26, 19, ACTIVE, yellow_bird, 3.1799999999999997)
     self.assert_bird_position(26, 19, ACTIVE, yellow_bird, 3.19)
     self.assert_bird_position(26, 19, ACTIVE, yellow_bird, 3.2)
     self.assert_bird_position(27, 19, ACTIVE, yellow_bird, 3.21)
     self.assert_bird_position(27, 19, ACTIVE, yellow_bird, 3.2199999999999998)
     self.assert_bird_position(27, 20, ACTIVE, yellow_bird, 3.23)
     self.assert_bird_position(27, 20, ACTIVE, yellow_bird, 3.24)
     self.assert_bird_position(28, 20, ACTIVE, yellow_bird, 3.25)
     self.assert_bird_position(28, 20, ACTIVE, yellow_bird, 3.26)
     self.assert_bird_position(28, 20, ACTIVE, yellow_bird, 3.27)
     self.assert_bird_position(28, 20, ACTIVE, yellow_bird, 3.2800000000000002)
     self.assert_bird_position(28, 20, ACTIVE, yellow_bird, 3.29)
     self.assert_bird_position(29, 20, ACTIVE, yellow_bird, 3.3)
     self.assert_bird_position(29, 20, ACTIVE, yellow_bird, 3.31)
     self.assert_bird_position(29, 20, ACTIVE, yellow_bird, 3.3200000000000003)
     self.assert_bird_position(29, 20, ACTIVE, yellow_bird, 3.33)
     self.assert_bird_position(29, 20, ACTIVE, yellow_bird, 3.34)
     self.assert_bird_position(30, 21, ACTIVE, yellow_bird, 3.35)
     self.assert_bird_position(30, 21, ACTIVE, yellow_bird, 3.3600000000000003)
     self.assert_bird_position(30, 21, ACTIVE, yellow_bird, 3.37)
     self.assert_bird_position(30, 21, ACTIVE, yellow_bird, 3.38)
     self.assert_bird_position(30, 21, ACTIVE, yellow_bird, 3.3899999999999997)
     self.assert_bird_position(31, 21, ACTIVE, yellow_bird, 3.4)
     self.assert_bird_position(31, 21, ACTIVE, yellow_bird, 3.41)
     self.assert_bird_position(31, 21, ACTIVE, yellow_bird, 3.42)
     self.assert_bird_position(31, 21, ACTIVE, yellow_bird, 3.4299999999999997)
     self.assert_bird_position(32, 21, ACTIVE, yellow_bird, 3.44)
     self.assert_bird_position(32, 21, ACTIVE, yellow_bird, 3.45)
     self.assert_bird_position(32, 21, ACTIVE, yellow_bird, 3.46)
     self.assert_bird_position(32, 21, ACTIVE, yellow_bird, 3.4699999999999998)
     self.assert_bird_position(32, 21, ACTIVE, yellow_bird, 3.48)
     self.assert_bird_position(33, 22, ACTIVE, yellow_bird, 3.49)
     self.assert_bird_position(33, 22, ACTIVE, yellow_bird, 3.5)
     self.assert_bird_position(33, 22, ACTIVE, yellow_bird, 3.51)
     self.assert_bird_position(33, 22, ACTIVE, yellow_bird, 3.52)
     self.assert_bird_position(33, 22, ACTIVE, yellow_bird, 3.5300000000000002)
     self.assert_bird_position(34, 22, ACTIVE, yellow_bird, 3.54)
     self.assert_bird_position(34, 22, ACTIVE, yellow_bird, 3.55)
     self.assert_bird_position(34, 22, ACTIVE, yellow_bird, 3.56)
     self.assert_bird_position(34, 22, ACTIVE, yellow_bird, 3.5700000000000003)
     self.assert_bird_position(35, 22, ACTIVE, yellow_bird, 3.58)
     self.assert_bird_position(35, 22, ACTIVE, yellow_bird, 3.59)
     self.assert_bird_position(35, 22, ACTIVE, yellow_bird, 3.6)
     self.assert_bird_position(35, 22, ACTIVE, yellow_bird, 3.6100000000000003)
     self.assert_bird_position(35, 22, ACTIVE, yellow_bird, 3.62)
     self.assert_bird_position(36, 22, ACTIVE, yellow_bird, 3.63)
     self.assert_bird_position(36, 22, ACTIVE, yellow_bird, 3.6399999999999997)
     self.assert_bird_position(36, 22, ACTIVE, yellow_bird, 3.65)
     self.assert_bird_position(36, 22, ACTIVE, yellow_bird, 3.66)
     self.assert_bird_position(36, 22, ACTIVE, yellow_bird, 3.67)
     self.assert_bird_position(37, 23, ACTIVE, yellow_bird, 3.6799999999999997)
     self.assert_bird_position(37, 23, ACTIVE, yellow_bird, 3.69)
     self.assert_bird_position(37, 23, ACTIVE, yellow_bird, 3.7)
     self.assert_bird_position(37, 23, ACTIVE, yellow_bird, 3.71)
     self.assert_bird_position(37, 23, ACTIVE, yellow_bird, 3.7199999999999998)
     self.assert_bird_position(38, 23, ACTIVE, yellow_bird, 3.73)
     self.assert_bird_position(38, 23, ACTIVE, yellow_bird, 3.74)
     self.assert_bird_position(38, 23, ACTIVE, yellow_bird, 3.75)
     self.assert_bird_position(38, 23, ACTIVE, yellow_bird, 3.76)
     self.assert_bird_position(39, 23, ACTIVE, yellow_bird, 3.77)
     self.assert_bird_position(39, 23, ACTIVE, yellow_bird, 3.7800000000000002)
     self.assert_bird_position(39, 23, ACTIVE, yellow_bird, 3.79)
     self.assert_bird_position(39, 23, ACTIVE, yellow_bird, 3.8)
     self.assert_bird_position(39, 23, ACTIVE, yellow_bird, 3.81)
     self.assert_bird_position(40, 23, ACTIVE, yellow_bird, 3.8200000000000003)
     self.assert_bird_position(40, 23, ACTIVE, yellow_bird, 3.83)
     self.assert_bird_position(40, 23, ACTIVE, yellow_bird, 3.84)
     self.assert_bird_position(40, 23, ACTIVE, yellow_bird, 3.85)
     self.assert_bird_position(40, 23, ACTIVE, yellow_bird, 3.8600000000000003)
     self.assert_bird_position(41, 23, ACTIVE, yellow_bird, 3.87)
     self.assert_bird_position(41, 23, ACTIVE, yellow_bird, 3.88)
     self.assert_bird_position(41, 23, ACTIVE, yellow_bird, 3.8899999999999997)
     self.assert_bird_position(41, 23, ACTIVE, yellow_bird, 3.9)
     self.assert_bird_position(42, 23, ACTIVE, yellow_bird, 3.91)
     self.assert_bird_position(42, 23, ACTIVE, yellow_bird, 3.92)
     self.assert_bird_position(42, 23, ACTIVE, yellow_bird, 3.9299999999999997)
     self.assert_bird_position(42, 23, ACTIVE, yellow_bird, 3.94)
     self.assert_bird_position(42, 23, ACTIVE, yellow_bird, 3.95)
     self.assert_bird_position(43, 23, ACTIVE, yellow_bird, 3.96)
     self.assert_bird_position(43, 23, ACTIVE, yellow_bird, 3.9699999999999998)
     self.assert_bird_position(43, 23, ACTIVE, yellow_bird, 3.98)
     self.assert_bird_position(43, 23, ACTIVE, yellow_bird, 3.99)
     self.assert_bird_position(43, 23, ACTIVE, yellow_bird, 4.0)
     self.assert_bird_position(44, 23, ACTIVE, yellow_bird, 4.01)
     self.assert_bird_position(44, 23, ACTIVE, yellow_bird, 4.02)
     self.assert_bird_position(44, 23, ACTIVE, yellow_bird, 4.029999999999999)
     self.assert_bird_position(44, 23, ACTIVE, yellow_bird, 4.04)
     self.assert_bird_position(44, 23, ACTIVE, yellow_bird, 4.05)
     self.assert_bird_position(45, 23, ACTIVE, yellow_bird, 4.0600000000000005)
     self.assert_bird_position(45, 23, ACTIVE, yellow_bird, 4.07)
     self.assert_bird_position(45, 23, ACTIVE, yellow_bird, 4.08)
     self.assert_bird_position(45, 23, ACTIVE, yellow_bird, 4.09)
     self.assert_bird_position(46, 23, ACTIVE, yellow_bird, 4.1)
     self.assert_bird_position(46, 23, ACTIVE, yellow_bird, 4.109999999999999)
     self.assert_bird_position(46, 23, ACTIVE, yellow_bird, 4.12)
     self.assert_bird_position(46, 23, ACTIVE, yellow_bird, 4.13)
     self.assert_bird_position(46, 23, ACTIVE, yellow_bird, 4.140000000000001)
     self.assert_bird_position(47, 23, ACTIVE, yellow_bird, 4.15)
     self.assert_bird_position(47, 23, ACTIVE, yellow_bird, 4.16)
     self.assert_bird_position(47, 23, ACTIVE, yellow_bird, 4.17)
     self.assert_bird_position(47, 23, ACTIVE, yellow_bird, 4.18)
     self.assert_bird_position(47, 23, ACTIVE, yellow_bird, 4.1899999999999995)
     self.assert_bird_position(48, 23, ACTIVE, yellow_bird, 4.2)
     self.assert_bird_position(48, 23, ACTIVE, yellow_bird, 4.21)
     self.assert_bird_position(48, 23, ACTIVE, yellow_bird, 4.220000000000001)
     self.assert_bird_position(48, 23, ACTIVE, yellow_bird, 4.23)
     self.assert_bird_position(49, 23, ACTIVE, yellow_bird, 4.24)
     self.assert_bird_position(49, 23, ACTIVE, yellow_bird, 4.25)
     self.assert_bird_position(49, 23, ACTIVE, yellow_bird, 4.26)
     self.assert_bird_position(49, 23, ACTIVE, yellow_bird, 4.27)
     self.assert_bird_position(49, 23, ACTIVE, yellow_bird, 4.279999999999999)
     self.assert_bird_position(50, 23, ACTIVE, yellow_bird, 4.29)
     self.assert_bird_position(50, 23, ACTIVE, yellow_bird, 4.3)
     self.assert_bird_position(50, 23, ACTIVE, yellow_bird, 4.3100000000000005)
     self.assert_bird_position(50, 23, ACTIVE, yellow_bird, 4.32)
     self.assert_bird_position(50, 23, ACTIVE, yellow_bird, 4.33)
     self.assert_bird_position(51, 23, ACTIVE, yellow_bird, 4.34)
     self.assert_bird_position(51, 23, ACTIVE, yellow_bird, 4.35)
     self.assert_bird_position(51, 23, ACTIVE, yellow_bird, 4.359999999999999)
     self.assert_bird_position(51, 23, ACTIVE, yellow_bird, 4.37)
     self.assert_bird_position(51, 23, ACTIVE, yellow_bird, 4.38)
     self.assert_bird_position(52, 23, ACTIVE, yellow_bird, 4.390000000000001)
     self.assert_bird_position(52, 23, ACTIVE, yellow_bird, 4.4)
     self.assert_bird_position(52, 23, ACTIVE, yellow_bird, 4.41)
     self.assert_bird_position(52, 23, ACTIVE, yellow_bird, 4.42)
     self.assert_bird_position(53, 23, ACTIVE, yellow_bird, 4.43)
     self.assert_bird_position(53, 23, ACTIVE, yellow_bird, 4.4399999999999995)
     self.assert_bird_position(53, 23, ACTIVE, yellow_bird, 4.45)
     self.assert_bird_position(53, 23, ACTIVE, yellow_bird, 4.46)
     self.assert_bird_position(53, 23, ACTIVE, yellow_bird, 4.470000000000001)
     self.assert_bird_position(54, 23, ACTIVE, yellow_bird, 4.48)
     self.assert_bird_position(54, 23, ACTIVE, yellow_bird, 4.49)
     self.assert_bird_position(54, 23, ACTIVE, yellow_bird, 4.5)
     self.assert_bird_position(54, 23, ACTIVE, yellow_bird, 4.51)
     self.assert_bird_position(54, 23, ACTIVE, yellow_bird, 4.52)
     self.assert_bird_position(55, 23, ACTIVE, yellow_bird, 4.529999999999999)
     self.assert_bird_position(55, 23, ACTIVE, yellow_bird, 4.54)
     self.assert_bird_position(55, 23, ACTIVE, yellow_bird, 4.55)
     self.assert_bird_position(55, 23, ACTIVE, yellow_bird, 4.5600000000000005)
     self.assert_bird_position(56, 22, ACTIVE, yellow_bird, 4.57)
     self.assert_bird_position(56, 22, ACTIVE, yellow_bird, 4.58)
     self.assert_bird_position(56, 22, ACTIVE, yellow_bird, 4.59)
     self.assert_bird_position(56, 22, ACTIVE, yellow_bird, 4.6)
     self.assert_bird_position(56, 22, ACTIVE, yellow_bird, 4.609999999999999)
     self.assert_bird_position(57, 22, ACTIVE, yellow_bird, 4.62)
     self.assert_bird_position(57, 22, ACTIVE, yellow_bird, 4.63)
     self.assert_bird_position(57, 22, ACTIVE, yellow_bird, 4.640000000000001)
     self.assert_bird_position(57, 22, ACTIVE, yellow_bird, 4.65)
     self.assert_bird_position(57, 22, ACTIVE, yellow_bird, 4.66)
     self.assert_bird_position(58, 22, ACTIVE, yellow_bird, 4.67)
     self.assert_bird_position(58, 22, ACTIVE, yellow_bird, 4.68)
     self.assert_bird_position(58, 22, ACTIVE, yellow_bird, 4.6899999999999995)
     self.assert_bird_position(58, 22, ACTIVE, yellow_bird, 4.7)
     self.assert_bird_position(58, 22, ACTIVE, yellow_bird, 4.71)
     self.assert_bird_position(59, 22, ACTIVE, yellow_bird, 4.720000000000001)
     self.assert_bird_position(59, 22, ACTIVE, yellow_bird, 4.73)
     self.assert_bird_position(59, 22, ACTIVE, yellow_bird, 4.74)
     self.assert_bird_position(59, 22, ACTIVE, yellow_bird, 4.75)
     self.assert_bird_position(60, 21, ACTIVE, yellow_bird, 4.76)
     self.assert_bird_position(60, 21, ACTIVE, yellow_bird, 4.77)
     self.assert_bird_position(60, 21, ACTIVE, yellow_bird, 4.779999999999999)
     self.assert_bird_position(60, 21, ACTIVE, yellow_bird, 4.79)
     self.assert_bird_position(60, 21, ACTIVE, yellow_bird, 4.8)
     self.assert_bird_position(61, 21, ACTIVE, yellow_bird, 4.8100000000000005)
     self.assert_bird_position(61, 21, ACTIVE, yellow_bird, 4.82)
     self.assert_bird_position(61, 21, ACTIVE, yellow_bird, 4.83)
     self.assert_bird_position(61, 21, ACTIVE, yellow_bird, 4.84)
     self.assert_bird_position(61, 21, ACTIVE, yellow_bird, 4.85)
     self.assert_bird_position(62, 21, ACTIVE, yellow_bird, 4.859999999999999)
     self.assert_bird_position(62, 21, ACTIVE, yellow_bird, 4.87)
     self.assert_bird_position(62, 21, ACTIVE, yellow_bird, 4.88)
     self.assert_bird_position(62, 21, ACTIVE, yellow_bird, 4.890000000000001)
     self.assert_bird_position(63, 20, ACTIVE, yellow_bird, 4.9)
     self.assert_bird_position(63, 20, ACTIVE, yellow_bird, 4.91)
     self.assert_bird_position(63, 20, ACTIVE, yellow_bird, 4.92)
     self.assert_bird_position(63, 20, ACTIVE, yellow_bird, 4.93)
     self.assert_bird_position(63, 20, ACTIVE, yellow_bird, 4.9399999999999995)
     self.assert_bird_position(64, 20, ACTIVE, yellow_bird, 4.95)
     self.assert_bird_position(64, 20, ACTIVE, yellow_bird, 4.96)
     self.assert_bird_position(64, 20, ACTIVE, yellow_bird, 4.970000000000001)
     self.assert_bird_position(64, 20, ACTIVE, yellow_bird, 4.98)
     self.assert_bird_position(64, 20, ACTIVE, yellow_bird, 4.99)
     self.assert_bird_position(65, 20, ACTIVE, yellow_bird, 5.0)
     self.assert_bird_position(65, 20, ACTIVE, yellow_bird, 5.01)
     self.assert_bird_position(65, 19, ACTIVE, yellow_bird, 5.02)
     self.assert_bird_position(65, 19, ACTIVE, yellow_bird, 5.029999999999999)
     self.assert_bird_position(65, 19, ACTIVE, yellow_bird, 5.04)
     self.assert_bird_position(66, 19, ACTIVE, yellow_bird, 5.05)
     self.assert_bird_position(66, 19, ACTIVE, yellow_bird, 5.0600000000000005)
     self.assert_bird_position(66, 19, ACTIVE, yellow_bird, 5.07)
     self.assert_bird_position(66, 19, ACTIVE, yellow_bird, 5.08)
     self.assert_bird_position(67, 19, ACTIVE, yellow_bird, 5.09)
     self.assert_bird_position(67, 19, ACTIVE, yellow_bird, 5.1)
     self.assert_bird_position(67, 19, ACTIVE, yellow_bird, 5.109999999999999)
     self.assert_bird_position(67, 19, ACTIVE, yellow_bird, 5.12)
     self.assert_bird_position(67, 18, ACTIVE, yellow_bird, 5.13)
     self.assert_bird_position(68, 18, ACTIVE, yellow_bird, 5.140000000000001)
     self.assert_bird_position(68, 18, ACTIVE, yellow_bird, 5.15)
     self.assert_bird_position(68, 18, ACTIVE, yellow_bird, 5.16)
     self.assert_bird_position(68, 18, ACTIVE, yellow_bird, 5.17)
     self.assert_bird_position(68, 18, ACTIVE, yellow_bird, 5.18)
     self.assert_bird_position(69, 18, ACTIVE, yellow_bird, 5.1899999999999995)
     self.assert_bird_position(69, 18, ACTIVE, yellow_bird, 5.2)
     self.assert_bird_position(69, 18, ACTIVE, yellow_bird, 5.21)
     self.assert_bird_position(69, 17, ACTIVE, yellow_bird, 5.220000000000001)
     self.assert_bird_position(70, 17, ACTIVE, yellow_bird, 5.23)
     self.assert_bird_position(70, 17, ACTIVE, yellow_bird, 5.24)
     self.assert_bird_position(70, 17, ACTIVE, yellow_bird, 5.25)
     self.assert_bird_position(70, 17, ACTIVE, yellow_bird, 5.26)
     self.assert_bird_position(70, 17, ACTIVE, yellow_bird, 5.27)
     self.assert_bird_position(71, 17, ACTIVE, yellow_bird, 5.279999999999999)
     self.assert_bird_position(71, 17, ACTIVE, yellow_bird, 5.29)
     self.assert_bird_position(71, 17, ACTIVE, yellow_bird, 5.3)
     self.assert_bird_position(71, 16, ACTIVE, yellow_bird, 5.3100000000000005)
     self.assert_bird_position(71, 16, ACTIVE, yellow_bird, 5.32)
     self.assert_bird_position(72, 16, ACTIVE, yellow_bird, 5.33)
     self.assert_bird_position(72, 16, ACTIVE, yellow_bird, 5.34)
     self.assert_bird_position(72, 16, ACTIVE, yellow_bird, 5.35)
     self.assert_bird_position(72, 16, ACTIVE, yellow_bird, 5.359999999999999)
     self.assert_bird_position(72, 16, ACTIVE, yellow_bird, 5.37)
     self.assert_bird_position(73, 16, ACTIVE, yellow_bird, 5.38)
     self.assert_bird_position(73, 15, ACTIVE, yellow_bird, 5.390000000000001)
     self.assert_bird_position(73, 15, ACTIVE, yellow_bird, 5.4)
     self.assert_bird_position(73, 15, ACTIVE, yellow_bird, 5.41)
     self.assert_bird_position(74, 15, ACTIVE, yellow_bird, 5.42)
     self.assert_bird_position(74, 15, ACTIVE, yellow_bird, 5.43)
     self.assert_bird_position(74, 15, ACTIVE, yellow_bird, 5.4399999999999995)
     self.assert_bird_position(74, 15, ACTIVE, yellow_bird, 5.45)
     self.assert_bird_position(74, 15, ACTIVE, yellow_bird, 5.46)
     self.assert_bird_position(75, 14, ACTIVE, yellow_bird, 5.470000000000001)
     self.assert_bird_position(75, 14, ACTIVE, yellow_bird, 5.48)
     self.assert_bird_position(75, 14, ACTIVE, yellow_bird, 5.49)
     self.assert_bird_position(75, 14, ACTIVE, yellow_bird, 5.5)
     self.assert_bird_position(75, 14, ACTIVE, yellow_bird, 5.51)
     self.assert_bird_position(76, 14, ACTIVE, yellow_bird, 5.52)
     self.assert_bird_position(76, 14, ACTIVE, yellow_bird, 5.529999999999999)
     self.assert_bird_position(76, 13, ACTIVE, yellow_bird, 5.54)
     self.assert_bird_position(76, 13, ACTIVE, yellow_bird, 5.55)
     self.assert_bird_position(77, 13, ACTIVE, yellow_bird, 5.5600000000000005)
     self.assert_bird_position(77, 13, ACTIVE, yellow_bird, 5.57)
     self.assert_bird_position(77, 13, ACTIVE, yellow_bird, 5.58)
     self.assert_bird_position(77, 13, ACTIVE, yellow_bird, 5.59)
     self.assert_bird_position(77, 13, ACTIVE, yellow_bird, 5.6)
     self.assert_bird_position(78, 12, ACTIVE, yellow_bird, 5.609999999999999)
     self.assert_bird_position(78, 12, ACTIVE, yellow_bird, 5.62)
     self.assert_bird_position(78, 12, ACTIVE, yellow_bird, 5.63)
     self.assert_bird_position(78, 12, ACTIVE, yellow_bird, 5.640000000000001)
     self.assert_bird_position(78, 12, ACTIVE, yellow_bird, 5.65)
     self.assert_bird_position(79, 12, ACTIVE, yellow_bird, 5.66)
     self.assert_bird_position(79, 12, ACTIVE, yellow_bird, 5.67)
     self.assert_bird_position(79, 11, ACTIVE, yellow_bird, 5.68)
     self.assert_bird_position(79, 11, ACTIVE, yellow_bird, 5.6899999999999995)
     self.assert_bird_position(79, 11, ACTIVE, yellow_bird, 5.7)
     self.assert_bird_position(80, 11, ACTIVE, yellow_bird, 5.71)
     self.assert_bird_position(80, 11, ACTIVE, yellow_bird, 5.720000000000001)
     self.assert_bird_position(80, 11, ACTIVE, yellow_bird, 5.73)
     self.assert_bird_position(80, 10, ACTIVE, yellow_bird, 5.74)
     self.assert_bird_position(81, 10, ACTIVE, yellow_bird, 5.75)
     self.assert_bird_position(81, 10, ACTIVE, yellow_bird, 5.76)
     self.assert_bird_position(81, 10, ACTIVE, yellow_bird, 5.77)
     self.assert_bird_position(81, 10, ACTIVE, yellow_bird, 5.779999999999999)
     self.assert_bird_position(81, 10, ACTIVE, yellow_bird, 5.79)
     self.assert_bird_position(82, 9, ACTIVE, yellow_bird, 5.8)
     self.assert_bird_position(82, 9, ACTIVE, yellow_bird, 5.8100000000000005)
     self.assert_bird_position(82, 9, ACTIVE, yellow_bird, 5.82)
     self.assert_bird_position(82, 9, ACTIVE, yellow_bird, 5.83)
     self.assert_bird_position(82, 9, ACTIVE, yellow_bird, 5.84)
     self.assert_bird_position(83, 9, ACTIVE, yellow_bird, 5.85)
     self.assert_bird_position(83, 8, ACTIVE, yellow_bird, 5.859999999999999)
     self.assert_bird_position(83, 8, ACTIVE, yellow_bird, 5.87)
     self.assert_bird_position(83, 8, ACTIVE, yellow_bird, 5.88)
     self.assert_bird_position(84, 8, ACTIVE, yellow_bird, 5.890000000000001)
     self.assert_bird_position(84, 8, ACTIVE, yellow_bird, 5.9)
     self.assert_bird_position(84, 8, ACTIVE, yellow_bird, 5.91)
     self.assert_bird_position(84, 7, ACTIVE, yellow_bird, 5.92)
     self.assert_bird_position(84, 7, ACTIVE, yellow_bird, 5.93)
     self.assert_bird_position(85, 7, ACTIVE, yellow_bird, 5.9399999999999995)
     self.assert_bird_position(85, 7, ACTIVE, yellow_bird, 5.95)
     self.assert_bird_position(85, 7, ACTIVE, yellow_bird, 5.96)
     self.assert_bird_position(85, 6, ACTIVE, yellow_bird, 5.970000000000001)
     self.assert_bird_position(85, 6, ACTIVE, yellow_bird, 5.98)
     self.assert_bird_position(86, 6, ACTIVE, yellow_bird, 5.99)
     self.assert_bird_position(86, 6, ACTIVE, yellow_bird, 6.0)
     self.assert_bird_position(86, 6, ACTIVE, yellow_bird, 6.01)
     self.assert_bird_position(86, 5, ACTIVE, yellow_bird, 6.02)
     self.assert_bird_position(86, 5, ACTIVE, yellow_bird, 6.03)
     self.assert_bird_position(87, 5, ACTIVE, yellow_bird, 6.04)
     self.assert_bird_position(87, 5, ACTIVE, yellow_bird, 6.05)
     self.assert_bird_position(87, 5, ACTIVE, yellow_bird, 6.06)
     self.assert_bird_position(87, 5, ACTIVE, yellow_bird, 6.07)
     self.assert_bird_position(88, 4, ACTIVE, yellow_bird, 6.08)
     self.assert_bird_position(88, 4, ACTIVE, yellow_bird, 6.09)
     self.assert_bird_position(88, 4, ACTIVE, yellow_bird, 6.1)
     self.assert_bird_position(88, 4, ACTIVE, yellow_bird, 6.11)
     self.assert_bird_position(88, 4, ACTIVE, yellow_bird, 6.12)
     self.assert_bird_position(89, 3, ACTIVE, yellow_bird, 6.13)
     self.assert_bird_position(89, 3, ACTIVE, yellow_bird, 6.14)
     self.assert_bird_position(89, 3, ACTIVE, yellow_bird, 6.15)
     self.assert_bird_position(89, 3, ACTIVE, yellow_bird, 6.16)
     self.assert_bird_position(89, 3, ACTIVE, yellow_bird, 6.17)
     self.assert_bird_position(90, 2, ACTIVE, yellow_bird, 6.18)
     self.assert_bird_position(90, 2, ACTIVE, yellow_bird, 6.19)
     self.assert_bird_position(90, 2, ACTIVE, yellow_bird, 6.2)
     self.assert_bird_position(90, 2, ACTIVE, yellow_bird, 6.21)
     self.assert_bird_position(91, 1, ACTIVE, yellow_bird, 6.22)
     self.assert_bird_position(91, 1, ACTIVE, yellow_bird, 6.23)
     self.assert_bird_position(91, 1, ACTIVE, yellow_bird, 6.24)
     self.assert_bird_position(91, 1, ACTIVE, yellow_bird, 6.25)
     self.assert_bird_position(91, 1, ACTIVE, yellow_bird, 6.26)
     self.assert_bird_position(92, 0, ACTIVE, yellow_bird, 6.29)
     yellow_bird.ground_clash()
     self.assertEqual(DESTROYED, yellow_bird.status)
예제 #3
0
 def test_status(self):
     yellow_bird = YellowBird(1, 1)
     self.assertEqual('Y', yellow_bird.character())
     actor_on_same_position = Actor()
     yellow_bird.clash(actor_on_same_position)
     self.assertEqual('y', yellow_bird.character())
import sys

project_dir = path.dirname(__file__)
project_dir = path.join('..')
sys.path.append(project_dir)

from actors import YellowBird, RedBird, Obstacle, Pig
from phase import Phase
from graphics_tk import run_phase

if __name__ == '__main__':
    fase = Phase(intervalo_de_colisao=32)


    # Adicionar Pássaros Vermelhos
    for i in range(5):
        fase.add_birds(RedBird(30, 30))
    # Adicionar Pássaros Amarelos
    for i in range(30):
        fase.add_birds(YellowBird(30, 30))


    # Obstaculos
    for i in range(30, 480, 32):
        fase.add_obstacles(Obstacle(300, i))

    # Porcos
    for i in range(30, 300, 32):
        fase.add_pigs(Pig(600, i))

    run_phase(fase)
예제 #5
0
 def teste_status(self):
     passaro_amarelo = YellowBird(1, 1)
     self.assertEqual('Y', passaro_amarelo.character())
     outro_ator_na_mesma_posicao = Actor()
     passaro_amarelo.clash(outro_ator_na_mesma_posicao)
     self.assertEqual('y', passaro_amarelo.character())
예제 #6
0
# -*- coding: utf-8 -*-
from actors import RedBird, YellowBird, Pig, Obstacle
from phase import Phase
import placa_grafica

fase_exemplo = Phase()
passaros = [RedBird(3, 3), YellowBird(3, 3), YellowBird(3, 3)]
porcos = [Pig(78, 1), Pig(70, 1)]
obstaculos = [Obstacle(31, 10)]

fase_exemplo.add_birds(*passaros)
fase_exemplo.add_pigs(*porcos)
fase_exemplo.add_obstacles(*obstaculos)

# Solução para ganhar
# fase_exemplo.lancar(45, 1)
# fase_exemplo.lancar(63, 3)
# fase_exemplo.lancar(23, 4)

if __name__ == '__main__':
    placa_grafica.animar(fase_exemplo)