RPGVX.net
RPGVX.net => RPGVX.net Service => Archiv => Thema gestartet von: SurfingBoarder am August 08, 2009, 18:00:49
-
Hallihallo,
ich habe folgendes Problem, und zwar:
Wenn man einen Kampf verliert, kommt wird ja der Kampf abgebrochen und der GameOverScreen kommt. Jetzt möchte ich jedoch z. B. einen Todesschrei vom Helden einbauen (das soll noch im Kampf) geschehen, wie mache ich das? Die BattleEvents scheinen mir ja unterpriorisiert zu sein ...
-
Ich hab hier was für dich ^^
Einfach über Main einfügen ;D
module D_Settings
SE_NAME = "Cry"
end
include D_Settings
class Scene_Battle
alias call_gameover_d_sound call_gameover
def call_gameover
call_gameover_d_sound
Audio.se_play("Audio/SE/"+SE_NAME, 10, 100)
end
end
Du musst den Todesschrei in den Ordner SE kopieren und im Script bei SE_NAME = "Cry" den Namen der Datei eingeben. In meinem Fall würde die Datei Cry heisen.
Ich hoffe es hilft dir,
MfG
Deity
-
Oh, danke, dass du dich mit meinen Problem befasst hast.
Leider habe ich mich etwas unverständlich ausgedrückt, sorry. Das mit dem Todesschrei war nur ein einfaches Beispiel dafür, was ich noch vor dem GameOver machen würde. Ich möchte einfach nur, dass die Battle Events ablaufen, bevor geprüft wird, ob es ein Game Over gibt, da ich in meinen Battle Events teilweise Sachen eingebaut habe, die eine frühzeitige Niederlage verhindern könnten (z. B. Stein des Lebens, der die Heldengruppe automatisch komplett regeneriert und dann aus dem Inventar entfernt wird; der Kampf geht dann weiter) oder derartiges. Also:
Derzeitig:
Kampf
Alle Helden sterben
Gameover
Ziel:
Kampf
Alle Helden sterben
Battle Events sollen gecheckt werden
Mögliche Niederlagenverhinderer aktiviert werden (teils mit Verknüpfung auf Common Events)
Dann GameOver, wenn überhaupt
Was auch damit zusammenhängt:
Wenn ein bestimmter Held A stirbt, kommt springt einmalig ein Verbündeter B für ihn ein, bis es dem Held A wieder gut geht. Klappt auch ganz gut, aber wenn Held A der einzige noch lebende Held in der Gruppe ist und stirbt, ist damit Sense ...
-
@Whisky
Ich glaube du hast da was überlesen xD
@SurfingBoarder
Also dafür, musst du nur nochmal die BattleEvents üpberprüfen. Mach eins, was jede Runde läuft und die Bedingung hat, dass alle in der Party den Status "Tot" haben, und dann halt die Zufallschance, wenn die Party das Item im Inventar hat.
Ansonsten könnte ich dir noch ein Addon schreiben, das ein Common Event auslöst sobald alle Tot sind.
MfG
Deity
-
Mach eins, was jede Runde läuft
Also, ich habe hier mal ein Beispiel von so nem Event angehängt, Span: Turn, sorgt doch dafür, dass das jede Runde läuft, oder? "Moment" funktioniert dagegen gar nicht.
(http://img22.imageshack.us/img22/1082/problempoo.jpg)
Im Common Event wird die Verstärkung hinzugefügt, damit ich da leichter Änderungen vornehmen kann. Aber wie gesagt, wenn Nick der einzige ist, der noch in der Gruppe lebt, greift das ganze nicht.
Post zusammen gefügt: [time]Sa 08 Aug 2009 22:08:57 GMT-1[/time]
Ich habe das Problem selbst gelöst! Juchu! Ich hab einfach die rot markierte Zeile eingefügt. Dann werden zuerst die Battle Events (macht sogar das obige Script von Ðeity überflüssig!) abgearbeitet und erst hinterher festgestellt, ob man verliert. Ermöglicht mir eine viel größere Freiheit als vorher! Trotzdem danke!
#--------------------------------------------------------------------------
# * Determine Win/Loss Results
#--------------------------------------------------------------------------
def judge_win_loss
if $game_temp.in_battle
process_battle_event
if $game_party.all_dead?
process_defeat
return true
elsif $game_troop.all_dead?
process_victory
return true
else
return false
end
else
return true
end
end
-
Nice, deine Lösung gefällt mir. Ich hab selbst gerade rumprobiert und man kann zwar nen Battle-Event nach dem Gegnertot machen, nicht aber nach dem eigenen...
Danke für die Lösung ;)
Closed.
MfG, Colo