Spieler nach Waffen durchsuchen?

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
  • Also du solltest erstmal die Grundkenntnisse vom Scripten kennen z.B die Abfrage in welche frak der spieler ist und dann kannst du das mit den Waffen durchsuchen auch schnell und einfach machen.

    Sei du Selbst, denn all die anderen Gibt es schon !



    **Savas**

  • Du kannst es so machen:

    new waffen[13][2];
    new waffenname[64];
    for (new i = 0; i < 13; i++)
    {
    GetPlayerWeaponData(player, i, waffen[i][0], waffen[i][1]);
    if(waffen[i][0] && waffen[i][1])
    {
    switch(waffen[i][0])
    {
    case 1:{waffenname = "Schlagring";}
    ...........
    }
    }
    }

    Was ist daran so schwer?

  • z.B die Abfrage in welche frak der spieler ist


    Das kann von Script zu Script anders sein. Kommt drauf an ob er ein enum benutz. Wenn ja heißt pInfo oder PlayerInfo oder wie auch immer. Also finde ich kann man nicht direkt aus den Grundkenntnissen herausfindenwie man Fraktionen abfragt. Und ich denke das man dazu eine if-Abfrage benutz ist allen klar.


    B2T: Wenn ich es in meinem Script machen sollte wäre es so.
    ocmd:checkwaffen(playerid, params[])
    {
    if(pInfo[playerid][pFrak] == FRAK_COP || pInfo[playerid][pFrak] == FRAK_ARMY ...)
    {
    //Code
    }
    }
    vielleicht hilft es dir ja weiter.


    Ps: Bitte korrigiert mich falls ich falsch liege.



  • new waffe[13]
    new ammox[13]
    for(new y = 0;y<13;y++){
    if(y == 1)
    {
    GetPlayerWeaponData(targetid,y,waffe1,ammox1);
    }else if(y == 2)
    {
    GetPlayerWeaponData(targetid,y,waffe2,ammox2);
    }else if(y == 3)
    {
    GetPlayerWeaponData(targetid,y,waffe3,ammox3);
    }else if(y == 4)
    {
    GetPlayerWeaponData(targetid,y,waffe4,ammox4);
    }else if(y == 5)
    {
    GetPlayerWeaponData(targetid,y,waffe5,ammox5);
    }else if(y == 6)
    {
    GetPlayerWeaponData(targetid,y,waffe6,ammox6);
    }else if(y == 7)
    {
    GetPlayerWeaponData(targetid,y,waffe7,ammox7);
    }else if(y == 8)
    {
    GetPlayerWeaponData(targetid,y,waffe8,ammox8);
    }else if(y == 9)
    {
    GetPlayerWeaponData(targetid,y,waffe9,ammox9);
    }else if(y == 10)
    {
    GetPlayerWeaponData(targetid,y,waffe10,ammox10);
    }else if(y == 11)
    {
    GetPlayerWeaponData(targetid,y,waffe11,ammox11);
    }else if(y == 12)
    {
    GetPlayerWeaponData(targetid,y,waffe12,ammox12);
    }else if(y == 13)
    {
    GetPlayerWeaponData(targetid,y,waffe13,ammox13);
    }
    }
    new text[256];
    format(text, sizeof(text),"------ INVENTAR VON %s ------", targetname);
    SendClientMessage(playerid,COLOR_RED,text);
    if(waffe1 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe1], ammox1);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe2 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe2], ammox2);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe3 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe3], ammox3);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe4 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe4], ammox4);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe5 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe5], ammox5);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe6 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe6], ammox6);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe7 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe7], ammox7);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe8 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe8], ammox8);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe9 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe9], ammox9);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe10 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe10], ammox10);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe11 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe11], ammox11);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe12 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe12], ammox12);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    if(waffe13 != 0)
    {
    format(text, sizeof(text),"--- Waffe: %s Munition: %i", waffen[waffe13], ammox13);
    SendClientMessage(playerid,COLOR_RED,text);
    }
    format(text, sizeof(text),"------ INVENTAR VON %s ------", targetname);
    SendClientMessage(playerid,COLOR_RED,text);


    Soll ich das dann bei Code eintragen?

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • xD wen du meinst das ich anfänger bin dann mein das bra
    is mir klar das man die nennen kann wie mann will ich wollte es dem hier nur ma zeigen !

    Sei du Selbst, denn all die anderen Gibt es schon !



    **Savas**

  • if(strcmp(cmd,"/friskw",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /friskw [playerid/PartOfName]");
    return 1;
    }
    if(!IsACop(playerid))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst keine anderen Leute durchsuchen!");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (ProxDetectorS(8.0, playerid, giveplayerid))
    {
    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber durchsuchen/You can not search yourself yourself!"); return 1; }
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new text1[20], text2[20], text3[20], text4[20], text5[20];
    if(PlayerInfo[giveplayerid][pGun1] > 0) { text1 = "| Waffen."; } else { text1 = "| -"; }
    if(PlayerInfo[giveplayerid][pGun2] > 0) { text2 = "| Waffen."; } else { text2 = "| -"; }
    if(PlayerInfo[giveplayerid][pGun3] > 0) { text4 = "| Waffen."; } else { text3 = "| -"; }
    if(PlayerInfo[giveplayerid][pGun4] > 0) { text5 = "| Waffen."; } else { text4 = "| -"; }
    format(string, sizeof(string), "|__________ Waffen von %s __________|", giveplayer);
    SendClientMessage(playerid, COLOR_WHITE, string);
    format(string, sizeof(string), "%s.", text1);
    SendClientMessage(playerid, COLOR_GREY, string);
    format(string, sizeof(string), "%s.", text2);
    SendClientMessage(playerid, COLOR_GREY, string);
    format(string, sizeof(string), "%s.", text3);
    SendClientMessage(playerid, COLOR_GREY, string);
    format(string, sizeof(string), "%s.", text4);
    SendClientMessage(playerid, COLOR_GREY, string);
    format(string, sizeof(string), "* %s hat %s nach Waffen durchsucht.", sendername ,giveplayer);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist nicht in deiner Nähe!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist Offline !");
    return 1;
    }
    }
    return 1;
    }


    Hab das so, geht aber nicht es zeigt mir keine Waffen an...


  • Hier ist ein Beispiel....


  • case 1:{waffenname = "Schlagring";}
    case 2:{waffenname = "Golfschläger";}
    case 3:{waffenname = "Schlagstock";}
    case 4:{waffenname = "Messer";}
    case 5:{waffenname = "Basketballschläger";}
    case 6:{waffenname = "Schaufel";}
    case 7:{waffenname = "Billardkö";}
    case 8:{waffenname = "Katana";}
    case 9:{waffenname = "Kettensäge";}
    case 10:{waffenname = "Dildo/Vibrator";}
    case 11:{waffenname = "Dildo/Vibrator";}
    case 12:{waffenname = "Dildo/Vibrator";}
    case 13:{waffenname = "Dildo/Vibrator";}
    case 14:{waffenname = "Blumen";}
    case 15:{waffenname = "Eisenstange";}
    case 16:{waffenname = "Granate";}
    case 17:{waffenname = "Tränengaß";}
    case 18:{waffenname = "Molotov";}
    case 22:{waffenname = "Pistole";}
    case 23:{waffenname = "Schallgedämpfte Pistole";}
    case 24:{waffenname = "Desert Eagle";}
    case 25:{waffenname = "Schrotflinte";}
    case 26:{waffenname = "Abgesägte Schrotflinte";}
    case 27:{waffenname = "Moderne Schrotflinte";}
    case 28:{waffenname = "Mirco SMG (Mac10)";}
    case 29:{waffenname = "SMG (MP5)";}
    case 30:{waffenname = "AK47";}
    case 31:{waffenname = "M4";}
    case 32:{waffenname = "Tec9";}
    case 33:{waffenname = "Gewehr";}
    case 34:{waffenname = "Sniper-Gewehr";}
    case 35:{waffenname = "Raketenwerfer";}
    case 37:{waffenname = "Flammenwerfer";}
    case 38:{waffenname = "Minigun";}
    case 41:{waffenname = "Sprühdose";}

    Hier sind alle Waffen.
    Verstehst du es jetzt?


  • if(strcmp(cmd,"/friskw",true)==0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Benutze: /friskw [playerid/PartOfName]");
    return 1;
    }
    if(!IsACop(playerid))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst keine anderen Leute durchsuchen!");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (ProxDetectorS(8.0, playerid, giveplayerid))
    {


    if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_GREY, "Du kannst dich nicht selber durchsuchen/You can not search yourself yourself!"); return 1; }
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "|__________ Waffen von %s __________|", giveplayer);
    SendClientMessage(playerid, COLOR_WHITE, string);
    new waffen[13][2];
    new string[128];
    new waffenname[64];
    new hatwaffe;
    for (new i = 0; i < 13; i++)
    {
    GetPlayerWeaponData(giveplayerid, i, waffen[i][0], waffen[i][1]);
    if(waffen[i][0] && waffen[i][1])
    {
    hatwaffe = 1;
    switch(waffen[i][0])
    {
    case 1:{waffenname = "Schlagring";}
    case 2:{waffenname = "Golfschläger";}
    case 3:{waffenname = "Schlagstock";}
    case 4:{waffenname = "Messer";}
    case 5:{waffenname = "Basketballschläger";}
    case 6:{waffenname = "Schaufel";}
    case 7:{waffenname = "Billardkö";}
    case 8:{waffenname = "Katana";}
    case 9:{waffenname = "Kettensäge";}
    case 10:{waffenname = "Dildo/Vibrator";}
    case 11:{waffenname = "Dildo/Vibrator";}
    case 12:{waffenname = "Dildo/Vibrator";}
    case 13:{waffenname = "Dildo/Vibrator";}
    case 14:{waffenname = "Blumen";}
    case 15:{waffenname = "Eisenstange";}
    case 16:{waffenname = "Granate";}
    case 17:{waffenname = "Tränengaß";}
    case 18:{waffenname = "Molotov";}
    case 22:{waffenname = "Pistole";}
    case 23:{waffenname = "Schallgedämpfte Pistole";}
    case 24:{waffenname = "Desert Eagle";}
    case 25:{waffenname = "Schrotflinte";}
    case 26:{waffenname = "Abgesägte Schrotflinte";}
    case 27:{waffenname = "Moderne Schrotflinte";}
    case 28:{waffenname = "Mirco SMG (Mac10)";}
    case 29:{waffenname = "SMG (MP5)";}
    case 30:{waffenname = "AK47";}
    case 31:{waffenname = "M4";}
    case 32:{waffenname = "Tec9";}
    case 33:{waffenname = "Gewehr";}
    case 34:{waffenname = "Sniper-Gewehr";}
    case 35:{waffenname = "Raketenwerfer";}
    case 37:{waffenname = "Flammenwerfer";}
    case 38:{waffenname = "Minigun";}
    case 41:{waffenname = "Sprühdose";}
    }
    format(string, sizeof(string), "Waffe: %s | Munition: %d", waffenname, waffen[i][1]);
    SendClientMessage(playerid, FARBE, stringw);
    }
    }
    if(!hatwaffe)
    {
    SendClientMessage(playerid, FARBE, "Der Spieler hat keine Waffen.");
    }


    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist nicht in deiner Nähe!");
    return 1;
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Der Spieler ist Offline !");
    return 1;
    }
    }
    return 1;
    }


    //edit: der code ist ja 1a eingerückt nach dem posten...

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