Kenne mich nicht mehr mit mysql aus, schauj dir doch bitte das mysql tut von mrmonathd an, hat sonst noch jemand fragen
Beiträge von Kasakow
-
-
Ja genau, so sparst du dir klammern,
Das hatte ich ja von anfang an vor

Naja leute bin dann erstmal off.
Schreibt doch bitte als kommentar was ihr als nächstes tut wollt.
Werde alle fragen morgen beantwortet.
Gebt mir doch bitte auch noch fische im wert von 1-10 ab (10 ist beste)
Haut rein
Euer PAWN
-
wenn du lieber zeilen sparst brauchst nicht nach ner if abfrage und du nur 1 sache machst, KEINE klammern.
if(baum==1)return baum=0;Diese aussage verstehe ich nich so ganz,
wenn ich
response == 0)return Kick(playerid); mache
Dann ist das nichta anderen wie wenn ich
if(response == 0) {Kick(playerid);} oder
if(response == 0)
{
Kick(playerid);
}mache
hehe
edit:
MD5 ist ein stringverschlüsslungs programm.
Wenn ich z.B ein passwort eingebe wird es mehrere teile zerlegt.
z.B e5f32534544GFFG4245345 (ist kein md5has nur dahin geschrieben)So ich benutze MD5 dafür um das pw zu verschlüsseln, dann wenn der server gehackt wird das, wir einen password schutzt haben
-
Alles anzeigen
Ich habe mit MySQL auch kein Problem, aber stimmt für die Neulinge hier im Forum ist es perfekt, außer das mit den if(response == 0).
Das hat er 2 mal hintereinander geschrieben, bloß das eine mit einem return dahinter. Er hätte lieber if(response)
{
//REGISTER / LOGIN
}
else
{
Kick(playerid);
}
machen können.Kann bin aber nicht doof.
Ich spare lieber zeilen weist
-
So erst mal danke für die Kontruktive Kritik.
Nein tut mir leid , ich werde es nicht nochmal auf mysql machen weil ich nich sehr gut mit mysql umgehen kann.(konnte)und werde meine Fehler ausbessern.
Und es ist selfmade.
Hab mich da 1 1/2 stunden rangesetzt(müde deswegen solange) und dann bekomm ich an den kopf geworfen das es ich bin bisschen kopiert hab und eingefügt.
Stimmt nicht

-
Ok danke :))
hat meine variante funktioniert? -
forward Timer(playerid);
new Float:Mpx[MAX_PLAYERS],Float:Mpy[MAX_PLAYERS],Float:Mpz[MAX_PLAYERS];
public OnPlayerSpawn(playerid)
{
new Float:X,Float:Y,Float:Z;
GetPlayerPos(playerid, X, Y, Z);
Mpx[playerid] = X;
Mpy[playerid] = Y;
Mpz[playerid] = Z;
SetTimerEx("Timer",3000,true,"i",playerid);
return 1;
}public Timer(playerid)
{
if(!IsPlayernRangeOfPoint(playerid,5.0,Mpx[playerid],Mpy[playerid],Mpz[playerid]))return SendClientMessage(playerid, 0xFFFFFFFF, "Du hast dich vom spawn entfernt!");
SendClientMessage(playerid, 0xFFFFFFFF, "Gut, du stehst noch beim Spawn!");
return 1;
} -
6,6 zeilen klingt zwar nicht viel, aber wenn es mehr inhalt hätte , dann wäre es besser zum Verkaufen,
Was Fehlt im script:
Cheats-Verhindern
Hacks-Verhindern
Jobs
Mehr commands
einfach mehr inhalt,
gemapptes
-
1. würde /q nicht gehen, da er schon für schliesen des spieles verwendet wird.
2. Erstellst du einen befehl mit strcmp so:if(strcmp(cmdtext,"/command", true,10) == 0)
{
}und mit zcmd so:
command(command, playerid, params[])
{
return 1;
}
Andere möglichkeit:CMD:command(playerid, params[])
{
return 1;
} -
Der Fehler ist, dass du ein verschlüsseltes Passwort nicht entschlüsseln kannst...
Wenn der spieler sein pw vergessen hast, so brauchst du nur einen cmd mit dem du als admin das pw ändern kannst. der Spieler sollte dann natürlich auch wieder sein passwort ändern könnenhm, ja und öhm, wieso muss der spieler online sein.??
und wie kann man emails versenden(script technisch?
-
Hallo leute, ich benutze ein Login & Register auf Dini , mit md5 verschlüsselt.
So mein problem ist:
Erstens muss der spieler online sein und 2. wird nicht das entschlüsselte pw ausgeben , nur das md5//Passwort vom imgame rauslesen
dcmd_getpassword(playerid, params[])
{
new account[24]; //new account[24];
new string[128]; //new string[128];
if(!IsAdmin(playerid,6))
return SendClientMessage(playerid, Rot, "Fehler: Du bist nicht der ServerOwner.");
if(sscanf(params,"s",account))
return SendClientMessage(playerid, Rot, "Fehler: /getpassword [spielername] (muss ein vorhandener spieler sein)");
format(spielerdatei, sizeof(spielerdatei), "/DB/SpielerAccounts/%s.ini",account);
if(!dini_Exists(spielerdatei))
return SendClientMessage(playerid, Rot, "Fehler: Der Spieler existiert nicht.");
new HisPassword[50];
HisPassword = MD5_Hash(dini_Get(spielerdatei, "Key"));
format(string, sizeof(string), "Server: Sein Password lautet %s",HisPassword);
SendClientMessage(playerid, Weis, string);
return 1;
}Mein ziel ist, das der spieler nicht online sein muss, nur das die datei in der DatenBank vorhanden ist.
2. Das password soll entschlüsselt da stehen.Wo liegt hier mein Fehler.
-
Du musst die Variable auch auf 0 setzen,

Ich denke mehr muss Ich dazu nicht sagen
Du meinst zusätzlich zu DetroyObject Neonlichter{vehicleid] = 0; oder meinst du z.B
rot1[vehicleid] = 0;?
edit:: // geht nun danke euch allen
-
Einfach Objekte löschen

DestroyObject(rot1[vehicleid]);
DestroyObject(rot2[vehicleid]);Inwiefern "setzt" es sich wieder dran?
erst entfernen die neonröhren sich dann wenn ich wd fahre gehen sie wd dran -
else if(strcmp(Option, "off", true) == 0)
{
if(Neonlichter[vehicleid] < 1)return SendClientMessage(playerid, Rot, "Fehler: Du hast keine Neonröhren abgebracht.");
DestroyObject(rot1[vehicleid]);
DestroyObject(rot2[vehicleid]);
DestroyObject(blau1[vehicleid]);
DestroyObject(blau2[vehicleid]);
DestroyObject(gelb1[vehicleid]);
DestroyObject(gelb2[vehicleid]);
DestroyObject(weis1[vehicleid]);
DestroyObject(weis2[vehicleid]);
DestroyObject(pinke1[vehicleid]);
DestroyObject(pinke2[vehicleid]);
DestroyObject(grun1[vehicleid]);
DestroyObject(grun2[vehicleid]);
}So hab ichs versucht.
aber das objekt setzt sich nach dem fahren wd dranif(Neonlichter[vehicleid] == 1)
{
rot1[vehicleid] = CreateObject(18647,0,0,0,0,0,0);
rot2[vehicleid] = CreateObject(18647,0,0,0,0,0,0);
AttachObjectToVehicle(rot1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(rot2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 1;
}So lasse ich sie anbringen, wie wieder abbauen?
-
Hier zu dem sieht man das der stock register ausgeführt wird.
if(dialogid == DIALOG_REGISTER)
{
if(response == 0)return Kick(playerid);
if(response == 1)
{
if(!strlen(inputtext))
{
SendClientMessage(playerid, Rot, "Fehler: Du hast nichts eingegben.");
new string[600];
format(string, 600, "{FFFFFF}Willkommen auf GermanTrucking\n\nDu hast hier noch keinen Account.\n\nRegestriere dich bitte mit einem biligen Passwort ein.\n\n{00FF1E}Benutzername{FFFFFF}: {CDFF00}%s\n\n{FFFFFF}Deine IP:{1400FF}%s",GetName(playerid),GetIp(playerid));
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "GermanTrucking - Register",string,"reg","abbrechen");
return 1;
}
if(strlen(inputtext) < 6)
{
SendClientMessage(playerid, Rot, "Fehler: Du musst mindesten 6 zeichen verwenden.");
new string[600];
format(string, 600, "{FFFFFF}Willkommen auf GermanTrucking\n\nDu hast hier noch keinen Account.\n\nRegestriere dich bitte mit einem biligen Passwort ein.\n\n{00FF1E}Benutzername{FFFFFF}: {CDFF00}%s\n\n{FFFFFF}Deine IP:{1400FF}%s",GetName(playerid),GetIp(playerid));
ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "GermanTrucking - Register",string,"reg","abbrechen");
return 1;
}
Register(playerid, MD5_Hash(inputtext));
}
}//REgister stock
stock Register(playerid, key[])
{
format(spielerdatei, sizeof(spielerdatei), "/DB/SpielerAccounts/%s.ini",GetName(playerid));
dini_Create(spielerdatei);
dini_Set(spielerdatei,"Key",key);
SpawnPlayer(playerid);
SetPlayerPos(playerid, -78.3933, -1169.8947, 2.1360);
SetPlayerCameraPos(playerid, -81.3954,-1168.3391,2.2187);
SetPlayerCameraLookAt(playerid,-78.3933,-1169.8947,2.1360);
TogglePlayerControllable(playerid,0);
SkinAuswahl[playerid] = 1;
SendClientMessage(playerid, Weis, "Gebe nun [{00EBFF}Weiter] {FFFFFF} zum switchen und [{00EBFF}Fertig]{FFFFFF} ein um auszuwählen!");
return 1;
}Hier sieht man das eine Pos gesetzt wird und das SkinAuswahl[playerid] = 1; ist
public OnPlayerText(playerid, text[])
{
if(strcmp(text, "weiter", true) == 0 && SkinAuswahl[playerid] == 1)return switchSkin(playerid);
new string[128],name[24];
GetPlayerName(playerid, name, 24);
format(string, sizeof(name), "%s sagt: %s",name,text);
Say(playerid, 10.0, 0xFFFFFFFF, string);
return SetPVarInt(playerid, "Test", 1);
}So , hier sieht man, if(strcmp(text, "weiter", true) == 0 && SkinAuswahl[playerid] == 1)return switchSkin(playerid); // das soll wenn man weiter eingibt und SkinAuswahl[playerid] == 1; ist dann soll der stock swtchskin ausgeführt werden und kein anderer
So, nur das sollte dann passieren
Dann hab ich noch
return SetPVarInt(playerid, "Test", 1);
Das soll verhindern das der öff chat verwendet wird.
So nun wird der local chat und der öff chat verwendet.stock switchSkin(playerid)
{
switch(Skin[playerid])
{
case 0:
{
SetPlayerSkin(playerid, 1);
Skin[playerid] = 1;
}
case 1:
{
SetPlayerSkin(playerid, 2);
Skin[playerid] = 2;
}
case 2:
{
SetPlayerSkin(playerid, 3);
Skin[playerid] = 3;
}
case 3:
{
SetPlayerSkin(playerid, 4);
Skin[playerid] = 4;
}
case 4:
{
SetPlayerSkin(playerid, 5);
Skin[playerid] = 5;
}
case 5:
{
SetPlayerSkin(playerid, 6);
Skin[playerid] = 6;
}
case 6:
{
SetPlayerSkin(playerid, 7);
Skin[playerid] = 7;
}
case 7:
{
SetPlayerSkin(playerid, 8);
Skin[playerid] = 8;
}
}
return 1;
}Hier ist der stock switchskin
zudem kann er nicht gescheit ausgeführt werden da, öhm
Der local+ öff chat da stören, und zudem wird ja nicht mal der spieler auf die stelle gesetzt,
Also die 2 fehler sind,
1. Das der spieler nicht auf die pos gesetzt wird.
2. das wenn man weiter und in der sauswahl ist das er dann local#öff chat verwendet.Kann mir jemand helfen?
-
Was mich viel mehr verwirrt...du bekommst bei diesem Code...keine Errors?

Jup....
Ist kein Wunder
edit: es geht nun dank jeffry
-
dcmd_neon(playerid, params[])
{
new vehicleid = GetPlayerVehicleID(playerid);
new Option[30];
if(sscanf(params,"s",Option))return SendClientMessage(playerid,Rot,"Befehl: /neon [neonfarbe]") && SendClientMessage(playerid, Weis, "Optionen: Rot,Blau,Gelb,Weis,Pink,Gruen");
if(strcmp(Option, "Rot", true) == 0){ Neonlichter[vehicleid] = 1 && DestroyObject(rot1[vehicleid]) && DestroyObject(rot2[vehicleid]); }
if(strcmp(Option, "Blau", true) == 0){ Neonlichter[vehicleid] = 2 && DestroyObject(blau1[vehicleid]) && DestroyObject(blau2[vehicleid]); }
if(strcmp(Option, "Gelb", true) == 0){ Neonlichter[vehicleid] = 3 && DestroyObject(gelb1[vehicleid]) && DestroyObject(gelb2[vehicleid]); }
if(strcmp(Option, "Weis", true) == 0){ Neonlichter[vehicleid] = 4 && DestroyObject(weis1[vehicleid]) && DestroyObject(weis2[vehicleid]); }
if(strcmp(Option, "Pink", true) == 0){ Neonlichter[vehicleid] = 5 && DestroyObject(pinke1[vehicleid]) && DestroyObject(pinke2[vehicleid]); }
if(strcmp(Option, "Gruen", true) == 0){ Neonlichter[vehicleid] = 6 && DestroyObject(grun1[vehicleid]) && DestroyObject(grun2[vehicleid]); }
if(Neonlichter[vehicleid] > 0)
{
if(Neonlichter[vehicleid] == 1)
{
rot1[vehicleid] = CreateObject(18647,0,0,0,0,0,0);
rot2[vehicleid] = CreateObject(18647,0,0,0,0,0,0);
AttachObjectToVehicle(rot1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(rot2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 1;
}
if(Neonlichter[vehicleid] == 2)
{
blau1[vehicleid] = CreateObject(18648,0,0,0,0,0,0);
blau2[vehicleid] = CreateObject(18648,0,0,0,0,0,0);
AttachObjectToVehicle(blau1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(blau2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 2;
}
if(Neonlichter[vehicleid] == 3)
{
gelb1[vehicleid] = CreateObject(18650,0,0,0,0,0,0);
gelb2[vehicleid] = CreateObject(18650,0,0,0,0,0,0);
AttachObjectToVehicle(gelb1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(gelb2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 3;
}
if(Neonlichter[vehicleid] == 4)
{
weis1[vehicleid] = CreateObject(18652,0,0,0,0,0,0);
weis2[vehicleid] = CreateObject(18652,0,0,0,0,0,0);
AttachObjectToVehicle(weis1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(weis2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 4;
}
if(Neonlichter[vehicleid] == 5)
{
pinke1[vehicleid] = CreateObject(18651,0,0,0,0,0,0);
pinke2[vehicleid] = CreateObject(18651,0,0,0,0,0,0);
AttachObjectToVehicle(pinke1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(pinke2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 5;
}
if(Neonlichter[vehicleid] == 6)
{
grun1[vehicleid] = CreateObject(18649,0,0,0,0,0,0);
grun2[vehicleid] = CreateObject(18649,0,0,0,0,0,0);
AttachObjectToVehicle(grun1[vehicleid], vehicleid, -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
AttachObjectToVehicle(grun2[vehicleid], vehicleid, 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
Neonlichter[vehicleid] = 6;
}
}
return 1;
}Das ist mein1. NeonSystem
Seit dem ich es oben versucht habe zu verhindern das mehrene röhren auf 1x erstellt werden , wird überhaupt keine mehr erstellt. -
if(strcmp(Option, "Rot", true) == 0){ Neonlicher[vehicleid] = 1; }
Code
Alles anzeigenC:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(685) : warning 203: symbol is never used: "params" C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(685) : warning 203: symbol is never used: "playerid" C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(775) : error 017: undefined symbol "Neonlicher" C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(775) : warning 215: expression has no effect C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(775) : error 001: expected token: ";", but found "]" C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(775) : error 029: invalid expression, assumed zero C:\Users\SAMP\Desktop\germanpartyserver\gamemodes\party.pwn(775) : fatal error 107: too many error messages on one line Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 4 Errors.Wo liegt der Fehler
edit neonlichter falsch geschribenen
-
Ist dein MAX_PLAYERS noch auf 500? Wenn ja setz das auf 50 und kompiliere erneut. Dein Tachometer alleine überschreitet ja wie gesagt schon das Limit.
Ey jetzt gehts vielen dank

-
Gleiches Spiel wie vorhin. Was passiert bzw. was passiert nicht? Kannst du ein Bild machen wie es aussieht?
textdraw wird nicht angezeigt