On 2020-05-08 19:35, Helena Zubčeková wrote:
> Môj problém v tom, ako to urobiť, myslím leží tu:
> 1/ Kreslím všetky objekty naraz pomocou draw:
>
> def draw():
> window.clear()
> ďalší kód
> # Draw
> main_batch.draw(
Za to main_batch.draw() můžeš dát cyklus: pro každý objekt nakresli
kolečko kolem toho objektu.
>
> a tu:
> window.push_handlers(
> on_draw=draw,
> )
>
>
> 2/ main_batch plním do spritov tu:
> main_batch = pyglet.graphics.Batch()
>
> class SpaceObject():
> def __init__(self, ostatné veci)
> self.sprite = pyglet.sprite.Sprite(image, batch=main_batch)
>
> 3/ a potom konkrétny image, ktorý to má hodiť, vyberám v jednotlivých
> objektoch:
>
> class Spaceship(SpaceObject) a class Asteroid(SpaceObject)
>
> - keďže chcem každý kruh aby bral do úvahy hodnoty x, y, radium toho
> konkrétneho objektu, tak mi dáva zmsel tú draw_circle funkciu zavolať v
> rámci classy Spaceship a Asteroid.
A můžeš to udělat i takhle. Ale dá to víc práce; pro kód který za chvíli
smažeš (protože kolečka v hotové hře nechceš) bych to spíš doporučil
udělat přímo ve funkci draw().
> Takže... kedže nejde nahradiť image v sprite tým kruhom, pretože sprite
> potrebuje png, a navyše ten kruh aj tak chceme okolo toho obrázku... tak
> mi ostáva už jedine to, aby som si zavolala draw_circle v rámci každého
> z tých objektov a použiť tam self.x, self.y a self.radium. Až na to, že
> to som skúšala, a vždy mi to napísalo, že x y a radium sú unidentified :(
>
> Kde je v tejto mojej logike chyba?
Z tohohle popisu to nepoznám :(
Pošleš prosím kód s touhle chybou?
> Druhá vec, čo ma napadla, je upraviť funkciu draw, a po
> main_batch.draw() zavolať draw_circle, ale v tom prípade predsa nemá
> odkiaľ vziať hodnoty x, y a radium...
Zkus projít všechny objekty, kolem kterých se kolečka kreslí, a pro
každý z nich použít x, y, radius daného objektu.
> Veľmi ďakujem, kľudne si môžeš dať načas s odpovedaním, nechcem ťa
> preťažiť :)
>
> Heli
>
>
>
>
>
>
> Dne pátek 8. května 2020 19:16:02 UTC+2 Petr Viktorin napsal(a):
>
> On 2020-05-08 18:06, Helena Zubčeková wrote:
> > Ahoj,
> >
> > Prichádzam s ďalšou otázkou - tentokrát v záverečnom projekte
> Asteroids.
> > Tu je zadanie:
> > "Aby bylo vidět co si hra o objektech „myslí”, nakresli si nad
> každým
> > objektem příslušné kolečko. Nejlepší je to udělat pomocí
>
pyglet.gl <
http://pyglet.gl>
> >
> <
http://pyglet.readthedocs.org/en/latest/programming_guide/gl.html
> --
> --
> E-mailová skupina
djan...@googlegroups.com
> Správa:
http://groups.google.cz/group/django-cs
> ---
> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny
> „django-cs“ ve Skupinách Google.
> Chcete-li zrušit odběr skupiny a přestat dostávat e‑maily ze skupiny,
> zašlete e-mail na adresu
django-cs+...@googlegroups.com
> <mailto:
django-cs+...@googlegroups.com>.
> Chcete-li tuto diskusi zobrazit na webu, navštivte
>
https://groups.google.com/d/msgid/django-cs/8aad8535-7786-403b-a714-db6294ae4c1a%40googlegroups.com
> <
https://groups.google.com/d/msgid/django-cs/8aad8535-7786-403b-a714-db6294ae4c1a%40googlegroups.com?utm_medium=email&utm_source=footer>.