SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

Participe do fórum, é rápido e fácil

SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 12 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Chegou o novo tema 6.5.5 - SSGamers - Servidores online de qualidade - Aproveite e entre para nossa comunidade, inscreva-se já! - Ouça nossa web radio - Veja nossas novidades - Participe dos nossos setores de jogos online - Parcerias aberta fale já com um administrador.

    Criando Organizacões para RP/G

    >> Kevin_Script <<
    >> Kevin_Script <<
    --> Postador Iniciante
    --> Postador Iniciante


    Mensagens : 47
    Moedas : 4428
    Data de inscrição : 10/01/2013

    Criando Organizacões para RP/G Empty Criando Organizacões para RP/G

    Mensagem por >> Kevin_Script << Dom 10 Mar 2013 - 2:30

    Seja Bem Vindo ao meu Tutorial de Como Criar Org para seu server de RPG

    No Topo Do GameMode

    Includes

    Código:
    #include <a_samp>
    #include <zcmd> //Adicionando o ZCMD
    #include <sscanf> //Adicionando o sscanf
    #include <DOF2> //Adicionando o DOF2

    Em Baixo das Includes


    Defines


    Código:
    #define CIVIL 0 // Deixe Civil 0 ! Pois caso ele logue e seja demitido ele ficara como Civil
    #define POLICIAM 1
    #define GROVE 2
    #define BALLAS 3

    Define das Cores

    Código:
    #define C_CIVIL 0x000000FF
    #define C_POLICIAM 0x9999FFF6
    #define C_GROVE 0x00D900C8
    #define C_BALLAS 0x9900CCF6

    Em Baixo das Defines

    Enum


    Código:
    enum PlayerDados // Server para salvar a org e cargo ao sair do sv
    {
        Organizacao,
        Cargo
    }
    new pDados[MAX_PLAYERS][PlayerDados];


    public OnGameModeExit


    Código:
    DOF2_Exit();

    public OnPlayerRequestClass

    Código:
    public OnPlayerRequestClass(playerid, classid)
    {
        SpawnPlayer(playerid); //Ao aparecer aqueles setinhas (<<< >>> SPAWN), o jgador irá levar Spawn
        return 1;
    }

    OnPlayerConnect

    Código:
    public OnPlayerConnect(playerid)
    {
        new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as váriaveos que irão armazenar o arquivo e o nome do jogador
        GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
        format(arquivo, sizeof(arquivo), "Contas/%s", playername);
        pDados[playerid][Organizacao] = DOF2_GetInt(arquivo, "Organização"); //Setamos "pDados[playerid][Organizacao]" de acordo com a TAG getada do "arquivo"
        pDados[playerid][Cargo] = DOF2_GetInt(arquivo, "Cargo"); //Setamos "pDados[playerid][Cargo]" de acordo com a TAG getada do "arquivo"
        SpawnPlayer(playerid); //Dá SPAWN no player
        return 1;
    }


    OnPlayerDisconnect


    Código:
    public OnPlayerDisconnect(playerid, reason)
    {
        new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as váriaveos que irão armazenar o arquivo e o nome do jogador
        GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
        format(arquivo, sizeof(arquivo), "Contas/%s", playername);
        if(DOF2_FileExists(arquivo)) //Se a Conta existir
        {
            DOF2_SetInt(arquivo, "Organização", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organização"
            DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
        }
        else //Se a conta não esxitir
        {
            DOF2_CreateFile(arquivo); //Cria o arquivo com os Dados do player
            DOF2_SetInt(arquivo, "Organização", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organização"
            DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
        }
        return 1;
    }


    OnPlayerUpdate

    Código:
    public OnPlaye(playerid)
    {
        new arquivo[34], playername[MAX_PLAYER_NAME]; //Criamos as váriaveos que irão armazenar o arquivo e o nome do jogador
        GetPlayerName(playerid, playername, sizeof(playername)); //Getamos o nome do player
        format(arquivo, sizeof(arquivo), "Contas/%s", playername);
        if(DOF2_FileExists(arquivo)) //Se a Conta existir
        {
            DOF2_SetInt(arquivo, "Organização", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organização"
            DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
        }
        else //Se a conta não esxitir
        {
            DOF2_CreateFile(arquivo); //Cria o arquivo com os Dados do player
            DOF2_SetInt(arquivo, "Organização", pDados[playerid][Organizacao]); //Setamos o valor de "pDados[playerid][Organizacao]" no "arquivo", com a TAG "Organização"
            DOF2_SetInt(arquivo, "Cargo", pDados[playerid][Cargo]); //Setamos o valor de "pDados[playerid][Cargo]" no "arquivo", com a TAG "Cargo"
        }
        return 1;
    }


    OnPlayerSpawn


    Código:
    public OnPlayerSpawn(playerid)
    {
        if(pDados[playerid][Organizacao] == CIVIL)
        {
            SetPlayerPos(playerid, 1677.7240,-1635.5829,14.2266);
        }
        else if(pDados[playerid][Organizacao] == POLICIAM)
        {
            SetPlayerPos(playerid, 1530.0186,-1671.5234,6.2188);
        }
        else if(pDados[playerid][Organizacao] == GROVE)
        {
            SetPlayerPos(playerid, 2516.1411,-1675.4065,13.9113);
        }
        else if(pDados[playerid][Organizacao] == BALLAS)
        {
            SetPlayerPos(playerid, 1099.7534,-1189.1282,18.3361);
        }
        return 1;
    }


    OnPlayerDeath


    Código:
    public OnPlayerDeath(playerid, killerid, reason)
    {
        SpawnPlayer(playerid); //Spawn no nego!
        return 1;
    }

    OnDialogResponse

    Código:
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
        if(dialogid == 666)
    {
            new playername[MAX_PLAYER_NAME], string[128]; //Variaveis que irá armazenar o nome e "string"
            GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome do player que aparaceu o dialog
            if(response) //Se ele clicar em SIM...
            {
                pDados[playerid][Organizacao] = GetPVarInt(playerid, "OrgConvidado"); //Seta a organização de acordo com a PVarInt do comando /convida
                pDados[playerid][Cargo] = 1; //Seta o cargo a 1
                format(string, sizeof(string), "%s aceitou seu Convite.", playername); //Formata uma mensagem com o nome do player que aceitou
                SendClientMessage(GetPVarInt(playerid, "QuemConvidou"), 0x00FF00FF, string); //Envia a mensgaem a quem convidou
                format(string, sizeof(string), "%s é o mais novo membro da Organização.", playername); //Formata uma mensgaem com o nome do player que aceitou
                SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Manda a mensagem para a organização do player
                SendClientMessage(playerid, 0x00FF00FF, "Você aceitou o Convite."); //Manda uma mensagem amigavel ao player que aceitou :P
                DeletePVar(playerid, "OrgConvidado"); //Deleta o PVar
                DeletePVar(playerid, "QuemConvidou"); //Deleta o PVar
                SpawnPlayer(playerid); //Spawn nele!
            }
            else //Se ele ciclar em NÃO...
            {
                format(string, sizeof(string), "%s rejeitou seu Convite.", playername); //Formata a mensgaem com o nome do player que rejeitou o convite
                SendClientMessage(GetPVarInt(playerid, "QuemConvidou"), 0x00FF00FF, string); //Envia a mensagem a quem convidou o player
                SendClientMessage(playerid, 0x00FF00FF, "Você rejeitou o Convite."); //Manda uma mensagem amigavel ao player que rejeitou :P
                DeletePVar(playerid, "OrgConvidado"); //Deleta o PVar
                DeletePVar(playerid, "QuemConvidou"); //Deleta o PVar
            }
        }
        return 1;
    }

    >> Kevin_Script <<
    >> Kevin_Script <<
    --> Postador Iniciante
    --> Postador Iniciante


    Mensagens : 47
    Moedas : 4428
    Data de inscrição : 10/01/2013

    Criando Organizacões para RP/G Empty Re: Criando Organizacões para RP/G

    Mensagem por >> Kevin_Script << Dom 10 Mar 2013 - 2:33

    no OnPlayerUpdate eu coloquei só OnPlayer por favor coloquem Update !



    Criando Organizacões para RP/G Familiascirpt

      Data/hora atual: Qui 18 Abr 2024 - 23:56