Speedpolice Stopper

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
  • Hi meine Frage ist ob man das in http://www.youtube.com/watch?v=4-oJBYzYLOA ab 3:14 irgendwie scripten kann das das auto dann irgendwie nicht mehr funktioniert das das auto gefreezt is aber net der player falls es sowas gibt,
    es wäre cool wenn es auch abgewandelt is aber das fharzeug sollte nichtmehr funktionieren.




    MfG. Virus :D

  • Doppelpost ist verboten!
    Regeln lesen!
    Es gibt eine "Bearbeiten" Funktion mit der du deinen Beitrag bearbeiten kannst!
    Aber auch dort gibt es Regeln!
    Sowas wie "Pushen" ist nicht gestattet!
    Z.b
    //Edit: Hat jemand was?[Verboten]
    Oder
    //Edit: Link erneuert[Erlaubt]Aber nur wenn dies auch gemacht wurde!Alles lässt sich prüfen!


    Zu deinem Thread,
    sowas lässt sich mit sicherheit Scripten!
    Einfach .zb new freeze[MAX_PLAYERS];
    OnPlayerEnterVehicle:
    if(freeze[playerid] == 1)
    {
    TogglePlayerControllable(playerid,false);
    }
    Musst halt noch nen CMD erstellen wie und wo er das "freeze" auf 1 setzt!


    //Edit: Schreibfehler bei der Abfrage koregiert!


  • das will er jan icht er möchte ja das man einsteigen kann wie man will
    ohne befehl nur das sich das auto nicht bewegt

  • Das ließe sich via CMD ganz einfach machen.
    dafür braust du nur das :


    http://wiki.sa-mp.com/wiki/SetVehicleVelocity
    http://wiki.sa-mp.com/wiki/IsPlayerInRangeOfPoint


    das ganze bastelst du dir ungefähr wie ein tazer zusammen ausm gf.


    Also das der die umgebung scannt und den spieler im fahrzeug in der nähe von XX metern eine variable umspringen lässt die dann SetVehicleVeloCity auslöst und das fahrzeug stoppt und unfähig macht.


    ist eig einfach machbar aber "Selbst ist der Mann"

    „Auge um Auge - und die ganze Welt wird blind sein.“
    - Mahatma Gandhi

  • oke sry. für den doppelpost (pusht) aber wie genau mach ich das??, den ich bin eig. noch naja ich kann schon so 26% alles scrpiten aber davon hab ich jetz ma keine ahnung xD


  • //==========================Header=========================
    forward FahrzeugScan(p1);
    forward Float:FahrzeugScannCheck(p1,p2);
    new spielerzuweisung[100];
    new globaltimer[100];
    #define ROT 0xFF0000FF
    //=========================================================



    //========================OnplayerConnect====================
    spielerzuweisung[playerid] = 0;
    globaltimer[playerid] = 0;
    //=========================================================


    //======================OnplayerUpdate =====================
    //Wenn du diese Public nicht nutzen willst erstelle dir eine neue und lasse die per Timer aufrufen.


    if(IsPlayerInAnyVehicle(playerid) && spielerzuweisung[playerid] == 16){if(globaltimer[i] == 0){spielerzuweisung[i] = 0;}else{globaltimer[i] --;}}
    if(IsPlayerInAnyVehicle(playerid) && spielerzuweisung[playerid] == 16){SetVehicleVelocity(GetPlayerVehicleID(playerid),0.0,0.0,0.0);}
    //=========================================================


    //=====================OnPlayerCommand====================
    if (strcmp(cmd, "/emp", true) ==0 )
    {
    //if(/*Hier deine Team definierung der Cops. aber so das wenn er nicht im team ist. != */ ) return SendClientMessage(playerid,ROT,"Sie sind kein Beamter");
    new stringwlog[128];
    new Float:x,Float:y,Float:z;
    new ziel = FahrzeugScan(playerid);
    GetVehiclePos(GetPlayerVehicleID(ziel),x,y,z);
    if(spielerzuweisung[ziel] == 16) return 1;
    if(!IsPlayerInRangeOfPoint(playerid,15.0,x,y,z)) return SendClientMessage(playerid,ROT,"Es befindet sich keine Fahrzeug in der Nähe");
    format(stringwlog, sizeof(stringwlog), "Spieler: %s wurde mit ein EMP schlag getroffen und lahm gelegt",Spielername(ziel));
    SendClientMessage(playerid,ROT, stringwlog);
    format(stringwlog, sizeof(stringwlog), "Beamter: %s hat sie mit einer EMP waffe getroffen.",Spielername(playerid));
    SendClientMessage(ziel,ROT, stringwlog);
    spielerzuweisung[ziel] = 16;
    globaltimer[ziel] = 15000; // Hier bestimmst du die Zeit wie lange das Fahrzeug unfähig sein soll.
    }
    //=========================================================


    //=====================Irgendwo im GM=======================
    public FahrzeugScan(p1)
    {
    new x,Float:dis,Float:dis2,player;
    player = -1;
    dis = 99999.99;
    for (x=0;x<MAX_PLAYERS;x++)
    {
    if(IsPlayerConnected(x))
    {
    if(x != p1)
    {
    if(IsPlayerInAnyVehicle(x))
    {
    dis2 = FahrzeugScannCheck(x,p1);
    if(dis2 < dis && dis2 != -1.00)
    {
    dis = dis2;
    player = x;
    }
    }
    }
    }
    }
    return player;
    }
    public Float:FahrzeugScannCheck(p1,p2)
    {
    new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
    if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
    {
    return -1.00;
    }
    GetVehiclePos(GetPlayerVehicleID(p1),x1,y1,z1);
    GetVehiclePos(GetPlayerVehicleID(p2),x2,y2,z2);
    return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
    }
    //=========================================================

    „Auge um Auge - und die ganze Welt wird blind sein.“
    - Mahatma Gandhi

    Einmal editiert, zuletzt von Dog ()

  • Tja, Glaskugel leider kaputt... Welche Errors zu welchen Zeilen?

  • oke sry. für den doppelpost (pusht) aber wie genau mach ich das??, den ich bin eig. noch naja ich kann schon so 26% alles scrpiten aber davon hab ich jetz ma keine ahnung xD

    Glaube nicht das du 26Prozent beherscht.
    Das ist eine Menge dann würdest du dich mit solchen Kleinigkeiten auskennen.
    @DogZone: Wäre es nach dem CMD /emp nicht einfacher die Autokords in ein enum zu Schreiben und durch einen Timer der sich wiederholt die Autoposition auf diese Position setzten falls man sich bewegt hat? :-O

    Why do programmers always mix up Halloween and Christmas?
    Oct 31 == Dec 25

  • oke, hab das meiste gefixxt bekomme aber immer noch 4 erros



    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(13785) : error 017: undefined symbol "i"
    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(13785) : error 017: undefined symbol "i"
    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(13785) : error 017: undefined symbol "i"
    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(13785) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.






    hier:


    if(IsPlayerInAnyVehicle(playerid) && spielerzuweisung[playerid] == 16){if(globaltimer[i] == 0){spielerzuweisung[i] = 0;}else{globaltimer[i] --;}}

  • oke also :


    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(14723) : error 017: undefined symbol "cmd"
    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(14732) : error 017: undefined symbol "Spielername"
    C:\Users\SuB_Z3r0\Desktop\Server\gamemodes\gfl.pwn(14734) : error 017: undefined symbol "Spielername"




    if (strcmp(cmd, "/emp", true) ==0 )//14723
    format(stringwlog, sizeof(stringwlog), "Spieler: %s wurde mit ein EMP schlag getroffen und lahm gelegt",Spielername(ziel)); //14732
    format(stringwlog, sizeof(stringwlog), "Beamter: %s hat sie mit einer EMP waffe getroffen.",Spielername(playerid));//14734



    das sind die Errors


  • new cmd[128];
    /*cmd = strtok(cmdtext, idx);*/


    stock Spielername(playerid)
    {
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof(pname));
    return pname;
    }

    „Auge um Auge - und die ganze Welt wird blind sein.“
    - Mahatma Gandhi

  • ALSO, das gute: auf meinem server sind shconmal keine erros mehr dafür, funktionieren aberkeine commands mehr!

    Einmal editiert, zuletzt von _ViRuS_ ()