Message Problem

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,


    Ich möchte wenn man /1hoch macht dass kommt : Rampe hochgefahren
    und wenn man dann nochmal /1hoch macht dass kommt : Rampe schon hochgefahren


    habe hier einen Code es funktioniert halbwegs


    wenn ich /1hoch mache kommen beide messeges^^


    Hier code:


    //----oben----
    #define Oben "Rampe Hochgefahren!"
    #define Unten "Rampe Runtergefahren!"
    #define istschon1 "Rampe ist schon Unten"
    #define istschon2 "Rampe ist schon Oben"
    //-----commandtext----
    if (strcmp(cmdtext, "/1hoch", true)==0) {
    oben[playerid]=1;
    MoveObject(rampe1,-1920.050171, 286.516052, 41.834320, 1);
    SendClientMessage(playerid,MSG,Oben);
    if(oben2[playerid] == 1) {
    SendClientMessage(playerid,MSG,istschon2); }
    return 1;}



    Ich bitte um hilfe^^

  • Sollte es so nicht gehen, habe ich noch eine andere Möglichkeit.


    //----oben----
    #define Oben "Rampe Hochgefahren!"
    #define Unten "Rampe Runtergefahren!"
    #define istschon1 "Rampe ist schon Unten"
    #define istschon2 "Rampe ist schon Oben"
    //-----commandtext----
    if (strcmp(cmdtext, "/1hoch", true)==0)
    {
    if(oben2[playerid] != 1)
    {
    oben[playerid]=1;
    MoveObject(rampe1,-1920.050171, 286.516052, 41.834320, 1);
    SendClientMessage(playerid,MSG,Oben);
    }
    else
    {
    SendClientMessage(playerid,MSG,istschon2);
    }
    return 1;
    }

  • wenn ich /1hoch mach dann kommt 1ne message die : "Rampe Runtergefahren!"
    wenn ich nochmal /1hoch mach kommt "Rampe Runtergefahren!"
    aber es soll ja : "Rampe ist schon Oben"
    kommen mhm wie könnte man des machen??

    Einmal editiert, zuletzt von [Psc]Tuner[Pwn] ()

  • //----oben----
    #define Oben "Rampe Hochgefahren!"
    #define Unten "Rampe Runtergefahren!"
    #define istschon1 "Rampe ist schon Unten"
    #define istschon2 "Rampe ist schon Oben"
    //-----commandtext----
    if (strcmp(cmdtext, "/1hoch", true)==0) {
    if(oben[playerid]) return SendClientMessage(playerid,MSG,istschon2);
    oben[playerid]=1;
    MoveObject(rampe1,-1920.050171, 286.516052, 41.834320, 1);
    SendClientMessage(playerid,MSG,Oben);
    return 1;}
    Ich frage mich jetzt nur, warum du das für jeden einzelnden Player machst (oben[playerid]), wäre es nicht logischer, die Variable nur 1 mal zu erstellen? Du hast ja nicht so viele Tore, wie Spieler

  • naja ich hab 2 toore
    //Edit: hab noch 1 Problem...


    Auto geht nicht mit 8|:huh:
    if (strcmp(cmdtext, "/enter", true)==0) {
    new auto = GetPlayerVehicleID(playerid);
    SetVehiclePos(auto, -1935.1556,246.2274,34.4609);
    SetPlayerPos(playerid,-1935.1556,246.2274,34.4609);
    return 1; }

  • Ich mein aber 200 mal das gleiche Tor^^
    Ansonsten könnte es jeder ein mal öffnen, auch, wenn es bereits offen ist
    //EDIT:
    das mitm Auto muss gehen?
    Sonst machs einfach mal so:
    if (strcmp(cmdtext, "/enter", true)==0) {
    SetVehiclePos(GetPlayerVehicleID(playerid), -1935.1556,246.2274,34.4609);
    return 1; }

  • if(!strcmp(cmdtext,"/enter"))
    {
    if(IsPlayerInAnyVehicle(playerid)) {
    SetVehiclePos(GetPlayerVehicleID(playerid), -1935.1556,246.2274,34.4609);
    }
    else {
    SetPlayerPos(playerid, -1935.1556,246.2274,34.4609);
    }
    return 1;
    }


    Sollte funktionieren.