Beiträge von XeroX

    Ungetestet sollte aber funktioniern :) bitte nächstes mal einrücken

    ocmd:givemoney(playerid,params[])
    {
    new i,cash;
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFE2F2FFF,"Du bist kein Admin");
    if(sscanf(params,"ud",i,cash)) return SendClientMessage(playerid,0xFE2F2FFF,"/givemoney <id/name> <$>");
    if(!IsPlayerConnected(i)) return SendClientMessage(playerid,0xFE2F2FFF,"Spieler ist nict online");
    GivePlayerMoney(i,cash);
    SendClientMessage(playerid,00FF00FF,"OK");
    return 1;
    }


    Edit Kaliber war schneller :)

    da ist es auch falsch


    mach es unter onplayerstate change



    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    for(new i; i < sizeof(PolizeiVehs); i++)
    {
    if(vehicleid == PolizeiVehs[i])
    {
    AddVehicleComponent(PolizeiVehs[i], 1010);
    AddvehicleComponent(PolizeiVehs[i], 1098);
    AddVehicleComponent(PolizeiVehs[i], 1087);
    }
    }
    }
    }


    Einrückung kann etwas verschoben sein

    Das von BlueG ist gut.
    Bei ocmd bzw zcmd ist kaum unterschied zu rcmd kann ich nichts sagen da ich es nie benutzt habe


    ocmd befehl:
    ocmd:commands(playerid,params[])


    zcmd befehl:
    CMD:commands(playerid,params[])


    bei den cmd's musst du dir selber aussuchen womit du besser klar kommst ;)

    Alternativ kannst du auch bei OnPlayerStateChange


    musst halt nur vorher festlegen in welchem auto man es ausführen lassen kann



    if(newstate == PLAYER_STATE_DRIVER)


    Das habe ich ja aus dem Englishen Wiki damit er sieht wie eine for schleife aufgebaut sein kann. :thumbup:^^


    new ammo = GetPlayerAmmo(playerid);
    GivePlayerWeapon(playerid,24,ammo); // 24 ist die Deagle
    Zitat aus dem Wiki: Important Note: The ammo can hold 16-bit values, therefore values over 32767 will return erroneous values.

    Du gehst zu deinem SpielerSpeichern stock also den den oben geposted hast machst es dann so

    new tag,monat,jahr;
    new string[20];
    getdate(jahr,monat,tag);
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(string,sizeof(string),"%02d/%02d/%d",tag,monat,jahr);
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Premiumlevel",GetPVarInt(playerid,"Premiumlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Baned",GetPVarInt(playerid,"Baned"));
    dini_IntSet(Spielerdatei,"timeban",GetPVarInt(playerid,"timeban"));
    dini_IntSet(Spielerdatei,"lastlogin",string);

    new tag,monat,jahr;
    new string[20];
    getdate(jahr,monat,tag);
    format(string,sizeof(string),"%02d/%02d/%d",tag,monat,jahr);


    und dann mit dini_SetString oder wie die funktion heißt speichern beachte die parameter :)

    Das ist der Changelog



    Edit: Findest du unter Hilfe und dann View changelog oder so ähnlich xD

    Ist doch genau das was ich geschrieben habe vielleicht mit anderen Worten aber der Sinn ist der selbe. Bzw ich habe es verkürzt geschrieben. xD


    if(GetPVarInt(playerid,"Fraktion") != fPolize && GetPVarInt(playerid,"Fraktion") != fArmy && GetPVarInt(playerid,"Fraktion") != fFBI && GetPVarInt(playerid,"Fraktion") != SWAT) return SendClientMessage(playerid, Rot2, "Du bist dazu nicht !");


    Warum && und nicht || weil die Abfrage immer wahr sein würde wäre er zB Polizist weil er ja dann kein SWAT sein kann. Nun heißt die Abfrage wenn er Kein Polizist, Soldat, FBI und Kein SWAT Officer ist kommt die Aussage das er nicht dazu berechtigt ist


    Edit was hinzugefügt