[HELP]Leveling the Mechanics of Virtual World System.
#1

Introduction:

As you All know for a Roleplay server we need to make a Login/Register System and then Admin System and its levels. My whole Admin System is Working Perfectly as I said it's enum like that:

pawn Код:
enum PlayerInfo
{
    Pass[129], //User's password
    pAdminLevel,
    VIPlevel, //User's vip level
    Money, //User's money
    Scores, //User's scores
    Kills, //User's kills
    Deaths //User's deaths

}
And I put this in before every admin commands,

pawn Код:
if(pInfo[playerid][pAdminLevel] < 1 ) return 0;
And Also I set Player Admin levels via Users File.

That was Just the Introduction.

HELP INTRODUCTION:

So I made a Guider System like Admin System and also made its commands, But It's levels is creating Problems.
I did like that:

pawn Код:
enum PlayerInfo
{
    Pass[129], //User's password
    pAdminLevel,
    pGuideLevel, //Edit <
    VIPlevel, //User's vip level
    Money, //User's money
    Scores, //User's scores
    Kills, //User's kills
    Deaths //User's deaths

}
And Edit Users File like that to set my own Level of Guider.
Код:
[Player's Data]
Password = 
AdminLevel = 5
VIPLevel = 0
Money = 0
Scores = 0
Kills = 3
Deaths = 7
GuideLevel = 3
And I put in Every Guiding Command Like that:

pawn Код:
if(pInfo[playerid][pGuideLevel] < 1 ) return 0;
And made /guidelist to see the Online Guiders:

pawn Код:
CMD:guiders( playerid, params[ ] )
{
    new
        count
    ;
    SendClientMessage( playerid, COLOR_YELLOW, "[ ! ] List of Online Guiders:" );
    for( new i = 0; i < MAX_PLAYERS; i++ )
    {
        if( !IsPlayerConnected( i ) ) continue;
        if( pInfo[i][pGuideLevel] >= 1 )
        {
            new
                temp[ 32 ],
                name_[ MAX_PLAYER_NAME ]
            ;
            GetPlayerName( i, name_, MAX_PLAYER_NAME );
            format( temp, sizeof( temp ), "<%d> %s Level %d", i, name_, pInfo[i][pGuideLevel]);
            SendClientMessage( playerid, COLOR_LIGHTGREEN, temp );
            count++;
        }
    }
    if(count == 0)
    {
        SendClientMessage( playerid, COLOR_NOWSE, "- No Guiders Currently Online." );
        SendClientMessage( playerid, COLOR_YELLOW, "[ ! ] End of List !" );
    }
    else SendClientMessage( playerid, COLOR_YELLOW, "[ ! ] End of List !" );
    return 1;
}
PROBLEMS WHICH ARE CREATING:

1. The Problems are, It is not showing my name in /guidelist
2. All the Guiders Commands are not Working.

Help me Please in Solving This Problem.

Waiting for your Reply Friends !
Reply
#2

No one has the ability to Help?
Reply
#3

[EDIT]:Or I failed.. because I didn't get a question.. Basically show one of the commands... list works ok then it's okay... show cmd...
Reply
#4

pawn Код:
CMD:gdisarm(playerid, params[])
{
    new PlayerName[24], str_[128];
    if(pInfo[playerid][pGuideLevel] < 1) return 0;
    GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
    if( GetPlayerVirtualWorld( playerid ) != 1 ) return SendClientMessage( playerid, COLOR_RED, "[ ! ] You can't use Event Commands in Real World !" );
    if(sscanf(params, "u", playerid)) return SendClientMessage(playerid, COLOR_LIGHTGREEN, "[ ! ] USAGE: /edisarm <playerid>");
    ResetPlayerWeapons(playerid);
    format(str_, sizeof(str_), "[ ! ] (EVENT) Your weapon(s) have been disarmed !", PlayerName);
    SendClientMessage(playerid, COLOR_LIGHTGREEN, str_);
    return 1;
}
It is the Command to Disarm Players.
Reply
#5

Help plz?
Reply
#6

Are you loading their guide level when they log in?
Reply
#7

How to Load? You mean Compile and then gmx? or..?
Reply
#8

You're editing a file, so you need to load it into that variable. If you don't, just setting it in the file does nothing lol
Reply
#9

Loading, You mean I need to safe it (Ctrl + S)? or I need to type something to load it lol?
Reply
#10

Help!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)