Jump to content

pomoc level System


_viTo_

Recommended Posts

#include <a_samp>

new Text:Textdraw1;
new Text:Textdraw2;

public OnFilterScriptInit()
{
	Textdraw1 = TextDrawCreate(44.000000, 316.000000, "Level: 999");
	TextDrawBackgroundColor(Textdraw1, 255);
	TextDrawFont(Textdraw1, 2);
	TextDrawLetterSize(Textdraw1, 0.400000, 1.400000);
	TextDrawColor(Textdraw1, -7667457);
	TextDrawSetOutline(Textdraw1, 1);
	TextDrawSetProportional(Textdraw1, 1);
	TextDrawSetSelectable(Textdraw1, 0);

	Textdraw2 = TextDrawCreate(43.000000, 329.000000, "EXP: 9999999999 / 9999999999");
	TextDrawBackgroundColor(Textdraw2, 255);
	TextDrawFont(Textdraw2, 2);
	TextDrawLetterSize(Textdraw2, 0.140000, 0.899999);
	TextDrawColor(Textdraw2, -1);
	TextDrawSetOutline(Textdraw2, 0);
	TextDrawSetProportional(Textdraw2, 1);
	TextDrawSetShadow(Textdraw2, 0);
	TextDrawSetSelectable(Textdraw2, 0);

	for(new i; i < MAX_PLAYERS; i ++)
	{
		if(IsPlayerConnected(i))
		{
			TextDrawShowForPlayer(i, Textdraw1);
			TextDrawShowForPlayer(i, Textdraw2);
		}
	}
	return 1;
}

public OnFilterScriptExit()
{
	TextDrawHideForAll(Textdraw1);
	TextDrawDestroy(Textdraw1);
	TextDrawHideForAll(Textdraw2);
	TextDrawDestroy(Textdraw2);
	return 1;
}

public OnPlayerConnect(playerid)
{
	TextDrawShowForPlayer(playerid, Textdraw1);
	TextDrawShowForPlayer(playerid, Textdraw2);
	return 1;
}

Zdravím, Zde mám kod k Level Systemu.
Hodinu koumám, jak to zprovoznit aby to fungovalo.
Systém funguje na bázi že nový hráč začíná od levelu 1 následuje level 2 
XP se při každém levelu zvýší o 500 to znamená

 Level 1 = 0/500 - 500/500
Level 2 = 0/1000 - 1000/1000
Až do levelu 999 kdy je vlastně hranice levelu.

Potřebuju udělat podmínku, kterou mohu vložit kamkoliv kde pouze pozměním číslo EXP 
Napadlo mě toto : if(playerid,EXPpridat"500"); // Nevím zda tato podmínka je správná. Samozřejmě chci udělat podmínku na odebrání XP

 

Link to comment
Share on other sites

na všech místech kde přidáváš xp tak to budeš posílat do vytzvořerné funkce ať se neopakuje se stejným výrazem furt dokola.

Už si nepamatuju pawn syntax, ale náčrt cca

new potreba_xp = {500,1000,1299}; // záleží jestli každej level vyžaduje 500 nebo se to pak požadavek zvyšuje

function PripocitejXp(playerid, pocet_xp)
{
	xp[playeriĐ] += pocet_xp
	
	if (xp[playerid] >= potreba_xp[index nebo jeho level +- 1])
		level up

	save
	update textdraw
}

OnPlayerUdelatPrd()
{
	PripocitejXp(playerid, 69);
}

 

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...