Beiträge von Tomsen

    Ich hab damals nen Tazerbefehl gescriptet.


    Wenn man jmd. mit dem Tazerobjekt geschlagen hat, war der gefreezed.


    Jetzt wollt ich das im zusammenhang mit /cuff machen. Ich merke, wenn ich die andere Person schlage passiert zum ersten nichts, zum zweiten kackt dann der server ab.. wieso?


    if(newkeys == KEY_FIRE)
    {
    if(tazer[playerid]==1)
    {
    if(IsACop(playerid))
    {
    if(GetPlayerWeapon(playerid)==0)
    {
    new Float:cx,Float:cy,Float:cz;
    GetPlayerPos(playerid,cx,cy,cz);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(playerid != i)
    {
    if(!IsACop(i))
    {
    if(IsPlayerInRangeOfPoint(i,2.0,cx,cy,cz))
    {
    if(tazered[i]==0)
    {
    if(tazeraufladen[playerid]==0)
    {
    new string[128];
    format(string, sizeof(string), "%s hat %s getazert",SpielerName(playerid),SpielerName(i));
    ProxDetector(15.0,i,string,lila,lila,lila,lila,lila);
    tazered[i]=1;
    tazeraufladen[playerid]=1;
    TogglePlayerControllable(i,0);
    SetTimerEx("untazer",15000,1,"i",i);
    SetTimerEx("aufladen",20000,1,"playerid",playerid);
    GameTextForPlayer(i,"~b~Getazert!",5000,3);
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }
    }


    Vorher gings halt schonmal
    Ich weiß nicht woran das liegen soll ._.


    danke im vorraus

    Sind doch alle Koords drin oder?


    CreateObject(5837, 1560, -1635.1999511719, 14.300000190735, 0, 0, 0);//fahrstuhl unten
    CreateObject(5837, 1560, -1635.1999511719,28.799999237061, 0, 0, 0);//fahrstuhl oben

    Muss ich da noch was ändern, weil so komme n4 Errors


    error 028: invalid subscript (not an array or too many subscripts): "liftmode"
    warning 215: expression has no effect
    error 001: expected token: ";", but found "]"
    error 029: invalid expression, assumed zero
    fatal error 107: too many error messages on one line

    Das ist nen Object, von so ner kontrollstation. die soll hochfahren/runterfahren und da kann man sich reinstellen
    damit soll man ans dach zu den helies kommen.


    Kann man das anstatt mit den Variablen liftmode mit else machen?

    Ich hab ein Selfmade. ;) Cops & Robbers. Alles rein selbstgeschrieben, bis auf sachen wo ich etwas hilfe brauchte. ^^ sprich andere haben mir es richtig gemacht.


    DreamLife Mir ist bewusst, das man ObjectStreamer verwendet um sowas zu verhindern. Aber ließ mal was die über dir geraten haben.

    Hey, ich habe 2 Probleme bei denen ich euch um hilfe bitten muss.


    Sie haben beide etwas, wie schon oben erwähnt, mit MoveDynamicObject zu tun.


    Also, erstmal der Befehls für /pdlift.


    Es kommt zwar die Meldung, das sich der Lift in bewegung gesetzt hat (sogar gleich 2 mal) aber das Object tut praktisch nichts.


    if(strcmp(cmdtext,"/pdlift",true)==0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,1560, -1635.1999511719, 14.300000190735)) return SendClientMessage(playerid,rot,"Du bist nicht am Lift beim PD!");
    {
    if(IsACop(playerid))
    {
    if(liftmode[playerid]==0)
    {
    MoveDynamicObject(lspdlift,1560, -1635.1999511719, 28.799999237061, 2);
    SendClientMessage(playerid,gruen,"Der Lift hat sich Bewegung gesetzt!");
    liftmode[playerid]=1;
    }
    if(liftmode[playerid]==1)
    {
    MoveDynamicObject(lspdlift,1560, -1635.1999511719, 14.300000190735,2);
    SendClientMessage(playerid,gruen,"Der Lift hat sich Bewegung gesetzt!");
    liftmode[playerid]=0;
    }
    }
    }
    return 1;
    }


    Sowas ähnliches bei meinem Tor.
    Es geht zwar runter, aber kommt nicht hoch.


    if(strcmp(cmdtext,"/tor",true)==0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5,1588.8000488281, -1638.1999511719, 13.800000190735))return SendClientMessage(playerid,rot,"Du bist nicht nahe genug am Tor!");//ist er nähe lspdtor
    {
    if(IsACop(playerid))//und auch noch cop, soll es aufgehen, wenn nicht, dann nicht
    {
    MoveDynamicObject(lspdgate,1588.8000488281, -1638.1999511719, 4.6999998092651,4,0,0,0);
    SendClientMessage(playerid,gruen,"Das Tor schließt sich in 5 Sekunden von alleine!");
    SetTimer("lspdgatezu",5000,0);
    }
    }
    return 1;
    }


    public lspdgatezu()
    {
    MoveDynamicObject(lspdgate,1588.8000488281, -1638.1999511719, 13.800000190735,0,0,0);
    return 1;
    }


    Errors kommen keine.


    danke im vorraus

    Ich hab nen Problem.


    Bei mir schmeist es jeden ausn Car, auch die Cops, die drin sitzen bleiben müssten.


    Kann mir wer helfen?

    if(newstate==PLAYER_STATE_DRIVER)
    {
    for(new i=0; i<sizeof(CopCar); i++)
    {
    if(GetPlayerVehicleID(playerid)==CopCar[i])
    {
    if(!GetPVarInt(playerid,"TeamCops"))
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,rot,"Du bist nicht im Team Cops.");
    }
    }
    }
    }


    //edit
    Dann hätt ich noch eine Frage, wo muss ich es hinmachen, wenn ich TogglePlayerControllable aus und an mache, das er praktisch gleich stehen bleibt und nicht erst einsteigt.
    Wenn ich das anstatt removeplayerfromvehicle mache dann sitzt der ja schon drin. wo mach ich dass das es vorher geht, oder funktioniert das überhaupt in dieser variante?


    Vielen Dank im Vorraus


    Lg byBSE

    Ah okay danke. Ich hab das damals so verstanden das u & s dafür ist, das man entweder ID oder den Spieler Namen benutzen kann, beim eingeben des Befehls.


    //edit: An sich funktionierts, aber wenn man eine ID außer seine eigene eingibt, kommt der text, allerdings keine Name (weil auch kein anderer online ist)
    geb ich meine id ein, kommt "Der Spieler ist nicht online!"

    Hey,


    ich versuch mich grad an nem Stop Befehl, sollte eigentlich ne leichte Sache werden, entpupte sich (für mich jedenfalls) aber als ein Chaos :D


    Also, der Sinn des Befehls: Die Cops machen /stop ID und damit kommen nachrichten an die gesendete ID bzw. den Player, und an alle Cops, das der und der Officer diesen und jenen Zivilisten aufgefordert hat anzuhalten.


    Allerdings kommt immer nur: Benutze: /stop ID


    und der Befehl funktioniert halt nicht so wie er soll, zB wenn man falsche ID kommt, das da die meldung kommt .Es kommt halt immer Bentuze: ... ich weiß aber nicht wieso (die nachricht die dann pID bekommt hab ich noch nicht drin, sollte aber kein Prob sein)


    hier der Befehl:


    ocmd:stop(playerid,params[])
    {
    if(IsACop(playerid))
    {
    new pID,string[128];
    if(sscanf(params,"us",pID))return SendClientMessage(playerid,rot,"Benutzung: /stop [ID/Name]");
    {
    if(IsPlayerConnected(pID))return SendClientMessage(playerid,rot,"Dieser Spieler ist nicht online!");
    {
    format(string,sizeof(string),"HQ an alle Einheiten: Officer %s hat %s aufgefordert anzuhalten.",SpielerName(playerid),SpielerName(pID));
    SendCopMessage(hellblau,string);
    SendCopMessage(hellblau,"HQ an alle Einheiten: Warten Sie auf weiter Befehle!");
    return 1;
    }
    }

    }
    }


    Ich weiß das kaum return drin ist, weil ich es auf verschied. art und weiße probiert habe, es aber nie geklappt hat.


    Schnellle Hilfe, und danke im vorraus.


    Lg byBSE

    Hey,


    hab vor kurzen Teams erstellt, alles ganz super.


    Nun will ich es so haben, das die jeweiligen Teams auch nur ihre Autos fahren können.


    Ich hab schon mehreres versucht, was ich euch nicht alles aufzählen will, eins davon war zB.: Bei OnPlayerEnterVehicle, ne abfrage von welchem Team der Ist, und dann ob er in zB; dem Auto, dem oder dem sitzt.


    Allerdings funktioniert alles nicht.


    //edit
    die abfrage ist so


    if(gTeam[playerid]=TeamCops


    kann mir jmd. sagen wie ich das am besten anstelle?


    Danke im vorraus


    Lg byBSE