-
Krieger
Also, irgendwas scheint bei mir nicht zu klappen. Egal, was ich auswähle - Angriff, Technik, was auch immer! - der Hero macht genau gar nichts, nur die Ladeleiste leert sich und beginnt, sich erneut aufzuladen. Der Gegner hingegen greift immer munter an. Allerdings stirbt der Hero auch nicht, wenn er keine KP mehr hat, also war mir das egal.
---
Es ist schon ein guter Ansatz. Um die Animationen und so musst du dich noch nicht kümmern, die müssen noch nicht toll aussehen. Wichtig ist erst einmal, dass man erkennt, was los ist, und dass technisch alles stimmt!
Arbeite dich Stück für Stück da durch, was ich dir geraten habe, dann kommt, wenn du alle Fehler beseitigst, am Schluss sicher ein cooles KS raus. 
---
Ich würde dir für die Leisten nur gerne einen Tipp geben! Eine Kleinigkeit nur, bei der du ein wenig Gespür und Mathematik einsetzen musst, die dafür aber nachher schöner aussieht.
Du hast ja rund um die Leisten immer einen schwarzen Balken, der die umliegende Umgebung um die Leisten einkreist. Angenommen, deine Grundleiste (also leer) ist schwarz. Der Balken, der sie auffüllt, zB für KP, ist grün.
Nun hast du mal, zu Beginn des Kampfes, volle KP, also eine volle, grüne Leiste! Sagen wir, diese Leiste ist (damit es sich leichter rechnen lässt) genau 100 Pixel lang. Das bedeutet, auch dein grüner Balken ist 100 Pixel lang.
Wenn der Gegner nun angreift, dann speicherst du die Position des grünen Balken-Bildes (also x- und y-Koordinaten) in zwei Variablen ab. Dann lässt du den Gegner seinen Schaden anrichten, den du ja berechnen kannst. Nun wird es ein wenig schwierig. Diesen Schadenswert nimmst du mal 100 und dividierst das, was rauskommt, durch die max. KP-Anzahl des Heros. Dann kriegst du ein neues Ergebnis, das vermutlich nicht allzu viel mit dem Schaden zu tun hat. Aber dieses Ergebnis brauchen wir, denn es ist der Prozentsatz an KP, den der Gegner dem Hero weggenommen hat!
>>> Ein einfaches Beispiel dazu!
Hero hat volle 100 KP. Gegner greift an und richtet 64 KP Schaden an (wir wissen ja, dass der Schaden daher 64% von 100% entspricht). Wir gehen gemäß unserer Rechnung vor:
64(Schaden) x 100(%) = 6 400
6 400 / 100(max. KP) = 64(% der max. KP)
-> Der Gegner richtet 64 % Schaden an (qed).
Ein schwereres Beispiel:
Hero hat volle 350 KP. Gegner greift an und richtet 114 KP Schaden an.
114(Schaden) x 100(%) = 11 400
11 400 / 350(max. KP) = ~32
-> Der Gegner richtet rund 32 % Schaden an (qed).
---
Was fangen wir nun damit an, dass wir wissen, wie viel Prozent Schaden der Gegner angerichtet hat? Nun, ganz einfach. Am Anfang sagte ich ja, unsere KP-Leiste ist 100 Pixel lang - das entspricht den 100 % der max. KP! Und wenn wir nun bspw. wissen, dass der Gegner 32 % davon abzieht, was tun wir dann? Richtig... wir ziehen vom Wert der x-Koordinate, die wir vorhin in einer Variable gespeichert haben, diesen Prozentsatz ab - in dem Fall also 32!
Und dann kommt noch ein Move Picture-Befehl, der den Balken anhand der Koordinaten-Variablen bewegt - und zwar um 32 Prozent nach links (natürlich muss der schwarze Rahmen außen auf einer höheren Ebene eingeblendet werden als der grüne Balken, sonst sieht es so aus, als würde sich der Balken ja aus seinem Rahmen rausschieben!).
Selbiges gilt für Heilzauber und -items, also genau das Gleiche mit dem Errechnen der Prozent. Nur müsstest du diese 32 zur Variable hinzufügen statt abzuziehen, damit der Balken nach rechts wandert (und sich damit weiter auffüllt).
---
Falls du ein wenig den Überblick verloren hast, hier eine Kurzwiederholung, was getan werden muss:
1. Speichern der Balken-Position in Variablen
2. Gegner angreifen lassen, angerichteten Schaden (in KP) ermitteln
3. Schaden (in KP) mit Hilfe der beschrieben Rechnung in Schaden (in Prozent) umwandeln
4. Ausgerechneten Prozentsatz von der gespeicherten x-Koordinate (siehe 1.) abziehen
5. KP-Balken zu den neuen Koordinatenwerten bewegen
Eines bleibt vielleicht noch zu sagen: wenn deine Leiste nicht 100 Pixel lang ist (entspricht beim RPGM2k etwa dem Drittel des Bildes, geht also durchaus noch), sondern bspw. nur 50 Pixel, dann musst du den ausgerechneten Prozentsatz unbedingt noch daran anpassen! Also, bei 50 Pixel müsstest du den Prozentsatz noch durch 2 dividieren, bevor du ihn von der x-Koordinate abziehen kannst! Bei 25 Pixel müsstest du ihn durch 4 dividieren, etc. etc. ... ! Aber wenn du einen 100 Pixel breiten Balken nimmst, brauchst du dich nicht mit einer zusätzlichen Umrechnung rumärgern. Denn der Maker ist leider nicht sehr gut mit Zahlen, und jedes weitere Dividieren macht das Ergebnis ungenauer.
Ich hoffe, ich habe mich nicht wieder mal zu kryptisch ausgedrückt, das passiert mir leider manchmal, wenn ich was erklären will. Wenn du Fragen hast, kannst du sie natürlich sofort stellen.
Geändert von Kaat (12.01.2006 um 21:48 Uhr)
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln