Also erstmal, ich habe das .sma neu hochgeladen, damit ihr den aktuellen Stand (es ist jetzt soweit funktionsfähig) einsehen könnt.
->
http://www.metamorpher.de/tfc/plugin_fair_vote.sma
Das mit den Indizes, daß da die Variable index heißt, ist wohl ne Stilfrage. Genauso das mit der for-schleife.
Ich gehe eben einfach davon aus, daß der Compiler Variablennamen und Funktionsnamen voneinander unterscheiden kann (was er ja auch tut, sonst würde es ja nicht funktionieren). Davon abgesehen wußte ich nicht, daß es eine Funktion namens index gibt.
Bei der For-Schleife ist der Rückwärtsdurchlauf zumindest in meinem C-derivat schneller, da dort die Laufvariable i nur einmal pro durchgang ausgelesen werden muss. Incrementierung und Schleifenbedingung sind so kombiniert. Und es braucht keine <=> Operatoren, da die Schleife beim Wert 0 aussteigt.
Da das hier aber wohl kaum großen Einfluss hat, ist das wohl auch ne Stilfrage.
Wegen dem Zusammenrechnen der Votes, ich glaube da hast du was falsch verstanden. Bei meinem Vote ist ein Vote eigentlich nur ein Vorschlag. Am Ende wird einfach aus allen Vorschlägen einer ausgewählt per Zufall. D.h. es gewinnt nicht zwingend die Map mit den meisten Votes. Es ist nur wahrscheinlicher, daß eine bestimmte Map drankommt, je mehr Votes die eben bekommen hat.
Wo gibt es eigentlich eine Admin-Mod spezifische Scripting-Dokumentation, wo so Sachen wie PLUGIN_CONTINUE etc. beschrieben sind? Ich dachte bisher, daß diese Returncodes nur in Funktionen, die Plugin-Kommandos zugeordnet sind, einen Einfluß haben (nämlich, daß der Befehl bei PLUGIN_CONTINUE auch noch in anderen Plugins angefragt wird, und bei PLUGIN_HANDLED eben keine weiteren Plugins mehr benachrichtigt werden).
Ich habe an Admin-Mod Dokumentation bisher nur die Funktionsliste auf adminmod.org gesehen... da fehlt mir wohl noch was.
Vielen Dank für den Tipp mit dem admin_debug, das werde ich beim nächsten Problem gleich mal ausprobieren. Im Moment grüble ich, wie ich im Plugin wohl am besten mitbekommen kann, wenn sich die mp_timelimit Variable auf dem Server ändert. Ähnlich wie die say-Überlagerung ein mp_timelimit Kommando definieren? Eine Timer-Schleife? Ein Controller/Notify/Forbidden System scheint es nicht zu geben...