Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Nexxtron

Alter Hase

  • »Nexxtron« ist der Autor dieses Themas

Beiträge: 424

Wohnort: Heilbronn

Beruf: Student - Software Engineering

  • Private Nachricht senden

1

23.01.2009, 18:03

lebensbalken

hi ich bins mal wieder und hab ein frage mitgebracht:

wie kann ich einen Lebensbalken realisieren?
...geladen hab ich ihn, position gesetzt und er soll 120 Leben haben, nur ich schaff irgendwie nicht dass der nur ein stück anzeigt, als erstes muss ich ja mein lebensbalkenx durch 120 teilen dannach hab ich den wert für ein Leben...dannach weis ich nich weiter wie ich des dann render
New Project: Operation CityRacer

2

23.01.2009, 18:08

Ist es ein Rechteck? Dann brauchst du es ja nur zu verbreitern.
Ist es eine Grafik, kannst du sie z.B. schrittweise aufdecken.
usw.

Hast du ein Bild davon?
Und womit realisierst du das Ganze?
fka tm

Viktor

Alter Hase

Beiträge: 533

Wohnort: Ludwigshafen

Beruf: Student

  • Private Nachricht senden

3

23.01.2009, 18:18

Wäre es nicht sinnvoller, das ganze prozentual zu lösen?
Sprich: Streifenanzahl = MomLP/MaxLP*100
Damit rechnest du dann weiter:
momentane_Balkenbreite = Gesamtbalkenbreite/100*Streifenanzahl
Ansonsten müsste der Balken größer werden, wenn du 140 Lebenspunkte hast.
Irgendwann wird er dann auch nicht mehr auf den Bildschirm passen ;)

Nexxtron

Alter Hase

  • »Nexxtron« ist der Autor dieses Themas

Beiträge: 424

Wohnort: Heilbronn

Beruf: Student - Software Engineering

  • Private Nachricht senden

4

23.01.2009, 18:54

es is ne grafik, sfml
und hier

http://img217.imageshack.us/my.php?image=lebensbalkenpg4.png

Edit: son kack
New Project: Operation CityRacer

5

23.01.2009, 18:57

Zitat von »"Nexxtron"«



Jetzt bräuchte ich nur noch Zugriff auf deinen Rechner. ;)
fka tm

6

23.01.2009, 19:04

Mit nur einem Balken wirst du nicht weit kommen, du brauchst entweder
Streifen oder musst eine Funktion zum Füllen haben.
Dann ist das Prinzip ja einfach:

Am Anfang 100% voll - oder eben 100 LP.
Nach jeder Attacke (bsp. 3 LP) leert sich der Balken,bei LP ziehst du einfach die LP, die die Attacke zufügt, von der aktuellen LP ab.
Natürlich kannst du das auch einfach mit Prozenten machen.

Wie genau du das mit SFML machst, weiß ich nicht, aber es ist immer ratsam vorher zu überlegen, wie das Prinzip funktioniert.
MfG Shiver!

„Ideen sind nur Ausgangspunkte. Um zu wissen, was man zeichnen will, muss man zu zeichnen anfangen.“ Pablo Picasso

Ibot Development - Mein Weg zum eigenen 2D RPG

7

23.01.2009, 19:08

Oops, dann war mein Vorschlag (zweiter Post) ja wohl eher ein Ladebalken. :roll: :)
fka tm

Nexxtron

Alter Hase

  • »Nexxtron« ist der Autor dieses Themas

Beiträge: 424

Wohnort: Heilbronn

Beruf: Student - Software Engineering

  • Private Nachricht senden

8

23.01.2009, 19:09

ich würde es so machen dass ich wie bei einer animation(mehrere Bilder)
dass ich da nur noch 10% oder so anzeige aber immer wenn ichs mit paar rechnungen probier gehts nie..es gibt ja ne funtion in sfml aber ich weiss nicht wie ich mit der umgehen soll.....
hier:

C-/C++-Quelltext

1
2
3
sf::IntRect Rect(int Left, int Top, int Bottom, int Right); 

SpriteAnimation.SetSubRect(Rect);





Edit: TrikkieMikkie is ja fast des gleiche Prinzip oder?
New Project: Operation CityRacer

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

9

23.01.2009, 19:16

Erstelle zwei Grafiken: Einmal die leere Flasche und dann nochmal die gefüllte Flasche. Beim rendern zeichnest du zuerst die gesamte leere Flasche an und danach den vorher prozentual errechneten Anteil der gefüllten Flasche. Oder du gibst der Flasche Alpha-Werte, dann brauchst du nur vorher einen grünen Balken mit entsprechender Länge zu rendern. Die Breite des zu rendernden Balken/gefüllte Flasche kriegst du durch (akt_hp / max_hp) * max_laenge_balken.


Gruß Marius

10

23.01.2009, 19:20

Zitat von »"Nexxtron"«

Edit: TrikkieMikkie is ja fast des gleiche Prinzip oder?

Yep, nur in die andere Richtung.
fka tm

Werbeanzeige