Beiträge von Kaliber

    den habe ich ja aber der bringt es net ;(
    meine map baut sich net richtig auf bzw baut auf und wieder ab
    und der neue kannst du ganz in müll werfen der geht net mal auf windows und
    auf linux geht aber zb /blaulicht an kann ich 500 mal eingeben den befehl das object kommt erst in lv ;D


    :D Dann nutzt du ihn falsch :whistling:


    mfg. :rolleyes:

    Guten Taag,
    ich wollte fragen, ob es eine Möglichkeit gibt, abzufragen ob die InterPolateCameraLookat / Pos an der jeweiligen Position ist.


    Wenn dies nicht möglich ist, muss man (z.B. im Tutorial) mit einem Timer arbeiten, oder?


    Grüße


    Also mir ist außer dem Timer keine Möglichkeit bekannt ;)


    mfg. :thumbup:

    Du verwendest SetTimerEx, damit übergibt man Variablen ;)


    Wenn in dem Callback "Tazer" der Parameter playerid steht, müsste der Timer z.B. so aussehen:


    SetTimerEx("Tazer", 10000, 0, "i", playerid);


    PS:


    TogglePlayerControllable(issuerid, 1);//1 = unfreeze, du musst da ne 0 machen für freeze


    mfg. :thumbup:

    So:


    dcmd:auto(playerid, params[])
    {
    new var[128];
    if(sscanf(params,"s",var)) return SendClientMessage(playerid,rot,"Verwendung: /auto [Licht/Motor]");
    if(strcmp(var,"Licht",true)==0)
    {
    //Wenn er Licht eingibt
    }
    else if(strcmp(var,"Motor",true)==0)
    {
    //Wenn er Motor eingibt
    }
    return 1;
    }


    mfg. :thumbup:

    Schreibe es so, ich beziehe mal Goldkillers Post mit ein:


    //oben in dein Script
    new m, m1;


    ocmd:move(playerid,params[])
    {
    if(IsPlayerInRangeOfPoint(playerid,5, 1587.0999755859, -1638.4000244141, 14.0))
    {
    if(!m)
    {
    m = 1;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 9.0, 5);
    }
    else if(m)
    {
    m = 0;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 14.0, 5);
    }
    }
    else if(IsPlayerInRangeOfPoint(playerid,5, 1587.0999755859, -1638.4000244141, 14.0))
    {
    if(!m1)
    {
    m1 = 1;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 9.0, 5);//hier musste die objectid noch ändern !
    }
    else if(m1)
    {
    m1 = 0;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 14.0, 5);//hier musste die objectid noch ändern !
    }
    }
    return 1;
    }


    mfg. :thumbup:


    //edit:
    ups ja, habe das eine else vergessen gehabt

    Das macht man am besten mit else if:


    ocmd:move(playerid,params[])
    {
    if(IsPlayerInRangeOfPoint(playerid,5, 1587.0999755859, -1638.4000244141, 14.0))
    {
    if(Spieler[playerid][Torstatus] == 0)
    {
    Spieler[playerid][Torstatus] = 1;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 9.0, 5);
    }
    else if(Spieler[playerid][Torstatus] == 1)
    {
    Spieler[playerid][Torstatus] = 0;
    MoveObject(pdtor1,1587.0999755859, -1638.4000244141, 14.0, 5);
    }
    }
    return 1;
    }


    mfg. :thumbup:

    ich weiß nicht wie ich am besten anfangen soll?
    kann mir bitte einer die grundfunktionen geben?
    würde ich auch belohnen!


    WTF, ich habe dir die Grundfunktionen doch gegeben :pinch:


    Noch ein Versuch, verstehst du es so besser:


    //hier halt mein enum


    //Der Ganze Befehl nochmal (in strcmp)
    if(strcmp(cmd, "/makeleader", true) == 0)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,rot,"Verwendung: /makeleader [spielerid] [Frakid]");
    new pID, nummer;
    pID = strval(tmp);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,rot,"Verwendung: /makeleader [spielerid] [Frakid]");
    nummer = strval(tmp);
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,rot,"Dieser Spieler ist nicht online !");
    if(nummer > 1 && nummer < 5)
    {
    new str[128], name[24], pname[24];
    GetPlayerName(pID, name, 24);
    GetPlayerName(playerid, pname, 24);
    format(str, 128,"Du hast Spieler %s zum Leader der id %d gemacht !",name,nummer);
    SendClientMessage(playerid,blau,str);
    format(str, 128,"Du wurdest von %s zum Leader der id %d gemacht !",pname,nummer);
    SendClientMessage(pID,blau,str);
    SpielerInfo[pID][sLeader] = nummer;
    return 1;
    }
    else return SendClientMessage(playerid,rot,"Diese Fraktionsid ist ungültig !");
    }


    //und hier mal ein spawn bsp
    public OnPlayerSpawn(playerid)
    {
    if(SpielerInfo[pID][sLeader] == 1)
    {
    //was passieren soll, wenn der Spieler in der Frak 1 ist
    }
    return 1;
    }
    Und dann noch einfach wie eine gewöhnliche Variable (wie z.B. dein Level oder dein Geld) abspeichern ;)


    mfg. :thumbup: