Probleme und fragen bei diesem Script
#1

Hallo zusammen!
Ich wolte fragen ob mir jemand helfen kann diesen Script zu verbessern?

Also Man kann sich einloggen und wirt dann aufgefordert sich zu registrieren oder falls man registriert ist soll man sich einloggen, Aber wennn man nicht /register macht kann man Trotzdem spielen und sowas wie einen Acc ist auch nirgend zu finden wo man Admin rechte oder Gm Rechte einstellen kann!
Und sowas wie ein Lvl System ist da auch nicht integriert!

Kann mir dabei helfen?

Code:
//                            Login\Register System
//                                 by
//                               gtaturke54
#include <a_samp>
#include <dudb>
#include <dutils>
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

//Farben//
#define COLOR_SYSTEM 0xEFEFF7AA
#define green 0x33FF33AA
#define blue 0x00FFFFAA

new PLAYERLIST_authed[MAX_PLAYERS];

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print("Register / Login System");
	print("--------------------------------------\n");
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}

#else

main()
{
	print("\n----------------------------------");
	print("Register / Login System");
	print("----------------------------------\n");
}

#endif

public OnPlayerRequestSpawn(playerid)
{
if (udb_Exists(PlayerName(playerid))){
if (!PLAYERLIST_authed[playerid]){
SendClientMessage(playerid,green,"Du hast dich Registriert. Benutze jetzt /login um dich einzuloggen.");
return 0;
}
}
return 1;
}

public OnPlayerDisconnect(playerid) {
 if (PLAYERLIST_authed[playerid]) {
   // Wenn du dich eingeloggt hast, wird dein Geld und deine Punkte gespeichert.
  dUserSetINT(PlayerName(playerid)).("money",GetPlayerMoney(playerid));
  dUserSetINT(PlayerName(playerid)).("score",GetPlayerScore(playerid));
 }
 PLAYERLIST_authed[playerid]=false;
 return 1;
}

public OnPlayerConnect(playerid)
{

 	if (PLAYERLIST_authed[playerid]==0){
if (udb_Exists(PlayerName(playerid))){
SystemMsg(playerid,"Du hast dich registriert, bitte benutze /login [password] um dich einzuloggen.");
}
else{ SystemMsg(playerid,"Du hast keinen Account, benutze /register [password] zum registrieren, anschlieЯend benutze /login [password] um dich einzuloggen.");
}

return 0;
}
	return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
 dcmd(login,5,cmdtext);
 dcmd(register,8,cmdtext);
 return 0;
}

stock SystemMsg(playerid,msg[]) {
  if ((IsPlayerConnected(playerid))&&(strlen(msg)>0)) {
    SendClientMessage(playerid,COLOR_SYSTEM,msg);
  }
  return 1;
}

stock PlayerName(playerid) {
 new name[255];
 GetPlayerName(playerid, name, 255);
 return name;
}

 dcmd_register(playerid,params[]) {

  if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du hast schon einen Account.");
  if (udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Du hast schon einen Account erstellt, benutze /login [password] um dich einzuloggen.");
  if (strlen(params)==0) return SystemMsg(playerid,"USAGE: /register [password]");
  if (udb_Create(PlayerName(playerid),params)) return SystemMsg(playerid,"Du hast erfolgreich deinen Account erstellt, jetzt benutze /login [password] um dich einzuloggen.");
  return true;

 }

 dcmd_login(playerid,params[]) {

  if (PLAYERLIST_authed[playerid]) return SystemMsg(playerid,"Du bist schon registriert.");
  if (!udb_Exists(PlayerName(playerid))) return SystemMsg(playerid,"Du hast keinen Account, benutze /register [password]");
  if (strlen(params)==0) return SystemMsg(playerid,"USAGE: /login [password]");
  if (udb_CheckLogin(PlayerName(playerid),params)) {
    SetPlayerScore(playerid,dUserINT(PlayerName(playerid)).("score"));
 	  SetPlayerMoney(playerid,dUserINT(PlayerName(playerid)).("money"));
    PLAYERLIST_authed[playerid]=true;
    return SystemMsg(playerid,"Du hast dich erfolgreich eingeloggt.");
  }
  return SystemMsg(playerid,"Passwort oder Nickname ungьltig!");
}
// Register\Login [FS] created by gtaturke54 © Copyright
Mit freundlichen GrьЯen
Reply
#2

Wenn ich dir einen tip geben darf, schaue dir einige fertige Scripts an und versuche daraus zu lernen, da du gerade anfдngst zu Scripten!

Zu deinem Filter Script, versuche nicht aklt zu viele Filterscripts zu verwenden und soviel wie mцglich ins Gamemode einzubauen.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)