Also ich wollte fragen wie man am besten macht dass der Spieler /warn ID Grund macht dass sich die warns stappeln und bei 3 dann ein bann gesetzt wird..
Ich habe es so .
Der Spieler bekommt einen warn (wird die Account.ini datei auf Warn=1 gesetzt)
bekommt der Spieler dann noch einen warn so bleibt es bei einen ...
bekommt der Spieler 2 warns .. wird die Account.ini datei auf Warns=2 gesetzt..
bekommt der Spieler jetzt wieder einen warn wird die auf Warns=1 gesetzt..)
Ich kappiere das nicht -.-
kann mir da einer helfen bitte..
Grüße
c47
Bitte um hilfe beim Warnsystem..
- c47
- Geschlossen
- Erledigt
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
-
-
Teste mal bitte ob es klappt:
ocmd:warn(playerid,params[])
{
new string[128],string2[128];
new pID,warns,grund[128];
//if(!IsPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,rot,"Du bist kein Admin");
if(sscanf(params,"uis",pID,warns,grund)) return SendClientMessage(playerid,0x00FF00,"Benutzung: /warn [ID/Name] [Warns] [Grund]");
if(warns < 1 || warns > 3) return SendClientMessage(playerid,0xB300A9,"Du kannst nur Warns zwischen 1 und 3 vergeben.");
{
format(string,sizeof(string),"Du hast %s verwarnt. Grund: %s",SpielerName(pID),grund);
SendClientMessage(playerid,0x00FF00,string);
format(string2,sizeof(string2),"Du wurdest von %s mit %i Warns, verwarnt.\nGrund: %s",(SpielerName(playerid),warns,grund));
SendClientMessage(pID,rot,string2);
SetPVarInt(pID,"Warn",GetPVarInt(pID,"Warn")+warns);
if(GetPVarInt(pID,"Warn") == 1)
{
SendClientMessage(pID,rot,"Du hast deinen 1. Warn erhalten. [1/3]");
}
else if(GetPVarInt(pID,"Warn") == 2)
{
SendClientMessage(pID,rot,"Du hast deinen 2. Warn erhalten. [2/3]");
SendClientMessage(pID,rot,"Wenn du noch einen Warn erhälst wirst du gebannt");
}
else if(GetPVarInt(pID,"Warn") >= 3)
{
SendClientMessage(pID,rot,"Du hast deinen 3. Warn erhalten. [3/3]");
SendClientMessage(pID,rot,"Du wirst jetzt gebannt, Bye.");
SetPVarInt(pID,"Baned",1);
Kick(pID);
}
}
return 1;
} -
Nachdenken bevor man postet und durchlesen !
wo hast du das koppiert??...
und nein das klappt nicht weil das bei mir so ähnlich aufgebaut ist..
ICh will einen befehl : /warn ID und in der Ini datei wird sein warn auf 1 gesetzt .. mach ich das noch einmal soll sich das auf 2 warns in der account.ini setzen ..
Ich wills ned wenn ich /warn [ID/Name] [Warns] [Grund] weil das ist nur blödsinn... da wird immer die ini datei beabeitet von 1 warn auf 2 dann gibt der spieler wieder einen warn wird sie wieder auf einen runter gesetzt..
-
ähm so dürfte es aber klappen.
MFG
-
Nach deiner Beschreibung ist bei der Anpassung der Variablen "Spielerwarns", oder wie sie bei dir heißt, nur ein "=" Zeichen und der Wert dahinter.
Das kann ja nicht klappen.
BSP:new var;
var = 1;
Was geschieht mit der Variablen var?
Sie wird auf 1 gesetzt, da steht ja = 1.new var;
var = 1;
var = 1;
Was geschieht nun mit der Variablen var?
Sie bleibt auf 1, da der alte Wert nicht plus den Wert, der neu hinzukommt, gerechnet wird.new var;
var = 1;
var = var + 1;
Was geschieht nun mit der Variablen var?
Sie kriegt den Wert 2, da der alte Wert plus den Wert, der neu hinzukommt [1], gerechnet wird.Bei deinem Script wird die Variable, die die Warns festhält wahrscheinlich mit BSP 2 gesetzt.
//Was bei dem Befehl über mir nicht der Fall ist, da sollte es klappen
-
Nachdenken bevor man postet und durchlesen !
wo hast du das koppiert??...
und nein das klappt nicht weil das bei mir so ähnlich aufgebaut ist..
ICh will einen befehl : /warn ID und in der Ini datei wird sein warn auf 1 gesetzt .. mach ich das noch einmal soll sich das auf 2 warns in der account.ini setzen ..
Ich wills ned wenn ich /warn [ID/Name] [Warns] [Grund] weil das ist nur blödsinn... da wird immer die ini datei beabeitet von 1 warn auf 2 dann gibt der spieler wieder einen warn wird sie wieder auf einen runter gesetzt..
0. Es klappt bei mir
1. Nich fresch werden.
2. Ich kann auch Sripten.
3. Made by me
4. Wenn du es so haben willst, warte ich schreibe es umocmd:warn(playerid,params[])
{
new string[128],string2[128];
new pID;
//if(!IsPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,rot,"Du bist kein Admin");
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,0x00FF00,"Benutzung: /warn [ID/Name]");
{
format(string,sizeof(string),"Du hast %s verwarnt.",SpielerName(pID));
SendClientMessage(playerid,0x00FF00,string);
format(string2,sizeof(string2),"Du wurdest von %s verwarnt.",(SpielerName(playerid));
SendClientMessage(pID,rot,string2);
SetPVarInt(pID,"Warn",GetPVarInt(pID,"Warn")+1);
if(GetPVarInt(pID,"Warn") == 1)
{
SendClientMessage(pID,rot,"Du hast deinen 1. Warn erhalten. [1/3]");
}
else if(GetPVarInt(pID,"Warn") == 2)
{
SendClientMessage(pID,rot,"Du hast deinen 2. Warn erhalten. [2/3]");
SendClientMessage(pID,rot,"Wenn du noch einen Warn erhälst wirst du gebannt");
}
else if(GetPVarInt(pID,"Warn") >= 3)
{
SendClientMessage(pID,rot,"Du hast deinen 3. Warn erhalten. [3/3]");
SendClientMessage(pID,rot,"Du wirst jetzt gebannt, Bye.");
SetPVarInt(pID,"Baned",1);
Kick(pID);
}
}
return 1;
} -
tut mir leid war etwas außer kontrolle -.-
Skype: c47... da können wir es besser klären oder ?
-
kann im Moment nit in Skype, habe da einen Fail. Fragen oder anders, per PN oder in den Thread
-
kann im Moment nit in Skype, habe da einen Fail. Fragen oder anders, per PN oder in den Thread
So läuft alles bestens habe bissl dran arbeiten müssen mit SetPVarInt einma wars mit Warn und einmal mit Warns xD.. konnte sich daher nicht gespeichert werden..^^
Danke dir und tut mir leid für mein Verhalten
// Kann geclosed werden..
-
breadfish.de
Hat das Thema geschlossen.