Va axborot texnologiyalari 10-sinf toshkent – 2021


Harakat tezligini sozlash



Yüklə 27,94 Mb.
Pdf görüntüsü
səhifə123/153
tarix05.09.2023
ölçüsü27,94 Mb.
#141598
1   ...   119   120   121   122   123   124   125   126   ...   153
10-sinf informatika ..

Harakat tezligini sozlash
Dastur ishga tushirilgach, oyna markazida yashil rangli sprayt paydo bo‘ladi va o‘ng tomonga 
harakatlana boshlaydi. Sprayt oyna oxiriga yetib borgach, qayta oyna markazida paydo 
bo‘ladi va o‘ng tomonga harakatlanadi. Ushbu sikl to‘xtovsiz ravishda davom etadi. 
Spraytning oyna markazidan o‘ng tomon harakatlanib, oyna oxirigacha yetib borgach, yana 
qayta oyna markazida paydo bo‘lib qolishi biroz mantiqqa to‘g‘ri kelmaydi. Sprayt harakatini 
chiroyliroq chiqarish maqsadida u oynaning o‘ng tomoniga yetib borgach, uning qayta 
joylashuvini oynaning chap boshiga o‘zgartirish zarur. Buning uchun rect funksiyasining 
quyidagi rasmda keltirilgan xossalaridan foydalaniladi:
Sprayt o‘yin oynasida chap tomondan o‘ng tomonga uzluksiz 
harakatlanishini ta’minlash uchun update() funksiyasi tanasiga 
shart amali qo‘shiladi. Ya’ni spraytning rect.left xossasi oynaning 
kengligidan oshib ketsa, u holda spraytning rect.right xossasiga 0 
qiymati beriladi. 
 
Misol.
Yangi sprayt yaratilib, uni gorizontal bo‘yicha chapdan o‘ng tomonga uzluksiz 
harakatlantirish dasturi tuzilsin.
class Player(pygame.sprite.Sprite):
Sinf e’lon qilindi.
def __init__(self):
init funksiyasi ishga tushdi.
pygame.sprite.Sprite.__init__(self)
“Self” parametriga “Sprite” sinfi 
funksiyalari biriktirildi.
self.image = pygame.Surface((50, 50))
Sprayt o‘lchamlari berildi.
self.image.fill(GREEN)
Sprayt rangi berildi.
self.rect = self.image.get_rect()
Sprayt qobig‘i yaratildi.
self.rect.center = (WIDTH / 2, HEIGHT / 2)
Sprayt oyna markaziga joylashtirildi.
def update(self):
update funksiyasi e’lon qilindi.
self.rect.x += 5
rect.x parametri 5 ga oshirildi.
if self.rect.left > WIDTH:
Spraytning chap qirrasi oyna enidan 
katta ekanligi tekshirildi.
self.rect.right = 0
Shart rost bo‘lsa, spraytning o‘ng qirrasi 
qiymatiga 0 o‘zlashtirildi.

Yüklə 27,94 Mb.

Dostları ilə paylaş:
1   ...   119   120   121   122   123   124   125   126   ...   153




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin