autobordcomputer nur als Fahrer ausführbar

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
  • ocmd:autobordcomputer(playerid,params)
    {
    {
    GetPlayerState(playerid)!=PLAYER_STATE_DRIVER;
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }


    Wenn ich den so benutzen möchte kommt nur die Warnung:
    samplernen.p(679) : warning 215: expression has no effect


    und jetzt weiss ich nicht weiter

  • Mein Dialog:


    if(dialogid== DIALOG_Autosystem)
    {
    if(response)
    {
    if(listitem==0)
    {
    if(!IsPlayerInAnyVehicle(playerid))return
    SendClientMessage(playerid,rot,"Sie sind nicht im Fahrzeug");
    //motorfunktion
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    {
    SendClientMessage(playerid,blau,"Sie sind nicht der Fahrer dieses Fahrzeuges");
    }
    new vID=GetPlayerVehicleID(playerid), motor, licht, alarm, tueren, bonnet, boot, objective;
    //Motor an/ausschalten:
    GetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    if(motor==1) motor = 0;
    else motor = 1;
    SetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    SendClientMessage(playerid,blau,"Sie haben den Motor Ihres Fahrzeuges angeschlaten/ausgeschalten!");
    }
    }
    if(listitem==1)
    {
    if(!IsPlayerInAnyVehicle(playerid))return
    SendClientMessage(playerid,rot,"Sie sind nicht im Fahrzeug");
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    return SendClientMessage(playerid,blau,"Sie befinden sich nicht in Ihr Fahrzeug");
    new vID=GetPlayerVehicleID(playerid),
    motor,
    licht,
    alarm,
    tueren,
    bonnet,
    boot,
    objective;
    //licht an/ausschalten:
    GetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    if(licht==1){
    licht = 0;
    }
    else
    {
    licht = 1;
    }
    SetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    SendClientMessage(playerid,blau,"Du hast das Licht an eingeschalten/ausgeschalten");
    }
    if(listitem==2)
    {
    new motor,
    licht,
    alarm,
    tueren,
    bonnet,
    boot,
    objective;


    new vID = INVALID_VEHICLE_ID;
    if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
    {
    new Float:Pos[3];
    for(new i=0;i<MAX_VEHICLES; i++)
    {
    GetVehiclePos(i, Pos[0], Pos[1], Pos[2]);
    if(IsPlayerInRangeOfPoint(playerid, 5.0, Pos[0], Pos[1], Pos[2]))
    {
    vID = i;
    break;
    }
    }
    }
    else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    vID = GetPlayerVehicleID(playerid);
    }
    if(vID == INVALID_VEHICLE_ID)
    {
    SendClientMessage(playerid, 0xFF0000FF, "Error: Nicht nahe oder in einem Fahrzeug.");
    }
    //abschliessen:
    GetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    if(tueren==1)
    {
    tueren = 0;
    }
    else
    {
    tueren = 1;
    }
    SetVehicleParamsEx(vID,motor,licht,alarm,tueren,bonnet,boot,objective);
    SendClientMessage(playerid,blau,"Sie haben die Türen Ihres Fahrzeuges abgeschlossen/aufgeschlossen!");
    }
    if(listitem==3)
    {
    new vID = GetPlayerVehicleID(playerid);
    if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, hellgrün, "Du bist in kein Auto!");
    for (new i = 0; i < sizeof(aInfo); i++)
    {
    if(vID == aInfo[i] [id_x])
    {
    if(aInfo[i][besitzer] == sInfo[playerid][db_id])
    {
    new query[256];
    GetVehiclePos(vID, aInfo[i][c_x],aInfo[i][c_y],aInfo[i][c_z]);
    GetVehicleZAngle(vID,aInfo[i][c_r]);
    format(query, sizeof(query), "UPDATE Autos SET x='%f',y='%f',z='%f',r='%f' WHERE id='%i'",aInfo[i] [c_x],aInfo[i] [c_y],aInfo[i] [c_z],aInfo[i] [c_r],aInfo[i] [db_id]);
    mysql_function_query(dbhandle,query,false," "," ");
    SendClientMessage(playerid, hellgrün, "Du hast dein Auto geparkt.");
    return 1;
    }
    break;
    }
    }
    return SendClientMessage(playerid, hellgrün, "Sie sitzen nicht in Ihr Fahrze!");
    }
    }


    obwohl es eingentlich nicht am Dialog liegt.


    Weill Beifahrer können den Befehl ausführen und sind nicht der fahrer

  • Hast du mal geschaut, was BlackAce geschrieben hat? Du hast eine halbwegs fertige Abfrage eingebaut, wo bloß nur noch das "if" fehlt und die Klammern richtig gesetzt werden müssen.

  • Blackshadowscript:


    Variante 1
    ocmd:autobordcomputer(playerid,params[])
    {
    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return 1;
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,Gruen,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    return 1;
    }


    Variante 2
    ocmd:autobordcomputer(playerid,params[])
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {

    Variante 2
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,Gruen,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }


    /E Denkfehler von mir behoben

  • Meine Befehl mit der Abfrage sieht so aus:


    ocmd:autobordcomputer(playerid,params)
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    {
    GetPlayerState(playerid)!=PLAYER_STATE_DRIVER
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }




  • ocmd:autobordcomputer(playerid,params)
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    {
    GetPlayerState(playerid)!=PLAYER_STATE_DRIVER
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }

    zu



    ocmd:autobordcomputer(playerid,params)
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    {
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }

  • Wenn ich es zu:


    ocmd:autobordcomputer(playerid,params)
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)
    {
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    }
    return 1;
    }


    mache kann ich kein autobordcomputer mehr aufrufen

  • if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)


    zu


    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • ocmd:autobordcomputer(playerid,params)
    {
    if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER) return SendClientMessage(playerid, rot, "Das kann nur der Fahrer!");
    ShowPlayerDialog(playerid,DIALOG_Autosystem,DIALOG_STYLE_TABLIST, "Autobordcomputer","Motor\tstarten\tauschalten\nlicht\tanschalten\tausschalten\ntüren\töffnen\tschliessen\nAutoparken\tparken","benutzen","abbrechen");
    SendClientMessage(playerid,grün,"Sie haben den Bordcomputer Ihres Fahrzeuges aufgerufen!");
    return 1;
    }