Beiträge von [GTS]Yomo

    dcmd_enter(playerid,params[])
    {
    #pragma unused params
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,2637.2698,2352.0234,10.8203)) //SpawnHaus
    {
    SetPlayerPos(playerid,2215.454833,-1147.475585,1025.796875);
    SetPlayerInterior(playerid,15);
    GameTextForPlayer(playerid,"~b~Rock Hotel",3000,6);
    }
    else if(IsPlayerInRangeOfPoint(playerid,5.0,2287.2190,2432.3647,10.8203)) //LV-PD1
    {
    SetPlayerPos(playerid,288.745971,169.350997,1007.171875);
    SetPlayerInterior(playerid,3);
    GameTextForPlayer(playerid,"~b~LVPD",3000,6);
    }
    else if(IsPlayerInRangeOfPoint(playerid,5.0,2297.1021,2468.7097,10.8203)) //LVPD-unten
    {
    SetPlayerPos(playerid,238.9422,139.6750,1003.0234);
    SetPlayerInterior(playerid,3);
    GameTextForPlayer(playerid,"~b~LVPD",3000,6);
    .........................


    kann man das anstatt mit /enter auch mit der Entertaste machen?



    Mfg Yomo

    Also für meinen Piloten Beruf , brauch ich
    eine Abfrage des Ranks , aber wenn ich dann mit
    Rank 3 ein Rank 2 Fahrzeug fahren will
    kommt. "Du hast diesen Rank noch nicht"


    if(Spieler[playerid][pklasse] != 2 || Spieler[playerid][pklasse] != 3)

    Also ich hab das hier mal in ein Menü eingebaut.
    Wenn man das auswählt , dann spawnt ein Seasparrow und
    nach 30 Min verschwindet er wieder.


    {
    new vehicleid = CreateVehicle(447,-2464.6235,518.1762,51.0754,88.9830,1,1,20000);
    SetTimerEx("DestroyingCars",1800000,0,"d",vehicleid);
    }


    Jetzt möchte ich aber das mit einem Befehl oder
    einem neuen Case im Menü der Seasparrow
    direkt wieder zerstört wird.


    Edit:


    Weiß wer wie man einem Abfrage nach dem Namen macht?
    (Also wenn wer in ein Pickup geht , dann fragt der Server ab ob er
    z.B. Hans heißt und fals nicht kommt "Du hast hierzu keine Berechtigung")


    Grüße Yomo

    Wenn ich die so setze dann bekomm ich :



    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2025) : error 029: invalid expression, assumed zero
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2032) : error 029: invalid expression, assumed zero
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2049) : error 029: invalid expression, assumed zero
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.

    else if(pickupid == lcngarage1)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    LinkVehicleToInterior(GetPlayerVehicleID(playerid),18);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage2)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    LinkVehicleToInterior(GetPlayerVehicleID(playerid),18);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage3)
    {
    SetPlayerPos(playerid,1304.1829,-56.1414,1002.5012);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngaragefausgang)
    {
    SetPlayerPos(playerid,738.6616,-1431.4574,13.5234);
    SetPlayerInterior(playerid,0);
    }
    else if(pickupid == lcngaragecausgang)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),662.7847,-1417.7565,13.9638);
    LinkVehicleToInterior(GetPlayerVehicleID(playerid),0);
    else SetPlayerPos(playerid,662.7847,-1417.7565,13.9638);
    SetPlayerInterior(playerid,0);
    }


    Also ich hab Pickups gemacht
    und diese sollen nun ein Auto in
    ein Interior teleportieren , das funktioniert
    auch. Aber sobalt das Car drinnen ist , ist es
    unsichtbar!


    else if(pickupid == lcngarage1)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    LinkVehicleToInterior(vehicleid,18);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage2)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    LinkVehicleToInterior(vehicleid,18);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage3)
    {
    SetPlayerPos(playerid,1304.1829,-56.1414,1002.5012);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngaragefausgang)
    {
    SetPlayerPos(playerid,738.6616,-1431.4574,13.5234);
    SetPlayerInterior(playerid,0);
    }
    else if(pickupid == lcngaragecausgang)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),662.7847,-1417.7565,13.9638);
    LinkVehicleToInterior(vehicleid,0);
    else SetPlayerPos(playerid,662.7847,-1417.7565,13.9638);
    SetPlayerInterior(playerid,0);
    }


    dann bekomm ich aber diese errors


    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2024) : error 017: undefined symbol "vehicleid"
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2025) : error 029: invalid expression, assumed zero
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2031) : error 017: undefined symbol "vehicleid"
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2032) : error 029: invalid expression, assumed zero
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2048) : error 017: undefined symbol "vehicleid"
    C:\Users\PC\Desktop\Server_Wichtig\DMD_Server\gamemodes\DMD.pwn(2049) : error 029: invalid expression, assumed zero
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.



    Wie erstell ich einen Timer der Checkt ob
    jemand mit einem Car in der nähe von bestimmten Pickups ist
    und das dann diese aufgenommen werden.


    Also wenn User XY in das Pickup Z fährt dann wird er zu Punkt DRD getelet!





    Gruss Yomo

    else if(pickupid == lcngarage1)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage2)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),1302.519897,-1.787510,1001.028259);
    else SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage3)
    {
    SetPlayerPos(playerid,1304.1829,-56.1414,1002.5012);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngaragefausgang)
    {
    SetPlayerPos(playerid,738.6616,-1431.4574,13.5234);
    SetPlayerInterior(playerid,0);
    }
    else if(pickupid == lcngaragecausgang)
    {
    if(IsPlayerInAnyVehicle(playerid))SetVehiclePos(GetPlayerVehicleID(playerid),662.7847,-1417.7565,13.9638);
    else SetPlayerPos(playerid,662.7847,-1417.7565,13.9638);
    SetPlayerInterior(playerid,0);
    }


    So siehts jetzt aus , aber wenn ich mit car in die Pickups fahr werden die nicht aufgenommen!!
    Muss ich da noch ihrgendwas einstellen?

    Hey ich hab mal ne Frage undzwar:


    ich hab hier Pickups


    else if(pickupid == lcngarage1)
    {
    SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage2)
    {
    SetPlayerPos(playerid,1302.519897,-1.787510,1001.028259);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngarage3)
    {
    SetPlayerPos(playerid,1304.1829,-56.1414,1002.5012);
    SetPlayerInterior(playerid,18);
    }
    else if(pickupid == lcngaragefausgang)
    {
    SetPlayerPos(playerid,738.6616,-1431.4574,13.5234);
    SetPlayerInterior(playerid,0);
    }
    else if(pickupid == lcngaragecausgang)
    {
    SetPlayerPos(playerid,662.7847,-1417.7565,13.9638);
    SetPlayerInterior(playerid,0);
    }


    Was muss ich machen das die Autos mit Teleportiert werden??


    Grüße Yomo


    Warum geht das nicht?


    Error



    C:\Users\PC\Desktop\Rl_Script\gamemodes\Reallife.pwn(28) : error 009: invalid array size (negative, zero or out of bounds)
    C:\Users\PC\Desktop\Rl_Script\gamemodes\Reallife.pwn(29) : error 009: invalid array size (negative, zero or out of bounds)
    C:\Users\PC\Desktop\Rl_Script\gamemodes\Reallife.pwn(480) : warning 203: symbol is never used: "strtok"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.


    In den Zeilen ist


    new pInfo[MAX_PLAYERS][spieler_daten];
    new Spieler[MAX_PLAYERS][spieler_daten];








    LS-Aiport Pipe


    Hey Leute ich möchte euch mal ein Werk
    von einem meiner Mapper meines Freeroam Servers
    vorstellen , weil wir ihm immer wieder sagen wie sauber er mappen kann
    und er es aber nicht glaubt.


    Screenshot


    HIER

    Pastebin


    Pastebin MAP

    Pastebin Teleport


    Download


    megaupload.com

    Virusscan


    Scan


    INFO


    Die Pipe liegt über dem LS-Aiport und führt durch einen
    Looping runter auf die Startbahn.Insgesamt besteht er
    aus 111 Objekten , also wenn ihr schon einige Objekte drin habt,
    benutzt am besten einen Streamer.


    PLS Rate


    Mit freundlichen Grüßen Yomo

    Hey ich hab ein Problem mit
    dcmd/sscanf , entweder bin ich einfach zum dumm
    um den Fehler zu finden oder ich hab ihrgendwas vergessen.


    Also oben erstmal dcmd difiniert:


    #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


    die Befehle :


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(setscore,8,cmdtext);
    dcmd(givemoney,9,cmdtext);
    .....


    die Wirkung der Befehle:


    dcmd_setscore(playerid,params[])
    {
    new pplayerid, sscore;
    if(pInfo[playerid][admin] < 1)
    {
    SendClientMessage(playerid,0xFF0000FF,"Du darfst diesen Befehl nicht nutzen!");
    }
    else
    {
    if(sscanf(params,"ud",pplayerid,sscore))
    {
    SendClientMessage(playerid,0xFF0000FF," [Benutzung]: /setscore [id] [score] ");
    }
    if(!IsPlayerConnected(pplayerid))
    {
    SendClientMessage(playerid,0xFF0000FF," Spieler nicht online!");
    }
    if(pInfo[playerid][admin] >= 4)
    {
    SetPlayerScore(pplayerid, sscore);
    }
    }
    return 1;
    }


    dcmd_givemoney(playerid,params[])
    {
    new pplayerid, mmoney;
    if(pInfo[playerid][admin] < 1)
    {
    SendClientMessage(playerid,0xFF0000FF,"Du darfst diesen Befehl nicht nutzen!");
    }
    else
    {
    if(sscanf(params,"ud",pplayerid,mmoney))
    {
    SendClientMessage(playerid,0xFF0000FF," [Benutzung]: /givemoney [id] [menge] ");
    }
    if(!IsPlayerConnected(pplayerid))
    {
    SendClientMessage(playerid,0xFF0000FF," Spieler nicht online!");
    }
    if(pInfo[playerid][admin] >= 4)
    {
    GivePlayerMoney(pplayerid,mmoney);
    }
    }
    return 1;
    }




    Hier sscanf:
    /*----------------------------------------------------------------------------*-
    Function:
    sscanf
    Params:
    string[] - String to extract parameters from.
    format[] - Parameter types to get.
    {Float,_}:... - Data return variables.
    Return:
    0 - Successful, not 0 - fail.
    Notes:
    A fail is either insufficient variables to store the data or insufficient
    data for the format string - excess data is disgarded.


    A string in the middle of the input data is extracted as a single word, a
    string at the end of the data collects all remaining text.


    The format codes are:


    c - A character.
    d, i - An integer.
    h, x - A hex number (e.g. a colour).
    f - A float.
    s - A string.
    z - An optional string.
    pX - An additional delimiter where X is another character.
    '' - Encloses a litteral string to locate.
    u - User, takes a name, part of a name or an id and returns the id if they're connected.


    Now has IsNumeric integrated into the code.


    Added additional delimiters in the form of all whitespace and an
    optioanlly specified one in the format string.
    -*----------------------------------------------------------------------------*/


    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;
    }



    Wenn ich nun aber compile bekomm ich einige Errors die sich alle in den sscanf Zeilen befinden:


    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2479) : error 001: expected token: "-identifier-", but found "-integer value-"
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2480) : warning 217: loose indentation
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2480) : error 017: undefined symbol "ch"
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2480) : warning 215: expression has no effect
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2481) : warning 217: loose indentation
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2483) : error 017: undefined symbol "ch"
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2483) : error 001: expected token: ";", but found "]"
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2483) : error 029: invalid expression, assumed zero
    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2483) : fatal error 107: too many error messages on one line


    Ich hoffe das mir wer helfen kann ,


    Mit freundlichen Grüßen Nor

    C:\Users\PC\Desktop\Server_Self\gamemodes\DMD.pwn(2242) : error 055: start of function body without function header


    Zeigt er mir wenn ich die public einfüge!!
    In den Zeilen steht folgendes:



    public DestroyingCars(vehicleid);
    {
    DestroyVehicle(vehicleid);
    }


    PS: Die forward oben ist drin^^

    public OnVehicleSpawn(vehicleid)
    {
    if(Fahrzeug[vehicleid] == 1)
    {
    DestroyVehicle(vehicleid);
    }
    return 1;
    }



    aber bei
    if(Fahrzeug[vehicleid] == 1)
    geht er ja davon aus , dass das Auto die ID
    1 hat. Aber ich hab ja auch andere Autos IG , dann wird das was
    als erstes erstellt wurde gelöscht oder?


    Hey Leute ich
    hab in mein DM Script einen Art "Schwarzmarkt"
    eingebaut in denen es verschiedene Sachen gibt mit denen
    man sein Geld verschweden kann.
    Nun möchte ich aber das die erstellten Autos nach 30Min wieder
    zerstört werden , also verschwinden.


    fs = CreateMenu("Fahrzeuge",2, 200.0, 150.0, 120.0, 50.0);
    AddMenuItem(fs,0, "Zr-300(25k)");
    AddMenuItem(fs,0, "Special(35k)");
    AddMenuItem(fs,0, "FBI-Rancher(50k)");
    AddMenuItem(fs,0, "Racer(75k)");
    AddMenuItem(fs,0, "Rhino(150k)");
    AddMenuItem(fs,0, "Abbrechen");



    f(CurrentMenu == fs)
    {
    switch(row)
    {


    case 0:
    {
    GameTextForPlayer(playerid,"Zr gekauft!(60min) (-25.000$)",3000,3);
    GivePlayerMoney(playerid,-25000);
    CreateVehicle(477,736.7525,-1333.3210,13.2965,229.6027,1,1,200);
    }
    case 1:
    {
    GameTextForPlayer(playerid,"Special gekauft!(60min) (-35.000$)",3000,3);
    GivePlayerMoney(playerid,-35000);
    CreateVehicle(421,735.1519,-1337.7198,13.4158,230.9209,1,1,200);
    }
    case 2:
    {
    GameTextForPlayer(playerid,"FBI-Rancher gekauft!(60min) (-50.000$)",3000,3);
    GivePlayerMoney(playerid,-50000);
    CreateVehicle(490,742.5776,-1333.3650,13.6713,229.8809,1,1, 200);
    }
    case 3:
    {
    GameTextForPlayer(playerid,"Racer gekauft!(60min) (-75.000$)",3000,3);
    GivePlayerMoney(playerid,-75000);
    CreateVehicle(494,742.5776,-1333.3650,13.6713,229.8809,1,1, 200);
    }
    case 4:
    {
    GameTextForPlayer(playerid,"Rhino gekauft!(60min) (-150.000$)",3000,3);
    GivePlayerMoney(playerid,-150000);
    CreateVehicle(432,742.5776,-1333.3650,13.6713,229.8809,1,1, 200);
    }
    }
    }


    Mit freundlichen Grüßen Nor