Warum wir warn und mzte nicht gespeicher

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo cih will mute und warn speicher hier
    ocmd:mute(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,1))
    {
    new pID,string[128];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Rot,"/mute [Spielername/ID]");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online");
    SetPVarInt(pID,"Mute",1);
    format(string,sizeof(string),"AdmCmd: Du wurdest von Admin %s gemutet",SpielerName(playerid));
    SendClientMessage(pID,Rot,string);
    format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s gemutet",SpielerName(pID));
    SendClientMessage(playerid,Rot,string);
    return 1;
    }
    return 1;
    }
    ocmd:unmute(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,1))
    {
    new string[128];
    new pID;
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Rot,"/unmute [Spielername/ID]");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online");
    SetPVarInt(pID,"Mute",0);
    format(string,sizeof(string),"AdmCmd: Du wurdest von Admin %s entmutet",SpielerName(playerid));
    SendClientMessage(pID,Rot,string);
    format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s entmutet",SpielerName(pID));
    SendClientMessage(playerid,Rot,string);
    return 1;
    }
    return 1;
    }
    ocmd:unwarn(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,1))
    {
    new pID,warns,reason[128],string[128],string1[128];
    if(sscanf(params,"uds",pID,warns,reason))return SendClientMessage(playerid,Rot,"/unwarn [Spielername/ID] [Anzahl] [Grund]");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online");
    format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s Warn(s) entfernt (%i)",SpielerName(pID),warns);
    SendClientMessage(playerid,Rot,string);
    SetPVarInt(pID,"warns",GetPVarInt(pID,"warns")-warns);
    format(string1,sizeof(string1),"AdmCmd: Admin %s hat dir %i Warns entfernt. Grund: %s",SpielerName(playerid),warns,reason);
    SendClientMessage(pID,Rot,string1);
    return 1;
    }
    return 1;
    }
    ocmd:warn(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,1))
    {
    new pID,warns,reason[128],string[128],string1[128],ban[128];
    if(sscanf(params,"uds",pID,warns,reason))return SendClientMessage(playerid,Rot,"/warn [Spielername/ID] [Anzahl] [Grund]");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online");
    if(warns<1||warns>5)return SendClientMessage(playerid, Rot, "Bitte gültige Anzahl der Verwarnungen angeben(1-5)!");
    format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s mit %i Warns verwarnt",SpielerName(pID),warns);
    SendClientMessage(playerid,Rot,string);
    SetPVarInt(pID,"warns",GetPVarInt(pID,"warns")+warns);
    //Text der an pID gesendet wird
    format(string1,sizeof(string1),"------------ Verwarnung ------------");
    SendClientMessage(pID,Rot,string1);
    format(string1,sizeof(string1),"Erhalten von: %s",SpielerName(playerid));
    SendClientMessage(pID,Rot,string1);
    format(string1,sizeof(string1),"Anzahl: %i",warns);
    SendClientMessage(pID,Rot,string1);
    format(string1,sizeof(string1),"Verwarnungen: %i/5",GetPVarInt(pID,"warns"));
    SendClientMessage(pID,Rot,string1);
    format(string1,sizeof(string1),"Grund: %s",reason);
    SendClientMessage(pID,Rot,string1);
    format(string1,sizeof(string1),"------------ Verwarnung ------------");
    SendClientMessage(pID,Rot,string1);
    if(GetPVarInt(pID,"warns")==5)
    {
    SendClientMessage(pID,Rot,"AdmCmd: Du hast fünf oder mehr Verwarnungen erhalten und wirst deswegen gebannt");
    format(ban,sizeof(ban),"AdmCmd: %s wurde aufgrund seiner Verwarnungen gebannt (5/5)",SpielerName(pID));
    SendClientMessageToAll(Rot,ban);
    SetPVarInt(pID,"Banned",1);
    Kick(pID);
    }
    return 1;
    }
    return 1;
    }




    stocks
    stock SaveAcc(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Acc/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    SetPVarInt(playerid,"warns",dini_Int(Spielerdatei,"warns"));
    SetPVarInt(playerid,"Mute",dini_Int(Spielerdatei,"Mute"));
    return 1;
    }
    stock LoadAcc(playerid)
    {


    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Acc/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"warns",dini_Int(Spielerdatei,"warns"));
    SetPVarInt(playerid,"Mute",dini_Int(Spielerdatei,"Mute"));
    //SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
    return 1;
    }

  • Ja es wir immer noch cniht gespeichert hier der neue Text



    stock SaveAcc(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Acc/%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,"warns",GetPVarInt(playerid,"warns"));
    dini_IntSet(Spielerdatei,"mute",GetPVarInt(playerid,"mute"));
    return 1;
    }
    stock LoadAcc(playerid)
    {


    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Acc/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"warns",dini_Int(Spielerdatei,"warns"));
    SetPVarInt(playerid,"Mute",dini_Int(Spielerdatei,"Mute"));
    //SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
    return 1;

  • Du musst bei OnPlayerText abfragen ob der Spieler gemutet ist, sollte er es sein wird ein return 0; zurückgegeben, somit erscheint der Text nicht.


    So habe ich es bei mir:


    public OnPlayerText(playerid,text[])
    {
    if(pInfo[playerid][Muted]==1)
    {
    SendClientMessage(playerid,rot,"Du bist noch gemuted!");
    return 0;
    }
    return 1;
    }

  • ocmd:mute(playerid,params[])
    {
    if(IstSpielerAdmin(playerid,1))
    {
    new pID,string[128];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,Rot,"/mute [Spielername/ID]");
    if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,Rot,"Der Spieler ist nicht online");
    SetPVarInt(pID,"Mute",1);
    format(string,sizeof(string),"AdmCmd: Du wurdest von Admin %s gemutet",SpielerName(playerid));
    SendClientMessage(pID,Rot,string);
    format(string,sizeof(string),"AdmCmd: Du hast erfolgreich User %s gemutet",SpielerName(pID));
    SendClientMessage(playerid,Rot,string);
    return 1;
    }
    return 1;
    }


    So ist der Befehl mit der Abfrage bekomme ich sicher errors weil ich ander ehab aber welche?

  • Dort MUSS nichts mehr rein. Das müsste so funktionieren da wenn er gemutet ist nichts gesendet wird dank dem return 0.
    Du kannst ihm natürlich noch eine nachricht senden wo drinn steht du bist gemutet oder so. Aber so funktioniert es eigentlich auch.