Resource:Exp system: Difference between revisions
No edit summary |
(Double 'with') |
||
(6 intermediate revisions by one other user not shown) | |||
Line 17: | Line 17: | ||
==Returns== | ==Returns== | ||
Returns a number | Returns a number with the level of the player. | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
addCommandHandler ( "mylevel", | addCommandHandler ( "mylevel", | ||
function ( thePlayer ) | function ( thePlayer ) | ||
local | local myLevel = exports.exp_system:getPlayerLevel ( thePlayer ) | ||
outputChatBox ( "Your level is: ".. myLevel, thePlayer ) | outputChatBox ( "Your level is: ".. myLevel, thePlayer ) | ||
end | end | ||
Line 46: | Line 46: | ||
function ( thePlayer, commandName, theLevel ) | function ( thePlayer, commandName, theLevel ) | ||
local theLevel = tonumber ( theLevel ) or 1 | local theLevel = tonumber ( theLevel ) or 1 | ||
exports.exp_system:setPlayerLevel ( thePlayer, | exports.exp_system:setPlayerLevel ( thePlayer, theLevel ) | ||
end | end | ||
) | ) | ||
Line 120: | Line 120: | ||
</section> | </section> | ||
<section name="Server" class="server" show="true"> | <section name="Server" class="server" show="true"> | ||
This function is used to get | This function is used to get an account level. | ||
==Syntax== | ==Syntax== | ||
Line 131: | Line 131: | ||
==Returns== | ==Returns== | ||
Returns a number with with the level of the | Returns a number with with the level of the account. | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
addCommandHandler ( "mylevel", | addCommandHandler ( "mylevel", | ||
Line 144: | Line 144: | ||
<section name="Server" class="server" show="true"> | <section name="Server" class="server" show="true"> | ||
This function is used to set | This function is used to set an account level. | ||
==Syntax== | ==Syntax== | ||
Line 162: | Line 162: | ||
local account = getPlayerAccount ( thePlayer ) | local account = getPlayerAccount ( thePlayer ) | ||
local theLevel = tonumber ( theLevel ) or 1 | local theLevel = tonumber ( theLevel ) or 1 | ||
exports.exp_system:setAccountLevel ( account, | exports.exp_system:setAccountLevel ( account, theLevel ) | ||
end | end | ||
) | ) | ||
Line 168: | Line 168: | ||
<section name="Server" class="server" show="true"> | <section name="Server" class="server" show="true"> | ||
This function is used to get | This function is used to get an account experience. | ||
==Syntax== | ==Syntax== | ||
Line 191: | Line 191: | ||
</section> | </section> | ||
<section name="Server" class="server" show="true"> | <section name="Server" class="server" show="true"> | ||
This function is used to set | This function is used to set an account experience. | ||
==Syntax== | ==Syntax== | ||
Line 211: | Line 211: | ||
local theExp = tonumber ( theExp ) or 0 | local theExp = tonumber ( theExp ) or 0 | ||
exports.exp_system:setAccountEXP ( account, theExp ) | exports.exp_system:setAccountEXP ( account, theExp ) | ||
end | |||
) | |||
</section> | |||
<section name="Server" class="server" show="true"> | |||
This function is used to refresh the levels. | |||
==Syntax== | |||
<syntaxhighlight lang="lua"> | |||
bool loadLevelsFromXML( ) | |||
</syntaxhighlight> | |||
==Required Arguments== | |||
*'''None''' | |||
==Example== | |||
<syntaxhighlight lang="lua"> | |||
addCommandHandler ( "refreshlevels", | |||
function ( ) | |||
exports.exp_system:loadLevelsFromXML ( ) | |||
end | |||
) | |||
</section> | |||
<section name="Server" class="server" show="true"> | |||
This function is used to obtain the name and experience required of a level. | |||
==Syntax== | |||
<syntaxhighlight lang="lua"> | |||
getLevelData ( int theLevel ) | |||
</syntaxhighlight> | |||
==Required Arguments== | |||
*'''theLevel''' | |||
==Returns== | |||
Returns the name of the level and the experience required. | |||
==Example== | |||
<syntaxhighlight lang="lua"> | |||
addCommandHandler ( "getleveldata", | |||
function ( thePlayer ) | |||
local level = exports.exp_system:getPlayerLevel ( thePlayer ) | |||
local name, expreq = exports.exp_system:getLevelData ( level ) | |||
outputChatBox ( name ..": ".. expreq, thePlayer ) | |||
end | end | ||
) | ) | ||
Line 250: | Line 294: | ||
The [[event system#Event source|source]] of this event is the [[player]] who leveled UP. | The [[event system#Event source|source]] of this event is the [[player]] who leveled UP. | ||
</section> | </section> | ||
=See also= | |||
[http://community.mtasa.com/index.php?p=resources&s=details&id=1253 Download page]<br> | |||
[[Category:Resource]] |
Latest revision as of 21:05, 16 October 2013
A level/experience system made from scratch by Castillo.
It uses SQLite to save level and experience.
Exported Functions
This function is used to get a player level.
Syntax
bool getPlayerLevel ( player thePlayer )
Required Arguments
- thePlayer: The player element you wish you get the level.
Returns
Returns a number with the level of the player. <syntaxhighlight lang="lua"> addCommandHandler ( "mylevel", function ( thePlayer )
local myLevel = exports.exp_system:getPlayerLevel ( thePlayer )
outputChatBox ( "Your level is: ".. myLevel, thePlayer ) end )
This function is used to set a player level.
Syntax
bool setPlayerLevel ( player thePlayer, int theLevel )
Required Arguments
- thePlayer: The player element you wish you set the level.
- theLevel: The level you want to set.
Returns
Returns a bool, whether the level was set successfully or not. <syntaxhighlight lang="lua"> addCommandHandler ( "setmylevel", function ( thePlayer, commandName, theLevel )
local theLevel = tonumber ( theLevel ) or 1
exports.exp_system:setPlayerLevel ( thePlayer, theLevel ) end )
This function is used to get a player experience.
Syntax
bool getPlayerEXP ( player thePlayer )
Required Arguments
- thePlayer: The player element you wish you get the experience.
Returns
Returns a number with with the experience of the player.
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "myexp", function ( thePlayer )
local myExp = exports.exp_system:getPlayerEXP ( thePlayer )
outputChatBox ( "Your experience is: ".. myExp, thePlayer ) end )
This function is used to set a player experience.
Syntax
bool setPlayerEXP ( player thePlayer, int theExperience )
Required Arguments
- thePlayer: The player element you wish you set the experience.
- theExperience: The exprience you want to set.
Returns
Returns a bool, whether the experience was set successfully or not.
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "setmyexp", function ( thePlayer, commandName, theExp )
local theExp = tonumber ( theExp ) or 0
exports.exp_system:setPlayerEXP ( thePlayer, theExp ) end )
This function is used to give a player experience.
Syntax
bool addPlayerEXP ( player thePlayer, int theExperience )
Required Arguments
- thePlayer: The player element you wish you to give the experience.
- theExperience: The exprience you want to give.
Returns
Returns a bool, whether the experience was given successfully or not.
Example
<syntaxhighlight lang="lua"> addEvent ( "onZombieWasted", true ) addEventHandler ( "onZombieWasted", root, function ( theKiller ) exports.exp_system:addPlayerEXP ( theKiller, 5 ) end )
This function is used to get an account level.
Syntax
bool getAccountLevel ( account theAccount )
Required Arguments
- theAccount: The player element you wish you get the level.
Returns
Returns a number with with the level of the account. <syntaxhighlight lang="lua"> addCommandHandler ( "mylevel", function ( thePlayer ) local account = getPlayerAccount ( thePlayer )
local myExp = exports.exp_system:getAccountLevel ( account )
outputChatBox ( "Your account level is: ".. myLevel, thePlayer ) end )
This function is used to set an account level.
Syntax
bool setAccountLevel ( account theAccount, int theLevel )
Required Arguments
- theAccount: The player element you wish you set the level.
- theLevel: The level you want to set.
Returns
Returns a bool, whether the level was set successfully or not. <syntaxhighlight lang="lua"> addCommandHandler ( "setmylevel", function ( thePlayer, commandName, theLevel ) local account = getPlayerAccount ( thePlayer )
local theLevel = tonumber ( theLevel ) or 1
exports.exp_system:setAccountLevel ( account, theLevel ) end )
This function is used to get an account experience.
Syntax
bool getAccountEXP ( account theAccount )
Required Arguments
- theAccount: The player element you wish you get the experience.
Returns
Returns a number with with the experience of the player.
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "myexp", function ( thePlayer ) local account = getPlayerAccount ( thePlayer )
local myExp = exports.exp_system:getAccountEXP ( account )
outputChatBox ( "Your account experience is: ".. myExp, thePlayer ) end )
This function is used to set an account experience.
Syntax
bool setAccountEXP ( account theAccount, int theExperience )
Required Arguments
- theAccount: The player element you wish you set the experience.
- theExperience: The exprience you want to set.
Returns
Returns a bool, whether the experience was set successfully or not.
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "setmyexp", function ( thePlayer, commandName, theExp ) local account = getPlayerAccount ( thePlayer )
local theExp = tonumber ( theExp ) or 0
exports.exp_system:setAccountEXP ( account, theExp ) end )
This function is used to refresh the levels.
Syntax
bool loadLevelsFromXML( )
Required Arguments
- None
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "refreshlevels", function ( ) exports.exp_system:loadLevelsFromXML ( ) end )
This function is used to obtain the name and experience required of a level.
Syntax
getLevelData ( int theLevel )
Required Arguments
- theLevel
Returns
Returns the name of the level and the experience required.
Example
<syntaxhighlight lang="lua"> addCommandHandler ( "getleveldata", function ( thePlayer ) local level = exports.exp_system:getPlayerLevel ( thePlayer ) local name, expreq = exports.exp_system:getLevelData ( level ) outputChatBox ( name ..": ".. expreq, thePlayer ) end )
Custom Events
This event is called when a player level changes.
Syntax
event onPlayerChangeLevel
Parameters
- oldLevel: The player old level.
- newLevel: The player new level.
Source
This event is called when a player level UP.
Syntax
event onPlayerLevelUP
Parameters
- oldLevel: The player old level.
- newLevel: The player new level.