World of Gothic Archiv
> Editing Todes-Dialog |
|
21.08.2003, 17:48 | #1 | ||
dark-base Beiträge: 26 |
Todes-Dialog
Ich habe da ein kleines Problem. Ich hatte die Datei ZS_Dead.d im Ordner [GDATA]/scripts/content/AI/ZS_Human so verändert, dass nach dem Tod des Heldens ein Dialog aufgerufen werden sollte. Damit aber dieser Dialog funktionierte, musste mann dem Held 1 HP Punkt geben. Damit aber einem dann nicht die Gegner sofort wieder totschlagen hatte ich eine Funktion aufgerufen die den Befehl AI_Wait am Gegner durchführte. Durch den Funktionsaufruf wurde nämlich gleichzeitig der Code weiterverarbeitet wie in so vielen Skriptsprachen. Bis auf das manchmal der Held nicht seine Fallanimation abspielt weil der Dialog zu schnell kam klappte ja alles, bis ich diese Skript bei Orks testete. Da Orks mehrmals zuschlagen und nicht durch AI_Wait dabei gebremst werden war der Held sofort wieder tot und es funktionierte gar nichts mehr.Das einzige was mann noch wissen muss ist dass ich die globale Integer Variable "Tod" in der datei [GDATA]/scripts/content/_Intern/constants.d erstellt hab da mein Dialog dieses als condition hatte: code\: wogegen der Sleepabit Dialog so modifieziert wurde dass er nur startete wenn Tod == 0 ist. So hier ist nur der Code aus der ZS_Dead.d Datei: code\: |
||
21.08.2003, 19:12 | #2 | ||
HomerDOHSimpson Beiträge: 14 |
Iiiiikkk. Ich kann dir zwar keine direkte Lösung geben aber vielleicht hilft ja n kleiner Denkanstoss. Könnte man nicht ne Art von "Zeitfenster" einbauen BEVOR du dem Helden 1 HP gibst. Also du stirbst (die Orks haun noch mal kräftig zu) und nach 2 sek gibste ihm nen HP. Oder vielleicht gibts nen Befehl der die Animation der Orks stoppt. |
||
21.08.2003, 21:52 | #3 | ||
HornOx Beiträge: 1.458 |
quote:Toll, weil du weniger Arbeit haben willst schiebst du Arbeit auf andere(die dir nur ratschläge/Tipps geben wollen) ab :( Der folgende Code ist ungetestet, also ignorier ihn bitte oder verzichte in Zukunft auf solche AGBs ;) Npc_ChangeAttribute (self, ATR_HITPOINTS, self.attribute[1]);// gibt dem helden die maximalen trefferpunkte, nicht nur einen Warum machst du den helden nicht kurze Zeit unsterblich? code\: |
||
22.08.2003, 00:28 | #4 | ||
dark-base Beiträge: 26 |
quote: War wirklich keine so gute Idee, habs auch schon weg editiert:) dein Vorschlag war super nur leider klappt er nicht. Sobald man dem hero den flag gibt springt der dialog an ,hängt sich aber dann auf und man kann sich nur mit dem marvin-mode und der F8 Taste retten. Habs mit deiner und anderen Möglickeiten wie den hero einfach nur diesen flag zu geben probiert, kalppt aber alles net.:( |
||
23.08.2003, 06:54 | #5 | ||
HornOx Beiträge: 1.458 |
Npc_ChangeAttribute muß vor self.flags=NPC_FLAG_IMMORTAL; stehn sonst bewirkt der Befehl nichts, mein Fehler :( Aber funkt trotzdem nicht ;) Mal zur abwechslung keine Lösung sondern ein weiteres Problem: Man kann AFAIK den Bodystate des (toten) Helden nicht ändern(AI_PlayAniBS funktioniert bei hero nicht:(). Und mit BS_DEAD kann der Held zwar laufen aber z.b. keine Betten mehr benutzten usw... _Vermutlich_ wird der Bodystate beim Weltenwechsel nicht mitgenommen. Die einzigste Möglichkeit mit Aussicht auf Erfolg die mir momentan einfällt ist deshalb das der Held nach seinem Tod einen HP bekommt und dann in ein "Petrus-Level" gebeamt wird. Das gibt so halt lange Ladezeiten und der Held kann nicht an der Stelle seines Todes wiederbelebt werden :( |
||
|