Nun, nachdem ich herrausgefunden habe das mein Selfswitch Plugin fürn Müll ist, da es bereits sowas gibt habe ich einfach mal innerhalb eines Tages dieses Plugin zussammengeschustert, die Idee schwirrte mir schon lange im Kopf herum.
Vielleicht kann man es schon am Namen erkennen, aber dieses Plugin ermöglicht eine bessere EventErkennung.
Mit diesem Plugin kann man jedes Event abfragen, selbst wenn sich 2 oder mehr auf einem einzigen Feld befinden.
Dazu kommt die Möglichkeit den Namen des Events abzufragen und den Layer.
Insgesamt, kann dieses Plugin also sehr hilfreich sein wenn es darum geht ein AKS zu basteln und man selber nicht so bewandert ist was C++ angeht.
Falls noch jemand Wünsche hat, kann er sie hier gerne posten, bugs ebenso...
Wenn ein Befehl die ID eines Switches oder einer Variable benötigt,
darf niemals eine nicht existente ID angegeben werden,
es kann zum Absturz des Spiels führen.
...
Hä? Warum das? RPG::variables hat kein Problem mit zu hohen Variablennummern, selbiges gilt für RPG::switches. Es werden einfach mehr Variablen bzw. Switches erzeugt.
Steht afaik auch so in der Dokumentation.
EDIT: Gerade den Code gelesen. Mir sind ein paar Sachen aufgefallen:
1) Warum CUSTOM_DLLMAIN? Das versteh ich nicht. Erstens mal hast du keine eigene DllMain-Funktion, wozu dann? Zweitens hast du das nach dem #include, also hat es sowieso keine Wirkung.
2) using namespace RPG ist zwar vielleicht praktisch, aber das ist nicht umsonst in einem Namespace - nämlich damit man erstens sofort sieht wenn man auf etwas von DynRPG zugreift und zweitens nicht neue Features alten Code zerstören können weil sie zufällig denselben Namen für ein Objekt verwenden wie du für eine Variable.
3) Dein Code wird furchtbar failen wenn es Lücken in den Event-IDs gibt. Ich erkläre dir mal:
Du zählst die Event-IDs von 1 bis zur Anzahl Events. Was passiert jetzt wenn es die Events 1, 3, 4 und 6 auf der Map gibt? Dann zählst nicht 1, 3, 4, 6 sondern 1, 2, 3, 4 und wirst bei "2" crashen weil es das Event nicht gibt.
Ich nehme an, du willst danach nicht events[i] (also i = EventID) sondern events.ptr->list[i] (also i = Index) verwenden, und mit 0 zu zählen beginnen:
Ich sollte das vielleicht mal besser in der Dokumentation erklären, oder vielleicht "list" vom darunterliegenden RPG::NamedCatalog durchreichen sodass man "RPG::events.byIndex(i)" verwenden kann o.ä.
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!
Kein Problem mit zu hohen Variablennummern, aber mit der nummer 0, zumindenst entstand bei mir immer ein Crash...
Deswegen habe ich das vorsichtshalber da mal hingeschrieben, um evtl Bugs aus dem Weg zu gehen...
Namespace habe ich nun entfernt und alles mit RPG ersetzt...
Zudem habe ich:
mit
ersetzt, ist mir mal so im Nachhinein noch aufgefallen als ich alles mit RPG ausgestattet habe ^^...
Naja, an diese Möglichkeit habe ich gar nicht gedacht und beim Testen muss ich wohl ziemlich glück gehabt haben das alles immer geklappt hat, weil ich extra einige events gelöscht habe zum testen...
Allerdings weiß ich jetzt nicht genau wie ich auf die Liste zugreife, zurzeit sieht das so aus:
RPG::map->events.ptr->list[i]->x
Allerdings führt das zu einer Fehlermeldung beim ausführen des codes, NICHT beim compilieren...
Edit: Custom_DLLMAIN war nur mal zum Test vorhanden, habe es nun entfernt, ich werde die neue Version hochladen sobald ich den Bug entfernt habe ._.
--
Langzeitstudien an einer Universität in England haben ergeben, dass Homosexuelle die Signaturen anderer immer mit der Hand auf der Maus lesen.
Du brauchst sie jetzt nicht mehr wegzunehmen, es
ist eh schon zu spät....
Schon gut XD, ich habe ausversehen <= gleichgelassen, somit kommt es am ende natürlich zu nem Fehler...
Edit: Neue Version hochgeladen, falls sie noch Bugs beinhaltet kann ich mich erst morgen drum kümmern, bin jetzt erstmal weg..
Ich denke aber das es das jetzt war ._.
PS: Was für ein Bug? Ich habe die Version 0.20 auf meinem Projekt, steht sogar in der readme XD
--
Langzeitstudien an einer Universität in England haben ergeben, dass Homosexuelle die Signaturen anderer immer mit der Hand auf der Maus lesen.
Du brauchst sie jetzt nicht mehr wegzunehmen, es
ist eh schon zu spät....
Oh, hast du, OK das ist was anderes. Das hab ich wohl überlesen. Das heißt im Moment natürlich dass deine Benutzer auch diese Version haben müssen, was aber im Moment noch nicht geht weil sie noch nicht wirklich released ist und auch noch ein paar Probleme zu haben scheint, was ich hier so lese.
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!