Beiträge von Douq

    Ging mir genauso, hab dann grundsätzlich nur betrunken moderiert und konnte so den Hass maximieren, da ich stets willkürlich und ohne jedweden Sinn gehandelt habe

    Das würde ich dann gleich so übernehmen, das klingt mir nach einer Weisheit eines alten Meisters .. Ich habe auch meine Kündigung eingereicht - als breadfish Mod gehöre ich nun zum adeligen Haus der Gesellschaft und muss mich nicht mehr mit der Arbeiterschicht rumplagen

    Danke für die Glückwünsche :thumbup:


    @Jony Liebesbotschaften gehen raus :love:


    @Rocky Balboa Bin meistens in der Scripting Area aktiv .. Seit es Jeffry gibt, gibts da leider nicht mehr viel zu tun .. ;( Wenn du willst können wir uns privat treffen, wenn du mich kennenlernen willst :saint:


    @'Chuckletree' ich bin der neue Geniestreich von Hans Entertainment

    Da bieten sich verschiedene Konstruktionen an. Bei der Variation ist es ja derzeit so, dass du den Code ab Zeile 10 nicht mehr weitergehst, da ein Fraktionsfahrzeug nach der Funktion getVehicleOwner == -1 ist. Es bietet sich an, genau an dieser Stelle auf das return zu verzichten, sondern lieber solch eine Konstruktion zu versuchen:



    Code
    if((vehicleOwner = getVehicleOwner(vehicleid, slot)) != -1) {
    // Spielerfahrzeugkram
    }
    else if((vehicleOwner = IsAFraktionsVeh(vehicleid)) != INVALID_PLAYER_ID) {
    // Fraktionskram
    }
    else {
    // Fehlermeldung, weder Spielerfahrzeug noch Fraktionsfahrzeug
    }

    Eventuell ergibt es in Hinblick der Ressourcennutzung eher Sinn, zuerst das auf Fraktionsfahrzeug und danach aufs Spielerfahrzeug zu überprüfen - aber Optimierungen können sich da sowieso vornehmen .. :D

    Dann verwende mal die Funktion getVehicleOwner() die ich oben genannt habe - funktioniert's dann?


    Die Abfrage in Zeile 4 musst du noch verschieben - sofern dieser Befehl auch für Spieler bei ihrem eigenen Fahrzeug gehen soll. Auch ist die Funktion PlayerIsAtAnyCar nicht sinnvoll, da man bei carinfo scheinbar eine vehicleID angeben muss. Da ergibt es mehr Sinn zu überprüfen, ob der Spieler im Radius des Fahrzeuges ist (was du bereits in Zeile 12 machst, deswegen kann die Abfrage raus).

    Also ich glaube der Code, der uns zurzeit zur Verfügung steht ist nicht aktuell? Angenommen die Funktion getVehicleOwner() sieht folgend aus:



    Code
    stock getVehicleOwner(vehicleid, &slot) {
        for(new i=0;i<GetMaxPlayers();i++) {
        	for(slot = 0; slot < MAX_PLAYER_VEHICLES; slot++) {
               if(vehicleid == PrivateVehicle[i][slot][vehID]) {
    				return i;
    			} 	
        	}
    	}
    	return -1;
    }

    Kann die Schleife in Zeile 8 weg und die Variable slot deklariert werden. Dann nur noch die erste Dimension des Arrays PrivateVehicle von playerid in vehicleOwner umändern und dann sollte das kein Problem mehr darstellen.


    Natürlich muss noch ein Check rein, dass der Spieler das Fahrzeug sehen kann, sofern es sein eigenes ist (sprich die Abfrage 4 nicht betrachten, wenn der vehicleOwner der playerID entspricht).

    In den Zeilen 13 + 33 und 38 + 58 sind die geschweiftem Klammern nicht notwendig


    +


    Das liegt daran, dass dein Code weiterläuft obwohl du bereits eine Pflanze platzierst hast. Füge einmal ein return 1 hinzu wo du auch die Drogensamen auf 0 setzt.

    Sieht echt gut aus. Mir gefällt der Style. Wenigstens mal nicht dieser typische Bankautomat den es auf jeden Server gibt.


    Aber ich würde besser finden, wenn die Spieler zu Bank fahren müssen zum einzahlen, ist ja letztendlich in der Realität nicht anders.

    Es gibt auch Bankautomaten, zu mindestens in Hamburg, wo auch eingezahlt werden kann. Sonst so weit interessantes System!

    weiss zwar nicht mehr wie es in PAWNO war aber in C# müsstest du nach jedem case ein break; setzen damit der auch wenn er in den case geht danach auch aufhört

    In PAWN ist das tatsächlich nicht notwendig / möglich.


    Füg mal in Zeile 559 eine geschleifte Klammer und schließe sie ggf. wieder unter der switch-case Anweisung (sofern nicht vorhanden, erkenne es durch die Formatierung nicht).

    Ich will halt das diese Nachricht [list=1][*]TSC_SendClientMessage(clientid, "Willkommen auf dem German-Reallife Teamspeak!");[*]TSC_SendClientMessage(clientid, "Um dich freizuschalten schreibe mir bitte deinen Ingame-Name!");[/list]


    nur kommt wenn man den Rang Gast hat und wenn man member ist eben nicht

    Naja, per sscanf2 kannst du die Zeichenkette ziemlich einfach teilen:


    Code
    new tsIDs[5];
    sscanf(data, "p<,>a<i>[5]", tsIDs);

    Dann sind die gruppenIDs in tsIDs, du musst lediglich noch per Schleife durchlaufen und überprüfen, ob das jeweilige Element gleich deiner gewünschten ID ist und falls ja -> keine Nachricht, falls nicht -> Nachricht.

    Uff ich glaube ich geh gleich erstmal schlafen und guck es mir dann an es geht gerade nicht in mein Kopf rein ^^

    Was denn genau? Also data könnte beispielsweise dann so aussehen "13,21,223,7" und um die 7 zu bekommen, musst du diese Zeichenkette aufteilen, um die rohe Zahl zu erhalten. Diese Zahl kannst du durch verschiedene Funktionalitäten bekommen: sscanf2 oder der split - Funktion. Nutzt du das sscanf2 Plugin?