Gespawnte Objecte destroyen

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
  • Moin,


    Also ich habe fogendes Problem. Ich spawne ingame als Admin mit /co ein Object. Der befehl dazu folgt.



    dcmd_co(playerid,params[])
    {
    new oID;
    if(sscanf(params, "d", oID))
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /co [Objekt-ID]");
    }
    if(PlayerInfo[playerid][pAdmin]<1337)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Admin Level 1337!");
    }
    else
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateObject(oID, x, y, z+0, 0, 0, 0);
    SendClientMessage(playerid,COLOR_GRAD2,"Object erfolgreich gespawnt.");
    }
    return 1;
    }



    Nun suche ich nach einem Cmd wie ich die gespawnten Objecte wieder Destroye. Danke im vorraus.

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)


  • dcmd_co(playerid,params[])
    {
    new oID;
    if(sscanf(params, "d", oID))
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /co [Objekt-ID]");
    }
    if(PlayerInfo[playerid][pAdmin]<1337)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Admin Level 1337!");
    }
    else
    {
    new Float:x, Float:y, Float:z, obj;
    GetPlayerPos(playerid, x, y, z);
    obj = CreateObject(oID, x, y, z+0, 0, 0, 0);
    SendClientMessage(playerid,COLOR_GRAD2,"Object erfolgreich gespawnt.");
    }
    return 1;
    }

    Object mit

    DestroyObject(obj)

    zerstören

  • Edit : Falsch gelesen, danke :D denke damit müsste es gehen

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)

  • Habe nun folgendes hinbekommen :D



    dcmd_co(playerid,params[])
    {
    new oID;
    if(sscanf(params, "d", oID))
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /co [Objekt-ID]");
    }
    if(PlayerInfo[playerid][pAdmin]< 1337)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Admin Level 1337!");
    }
    else
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    new obj = CreateObject(oID, x, y, z+0, 0, 0, 0);
    CreatedObjects[CreatedObject] = obj;
    SendClientMessage(playerid,COLOR_GREY,"Object %d spawned.", obj); //hier sagt man mir zuviele arguments
    }
    return 1;
    }


    dcmd_destroyobject(playerid,params[])
    {
    new oID;
    if(sscanf(params, "d", oID))
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /destroyobject [Objekt-ID]");
    }
    if(PlayerInfo[playerid][pAdmin] < 1337)
    {
    return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Admin Level 1337!");
    }
    else
    {
    DestroyObject(obj); // hier kennt er (obj) nicht
    SendClientMessage(playerid,COLOR_GRAD2,"Object erfolgreich zerstört.");
    }
    return 1;
    }

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)

    Einmal editiert, zuletzt von Freggel ()

  • Macht doch nicht immer alles so umständlich.
    Der Code geht doch viel kürzer.
    dcmd_co(playerid,params[])
    {
    new oID,str[128];
    if(sscanf(params, "d", oID))return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /co [Objekt-ID]");
    if(PlayerInfo[playerid][pAdmin]< 1337)return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Admin Level 1337!");
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    new obj = CreateObject(oID, x, y, z+0, 0, 0, 0);
    CreatedObjects[CreatedObject] = obj;
    format(str,sizeof(str),"Object %d spawned.",oID);
    SendClientMessage(playerid,COLOR_GREY,str);
    return 1;
    }


    */Edit:
    Code geändert.
    Wenn du einen Integer/Namen etc. angeben willst, musst du mit format arbeiten.

  • Nett gemeint, aber wie man das Object nun mit "Id" spawnt weiß ich. Wie fragt man das ganze beim /destroyObject ab?

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)

  • Leider nein, er Createt das Object mit einer "Id", aber wenn ich es Destroyen will, gehts nicht.


    ich arbeite bei /co mit (obj)
    und bei /destroyobject mit oID, habe versucht bei /destroyobject mit (obj) aber klappt nicht


    Edit: Gibt nur en Warning das str nicht verwendet wird

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)

    2 Mal editiert, zuletzt von Freggel ()

  • Bei dir ist alles okay, das ist hier bei dem Code. Zudem wird das Object mit einer ID erstellt, denoch nicht zerstört


    Kann niemand helfen? X(

    Glaub keinem, der Dir sagt, dass Du nichts verändern kannst.
    Die, die das behaupten, haben nur vor der Veränderung Angst.
    Es sind dieselben, die erklären, es sei gut so, wie es ist.
    Und wenn Du etwas ändern willst, dann bist Du automatisch Terrorist (Die Ärzte - Deine Schuld)

    Einmal editiert, zuletzt von Freggel ()