SA-MP Forums

Go Back   SA-MP Forums > SA-MP Scripting and Plugins > Scripting Help

Reply
 
Thread Tools Display Modes
Old 17/01/2014, 07:21 PM   #1
Trent2
Little Clucker
 
Join Date: Dec 2013
Posts: 1
Reputation: 0
Flowers Loading a value from an .ini file [Help needed]

Hello, I'm having an issue with loading a saved player skin. Whenever a player chooses or buys a skin it will be saved.
if they respawn it will be loaded but if they logout and then log in again they will get the defaut skin, which in my case is skin id 3. If they then proceed onto dying and then respawning after logging out then in again they will still have skin id 3. However, here is the super hilarious part which kinda shocked me abit. If they player types the wrong password one or more times in the login dialog the skin will load and everything is normal, if they then die they will spawn with their either selected or bought skin! Strange? haha.

Here is the main login AND register code:

Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if (dialogid == REGISTER)
	{
		new name[MAX_PLAYER_NAME], string[128], str[128], str1[128];
  		GetPlayerName(playerid, name, sizeof(name));
		if(!response) return Kick(playerid);
		format(str1, 128, "{FFFFFF}Welcome to my server\n\n{DDCA22}Account:{FFFFFF} %s\n\nPlease Enter Your Password Below", name);if(!strlen(inputtext)) return
        ShowPlayerDialog(playerid, REGISTER, DIALOG_STYLE_INPUT, "Registration", str1, "Register", "");
		dini_Create(Pos(playerid));
        IsLogged[playerid] = 1;
        registered[playerid] = 1;
        PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
		dini_IntSet(Pos(playerid), "Password", udb_hash(inputtext));
		dini_IntSet(Pos(playerid), "Banned", 0);
		dini_IntSet(Pos(playerid), "AdminLevel",PlayerInfo[playerid][AdminLevel] = 0);
		format(string, 128, "You Have Succesfully Registered The Account {0DF2F2}'%s' {FFFF00}With The Password {0DF2F2}'%s'", name, inputtext);
        format(str, 128, "You Have Been Automatically Logged In, Play Fairly Following The Rules");
		SendClientMessage(playerid, COLOR_YELLOW, string);
		SendClientMessage(playerid,COLOR_YELLOW, str);
		ShowPlayerDialog(playerid, SKIN, DIALOG_STYLE_MSGBOX, "Skin Selection", "{FFFFFF}As This Is The First Time You Have Connected To The Server,\nWe Want You To Select Your Skin On Your Own\nChoice Suiting Your Character", "Alright","");
		return 1;
	}

	if (dialogid == LOGIN)
	{
      new name[MAX_PLAYER_NAME], str1[128], tmp=dini_Int(Pos(playerid), "Password");
      if(!response) return Kick(playerid);
      GetPlayerName(playerid, name, sizeof(name));
      format(str1, 128, "{FFFFFF}Welcome to Freedom Roleplays Clan\n\n{DDCA22}Account:{FFFFFF} %s\n\nPlease Enter Your Password Below", name);
	  if (!strlen(inputtext)) return ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login Account",str1, "Login", "");
      if(udb_hash(inputtext) == tmp)
	  {
	    LoadStats(playerid);
		IsLogged[playerid] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
		SendClientMessage(playerid,0x00FFFF00, "You've successfully logged in!");
		SetSpawnInfo(playerid,0,dini_Int(Pos(playerid),"Skin"),dini_Int(Pos(playerid), "X1"),dini_Int(Pos(playerid), "Y1"), dini_Int(Pos(playerid), "Z1"),0, 0, 0, 0, 0, 0, 0 );
		SpawnPlayer(playerid);
		PlayerConnect(playerid);
		format(str1, 128,"Experience: {FFFFFF}Level %d",GetPlayerScore(playerid));
		SendClientMessage(playerid,0x10F441AA,str1);
		if(GetPlayerBusinessID(playerid) != -1)
		{
			format(File,sizeof(File),"Business/%i.ini",GetPlayerBusinessID(playerid));
			format(str1,sizeof(str1),"Business Name: {FFFFFF}'%s'",dini_Get(File, "Name"));
			SendClientMessage(playerid,COLOR_YELLOW, str1);
		}
		if(PlayerInfo[playerid][VIP]>= 1)
		{
			new mode[128],str[256];
      		if(PlayerInfo[playerid][VIP]==1)
			{mode = "{FFFF00}Silver Premium Account";}
			if(PlayerInfo[playerid][VIP]==2)
			{mode = "{0000BB}Golden Premium Account";}
			if(PlayerInfo[playerid][VIP]==3)
			{mode = "{ADFF2F}Luxury Premium Account";}
			format(str,sizeof(str),"Account Status : %s",mode);
			SendClientMessage(playerid,-1,str);
		}
	  }
      else
      {
     		SendClientMessage(playerid,-1, "Access Denied.");
      		ShowPlayerDialog(playerid, LOGIN, DIALOG_STYLE_PASSWORD, "Login Account", "{FFFFFF}The Password That You Entered Was Invalid\n\nPlease Enter The Password Again.", "Login", "");
	  }
	  return 1;
	}

Here is the onplayerspawn code:
Code:
public OnPlayerSpawn(playerid)
{
	if(registered[playerid] == 1)
	{
	    SetupPlayerForClassSelection(playerid);
	    registered[playerid]=0;
		ResetPlayerWeapons(playerid);
	    SetPlayerInterior(playerid,0);
		GivePlayerMoney(playerid, 25000);
	    SetPlayerVirtualWorld(playerid,0);
	}
	PlayerData[playerid][CP] = -1;
	PlayerData[playerid][Step] = 0;
	PlayerData[playerid][InPickUp] = 0;
    SetPlayerVirtualWorld(playerid, 0);
    return 1;
}
Any help is highly appriciated! So pre-thanks My first post here so please correct me if I made a mistake.
Trent2 is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Loading the next file. milanosie Scripting Help 3 27/01/2012 05:23 PM
Loading Something From A File Tommy_Mandaz Help Archive 10 30/06/2011 04:07 PM
Loading File Andrejs Help Archive 3 05/09/2010 08:26 PM
File Loading (Jeff) Help Archive 1 21/10/2009 01:58 PM


All times are GMT. The time now is 09:09 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.