Lass dir das dochmal ausgeben:
printf("Ausgelesener Key: %s | Eingegebener Key: %s",MD5_Hash(Key), Get);
mfg. ![]()
Lass dir das dochmal ausgeben:
printf("Ausgelesener Key: %s | Eingegebener Key: %s",MD5_Hash(Key), Get);
mfg. ![]()
Einfach mal selber designen ?
mfg. ![]()
ass ich seit heut auch benutze [ INCLUDE ] Variablen in Pawn nutzen wie in PHP
Danke für die Schleichwerbung und freut mich das du mein System nutzt und es dir gefällt ![]()
Kaaaliiiber
Ganz Ruhig ![]()
Schick mir mal deine TV Daten per PN, ich mach dir das mal schnell ![]()
mfg. ![]()
wozu new name[24];?
Na, der Name von dem Spieler muss doch in irgendeiner Variable stehen ![]()
Eigenwerbung, hm?
Nein, ich wollte damit eigentlich nur andeuten, dass es sowas schon gibt ![]()
Achwas, bei mir wirds mit Commands gesteuert.
Jop, die Frage ist jetzt nur ob das Benutzerfreundlicher ist als ein Dialog ![]()
mfg. ![]()
Das macht man so:
ocmd:tie(playerid,params[])
{
if(!isPlayerInFrakt(playerid,2))return SendClientMessage(playerid,ROT,"Du bist nicht in der Frak");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,ROT,"Du bist in keinem auto!");
new string[128],pID;
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,ROT,"Verwendung: /tie [spielerid]");
if(GetPlayerVehicleID(playerid) != GetPlayerVehicleID(pID)) return SendClientMessage(playerid,ROT,"Dieser Spieler sitzt nicht in deinem Fahrzeug !");
new name[24];
GetPlayerName(playerid, name, 24);
format(string, sizeof(string), "* Du wurdest von %s gefesselt.", name);
SendClientMessage(pID, BLAU, string);
GetPlayerName(pID, name, 24);
format(string, sizeof(string), "Du hast %s gefesselt.", name);
SendClientMessage(playerid, BLAU, string);
GameTextForPlayer(pID, "~r~Gefesselt", 2500, 3);
TogglePlayerControllable(pID,0);
return 1;
}
mfg. ![]()
if(!IsPlayerInRangeOfPoint(playerid, 20.0, X, Y, Z))//20.0 = Radius von dem Gebiet | X,Y,Z durch koordinaten von dem Gebiet ersetzen
{
PlayAudioStreamForPlayer(playerid, "http://somafm.com/tags.pls", X, Y, Z,40.0, 1);//1 leiser oder gangz weg/aus
return 1;
}
Wenn, dann mich auch bitte richtig verbessern:
if(IsPlayerInRangeOfPoint(playerid, 40.0, X, Y, Z))//20.0 = Radius von dem Gebiet | X,Y,Z durch koordinaten von dem Gebiet ersetzen
{
PlayAudioStreamForPlayer(playerid, "http://somafm.com/tags.pls", X, Y, Z, 40.0, 1);//1 leiser oder gangz weg/aus
return 1;
}
mfg. ![]()
Leute, lest doch die seite in der wiki durch.....ihr brauch IsPlayerInRangeOfPoint gar nicht...
Wenn mich nicht alles täuscht braucht man es doch, da die Musik zwar wenn man mehr Parameter in die Funktion baut an dieser bestimmten Stelle/Zone anfängt aber nicht wieder von alleine aufhört ![]()
mfg. ![]()
Ups...ja mein Fehler, schreibe es so:
if(dialogid==DIALOG_PINBEANTRAGEN)
{
if(!response) return SendClientMessage(playerid,Hellblau,"Dein Konto wurde nicht erstellt, da du den Vorgang abgebrochen hast.");
if(response)
{
if(strlen(inputtext) != 4 || !IsNumeric(inputtext)) //Error Zeile
{
SendClientMessage(playerid,Gelb,"Bitte gebe eine PIN Nummer ein.");
ShowPlayerDialog(playerid,DIALOG_PINBEANTRAGEN,DIALOG_STYLE_INPUT,"Volksbank Konto beantragen","Willkommen bei der Volksbank Los Santos.\nIhre Daten sind im System nicht gespeichert, also wollen Sie sich ein Konto beantragen.\nBitte geben Sie hierzu einfach ihren gewünschten PIN in das Fenster unten ein.\nSollten Sie ihren PIN verlieren, schauen Sie unter /stats nach.","Fortsetzen","Abbrechen");
}
else
{
SetPVarInt(playerid,"BankPIN",strval(inputtext));
}
}
}
Das könnte man zum Beispiel so machen:
//Oben im Script
new bool:InZone[MAX_PLAYERS];
//Bei OnPlayerConnect
SetTimerEx("Audio_Timer", 1000, 1, "i", playerid);
//Der Callback
forward Audio_Timer(playerid);
public Audio_Timer(playerid)
{
if(!IsPlayerInRangeOfPoint(playerid, 20.0, X, Y, Z))//20.0 = Radius von dem Gebiet | X,Y,Z durch koordinaten von dem Gebiet ersetzen
{
if(InZone[playerid] == false) return 1;
InZone[playerid] = false;
StopAudioStreamForPlayer(playerid);
return 1;
}
if(InZone[playerid] == true) return 1;
PlayAudioStreamForPlayer(playerid, "http://XXX.de/fetteBeats.mp3");
InZone[playerid] = true;
return 1;
}
mfg. ![]()
Mhm, okay, dann mache die if-Abfrage mal so:
if(strlen(inputtext) != 4)
Wenn man halt Buchstaben eingibt, wird das auch in eine Zahl umgewandelt, aber man ist dann selber dran Schuld ![]()
mfg. ![]()
new time[120];
Wieso auch immer
Deklariere es so: new time;
und arbeite mit SetPVarInt und GetPVarInt ![]()
mfg. ![]()
Hmmm Irgendwelche Errors Oder Klappt es einfach nicht ? Ich kenn jemand der das bestimmt gleich weis Kaliber: Hast du zufällig ne idee ?
Sehr lustig ![]()
Schreibe den Code einfach mal so:
if(dialogid==DIALOG_PINBEANTRAGEN)
{
if(!response) return SendClientMessage(playerid,Hellblau,"Dein Konto wurde nicht erstellt, da du den Vorgang abgebrochen hast.");
if(response)
{
if(strlen(inputtext) != 4 || !IsNumeric(inputtext))
{
SendClientMessage(playerid,Gelb,"Bitte gebe eine PIN Nummer ein.");
ShowPlayerDialog(playerid,DIALOG_PINBEANTRAGEN,DIALOG_STYLE_INPUT,"Volksbank Konto beantragen","Willkommen bei der Volksbank Los Santos.\nIhre Daten sind im System nicht gespeichert, also wollen Sie sich ein Konto beantragen.\nBitte geben Sie hierzu einfach ihren gewünschten PIN in das Fenster unten ein.\nSollten Sie ihren PIN verlieren, schauen Sie unter /stats nach.","Fortsetzen","Abbrechen");
}
else
{
SetPVarInt(playerid,"BankPIN",strval(inputtext));
}
}
}
Falls du einen Error bekommen solltest der so aussieht:
Packe das in dein Script:
stock IsNumeric(const string[])
{
for (new i = 0, j = strlen(string); i < j; i++)
{
if (string[i] > '9' || string[i] < '0') return -1;
}
return 0;
}
mfg. ![]()
Danke für eure Bewertungen ![]()
mfg. ![]()
Wie deklarierst du TIME ?
mfg. ![]()
Schreibe das alles mal so:
public ServerMinute(playerid)
{
for(new i; i<MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i)) continue;
if(GetPVarInt(i,"Mutet") != 1) continue;
new time[128];
GetPVarString(i,"MuteTime", time, 128);
new zt = strval(time)-1;
format(time, sizeof time, "%d", zt);
SetPVarString(i,"MuteTime", time);
if(zt == 0)
{
SetPVarInt(i,"Mutet",0);
SendClientMessage(playerid, COLOR_GREEN, "Du bist nun nicht mehr gemutet.");
}
}
return 1;
}
Warum du oben den Parameter playerid übergibst und trotzdem eine for-Schleife nutzt, die alle Spieler durchläuft macht zwar überhaupt keinen Sinn und ist total nutzlos+Ressourcen verschwendend, aber ich habe mal deinen Code verbessert ![]()
mfg. ![]()
Ja, werde es vermutlich benutzen ist einfacher als diesen Rießiegen Format und so
Dafür war das Ursprünglich ja auch gedacht...
Es sollte Anfängern helfen, die noch nicht mit format Umgehen können, bzw. es noch nicht verstehen oder richtig anwenden können...
mfg. ![]()