Beiträge von Fabelwesen

    Als erstes machst du ein paar news:


    new yoursupport[MAX_PLAYERS];
    new insupport[MAX_PLAYERS];
    new SupDuty[MAX_PLAYERS];
    new gegenC&P


    Danach unter OnPlayerConnect alles auf "false" bzw. "0" setzen. Im Klartext: Admins sind in keinem Support, kein Ticket wurde geschrieben, dein Support ist nicht angenommen und der Admin ist nicht Aduty.
    insupport[playerid]=0;
    yoursupport[playerid]=0;
    writtenticket[playerid]=0;
    SupDuty[playerid]=0;
    gegen C&P=0;


    Das gleiche bei OnPlayerDisconnect
    insupport[playerid]=0;
    yoursupport[playerid]=0;
    writtenticket[playerid]=0; gegen C&P(playerid);
    SupDuty[playerid]=0;


    Bei OnPlayerText wird nun abgefragt, ob du in einem Support bist, falls ja dann wird dem Admin geschrieben, was du schreibst (ohne Befehl!)
    if(insupport[playerid]==1)
    {
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(yoursupport[i]==playerid)
    {
    new str[128], GetName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,GetName,sizeof(GetName));
    immernoch gegen C&P
    format(str,sizeof(str),"%s: %s",GetName,text);
    nicht alles erklär ich, da du die Grundfunktionen drauf haben solltest
    SendClientMessage(i,WEISS,str);
    }
    }
    }


    Und danach die Befehle (in meinem Fall mit PVars und OCMD)
    ocmd:supduty(playerid,params[])
    {
    if(!IstSpielerEinAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Teammitglied!");
    {
    new Name[MAX_PLAYER_NAME],string[128];
    GetPlayerName(playerid,Name,sizeof(Name));
    format(string,sizeof(string),"[ADM]: %s hat sich als Supporter angemeldet. Via /support kannst du mit ihn in Kontakt treten!",Name);
    wenn du nachher wegen den Errors fragst..
    SendClientMessageToAll(HELLBLAU,string);
    SupDuty[playerid]=1;
    }
    return 1;
    }


    ocmd:support(playerid,params[])
    {
    new Name[MAX_PLAYER_NAME],string[128],text[128];
    GetPlayerName(playerid,Name,sizeof(Name));
    if(sscanf(params,"s",text))
    {
    return SendClientMessage(playerid,WEISS,"[Verwendung]: /support [Text]");
    SendClientMessage(playerid,=!,"Gegen C&P);
    }
    if(writtenticket[playerid]==1)
    {
    return SendClientMessage(playerid,ROT,"[Warnung]: Du hast bereits einen Supporter kontaktiert!");
    }
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(SupDuty[i]==1)
    {
    format(string,sizeof(string),"%s (ID:%d) hat ein Support geschrieben: %s",Name,playerid,text);
    SendClientMessage(i,WEISS,string);
    writtenticket[playerid]=1;
    return 1;
    }
    }
    SendClientMessage(playerid,ROT,"[Warnung]: Derzeit ist kein Supporter anwesend!");
    return 0;
    }


    ocmd:ansup(playerid,params[])
    {
    new id;
    if(!IstSpielerEinAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Teammitglied!");
    if(sscanf(params,"i",id))
    {
    return SendClientMessage(playerid,WEISS,"[Verwendung]: /ansup [ID]");
    SendClientGegenC&PMessage(playerid,=!,"GegenC&P);
    }
    if(writtenticket[id]==1)
    {
    new Name[MAX_PLAYER_NAME],string[128];
    GetPlayerName(playerid,Name,sizeof(Name));
    format(string,sizeof(string),"Der Supporter %s bearbeitet nun dein Ticket. Nun kannst du mit ihm Schreiben!",Name);
    SendClientMessage(id,GRÜN,string);
    insupport[id]=1;
    gegenC&P
    insupport[playerid]=1;
    yoursupport[id]=playerid;
    yoursupport[playerid]=id;
    writtenticket[id]=0;
    }
    return 1;
    }


    ocmd:closesup(playerid,params[])
    {
    if(!IstSpielerEinAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Teammitglied!");
    {
    if(insupport[playerid]==1)
    {
    for(new i=0; i<GetMaxPlayers(); i++)
    {
    if(yoursupport[i]==playerid)
    {
    SendClientMessage(i,GRÜN,"Der Supporter hat nun den Support geschlossen.");
    SendClientMessage(playerid,WEISS,"Supportchat geschlossen!");
    insupport[i]=0,yoursupport[i]=0;
    Falls fragen aufkommen, kannst du mich gern Fragen.
    insupport[playerid]=0,yoursupport[playerid]=0;
    return 1;
    }
    }
    }
    }
    return gegen C&P;
    }


    MfG

    Sieht wirklich sehr schön und gelungen aus, dennoch muss ich die Eintönigkeit kritisieren. Wie was für einem Programm mapst du?


    Idee: 3/5 - Form des Hauses könnte man etwas Spektakulärer machen (Eine Villa soll ja Impusierend sein)
    Umsetzung: 4/5 - s.o.
    Gesamt: 7/10 - Die Eintönigkeit spielt hierbei eine große Rolle


    Dazu muss ich aber sagen, das mir die Details sehr gefallen!


    MfG

    Du gibst jetzt schon auf? Was willst du machen, wenn ein anderes System mal nicht Funktioniert wie es soll? Wieder aufgeben und alles neu Schreiben? Das ist aber nicht die feine englische Art^^


    So wie Beavis schrieb, dürfte es funktionieren.


    MfG

    um den pädagogischen Maßstäben eines solchen Systemes gerecht zu werden



    Aber erlich gesagt finde ich sollte man die Benötigten Punkte dan auch etwas erhöhen.


    MFG


    Sagt schon alles oder? Wenn das alte System dem pädagogischen Sinne nicht nahe kam und das neue es eben Verstärken soll, kann man die Punkte nicht erhöhen, da man dann ja +/- 0 hat von der Veränderung.


    Ich finds top. Vielleicht kehrt dann in so manchen Streithahn endlich mal Ruhe ein :thumbup:


    //Edit: Verbessert

    Loxatan: Achso, ich dachte schon schlimmes :whistling:


    Die besten Lieder sind immernoch die guten Alten (auch wenn ich die neuen auch sehr mag) wie zum Bleistift:
    Loose yourself
    Stan
    Toy Soldier
    ...


    Könnte tausende Tracks aufzählen, aber ich glaube man merkt das ich ein Fan bin :)

    Eminem ist einer der wenigen Rapper, der das Geschäft erst so aufgebaut hat, wie es heute ist. Wenn man sich nur ein wenig mit seiner Vorgeschichte auskennt, merkt man das schnell. Achja und ps: Was ist an seiner Vorgeschichte eig. geil? Seine ma hat ihn immer zum Arzt geschleppt obwohl er nichts hatte, keinen Vater, .. Für mich ist sowas nicht geil^^


    MfG

    ocmd ist alles andere als Kacke. Kacke ist es nur dann, wenn man damit nicht Scripten kann. Wenn du nicht Dumm bist, dann wirst du es wohl hinbekommen den OCMD Befehl in einen strcmp, zcmp, ycmd oder sonstwas umzuscripten? Oder dauert das auch Stunden? ;)


    MfG

    Wenn man das so macht wie ich das am besten finde dauert das Stunden ;) Mit Dialogen usw das es sofort Spawnt wenn ichs raussuche


    Stunden? Ich glaube dann machst du mehrere Tausend-Zeilen sinnlosen Code.. Maximal 20minuten und du hast es dir zusammen gebastelt. Ein paar Listdialoge mit mehreren Auswahlmöglichkeiten + Pos herausfinden und Spawnen lassen kann einfach keine Stunden dauern.


    MfG


    //Edit: Hast du auch die Include "ocmd" um Pawno-Include Verzeichnis eingefügt und am anfang "include <ocmd>" des Scripts geschrieben?
    Ansonsten mach es so:

    Meine Variante
    ocmd:veh(playerid,params[])
    {
    new modell,color1,color2,car;
    new Float:X,Float:Y,Float:Z,Float:A;
    if(!IstSpielerEinAdmin(playerid,1))return SendClientMessage(playerid,ROT,"Du bist kein Teammitglied!");//Deinem Adminsystem anpassen oder einfach entfernen. Wenn du es entfernst, kann sich jedoch jeder ein Auto Spawnen
    {
    if(sscanf(params,"iii",modell,color1,color2))return SendClientMessage(playerid,WEISS,"[Verwendung]: /veh [ID] [Farbe] [Farbe]");
    if(modell < 400 || modell > 611)
    {
    SendClientMessage(playerid,ROT,"[Warnung]: Diese FahrzeugID gibt es nicht!");
    }
    GetPlayerPos(playerid,X,Y,Z);
    GetPlayerFacingAngle(playerid,A);
    car=AddStaticVehicle(modell,X,Y,Z,A,color1,color2);
    PutPlayerInVehicle(playerid,car,0);
    }
    return 1;
    }

    Morgen.


    Ich muss mal Kritik an der Vorstellung/ Werbung üben:
    Abgesehen davon, das dicke Schrift sowie Kursiv oder schlecht gewählte Schriftart bei manchen nicht ankommt, stören mich vorallem die "!!!" hinter fast jedem Satz und die 'tausend' Smileys. Dennoch werde ich demnächst mal rein hören, auch wenn ich nicht viel erwarte.


    MfG