Ich bräuchte mal liebend gerne Hilfe mit dem Tastaturpatch.
Ich hab ihn, ehrlich gesagt, von Anfang an nicht kapiert, aber darum geht's ja eh nicht.
Ich hätte halt gern in mein derzeitiges Projekt ein Schräglauf-Skript eingebaut. Da das aber ohne Tasta-Patch ja wohl nicht korrekt funktionieren will, wollte ich fragen, ob sich da jemand auskennt, der mir evtl. mit dem Tastatur-Patch ein Schräglauf-Skript machen könnte?
Oder zumindest erklären, wie ichs selbst machen könnte
Ich könnte demjenigen leider nicht viel anbieten...hoffe, dass sich trotzdem jemand meiner einer erbarmt ^^"
Ich könnte dir ein kleines Tutorial dazu machen. Zu wann brauchst du es?
...
Meinst du jetzt "wann" oder "zu was"? xD
Falls wann: ASAP (As soon as possible; so bald wie möglich)
Falls zu was: Zu nem...Spiel...natürlich ^^ (auch wenns irgendwie n00bisch klingt, aber ich wills nich so groß rausposaunen ^^" per PN sag ichs dir, wenn du willst)
Ich hatte wohl doch mehr Zeit als eingeplant, also habe ich es schnell mal erstellt. Das ist nicht ein komplettes Tutorial, aber es soll die Methodik zeigen, so das du verstehst und den Rest selber hinbekommst (hoffentlich).
Ich gehe davon aus, das du den Tastenpatch nicht richtig verstanden hast, daher fange ich bei 0 an.
1. Also zunächst einmal Tastenpatch installieren. Ob es geklappt hat merkst du daran, dass der Splashscreen von Ineluki kommt.
2. Importier am Besten alle script.wav Dateien aus dem Demospiel in dein Projekt.
3. Öffne die KeyList.script.wav mit einem Editor (z.B. Notepad). Entweder löscht du alle Inhalte (weil du vielleicht deine eigenen Tastenwerte erstellen willst) oder du lässt es so wie es ist und gehst zu dem Eintrag '; ###Cheats###' und fügst darüber folgende Einträge ein:
Erlärung zu dem Script am Beispiel von [up]:
So, jetzt hast du die Variablenwerte 44 und -44 für Pfeiltaste Hoch und 42 und -42 für Pfeiltaste Links in der Keylist eingetragen.
4. Erstelle im Maker ein Event mit folgendem Inhalt:
Das bewirkt das die Tasten angeschaltet sind. Auf Seite 2 natürlich das Event mit dem Switch festsetzen.
5. Erstelle einen parallelen Prozess, als Common Event mit Switch Abfrage [0001: Tastenabfrage] - ON
Inhalt:
Der . ist als Platzhalter für die Übersicht gedacht. Wenn du die Schritte bis hierher erfolgreich geschafft hast wirst du die restlichen 3 diagonalen Richtungen auch alleine hinbekommen. Nur noch eine Sache:
Die Erhöhung der Diagonal Werte (Hier +4 für hoch und +2 für links) solltest du ändern, so dass ob einzeln oder zusammen gedrückt immer einen individuellen Wert ergeben. Naja, spätestens wenn du alle 4 diagonalen Laufrichtungen machen wirst, solltest du vertsehen was ich meine.
Fragen kann ich dir gerne beantworten.
P.S.:Kannst mir ja gerne per PN mitteilen worum es geht.
Nur ein Problem (besser gesagt, nen Bug) hab ich festgestellt. Und zwar, wenn ich jetzt schräg gegen ne Wand laufe, dann behält die Diagonal-Variable immernoch den Wert 4 (wenn man gegen ne nördliche Wand läuft) bzw. 2 (wenn man gegen ne westliche Wand läuft), selbst wenn die Taste losgelassen wird.
Zusätzlich isses dann so, dass, je nachdem, gegen was für ne Wand man gelaufen ist, man mit nur einer Taste (hoch bzw. links) schon nach links-oben läuft.
Du hast nicht zufällig ne Ahnung, wie man das fixen kann?
Mit nem auf Null setzen der Diagonal-Variable scheints nicht wirklich zu klappen (da setzt dann das ganze Schräglaufskript aus).
Nimm mal den Haken bei Repeat Action raus.
Also bei mir klappt es problemlos. Vielleicht ist die ein Fehler bei der Umsetzung passiert? Oder erklär mal genauer was genau der Bug macht. Ich hatte eben nämlich nur das Problem das der Hero feststeckt.
EDIT:
OK, jetzt passierte es bei mir auch. Ich verstehe. Ich schau mal nach was ich tun kann.
EDIT2:
Versuch mal ein Fork Event noch mit in den parallelen Prozess einzubauen:
Das dient sozusagen als Limit. So das der Maker weiß, das es ab einer bestimmten Variable nicht weitergehen kann.
EDIT3:
Diese Befehle kannst du auch scheinbar rausnehmen. Sie machen irgendwie nur bei Sinn, wenn du Events (NPCs oder so) steuern willst.
Ich hoffe das es nach so vielen Edits jetzt funktioniert.
Das ist zwar auch ne Möglichkeit, jedoch wird das "Problem" sein, dass der Hero nur schräg läuft wenn exakt beide Tasten auf einmal gedrückt werden (hoch + links gleichzeitig). Es wird also nicht mehr gehen, wenn man erst hoch läuft und dann eine Sekunde später links drückt, das er dann auch schräg läuft. Was die Steuerung doch angenehmer machen würde, wie ich finde.
Nochmal zurück zu einem anderen Problem:
Wenn wir davon ausgehen das
das die Variablenwerte der Steuerung sind, dann würde für schräg-rechts-unten den Diagonalwert 4 ergeben, aber das wäre der selbe wie Pfeil hoch. Das könnte bedeuten, dass wenn du rechts, unten und links gedrückt hälst der Hero nach schräg oben links laufen wird, weil ja der Wert 6 insgesamt rauskommt. Ich hoffe, du weißt was ich meine. Daher solltest du dich jetzt schonmal um dieses Problem kümmern. So das eben bei egal welcher Kombination der Tasten immer ein einzigartiger Wert bei rauskommt.
Um das Problem hab ich mich schon von anfang an gekümmert
Und jetzt hab ichs sogar komplett beseitigt
Und zwar mithilfe von Switches.
Man fragt einfach ab, ob die Tasten-ID-Variable den Wert für die jeweilige Taste hat (also z.B. 44 für Hoch, 42 für Links, 40 für Rechts und 38 für Runter). Und so sieht dann das Common Event dafür aus: (Achtung! Deutschpatch ahead!)
Damit wäre das Problem des ungewollten Schräglaufens, bzw. des nicht Schräglaufen wollens gelöst. Denn komischerweise funzts mit den Switches prima, aber mit den Variablen gibts komischerweise nur Stress =,
Ich habe es jetzt mal ausprobiert. Die Switches machen anscheinend keine Probleme. Ich denke wir haben es geschafft.
Dann mal alles Gute mit dem Projekt.