Help me
#1

I want to make teams with /st and when i enter i can switch between with arrows left and right

My curret script
pawn Код:
new PAccount[MAX_PLAYERS];//Account saved or not

enum pInfo
{
    pPass[64],//Player saved password
    pAdmin,
    pMoney,//PlayerMoneys
    pScore,//Score
    pTeam,//Team
    pClass,//Class
}


    GameTextForPlayer(playerid,"~g~Welcome to ~r~Russia ~g~vs ~b~Ukraine",5000,4);
    SendClientMessage(playerid,0xFFFFFFFF,"{FF0000}Welcome {FFFFFF}to Russia vs Ukraine!\n{FFFFFF}Type {FF0000}/help {FFFFFF}for help :)");
    SendClientMessage(playerid, COLOR_YELLOW, "Click Spawn to spawn to your previous team and class");
    SendClientMessage(playerid,COLOR_RED,"For your account security use strong passwords");
    new playername[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid,playername,sizeof(playername));
    format(string,sizeof string,"%s has joined the server. Welcome!",playername);
    SendClientMessageToAll(0xFFFFFFAA,string);
    format(string,sizeof(string),"players/%s.ini", playername);
    if(fexist(string))


     {
        PAccount[playerid] = 1;
    }
    else
    {
        PAccount[playerid] = 0;
    }
    if(PAccount[playerid] == 1)
    {
        ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FF0000}Login","{FFFFFF}Hello!\nYour account registred in server\nPlease,type your password below:","OK","Exit");
    }
    else
    {
        ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"{00FF00}Register","{FFFFFF}Hello!\nYour account not registred!\nType password below:","OK","Exit");
    }
    return 1;
}
public OnPlayerSpawn(playerid)
{
    if(Player[playerid][pTeam] <= 0)
    {
    SPD(playerid,4,DSL,"{FFFFFF}Select your team","{0000FF}Ukraine\n{FF0000}Russia","Select","");
    SendClientMessage(playerid,0xFF000000,"Your team select saved, to change your team,type /changeteam!");
    ShowPlayerMarkers(1);
    GangZoneShowForAll(GZ_ZONE1, 0x0080FF96);
    GangZoneShowForAll(GZ_ZONE2, 0xFF000096);
    }
    SavePlayer(playerid);
    if(Player[playerid][pTeam] == 1)
    {
    SetPlayerPos(playerid,-250.8406,2598.8433,62.8582);
    SetPlayerColor(playerid,0x0000FFFF);
    SetPlayerTeam(playerid,1);
    PlayerTextDrawShow(playerid,UkraineTextdraw[playerid]);
    {
    switch(random(4)) // генерируем число от 0 до 3 (включая)
    {
    case 0: SetPlayerSkin(playerid,124);
    case 1: SetPlayerSkin(playerid,125);
    case 2: SetPlayerSkin(playerid,126);
    case 3: SetPlayerSkin(playerid,127);
    }
    }
    }
    if(Player[playerid][pTeam] == 2)
    {
    SetPlayerPos(playerid,-149.9057,1079.6403,19.7422);
    SetPlayerColor(playerid,0xFF0000FF);
    ShowPlayerMarkers(1);
    GangZoneShowForAll(GZ_ZONE1, 0x0080FF96);
    GangZoneShowForAll(GZ_ZONE2, 0xFF000096);
    SetPlayerTeam(playerid,2);
    PlayerTextDrawShow(playerid,RussiaTextdraw[playerid]);
    {



public OnPlayerDisconnect(playerid,reason)
{
    new
    string[64],
    name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,MAX_PLAYER_NAME);
    switch(reason)
    {
    case 0: format(string,sizeof string,"%s left the server. (Crashed)",name);
    case 1: format(string,sizeof string,"%s left the server. (Left)",name);
    case 2: format(string,sizeof string,"%s left the server. (Kicked/Banned)",name);
    }
    SendClientMessageToAll(0xFFFFFFAA,string);
    SavePlayer(playerid);
    return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == 1)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FF0000}Login","{FFFFFF}Hello!\nYour account registred in server\nPlease,type your password below:","OK","Exit");// Показываем диалог входа в игру.
                return 1;
            }
            new pass[64];
            strmid(pass,inputtext,0,strlen(inputtext),64);
            OnPlayerLogin(playerid,pass);
        }
        else
        {
            ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FF0000}Login","{FFFFFF}Hello!\nYour account registred in server\nPlease,type your password below:","OK","Exit");// Показываем диалог входа в игру.
        }
    }
    if(dialogid == 2)
    {
        if(response)
        {
            if(!strlen(inputtext))
            {
                ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"{00FF00}Register","{FFFFFF}Hello!\nYour account not registred!\nType password below:","OK","Exit");// Показываем диалог регистрации.
                return 1;
            }
            new pass[64];
            strmid(pass,inputtext,0,strlen(inputtext),64);
            OnPlayerRegister(playerid,pass);
        }
        else
        {
            ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"{00FF00}Register","{FFFFFF}Hello!\nYour account not registred!\nType password below:","OK","Exit");// Показываем диалог регистрации.
        }
    }
    if(dialogid == 3)
        {
            if(response)
            {
                switch(listitem)
                {
        case 0:
                    {
                        if((Player[playerid][pScore] >= 50))
                        {
                            SendClientMessage(playerid,0xFFFFFF00,"Class manager: You pick sniper!To change class,type /changeclass.");
                            Player[playerid][pClass] = 1;
                            SpawnPlayer(playerid);
                            if(Player[playerid][pTeam] >= 1)
                            {
                                ResetPlayerWeapons(playerid);
                                SetPlayerColor(playerid,0x0000FFFF);
                                SetPlayerArmour(playerid, 50);
                                GivePlayerWeapon(playerid,4,1);
                                GivePlayerWeapon(playerid,23,200);
                                GivePlayerWeapon(playerid,34,100);
                                SetPlayerTeam(playerid,1);
                                PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                                PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                                PlayerTextDrawHide(playerid,Sniper[playerid]);
                                PlayerTextDrawHide(playerid,Enginner[playerid]);
                                PlayerTextDrawHide(playerid,Soldier[playerid]);
                                PlayerTextDrawHide(playerid,Rookie[playerid]);
                                PlayerTextDrawShow(playerid,Sniper[playerid]);
                            }
                            if(Player[playerid][pTeam] >= 2)
                            {
                                ResetPlayerWeapons(playerid);
                                SetPlayerColor(playerid,0xFF0000FF);
                                SetPlayerArmour(playerid, 50);
                                GivePlayerWeapon(playerid,4,1);
                                GivePlayerWeapon(playerid,23,200);
                                GivePlayerWeapon(playerid,34,100);
                                SetPlayerTeam(playerid,2);
                                PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                                PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                                PlayerTextDrawHide(playerid,Sniper[playerid]);
                                PlayerTextDrawHide(playerid,Enginner[playerid]);
                                PlayerTextDrawHide(playerid,Soldier[playerid]);
                                PlayerTextDrawHide(playerid,Rookie[playerid]);
                                PlayerTextDrawShow(playerid,Sniper[playerid]);
                            }
                        }
                    }
        case 1:
                    {
                    if((GetPlayerScore(playerid) >= 75))
                    {
                        SendClientMessage(playerid,0xFFFFFF00,"Class manager: You pick Enginner!To change class,type /changeclass.");
                        Player[playerid][pClass] = 2;
                        SpawnPlayer(playerid);
                        if(Player[playerid][pTeam] >= 1)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0x0000FFFF);
                            SetPlayerArmour(playerid, 75);
                            GivePlayerWeapon(playerid,16,2);
                            GivePlayerWeapon(playerid,29,200);
                            GivePlayerWeapon(playerid,35,2);
                            SetPlayerTeam(playerid,1);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Enginner[playerid]);
                        }
                        if(Player[playerid][pTeam] >= 2)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0xFF0000FF);
                            SetPlayerArmour(playerid, 75);
                            GivePlayerWeapon(playerid,16,2);
                            GivePlayerWeapon(playerid,29,200);
                            GivePlayerWeapon(playerid,35,2);
                            SetPlayerTeam(playerid,2);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Enginner[playerid]);
                        }
                    }
                }
                case 2:
                    {
                    if((GetPlayerScore(playerid) >= 100))
                    {
                        SendClientMessage(playerid,0xFFFFFF00,"Class manager: You pick Soldier!To change class,type /changeclass.");
                        Player[playerid][pClass] = 3;
                        SpawnPlayer(playerid);
                        if(Player[playerid][pTeam] >= 1)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0x0000FFFF);
                            SetPlayerArmour(playerid, 100);
                            GivePlayerWeapon(playerid,27,200);
                            GivePlayerWeapon(playerid,24,100);
                            GivePlayerWeapon(playerid,31,500);
                            SetPlayerTeam(playerid,1);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Soldier[playerid]);
                        }
                        if(Player[playerid][pTeam] >= 2)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0xFF0000FF);
                            SetPlayerArmour(playerid, 100);
                            GivePlayerWeapon(playerid,29,200);
                            GivePlayerWeapon(playerid,24,50);
                            GivePlayerWeapon(playerid,17,2);
                            SetPlayerTeam(playerid,2);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Soldier[playerid]);
                        }
                    }
                }
                case 3:
                    {
                    if((GetPlayerScore(playerid) >= 0))
                    {
                        SendClientMessage(playerid,0xFFFFFF00,"Class manager: You pick Rookie!To change class,type /changeclass.");
                        Player[playerid][pClass] = 4;
                        SpawnPlayer(playerid);
                        if(Player[playerid][pTeam] >= 1)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0x0000FFFF);
                            SetPlayerArmour(playerid, 25);
                            GivePlayerWeapon(playerid,24,100);
                            GivePlayerWeapon(playerid,46,1);
                            GivePlayerWeapon(playerid,16,5);
                            GivePlayerWeapon(playerid,28,300);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Rookie[playerid]);

                        }
                        if(Player[playerid][pTeam] >= 2)
                        {
                            ResetPlayerWeapons(playerid);
                            SetPlayerColor(playerid,0xFF0000FF);
                            SetPlayerArmour(playerid, 25);
                            GivePlayerWeapon(playerid,24,100);
                            GivePlayerWeapon(playerid,46,1);
                            GivePlayerWeapon(playerid,16,5);
                            GivePlayerWeapon(playerid,28,300);
                            SetPlayerTeam(playerid,2);
                            PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
                            PlayerTextDrawHide(playerid,Sniper[playerid]);
                            PlayerTextDrawHide(playerid,Enginner[playerid]);
                            PlayerTextDrawHide(playerid,Soldier[playerid]);
                            PlayerTextDrawHide(playerid,Rookie[playerid]);
                            PlayerTextDrawShow(playerid,Rookie[playerid]);
                         }
                    }
                }
            }
        }
    }
    if(dialogid == 4)
    {
    if(response)
    {
    switch(listitem)
    {
    case 0:
    {
    SendClientMessage(playerid,0xFFFFFF00,"Class manager: Auto pick(Rookie)!To change class,type /changeclass.");
    Player[playerid][pTeam] = 1;
    SetPlayerColor(playerid,0x0000FF00);
    SpawnPlayer(playerid);
    }
    case 1:
    {
    SendClientMessage(playerid,0xFFFFFF00,"Class manager: Auto pick(Rookie)!To change class,type /changeclass.");
    Player[playerid][pTeam] = 2;
    SetPlayerColor(playerid,0xFF000000);
    SpawnPlayer(playerid);
    }
    }
    }
    }
    if(dialogid == 5)
    {
    if(response)
    {
    switch(listitem)
    {
    case 0:
    {
    SpawnPlayer(playerid);
    SendClientMessage(playerid,0xFFFFFF00,"Team manager: Your selected team {0000FF}Ukraine{FFFFFF}!To change class,type /changeteam.");
    Player[playerid][pTeam] = 1;
    SetPlayerTeam(playerid,1);
    PlayerTextDrawHide(playerid,RussiaTextdraw[playerid]);
    PlayerTextDrawShow(playerid,UkraineTextdraw[playerid]);

    }
    case 1:
    {
    SpawnPlayer(playerid);
    SendClientMessage(playerid,0xFFFFFF00,"Team manager: Your selected team {FF0000}Russia{FFFFFF}!To change class,type /changeteam.");
    Player[playerid][pTeam] = 2;
    SetPlayerTeam(playerid,2);
    PlayerTextDrawHide(playerid,UkraineTextdraw[playerid]);
    PlayerTextDrawShow(playerid,RussiaTextdraw[playerid]);
    }
    }
    }
    }
    return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    return 1;
}

stock SavePlayer(playerid)
{
    new string[64];
    new playername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername, sizeof(playername));
    format(string, sizeof(string), "players/%s.ini", playername);
    new iniFile = ini_openFile(string);//
    ini_setString(iniFile,"Pass",Player[playerid][pPass]);//
    ini_setInteger(iniFile,"Admin",Player[playerid][pAdmin]);//
    ini_getInteger(iniFile,"Money",Player[playerid][pMoney]);//
    ini_setInteger(iniFile,"Score",Player[playerid][pScore]);//
    ini_setInteger(iniFile,"Team",Player[playerid][pTeam]);//
    ini_setInteger(iniFile,"Class",Player[playerid][pClass]);//
    ini_closeFile(iniFile);
}

forward OnPlayerRegister(playerid, password[]);
public OnPlayerRegister(playerid, password[])//
{
    if(IsPlayerConnected(playerid))//
    {
        new string[64];//
        new playername[MAX_PLAYER_NAME];//
        GetPlayerName(playerid, playername, sizeof(playername));
        format(string,sizeof(string), "players/%s.ini", playername);
        new iniFile = ini_createFile(string);
        if(iniFile < 0)
        {
            iniFile = ini_openFile(string);
        }
        if(iniFile >= 0)
        {
            strmid(Player[playerid][pPass],password,0,strlen(password),255);
            ini_setString(iniFile,"Pass",Player[playerid][pPass]);
            ini_setInteger(iniFile,"Admin",0);
            ini_setInteger(iniFile,"Money",5000);
            ini_setInteger(iniFile,"Score",0);
            ini_setInteger(iniFile,"Team",0);
            ini_setInteger(iniFile,"Class",4);
            ini_closeFile(iniFile);
            ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FF0000}Login","{FFFFFF}Hello!\nYour account registeRussia in server\nPlease,type your password below:","OK","Exit");
        }
        SpawnPlayer(playerid);
    }
    return 1;
}

forward OnPlayerLogin(playerid,password[]);
public OnPlayerLogin(playerid,password[])
{
    if(IsPlayerConnected(playerid))
    {
        new string[64];
        new pass[64];
        new playername[MAX_PLAYER_NAME];
        GetPlayerName(playerid, playername, sizeof(playername));
        format(string,sizeof(string), "players/%s.ini", playername);
        new iniFile = ini_openFile(string);
        ini_getString(iniFile,"Pass",pass,64);
        ini_getInteger(iniFile,"Admin",Player[playerid][pAdmin]);
        ini_getInteger(iniFile,"Money",Player[playerid][pMoney]);
        ini_getInteger(iniFile,"Score",Player[playerid][pScore]);
        ini_getInteger(iniFile,"Team",Player[playerid][pTeam]);
        ini_getInteger(iniFile,"Class",Player[playerid][pClass]);
        GivePlayerMoney(playerid,Player[playerid][pMoney]);
        SetPlayerScore(playerid,Player[playerid][pScore]);
        if(strcmp(pass,password,true) == 0)
        {
            ini_getString(iniFile,"Pass",Player[playerid][pPass],64);
            ini_closeFile(iniFile);
        }
        else
        {
            ini_closeFile(iniFile);
            ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"{FF0000}Login","{FFFFFF}Hello!\nYour account registeRussia in server\nPlease,type your {00FF00}correctly {FFFFFF}password below:","OK","Exit");
            return 1;
        }
        SpawnPlayer(playerid);
    }
    return 1;
}
Reply
#2

Your pawn code is not Order .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)