[Include] MSi - Groups
#1




Groups

- Нndice
  • O que й msi_groups?
  • Onde posso encontra-la?
  • Como utilizar?
  • Configuraзхes
  • Funзхes
  • Informaзхes
- O que й msi_groups?
  • msi_groups й uma include desenvolvida por Larceny e Lуs e tem como o objetivo adicionar funзхes para organizar jogadores em grupos diferentes mais dinвmicamente.
- Onde posso encontra-la?
  • msi_groups й parte da livraria MSi(Master Server Includes) e pode ser encontrada neste tуpico.
- Como utilizar?
  • Para utilizar msi_groups apenas inclua a include a seu script:
    pawn Код:
    #include <MSi\msi_groups>
- Configuraзхes
  • Vocк pode, caso preferir, alterar certos valores desta include, sendo elas quantia mбxima de grupos permitidos e o tamanho mбximo do nome de um grupo, definindo ACIMA da include:
    pawn Код:
    #define MAX_GROUPS      (QUANTIA_MAXIMA_DE_GRUPOS)
    #define MAX_GROUP_NAME  (TAMANHO_MAXIMO_DO_NOME_DE_UM_GRUPO)
    #include <MSi\msi_groups>
    Exemplo:
    pawn Код:
    #define MAX_GROUPS      64
    #define MAX_GROUP_NAME  32
    #include <MSi\msi_groups>
    - O cуdigo acima define a quantidade mбxima de gruops para 64 e tamanho mбximo do nome de um grupo para 32 chars.
- Funзхes
  • CreateGroup(groupname[], type = INVALID_GROUP_TYPE);
    - groupname[]: Nome do grupo criado.
    - type: Tipo do grupo criado.

    - Obs. Apenas o nome do grupo й obrigatуrio! O tipo do grupo й OPCIONAL!

    - Esta funзгo cria um grupo e retorna o ID do grupo criado, exemplo:
    pawn Код:
    new g_groupAdmins;

    public OnGameModeInit()
    {
        g_groupAdmins = CreateGroup("Administradores");
        // Criamos um grupo chamado admins e salvamos seu id na variбvel g_groupAdmins.
        return 1;
    }
  • SetGroupName(groupid, groupname[])
    - groupid: ID do grupo.
    - groupname[]: Novo nome para o grupo.

    - Esta funзгo altera o nome de um grupo.
    pawn Код:
    new g_groupAdmins;

    public OnGameModeInit()
    {
        g_groupAdmins = CreateGroup("Administradores");
        // Criamos um grupo chamado admins e salvamos seu id na variбvel g_groupAdmins.

        SetGroupName(g_groupAdmins, "Helpers");
        // Alteramos o nome do grupo "g_groupAdmins" para Helpers.
        return 1;
    }
  • GetGroupName(groupid)
    - groupid: ID do grupo.

    - Esta funзгo obtйm o nome de um grupo.
    pawn Код:
    new g_groupAdmins;

    public OnGameModeInit()
    {
        g_groupAdmins = CreateGroup("Administradores");
        // Criamos um grupo chamado admins e salvamos seu id na variбvel g_groupAdmins.

        SetGroupName(g_groupAdmins, "Helpers");
        // Alteramos o nome do grupo "g_groupAdmins" para Helpers.

        printf("O nome do grupo g_groupAdmins й: %s", GetGroupName(g_groupAdmins));
        // Imprimimos o nome do grupo "g_groupAdmins".
        return 1;
    }
  • GetGroupIDbyName(groupname[])
    - groupname[]: Nome do grupo

    - Esta funзгo retorna o ID de um grupo atravйs de seu nome.
    pawn Код:
    CMD:grupo(playerid, params[])
    {
        new groupname[MAX_GROUP_NAME];
        if(sscanf(params, "s", groupname)) return 0;
        else if(GetGroupIDbyName(groupname) == INVALID_GROUP_ID)// Verificando se o grupo existe atravйs do nome
            SendClientMessage(playerid, -1, "Este grupo nгo existe!");
        else
            SendClientMessage(playerid, -1, "O grupo digitado existe!");
        return 1;
    }
  • SetGroupType(groupid, type)
    - groupid: ID do grupo.
    - grouptype: Novo tipo para o grupo.

    - Esta funзгo altera o tipo de um grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;
    new g_groupBallas;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        // Criamos um grupo para a gang groove str. e salvamos seu id na variбvel g_groupGroove.

        g_groupBallas = CreateGroup("The Ballas");
        // Criamos um grupo para a gang ballas e salvamos seu id na variбvel g_groupBallas.

        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);
        SetGroupType(g_groupBallas, GROUP_TYPE_GANG);
        // Alteramos o tipo de ambos os grupos para GROUP_TYPE_GANG(definido anteriormente por nуs).
        return 1;
    }
  • GetGroupType(groupid)
    - groupid: ID do grupo.

    - Esta funзгo obtйm o tipo de um grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;
    new g_groupBallas;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        // Criamos um grupo para a gang groove str. e salvamos seu id na variбvel g_groupGroove.

        g_groupBallas = CreateGroup("The Ballas");
        // Criamos um grupo para a gang ballas e salvamos seu id na variбvel g_groupBallas.

        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);
        SetGroupType(g_groupBallas, GROUP_TYPE_GANG);
        // Alteramos o tipo de ambos os grupos para GROUP_TYPE_GANG(definido anteriormente por nуs).

        if(GetGroupType(g_groupBallas) == GROUP_TYPE_GANG) printf("O grupo g_groupBallas й do tipo Gang!");
        return 1;
    }
  • IsPlayerInGroup(playerid, groupid)
    - playerid: ID do jogador.
    - groupid: ID do grupo.

    - Esta funзгo verifica se um jogador estб em um grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);
        return 1;
    }

    public OnPlayerDeath(playerid, killerid, reason)
    {
        if(IsPlayerInGroup(playerid, g_groupGroove) && IsPlayerInGroup(killerid, g_groupGroove))
        // Verificando se playerid estб no grupo Grove,  Verificando se killerid estб no grupo..
        {
            SendClientMessage(playerid, -1, "Vocк foi morto por um companheiro.");
            SendClientMessage(killerid, -1, "Vocк matou um companheiro.");
        }
        return 1;
    }
  • AddPlayerToGroup(playerid, groupid)
    - playerid: ID do jogador.
    - groupid: ID do grupo.

    - Esta funзгo adiciona um jogador a um grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);
        return 1;
    }

    public OnPlayerConnect(playerid)
    {
        AddPlayerToGroup(playerid, g_groupGroove);
        // Adiciona o jogador que conectar no servidor ao grupo da Groove.
        return 1;
    }
  • RemovePlayerFromGroup(playerid, groupid)
    - playerid: ID do jogador.
    - groupid: ID do grupo.

    - Esta funзгo remove um jogador de um grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);
        return 1;
    }

    public OnPlayerDeath(playerid, killerid, reason)
    {
        if(IsPlayerInGroup(playerid, g_groupGroove))
        // Verificando se playerid estб no grupo Grove
        {
            SendClientMessage(playerid, -1, "Vocк morreu e por isso nгo tem direito de estar na Groove.");
            RemovePlayerFromGroup(playerid, g_groupGroove);
            // Remove o jogador do grupo
        }
        return 1;
    }
  • SendGroupMessage(groupid, color, message[])
    - groupid: ID do grupo.
    - color: Cor na qual serб enviada a mensagem
    - message[]: Mensagem a ser enviada

    - Esta funзгo envia uma mensagem aos membros de um determinado grupo.
    pawn Код:
    new grAdmins;

    public OnGameModeInit()
    {
        grAdmins = CreateGroup("Administradores");
        return 1;
    }

    public OnPlayerConnect(playerid)
    {
        SendGroupMessage(grAdmins, -1, "Um jogador se conectou ao servidor.");
        // Envia uma mensagem a todos do grupo grAdmins quando alguйm se conectar ao servidor.

        return 1;
    }
  • SendGroupTypeMessage(grouptype, color, message[])
    - grouptype: Tipo do grupo.
    - color: Cor na qual serб enviada a mensagem
    - message[]: Mensagem a ser enviada

    - Esta funзгo envia uma mensagem aos membros de um determinado tipo de grupo.
    pawn Код:
    #define GROUP_TYPE_GANG 1

    new g_groupGroove;
    new g_groupBallas;

    public OnGameModeInit()
    {
        g_groupGroove = CreateGroup("Groove Street");
        SetGroupType(g_groupGroove, GROUP_TYPE_GANG);

        g_groupBallas = CreateGroup("The Ballas");
        SetGroupType(g_groupBallas, GROUP_TYPE_GANG);
        return 1;
    }

    public OnPlayerConnect(playerid)
    {
        SendGroupTypeMessage(GROUP_TYPE_GANG, -1, "Uma possнvel vitima acabou de se conectar.");

        //Manda uma mensagem para todos os membros de grupos do tipo GROUP_TYPE_GANG
        return 1;
    }
- Informaзхes
  • A quantia mбxima de grupos que podem ser criados, por padrгo, й 32.
  • O tamanho mбximo do nome de um grupo, por padrгo, й 32.
Reply


Messages In This Thread
MSi - Groups - by Larceny - 15.02.2013, 12:51
Re: MSi - Groups - by HumildadeAgain - 15.02.2013, 12:54
Re: MSi - Groups - by Larceny - 15.02.2013, 12:59
Re: MSi - Groups - by ungroup - 21.02.2013, 23:18
Re: MSi - Groups - by Juninho_Oakley - 21.02.2013, 23:42
Re: MSi - Groups - by Absolution - 26.02.2013, 21:02

Forum Jump:


Users browsing this thread: 1 Guest(s)