Mhh jaa, wie soll ich das amchen ?!
Beiträge von John_Sanclear
-
-
Sers Community,
wenn ich jemanden banne oder kicke, bekommt er keine Nachricht sondern nur
Server close the connect. Hier:
ocmd:ban(playerid,params[])
{
new pID,reason[64],string[256];
if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,HELLROT,"AdmCmd: Benutze /ban [SpielerID] [Grund]");
format(string,sizeof(string),"AdmCmd: %s wurde vom Administrator %s vom Server gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
SendClientMessageToAll(HELLROT,string);
SetPVarInt(pID,"Gebant",1);
Ban(pID);
return 1;
}ocmd:kick(playerid,params[])
{
new pID,reason[64],string[256];
if(!isPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,HELLROT,"AdmCmd: Benutze /kick [SpielerID] [Grund]");
format(string,sizeof(string),"AdmCmd: %s wurde vom Administrator %s vom Server gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
SendClientMessageToAll(HELLROT,string);
Kick(pID);
return 1;
}Hab die SCM jetzt gelöscht da wo drinne stand: Du wurdest vom Administrator %s gebannt. Grund: Blaa
da es nicht funktioniert hat. -
Danke an euch, hat funktioniert
-
Also unter
new time = gettime(); -
Zeig uns mal die Zeile.
-
So?
public OnPlayerConnect(playerid)
{
new time = gettime();
if(time < GetPVarInt(playerid,"Timeban")) { //Wenn du natürlich alles darin speichern lässt, musst du dir diesen Wert auch erst aus der Spielerdatei holen, aber das kannst du ja selber machen
new str[128];
new diff = GetPVarInt(playerid,"Timeban") - time;
format(str,sizeof str,"Du bist noch %d Minuten gebannt! Komme später wieder!",diff / 60);
SendClientMessage(playerid,-1,str);
SpielerLaden(playerid);
Kick(playerid); //musst natürlich per Timer kicken lassen. 0.3x und so
}new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
SetPVarInt(playerid, "pLogged", 1);
if(dini_Exists(Spielerdatei))stock SpielerSpeichern(playerid)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Spieler/%s.txt",name);
if(GetPVarInt(playerid, "pLogged") == 1)
{
SpawnPlayer(playerid);
} -
Wie mach ich das, bin Newbie :::SSS
-
Wo muss dann SpielerLaden rein ?
-
Das hat man mir so gegeben, aber es funktioniert, nur das Speichern nicht.
-
So:
public OnPlayerConnect(playerid)
{
new time = gettime();
if(time < GetPVarInt(playerid,"Timeban")) { //Wenn du natürlich alles darin speichern lässt, musst du dir diesen Wert auch erst aus der Spielerdatei holen, aber das kannst du ja selber machen
new str[128];
new diff = GetPVarInt(playerid,"Timeban") - time;
format(str,sizeof str,"Du bist noch %d Minuten gebannt! Komme später wieder!",diff / 60);
SendClientMessage(playerid,-1,str);
Kick(playerid); //musst natürlich per Timer kicken lassen. 0.3x und so
}Ich speicher meine Spieler so:
SpielerSpeichern(playerid); -
Es funktioniert, nur wenn ich mich Connecte wärend ich gebannt werde, werde ich ja gekickt wieder.
Aber wenn ich entbant werde, und connecte bin ich wieder Adminlevel 0 alles resetet d.h es speichert gar nicht.
Logan -
Hab jetzt bei stock SpielerSpeichern und stock SpielerLaden
Timeban eingefügt geht auch nicht. -
Hab das eingefügt, kann mich trotzdem einloggen.
-
Wie soll das gehen xD, weiß leider nicht wie ich das machen soll.
-
Hallo Community,
ich habe ein Timeban System drinne der leider nicht funktioniert.
Er wird zwar gekickt vom Server kann sich aber gleich wieder einloggen:
ocmd:timeban(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
new pID, time, grund[256];
if(sscanf(params,"uis",pID,time,grund))return SendClientMessage(playerid,HELLROT,"AdmCmd: Benutze /timeban [SpielerID] [Zeit] [Grund]");
if(IsPlayerConnected(pID))
{
if(time>0||time<1000)
{
new string[128];
format(string,sizeof(string),"AdmCmd: %s wurde vom Administrator %s für %i Minuten gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),time,grund);
SendClientMessageToAll(HELLROT,string);
new wert;wert=gettime()+(60*time);
SetPVarInt(pID,"Timeban",wert);
Ban(pID);
return 1;
}
SendClientMessage(playerid,HELLROT,"AdmCmd: Bitte gültige Zeit angeben!");
return 1;
}
SendClientMessage(playerid,HELLROT,"AdmCmd: Der Spieler befindet sich zurzeit nicht auf dem Server!");
return 1;
} -
Bekomme diese Errors:
C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(3331) : error 017: undefined symbol "IsAValidVehicle"
C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(3332) : error 017: undefined symbol "i"
C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(3333) : warning 209: function "ocmd_carrespawn" should return a value
C:\Dokumente und Einstellungen\Sevket\Desktop\German Deathmatch\gamemodes\Deathmatch.pwn(3334) : error 010: invalid function or declaration
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase3 Errors.
-
Hallo Community,
ich habe ein Carrespawn System alles funktioniert. Doch ich möchte das,
wenn ein Spieler in einem Auto ist das dieses Fahrzeuge der benutzt wird
NICHT gespawnt wird. Ich weiß leider nicht wie das geht.
ocmd:carrespawn(playerid, params[])
{
if(!isPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
new pID, n1[128], grund[128];
format(n1,sizeof(n1),"%s hat alle Fahrzeuge respawnt.",SpielerName(playerid),SpielerName(pID),grund);
SendClientMessageToAll(BAIGE,n1);
for(new i = 1; i <= MAX_VEHICLES; i++)
{
SetVehicleToRespawn(i);
}
return 1;
}mfG,
Ien -
if(pickupid==PICKUPID) Das sollte dir ne denkstütze sein
Muss ich nicht rein machen ganz normal bei OnPlayerPickUpPickUp(playerid);
einfach
if(IsPlayerInRangeOfPoint(playerid,string;range,X,Y,Z))
{
GameTextForPlayer(playerid,"/buygun",3000,1);
}Das da rein und fertig
Danke an:
T4125Gamer -
Sers Leute,
ich möchte das wenn man in dein Pickup reingeht das ein GameText erscheint.
Nur ich weiß nicht wo das rein kommen soll.
So sieht meine Funktion aus:
if(IsPlayerInRangeOfPoint(playerid,2.0,X,Y,Z))
{
GameTextForPlayer(playerid,"/buygun",3000,1);
}Nur weiß ich nicht wo das rein kommen soll.
-
WTF, danke