Beiträge von Meister007

    Hey,
    ich habe 2 Tore nebeneinander die gleichzeitig aufgehen sollen.
    Dummerweise bewegen sie sich leider nicht.
    Das hab ich bis jetzt alles da stehen:



    new tor1;
    new tor2;
    forward tor(); // Die 3 Sachen stehen ganz Oben




    tor1 = CreateObject(974,-2253.3000500,2207.1001000,12.1000000,0.0000000,0.0000000,14.0000000);
    tor1 = CreateObject(974,-2258.3999000,2205.8000500,12.1000000,0.0000000,0.0000000,13.9970000); //Das steht bei den Objekten



    if(strcmp("/tor",cmdtext,true,10)==0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 25.0, -2253.3000500, 2207.1001000, 12.1000000))
    {
    MoveObject(tor1,-2246.1001000, 2208.6999500, 12.2000000, 0.0000000, 0.0000000, 13.9970000);
    SetTimer("tor", 5000,0);
    SendClientMessage(playerid, 0x0F9C00FF, "Du hast das Tor für 5 Sekunden geöffnet");
    return 1;
    }
    if(IsPlayerInRangeOfPoint(playerid, 25.0, -2258.3999000, 2205.8000500, 12.1000000))
    {
    MoveObject(tor2, -2265.3999000, 2204.0000000, 12.2000000, 0.0000000, 0.0000000, 14.0000000);
    SetTimer("tor", 5000,0);
    return 1;
    }
    } // und das alles unter OnPlayerCommandText


    Die Message funktioniert, jedoch die öffnen sich nicht.
    Fehlt noch etwas oder hab ich etwa einen Fehler gemacht?
    Bitte um Hilfe


    MfG

    Hallo,
    ich bin im scripten ein absoluter Anfänger
    und wollte mal einen /kill CMD scripten.
    Ich krieg das aber nicht so ganz mit der Nachricht hin,
    wenn alle benachrichtigt werden, das der Player sich umgebracht hat.
    Das ist der Code:



    if(strcmp(cmdtext, "/kill", true) == 0) {
    new GetName[MAX_PLAYER_NAME],str[200];
    GetPlayerName(playerid,GetName,sizeof(GetName));
    format(str,sizeof(str),"%s hat sich selbst getötet.",GetName);
    SendClientMessageToAll( 0xD70000FF);
    SetPlayerHealth(playerid, 0.0);
    return 1;
    }
    return 0;
    }


    Ich denke die Antwort ist leicht, aber wie gesagt blutiger Anfänger.
    MfG

    Unter "Nützliche Codeschnipsel" steht das hier:



    if(strcmp(cmdtext, "/afk", true) == 0) {
    new str[256], pname[256]; GetPlayerName(playerid, pname, 256);
    format(str, 256, "*%s ist afk!", pname, cmdtext[4]);
    SendClientMessage(playerid, COLOR_RED, "Um dich Zurück zumelden, tippe /back");
    SendClientMessageToAll(0x4682B4AA, str);
    TogglePlayerControllable(playerid, 0);
    return 1;
    }
    if(strcmp(cmdtext, "/back", true) == 0) {
    new str[256], pname[256]; GetPlayerName(playerid, pname, 256);
    format(str, 256, "*%s ist von afk zurueck!", pname, cmdtext[4]);
    SendClientMessageToAll(0x4682B4AA, str);
    GameTextForPlayer(playerid,"~w~willkommen zurueck. :)!",2500,3);
    TogglePlayerControllable(playerid, 1);
    return 1;
    }

    moin moin,


    ich bin ein totaler Noobscripter und brauche Hilfe bei meinem /afk Befehl.
    Ich weiß nicht was ich eingeben muss damit der Name, von der Person, die /afk eingibt drinsteht.
    Also Beispiel: Meister007 ist afk.



    if(strcmp(cmd, "/afk", true) == 0)
    {
    SendClientMessageToAll(COLOR_RED, " ist afk.");
    return 1;
    }


    Danke schonmal für eure Hilfe ^^

    ok ich hab den sscanf Code aus public OnPlayerCommandText rausgenommen und ganz unten im Script einfach ganz normal eingefügt
    aber es kommen immer noch 3 Errors und 1 warning dabei müsste ich jetzt alles haben

    Code
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(8798) : error 017: undefined symbol "dcmd_su"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10788) : error 017: undefined symbol "dcmd_su"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10792) : error 017: undefined symbol "params"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10859) : warning 225: unreachable code

    also ich hab einmal

    #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1


    dann

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    new string[280];
    new playermoney;
    new sendername[MAX_PLAYER_NAME];
    new giveplayer[MAX_PLAYER_NAME];
    new playername[MAX_PLAYER_NAME];
    new cmd[280];
    new tmp[280];
    new giveplayerid, moneys, idx;
    cmd = strtok(cmdtext, idx);
    dcmd(su,2,cmdtext);


    und ganz unten ebenfalls in public OnPlayerCommandText(playerid, cmdtext[])

    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':
    {
    setarg(paramPos, 0, _:floatstr(string[stringPos]));
    }
    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;
    }


    so und jetzt komm ich nicht weiter was fehlt denn noch das ich Errors bekomme ? oO


    Code
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(8798) : error 017: undefined symbol "dcmd_su"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10788) : error 017: undefined symbol "dcmd_su"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10792) : error 017: undefined symbol "sscanf"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(10859) : warning 225: unreachable code
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(26970) : error 029: invalid expression, assumed zero
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(26970) : error 017: undefined symbol "sscanf"
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(26970) : error 029: invalid expression, assumed zero
    C:\PROGRA~1\ROCKST~1\GRANDT~2\GAMEMO~1\gf.pwn(26970) : fatal error 107: too many error messages on one line

    1. er benutzt den Streamer von Einstein kann ich auch ur empfehlen


    2. Das Problem, das die Objekte erst erscheinen wenn man von Fahrzeug absteigt
    liegt an SAMP glaub ich das hab ich mal im nen Forum gelesen

    Hi,
    helft ihr mir diese Errors wegzubekommen ?



    public SetPlayerSpawn(playerid)
    {
    else
    {
    SetPlayerPos(playerid,1955.3492,1342.7994,15.3746);
    SetPlayerFacingAngle(playerid, 33.6390);
    SetCameraBehindPlayer(playerid);
    PlayerInfo[playerid][pInt] = 0;
    return 1;
    }
    }

    Also ich will ein eigenes RL Script machen und dazu werde ich eure Hilfe brauchen.

    #include <a_samp>
    #include <core>
    #include <float>
    #include <time>
    #include <file>
    #include <utils>
    #include <morphinc>


    #pragma tabsize 0
    #define COLOR_GREY 0xAFAFAFAA
    #define COLOR_GREEN 0x33AA33AA
    #define COLOR_RED 0xAA3333AA
    #define COLOR_YELLOW 0xFFFF00AA
    #define COLOR_WHITE 0xFFFFFFAA
    #define PocketMoney 50000
    #define INACTIVE_PLAYER_ID 255
    #define GIVECASH_DELAY 5000
    #define NUMVALUES 4


    forward MoneyGrubScoreUpdate();
    forward Givecashdelaytimer(playerid);
    forward SetPlayerRandomSpawn(playerid);
    forward SetupPlayerForClassSelection(playerid);
    forward GameModeExitFunc();
    forward SendPlayerFormattedText(playerid, const str[], define);
    forward public SendAllFormattedText(playerid, const str[], define);


    //------------------------------------------------------------------------------


    main()
    {
    print(" ");
    print(" ");
    print(" Meister007 Reallife LS/SF");
    print("_____________________");
    print(" von Meister007 (Mario)");
    print(" ");
    }


    //------------------------------------------------------------------------------


    public OnGameModeInit()
    {
    SetGameModeText("Meister007: LS/SF");
    }
    public OnPlayerConnect(playerid)
    {
    SendClientMessage(playerid, COLOR_YELLOW, "SERVER: Willkommen und viel Spaß");
    return 1;
    }


    Soweit bin ich jetzt und kapier einfach nicht wie ich ein Noobspawn erschaffe
    Helft ihr mir ?


    Danke im Vorraus