PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HP anzeigen!



Irresolute Warrior
04.05.2004, 01:34
Hallo! :)
Also, ich möchte in einem eigenen KS, was auf der Karte selber stattfindet (man wird nicht in eine Extra-Kampf-Map teleportiert) die HP eines (!) Helden auf dem Bildschirm darstellen lassen, was ist der beste weg und die beste Formel (d.h.: Variabel-Berechnung+Abhängigkeit von Pics!)

Hat da jemand eine gute Idee?

dadie
04.05.2004, 01:46
so habe ich das früher gelöst siht recht billig aus funtz aber mach ein timmer dier die zeit aus Variable XYZ beziht.Die Variable speichert alle 0.5 sec die HP vom helden ende.Siht nett doll aus funtz aber.

melior
04.05.2004, 01:59
willste die hp als zahlen oder leisten darstellen?
naja, egal, ich erklär mal beides


Zahlen:
du brauchst bilder von den zahlen 0-9

erstell dir ne variable und nenn sie Hero HP (oder irgendwie so...)
diese setzt du auf den wert der hp des helden (change var. -> set -> hero -> hp)
dann brauchst du 2 weitere variablen, nämlich die 10er und 1er stelle.
diese setzt du ebenfalls auf den wert der hp, allerdings musst du an denen noch etwas ändern.

Change Var [Hero HP] Set [der held] hp
Change Var [Hero HP 10er] Set [der held] hp
Change Var [Hero HP 1er] Set [der held] hp
Change Var [Hero HP 10er] Mod 100
Change Var [Hero HP 1er] Mod 10

durch das mod teilst du die variable durch 100 (bzw. 10), das was dann rauskommt ist der rest der teilung
bsp.: 84 Mod 10 = 4

dann machst du forks, die den wert der einzelnen variablen überprüfen und zeigst das richtige bild an.

für die 100er stelle:



Fork: Var[Hero HP] above 900
Show Picture: Zahl-9

Else Case
Fork: Var[Hero HP] above 800
Show Picture: Zahl-8

Else Case
Fork: Var[Hero HP] above 700
Show Picture: Zahl-7

Else Case
usw bis 100. im else case der letzten fork löschst du dann das bild



das selbe gilt für die 10er und 1er stelle, nur musst du dabei 90, 80, 70 usw. bzw 9, 8, 7 usw. nehmen. hier musst du aber aufpassen. wenn du das letzte bild löschst, kann es sein, dass dir ein bild fehlt, z.B. bei dem wert 601. hier wäre dann die 10er stelle nicht da, das kann man aber leicht mit einer fork umgehen

die max hp können auf diese weiße auch angezeigt werden


Leisten:
eine variable reicht hier. nenn sie einfach HP leiste oder so.

zuerst setzt du sie auf den wert der aktuellen hp

Change Var[HP Leiste] Set [dein held] HP
dann nimmst du sie mal einem festen wert, am besten 100

Change Var[HP Leiste] *100

und dann durch die Max HP teilen
Change Var[HP Leiste] /[dein held] Max HP

hier brauchst du etwas mehr bilder, und zwar für die werte 1-100 je eins. das sind dann allerdings ziemlich viele, also würde ich etwas weniger nehmen. ne abfrage in 5er schritten finde ich ganz angebracht.



Fork: Var[HP Leiste] above 100
Show Picture: Leiste voll

Else Case
Fork: Var[HP Leiste] above 95
Show Picture: Leiste n stück leer

Else Case
Fork: Var[HP Leiste] above 90
Show Picture: Leiste n größeres stück leer

Else Case
und das ganze bis 0, wo du dann ne leere leiste anzeigst


joah

Fenrir
04.05.2004, 03:54
naja... im E-Book stehts auch^^

edit: was muss ich machen um nicht gleich zu spammen?

Irresolute Warrior
04.05.2004, 04:34
Vielen Dank an euch alle!
@dadie:Timer ist sehr clever ^^ sieht aber wie du sagst nicht sehr schick aus!

@Dark~Rei: Das habe ich noch nie benutzt und habe es auch nicht auf meiner Festplatte drauf! ^^

@melior: Danke für die ausführliche Hilfe! Echt klasse! Damit müsste ich es dann hinbekommen! :)

THX nochmal!

Wischmop
04.05.2004, 04:35
Und trotzdem macht sich jemand die Mühe, das extra zu schreiben, anstatt wie andere spammend aufs E-Book zu verweisen. >_>

Also stop spamming, ya?

Bevors Missverständnisse gibt, Dark~Rei war gemeint :eek: