Dini and Dudb don't work!
#1

Hello,
Yes, you're right, this is my second topic in ten minutes :P. This question is really important for my server. Before my computer crashed, i have hosted my server on that pc. Dini and dudb worked fine. Now i have another pc. The problem is that dini and dudb dont save the player's info. They can load it, buy don't save. My acc-system don't work now, so my server is pretty useless. None script that works with dini/dudb is working now. Who knows the solution for this? And yes, i have re-downloaded dini and dudb but the problem is stil there.
Reply
#2

Post your script.
Reply
#3

Quote:
Originally Posted by [HiC
TheKiller ]
Post your script.
Here you have my login script. Before I start scripting at my other pc, it was working fine, so i think this problem isn't cause by the FS but by Dini or Dudb
Some SendClientMessage functions are in Dutch, sorry about that!

Код:
#define COLOR_RED 0xFF0000AA
#define COLOR_YELLOW 0xFFFF00AA
#define COLOR_GREEN 0x00FF00AA

new logged[MAX_PLAYERS];
new adminlevel[MAX_PLAYERS];
new money[MAX_PLAYERS];
new playername[MAX_PLAYER_NAME];

main()
{
  print("===============================");
  print("AccountTutorial by Sandra18[NL]");
  print("===============================");
}

public OnGameModeInit()
{
  SetGameModeText("Tutorial Accounts by Sandra18[NL]");
  AddPlayerClass(93, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  return 1;
}


public OnPlayerRequestClass(playerid, classid)
{
  SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  SetPlayerCameraPos(playerid, 1968.3783, 1345.1572, 17.3746);
  SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  return 1;
}

public OnPlayerConnect(playerid)
{
  logged[playerid] = 0;
  return 1;
}

public OnPlayerSpawn(playerid)
{
  if(logged[playerid] == 0)
  {
    SendClientMessage(playerid, COLOR_RED, "Je bent nog niet ingelogd! Gebruik /login [wachtwoord]!");
  }
  return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
  new cmd[256],tmp[256], tmp2[256];
  new idx;
  new string[256];
  cmd = strtok(cmdtext, idx);
  GetPlayerName(playerid, playername, sizeof(playername));
  if(strcmp(cmd, "/register", true) == 0)
  {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
      SendClientMessage(playerid, COLOR_YELLOW, "USAGE: /register (password)");
    }
    else
    {
      if (!dini_Exists(udb_encode(playername)))
      {
        dini_Create(udb_encode(playername));
        dini_IntSet(udb_encode(playername), "password", udb_hash(tmp));
        dini_IntSet(udb_encode(playername), "adminlevel", 0);
        dini_IntSet(udb_encode(playername), "money", 0);
        format(string, sizeof(string), "Account %s aangemaakt! Je kunt nu inloggen met het wachtwoord: %s.", playername, tmp);
        SendClientMessage(playerid, COLOR_YELLOW, string);
      }
      else
      {
        format(string, sizeof(string), "%s already registered.", playername,tmp);
        SendClientMessage(playerid, COLOR_RED, string);
      }
    }
    return 1;
  }


  if(strcmp(cmd, "/login", true) == 0)
  {
    if(logged[playerid] == 1)
    {
      SendClientMessage(playerid, COLOR_RED, "Je bent al ingelogd");
      return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
      SendClientMessage(playerid, COLOR_YELLOW, "Gebruik: /login (wachtwoord)");
    }
    else
    {
      if (dini_Exists(udb_encode(playername)))
      {
        tmp2 = dini_Get(udb_encode(playername), "password");
        if (udb_hash(tmp) != strval(tmp2))
        {
          SendClientMessage(playerid, COLOR_RED, "Verkeerd wachtwoord!.");
        }
        else
        {
          logged[playerid] = 1;
          money[playerid] = dini_Int(udb_encode(playername), "money");
          adminlevel[playerid] = dini_Int(udb_encode(playername), "adminlevel");
          format(string, sizeof(string), "%s, je bent nu ingelogd. Je hebt adminlevel %d en je hebt %d dollar", playername, adminlevel[playerid], money[playerid]);
          SendClientMessage(playerid, COLOR_GREEN, string);
          GivePlayerMoney(playerid, money[playerid]);
          TogglePlayerControllable(playerid, 1);
        }
      }
      else
      {
        format(string, sizeof(string), "Het account %s, bestaat nog niet. Typ /register [wachtwoord] om een account te maken.", playername);
        SendClientMessage(playerid, COLOR_RED, string);
      }
    }
    return 1;
  }

  if(strcmp(cmd, "/maakmijadmin", true) == 0)
  {
    if(IsPlayerAdmin(playerid))
    {
      if(logged[playerid] == 1)
      {
        if(adminlevel[playerid] != 3)
        {
          adminlevel[playerid] = 3;
          SendClientMessage(playerid, COLOR_GREEN, "Je bent nu hoofdadmin! Gefeliciteerd!");
        }
        else
        {
          SendClientMessage(playerid, COLOR_RED, "Je bent al hoofdadmin!");
        }
      }
      else
      {
        SendClientMessage(playerid, COLOR_RED, "Je moet je eerst inloggen /login [wachtwoord]");
      }
    }
    else
    {
      SendClientMessage(playerid, COLOR_RED, "Je moet je eerst met rcon inloggen! (/rcon login [rcon-pass])");
    }
    return 1;
  }
  return 0;
}

public OnPlayerDisconnect(playerid, reason)
{
  money[playerid] = GetPlayerMoney(playerid);
  dini_IntSet(udb_encode(playername), "money", money[playerid]);
  dini_IntSet(udb_encode(playername), "adminlevel", adminlevel[playerid]);
  logged[playerid] = 0;
  return 1;
}
Reply
#4

Dutch: Kopieer het script opnieuw van sandra (GTA Forums)
English: Copy the script again from sandra (GTA Forums)
Reply
#5

Quote:
Originally Posted by Oxside
Dutch: Kopieer het script opnieuw van sandra (GTA Forums)
English: Copy the script again from sandra (GTA Forums)
Dutch: Ik heb dit gedaan, maar nog steeds geen verandering
English: I have done this, but nothing is changed.
Reply
#6

Zoek dan even naar Oxside in de zoek dinges moet je even kijken naar Simple Register system ofzo iets ooit een keer gemaakt. Op die van Sandra gebaseerd maar in het engels.
Die zou het moeten doen. Probeer anders de includes opnieuw te downloaden.
Reply
#7

Download DUDB opnieuw. (met dini)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)