Beiträge von Kaliber

    Ja das wäre noch besser


    Okay, also ich dachte da an sowas:


    AddFraktionsCar(frakid, modelid,X,Y,Z,A,c1,c2,respawn); //habe mal die Variablentypen weggelassen


    SetDoorsLocked(frakid, var); /*
    Wenn var = false, dann sind die Türen durch SetVehicleParamsEx abgeschlossen
    wenn var = true, dann kommt man in das Auto aber da ist es mit RemovePlayerFromVehicle
    */


    So okay, oder habt ihr da noch eine bessere Idee ?


    kann man die Fraktion Namen


    Eine extra Funktion gibts dafür nicht, aber wenn du die haben willst mach ich eine ;)

    Skin´s festlegen?


    Ja, das ist so eine Sache, wenn man z.B. mehrere Fraktionsskins haben soll wird das problematisch, deshalb dachte ich das man das manuell festlegt...mhm, aber wenn du da eine Idee für eine Funktion hast, poste mal eine Beispiel Funktion :)


    mfg. :thumbup:

    Guten Morgen,


    tut mir leid, wenn ich in letzter Zeit immer so Sachen veröffentliche, mir ist aber total langweilig :S


    Also heute ist es ein Fraktionstool, welches ich gerade geschrieben habe und dies hilft Leuten die gerade ein Selmfade schreiben wollen ;)


    [tabmenu]


    [tab='Allgemeine Informationen','http://forum.sa-mp.de/wcf/icon/infoM.png']
    [subtab='Funktionen','http://forum.gamerzhost.de/wcf/icon/codeS.png']
    SetPlayerFraktion(playerid, frakid); //Fügt einen Spieler in eine Fraktion
    SetPlayerRang(playerid, rangid); //Setzt den Rang des Spielers
    IsOnline(frakid); //Listet in einem Dialog auf, wer aus der Fraktion online ist + Titel, quasi Member: Kaliber (Rang: Rangname)
    GetFraktion(playerid); //returnt frakid
    GetRang(playerid); //returnt den Rang des Spielers
    SetFraktionsColor(frakid, hexcode); //Hier kann man farben für die einzelnen Fraktionen setzen
    SetFraktionsSpawn(frakid, Float:X,Float:Y,Float:Z, (optional)Float:A); //ja, setzt halt den Spawnpunkt für die Spieler (an einer Base)
    SetRangName(frakid, rangid, name[]); //Setzt den Rangnamen für die bestimmte Fraktion
    GetRangName(playerid); //returnt (nach Beispiel) "Laufbursche"
    AddFrakCar(frakid,modelid,Float:X,Float:Y,Float:Z,Float:A,color1,color2,respawn); //Fügt ein Car der Fraktion hinzu
    GetFrakCar(vehicleid); //returnt zu welcher Frakid dieser Wagen gehört
    SetFraktionArt(frakid, art); //Setzt die Fraktions Art (ob Gang...) siehe Beispiel Tab (V3.0)
    GetFraktionArt(frakid); //Returnt die Fraktionsart als String (V3.0)
    CreateGangZone(frakid, Float:minx, Float:miny, Float:maxx, Float:maxy); //Erstellt eine Fraktions Gangzone (V3.0)
    GetGangZoneOwner(GangZoneID); //Returnt die frakid von dem Owner der Gangzone (V3.0)
    SetGangZoneOwner(GangZoneID,frakid); //Setzt den Owner der Gangzone (V3.0)

    [subtab='Wichtig','http://www.rezepte-guru.de/template/images/icon_stern.gif']
    Man kann den MAX_RANG setzen:
    #define MAX_RANG 10 //Hier setzen wir den "Leader Rang" auf 10
    #define MAX_FRAKTIONS 30 //Hier könnte man die Anzahl der Fraktionen erhöhen
    //Das muss man nicht machen mit MAX_RANG oder MAX_FRAKTIONS
    //Da MAX_RANG (ohne verändern) den Wert 6 hätte und MAX_FRAKTIONS (ohne verändern) 20
    #include <frakhelp> //Wichtig, erst unter dem #define stehen !
    PS: Wer den Leader Rang hat, ist automatisch Leader der Fraktion.


    PS²: Es gibt keine Fraktion 0 = keine Fraktion !!!
    [subtab='Beispiele','http://www.damen-eishockey.de/images/lampe.gif']
    //Unter OnGameModeInit
    SetFraktionsColor(1, 0xFFFFFFFF); //Die Fraktion 1 hätte jetzt die Farbe weiß
    SetFraktionsSpawn(1, 0.0, 0.0, 0.0); //Die Fraktion 1 würde jetzt an den Koordinaten 0,0,0 spawnen
    SetRangName(1, 1, "Laufbursche"); //In der Fraktion 1, wenn man Rang 1 ist heißt man Laufbursche


    //Ein Beispiel Invite Befehl
    ocmd:invite(playerid, params[]) //ich hoffe du nutzt ocmd
    {
    //if(!IsPlayerAdmin(playerid)) return 1; //Man sollte für diesen Befehl Admin sein, ich lasse es mal weg...
    new pID, frakid;
    if(sscanf(params,"ui",pID,frakid)) return SendClientMessage(playerid,rot,"Verwendung: /invite [spielerid] [frakid]");
    SetPlayerFraktion(pID, frakid);
    SetPlayerRang(pID, 1);
    SetPlayerSkin(playerid, 299); //halt irgendein neuer Fraktions Skin
    return 1;
    }
    Hier ein Beispiel zu der Verwendung vom Leadersystem: Leader Beispiel
    [subtab='Download','http://www.projekt-deutsch.de/templates/cback/images/download.gif']
    Pastebin: Pastebin (V.3.0)
    Mediafire: Download Mediafire (V.3.0)
    [/tabmenu]


    Zu den Fraktionscars:

    Zitat

    Man kann die Fraktion Cars nur benutzen, wenn man zu der Fraktion gehört, sie sind durch SetVehicleParams abgeschlossen !


    Hier nun die Version 3.0, Viel Spaß :)


    mfg. :thumbup:


    //Edit:

    In Mysql brauch ich auch keine 2STD's


    Natürlich und in 1nem Tag hast du dann dein Selfmade fertig :rolleyes:


    Kannst aber nichtmal einen Timer richtig machen :pinch:


    //Oben in dein Script
    new werbung_var;


    //Unter OnGameModeInit
    SetTimer("Werbung_Timer", 1000*60, 1);


    //Die Funktion
    forward Werbung_Timer();
    public Werbung_Timer()
    {
    switch(werbung_var)
    {
    case 0: SendClientMessageToAll(0xFF4800FF,"Besucht doch mal unser Forum: http://www.samp-Pi.de und kommt mal auf denn TeamSpeak3: Ts ip"),werbung_var = 1;
    case 1: SendClientMessageToAll(0xFF4800FF,"Du brauchst Hilfe die Supporten stehen dir gerne zu Verfügung du kannst aber auch /FAQ nutzen"),werbung_var = 2;
    case 2: SendClientMessageToAll(0xFF4800FF,"..."),werbung_var = 0;// wenn du = 0 machst startet das wieder von vorne !
    }
    return 1;
    }


    mfg. :thumbup:

    Nicht richtig, bzw wenn man das so machen würde, wäre das sehr suboptimal, da der Luftballon auch dann durch Wände etc fliegen würde ^^


    Du musst ihn erstmal hoch fliegen lassen, dann über den BSN (auf der selben Höhe) und dann langsam runter, damit er nirgends anstößt...


    mfg. :thumbup:

    AMX? Sicher? Naja, dir kann man ja vertrauen, aber wenn das jeder so macht, dann kommen wieder die 1337 Scriptkiddies und bauen SendRconCommand("password xyz"); ein, oder sowas (geht das überhaupt?)..


    Ja, man könnte sich über das Filterscript oder eine Include das Rcon_Passwort hooken, aber nur, wenn sich ein Admin während dieses Script geladen ist, damit einloggt. Außerdem könnte man alle Passwörter etc mit loggen lassen, sprich man könnte da einen schönen Trojaner schreiben :P


    Deshalb bin ich für so einfach nur die .amx Datei übergeben auch nicht dafür (für Rocky würde ich eine Ausnahme machen) ;)


    mfg. :thumbup:

    ocmd:revive(playerid, params[])
    {
    if(isPlayerInFrak(playerid,5)|| isPlayerInFrak(playerid,3)) //anpassen für Medics
    {
    new pID;
    if(sscanf(params, "u", pID)) return SendClientMessage(playerid, ROT, "/revive [ID]");
    SetPlayerHealth(pID, 30);
    ClearAnimations(pID);
    TogglePlayerControllable(pID, 0);
    TogglePlayerControllable(pID, 1);
    }
    return 1;
    }


    Schreibs mal so ;)


    mfg. :thumbup:

    Schreibe das mal im neuen ZCMD Style und evtl etwas schöner:


    COMMAND:a(playerid,params[])
    {
    if(!Spieler[playerid][pAdmin]) return SCM(playerid,COLOR_GRAU,"Du bist kein Administrator !");
    new text[128],string[128],arang[128];
    if(sscanf(params,"s",text)) return SCM(playerid,COLOR_GRAU,"VERWENDUNG: /a(chat) [Nachricht]");
    switch(Spieler[playerid][pAdmin])
    {
    case 1: format(arang, sizeof arang,"Probe Supporter");
    case 2: format(arang, sizeof arang,"Supporter");
    case 3: format(arang, sizeof arang,"Moderator");
    case 1337: format(arang, sizeof arang,"Admin");
    case 1338: format(arang, sizeof arang,"Co Projektleiter");
    case 1339: format(arang, sizeof arang,"Serverleiter");
    }
    format(string,sizeof string,"(( AdminChat %s %s : %s ))",arang,Spieler[playerid][pName],text);
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(!Spieler[i][pAdmin]) continue;
    SendClientMessage(i,COLOR_YELLOW,string);
    }
    return 1;
    }


    mfg. :thumbup: