Waffe nach Tod als CreatePickup

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,


    ich glaube ich gehe die Sache komplett falsch an, aber ich hab von dem System echt keine Ahnung:



    public OnPlayerDeath(playerid, killerid, reason)
    {
    new Float: Tod_X, Float: Tod_Y, Float: Tod_Z, TotenWaffe[14][2];
    GetPlayerPos(playerid, Tod_X, Tod_Y, Tod_Z);
    for (new i = 0; i < 13; i++)
    {
    GetPlayerWeaponData(playerid, i, TotenWaffe[i][0], TotenWaffe[i][1]);
    CreatePickup(TotenWaffe[i][0], 1, Tod_X, Tod_Y, Tod_Z, 0);
    }




    return 1;
    }


    Es ist sicherlich alles falsch, aber ich habs wenigstens versucht - könntet Ihr mir das erklären, wie es richtig geht?

    Mit freundlichen Grüßen,
    Dachdecker

  • Du musst schon eine richtige Pickup ID verwenden. Waffen ID's sind nicht gleich die Model ID's fuer Pickups. Steht auch auf der Dokumentationsseite von [wiki]CreatePickup[/wiki]


    http://wiki.sa-mp.com/wiki/Pickup_IDs


    Aber bitte behalte im Hinterkopf, dass Du so auf EINER Stelle ziemlich viele Pickups erstellst. Ich glaube nicht, dass irgendjemand sehen kann was da alles rumliegt wenn sie ineinander erstellt werden.

  • nett wie du auch was dazu erklärst.. Du schickst mir zwar freundlicherweise die SA-MP wikis aber dazu kommt keine Erklärung.. ich kann mit den Wikis alleine nicht anfangen... da ich nicht weiß wie ich es schreiben soll

    Mit freundlichen Grüßen,
    Dachdecker

  • @Dachdecker bei meinen Posts muss der User fuer gewoehnlich nachdenken. Dein Problem wird exakt auf der Wiki Seite mit einem Beispiel erklaert. Was soll ich da noch sagen? Ich erwarte zumindest von Dir einen Ansatz. Dann helfe ich weiter. Du hast grad mal 5 Minuten ueberlegt. Bevor Du den Post ueberhaupt bemerkt hast wahrscheinlich 4 Minuten. Das ist mir nicht genug.

  • Ich habe es jetzt erneut versucht mit GetPlayerWeapon, kenne aber immer noch keine Option, wie ich ein CreatePickup erstellen kann, da ja die WeaponIDs != ObjectIDs sind..



    new Float: Tod_X, Float: Tod_Y, Float: Tod_Z, TotenWaffe[MAX_PLAYERS];
    GetPlayerPos(playerid, Tod_X, Tod_Y, Tod_Z);
    TotenWaffe[playerid] = GetPlayerWeapon(playerid);
    CreatePickup(TotenWaffe[playerid], 1, Tod_X, Tod_Y, Tod_Z+1.5, 0);

    Mit freundlichen Grüßen,
    Dachdecker

  • Schau mal ins Wiki:



    Da hast du die Modelid von einem Schlagring...so und nun kannst du einfach ein Array erstellen:


    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Beitrag von linux_ ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Bereits beantwortet ().
  • Ich habe jetzt den stock GetWeaponPickup(weaponid) erstellt komplett aber er erstellt ingame keinen Pickup.



    waffe = GetPlayerWeapon(playerid);
    CreatePickup(GetWeaponPickup(waffe), 2, Tod_X, Tod_Y, Tod_Z+1.5, GetPlayerVirtualWorld(playerid));

    Mit freundlichen Grüßen,
    Dachdecker

  • GetPlayerWeapon is von samp, ich denke du meinst GetWeaponPickup



    stock GetWeaponPickup(weaponid)
    {
    new pickup = -1;
    switch(weaponid)
    {
    case 1: pickup = 331;
    case 2: pickup = 333;
    case 3: pickup = 334;
    case 4: pickup = 335;
    case 5: pickup = 336;
    case 6: pickup = 337;
    case 7: pickup = 338;
    case 8: pickup = 339;
    case 9: pickup = 341;
    case 10: pickup = 321;
    case 11: pickup = 322;
    case 12: pickup = 323;
    case 13: pickup = 324;
    case 14: pickup = 325;
    case 15: pickup = 326;
    case 16: pickup = 342;
    case 17: pickup = 343;
    case 18: pickup = 344;
    case 19: pickup = -1;
    case 20: pickup = -1;
    case 21: pickup = -1;
    case 22: pickup = 346;
    case 23: pickup = 347;
    case 24: pickup = 348;
    case 25: pickup = 349;
    case 26: pickup = 350;
    case 27: pickup = 351;
    case 28: pickup = 352;
    case 29: pickup = 353;
    case 30: pickup = 355;
    case 31: pickup = 356;
    case 32: pickup = 372;
    case 33: pickup = 357;
    case 34: pickup = 358;
    case 35: pickup = 359;
    case 36: pickup = 360;
    case 37: pickup = 361;
    case 38: pickup = 362;
    case 39: pickup = 363;
    case 40: pickup = 364;
    case 41: pickup = 365;
    case 42: pickup = 366;
    case 43: pickup = 367;
    case 45: pickup = 369;
    case 46: pickup = 371;
    }
    return pickup;
    }

    Mit freundlichen Grüßen,
    Dachdecker