Schrittzähler zurücksetzen?
Ich arbeite zur Zeit an einer alternative für die Zufallskämpfe auf meiner Weltkarte, da das Standart-Encounter-System irgendwie für den Popo is.
Ich hab mir das folgendermaßen Gedacht:
Ich mache ein Parallelprozess und setze eine Variable gleich den Schritten, die ja von Haus aus vom RMXP mitgezählt werden.
Ich würde dann eine Abfrage machen > wenn die Schritte auf 30 sind, dann startet ein Kampf.
Nun wäre das Problem, dass die Schritte dann auf 30 bleiben. Ich kann ja die Variable ändern wie ich will, die vom RMXP gezählten Schritte bleiben 30.
Gibt es eine Möglichkeit den Schrittzähler auf 0 zurückzusetzen?
PS: Es gibt sicher eine andere Lösung dafür, auf die ich aber nich komme, was definitiv an der Uhrzeit liegt.
Wäre auch für jeden "Alternativen-Vorschlag" dankbar. ^^
Ich hab mir das folgendermaßen Gedacht:
Ich mache ein Parallelprozess und setze eine Variable gleich den Schritten, die ja von Haus aus vom RMXP mitgezählt werden.
Ich würde dann eine Abfrage machen > wenn die Schritte auf 30 sind, dann startet ein Kampf.
Nun wäre das Problem, dass die Schritte dann auf 30 bleiben. Ich kann ja die Variable ändern wie ich will, die vom RMXP gezählten Schritte bleiben 30.
Gibt es eine Möglichkeit den Schrittzähler auf 0 zurückzusetzen?
PS: Es gibt sicher eine andere Lösung dafür, auf die ich aber nich komme, was definitiv an der Uhrzeit liegt.

Wäre auch für jeden "Alternativen-Vorschlag" dankbar. ^^
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Tharuel« (3. September 2009, 03:22)
Benutzerinformationen überspringen
Motto: Man muss nicht alles mit RGSS machen, Eventtechnik for the world!
yehaa klappt, wieder was gelernt 
also das geht mit mod
so hab ich es gelöst:
variable 1 = anzahl schritte
variable 2 = variable 1 (überprüfung)
Variable 2 = mod 30( das ist bei set variable wo + - * / steht das letze heißt)
Bedingung if variable 2 = 0 dann KAMPF.
weil, das mod gibt den rest von Zahl durch 30 an, wenn der 0 ist heißt die zahl ist durch 30 teilbar ( also schritte 30,60,90,120 usw, da kommt überall 0 raus und nur da
)
muss weg nähere erklärungen bei nachfrage oder durch google

also das geht mit mod

so hab ich es gelöst:
variable 1 = anzahl schritte
variable 2 = variable 1 (überprüfung)
Variable 2 = mod 30( das ist bei set variable wo + - * / steht das letze heißt)
Bedingung if variable 2 = 0 dann KAMPF.
weil, das mod gibt den rest von Zahl durch 30 an, wenn der 0 ist heißt die zahl ist durch 30 teilbar ( also schritte 30,60,90,120 usw, da kommt überall 0 raus und nur da
)muss weg nähere erklärungen bei nachfrage oder durch google
An sich ne gute Idee, aber ich häng da fest, im wahrsten Sinne des Wortes.
Wenn Variable 1 = 30 ist, dann ist Variable 2 = 0.
Es beginnt der Kampf. Nach dem Kampf ist Variable 1 immernoch = 30, was dafür sorgt, dass Variable 2 immernoch 0 bleibt.
Der Kampf startet wieder und wieder. Man hängt in einer Schleife fest.
Ich glaub ich hab jetz wirklich alles probiert, nichts hilft.
Es fällt immerwieder auf den Schrittzähler zurück, da dieser ja permanent aktualisiert wird und damit auch Variable 2 dauerhaft im Griff hat.
Es müsste doch eine Möglichkeit geben, den Schrittzähler per Script zurückzusetzen. :/
Wenn Variable 1 = 30 ist, dann ist Variable 2 = 0.
Es beginnt der Kampf. Nach dem Kampf ist Variable 1 immernoch = 30, was dafür sorgt, dass Variable 2 immernoch 0 bleibt.
Der Kampf startet wieder und wieder. Man hängt in einer Schleife fest.
Ich glaub ich hab jetz wirklich alles probiert, nichts hilft.
Es fällt immerwieder auf den Schrittzähler zurück, da dieser ja permanent aktualisiert wird und damit auch Variable 2 dauerhaft im Griff hat.
Es müsste doch eine Möglichkeit geben, den Schrittzähler per Script zurückzusetzen. :/
Ja, man kann den Stepcounter zurück setzen.
Als neues Script über Main einfügen:
Und dann in ein Call_Script
Das ist aber nicht zu empfehelen. Wenn du die Lösung von effeff nicht willst, kannst du natürlich auch eine Scriptlösung haben:
Als neues Script über Main einfügen:
|
|
Ruby Quellcode |
1 2 3 4 5 |
class Game_Party def schritte_auf_null @steps = 0 end end |
|
|
Ruby Quellcode |
1 |
$game_party.schritte_auf_null |
Das ist aber nicht zu empfehelen. Wenn du die Lösung von effeff nicht willst, kannst du natürlich auch eine Scriptlösung haben:
Als neues Script über Main einfügen
Du musst aber noch 3 Werte anpassen, die MapID, auf welcher Map soll es gehen.
VariablenNummer, welche Variable soll zum zählen benutzt werden?
Nummer des Commonevents was ausgelöst wird, wenn die Variable 30 erreicht.
|
|
Ruby Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
class Game_Player < Game_Character def increase_steps super # If move route is not forcing unless @move_route_forcing # Increase steps $game_party.increase_steps # Number of steps are an even number if $game_party.steps % 2 == 0 # Slip damage check $game_party.check_map_slip_damage end #====================# # Ergänzung: if $game_map.map_id == 7 # Hier die ID der Weltkarte angeben $game_variables[2] += 1 # Varaible Nr.2 erhöhen # Falls die Variable 30 ist: if $game_variables[2] == 30 # Command event 5 starten $game_temp.common_event_id = 5 $game_variables[2] = 0 end end #====================# end end end |
VariablenNummer, welche Variable soll zum zählen benutzt werden?
Nummer des Commonevents was ausgelöst wird, wenn die Variable 30 erreicht.
zum Lesen den Text mit der Maus markieren
Das große Scientia Wiki zur Spielentwicklung 
Was ist das RGSS ? RGSS-Dokumentation auf Sc
Kyoshiros Makerkurs
Musik von Shabraxxx für euch
Guide zu den Audioformaten
Skripte von mir (Auswahl):
Atmungssystem
| Streichholzsystem
| Animiert durch Bücher blättern
Random : Marktsystem für Kardor
| Staterelated Battlergraphic
| Hinweis auf mögliche Aktionen
SelfSwitchExpirationtimer Skript - Gameplayerweiterung für Pilzesammler und Farmspiele
Meine Skripte werden gerade hier gesammelt.

Was ist das RGSS ? RGSS-Dokumentation auf Sc
Kyoshiros Makerkurs

Musik von Shabraxxx für euch
Guide zu den Audioformaten

Skripte von mir (Auswahl):
Atmungssystem
| Streichholzsystem
| Animiert durch Bücher blättern
Random : Marktsystem für Kardor
| Staterelated Battlergraphic
| Hinweis auf mögliche Aktionen
SelfSwitchExpirationtimer Skript - Gameplayerweiterung für Pilzesammler und Farmspiele
Meine Skripte werden gerade hier gesammelt.
Wenn du die Lösung von effeff nicht willst, kannst du natürlich auch eine Scriptlösung haben:
Als neues Script über Main einfügenDu musst aber noch 3 Werte anpassen, die MapID, auf welcher Map soll es gehen.
![]()
Ruby Quellcode
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 class Game_Player < Game_Character def increase_steps super # If move route is not forcing unless @move_route_forcing # Increase steps $game_party.increase_steps # Number of steps are an even number if $game_party.steps % 2 == 0 # Slip damage check $game_party.check_map_slip_damage end #====================# # Ergänzung: if $game_map.map_id == 7 # Hier die ID der Weltkarte angeben $game_variables[2] += 1 # Varaible Nr.2 erhöhen # Falls die Variable 30 ist: if $game_variables[2] == 30 # Command event 5 starten $game_temp.common_event_id = 5 $game_variables[2] = 0 end end #====================# end end end
VariablenNummer, welche Variable soll zum zählen benutzt werden?
Nummer des Commonevents was ausgelöst wird, wenn die Variable 30 erreicht.zum Lesen den Text mit der Maus markieren
Ich hab die Hoffnung ja schon fast aufgegeben. Genau sowas hab ich gebraucht. ^^
Funktioniert super.
Vielen dank. =)
Ähnliche Themen
-
RGSS 1 Probleme & Talk »-
Gegner-KI für rundenbasierendes Strategiespiel?
(29. November 2008, 22:22)
-
(Alt) Smalltalk »-
Mein iPod Spinnt >.<
(27. Februar 2007, 16:23)
-
RGSS 1 Probleme & Talk »-
Wie entferne ich die Spielzeit aus meinem Menü und bekomme mit jedem level up leben?
(22. Dezember 2006, 18:56)
-
RGSS Archiv »-
einfügen?
(19. Februar 2005, 19:00)

