Pickup - System

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
  • Heyho.
    Eigentlich funktioniert alles, bisauf, dass ich die Waffe nicht bekomme, wenn ich durchlaufen....
    #define MAX_PICKS 30


    enum Picks_Info
    {
    iconID,
    waffenID,
    muniID,
    Float:x,
    Float:y,
    Float:z
    }


    new PickInfo[MAX_PICKS][Picks_Info];


    //OnGameModeInit
    for(new pi=1; pi<MAX_PICKS; pi++)
    {
    LoadPicks(pi);
    }


    //OnPlayerPickupPickup
    GivePlayerWeapon(playerid,PickInfo[pickupid][waffenID],PickInfo[pickupid][muniID]);


    //Erstellung
    ocmd:cpick(playerid,params[])
    {
    if(!istPlayerAdmin(playerid,8))return SendClientMessage(playerid,arot,"Info: Du kannst mit deinem Rang keine PickUps erstellen!");
    new pick, waffe, munni, Float:xx, Float:yy, Float:zz;
    GetPlayerPos(playerid,xx,yy,zz);
    if(sscanf(params,"iii",pick,waffe,munni))
    {
    SendClientMessage(playerid,weis,"Benutzung: /cpick [Pickup ID] [Waffen ID] [Munnition]");
    SendClientMessage(playerid,weis,"IDs: Deagle=348, MP5=353, AK=355, M4=356, Sniper=358");
    return 1;
    }
    CreatePick(xx,yy,zz,pick,waffe,munni);
    return 1;
    }


    //Stocks
    stock LoadPicks(pickupid)
    {
    new DatFile[64];
    format(DatFile,64,"/Picks/%d.ini",pickupid);
    PickInfo[pickupid][x]=dini_Float(DatFile,"PosX");
    PickInfo[pickupid][y]=dini_Float(DatFile,"PosY");
    PickInfo[pickupid][z]=dini_Float(DatFile,"PosZ");
    PickInfo[pickupid][iconID]=dini_Int(DatFile,"PickupID");
    PickInfo[pickupid][waffenID]=dini_Int(DatFile,"WaffenID");
    PickInfo[pickupid][muniID]=dini_Int(DatFile,"Munni");
    CreatePickup(PickInfo[pickupid][iconID],1,PickInfo[pickupid][x],PickInfo[pickupid][y],PickInfo[pickupid][z],0);
    //CreatePickup(dini_Int(DatFile,"PickupID"),1,dini_Float(DatFile,"PosX"),dini_Float(DatFile,"PosZ"),dini_Float(DatFile,"PosZ"),0);
    return 1;
    }


    stock CreatePick(Float:xx, Float:yy, Float:zz, pickup, waffen, munni)
    {
    new DatFile[64];
    for(new pp=1; pp<MAX_PICKS; pp++)
    {
    if(dini_Exists(DatFile))return 1;
    format(DatFile,64,"/Picks/%d.ini",pp);
    dini_Create(DatFile);
    PickInfo[pp][x]=dini_FloatSet(DatFile,"PosX",xx);
    PickInfo[pp][y]=dini_FloatSet(DatFile,"PosY",yy);
    PickInfo[pp][z]=dini_FloatSet(DatFile,"PosZ",zz);
    PickInfo[pp][iconID]=dini_IntSet(DatFile,"PickupID",pickup);
    PickInfo[pp][waffenID]=dini_IntSet(DatFile,"WaffenID",waffen);
    PickInfo[pp][muniID]=dini_IntSet(DatFile,"Munni",munni);
    return LoadPicks(pp);
    }
    return 1;
    }