2 Kleine Wünsche [GF]

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
  • Hallo, ich hoffe das jemand ein paar Wünsche von mir erfüllen kann :D
    1. Könnte man sowas Scripten das man mit /ziehen ID einen hinterher ziehn kann für cops/army/fbi (id 1,2,3) und dan mit /uziehen ID wieder los lässt?
    2. Kann mir einer scripten das man mit /startlesson ID ein autoschein bekommt und /stoplesson der schein weggenommen wird? Für iD (11) fahrlehrer :D

  • zu 1. genauere Erklärung.
    zu 2:


    einfach einfügen /startlesson:


    PlayerInfo[playerid][pCarLic] = 1;


    /stoplesson


    PlayerInfo[playerid][pCarLic] = 0;


    einfach untern anfügen^^

  • Also zu deinem ersten wunsch das wird nicht funktionieren du kannst höchstens jemand ins auto rein ziehen zu deinem zweiten



    if(strcmp(cmd, "/startlesson", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsAnInstructor(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "BENUTZUNG: /startlesson [playerid/Name]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "* Du hast %s den Führerschein gegeben.",giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Fahrlehrer %s hat dir den Führerschein gegeben.",sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    pCarlic[giveplayerid] = 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Player ist Offline !");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Fahr-/ Flug-/ Segellehrer/Prüfer !");
    return 1;
    }
    }
    return 1;
    }
    if(strcmp(cmd, "/stoplesson", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsAnInstructor(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "BENUTZUNG: /stoplesson [playerid/Name]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if(TakingLesson[giveplayerid] != 1)
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Spieler nimmt keine Lernstunden !");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "* Du hast %s den Führerschein weg genommen.",giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Fahrlehrer %s hat dir den Führerschein weg genommen.",sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    pCarLic[giveplayerid] = 0;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Dieser Player ist Offline !");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Fahr-/ Flug-/ Segellehrer/Prüfer !");
    return 1;
    }
    }
    return 1;
    }


    MFG Julian

    RFT

  • man kann nur leute ins auto ziehen hier meine script befehle
    if(strcmp(cmd, "/grab", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /grab [ID]");
    return 1;
    }
    if(gTeam[playerid] == 2 || IsACop(playerid))
    {
    new person;
    person = strval(tmp);
    if(IsPlayerConnected(person))
    {
    if(person != INVALID_PLAYER_ID)
    {
    if(GetDistanceBetweenPlayers(playerid,person) <= 8)
    {
    if(gTeam[person] == 2)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du kannst keinen Cop / FBI / Soldaten grabben!");
    return 1;
    }
    if(IsPlayerInAnyVehicle(person))
    {
    SendClientMessage(playerid, COLOR_GREY, " Ziel ist in einem Auto!");
    return 1;
    }
    if(person == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selbst grabben!"); return 1; }
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == 2)
    {
    new playerVehicle = GetPlayerVehicleID(playerid);
    PutPlayerInVehicle(person, playerVehicle, 3);
    GetPlayerName(person, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest von %s ins Farzeug gezogen.", sendername);
    SendClientMessage(person, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s ins Fahrzeug gezogen.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* %s hat %s ins Fahrzeug gezogen", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    GameTextForPlayer(giveplayerid, "~r~Festgenommen", 2500, 3);
    TogglePlayerControllable(person, 0);
    PlayerCuffed[person] = 2;
    PlayerCuffedTime[person] = 180;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du fährst kein Auto!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht in deine Nähe!");
    return 1;
    }
    }
    }
    }
    else if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5 || PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8)
    {
    if(PlayerInfo[playerid][pRank] < 4)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du brauchst Rang 4 oder höher! !");
    return 1;
    }
    new person;
    person = strval(tmp);
    if(IsPlayerConnected(person))
    {
    if(person != INVALID_PLAYER_ID)
    {
    if(GetDistanceBetweenPlayers(playerid,person) <= 8)
    {
    if(IsPlayerInAnyVehicle(person))
    {
    SendClientMessage(playerid, COLOR_GREY, " Ziel ist in einem Auto!");
    return 1;
    }
    if(person == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selbst grabben!"); return 1; }
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == 2)
    {
    new playerVehicle = GetPlayerVehicleID(playerid);
    PutPlayerInVehicle(person, playerVehicle, 3);
    GetPlayerName(person, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest in ein Farzeug gezogen.", sendername);
    SendClientMessage(person, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s ins Fahrzeug gezogen.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    GameTextForPlayer(giveplayerid, "~r~gefesselt", 2500, 3);
    TogglePlayerControllable(person, 0);
    PlayerCuffed[person] = 2;
    PlayerCuffedTime[person] = 240;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du fährst kein Auto!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht in deine Nähe!");
    return 1;
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Cop / FBI / Soldat / Mafiosi!");
    }
    }
    return 1;
    }


    if(strcmp(cmd, "/ungrab", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(gTeam[playerid] == 2 || IsACop(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /ungrab [ID]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (ProxDetectorS(8.0, playerid, giveplayerid))
    {
    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selbst ungrabben!"); return 1; }
    if(PlayerCuffed[giveplayerid])
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest von %s freigelassen.", sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s freigelassen.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* %s hat %s freigelassen.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    GameTextForPlayer(giveplayerid, "~g~Freiheit", 2500, 3);
    TogglePlayerControllable(giveplayerid, 1);
    PlayerCuffed[giveplayerid] = 0;
    RemovePlayerFromVehicle(giveplayerid);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Person hat keine Handschellen!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht bei dir!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Offline!");
    return 1;
    }
    }
    else if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5 || PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 8 || PlayerInfo[playerid][pLeader] == 8)
    {
    if(PlayerInfo[playerid][pRank] < 4)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du brauchst Rang 4 oder höher! !");
    return 1;
    }
    new person;
    person = strval(tmp);
    if(IsPlayerConnected(person))
    {
    if(person != INVALID_PLAYER_ID)
    {
    if(GetDistanceBetweenPlayers(playerid,person) <= 8)
    {
    if(IsPlayerInAnyVehicle(person))
    {
    SendClientMessage(playerid, COLOR_GREY, " Ziel ist in einem Auto!");
    return 1;
    }
    if(person == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selbst ungrabben!"); return 1; }
    if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == 2)
    {
    if(PlayerTied[giveplayerid])
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du wurdest entfesselt.", sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Du hast %s entfesselt.", giveplayer);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    GameTextForPlayer(giveplayerid, "~g~Entfesselt", 2500, 3);
    TogglePlayerControllable(giveplayerid, 1);
    PlayerCuffed[giveplayerid] = 0;
    RemovePlayerFromVehicle(giveplayerid);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Der Spieler ist nicht gefesselt !");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du fährst kein Auto!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Spieler ist nicht in deine Nähe!");
    return 1;
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Cop / FBI / Soldat!");
    }
    }//not connected
    return 1;
    }

  • Es fängt ja nur an zu laggen, wenn der Timer von 20 Personen ausgefürht wird. Desweiteren läuft der Timer nicht 24/7 oder so. Man koennte ihn aber auch mit einem anderen Timer verbinden.


    Beispiel:


    forward GetPos(playerid);
    //command


    new Float: GetX, Float: GetY, Float: GetZ;
    GetPlayerPos(giveplayerid, GetX, GetY, GetZ);
    SetplayerPos(giveplayerid, Getx+1, GetY+1, GetZ);
    SetTimer("GetPos","100", 0);

  • Also erstmal danke an Alle die mir geholfen haben.
    Aber es bleibt immer noch die Frage wie genau das geht mit dem hinterher ziehen..
    Aufjedenfall hat Cardoso recht mit dem Timer und so ^^ Naja und das mit Porten...
    Und ich denke so Stark wird das nicht Laagen wenn der Server eh nur mit 10-15Leute ist :D