skin please help
#1

hey guys. I was trying to make a skin save. It works but when you die you see yourself as CJ.
Other people do see you as the skin that you save with.

This is the script
Код:
dcmd_login(playerid,params[])
{
  if (PlayerInfo[playerid][LoggedIn] == 1) return SendClientMessage(playerid,red,"ACCOUNT: You are already logged in.");
  if (!udb_Exists(PlayerName2(playerid))) return SendClientMessage(playerid,red,"ACCOUNT: Account doesn't exist, please use '/register [password]'.");
  if (strlen(params)==0) return SendClientMessage(playerid,red,"ACCOUNT: Correct usage: '/login [password]'");
  if (udb_CheckLogin(PlayerName2(playerid),params))
	{
		new file[256], tmp3[100], string[128];
	  	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
  		GetPlayerIp(playerid,tmp3,100);
	  	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
	
		SetPlayerSkin(playerid, dUserINT(PlayerName2(playerid)).("skin"));
		SpawnPlayer(playerid);

		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
		if(PlayerInfo[playerid][Level] > 0) {
			format(string,sizeof(string),"ACCOUNT: Successfully Logged In. (Level %d)", PlayerInfo[playerid][Level] );
			SetPlayerSkin(playerid, dUserINT(PlayerName2(playerid)).("skin"));
			return SendClientMessage(playerid,green,string);
    	} else return SendClientMessage(playerid,green,"ACCOUNT: Successfully Logged In");
	}
	else {
	  ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Login","Enter your password below:","Login","Cancel");
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), params, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			SendClientMessageToAll(grey, string);
			print(string);
			Kick(playerid);
		}
		return SendClientMessage(playerid,red,"ACCOUNT: Login failed! Incorrect Password");
	}
}
Please help
Reply
#2

EDIT: NVM
Reply
#3

gosh..

lol . .

YOu understand what you did? D:

YOu created player with that skin. .

at the top
Код:
new IsLogged[MAX_PLAYERS];
OnlayerSpawn
Код:
	if(dini_Int(file, "SkinSaver") == 1)  {
  SetPlayerSkin(playerid, dini_Int(file, "Skin"));
  }
when creating file ! - order is yours !
Код:
dini_IntSet(file, "SkinSaver", 0);
dini_IntSet(file, "Skin", 0);
And this
when you want to save skin - by the cmd or smth..
Like: admin changes player skin it saves ..
Код:
	dini_IntSet(file, "Skin", GetPlayerSkin(player));
	dini_IntSet(file, "SkinSaver", 1);
Ofcourse at every place put PlayerFile..

Код:
	new pName[24], file[128];
	GetPlayerName(playerid, pName, sizeof(pName));
	format(file, sizeof(file),"LOCATION/%s.ini ",pName);
Reply
#4

Mkay. I need some help over here, First of all. Thanks for helping. But now this
This is how my onplayerspawn looks like now

Код:
public OnPlayerSpawn(playerid)
{
  new pName[24], file[128];
	GetPlayerName(playerid, pName, sizeof(pName));
	format(file, sizeof(file),"LOCATION/%s.ini ",pName);
	
  if(dini_Int(file, "SkinSaver") == 1)  {
  SetPlayerSkin(playerid, dini_Int(file, "Skin"));
  dini_IntSet(file, "SkinSaver", 0);
	dini_IntSet(file, "Skin", 0);
	dini_IntSet(file, "Skin", GetPlayerSkin(player));
	dini_IntSet(file, "SkinSaver", 1);
  }

  S_OnPlayerSpawn(playerid);
	if(ServerInfo[Locked] == 1 && PlayerInfo[playerid][AllowedIn] == false)
	{
		GameTextForPlayer(playerid,"~r~Server Locked~n~You must enter password before spawning~n~/password <password>",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustLogin] == 1 && PlayerInfo[playerid][Registered] == 1 && PlayerInfo[playerid][LoggedIn] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must login before playing!",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustRegister] == 1 && PlayerInfo[playerid][Registered] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must be logged in",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	PlayerInfo[playerid][Spawned] = 1;

	if(PlayerInfo[playerid][Frozen] == 1) {
		TogglePlayerControllable(playerid,false); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still Frozen");
	}

	if(PlayerInfo[playerid][Jailed] == 1) {
	  SetTimerEx("JailPlayer",3000,0,"d",playerid); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still In Jail");
	}

	if(ServerInfo[AdminOnlySkins] == 1) {
		if( (GetPlayerSkin(playerid) == ServerInfo[AdminSkin]) || (GetPlayerSkin(playerid) == ServerInfo[AdminSkin2]) ) {
			if(PlayerInfo[playerid][Level] >= 1)
				GameTextForPlayer(playerid,"~b~Welcome~n~~w~Admin",3000,1);
			else {
				GameTextForPlayer(playerid,"~r~This Skin Is For~n~Administrators~n~Only",4000,1);
				SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
				return 1;
			}
		}
	}

	if((dUserINT(PlayerName2(playerid)).("UseSkin")) == 1)
		if((PlayerInfo[playerid][Level] >= 1) && (PlayerInfo[playerid][LoggedIn] == 1))
  		SetPlayerSkin(playerid,(dUserINT(PlayerName2(playerid)).("FavSkin")) );

	if(ServerInfo[GiveWeap] == 1) {
		if(PlayerInfo[playerid][LoggedIn] == 1) {
			PlayerInfo[playerid][TimesSpawned]++;
			if(PlayerInfo[playerid][TimesSpawned] == 1)
			{
 				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap1"), dUserINT(PlayerName2(playerid)).("weap1ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap2"), dUserINT(PlayerName2(playerid)).("weap2ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap3"), dUserINT(PlayerName2(playerid)).("weap3ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap4"), dUserINT(PlayerName2(playerid)).("weap4ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap5"), dUserINT(PlayerName2(playerid)).("weap5ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap6"), dUserINT(PlayerName2(playerid)).("weap6ammo")	);
			}
		}
	}
	return 1;
}
But with errors
Код:
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(892) : warning 219: local variable "pName" shadows a variable at a preceding level
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(900) : error 017: undefined symbol "player"
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(7479) : warning 203: symbol is never used: "IsLogged"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Error.
Reply
#5

dini_IntSet(file, "Skin", GetPlayerSkin(player)); to dini_IntSet(file, "Skin", GetPlayerSkin(playerid));
________
FIX PS3
Reply
#6

Now this
Код:
public OnPlayerSpawn(playerid)
{

  new pName[24], file[128];
	GetPlayerName(playerid, pName, sizeof(pName));
	format(file, sizeof(file),"LOCATION/%s.ini ",pName);

  if(dini_Int(file, "SkinSaver") == 1)  {
  SetPlayerSkin(playerid, dini_Int(file, "Skin"));
  dini_IntSet(file, "SkinSaver", 0);
	dini_IntSet(file, "Skin", 0);
	dini_IntSet(file, "Skin", GetPlayerSkin(player)); to dini_IntSet(file, "Skin", GetPlayerSkin(playerid));
	dini_IntSet(file, "SkinSaver", 1);
  }

  S_OnPlayerSpawn(playerid);
	if(ServerInfo[Locked] == 1 && PlayerInfo[playerid][AllowedIn] == false)
	{
		GameTextForPlayer(playerid,"~r~Server Locked~n~You must enter password before spawning~n~/password <password>",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustLogin] == 1 && PlayerInfo[playerid][Registered] == 1 && PlayerInfo[playerid][LoggedIn] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must login before playing!",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustRegister] == 1 && PlayerInfo[playerid][Registered] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must be logged in",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	PlayerInfo[playerid][Spawned] = 1;

	if(PlayerInfo[playerid][Frozen] == 1) {
		TogglePlayerControllable(playerid,false); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still Frozen");
	}

	if(PlayerInfo[playerid][Jailed] == 1) {
	  SetTimerEx("JailPlayer",3000,0,"d",playerid); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still In Jail");
	}

	if(ServerInfo[AdminOnlySkins] == 1) {
		if( (GetPlayerSkin(playerid) == ServerInfo[AdminSkin]) || (GetPlayerSkin(playerid) == ServerInfo[AdminSkin2]) ) {
			if(PlayerInfo[playerid][Level] >= 1)
				GameTextForPlayer(playerid,"~b~Welcome~n~~w~Admin",3000,1);
			else {
				GameTextForPlayer(playerid,"~r~This Skin Is For~n~Administrators~n~Only",4000,1);
				SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
				return 1;
			}
		}
	}

	if((dUserINT(PlayerName2(playerid)).("UseSkin")) == 1)
		if((PlayerInfo[playerid][Level] >= 1) && (PlayerInfo[playerid][LoggedIn] == 1))
  		SetPlayerSkin(playerid,(dUserINT(PlayerName2(playerid)).("FavSkin")) );

	if(ServerInfo[GiveWeap] == 1) {
		if(PlayerInfo[playerid][LoggedIn] == 1) {
			PlayerInfo[playerid][TimesSpawned]++;
			if(PlayerInfo[playerid][TimesSpawned] == 1)
			{
 				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap1"), dUserINT(PlayerName2(playerid)).("weap1ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap2"), dUserINT(PlayerName2(playerid)).("weap2ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap3"), dUserINT(PlayerName2(playerid)).("weap3ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap4"), dUserINT(PlayerName2(playerid)).("weap4ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap5"), dUserINT(PlayerName2(playerid)).("weap5ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap6"), dUserINT(PlayerName2(playerid)).("weap6ammo")	);
			}
		}
	}
	return 1;
}
Код:
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(893) : warning 219: local variable "pName" shadows a variable at a preceding level
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(901) : error 017: undefined symbol "player"
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(901) : error 017: undefined symbol "to"
C:\Users\Bart\Desktop\samp server\filterscripts\ladmin4v2.pwn(7480) : warning 203: symbol is never used: "IsLogged"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


2 Errors.
Reply
#7

i didnt mean u to type this "dini_IntSet(file, "Skin", GetPlayerSkin(player)); to dini_IntSet(file, "Skin", GetPlayerSkin(playerid));" i mean to replace dini_IntSet(file, "Skin", GetPlayerSkin(player)); with :::: dini_IntSet(file, "Skin", GetPlayerSkin(playerid));
________
Free best buy gift cards
Reply
#8

can someone send me the whole good onplayerspawn now> Can't come out m yself. Really xD
Reply
#9

Код:
public OnPlayerSpawn(playerid)
{
  new pName[24], file[128];
	GetPlayerName(playerid, pName, sizeof(pName));
	format(file, sizeof(file),"LOCATION/%s.ini ",pName);
	
  if(dini_Int(file, "SkinSaver") == 1)  {
  SetPlayerSkin(playerid, dini_Int(file, "Skin"));
  dini_IntSet(file, "SkinSaver", 0);
	dini_IntSet(file, "Skin", 0);
	dini_IntSet(file, "Skin", GetPlayerSkin(playerid));
	dini_IntSet(file, "SkinSaver", 1);
  }

  S_OnPlayerSpawn(playerid);
	if(ServerInfo[Locked] == 1 && PlayerInfo[playerid][AllowedIn] == false)
	{
		GameTextForPlayer(playerid,"~r~Server Locked~n~You must enter password before spawning~n~/password <password>",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustLogin] == 1 && PlayerInfo[playerid][Registered] == 1 && PlayerInfo[playerid][LoggedIn] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must login before playing!",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	if(ServerInfo[MustRegister] == 1 && PlayerInfo[playerid][Registered] == 0)
	{
		GameTextForPlayer(playerid,"~r~You must be logged in",4000,3);
		SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
		return 1;
	}

	PlayerInfo[playerid][Spawned] = 1;

	if(PlayerInfo[playerid][Frozen] == 1) {
		TogglePlayerControllable(playerid,false); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still Frozen");
	}

	if(PlayerInfo[playerid][Jailed] == 1) {
	  SetTimerEx("JailPlayer",3000,0,"d",playerid); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still In Jail");
	}

	if(ServerInfo[AdminOnlySkins] == 1) {
		if( (GetPlayerSkin(playerid) == ServerInfo[AdminSkin]) || (GetPlayerSkin(playerid) == ServerInfo[AdminSkin2]) ) {
			if(PlayerInfo[playerid][Level] >= 1)
				GameTextForPlayer(playerid,"~b~Welcome~n~~w~Admin",3000,1);
			else {
				GameTextForPlayer(playerid,"~r~This Skin Is For~n~Administrators~n~Only",4000,1);
				SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
				return 1;
			}
		}
	}

	if((dUserINT(PlayerName2(playerid)).("UseSkin")) == 1)
		if((PlayerInfo[playerid][Level] >= 1) && (PlayerInfo[playerid][LoggedIn] == 1))
  		SetPlayerSkin(playerid,(dUserINT(PlayerName2(playerid)).("FavSkin")) );

	if(ServerInfo[GiveWeap] == 1) {
		if(PlayerInfo[playerid][LoggedIn] == 1) {
			PlayerInfo[playerid][TimesSpawned]++;
			if(PlayerInfo[playerid][TimesSpawned] == 1)
			{
 				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap1"), dUserINT(PlayerName2(playerid)).("weap1ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap2"), dUserINT(PlayerName2(playerid)).("weap2ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap3"), dUserINT(PlayerName2(playerid)).("weap3ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap4"), dUserINT(PlayerName2(playerid)).("weap4ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap5"), dUserINT(PlayerName2(playerid)).("weap5ammo")	);
				GivePlayerWeapon(playerid, dUserINT(PlayerName2(playerid)).("weap6"), dUserINT(PlayerName2(playerid)).("weap6ammo")	);
			}
		}
	}
	return 1;
}
________
Kitchen Measures
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)