Filterscript Objekte löschen

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
  • Hallo Breadfisher;


    Ich habe eine Frage:


    Wenn man mit einem FS Objekte erstellt, werden diese beim LAden des FS ja generiert.
    Wie muss man diese Objekte im Script erstellen, damit man beim Beenden des FS diese gelöscht bekommt.


    Ich hätte gerne eine Platzsparende Methode.


    Sowas wie das bitte nicht, da ich mehrere Objekte habe und ich nicht für jedes Objekt eine Eigene Variable erstellen möchte.


    ob1 = Crea...
    ob2 = Crea...


    DestroyObject(ob1);
    DestroyObject(ob2);


    usw..


    MFG
    Hagi

  • beim ersten objekt:


    ob1 = Crea...


    dann ganz oben bei den anderen globalen Variabelen: new Objects = 200 // Anzahl der Objekte im Filterscript.


    bei OnFilterscriptExit:



    for(new i = ob1; i < ob1+Objects; i++)
    {
    DestroyObject(i);
    }



    nicht getestet!

  • stimmt auch wieder ^^, ich würde in die FS Objekte in eine Array packen wie hier



    enum daten{obj_model,Float:x,Float:y,Float:z,Float:rx,Float:ry,Float:rz,id};
    new ObjectArray[][daten] = {
    {object_model,x,y,z,rx,ry,rz,-1} // -1 ist die ID aber die bleibt so ^^
    };


    und beim erstellen


    for(new i = 0;i<sizeof(ObjectArray);i++)
    {
    ObjectArray[i][id] = CreateObject(ObjectArray[i][obj_model],ObjectArray[i][x],ObjectArray[i][y],ObjectArray[i][z],ObjectArray[i][rx],
    ObjectArray[i][ry],ObjectArray[i][rz]);
    }



    beim zerstören :


    for(new i = 0;i<sizeof(ObjectArray);i++)
    {
    DestroyObject(i);
    }

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Hab das jetzt in mein Script eingefügt aber.
    Bekomme ganz viele Errors wengen tag missmatch.


    Hier der Code


    Spoiler anzeigen
    enum daten
    {
    object_model,
    Float:x,
    Float:y,
    Float:z,
    Float:rx,
    Float:ry,
    Float:rz,
    obid,
    };

    Spoiler anzeigen
    new ObjectArray[][daten]=
    {
    {4021,774.44512939453, -1377.1868896484, 19.089702606201, 0, 0, 179.52978515625,-1},
    {18284, 741.8193359375, -1334.31640625, 15.487449645996, 0, 0, 89.637451171875,-1},
    {18284, 758.3291015625, -1334.4228515625, 15.464859008789, 0, 0, 89.681396484375,-1},
    {11472, 739.52795410156, -1360.5679931641, 21.517259597778, 0, 0, 271.06530761719,-1},
    {8168, 784.31585693359, -1334.2930908203, 14.488562583923, 0, 0, 286.34997558594,-1},
    {966, 774.46942138672, -1338.0792236328, 12.536458969116, 0, 0, 180.16491699219,-1},
    {968, 774.40106201172, -1338.0791015625, 13.361457824707, 0, 0.0150146484375, 1.9849853515625,-1},
    {983, 774.02416992188, -1333.6032714844, 13.226024627686, 0, 0, 0,-1},
    {983, 774.02545166016, -1335.1796875, 13.222462654114, 0, 0, 0,-1},
    {2921, 781.81372070313, -1337.4370117188, 15.977033615112, 0, 0, 0,-1},
    {3030, 783.22552490234, -1371.9456787109, 23.801792144775, 0, 0, 0,-1},
    {3030, 779.05944824219, -1371.2769775391, 23.801788330078, 0, 0, 75.744964599609,-1},
    {3030, 767.79534912109, -1370.9716796875, 23.759822845459, 0, 0, 91.760009765625,-1},
    {1596, 754.31842041016, -1360.7225341797, 27.246898651123, 0, 0, 91.714996337891,-1},
    {1596, 752.30578613281, -1382.0170898438, 27.246898651123, 0, 0, 268.28527832031,-1},
    {3920, 787.05065917969, -1363.9964599609, 15.902317047119, 0, 0, 89.684936523438,-1},
    {3920, 787.13592529297, -1351.341796875, 15.902317047119, 0, 0, 89.681396484375,-1},
    {3920, 787.18902587891, -1338.6889648438, 15.902317047119, 0, 0, 89.681396484375,-1},
    {638, 783.00817871094, -1369.5528564453, 13.236062049866, 0, 0, 89.684936523438,-1},
    {638, 778.9580078125, -1369.4934082031, 13.236062049866, 0, 0, 89.681396484375,-1},
    {638, 767.83673095703, -1369.3292236328, 13.236062049866, 0, 0, 89.681396484375,-1},
    {638, 763.76550292969, -1371.0560302734, 13.236062049866, 0, 0, 128.94134521484,-1},
    {1364, 785.87005615234, -1366.3546142578, 13.324427604675, 0, 0, 270.31518554688,-1},
    {1364, 785.95611572266, -1361.6044921875, 13.324427604675, 0, 0, 270.31311035156,-1},
    {1364, 758.38098144531, -1361.4814453125, 13.30126285553, 0, 0, 93.75341796875,-1},
    {1364, 759.63287353516, -1371.5882568359, 13.302644729614, 0, 0, 150.43835449219,-1},
    {983, 783.798828125, -1358.2828369141, 13.224402427673, 0, 0, 89.638000488281,-1},
    {1251, 783.53759765625, -1354.7705078125, 12.699187278748, 0, 0, 270.00524902344,-1},
    {1251, 783.59710693359, -1351.2917480469, 12.699187278748, 0, 0, 270,-1},
    {1251, 783.58215332031, -1347.8089599609, 12.699187278748, 0, 0, 270,-1},
    {1251, 783.54333496094, -1344.0799560547, 12.699187278748, 0, 0, 270,-1},
    {983, 783.74005126953, -1340.2840576172, 13.224402427673, 0, 0, 89.637451171875,-1},
    };

    Einmal editiert, zuletzt von Hagi ()

  • Also ich hab das trotz der Warnings mal ausprobiert.
    Es geht zwar, aber warum gibt er mir diese Warnings.


    Und vorher, befor ich getestet habe, hab ich noch was verändert


    Beim lezten


    {983, 783.74005126953, -1340.2840576172, 13.224402427673, 0, 0, 89.637451171875,-1},
    in ObjectArray bekomme ich zusätzlich zu den TagMissmatch diese Errors


    newsreporter.pwn(70) : error 029: invalid expression, assumed zero
    newsreporter.pwn(70) : error 008: must be a constant expression; assumed zero
    Bezieht sich auf diese Zeile
    Direkt unterhalb des letzten von Object Array
    };


    Wenn ich allerdings beim lezten das , wegmache
    {983, 783.74005126953, -1340.2840576172, 13.224402427673, 0, 0, 89.637451171875,-1}


    Bekomme ich nur noch Tag Missmatch, welche sich auf alle Dinge in ObjectArray beziehen
    Allerdings wird das letzte Object nicht mehr gelöscht beim Beenden

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen