dcmd 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
  • Hallo liebe Breadfisher,



    habe es mal auf die Leichte Art versucht und mit dcmd den Befehle /heal playerid gescriptet leider fehlgeschlagen mit 15 Fehlener :(


    Ich hoffe ihr könnt mir helfen



    hier die Fehler:



    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1708) : error 017: undefined symbol "dcmd_heal"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1715) : error 017: undefined symbol "sscanf"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1716) : error 001: expected token: ")", but found "return"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1714) : warning 203: symbol is never used: "pID"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1714 -- 1718) : error 017: undefined symbol "pID"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1722) : error 001: expected token: "-identifier-", but found "new"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1723) : error 017: undefined symbol "medicname"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1723) : error 017: undefined symbol "medicname"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1724) : error 017: undefined symbol "pID"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1724) : error 017: undefined symbol "name"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1725) : error 017: undefined symbol "name"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1726) : error 017: undefined symbol "string2"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1726) : error 017: undefined symbol "string2"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1728) : error 017: undefined symbol "pID"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1729) : error 017: undefined symbol "pID"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1730) : warning 209: function "OnPlayerCommandText" should return a value
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1731) : error 010: invalid function or declaration
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1924) : warning 209: function "OnPlayerEnterVehicle" should return a value
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(2728) : warning 203: symbol is never used: "KickPlayer"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    15 Errors.




    und hier der Command:



    dcmd_heal(playerid,params[])
    {
    if(gTeam[playerid] == TEAM_MEDIC)
    {
    return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Medic");
    }
    new pID;
    if(sscanf(params,"u",pID)
    return SendClientMessage(playerid,COLOR_GREY,"Benutze: /heal[PlayerID/PartOfName]");
    }
    if(!IsPlayerConnected(pID))
    {
    return SendClientMessage(playerid,COLOR_GREY,"Der Spieler ist nicht Onine");
    }
    new string[128],new string2[128],medicname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,medicname,sizeof medicname);
    GetPlayerName(pID,name, sizeof name);
    format(string,sizeof string,"Du wurdest von %s geheilt",name);
    format(string2, sizeof string2,"Du hast %s geheilt",medicname);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SendClientMessage(pID,COLOR_LIGHTBLUE,string2);
    SetPlayerHealth(pID,100);
    }
    return 1;
    }

  • dcmd_heal(playerid,params[])
    {
    new pID;
    if(gTeam[playerid] != TEAM_MEDIC) // Es muss != Medic sein ;-)
    {
    return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Medic");
    }
    if(sscanf(params,"u",pID){
    return SendClientMessage(playerid,COLOR_GREY,"Benutze: /heal[PlayerID/PartOfName]");
    }
    if(!IsPlayerConnected(pID))
    {
    return SendClientMessage(playerid,COLOR_GREY,"Der Spieler ist nicht Onine");
    }
    new string[128],new string2[128],medicname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,medicname,sizeof medicname);
    GetPlayerName(pID,name, sizeof name);
    format(string,sizeof string,"Du wurdest von %s geheilt",name);
    format(string2, sizeof string2,"Du hast %s geheilt",medicname);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SendClientMessage(pID,COLOR_LIGHTBLUE,string2);
    SetPlayerHealth(pID,100);
    }
    return 1;
    }
    So müsstes gehen :thumbup:

  • 11 Fehler :(




    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1376) : error 017: undefined symbol "dcmd_heal"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1383) : error 017: undefined symbol "sscanf"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1390) : error 001: expected token: "-identifier-", but found "new"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1391) : error 017: undefined symbol "medicname"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1391) : error 017: undefined symbol "medicname"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1392) : error 017: undefined symbol "name"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1392) : error 017: undefined symbol "name"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1393) : error 017: undefined symbol "name"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1394) : error 017: undefined symbol "string2"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1394) : error 017: undefined symbol "string2"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1396) : error 017: undefined symbol "string2"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1924) : warning 209: function "OnPlayerEnterVehicle" should return a value
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(2728) : warning 203: symbol is never used: "KickPlayer"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    11 Errors.


  • dcmd_heal(playerid,params[])
    {
    new pID;
    if(gTeam[playerid] != TEAM_MEDIC) // Es muss != Medic sein ;-)
    {
    return SendClientMessage(playerid,COLOR_GREY,"Du bist kein Medic");
    }
    if(sscanf(params,"u",pID)){
    return SendClientMessage(playerid,COLOR_GREY,"Benutze: /heal[PlayerID/PartOfName]");
    }
    if(!IsPlayerConnected(pID))
    {
    return SendClientMessage(playerid,COLOR_GREY,"Der Spieler ist nicht Onine");
    }
    new string[128], string2[128],medicname[MAX_PLAYER_NAME],name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,medicname,sizeof medicname);
    GetPlayerName(pID,name, sizeof name);
    format(string,sizeof string,"Du wurdest von %s geheilt",name);
    format(string2, sizeof string2,"Du hast %s geheilt",medicname);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SendClientMessage(pID,COLOR_LIGHTBLUE,string2);
    SetPlayerHealth(pID,100);
    return 1;
    }



    Ist getestet und funzt.

  • gut nurnoch 2 Errors :(




    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1376) : error 017: undefined symbol "dcmd_heal"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1383) : error 017: undefined symbol "sscanf"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1402) : warning 225: unreachable code
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1923) : warning 209: function "OnPlayerEnterVehicle" should return a value
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(2727) : warning 203: symbol is never used: "KickPlayer"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    2 Errors.





    Zeilen dazu:



    Zeile 1376:



    dcmd_heal(playerid,params[])



    Zeile 1383:



    if(sscanf(params,"u",pID))

  • Du brauchst das sscanf Makro xD (Link steht in meiner Signatur) und du musst bei OnPlayerCommandText über dem return 0; schreiben
    dcmd(heal, 4 , cmdtext);

  • Das sscanf Makro finde ich nicht vielleicht ist das das hier wen ja habe ich 3 Fehler




    stock sscanf(string[], format[], {Float,_}:...)
    {
    #if defined isnull
    if (isnull(string))
    #else
    if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
    #endif
    {
    return format[0];
    }
    #pragma tabsize 4
    new
    formatPos = 0,
    stringPos = 0,
    paramPos = 2,
    paramCount = numargs(),
    delim = ' ';
    while (string[stringPos] && string[stringPos] <= ' ')
    {
    stringPos++;
    }
    while (paramPos < paramCount && string[stringPos])
    {
    switch (format[formatPos++])
    {
    case '\0':
    {
    return 0;
    }
    case 'i', 'd':
    {
    new
    neg = 1,
    num = 0,
    ch = string[stringPos];
    if (ch == '-')
    {
    neg = -1;
    ch = string[++stringPos];
    }
    do
    {
    stringPos++;
    if ('0' <= ch <= '9')
    {
    num = (num * 10) + (ch - '0');
    }
    else
    {
    return -1;
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num * neg);
    }
    case 'h', 'x':
    {
    new
    num = 0,
    ch = string[stringPos];
    do
    {
    stringPos++;
    switch (ch)
    {
    case 'x', 'X':
    {
    num = 0;
    continue;
    }
    case '0' .. '9':
    {
    num = (num << 4) | (ch - '0');
    }
    case 'a' .. 'f':
    {
    num = (num << 4) | (ch - ('a' - 10));
    }
    case 'A' .. 'F':
    {
    num = (num << 4) | (ch - ('A' - 10));
    }
    default:
    {
    return -1;
    }
    }
    }
    while ((ch = string[stringPos]) > ' ' && ch != delim);
    setarg(paramPos, 0, num);
    }
    case 'c':
    {
    setarg(paramPos, 0, string[stringPos++]);
    }
    case 'f':
    {
    new changestr[16], changepos = 0, strpos = stringPos;
    while(changepos < 16 && string[strpos] && string[strpos] != delim)
    {
    changestr[changepos++] = string[strpos++];
    }
    changestr[changepos] = '\0';
    setarg(paramPos,0,_:floatstr(changestr));
    }
    case 'p':
    {
    delim = format[formatPos++];
    continue;
    }
    case '\'':
    {
    new
    end = formatPos - 1,
    ch;
    while ((ch = format[++end]) && ch != '\'') {}
    if (!ch)
    {
    return -1;
    }
    format[end] = '\0';
    if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
    {
    if (format[end + 1])
    {
    return -1;
    }
    return 0;
    }
    format[end] = '\'';
    stringPos = ch + (end - formatPos);
    formatPos = end + 1;
    }
    case 'u':
    {
    new
    end = stringPos - 1,
    id = 0,
    bool:num = true,
    ch;
    while ((ch = string[++end]) && ch != delim)
    {
    if (num)
    {
    if ('0' <= ch <= '9')
    {
    id = (id * 10) + (ch - '0');
    }
    else
    {
    num = false;
    }
    }
    }
    if (num && IsPlayerConnected(id))
    {
    setarg(paramPos, 0, id);
    }
    else
    {
    #if !defined foreach
    #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
    #define __SSCANF_FOREACH__
    #endif
    string[end] = '\0';
    num = false;
    new
    name[MAX_PLAYER_NAME];
    id = end - stringPos;
    foreach (Player, playerid)
    {
    GetPlayerName(playerid, name, sizeof (name));
    if (!strcmp(name, string[stringPos], true, id))
    {
    setarg(paramPos, 0, playerid);
    num = true;
    break;
    }
    }
    if (!num)
    {
    setarg(paramPos, 0, INVALID_PLAYER_ID);
    }
    string[end] = ch;
    #if defined __SSCANF_FOREACH__
    #undef foreach
    #undef __SSCANF_FOREACH__
    #endif
    }
    stringPos = end;
    }
    case 's', 'z':
    {
    new
    i = 0,
    ch;
    if (format[formatPos])
    {
    while ((ch = string[stringPos++]) && ch != delim)
    {
    setarg(paramPos, i++, ch);
    }
    if (!i)
    {
    return -1;
    }
    }
    else
    {
    while ((ch = string[stringPos++]))
    {
    setarg(paramPos, i++, ch);
    }
    }
    stringPos--;
    setarg(paramPos, i, '\0');
    }
    default:
    {
    continue;
    }
    }
    while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
    {
    stringPos++;
    }
    while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
    {
    stringPos++;
    }
    paramPos++;
    }
    do
    {
    if ((delim = format[formatPos++]) > ' ')
    {
    if (delim == '\'')
    {
    while ((delim = format[formatPos++]) && delim != '\'') {}
    }
    else if (delim != 'z')
    {
    return delim;
    }
    }
    }
    while (delim > ' ');
    return 0;
    }





    Fehler:




    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1378) : error 017: undefined symbol "dcmd_heal"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1381) : warning 225: unreachable code
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1381) : error 017: undefined symbol "dcmd_heal"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1388) : error 017: undefined symbol "params"
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1408) : warning 225: unreachable code
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(1929) : warning 209: function "OnPlayerEnterVehicle" should return a value
    C:\Dokumente und Einstellungen\Nunzio Tuccio\Desktop\Server\samp03asvr_R4_win32\gamemodes\Spirit-Script!_1.66.pwn(2982) : warning 203: symbol is never used: "KickPlayer"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    3 Errors.


  • Add mich mal bei ICQ oder lad das Script mal bei Pastebin hoch, dann schau ichs mir mal an.

    Einmal editiert, zuletzt von ]hp[ ()

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