How do i?
#1

How do i make weapons save in LuxAdmin?..

EDIT:The weapons save when player disconnects, and connects, but once someone type's /kill, all the weapons go away.

+Rep, if you can fix it for me.
Reply
#2

Anyone please? :/
Reply
#3

Copy the code from when the player connects to when they respawn after death I suppose.
Reply
#4

Heres all of OnPlayerConnect
Код:
public OnPlayerConnect(playerid)
{
    #if EnableCamHack == true
    KeyState[playerid] = 0;
    FollowOn[playerid] = 0;
    AccInfo[playerid][InCamMod] 	= 0;
    AccInfo[playerid][LockedCam] 	= 0;
    #endif
	AccInfo[playerid][Deaths] 		= 0;
	AccInfo[playerid][Kills] 		= 0;
	AccInfo[playerid][Jailed]		= 0;
	AccInfo[playerid][Frozen]		= 0;
	AccInfo[playerid][Level] 		= 0;
	AccInfo[playerid][pVip]         = 0;
	AccInfo[playerid][LoggedIn] 	= 0;
	AccInfo[playerid][Registered] 	= 0;
	AccInfo[playerid][God] 			= 0;
	AccInfo[playerid][GodCar]		= 0;
	AccInfo[playerid][TimesSpawned]	= 0;
	AccInfo[playerid][Muted] 		= 0;
	AccInfo[playerid][MuteWarnings]	= 0;
	AccInfo[playerid][Warnings] 	= 0;
	AccInfo[playerid][Caps]			= 0;
	AccInfo[playerid][DoorsLocked] 	= 0;
	AccInfo[playerid][pCar]			= -1;
	AccInfo[playerid][SpamCount] 	= 0;
	AccInfo[playerid][MaxAdv] 		= 0;
	AccInfo[playerid][SpamTime] 	= 0;
	AccInfo[playerid][PingCount] 	= 0;
	AccInfo[playerid][PingTime]		= 0;
	AccInfo[playerid][FailLogin] 	= 0;
	AccInfo[playerid][Hide] 		= 0;
	AccInfo[playerid][pInvis]   	= 0;
	AccInfo[playerid][OnDuty]   	= 0;
	AccInfo[playerid][pGps] 		= -1;
	
	#if EnableTwoRcon == true
	AccInfo[playerid][MaxRcon] = 0;
	#endif

	AccInfo[playerid][ConnectTime] = gettime();
    for(new i; i<PING_MAX_EXCEEDS; i++)
	AccInfo[playerid][pPing][i] = 0;
	//------------------------------------------------------
	new string[128];
    new str[128];
	new file[256];
	new PlayerName[MAX_PLAYER_NAME];
	GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
	new tmp3[50]; GetPlayerIp(playerid,tmp3,50);
	
	ResetForbiddenWeaponsForPlayer(playerid);
	TempBanCheck(playerid);
//==============================================================================
// Connect Messages
//==============================================================================
	if(ServerInfo[ConnectMessages] == 1)
	{
	    new pAKA[256];
		pAKA = dini_Get("LuxAdmin/Config/aka.txt",tmp3);
		if (strlen(pAKA) < 3)
		format(str,sizeof(str),"* Player %s (Id:%d) has joined the server", PlayerName,playerid);
		else if (!strcmp(pAKA,PlayerName,true))
		format(str,sizeof(str),"* Player %s (Id:%d) has joined the server", PlayerName,playerid);
		else format(str,sizeof(str),"Player %s (Id:%d) has joined the server (Aka: %s)",PlayerName,playerid,pAKA);

		for(new i = 0; i < MAX_PLAYERS; i++)
		if(IsPlayerConnected(i) && playerid != i)
		{
		if(AccInfo[i][Level] > 2)
		SendClientMessage(i,grey,str);
		else
		{
		format(string,sizeof(string),"* Player %s (Id:%d) has joined the server", PlayerName, playerid);
 	    SendClientMessage(i,grey,string);
		}
		}
	}
//==============================================================================
// If PlayerName is Banned
//==============================================================================
    if (dUserINT(PlayerName2(playerid)).("Banned") == 1)
    {
        SendClientMessage(playerid, red, "ATTENTION: This name is banned from this server!");
		format(string,sizeof(string),"Player %s (Id:%d) has been Automatically  Kicked.  Reason: Name Banned.",PlayerName,playerid);
		SendClientMessageToAll(COLOR_ADMIN, string);  print(string);
		SaveIn("KickLog",string);  Kick(playerid);
    }
//==============================================================================
// Kick Forbidden Name
//==============================================================================
	if(ServerInfo[NameKick] == 1)
	{
		for(new s = 0; s < BlockedNamesCount; s++)
		{
  			if(!strcmp(BlockedNames[s],PlayerName,true))
			{
			SendClientMessage(playerid,red, "ATTENTION: Your name is on our Black List, you have been Kicked.");
			format(string,sizeof(string),"Player %s (Id:%d) has been Automatically Kicked.  Reason: Forbidden Name.",PlayerName,playerid);
			SendClientMessageToAll(COLOR_ADMIN, string);
			print(string);
			SaveIn("KickLog",string);
			Kick(playerid);
			return 1;
			}
		}
	}
//==============================================================================
// Kick Forbidden Part of Name
//==============================================================================
	if(ServerInfo[PartNameKick] == 1)
	{
		for(new s = 0; s < BlockedPartNameCount; s++)
		{
			new pos;
			while((pos = strfind(PlayerName,BlockedPartName[s],true)) != -1)
			for(new i = pos, j = pos + strlen(BlockedPartName[s]); i < j; i++)
			{
			SendClientMessage(playerid,red, "ATTENTION: Your name is not Allowed on this server, Change it, you have been Kicked!.");
			format(string,sizeof(string),"Player %s (Id:%d) has been Automatically Kicked.  Reason: Forbidden Name.",PlayerName,playerid);
			SendClientMessageToAll(COLOR_ADMIN, string);  print(string);
			SaveIn("KickLog",string);  Kick(playerid);
			return 1;
			}
		}
	}
//==============================================================================
// Server Locked
//==============================================================================
	if(ServerInfo[Locked] == 1)
	{
		AccInfo[playerid][AllowedIn] = false;
		SendClientMessage(playerid,red,"|- Server is Locked! -|");
		SendClientMessage(playerid,red,"|- You have 40 seconds to enter the server Password! -|");
		LockKickTimer[playerid] = SetTimerEx("AutoKick", 40000, 0, "i", playerid);
	}
 	if (ServerInfo[Locked] == 1 && AccInfo[playerid][AllowedIn] == false)
    {
        ShowPlayerDialog(playerid, DIALOG_TYPE_SERVPASS, DIALOG_STYLE_INPUT,
		"Server Locked!.", "Enter the password to Access it:", "Access", "Exit");
	}
//==============================================================================
// Register & Login
//==============================================================================
	if(strlen(dini_Get("LuxAdmin/Config/aka.txt", tmp3)) == 0)
	dini_Set("LuxAdmin/Config/aka.txt", tmp3, PlayerName);
 	else
	{
	    if( strfind( dini_Get("LuxAdmin/Config/aka.txt", tmp3), PlayerName, true) == -1 )
		{
  		format(string,sizeof(string),"%s,%s", dini_Get("LuxAdmin/Config/aka.txt",tmp3), PlayerName);
	   	dini_Set("LuxAdmin/Config/aka.txt", tmp3, string);
		}
 	}
	if(!udb_Exists(PlayerName2(playerid)))
	SendClientMessage(playerid,grey, " Your account isn't registered. It is highly recommended you register, to save your stats. /register  (/"#RegisterCommand")");
	else
	{
 	AccInfo[playerid][Registered] = 1;
	format(file,sizeof(file),"/LuxAdmin/Accounts/%s.sav",udb_encode(PlayerName));
	new tmp2[256]; tmp2 = dini_Get(file,"Ip");

	if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1))
	{
		LoginPlayer(playerid);
		if(AccInfo[playerid][Level] > 0)
		{
			switch(AccInfo[playerid][Level])
			{
				case 1: AdmRank = "Level 1";
				case 2: AdmRank = "Level 2";
				case 3: AdmRank = "Level 3";
				case 4: AdmRank = "level 4";
				case 5: AdmRank = "Level 5";
			}
			if(AccInfo[playerid][Level] > 5)
			{
				AdmRank = "Level 5";
			}
			
//==============================================================================
// VIP System
//==============================================================================
			if(AccInfo[playerid][pVip] > 0)
			{
				switch(AccInfo[playerid][pVip])
				{
					case 1: AccType = "Silver";
					case 2: AccType = "Gold";
					case 3: AccType = "Premium";
				}
				format(string,sizeof(string),"|- You have been Automatically Logged in | Account: %s | Level %d - %s -|", AccType, AccInfo[playerid][Level],AdmRank);
				SendClientMessage(playerid,0x00C378AA,string);
			}
			else
			{
				format(string,sizeof(string),"|- You have been Automatically Logged in | Level %d - %s -|", AccInfo[playerid][Level],AdmRank);
				SendClientMessage(playerid,green,string);
			}
//==============================================================================
		}
		else
		{
			if(AccInfo[playerid][pVip] > 0)
			{
				switch(AccInfo[playerid][pVip])
				{
					case 1: AccType = "Silver";
					case 2: AccType = "Gold";
					case 3: AccType = "Premium";
				}
				format(string,sizeof(string),"|- You have been Automatically Logged in - Account Type: %s", AccType);
				SendClientMessage(playerid,0x00C896AA,string);
			}
			else
			{
				format(string,sizeof(string),"|- You have been Automatically Logged in");
				SendClientMessage(playerid,green,string);
			}
		}
  	}
 	else SendClientMessage(playerid, white, "That account is registered!") &&
	SendClientMessage(playerid,grey, "Please login to access your Account (/"#LoginCommand")");
	}
 	return 1;
}
Heres OnPlayerDeath
Код:
public OnPlayerDeath(playerid, killerid, reason)
{
	#if USE_STATS == true
    AccInfo[playerid][Deaths]++;
	#endif
    InDuel[playerid] = 0;
    
    if(AccInfo[playerid][pCaged] == 1)
    {
   	cage[playerid] 	= DestroyObject(cage[playerid]);
	cage2[playerid] = DestroyObject(cage2[playerid]);
	cage3[playerid] = DestroyObject(cage3[playerid]);
	cage4[playerid] = DestroyObject(cage4[playerid]);
	}
	
	if(IsPlayerConnected(killerid) && killerid != INVALID_PLAYER_ID)
	{
		#if USE_STATS == true
		AccInfo[killerid][Kills]++;
	    #endif
//==============================================================================
// In Duel
//==============================================================================
		if(InDuel[playerid] == 1 && InDuel[killerid] == 1)
		{
		GameTextForPlayer(playerid,"Loser!",3000,3);
		GameTextForPlayer(killerid,"Winner!",3000,3);
		InDuel[killerid] = 0;
		SetPlayerPos(killerid, 0.0, 0.0, 0.0);
		SpawnPlayer(killerid);
		}
		else if(InDuel[playerid] == 1 && InDuel[killerid] == 0)
		{
		GameTextForPlayer(playerid,"Loser !",3000,3);
		}
	}
//==============================================================================
// Spectate
//==============================================================================
	for(new x=0; x<MAX_PLAYERS; x++)
	    if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && AccInfo[x][SpecID] == playerid)
     	AdvanceSpectate(x);
	return 1;
}
Reply
#5

Can anyone please help me?
Reply
#6

how about scored?
Reply
#7

in the config ini file must be present:
SaveWeap=1
(scriptfiles/LuxAdmin/Config/Config.ini)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)