Seite 1 von 1

Menu - Surfaces

Verfasst: Freitag 21. September 2012, 18:29
von Don Polettone
Hi nochmals,

muss das mal loswerden, das Problem hab ich schon lange.

Es geht um Menus in Spielen. Dies sind ja Surfaces, die sich in deren Updatemethode selbst beblitten mit den aktuellen Werten (HP, MP, Punkte, was auch immer halt). Diese Werte generiere ich natürlich mit Fonts, und via Pygame. Nun habe ich aber immer wieder dasselbe Problem: Fonts sind Surfaces mit Transparenz. Das Menü müsste also jeweils "geleert" werden, ehe die neuen Werte geblittet werden, sonst gibt's Font-Ghetto :mrgreen:

Wenn ich nun ein schönes Menü will mit Transparenz und selbstgezeichnetem fancy Rahmen und so und also wirklich so richtig sexy und alles - wie mache ich das..? Ich meine, den screen male ich einfach jedes Frame schwarz aus und basta, dann kann ich wieder blitten was ich will, aber beim Menü geht das natürlich dann nicht. Ich weiss, für Euch total Banane, aber jetzt echt: ich habe bis anhin keine Lösung, die mir gefällt und von der ich mir vorstellen könnte, dass Ihr diese gutheissen würdet...

Erleuchtung?

Für jeden Tipp dankbar,


Henry

Re: Menu - Surfaces

Verfasst: Freitag 21. September 2012, 20:27
von Hyperion
Ich kapiere irgend wie Deine Problematik nicht wirklich, aber ich hatte vor einiger Zeit mal als Demo für einen User ein Menü für Pygame geschrieben. Vielleicht bringt Dir das ja irgend wie Erleuchtung oder Nutzen.

Re: Menu - Surfaces

Verfasst: Freitag 21. September 2012, 21:36
von Don Polettone
danke Hyperion,

von der Logik her kann ich da einiges abkupfern :D

Ich glaube, mein Hauptproblem ist, wie ich ein dirty Surface wieder clean kriege, ohne sie neu laden zu müssen. Mit convert() scheint es nicht zu klappen..?

Re: Menu - Surfaces

Verfasst: Freitag 21. September 2012, 23:03
von EyDu
Einfach die gesamte Anzeige zu beginn des Frames mit Schwarz überzeichnen und anschließend das komplette Menü neu zeichnen. Ich frage mich allerdings, was du genau laden möchtest.

Re: Menu - Surfaces

Verfasst: Freitag 21. September 2012, 23:47
von Don Polettone
Jetzt ist alles klar, danke! Ich hatte die Fonts jeweils direkt auf die Surface des Menus selbst geblittet statt erst das Menü und dann die Werte darin auf den screen... Jetzt passt's.

und die Hitabfrage mit den transparenten Pixeln und dem schnellen Projektil auch. Langsam wird's interessant!

Dann kann's ja weitergehen - oh yeah :mrgreen: