Hallo Community!
Da ich derzeit an einem Starterpack herumwerkel, das mal ein Kanadier für mich geschrieben hat, möchte ich gerne auf Basis dessen einige vertraute Befehle und Funktionen aus den MMM-Starterpacks mit integrieren.
Das klappt leider nicht immer reibungslos, so wie im Beispiel mit dem EnterRoom:
function EnterRoom (int room, int x, int y, int dir){
FaceDirection (GetPlayerCharacter (), dir);
NewRoomEx (room, x, y);
}
Dachte, der 'GetPlayerCharacter'-Parameter gehöre schon zum AGS-Default-Syntax. Dem ist ja leider nicht so.
Denn als ich diesen Code im anderen Script eingefügt habe, erhielt ich die Fehlermeldung
undefined parameters 'GetPlayerCharacter()' oder so in etwa.
Allerdings habe ich selbst nach mehrmaligen Durchforsten des Scripts keinen Code gefunden, wo 'GetPlayerCharacter' eindeutig und klar definiert wurde.
Könnte jemand einen Code beisteuern, der dieses Problem löst und eine identische Funktionsweise hat wie im ursprünglichen Starterpak?
Und überhaupt: Wird diese FaceDirection-Zeile im EnterRoom-Script überhaupt benötigt?
Für Hilfe sage ich schon einmal vielen Dank im voraus!
--------------------------------------------------------------------------------------------------------------------------------
An diesem Beispiel sind schon die Nachteile der alten Starterpacks ganz klar zu erkennen.
Die Scripts sind einfach viel zu überladen. Ich schätze mal, dass es daran liegt, dass diese damals auf der Version 1 von AGS geschrieben wurden und war dieses Kuddelmuddel damals nicht anders zu lösen war.
Jetzt haben wir inzwischen schon AGS 3.3 und da wäre mal ein Neuanstrich sicher fällig.
ZAK hatte zwar ein Bernard-SP auf AGS 3.2.1 aufgesetzt, nur ist da immer noch sehr viel alter Syntax drin vorhanden.
Das Problem an den alten Starterpaks ist: Ab einen gewissen Grad steigt man da schon nicht mehr durch. Jedenfalls habe ich da schon erhebliche Probleme.
Vielleicht denkt sich jetzt der ein oder andere "warum soll man etwas an den alten Starterpaks ändern, wenn sie doch einwandfrei funktionieren"?
Das ist zwar korrekt, aber nach heutigem Standard sind sie in vielerlei Hinsicht nicht mehr sehr bedienerfreundlich.
Es fängt schon damit an, dass man an den GUIs was Fonts und Colors betrifft, im Editor nichts verändern kann, so dass es eine Auswirkung in der Darstellungsweise hätte. Und zwar deshalb, weil diese Styles im Script definiert sind und man dies auch im Script ändern muss. --> sehr umständlich
Ein großes Dilemma wird es, wenn man noch versucht, im GUI noch Buttons hinzuzufügen, sie umpositionieren oder gar inhaltlich verändern möchte.
Dann hagelt es nur noch so vor Fehlermeldungen und es wird eine echte Mammutaufgabe, dies soweit hinzubekommen, bis sämtliche Fehlermeldungen ausgemerzt sind und nach der 5. Fehlermeldung verlässt einen auch schon langsam der Mut, in diese Richtung noch weiterzuarbeiten.
Fakt ist, es ist nur soweit bediener- und anfängerfreundlich, solange man nicht versucht, an den GUI-styles etwas zu verändern. Vielleicht wird da so mancher auch einwenden "Ist doch alles super so. Warum muss da denn überhaupt etwas verändert werden?!". -> Weil es eben auch User gibt, die gerne auch einen anderen Style verwenden möchten.
Ich bin mit meinem derzeitigem AGS-Projekt erstmal ziemlich eingespannt.
Vielleicht gibt es hier aber jemanden, der sich evtl noch motiviert fühlt, auf AGS 3.3 ein MMM-Starterpak von Grund auf (leeres Template) neu aufzusetzen. Es muss ja gar nicht zu umfangreich sein. Ein 3-bis-5-Räume-SP reicht ja vollkommen.
Syd's Wohnung ohne das Treppenhaus wäre z.B. dafür ja schon wirklich ideal.
Also ich meine, dass die Scripts noch einmal viel schlanker gemacht werden müssten. Wer weiss, vielleicht sehen es viele andere User auch so wie ich.
Bin auf Eure Rückmeldungen gespannt.
BG
der Volltanker