Teams scripten

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • ich würde gerne ein team system wie aus dem gf in einen normalen gm einbauen...so dass man in ein team mit /invite reinkommt und dass es dann einen leader gibt...aber ich hab keine ahnung wie ich das machen soll...kann mir da vlt jemand ein tutoial oder so schicken?


    mfg HwS-Marshall

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

    Einmal editiert, zuletzt von [XfS]Marshall ()

  • ich glaube da muste vorher mal
    new PlayerInfo [playerid] [pInfo]
    und dann
    emun
    {
    pTeams
    // waste hier noch haben willst z.b. pKills
    }
    machen


  • #include <a_samp> // standart include die immer drin sein muss


    #define COLOR_RED 0xAA3333AA // da wirt die farbe definiert
    //___Team___//
    #define TEAM_GROVE 0 // das ist das erste Team ^^ die null musst du immer erweitern also so
    #define TEAM_BALLAS 1 // usw. ^^
    new gLeader[MAX_PLAYERS]; // die Leader Funktion
    new gTeam[MAX_PLAYERS];// gTeam erstellt die Teams und damit kannst du commands machen usw kommt alles noch
    main()
    {
    print("\n----------------------------------");
    print(" Beispielscript");
    print("----------------------------------\n");
    }
    public OnGameModeInit()
    {
    //
    SetGameModeText("Beispielscript");
    //----Playerauswahl----//
    //AddPlayerClass(skinid, die coods, die coods, die coods, die coods,waffenid, muni, waffenid, muni, waffenid, muni);
    // die skinids und waffen findest du unter Skins:http://wiki.sa-mp.com/wiki/Skins und Waffen: http://wiki.sa-mp.com/
    AddPlayerClass(105, 2499.1270, -1666.7078, 13.3485, 80.4373, 24, 200, 28, 200, 25, 200);
    AddPlayerClass(124, 2499.1270, -1666.7078, 13.3485, 80.4373, 24, 200, 28, 200, 25, 200);
    return 1;
    }
    public OnGameModeExit()
    {
    return 1;
    }
    public OnPlayerRequestClass(playerid, classid)
    {
    if(classid == 0)
    {
    gTeam[playerid] = TEAM_GROVE; // Der Teamname
    GameTextForPlayer(playerid, "Grove Street", 500, 3); // Was über den skin stehen soll
    SetPlayerPos(playerid,1553.4708,-1675.7864,16.1953);// Der Spielerpunkt bei der Spieler auswahl
    SetPlayerCameraPos(playerid,1550.1260,-1675.5898,16.3685);// die Ansicht
    SetPlayerCameraLookAt(playerid,1550.1260,-1675.5898,16.3685);// die Ansicht
    }
    if(classid == 1)
    {
    gTeam[playerid] = TEAM_BALLAS;
    GameTextForPlayer(playerid, "Ballas Gang", 500, 3);
    SetPlayerPos(playerid,1553.4708,-1675.7864,16.1953);
    SetPlayerCameraPos(playerid,1550.1260,-1675.5898,16.3685);
    SetPlayerCameraLookAt(playerid,1550.1260,-1675.5898,16.3685);
    }
    return 1;
    }
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp("/grove",cmdtext,true) == 0)// ein normaler cmd
    {
    if(gTeam[playerid] == TEAM_GROVE )// das ist dann nur für Grove Street Mitglieder
    {
    SetPlayerPos(playerid,2499.1270, -1666.7078, 13.3485);
    SendClientMessage(playerid,0x00FF00FF,"Willkommen in der Grove Street !");
    }
    else
    {
    SendClientMessage(playerid,0xFF0000FF,"Du bist kein Grove Street Mitglied !");// Das ist die Nahcricht wenn man kein miglied ist
    }
    return 1;
    }
    if(strcmp("/grove1",cmdtext,true) == 0)// ein normaler cmd
    {
    if(gTeam[playerid] == TEAM_GROVE && TEAM_BALLAS )// wenn es 2 teams den cmd nutzen sollen machen einfach so
    {
    SetPlayerPos(playerid,2499.1270, -1666.7078, 13.3485);
    SendClientMessage(playerid,0x00FF00FF,"Willkommen in der Grove Street !");
    }
    else
    {
    SendClientMessage(playerid,0xFF0000FF,"Du bist kein Grove Street oder Ballas Mitglied !");// Das ist die Nahcricht wenn man kein miglied ist
    }
    return 1;
    }
    if(!strcmp(strget(cmdtext,0),"/makeleader")) //Hier wird wieder beschrieben das wenn man den /makeleader befehl eingibt
    {
    new teamid = strval(strget(cmdtext,2)); // Jetzt schreiben wir ein new teamid um uns die Arbeit zu erleichtern
    {
    if(IsPlayerConnected(playerid))// er Online sein muss.
    {
    gLeader[playerid] = teamid;
    if(teamid==1) { SetPlayerSkin(playerid,227);} // Jetzt kommen von Oben wieder die Zahlen die ich oben hinter die Fraktionen geschrieben habe
    if(teamid==2) { SetPlayerSkin(playerid,228);} // Hier wird jetzt definiert, wenn man den Spieler die Fraktion 2 zuweist soll er die skin 163, in diesem Fall, bekommen
    SendClientMessage(playerid,COLOR_RED," Du wurdest in eine Fraktion eingeladen "); //Hier wieder aufschreiben was dem Spieler gesendet werden soll wenn er zu einer Fraktion gemacht worden ist
    }
    }
    return 1;
    }
    return 0;
    }
    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new newcar= GetPlayerVehicleID(playerid);
    new carmodel = GetVehicleModel(newcar);
    // if(carmodel == autoid || carmodel == autoid ||carmodel == autoid) // autos findest hier http://wiki.sa-mp.com/wiki/Category:Vehicle
    if(carmodel == 531 || carmodel == 478 ||carmodel == 605){
    if(gTeam[playerid] == TEAM_GROVE) // Nur für dieses Team
    {
    }
    else
    {
    RemovePlayerFromVehicle(playerid); // schmeisst den Player raus der nicht in der Frakion ist
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Grove Gang Mitglied"); // meldung das er kein mitglied der fraktion ist ^^
    }
    }
    return 1;
    }
    //---------------------------------------------strget-------------------------------------------------
    stock strget(strx[], pos, search = ' ') {
    new arg, ret[128], idxx;
    for (new i = 0; i < strlen(strx); i++) {
    if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
    arg++;
    if (arg == pos + 1){
    ret[i-idxx] = EOS;
    return ret;
    } else if (arg == pos)
    idxx= i+1;
    }
    else if (arg == pos)
    ret[i - idxx] = strx[i];
    }
    return ret;
    }











    Einmal editiert, zuletzt von NoTiZ ()


  • aber ich empfehle sowieso nimm gTeams


    ist das ein fs? und kann man da dann auch die teamnamen und spawns usw ändern?

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

  • das geht jetzt zwar mit dem teams aber jeder kann /makeleader machen...aber da kommt dann nur ein text: "Du wurdest in eine Fraktion eingeladen"...


    habs so wie da oben übernommen...kann mir jemand sagen an was es liegen kann, dass es nicht geht??

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

    6 Mal editiert, zuletzt von [XfS]Marshall ()