Einfache Frage - Objekte per Befehl erstellen oda entfernen is das so richtig?

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 leuts also ich möchte gerne per befehl ein Gemaptes Objekt an seinem Gemapten ort Erscheinen lassen und per befehl wieder verschwinden lassen. Nun wollte ich fragen ob das so stimmt. Sry konnte es ned anderst einfügen.


    Bitte um schnelle hilfe



    Also oben :


    //EDIT:


    new Baustelle;



    und weiter unten:



    //EDIT:



    public OnPlayerCommandText



    if (strcmp("/bauerst", cmdtext, true, 10) == 0)
    {
    Baustelle = CreateObject(1237, 1352.4276123047, -1160.2081298828, 22.716171264648, 0, 0, 9.99951171875);
    Baustelle = CreateObject(1237, 1352.5728759766, -1158.3972167969, 22.687110900879, 0, 0, 0);
    Baustelle = CreateObject(1237, 1352.3876953125, -1161.9124755859, 22.715019226074, 0, 0, 0);
    Baustelle = CreateObject(1237, 1352.2998046875, -1163.2170410156, 22.713777542114, 0, 0, 0);
    Baustelle = CreateObject(1237, 1352.2973632813, -1164.3770751953, 22.70223236084, 0, 0, 0);
    Baustelle = CreateObject(1237, 1352.3006591797, -1165.9028320313, 22.692762374878, 0, 0, 0);
    Baustelle = CreateObject(1237, 1353.517578125, -1145.1646728516, 22.709501266479, 0, 0, 1.99951171875);
    Baustelle = CreateObject(1237, 1352.6138916016, -1149.2716064453, 22.677528381348, 0, 0, 0);
    Baustelle = CreateObject(1237, 1357.4067382813, -1140.5114746094, 22.629323959351, 0, 0, 0);
    SendClientMessageToAll(COLOR_WHITE, "|___________ Regierungsnachrichten ___________|");
    SendClientMessageToAll(COLOR_LIGHTRED,"Die Bauarbeiten in Los Santos Haben begonnen!"); //Nachricht an alle Spieler, dass es eine gibt
    SendClientMessageToAll(COLOR_LIGHTRED,"Es muss mit Behinderungen und Verspätungen gerechnet werden!"); //Nachricht an alle Spieler, dass es eine gibt
    return 1;
    }


    if (strcmp("/bauentf", cmdtext, true, 10) == 0)
    {
    DestroyObject(Baustelle);
    SendClientMessageToAll(COLOR_WHITE, "|___________ Regierungsnachrichten ___________|");
    SendClientMessageToAll(COLOR_LIGHTGREEN,"Die Bauarbeiten in Los Santos Sind nun Beendet!"); //Nachricht an alle Spieler, dass es eine gibt
    SendClientMessageToAll(COLOR_LIGHTGREEN,"Los Santos ist wieder normal befahrbar!"); //Nachricht an alle Spieler, dass es eine gibt
    return 1;
    }

  • nein weil das mit coords stimmen nicht. (1237, 1352.4276123047, -1160.2081298828, 22.716171264648, 0, 0, 9.99951171875);
    du musst es so machen :


    if (strcmp( cmdtext,"/bauerst", true )==0)
    {
    if(baubit[playerid]==0)
    {
    new Float:x,Float:y,Float:z,Float:a;
    GetPlayerPos(playerid,x,y,z);
    GetPlayerFacingAngle(playerid,a);
    GetXYInFrontOfPlayer(playerid,x,y,2.0);
    Baustelle[playerid][0] = CreateObject(1237,x,y,z-0.5,0,0,a+90); // <- das mit z-550 oder +90 sind die coords wie die stehen sollen also die höhe, usw.
    Baustelle[playerid][1] = CreateObject(1237,x+2.0 * floatsin(-a+90, degrees),y+2.0 * floatcos(-a+90, degrees),z-0.5,0,0,a+90);
    usw.
    Baustelleebit[playerid]=1;
    SendClientMessage(playerid, COLOR_YELLOW,"DEIN TEXT");
    }
    }
    return 1;
    }
    if (strcmp( cmdtext,"/bauerst", true )==0)
    {
    DestroyObject(Baustelle[playerid][0]);
    DestroyObject(Baustelle[playerid][1]);
    usw.
    Sperrebit[playerid]=0;
    SendClientMessage(playerid, COLOR_YELLOW,"DEIN TEXT");
    }
    return 1;
    }