/search Problem

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
  • Beitrag von Kasakow ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Hallo und zwar habe ich folgendes Problem:
    Wenn ich den Befehl eingeben kommt "Befehl nicht gefunden".
    Ich habe den Fehler bereits debuggt, der Fehler liegt irgendwo hinter der 5 aber ich kann mir leider nicht vorstellen, wo er sein soll, vielleicht kann mir ja einer von euch helfen :)


    MfG!
    CMD:search(playerid, params[])
    {
    if(sInfo[playerid][frak] == 1)
    {
    if(sInfo[playerid][fduty] == 0) return SendClientMessage(playerid, COLOR_RED, "[Info] Du musst im Dienst sein, um diesen Befehl zu nutzen!");
    new uID;
    SendClientMessage(playerid, COLOR_WHITE, "1");
    if(sscanf(params, "u", uID)) return SendClientMessage(playerid, COLOR_BLUE, "[Info]"cWhite" Verwende:"cBlue" /search [Spielername/ID]");
    SendClientMessage(playerid, COLOR_WHITE, "2");
    if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "[Info] Der Spieler ist nicht connected!");
    SendClientMessage(playerid, COLOR_WHITE, "3");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(uID, X, Y, Z);
    SendClientMessage(playerid, COLOR_WHITE, "4");
    if(!IsPlayerInRangeOfPoint(playerid, 7.5, X, Y, Z)) return SendClientMessage(playerid, COLOR_RED, "[Info] Du bist nicht in der Nähe des Spielers!");
    SendClientMessage(playerid, COLOR_WHITE, "5");
    new string[1500], gunname[32];
    for(new i=0; i<12; i++)
    {
    GetWeaponNameEx(sInfo[playerid][weapons][i], gunname);
    format(string, sizeof(string), ""cWhite"%s%s || %i Schuss\n",string,gunname,sInfo[playerid][ammo][i]);
    }
    SendClientMessage(playerid, COLOR_WHITE, "6");
    new string2[128];
    format(string, sizeof(string), ""cBlue"[SAPD]"cWhite" Durchsuchung: %s", GetName(uID));
    SendClientMessage(playerid, COLOR_WHITE, "7");
    ShowPlayerDialog(playerid, DIALOG_SEARCH, DIALOG_STYLE_MSGBOX, string2, string, "Schliessen", "");
    SendClientMessage(playerid, COLOR_WHITE, "8");
    return 1;
    }
    else
    {
    return 0;
    }
    }


    //Edit Rechtsschreibefehl
    Jeffry:

  • Wie hast du "weapons" in sInfo deklariert (im enum)?
    Hast du eine mehrzeilige Meldung mit vielen Zahlen im Compiler?


    weapons ist im Enum so definiert:
    weapons[11]


    Nein, ich bekomme keinen komischen Code im Kompiler.


    GetWeaponNameEx sieht so aus:

    stock GetWeaponNameEx(weaponid)
    {
    new weapon[40], len = sizeof(weapon);
    switch(weaponid)
    {
    case 0: return strcat(weapon, "Keine Waffe", len);
    case 1: return strcat(weapon, "Schlagring", len);
    case 2: return strcat(weapon, "Golfschläger", len);
    case 3: return strcat(weapon, "Schlagstock", len);
    case 4: return strcat(weapon, "Messer", len);
    case 5: return strcat(weapon, "Baseball Schläger", len);
    case 6: return strcat(weapon, "Schaufel", len);
    case 7: return strcat(weapon, "Billiard Kö", len);
    case 8: return strcat(weapon, "Katana", len);
    case 9: return strcat(weapon, "Kettensäge", len);
    case 10: return strcat(weapon, "Lila Dildo", len);
    case 11: return strcat(weapon, "Dildo", len);
    case 12: return strcat(weapon, "Vibrator", len);
    case 13: return strcat(weapon, "Silberner Vibrator", len);
    case 14: return strcat(weapon, "Blumenstrauß", len);
    case 15: return strcat(weapon, "Gehstock", len);
    case 16: return strcat(weapon, "Granate", len);
    case 17: return strcat(weapon, "Tränen Gas", len);
    case 18: return strcat(weapon, "Molotov Cocktail", len);
    case 22: return strcat(weapon, "Pistole (9mm)", len);
    case 23: return strcat(weapon, "Silenced Pistole (9mm)", len);
    case 24: return strcat(weapon, "Desert Eagle", len);
    case 25: return strcat(weapon, "Shotgun", len);
    case 26: return strcat(weapon, "Abgesägte Shotgun", len);
    case 27: return strcat(weapon, "Combat Shotgun", len);
    case 28: return strcat(weapon, "Uzi", len);
    case 29: return strcat(weapon, "MP5", len);
    case 30: return strcat(weapon, "AK-47", len);
    case 31: return strcat(weapon, "M4", len);
    case 32: return strcat(weapon, "Tec-9", len);
    case 33: return strcat(weapon, "Country Rifle", len);
    case 34: return strcat(weapon, "Sniper Rifle", len);
    case 35: return strcat(weapon, "RPG", len);
    case 36: return strcat(weapon, "Wäresuch-RPG", len);
    case 37: return strcat(weapon, "Flammenwerfer", len);
    case 38: return strcat(weapon, "Minigun", len);
    case 39: return strcat(weapon, "Rucksack-Bombe", len);
    case 40: return strcat(weapon, "Zünder", len);
    case 41: return strcat(weapon, "Pefferspray", len);
    case 42: return strcat(weapon, "Feuerlöscher", len);
    case 43: return strcat(weapon, "Kamera", len);
    case 44: return strcat(weapon, "Night Vision Goggles", len);
    case 45: return strcat(weapon, "Thermal Goggles", len);
    case 46: return strcat(weapon, "Fallschirm", len);
    default: return strcat(weapon, "Keine Waffe", len);
    }
    return 1;
    }


    den Befehl habe ich mittlerweile abgeändert, er sieht nun so aus:
    CMD:search(playerid, params[])
    {
    if(sInfo[playerid][frak] == 1)
    {
    if(sInfo[playerid][fduty] == 0) return SendClientMessage(playerid, COLOR_RED, "[Info] Du musst im Dienst sein, um diesen Befehl zu nutzen!");
    new uID;
    if(sscanf(params, "u", uID)) return SendClientMessage(playerid, COLOR_BLUE, "[Info]"cWhite" Verwende:"cBlue" /search [Spielername/ID]");
    if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, COLOR_RED, "[Info] Der Spieler ist nicht connected!");
    new Float:X, Float:Y, Float:Z;
    GetPlayerPos(uID, X, Y, Z);
    if(!IsPlayerInRangeOfPoint(playerid, 7.5, X, Y, Z)) return SendClientMessage(playerid, COLOR_RED, "[Info] Du bist nicht in der Nähe des Spielers!");
    new string[1500];
    for(new i=0; i<12; i++)
    {
    format(string, sizeof(string), "%s%s || %i Schuss",string,GetWeaponNameEx(sInfo[playerid][weapons][i]), sInfo[playerid][ammo][i]);
    }
    new string2[128];
    format(string, sizeof(string), ""cBlue"[SAPD]"cWhite" Durchsuchung: %s", GetName(uID));
    ShowPlayerDialog(playerid, DIALOG_SEARCH, DIALOG_STYLE_MSGBOX, string2, string, "Schliessen", "");
    return 1;
    }
    else
    {
    return 0;
    }
    }

  • Ok, dann mach mal:
    format(string, sizeof(string), "%s%s || %i Schuss",string,GetWeaponNameEx(sInfo[playerid][weapons][i]), sInfo[playerid][ammo][i]);
    zu:
    format(string, sizeof(string), "%s%s || %i Schuss",string,"Test", sInfo[playerid][ammo][i]);


    Zeigt es dir dann etwas an?

  • Ok, dann mach mal:
    format(string, sizeof(string), "%s%s || %i Schuss",string,GetWeaponNameEx(sInfo[playerid][weapons][i]), sInfo[playerid][ammo][i]);
    zu:
    format(string, sizeof(string), "%s%s || %i Schuss",string,"Test", sInfo[playerid][ammo][i]);


    Zeigt es dir dann etwas an?


    Nope, ändert nichts

  • Oh ja, hab den Fehler grade entdeckt als ich es debuggen wollte, dann müsste es klappen:
    format(string, sizeof(string), ""cBlue"[SAPD]"cWhite" Durchsuchung: %s", GetName(uID));
    zu:
    format(string2, sizeof(string2), ""cBlue"[SAPD]"cWhite" Durchsuchung: %s", GetName(uID));