Du kannst einem Item ein Common Event einfach über die Database zuweisen. Ein Script musst du nicht verwenden. Ich hoffe, das meintest du.
Du kannst einem Item ein Common Event einfach über die Database zuweisen. Ein Script musst du nicht verwenden. Ich hoffe, das meintest du.
Ich habe dem Item ja das Common Event über die Database zugewiesen.
Wenn man das Item nun benutzt soll das Common Event aufgerufen werden, was ja auch (wenn mans übers Menü aufruft) auch funktioniert.
Ich möchte allerdings das Item mit einem Skript per Taste ausführen. Das funktioniert auch fast gänzlich - mit Ausnahme des Common Events! Das wird, wenn das Item per Shortcut aufgerufen wird einfach ignoriert oder so.
Man drückt die Taste "B" -> Das Skript sorgt dafür, dass, wenn man "B" drückt das Item "Taschenlampe" benutzt wird -> Das Item Taschenlampe (sofern vorhanden) ruft ein Common Event hervor ...
So sollte das in der Theorie laufen, in der Praxis sieht dies aber nicht so aus, da der letzte Schritt (das Common Event) nicht ausgeführt wird.
Kannst du mal den entsprechenden Code vom Script posten?
Die einfachste Lösung wäre aber wohl nach dem Druck auf B (bei deinem Beispiel) einfach einen Switch für das Common Event einzuschalten. Na gut, ich weiß natürlich nicht was das Common Event machen soll.
Das Skript hab ich einfach dem RMXP Skript Explorer entnommen.
Was das Common Event schlussendlich machen soll, behalte ich mir ja noch vor. Ich habe testweise ausprobiert durch das Common Event Bilder anzeigen zu lassen, einen Text auszugeben oder den Bildschirm einzufärben. Das ganze hat wie immer funktioniert, wenn man das Item über das Menü "benutzt" hat.
Btw.Ja, daran hab ich natürlich als erstes gedacht. Doch, - ja halt mich ruhig für einen Noob, ich bin einer! - wie funktioniert das?Zitat
Ah, das haben sie beim XP rausgenommen, sehe ich gerade. Beim 2K konnte man einem Gegenstand einen Switch zuweisen. Dann weiß ich leider auch keinen Rat.Zitat
Schade.
Nun, aber ich muss ja nicht unbedingt den Umweg über das Item gehen, sondern kann einfach das Common Event durch das drücken der entsprechenden Taste aufrufen. Es wird dann einfach geprüft, ob das Item in der Tasche ist.
Kann ich (ohne Ruby-Skript) beliebige Tasten etwas bewirken lassen? (Ich mein damit nicht die Standardtasten WSAD, Shift, C und Q (und solche, die ich nun vergessen haben sollte..) ?
Ja, das geht.
Du benötigst einen Conitional Branch, der parallel überprüft, ob eine Taste gedrückt wird. Ich empfehle C, weil das den selben Input wie Enter verwendet, also kann man ein Event durch Enter-Druck auslösen lassen.
chrizzio. möchte aber spezielle Gegenstände über Shortcuts benutzen lassen.Es gibt auf jeden Fall ein Script zum Abfragen der Tastatur. Am besten du schaust mal auf den großen, englischsprachigen XP-Seiten nach (ich kenne die Links leider nicht auswändig).
Sollte das wirklich das ganze Shortcutscript sein, so kann ich dir ganz genau sagen, warum der Common Event nicht ausgeführt wird.
Dieses Script führt einfach die item_effect methode auf das Ziel aus, welche sich darum kümmert, dass die entsprechenden Statuswerte des Ziels entsprechend den Itemeinstellungen verändert werden (z.B. HP heilen, Stautswerte erhöhen, usw). Das Abarbeiten von Common Events wird aber nicht von dieser Methode behandelt. Dafür brauchst du die Interpreter Klasse.
--
Achso, vielen Dank Burrito!
Zum Glück verfüge ich über keinerlei Ruby Kenntnisse und kann das Problem nun auch locker beheben...
:-|
Du könntest folgendes versuchen. Ist aber in keinster Weise getestet, mach also ein Backup vom funktionierenden Skript.
--
Okay, ich habs nun mit deinem Skript ausprobiert.
Leider scheint es immer noch nicht zu funktionieren.
Geändert von chrizzio. (12.10.2007 um 16:02 Uhr)