Beiträge von KeksOfDeath

    public KameraCheck(playerid)
    {
    new wid, muni;
    GetPlayerWeaponData(playerid,9, wid,muni);
    if(wid==0) {
    SendClientMessage(playerid,ROT,"Du hast keine Kamera mehr.");
    KillTimer(KameraCheckTimer);
    }
    return 1;
    }
    PS: Ich würd lieber sowas wie "new KameraCheckTimer[MAX_PLAYERS];" machen und dann für jede ID einen neuen Timer machen, weil sosnt der alte überschrieben wird und es für keinen, außer den neusten aufhöhrt, wenn jemand keine hat

    Es gibt da aber auch eine nette Funktion names "GetWeaponName"
    if(strcmp(cmdtext,"/meinewaffe",true)==0) {
    new s[128], name[24], wid, muni, gla;
    for(new i=1; i<=12; i++) {
    GetPlayerWeaponData(playerid,i,wid,muni);
    if(wid!=0) {
    GetWeaponName(wid,name,sizeof(name));
    gla++;
    if(gla>=2 && strlen(s)>=100) {
    gla=1;
    SendClientMessage(playerid,FARBE,s); }
    if(gla==1) {
    format(s,sizeof(s),"%s: %d",name,muni); }
    else if(gla>=2) {
    format(s,sizeof(s),"%s, %s: %d",s,name,muni); }}}
    SendClientMessage(playerid,FARBE,s);
    return 1;
    }

    1) Warum kopierst du strtok, wenn du strget brauchst?
    2) Wenn dus ganz nach unten machst, kannst nix falsch machen (du musst das strget nach unten amchen, das ist die strtok Alternative)

    OnPlayerStateChange:
    if(newstate==2) {
    if(gTeam[playerid]!=TEAM_COPS) {
    if(polizeiauto(GetPlayerVehicleID(playerid))) {
    RemovePlayerFromVehicle(playerid);
    TogglePlayerControllable(playerid,1); }}}
    //ganz nach unten:
    stock polizeiauto(aid) {
    new mid=GetVehicleModel(aid);
    new mids[]= { 596,597,598,523 };//die liste msuste selbst noch erweitern
    for(new i=0, j=sizeof(mids); i<j; i++) {
    if(mid==mids[i]) { return 1; }}
    return 0;
    }

    Entweder löscht du ALLE eine Includesordner bis auf einen und startest anschließend, anch einem Versuch zu compilen den PC neu, oder du packst die beiden Include in ALLE deine Includeordner

    tor1 = CreateObject(5152, 1076.627930, -926.375610, 42.034863, 0.0000, 23.2048, 93.4377);//zeile 46
    Das andere sind formatierungfehler, Beispiel:
    hi
    hi
    hi
    hi <---- formatierungsfehler
    hi
    hi

    Hallo, ich habe ein "kleines" Problemundzwar, ich habe etwas, dass die Waffen beim Disconnecten abgespeichert werden, das sieht so aus:

    Spoiler anzeigen

    new wid, muni;
    GetPlayerWeaponData(playerid,1,wid,muni);
    dini_IntSet(file,"wslot1",wid); dini_IntSet(file,"wslotmuni1",muni);
    GetPlayerWeaponData(playerid,2,wid,muni);
    dini_IntSet(file,"wslot2",wid); dini_IntSet(file,"wslotmuni2",muni);
    GetPlayerWeaponData(playerid,3,wid,muni);
    dini_IntSet(file,"wslot3",wid); dini_IntSet(file,"wslotmuni3",muni);
    GetPlayerWeaponData(playerid,4,wid,muni);
    dini_IntSet(file,"wslot4",wid); dini_IntSet(file,"wslotmuni4",muni);
    GetPlayerWeaponData(playerid,5,wid,muni);
    dini_IntSet(file,"wslot5",wid); dini_IntSet(file,"wslotmuni5",muni);
    GetPlayerWeaponData(playerid,6,wid,muni);
    dini_IntSet(file,"wslot6",wid); dini_IntSet(file,"wslotmuni6",muni);
    GetPlayerWeaponData(playerid,8,wid,muni);
    dini_IntSet(file,"wslot8",wid); dini_IntSet(file,"wslotmuni8",muni);
    GetPlayerWeaponData(playerid,9,wid,muni);
    dini_IntSet(file,"wslot9",wid); dini_IntSet(file,"wslotmuni9",muni);
    GetPlayerWeaponData(playerid,10,wid,muni);
    dini_IntSet(file,"wslot10",wid); dini_IntSet(file,"wslotmuni10",muni);
    GetPlayerWeaponData(playerid,11,wid,muni);
    dini_IntSet(file,"wslot11",wid); dini_IntSet(file,"wslotmuni11",muni);
    GetPlayerWeaponData(playerid,12,wid,muni);
    dini_IntSet(file,"wslot12",wid); dini_IntSet(file,"wslotmuni12",muni);

    So, ein Zitat aus meiner Datei:


    So, wenn man sich jetzt einloggt, bekommt man die halt wieder
    Spoiler anzeigen

    GivePlayerWeapon(playerid,dini_Int(file,"wslot1"),dini_Int(file,"wslotmuni1"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot2"),dini_Int(file,"wslotmuni2"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot3"),dini_Int(file,"wslotmuni3"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot4"),dini_Int(file,"wslotmuni4"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot5"),dini_Int(file,"wslotmuni5"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot6"),dini_Int(file,"wslotmuni6"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot8"),dini_Int(file,"wslotmuni8"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot9"),dini_Int(file,"wslotmuni9"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot10"),dini_Int(file,"wslotmuni10"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot11"),dini_Int(file,"wslotmuni11"));
    GivePlayerWeapon(playerid,dini_Int(file,"wslot12"),dini_Int(file,"wslotmuni12"));

    Und dann ist es eine Frage des Zufalls, ob man von der Waffe dann entweder die Anzahl der Munition, die auch in der Datei steht wiederbekommt, oder 65535 Schuss
    Ich kauf mir als Beispiel eine Tec9, mit 50 Schuss und gehe offline
    Ich komme wieder online, hab dann auch wieder die 50 Schuss von der Tec9 (in der Datei hat sich nix verändert), gehe jetzt wieder offline
    Komm wieder on - hab ich 65535 Schuss für die Tec9
    Weiß jemand um Rat?

    Für einen weiteren Checkpoint benötigst du schon einen Checkpoint Streamer.
    Dieser Behebt dann auch das mit dem Roten Punkt auf der Karte :P
    Ich nutze auch einen Streamer, und bin süper zufriedne damit :P
    Maxx


    Eine Variable tuts auch...
    new cp[MAX_PLAYERS];
    Und dann fragst immer die Varaible ab, um zu ermitteln, in welchem Checkpoint er ist
    Musst die Checkpoints dann natürlich bedingt setzen und nicht gleich 2 oder mehr auf einmal