Archiv verlassen und diese Seite im Standarddesign anzeigen : HP-Balken... aber wie?
Sternenfüchsin
07.11.2007, 17:07
Hallo ihr Lieben! hab da ein Prob wo ich einfach keine Antwort drauf finden kann.
Ich versuche einen HP-Balken in meine Asterix-Fangame einzubauen, aber es will
nicht so ganz klappen...
Hier ein Screen was ich versucht hab:
http://kikimccloud.ki.funpic.de/Screenshots/energieproblem.jpg
Kann mir vielleicht wer weiterhelfen? Is echt dringend und so...
Und ja, ich hab schon ins Forgotten E-Book geschaut, werd daraus aber nicht
wirklich schlau...
Greetz
Was genau hast du versucht, mit diesem Code zu bewirken?
Wenn du die Energie-Variable am Anfang des PP immer auf 100 setzt kann sich
ja nix tun bei der Sache.
Du musst die Energievariable auf die Energiewerte des Helden setzen anstatt
auf 100.
Sternenfüchsin
07.11.2007, 18:33
irgendwie logisch... aber wie mach ich das parktisch? (Sorry, aber ich kenn mich
mit var's noch nicht wirklich aus...)
Rainbow Demon
07.11.2007, 18:39
in diesem fall solltestdu nicht mit parallel process arbeiten
kann ja nicht funktionieren, wenn du die lebensenergie immer wieder auf 0 setzt ()
!
-Die lebensenergie solltest du am anfang mit einem Autostartevent festlegen
-mach ein common event (condition: call) das ungefahr so lautet:
IF VarEnergie (niedrigerer wert als maximal, in deinem fall 75) above 75
ShowPic 100
ELSE
IF VarEnergie above (nächster wert(ich nehm jetzt mal 50)) 50
ShowPic 75
ELSE
...
und das kannst du dann beliebig weiterführen
Dieses commonEvent rufst du auf(callEvent):
-sobald die lebensanzeige auftauchen soll
-immer wenn du schaden erhälst/dich heilst
müsste eigentlich schon alles gewesen sein
Edit:
Du musst die Energievariable auf die Energiewerte des Helden setzen anstatt
auf 100.
es reicht anfangs vollkommen, wenn du die Lebensenergie in prozent angibst
(d.h. Energie= 100 heißt ganz gesund)
wenn du veränderbare Lebensenergie willst, musst du:
-eine seperate Variable für maximale Lebensenergie festlegen
-bei dem darstellenden Event eine Variable erstellen (zb VarEnergiebalken) ,diese gleich der Lebensenergie setzen, mit 100 multiplizieren und durch Maximallebensenergie teilen.
erst danach folgt der beschriebene Ifthenelse baum, musst halt dann VarEnergiebalken einsetzen
@Rainbow Demon: Stimmt, das ist eine Möglichkeit.
Aber es gibt noch eine andere. Wenn du deine Hp-Anzeige (oder was auch immer) am linken Bildschirmrand positioniert hast (also sodass es keinen freien Pixel zwischen Bildrand und Anzeige gibt), kannst du 2 Pictures verwenden: eines für den Rahmen und eines für die Leiste selber. Die Leiste bewegst du dann - entsprechend den momentanen HP des Helden - nach links oder rechts. Hat den Vorteil, dass du nicht so viele Pics machen musst, der Nachteil ist der erhöhte Pic-ID-Verbrauch sowie die Tatsache, dass die Anzeige an den linken Rand geklebt werden muss.
Greetings!
Alan
Ahja, die gute alte dynamische Balkenleiste. ^^
[...] der Nachteil ist der erhöhte Pic-ID-Verbrauch [...]
Was ist daran ein Nachteil, wenn man statt einer ID 2 hat? Kaum einer
verbraucht wirklich alle 20/40/50 Pics. Ist imo sogar besser. Immerhin arbeitet
man bei dieser Variante mit dem "Bild bewegen" Befehl, der um einiges weniger
Ressourcen braucht als der "Bild anzeigen" Befehl. Das kann bei einer
komplexeren Anzeige mit mehreren Balken das ganze immens verschnellern.
Ahja, die gute alte dynamische Balkenleiste. ^^
Was ist daran ein Nachteil, wenn man statt einer ID 2 hat? Kaum einer
verbraucht wirklich alle 20/40/50 Pics.
Nein, natürlich nicht.... nur jeder, der schonmal ein eigenes KS oder ein eigenes Interface gemacht hat und vielleicht noch ein paar Picture-Zahlen darstellen wollte... Das geht *verdammt* schnell, die 50 IDs vollzubekommen, glaub mir! ^^
Greetings!
Alan
Sternenfüchsin
07.11.2007, 19:18
uhiuhiuhi.. klingt ja alles ganz nett, aber nun meine noob-frage...
Wo find ich den dieses if-else dings? Hab mich tot gesucht, aber irgendwie nicht
gefunden....
aba ersteinmal danke für die tipps, ich war schon am verzweifeln
Rainbow Demon
07.11.2007, 19:30
Wo find ich den dieses if-else dings? Hab mich tot gesucht, aber irgendwie nicht
gefunden....
Das ist die Fork Condition, die du schon verwendet hast
Sternenfüchsin
07.11.2007, 19:37
hm... ok... aber... wios ist überall von if die rede wo doch da garkein if ist?
Irgendwie verwirrend... muss ich dann in die else noch eine fork machen, oda
wie jetzt? (Sorry wenn das jetzt sehr noobisch klingt, aber ich blick echt nicht
durch....)
Rainbow Demon
07.11.2007, 19:46
Irgendwie verwirrend... muss ich dann in die else noch eine fork machen, oda
wie jetzt?
ja, genau, probier es einfach mal aus.
Konfuzius sagt:
sag es mir, und ich werde es vergessen
zeig es mir, und ich werde mich daran erinnern
lass es mich machen, und ich werde es können
(...ich glaube es war Konfuzius)
Wenns gar net gehen will, ich hab hier mal n Beispiel:
Click me! (http://rmforum.rm.funpic.de/hpbalken.rar)
Sternenfüchsin
10.11.2007, 12:23
kk, hab das jetzt mal so versucht in meine game einzubauen... allerdings
zeigt er bei mir den energierbalken (Also dat blaue) nur kurz an...
dann isses wech und will einfach nicht wieder auftauen. hab das Gefühl das
er das Common-Event einfach nicht aufrufen will... Irgend welche lösungs
vorschläge? (ich werd noch kirre... ehrlich)
Zeig mal n paar Screenshots vom Code. Das wär hilfreich.
Sternenfüchsin
10.11.2007, 14:50
Biddaschön:
http://kikimccloud.ki.funpic.de/Screenshots/energieproblem.jpg
Hast du bei den Move Picture Befehlen eh die Transparenz immer richtig?
Sternenfüchsin
10.11.2007, 15:22
ist bei dem anzeig-event auf 100 und im Common-Event auf 0% Transparents
ist bei dem anzeig-event auf 100 und im Common-Event auf 0% Transparents
Es sollte aber umgekehrt sein. :rolleyes:
Also 100% im ce, weil da wird die Anzeige geregelt. Das Map-Event lädt nur die
Bilder.
Sternenfüchsin
10.11.2007, 15:55
geändert. Trotzdem noch das selbe Prob... Irgendwie is da der Wurm drin...
Rainbow Demon
10.11.2007, 19:34
hab das Gefühl das
er das Common-Event einfach nicht aufrufen will
das kannst du überprüfen, indem du zum test einen Text in den ce einbaust
probier mal das:
Show message, diesen platzierst du am ende des ce.
als Text schreibst du hinein:
X Koordinate: \V[28]
Y Koordinate: \V[29]
Damit kannst du überprüfen, ob die koordinaten auch stimmen
Falls dir das nicht hilft:
Ersetze im ce das Movepicture durch die beiden showpics des init-pp
beim unteren pic gibst du die koordinaten durch variablen an,
wie beim movepic.Magnification 100, trasparenz 0
ich denk mal du hast beim move event was falsch gemacht,
wenn er es erstmal anzeigt und es dann verschwindet
und was ich vergessen hab:
wenn du die lebensenergie in Prozentschritten anzeigst,
muss der balken auch 100 pixel lang sein.(!!!)
Zitat:
Zitat von Sternenfüchsin Beitrag anzeigen
ist bei dem anzeig-event auf 100 und im Common-Event auf 0% Transparents
Es sollte aber umgekehrt sein.
Also 100% im ce, weil da wird die Anzeige geregelt. Das Map-Event lädt nur die
Bilder.
wenn du willst, dass man deine Bilder sieht,
solltest du ÜBERALL transparenz auf 0 stellen.
Caine Luveno
10.11.2007, 23:09
Biddaschön:
http://kikimccloud.ki.funpic.de/Screenshots/energieproblem.jpg
Das "Autsch" Event läuft zum Helden und reagiert auf "Push Key"....
Falls das Event bei Heldenberührung automatisch reagieren soll mach besser "OnHeroTouch" draus ;)
Ansonsten sah der Code nämlich recht in Ordnung aus. Falls das Event doch per Push Key starten soll ignorier diesen Post XD
Der Push Key dürfte nix damit zu tun haben, da das Aktualisierungs-CE schon
im Init aufgerufen wird.
Wenns weiter net geht, dann stell mal das Projekt hoch.
Sternenfüchsin
12.11.2007, 12:19
Ich hoffe das funzt:
http://www.file-upload.net/download-486082/Majestix-RPG.rar.html
Im game sind auch ein paar Pictures drin, die so Holzschilde darstellen...
Eigendlich wollte ich die als "Energierleiste" haben... fals mir da wer weiterhelfen kann...
(Es sind aber noch nicht alle Bilder drin)
Caine Luveno
12.11.2007, 12:45
Sind 2 Fehler im Common Event:
1. Im Move Picture Befehl steht die Transparenz auf 100%. Die muss auf 0%.
2. Der Befehl wo die Variable HP durch die Variable MaxHP geteilt wird (4. Befehl von oben). Im unteren Bereich wo die MaxHP Variable ausgewählt werden muss, musst du den oberen Variable Befehl nehmen (den direkt unter 'Set').
Sternenfüchsin
12.11.2007, 17:49
Is ja nich zu fassen, es funktionukelt!
Ey, Danke Leute, ihr seit echt der Hammer! (Zwar hatte ich mir eine andere
"Energierleiste" vorgestellt, also so mit Holzschilden wo dann immer ein Stück
fehlt, aber ich bin so froh das das jetzt läuft, das ich es wohl dabei belassen
werde. Muss mir jetzt nurnoch ne schöne Leiste pixeln.)
Danke für die tolle Hilfe! (Ich glaub ich muss die Credits nochmal
ändern. :D )
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.