[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
#2

Muito bom! Esta livraria esta muito boa.. Vгo ser no total de quantas includes?
Reply
#3

Quote:
Originally Posted by HumildadeAgain
Посмотреть сообщение
Muito bom! Esta livraria esta muito boa.. Vгo ser no total de quantas includes?
Obrigado.
Meio que indefinido, sempre que vier alguma ideia que possa ser ъtil como include vamos adicionar а msi.
Reply
#4

eu baixo o arquivo .zip porem nao vem nada dentro!
Reply
#5

muito bom cara gostei
Reply
#6

Quote:
Originally Posted by ungroup
Посмотреть сообщение
eu baixo o arquivo .zip porem nao vem nada dentro!
tbm ta assim no meu...
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)