Okay danke für deine tolle hilfe. Entschuldigung das ist so doom bin.
Beiträge von Mister.Anonym
-
-
Wie genau ist das mit der gleiche stelle gemint?
EDIT: Es klappt danke.
-
Aso okay. Aber leider geht es nicht. Der Label ist immer noch da nur die Gelbe farbe wird heller wen ich den befehl nochmal eingebe.
COMMAND:einsatz(playerid,params[])
{if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,GRAU,"Du bist im Prison.");
if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,GRAU,"Du bist Tot.");
if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,GRAU,"Du bist verletzt.");
if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,GRAU,"Du bist im Gefängnis.");
if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,GRAU,"Du bist K.O/getazert.");
if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Du bist gefesselt.");
if(isPlayerInFrakt(playerid,1))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Police Department im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,2))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("F.B.I im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,3))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Fire-Deparment/Medic im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,6))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Army im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(vehicle3Dtext[GetPlayerVehicleID(playerid)] != Text3D:-1)
{
DestroyDynamic3DTextLabel(vehicle3Dtext[GetPlayerVehicleID(playerid)]);
vehicle3Dtext[GetPlayerVehicleID(playerid)] = Text3D:-1;
return SendClientMessage(playerid, -1, "Entfernt");
}
return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion.");}
COMMAND:vk(playerid,params[])
{if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,GRAU,"Du bist im Prison.");
if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,GRAU,"Du bist Tot.");
if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,GRAU,"Du bist verletzt.");
if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,GRAU,"Du bist im Gefängnis.");
if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,GRAU,"Du bist K.O/getazert.");
if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Du bist gefesselt.");
if(isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2) || isPlayerInFrakt(playerid,3) || isPlayerInFrakt(playerid,6))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("Verkehrskontrolle! Bitte fahren sie Rechts ran!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(vehicle3Dtext[GetPlayerVehicleID(playerid)] != Text3D:-1)
{
DestroyDynamic3DTextLabel(vehicle3Dtext[GetPlayerVehicleID(playerid)]);
vehicle3Dtext[GetPlayerVehicleID(playerid)] = Text3D:-1;
return SendClientMessage(playerid, -1, "Entfernt");
}
return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion.");}
-
Danke, aber was muss ich bei den 3 ... einsetzen? Sry ich weiß das nicht genau.
new Text3D:vehicle3Dtext[MAX_VEHICLES] = {Text3D:-1,...};
-
Guten Abend, ich habe grade 2 befehle geschrieben aber jetzt habe ich ein problem. Ich weiß nicht genau wie ich das mache wen ich den befehl eingebe kommt Ja ein 3Dlabel aber wen ich den befehl nochmal eingeben soll der wieder weg gehen wie mache ich das am besten? Habe schon was versucht das klappt aber nicht!
COMMAND:einsatz(playerid,params[])
{if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,GRAU,"Du bist im Prison.");
if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,GRAU,"Du bist Tot.");
if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,GRAU,"Du bist verletzt.");
if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,GRAU,"Du bist im Gefängnis.");
if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,GRAU,"Du bist K.O/getazert.");
if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Du bist gefesselt.");
if(isPlayerInFrakt(playerid,1))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Police Department im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,2))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("F.B.I im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,3))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Fire-Deparment/Medic im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
if(isPlayerInFrakt(playerid,6))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("San Andreas Army im Einsatz! Räumen sie sofort die Straße!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion.");}
COMMAND:vk(playerid,params[])
{if(ImTutorial[playerid] != 0)return SendClientMessage(playerid,GRAU,"Du kannst keine Befehle nutzen,da du im Tutorial bist.");
if(GetPVarInt(playerid,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht eingeloggt!");
if(Spieler[playerid][pAWAYFROMKEYBOARD] == 1)return SendClientMessage(playerid,WRONGCMD,"Du bist im AFK-Modus und kannst somit keine Befehle nutzen."),SendClientMessage(playerid,WRONGCMD,"BENUTZE: /back");
if(Spieler[playerid][pInPrison] == 1)return SendClientMessage(playerid,GRAU,"Du bist im Prison.");
if(Spieler[playerid][pFriedhof] == 1)return SendClientMessage(playerid,GRAU,"Du bist Tot.");
if(Spieler[playerid][pDeath] == 1)return SendClientMessage(playerid,GRAU,"Du bist verletzt.");
if(Spieler[playerid][pJailed] != 0)return SendClientMessage(playerid,GRAU,"Du bist im Gefängnis.");
if(Spieler[playerid][pTazerd] == 1)return SendClientMessage(playerid,GRAU,"Du bist K.O/getazert.");
if(Spieler[playerid][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Du bist gefesselt.");
if(isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2) || isPlayerInFrakt(playerid,3) || isPlayerInFrakt(playerid,6))
{
if(Spieler[playerid][pDuty] == 0)return SendClientMessage(playerid,GRAU,"Du bist nicht im Dienst.");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Du sitzt in keinem Fahrzeug.");
vehicle3Dtext[GetPlayerVehicleID(playerid)] = CreateDynamic3DTextLabel("Verkehrskontrolle! Bitte fahren sie Rechts ran!",GELB, 0.0,0.0,0.0,50.0,INVALID_PLAYER_ID,GetPlayerVehicleID(playerid),7,0,-1,-1);
return 1;
}
return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion.");}
-
Ich glaube das ist normal. Aber leider wird es immer noch nicht richtig gespeichert.
//EDIT: Liegt es vielleicht daran?
case GUTSCHEIN_CREATE_CODE:
{
new string[150],query[128];
if(response == 0)
{
if(Gutschein[MakeGutschein[playerid]][gutscheincreatet] == 1)
{
//format(query,sizeof(query),"DELETE FROM "#DATENBANKTAG"_gutscheine WHERE id = '%d'",MakeGutschein[playerid]);
format(query,sizeof(query),"INSERT INTO "#DATENBANKTAG"_gutscheine (`id`,`gutscheincode`,`gutscheinname`,`gutscheindes`,`gutscheintyp`,`gutscheinmenge`,`gutscheinzahl`) VALUES ('%s','%s','%s','%s','%s','%s','%s')",MakeGutschein[playerid]);
mysql_function_query(MySqlConnection,query,false,"","");
mysql_free_result();
Gutschein[MakeGutschein[playerid]][gutscheincreatet] = 0;
strmid(Gutschein[MakeGutschein[playerid]][gutscheincode],"Unbekannt",0,strlen("Unbekannt"),16);
strmid(Gutschein[MakeGutschein[playerid]][gutscheinname],"Unbekannt",0,strlen("Unbekannt"),32);
strmid(Gutschein[MakeGutschein[playerid]][gutscheindesc],"Unbekannt",0,strlen("Unbekannt"),64);
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinmenge] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinanzahl] = 0;
MakeGutschein[playerid] = 0;
}
return 1;
}
if(response == 1)
{
if(!strlen(inputtext) || strlen(inputtext) > 16)
{
ShowPlayerDialog(playerid,GUTSCHEIN_CREATE_CODE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 1","Gib deinen Gutscheincode ein:","Weiter","Gutschein löschen");
return SendClientMessage(playerid,GRAU,"Du musst schon einen Text eingeben./Du kannst nicht mehr als 16 zeichen benutzen.");
}
else
{
strmid(Gutschein[MakeGutschein[playerid]][gutscheincode],inputtext,0,strlen(inputtext),16);
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGebe nun den Gutscheinnamen ein:",Gutschein[MakeGutschein[playerid]][gutscheincode]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_NAME,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 2",string,"Weiter","Zurück");
return 1;
}
}
} -
-
Danke so habe Ingame einen Gutschein erstellt.
GUTSCHEIN-DEBUG | UPDATE pRP_gutscheine SET gutscheincode='1810',gutscheinname='Test',gutscheindesc='Test',gutscheintyp='1',gutscheinmenge='1',gutscheinanzahl='1' WHERE id='1'
-
Ja in der Datenbank wird der Gutschein nicht richtig gespeichert. Der Gutschein soll gespeichert werden. Nein mit den debuggen das habe ich noch nicht gemacht.
-
Guten Abend, ich brauche bitte eure hilfe bei einen Gutschein System ich komme da einfach nicht weiter. Beim erstellen des Gutscheindes wird er nicht richtig in der Mysql datenbank gespeichert und wen mann ihn einlösen will bekommt mann nicht das was mann kriegen sollte. Ich hoffe mir kann jemand helfen.
Das ist das Gutschein enum
enum gutscheinsystem
{
gutscheincreatet,
gutscheincode[16],
gutscheinname[32],
gutscheindesc[64],
gutscheintyp,//[1 - Level, 2 - DonatorZeit, 3 - Fahrzeuge, 4 - Respektpunkte, 5 - Geld]
gutscheinmenge,
gutscheinanzahl,
}Damit wird unter den command /erstellen ein Gutschein erstellt
if(strcmp(cmd,"Gutschein",true) == 0)
{
for(new g=1;g<MAX_GUTSCHEIN;g++)
{
if(Gutschein[g][gutscheincreatet] != 1)
{
format(query,sizeof(query),"INSERT INTO "#DATENBANKTAG"_gutscheine (id) VALUES ('%d')",g);
mysql_function_query(MySqlConnection,query,false,"","");
MakeGutschein[playerid] = g;
Gutschein[g][gutscheincreatet] = 1;
strmid(Gutschein[g][gutscheincode],"Unbekannt",0,strlen("Unbekannt"),16);
strmid(Gutschein[g][gutscheinname],"Unbekannt",0,strlen("Unbekannt"),32);
strmid(Gutschein[g][gutscheindesc],"Unbekannt",0,strlen("Unbekannt"),64);
Gutschein[g][gutscheintyp] = 0;
Gutschein[g][gutscheinmenge] = 0;
Gutschein[g][gutscheinanzahl] = 0;
ShowPlayerDialog(playerid,GUTSCHEIN_CREATE_CODE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 1","Gib deinen Gutscheincode ein:","Weiter","Gutschein löschen");
return 1;
}
}
return SendClientMessage(playerid,GRAU,"Die maximale Anzahl an erstellten Gutscheinen ist erreicht!");
}Hier muss mann sein Gutschein Code eingeben
case DIALOG_GUTSCHEIN:
{
new string[128],gutscheinnn[16],gmenge[16];
if(response == 0)return 1;
if(response == 1)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_GUTSCHEIN,DIALOG_STYLE_INPUT,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Gutschein","{C9C9C9}Gib deinen Gutscheincode ein:","Absenden","Abbrechen");
return 1;
}
for(new g=1;g<MAX_GUTSCHEIN;g++)
{
if(Gutschein[g][gutscheincreatet] == 1)
{
if(!strcmp(inputtext,Gutschein[g][gutscheincode],true))
{
switch(Gutschein[g][gutscheintyp])
{
case 1:{gutscheinnn="Level",gmenge="Menge:";}
case 2:{gutscheinnn="DonatorZeit",gmenge="Menge:";}
case 3:{gutscheinnn="Fahrzeuge",gmenge="FahrzeugID:";}
case 4:{gutscheinnn="Respektpunkte",gmenge="Menge:";}
case 5:{gutscheinnn="Geld",gmenge="Menge:";}
}
Spieler[playerid][pGutschein] = g;
format(string,sizeof(string),"Name: %s\nCode: %s\nBeschreibung: %s\nTyp: %s\n%s %d\nAnzahl: %d",
Gutschein[g][gutscheinname],Gutschein[g][gutscheincode],Gutschein[g][gutscheindesc],Gutschein[g][gutscheindesc],
gutscheinnn,gmenge,Gutschein[g][gutscheinmenge],Gutschein[g][gutscheinanzahl]);
ShowPlayerDialog(playerid,DIALOG_GUTSCHEIN_HAB,DIALOG_STYLE_MSGBOX,"Gutschein einlösen",string,"Einlösen","Abbrechen");
}
}
}
return 1;
}
}
case DIALOG_GUTSCHEIN_HAB:
{
new string[128], query[280];
if(response == 0){Spieler[playerid][pGutschein] = 0;return 1;}
if(response == 1)
{
if(Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl] == 0)
{
if(Gutschein[Spieler[playerid][pGutschein]][gutscheincreatet] == 1)
{format(query,sizeof(query),"DELETE FROM "#DATENBANKTAG"_gutscheine WHERE id = '%d'",Spieler[playerid][pGutschein]);
mysql_function_query(MySqlConnection,query,false,"","");
mysql_free_result();
Gutschein[MakeGutschein[playerid]][gutscheincreatet] = 0;
strmid(Gutschein[MakeGutschein[playerid]][gutscheincode],"Unbekannt",0,strlen("Unbekannt"),16);
strmid(Gutschein[MakeGutschein[playerid]][gutscheinname],"Unbekannt",0,strlen("Unbekannt"),32);
strmid(Gutschein[MakeGutschein[playerid]][gutscheindesc],"Unbekannt",0,strlen("Unbekannt"),64);
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinmenge] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinanzahl] = 0;
MakeGutschein[playerid] = 0;
Spieler[playerid][pGutschein] = 0;
}
SendClientMessage(playerid,GRAU,"Der Gutschein wurde aufgebraucht und gelöscht!");
return 1;
}
switch(Gutschein[Spieler[playerid][pGutschein]][gutscheintyp])
{
case 1:
{
Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl]--;
SetPlayerLevel(playerid,GetPlayerLevel(playerid) + Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge]);
format(string,sizeof(string),"~w~Level ~b~%i ~w~erreicht",GetPlayerLevel(playerid));
GameTextForPlayer(playerid,string,5000,1);
SetPlayerChatBubble(playerid,"Level Up",ROT,MAX_STREAM_NAME_DISTANCE,10000);
SendClientMessage(playerid,GELB,"Du hast deinen Gutschein eingelöst");
}
case 2:
{
Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl]--;
new time = Spieler[playerid][pPremium]-gettime();
if(floatround(time/86400) >= 1)
{
new days = floatround(time/86400) + Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge];
Spieler[playerid][pPremium] = (gettime() + (60*60*24*days));
}
else
{
new days = Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge];
Spieler[playerid][pPremium] = (gettime() + (60*60*24*days));
}
SendClientMessage(playerid,GELB,"Du hast deinen Gutschein eingelöst");
}
case 3:
{
Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl]--;
new Float:Posi[4];
GetPlayerPos(playerid,Posi[0],Posi[1],Posi[2]);
GetPlayerFacingAngle(playerid,Posi[3]);
CreatePlayerVehicle(playerid,Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge],Posi[0],Posi[1],Posi[2],Posi[3],"N/A",0);
SendClientMessage(playerid,GELB,"Du hast deinen Gutschein eingelöst");
}
case 4:
{
Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl]--;
Spieler[playerid][pRespektFromPayday] += Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge];
SendClientMessage(playerid,GELB,"Du hast deinen Gutschein eingelöst");
}
case 5:
{
Gutschein[Spieler[playerid][pGutschein]][gutscheinanzahl]--;
ACMoney(playerid,Gutschein[Spieler[playerid][pGutschein]][gutscheinmenge]);
SendClientMessage(playerid,GELB,"Du hast deinen Gutschein eingelöst");
}
}
Spieler[playerid][pGutschein] = 1;
}
}Hier sind die Gutschein erstellungs schritte
case GUTSCHEIN_CREATE_CODE:
{
new string[150],query[128];
if(response == 0)
{
if(Gutschein[MakeGutschein[playerid]][gutscheincreatet] == 1)
{
//format(query,sizeof(query),"DELETE FROM "#DATENBANKTAG"_gutscheine WHERE id = '%d'",MakeGutschein[playerid]);
format(query,sizeof(query),"INSERT INTO "#DATENBANKTAG"_gutscheine (`id`,`gutscheincode`,`gutscheinname`,`gutscheindes`,`gutscheintyp`,`gutscheinmenge`,`gutscheinzahl`) VALUES ('%s','%s','%s','%s','%s','%s','%s')",MakeGutschein[playerid],gutscheincode,gutscheinname,gutscheindesc,gutscheintyp,gutscheinmenge,gutscheinanzahl);
mysql_function_query(MySqlConnection,query,false,"","");
mysql_free_result();
Gutschein[MakeGutschein[playerid]][gutscheincreatet] = 0;
strmid(Gutschein[MakeGutschein[playerid]][gutscheincode],"Unbekannt",0,strlen("Unbekannt"),16);
strmid(Gutschein[MakeGutschein[playerid]][gutscheinname],"Unbekannt",0,strlen("Unbekannt"),32);
strmid(Gutschein[MakeGutschein[playerid]][gutscheindesc],"Unbekannt",0,strlen("Unbekannt"),64);
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinmenge] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinanzahl] = 0;
MakeGutschein[playerid] = 0;
}
return 1;
}
if(response == 1)
{
if(!strlen(inputtext) || strlen(inputtext) > 16)
{
ShowPlayerDialog(playerid,GUTSCHEIN_CREATE_CODE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 1","Gib deinen Gutscheincode ein:","Weiter","Gutschein löschen");
return SendClientMessage(playerid,GRAU,"Du musst schon einen Text eingeben./Du kannst nicht mehr als 16 zeichen benutzen.");
}
else
{
strmid(Gutschein[MakeGutschein[playerid]][gutscheincode],inputtext,0,strlen(inputtext),16);
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGebe nun den Gutscheinnamen ein:",Gutschein[MakeGutschein[playerid]][gutscheincode]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_NAME,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 2",string,"Weiter","Zurück");
return 1;
}
}
}
case GUTSCHEIN_DIALOG_NAME:
{
new string[256];
if(response == 0)
{
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGebe nun den Gutscheinnamen ein:",Gutschein[MakeGutschein[playerid]][gutscheincode]);
ShowPlayerDialog(playerid,GUTSCHEIN_CREATE_CODE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 1","Gib deinen Gutscheincode ein:","Weiter","Gutschein löschen");
return 1;
}
if(response == 1)
{
if(!strlen(inputtext) || strlen(inputtext) > 32)
{
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGebe nun den Gutscheinnamen ein:",Gutschein[MakeGutschein[playerid]][gutscheincode]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_NAME,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 2",string,"Weiter","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon einen Text eingeben./Du kannst nicht mehr als 32 zeichen benutzen.");
}
else
{
strmid(Gutschein[MakeGutschein[playerid]][gutscheinname],inputtext,0,strlen(inputtext),64);
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGutscheinname: %s\nGebe nun die Gutscheinbeschreibung ein:",Gutschein[MakeGutschein[playerid]][gutscheincode],Gutschein[MakeGutschein[playerid]][gutscheinname]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_DESC,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 3",string,"Weiter","Zurück");
return 1;
}
}
}
case GUTSCHEIN_DIALOG_DESC:
{
new string[256];
if(response == 0)
{
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGebe nun den Gutscheinnamen ein:",Gutschein[MakeGutschein[playerid]][gutscheincode]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_NAME,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 2",string,"Weiter","Zurück");
return 1;
}
if(response == 1)
{
if(!strlen(inputtext) || strlen(inputtext) > 64)
{
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGutscheinname: %s\nGebe nun die Gutscheinbeschreibung ein:",Gutschein[MakeGutschein[playerid]][gutscheincode],Gutschein[MakeGutschein[playerid]][gutscheinname]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_DESC,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 3",string,"Weiter","Zurück");
return SendClientMessage(playerid,GRAU,"Du musst schon einen Text eingeben./Du kannst nicht mehr als 64 zeichen benutzen.");
}
else
{
strmid(Gutschein[MakeGutschein[playerid]][gutscheindesc],inputtext,0,strlen(inputtext),64);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_TYP,DIALOG_STYLE_LIST,"Gutscheinerstellung Schritt 4","Level\nDonartorZeit\nFahrzeug\nRespektpunkte\nGeld","Weiter","Zurück");
return 1;
}
}
}
case GUTSCHEIN_DIALOG_TYP:
{
new string[256];
if(response == 0)
{
format(string,sizeof(string),"Gutscheinerstellung Fortschritt:\nGutscheincode: %s\nGutscheinname: %s\nGebe nun die Gutscheinbeschreibung ein:",Gutschein[MakeGutschein[playerid]][gutscheincode],Gutschein[MakeGutschein[playerid]][gutscheinname]);
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_DESC,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 3",string,"Weiter","Zurück");
return 1;
}
if(response == 1)
{
switch(listitem)
{
case 0:
{//Level
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 1;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Level soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 1:
{//DonatorZeit
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 2;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel PremiumZeit soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 2:
{//Fahrzeuge
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 3;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return 1;
}
case 3:
{//Respektpunkte
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 4;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viele Respektpunkte soll man erhalten:","Weiter","Zurück");
return 1;
}
case 4:
{//Geld
Gutschein[MakeGutschein[playerid]][gutscheintyp] = 5;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Geld soll man erhalten:","Weiter","Zurück");
return 1;
}
}
}
}
case GUTSCHEIN_DIALOG_MENGE:
{
new anzahl = strval(inputtext);
if(response == 0)
{
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_TYP,DIALOG_STYLE_LIST,"Gutscheinerstellung Schritt 4","Level\nDonartorZeit\nFahrzeug\nRespektpunkte\nGeld","Weiter","Zurück");
return 1;
}
if(response == 1)
{
if(!strlen(inputtext))
{
switch(Gutschein[MakeGutschein[playerid]][gutscheintyp])
{
case 1:
{//Level
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Level soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 2:
{//DonatorZeit
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel PremiumZeit soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 3:
{//Fahrzeuge
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return 1;
}
case 4:
{//Respektpunkte
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viele Respektpunkte soll man erhalten:","Weiter","Zurück");
return 1;
}
case 5:
{//Geld
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Geld soll man erhalten:","Weiter","Zurück");
return 1;
}
}
return 1;
}
if(!IsNumeric(inputtext))
{
switch(Gutschein[MakeGutschein[playerid]][gutscheintyp])
{
case 1:
{//Level
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Level soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 2:
{//DonatorZeit
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel PremiumZeit soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 3:
{//Fahrzeuge
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return 1;
}
case 4:
{//Respektpunkte
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viele Respektpunkte soll man erhalten:","Weiter","Zurück");
return 1;
}
case 5:
{//Geld
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Geld soll man erhalten:","Weiter","Zurück");
return 1;
}
}
return SendClientMessage(playerid,GRAU,"Gebe nur Zahlen ein!");
}
else
{
if(anzahl <= 0)
{
switch(Gutschein[MakeGutschein[playerid]][gutscheintyp])
{
case 1:
{//Level
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Level soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 2:
{//DonatorZeit
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel PremiumZeit soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 3:
{//Fahrzeuge
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return 1;
}
case 4:
{//Respektpunkte
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viele Respektpunkte soll man erhalten:","Weiter","Zurück");
return 1;
}
case 5:
{//Geld
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Geld soll man erhalten:","Weiter","Zurück");
return 1;
}
}
return SendClientMessage(playerid,GRAU,"Die Menge muss > 0!");
}
if((Gutschein[MakeGutschein[playerid]][gutscheintyp] == 3) && (anzahl<400||anzahl>611))
{
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return SendClientMessage(playerid,WRONGCMD,"Model 400-611!!");
}
Gutschein[MakeGutschein[playerid]][gutscheinmenge] = anzahl;
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_ANZAHL,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 6","Wie oft kann dieser Gutschein verwendet werden:","Weiter","Zurück");
return 1;
}
}
}
case GUTSCHEIN_DIALOG_ANZAHL:
{
new anzahl = strval(inputtext);
if(response == 0)
{
switch(Gutschein[MakeGutschein[playerid]][gutscheintyp])
{
case 1:
{//Level
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Level soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 2:
{//DonatorZeit
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel PremiumZeit soll man bei diesem Gutschein erhalten:","Weiter","Zurück");
return 1;
}
case 3:
{//Fahrzeuge
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Welches Fahrzeug soll man erhalten:","Weiter","Zurück");
return 1;
}
case 4:
{//Respektpunkte
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viele Respektpunkte soll man erhalten:","Weiter","Zurück");
return 1;
}
case 5:
{//Geld
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_MENGE,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 5","Wie viel Geld soll man erhalten:","Weiter","Zurück");
return 1;
}
}
return 1;
}
if(response == 1)
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_ANZAHL,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 6","Wie oft kann dieser Gutschein verwendet werden:","Weiter","Zurück");
return 1;
}
if(!IsNumeric(inputtext))
{
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_ANZAHL,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 6","Wie oft kann dieser Gutschein verwendet werden:","Weiter","Zurück");
return SendClientMessage(playerid,GRAU,"Gebe nur Zahlen ein!");
}
else if(anzahl <= 0)
{
ShowPlayerDialog(playerid,GUTSCHEIN_DIALOG_ANZAHL,DIALOG_STYLE_INPUT,"Gutscheinerstellung Schritt 6","Wie oft kann dieser Gutschein verwendet werden:","Weiter","Zurück");
return SendClientMessage(playerid,GRAU,"Anzahl muss > 0 sein!");
}
else
{
SendClientMessage(playerid,GELB,"Gutschein erfolgreich erstellt!");
MakeGutschein[playerid] = 0;
Gutschein[MakeGutschein[playerid]][gutscheinanzahl] = anzahl;
}
return 1;
}
}Hier wird es gepseichert
while(gutscheinn<MAX_GUTSCHEIN && Gutschein[gutscheinn][gutscheincreatet] != 0)
{
format(query,sizeof(query),"UPDATE "#DATENBANKTAG"_gutscheine SET gutscheincode='%s',gutscheinname='%s',gutscheindesc='%s',gutscheintyp='%d',gutscheinmenge='%d',gutscheinanzahl='%d' WHERE id='%d'",
Gutschein[gutscheinn][gutscheincode],Gutschein[gutscheinn][gutscheinname],Gutschein[gutscheinn][gutscheindesc],Gutschein[gutscheinn][gutscheintyp],Gutschein[gutscheinn][gutscheinmenge],Gutschein[gutscheinn][gutscheinanzahl],gutscheinn);
strcat(mainquery,query);
mysql_function_query(MySqlConnection,mainquery,false,"","");
strdel(mainquery,0,sizeof(mainquery));
strdel(query,0,sizeof(query));
gutscheinn++;
} -
Guten Tag, ich weiß es ist schon fast ein Jahr her, aber hat vielleicht noch jemand einen Downloadlink für mich?
-
Okay danke dir. Ich werde es nochmal anpassen.
-
Aso ja danke. Da habe ich mich jetzt Doom angestellt.
Ich habe es jetzt so gemacht.
GetPosVorSpieler(playerid, 1.0, x, y, z);
if(!IsPlayerInRangeOfPoint(pID, 1.0, x, y, z))return SendClientMessage(playerid,GRAU,"Der Spieler ist nicht vor dir.")
{
new pID,string[128];
new Float:x, Float:y, Float:z;
if(IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,GRAU,"Im Fahrzeug nicht möglich.");
if(sscanf(params,"u",pID))return SendClientMessage(playerid,WRONGCMD,"BENUTZE: /cuff [playerid/Name]");
if(pID == playerid)return SendClientMessage(playerid,GRAU,"Du kannst dich nicht fesseln!");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,GRAU,"Der angegebene Spieler ist nicht eingeloggt!");
if(GetPVarInt(pID,"Eingeloggt") == 0)return SendClientMessage(playerid,GRAU,"Der angegebene Spieler ist nicht eingeloggt!");
if(IsPlayerNPC(pID))return SendClientMessage(playerid,GRAU,"Das kannst du nicht!");
if(!ProxDetectorS(5.0,playerid,pID))return SendClientMessage(playerid,GRAU,"Der angegebene Spieler ist nicht in deiner Nähe!");
if(GetPosVorSpieler(pID, 1.0, x, y, z))return SendClientMessage(playerid,GRAU,"Der Spieler steht nicht vor dir!");
SetPlayerPos(playerid, x, y, z);
if(IsPlayerInAnyVehicle(pID))return SendClientMessage(playerid,GRAU,"Spieler ist in einem Fahrzeug.");
if(Spieler[pID][pCuffed] == 1)return SendClientMessage(playerid,GRAU,"Spieler hat bereits Handschellen angelegt.");
//if(HandsUpPerson[playerid] == false;
SetPlayerSpecialAction(pID,SPECIAL_ACTION_CUFFED);
SetPlayerAttachedObject(pID,0,19418,6,-0.011000,0.028000,-0.022000,-15.600012,-33.699977,-81.700035,0.891999,1.000000,1.168000);
TogglePlayerControllable(pID,true);
Spieler[pID][pCuffed] = 1;
GameTextForPlayer(pID,"~r~Handschellen angelegt",5000,3);
format(string,sizeof(string),"Du hast %s Handschellen angelegt.",SpielerName(pID));
SendClientMessage(playerid,HELLBLAU,string);
format(string,sizeof(string),"%s legt dir Handschellen an.",SpielerName(playerid));
SendClientMessage(pID,HELLBLAU,string);
format(string,sizeof(string),"** %s legt %s Handschellen an **",SpielerName(playerid),SpielerName(pID));
PlayerTalkPublic(playerid,MEFARBE,string,10);
return 1;
}
return SendClientMessage(playerid,GRAU,"Du bist nicht in der jeweiligen Fraktion."); -
Aso ok. Das mache ich dann wieder unter den Cuff befehl aber meinst du mit Passt das da nix hin muss?
-
Danke. Ich habe es mal so eingefügt. Leider kann ich es nicht testen weil ich noch einen zweiten Spieler brauche.
Das habe ich in den Cuff befehl reingemacht.
if(GetPosVorSpieler(pID, 1.0, x, y, z))return SendClientMessage(playerid,GRAU,"Der Spieler steht nicht vor dir!");
SetPlayerPos(playerid, x, y, z);Den Stock habe ich ganz unten im Script reingemacht.
stock GetPosVorSpieler(playerid, Float:dist, &Float:x, &Float:y, &Float:z)
{
if(IsPlayerConnected(playerid))
{
new Float:a;
if(IsPlayerInAnyVehicle(playerid)) GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
else GetPlayerFacingAngle(playerid, a);
GetPlayerPos(playerid, x, y, z);
x += (dist * floatsin(-a, degrees));
y += (dist * floatcos(-a, degrees));
return true;
}
return false;
}Ich wollte dich fragen ob das so Richtig ist?
-
Guten Morgen, ich brauche mal bitte eure hilfe. Weil ich eine Abfrage für meinen /cuff befehl brauche, aber ich weiß nicht genau wie die geht. Die Abfrage soll dafür dasein das Cops einen Spieler nur Handschellen anlegen können, wen die Spieler vor ihnen stehen. Ich hoffe mir kann jemand helfen.
-
Ja ich habe den Fix genommen.
-
Vielen dank es hat geklappt.
-
Guten Abend, mein Ban Dialog wird nicht angezeigt wen mann gebannt ist und auf dem Server joint. Ich finde keinen Fehler ich sitze schon ein paar Stunden daran ich hoffe hier kann mir jemand helfen.
stock CheckBannedUser(playerid)
{
new query[256];
format(query,sizeof(query),"SELECT * FROM "#DATENBANKTAG"_multiaccounts WHERE Name='%s'",SpielerName(playerid));
mysql_function_query(MySqlConnection,query,true,"OnQueryFinish","siii",query,_SQL_MULTIACC_CHECK,playerid,MySqlConnection);
format(query,sizeof(query),"SELECT * FROM "#DATENBANKTAG"_bans WHERE IP='%s' OR Name='%s'",SpielerIP(playerid),SpielerName(playerid));
mysql_function_query(MySqlConnection,query,true,"OnQueryFinish","siii",query,_SQL_BAN_CHECK,playerid,MySqlConnection);
for(new i=0;i<sizeof(BanNames);i++)
{
if(!strcmp(SpielerName(playerid),BanNames[i],true))
{
SendClientMessage(playerid,BLAU,"Verbindung unterbrochen...");
format(query,sizeof(query),"%s du wurdest vom System gekickt.\nDer Grund für den Kick war dein verbotener Name: %s.\nFalls du zu unrecht gekickt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(playerid),BanNames[i]);
ShowPlayerDialog(playerid,DIALOG_4ALL_SONSTIGES,DIALOG_STYLE_MSGBOX,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Kick",query,"Verlassen","");
KickUser(playerid, "System", "Verbotener Name");
return 1;
}
}
for(new i=0;i<sizeof(BanNameTags);i++)
{
if(strfind(SpielerName(playerid),BanNameTags[i],false) == 0)
{
SendClientMessage(playerid,BLAU,"Verbindung unterbrochen...");
format(query,sizeof(query),"%s du wurdest vom System gekickt.\nDer Grund für den Kick war dein verbotenes Clantag : %s.\nFalls du zu unrecht gekickt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(playerid),BanNameTags[i]);
ShowPlayerDialog(playerid,DIALOG_4ALL_SONSTIGES,DIALOG_STYLE_MSGBOX,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Kick",query,"Verlassen","");
KickUser(playerid, "System", "Verbotener Clantag");
return 1;
}
}
ForEachPlayer(i)
{
if(IsPlayerConnected(i) && !IsPlayerNPC(i) && i != playerid)
{
if(!strcmp(SpielerName(playerid),Spieler[i][pName],true))
{
SendClientMessage(playerid,BLAU,"Verbindung unterbrochen...");
format(query,sizeof(query),"%s du wurdest vom System gekickt.\nDer Grund für den Kick war das dein Name irregulär ist.\nFalls du zu unrecht gekickt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(playerid));
ShowPlayerDialog(playerid,DIALOG_4ALL_SONSTIGES,DIALOG_STYLE_MSGBOX,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Kick",query,"Verlassen","");
KickUser(playerid, "System", "irrigulärer Name");
return 1;
}
}
}
return 1;
}case _SQL_BAN_CHECK:
{
new zeit,admin[24],reason[64];
cache_get_data(rows,fields);
if(rows)
{
cache_get_field_content(0,"Grund",reason);
cache_get_field_content(0,"Admin",admin);
cache_get_field_content(0,"Zeit",result);
zeit = strval(result);
if(zeit == -1)
{
for(new t=0;t<MAX_TEXT_DRAWS;t++){ if(t != INVALID_TEXT_DRAW) TextDrawHideForPlayer(extraid,Text:t); }
for(new t=0;t<MAX_PLAYER_TEXT_DRAWS;t++){ if(t != INVALID_TEXT_DRAW) PlayerTextDrawHide(extraid,PlayerText:t); }
SendClientMessage(extraid,BLAU,"Verbindung unterbrochen...");
format(query,sizeof(query),"%s du wurdest vom Server gebannt.\nFalls du zu unrecht gebannt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\nDauer: Permanent\nGrund: %s\nAdmin: %s\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(extraid),reason,admin);
ShowPlayerDialog(extraid,DIALOG_4ALL_SONSTIGES,DIALOG_STYLE_MSGBOX,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Bann",query,"Verlassen","");
TextDrawShowForPlayer(extraid,Introdraw[0]);
TextDrawShowForPlayer(extraid,Introdraw[1]);
TextDrawShowForPlayer(extraid,InfoSign);
PlayerTextDrawSetString(extraid,INFOdraw[extraid][2],"~r~Du bist gebannt!");
PlayerTextDrawShow(extraid,INFOdraw[extraid][2]);
StopAudioStreamForPlayer(extraid);
PlayAudioStreamForPlayer(extraid,ServerSounds[13],0.0,0.0,0.0);
TogglePlayerControllable(extraid,0);
Kick(extraid);
return 1;
}
else
{
if(gettime() < zeit)
{
new timebanned = zeit-gettime();
for(new t=0;t<MAX_TEXT_DRAWS;t++){ if(t != INVALID_TEXT_DRAW) TextDrawHideForPlayer(extraid,Text:t); }
for(new t=0;t<MAX_PLAYER_TEXT_DRAWS;t++){ if(t != INVALID_TEXT_DRAW) PlayerTextDrawHide(extraid,PlayerText:t); }
SendClientMessage(extraid,BLAU,"Verbindung unterbrochen...");
if(floatround(timebanned/86400) > 0)//tage
{
format(query,sizeof(query),"%s du wurdest vom Server gebannt.\nFalls du zu unrecht gebannt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\nDauer: %i Tage\nGrund: %s\nAdmin: %s\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(extraid),timebanned/86400,reason,admin);
}
else if(floatround(timebanned/3600) > 0)//stunden
{
format(query,sizeof(query),"%s du wurdest vom Server gebannt.\nFalls du zu unrecht gebannt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\nDauer: %i Stunden\nGrund: %s\nAdmin: %s\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(extraid),timebanned/3600,reason,admin);
}
else if(floatround(timebanned/60) > 0 || floatround(timebanned%60) > 0)//minuten,sekunde
{
format(query,sizeof(query),"%s du wurdest vom Server gebannt.\nFalls du zu unrecht gebannt wurdest,\nmelde dich im Teamspeak³ oder schreibe uns im Forum.\n\nDauer: %i:%02d Minuten\nGrund: %s\nAdmin: %s\n\n"#SERVERFARBE""#SERVERNAME"{FFFFFF} Adminteam",SpielerName(extraid),timebanned/60,timebanned%60,reason,admin);
}
ShowPlayerDialog(extraid,DIALOG_4ALL_SONSTIGES,DIALOG_STYLE_MSGBOX,""#SERVERFARBE""#SERVERNAME"{FFFFFF}: Bann",query,"Verlassen","");
TextDrawShowForPlayer(extraid,Introdraw[0]);
TextDrawShowForPlayer(extraid,Introdraw[1]);
TextDrawShowForPlayer(extraid,InfoSign);
PlayerTextDrawSetString(extraid,INFOdraw[extraid][2],"~r~Du bist gebannt!");
PlayerTextDrawShow(extraid,INFOdraw[extraid][2]);
StopAudioStreamForPlayer(extraid);
PlayAudioStreamForPlayer(extraid,ServerSounds[13],0.0,0.0,0.0);
TogglePlayerControllable(extraid,0);
Kick(extraid);
}
else
{
format(query,sizeof(query),"DELETE FROM "#DATENBANKTAG"_bans WHERE IP ='%s' OR Name = '%s'",SpielerIP(extraid),SpielerName(extraid));
mysql_function_query(MySqlConnection,query,false,"","");
mysql_free_result();
}
return 1;
}
}
return 1;
} -
Guten Tag, es wird erstmal kein Update mehr kommen. Ich Scripte momentan oft an dem Script aber ich lade es erstmal nicht hoch. Vielleicht werde ich es ihrgendwann veröffentlichen, aber erstmal nutze ich es für mich selber.