-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
135 lines (109 loc) · 2.68 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
import turtle
import random
import winsound
pencere = turtle.Screen()
pencere.bgcolor('black')
pencere.title('Evreni Kurtar')
pencere.bgpic('uzay.gif')
pencere.setup(width=600, height=600)
turtle.register_shape('oyuncu.gif')
turtle.register_shape('dusman.gif')
turtle.register_shape('ates.gif')
oyuncu = turtle.Turtle()
oyuncu.color('red')
oyuncu.speed(0)
oyuncu.shape('oyuncu.gif')
oyuncu.setheading(90)
oyuncu.penup()
oyuncu.goto(0, -250)
oyuncuhizi = 20
ates = turtle.Turtle()
ates.color('green')
ates.speed(0)
ates.shape('ates.gif')
ates.setheading(90)
ates.penup()
ates.goto(0, -240)
ateshizi = 40
ates.hideturtle()
ates.turtlesize(1, 1)
ateskontrol = False
yaz = turtle.Turtle()
yaz.color('white')
yaz.speed(0)
yaz.penup()
yaz.goto(0, 200)
yaz.hideturtle()
def atesgit():
y = ates.ycor()
y = y + ateshizi
ates.sety(y)
def sola_git():
x = oyuncu.xcor()
x = x - oyuncuhizi
if x < -300:
x = -300
oyuncu.setx(x)
def saga_git():
x = oyuncu.xcor()
x = x + oyuncuhizi
if x > 300:
x = 300
oyuncu.setx(x)
def yukari_git():
y = oyuncu.ycor()
y = y + oyuncuhizi
if y > 270:
y = 270
oyuncu.sety(y)
def asagi_git():
y = oyuncu.ycor()
y = y - oyuncuhizi
if y < 270:
y = -270
oyuncu.sety(y)
def ates_et():
global ateskontrol
x = oyuncu.xcor()
y = oyuncu.ycor() + 20
ates.goto(x, y)
ates.showturtle()
ateskontrol = True
hedefler = []
for i in range(7):
hedefler.append(turtle.Turtle())
for hedef in hedefler:
hedef.color('red')
hedef.speed(0)
hedef.turtlesize(1, 1)
hedef.shape('dusman.gif')
hedef.penup()
hedef.setheading(90)
x = random.randint(-280, 280)
y = random.randint(180, 260)
hedef.goto(x, y)
pencere.listen()
pencere.onkey(yukari_git, 'Up')
pencere.onkey(asagi_git, 'Down')
pencere.onkey(sola_git, 'Left')
pencere.onkey(saga_git, 'Right')
pencere.onkey(ates_et, 'space')
while True:
if ateskontrol:
atesgit()
for hedef in hedefler:
y = hedef.ycor()
y = y - 2
hedef.sety(y)
if hedef.distance(ates) < 20:
ates.hideturtle()
hedef.hideturtle()
hedefler.pop(hedefler.index(hedef))
if hedef.ycor() < -270 or hedef.distance(oyuncu) < 20:
yaz.write('Olamaz, Kaybettin :(',
align='center',
font=('Courier', 24, 'bold'))
if len(hedefler) == 0:
yaz.write('Tebrikler,Kazandınız',
align='center',
font=('Courier', 24, 'bold'))