NOVO IP 184.82.114.194:8888

NOVO FORUM: http://segundavida.forumeiros.com/

    TesteTEsTEeTssd

    Compartilhe

    Flash_Down
    Civil
    Civil

    Mensagens : 3
    Data de inscrição : 19/09/2010

    TesteTEsTEeTssd

    Mensagem  Flash_Down em Qui Jul 07, 2011 12:45 am

    [quote]#include <a_samp>
    #include <zcmd>
    #include <dini>

    native sscanf(const data[], const format[], {Float,_}:...);
    native unformat(const data[], const format[], {Float,_}:...) = sscanf;
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM|| Defines ||MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //--- Anti-CapsLock ---//
    #define UpperToLower(%1) for(new ToLowerChar; ToLowerChar < strlen( %1 ); ToLowerChar ++ ) if ( %1[ ToLowerChar ]> 64 && %1[ ToLowerChar ] < 91 ) %1[ ToLowerChar ] += 32
    //-------------------------------
    #define ComandoInvalido "SERVER: Unknown command."
    #define Contas "/Arquivos/Contas/%s.ini"
    #define DialogRegistro 2
    #define DialogLogin 3
    #define DialogSaidaA 4
    #define DialogSaidaB 5
    #define DialogAdmin 6
    #define CorBranco 0xFCFCFCAA
    #define CorPreto 0x020202AA
    #define CorAmarelo 0xFFFF00AA
    #define CorAmareloE 0xCCCC00AA
    #define CorAmareloC 0xFFFF80AA
    #define CorVermelho 0xFF0000AA
    #define CorVermelhoE 0x000000FF
    #define CorVermelhoC 0xFF5353AA
    #define CorVerde 0x008000AA
    #define CorVerdeE 0x004800AA
    #define CorVerdeC 0x00D500AA
    #define CorVerdeA 0x80FF80AA
    #define CorAzul 0x0000FFAA
    #define CorAzulE 0x0000A0AA
    #define CorAzulC 0x6464FFAA
    #define CorAzulBebe 0x00FFFFAA
    #define CorLaranja 0xFF8000AA
    #define CorLaranjaE 0xBF6000AA
    #define CorLaranjaC 0xFFBA75AA
    #define CorRosa 0xFF80C0AA
    #define CorRosaE 0xFF4AA5AA
    #define CorRosaC 0xFFC6E2AA
    #define CorRosaChock 0xFF0080AA
    #define CorRoxa 0x8000FFAA
    #define CorRoxaE 0x5400A8AA
    #define CorRoxaC 0xB062FFAA
    #define CorCinza 0x808080AA
    #define CorCinzaE 0x5C5C5CAA
    #define CorCinzaC 0xC0C0C0AA
    #define CorDourado 0xCCCC00AA
    #define CorVerdeAqua 0x00B0B0AA
    #define CorVerdelimao 0x00FF00AA
    #define CorAdministrador 0x80FF00AA
    #define CorChatg 0xAAE3FFAA
    #define CorChatAdmin 0xFF00FFAA
    #define CorChatAjuda 0x00C7FFAA

    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMM|>> new'S <<|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    new bool:JaSetoVida[MAX_PLAYERS];
    new bool:TaEspiando[MAX_PLAYERS];
    new bool:VeiculoOcupado[MAX_PLAYERS];
    new nome[MAX_PLAYER_NAME];
    new nome2[MAX_PLAYER_NAME];
    new TaLogado[MAX_PLAYERS];
    new TentativasdeLogar[MAX_PLAYERS];
    new TaBanido[MAX_PLAYERS];
    new ComandoAtivado[MAX_PLAYERS];
    new TimerContinuarPos[MAX_PLAYERS];
    new PodeContinuar[MAX_PLAYERS];
    new arquivo[128];

    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMM|>> STOCK'S <<|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    //MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    stock SalvarDados(playerid)
    {
    new Float:Colete;
    new Float:Vida;
    new Float:X;
    new Float:Y;
    new Float:Z;
    GetPlayerArmour(playerid, Colete);
    GetPlayerHealth(playerid, Vida);
    GetPlayerPos(playerid, X, Y, Z);
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    dini_IntSet(arquivo, "Dinheiro", GetPlayerMoney(playerid));
    dini_FloatSet(arquivo, "Colete", Colete);
    dini_FloatSet(arquivo, "Vida", Vida);
    dini_IntSet(arquivo, "Level", GetPlayerScore(playerid));
    dini_IntSet(arquivo, "LeveldeProcurado", GetPlayerWantedLevel(playerid));
    dini_IntSet(arquivo, "TaBanido", TaBanido[playerid]);
    dini_FloatSet(arquivo,"PosX", X);
    dini_FloatSet(arquivo,"PosY", Y);
    dini_FloatSet(arquivo,"PosZ", Z);
    dini_IntSet(arquivo, "Interior", GetPlayerInterior(playerid));
    dini_IntSet(arquivo, "VirtualWorld", GetPlayerVirtualWorld(playerid));
    return true;
    }

    stock SetarDados(playerid)
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    SetPlayerMoney(playerid, dini_Int(arquivo, "Dinheiro"));
    SetPlayerArmour(playerid, dini_Int(arquivo, "Colete"));
    SetPlayerScore(playerid, dini_Int(arquivo, "Level"));
    SetPlayerWantedLevel(playerid, dini_Int(arquivo, "LeveldeProcurado"));
    TaBanido[playerid] = dini_Int(arquivo, "TaBanido");
    return true;
    }

    stock IsVehicleEmpty(vehicleid)
    {
    if(VeiculoOcupado[vehicleid])return 0;
    else return 1;
    }

    main()
    {
    print("\n----------------------------------");
    print("[BSD]Brasil Start Destructions");
    print("----------------------------------\n");
    }

    public OnGameModeInit()
    {
    SetGameModeText("FBM");
    SetTimer("ServerConfigs", 2000, true);
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
    return 1;
    }

    public OnGameModeExit()
    {
    return 1;
    }

    public OnPlayerRequestClass(playerid, classid)
    {
    new string[128];
    new msg[128];
    SetPlayerPos(playerid, 2173.4932,-1108.9648,25.3100);
    SetPlayerCameraPos(playerid, 2171.3335,-1107.0033,25.4181);
    SetPlayerCameraLookAt(playerid, 2146.9326,-1077.8234,41.0193);
    if(!dini_Exists(arquivo))
    {
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Bem vindo ao Brasil Start Destructions\nVocê ainda não possui registro em nossos sistemas\n\nNome: %s\n\nInsira uma senha abaixo para se Registrar:", nome);
    ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFCC00}- Registro -", string, "Registrar", "Sair");
    format(msg, sizeof(msg), "Olá %s. Bem vindo ao {0000CC}Nome {FFFFFF}do{006600} Servidor", nome);
    SendClientMessage(playerid, CorBranco, msg);
    return true;
    }
    if(dini_Exists(arquivo))
    {
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Seja Bem vindo novamente ao Good of Destructions\nVocê já possui Registro\n\nNome: %s\n\nInsira sua senha para que possa Logar:", nome);
    ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFCC00}- Login -", string, "Logar", "Sair");
    format(msg, sizeof(msg), "Olá %s. Bem vindo novamente ao {0000CC}Nome {FFFFFF}do{006600} Servidor", nome);
    SendClientMessage(playerid, CorBranco, msg);
    return true;
    }
    return 1;
    }

    public OnPlayerConnect(playerid)
    {
    new string[128];
    SetarDados(playerid);
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    if(dini_Int(arquivo,"TaBanido") == 1)
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string),"%s Entrou no Servidor ",nome);
    SendClientMessageToAll(CorChatg, string);
    SendClientMessage(playerid, CorVermelho, "[BSD] Sua conta está Banida!");
    Kick(playerid);
    return true;
    }
    if(dini_Int(arquivo,"TaBanido") == 0)
    {
    SetPlayerColor(playerid, CorCinza);
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string),"%s Entrou no Servidor ",nome);
    SendClientMessageToAll(CorChatg, string);
    printf("[Login]%s Entrou no Servidor ",nome);
    TaLogado[playerid] = 0;
    TentativasdeLogar[playerid] = 0;
    JaSetoVida[playerid] = false;
    TaEspiando[playerid] = false;
    return true;
    }
    return 1;
    }

    public OnPlayerDisconnect(playerid, reason)
    {
    new string[128];
    GetPlayerName(playerid,nome,sizeof(nome));
    format(arquivo,sizeof(arquivo),Contas,nome);
    if(!dini_Exists(arquivo))
    {
    dini_Create(arquivo);
    }
    TaLogado[playerid] = 0;
    TentativasdeLogar[playerid] = 0;
    JaSetoVida[playerid] = false;
    TaEspiando[playerid] = false;
    if(IsPlayerInAnyVehicle(playerid))
    {
    new veiculo = GetPlayerVehicleID(playerid);
    VeiculoOcupado[veiculo] = false;
    }
    switch(reason)
    {
    case 0:
    {
    format(string, sizeof(string), "%s saiu do servidor. (Queda de Conexão)", nome);
    SendClientMessageToAll(CorBranco, string);
    TentativasdeLogar[playerid] = 0;
    SalvarDados(playerid);
    printf(string);
    }
    case 1:
    {
    format(string, sizeof(string), "%s saiu do servidor. (Saiu)", nome);
    SendClientMessageToAll(CorBranco, string);
    TentativasdeLogar[playerid] = 0;
    SalvarDados(playerid);
    printf(string);
    }
    case 2:
    {
    if(dini_Int(arquivo,"TaBanido") == 0)
    {
    format(string, sizeof(string), "%s saiu do servidor. (Kickado/Banido)", nome);
    SendClientMessageToAll(CorBranco, string);
    TentativasdeLogar[playerid] = 0;
    SalvarDados(playerid);
    printf(string);
    return true;
    }
    if(dini_Int(arquivo,"TaBanido") == 1)
    {
    format(string, sizeof(string), "%s saiu do servidor. (Kickado/Banido)", nome);
    SendClientMessageToAll(CorBranco, string);
    printf(string);
    return true;
    }
    }
    }
    return 1;
    }

    public OnPlayerSpawn(playerid)
    {
    SetPlayerColor(playerid, CorBranco);
    if(JaSetoVida[playerid] == false)
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    SetPlayerHealth(playerid, dini_Int(arquivo, "Vida"));
    JaSetoVida[playerid] = true;
    }
    if(JaSetoVida[playerid] == true)
    {
    SetPlayerHealth(playerid, 30);
    JaSetoVida[playerid] = true;
    }
    return 1;
    }

    public OnPlayerDeath(playerid, killerid, reason)
    {
    return 1;
    }

    public OnVehicleSpawn(vehicleid)
    {
    return 1;
    }

    public OnVehicleDeath(vehicleid, killerid)
    {
    return 1;
    }

    public OnPlayerText(playerid, text[])
    {
    UpperToLower(text);
    return 1;
    }

    public OnPlayerCommandPerformed(playerid, cmdtext[], success)
    {
    new string[80];
    if(!success) return SendClientMessage(playerid, CorBranco, "[SERVER] Comando não Reconhecido no [BSD].");
    printf("[COMANDO]%s: %s", nome, cmdtext);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(ComandoAtivado[i] == 1)
    {
    if(IsPlayerAdmin(i))
    {
    //Envia mensagem para todos os administradores online no momento (Rcon)
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "[CMD] %s digitou o comando: %s",nome, cmdtext);
    SendClientMessage(i, CorVerdeAqua, string);
    return true;
    }
    }
    }
    return true;
    }

    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    return 1;
    }

    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    VeiculoOcupado[vehicleid] = false;
    return 1;
    }

    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == 2) VeiculoOcupado[GetPlayerVehicleID(playerid)] = true;
    return 1;
    }

    public OnPlayerEnterCheckpoint(playerid)
    {
    return 1;
    }

    public OnPlayerLeaveCheckpoint(playerid)
    {
    return 1;
    }

    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    return 1;
    }

    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
    return 1;
    }

    public OnRconCommand(cmd[])
    {
    return 1;
    }

    public OnPlayerRequestSpawn(playerid)
    {
    if(TaLogado[playerid] == 0)
    {
    SendClientMessage(playerid, CorCinzaC, "Você não está Logado");
    return 0;
    }
    return 1;
    }

    public OnObjectMoved(objectid)
    {
    return 1;
    }

    public OnPlayerObjectMoved(playerid, objectid)
    {
    return 1;
    }

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    return 1;
    }

    public OnVehicleMod(playerid, vehicleid, componentid)
    {
    return 1;
    }

    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
    return 1;
    }

    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
    return 1;
    }

    public OnPlayerSelectedMenuRow(playerid, row)
    {
    return 1;
    }

    public OnPlayerExitedMenu(playerid)
    {
    return 1;
    }

    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
    return 1;
    }

    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    return 1;
    }

    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }

    public OnPlayerUpdate(playerid)
    {
    return 1;
    }

    public OnPlayerStreamIn(playerid, forplayerid)
    {
    return 1;
    }

    public OnPlayerStreamOut(playerid, forplayerid)
    {
    return 1;
    }

    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    return 1;
    }

    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
    return 1;
    }

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    static string[256];
    if(dialogid == DialogRegistro)
    {
    if(!response) return ShowPlayerDialog(playerid, DialogSaidaA, DIALOG_STYLE_MSGBOX, "Confirmar Saida","{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n...::: Confirmar Saida :::...\n\nVocê ainda não está registrado.\n Tem certeza que deseja sair do servidor ?\nPara sair clique em [SAIR]\nPara voltar clique em [VOLTAR]", "Sair", "Voltar");
    if(strlen(inputtext) <= 5)
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Bem vindo ao Brasil Start Destructions\nVocê ainda não possui registro em nossos sistemas\n\nNome: %s\n\nInsira uma senha abaixo para se Registrar:", nome);
    ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFCC00}- Registro -", string, "Registrar", "Sair");
    SendClientMessage(playerid, CorAmareloE, "{FFCC00}Senha Inválida...sua senha deve conter ao mínimo {FF0000}6 {FFCC00}caracteres...");
    SendClientMessage(playerid, CorAmareloE, "{FF0000}Lembre-se: {FFCC00}A senha diferência maiuscula de minuscula!");
    return true;
    }
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    dini_Create(arquivo);
    dini_Set(arquivo,"Senha", inputtext);
    dini_IntSet(arquivo,"Dinheiro",0);
    dini_FloatSet(arquivo,"Colete", 0);
    dini_IntSet(arquivo,"Level", 0);
    dini_IntSet(arquivo, "LeveldeProcurado", 0);
    SpawnPlayer(playerid);
    GivePlayerMoney(playerid, 150);
    SetPlayerHealth(playerid, 60);
    }
    if(dialogid == DialogLogin)
    {
    if(!response) return ShowPlayerDialog(playerid, DialogSaidaB, DIALOG_STYLE_MSGBOX, "Confirmar Saida","{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n...::: Confirmar Saida :::...\n\nVocê ainda não está Logado.\n Tem certeza que deseja sair do servidor ?\nPara sair clique em [SAIR]\nPara voltar clique em [VOLTAR]", "Sair", "Voltar");
    if(strlen(inputtext) <= 5)
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Seja Bem vindo novamente ao Brasil Start Destructions\nVocê já possui Registro\n\nNome: %s\n\nInsira sua senha para que possa viver:", nome);
    ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFCC00}- Login -", string, "Logar", "Sair");
    SendClientMessage(playerid, CorVerdeAqua, "Senha Inválida... Insira sua senha de seis ou mais caracteres");
    return true;
    }
    GetPlayerName(playerid, nome, sizeof(nome));
    format(arquivo, sizeof(arquivo), Contas, nome);
    if(!strcmp(inputtext, dini_Get(arquivo,"Senha"), false))
    {
    TimerContinuarPos[playerid] = SetTimerEx("ContinuarPosicao", 15000, false, "d", playerid);
    SendClientMessage(playerid,CorVerdeC,"Para continuar de sua ultima posição digite: /continuarpos");
    SendClientMessage(playerid,CorVerdeC,"Você tem 15 segundo para responder.");
    PodeContinuar[playerid] = 1;
    TaLogado[playerid] = 1;
    SpawnPlayer(playerid);
    }
    else
    {
    if(TentativasdeLogar[playerid] <= 2)
    {
    static msg[128];
    GetPlayerName(playerid, nome, sizeof(nome));
    TentativasdeLogar[playerid]++;
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Seja Bem vindo novamente ao Brasil Start Destructions\nVocê já possui Registro\n\nNome: %s\n\nInsira sua senha para que possa viver:", nome);
    ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFCC00}- Login -", string, "Logar", "Sair");
    SendClientMessage(playerid,CorVerdeAqua,"Senha Incorreta. Se você não acertar a sua senha você será kickado e seu ip salvo");
    format(msg, sizeof(msg), "%d de 3 tentativa(s)", TentativasdeLogar[playerid]);
    SendClientMessage(playerid, CorVerdeAqua, msg);
    return true;
    }
    if(TentativasdeLogar[playerid] >= 3)
    {
    SendClientMessage(playerid, CorVerdeAqua, "Você foi kickado por não inserir a senha correta depois de 3 tentativas");
    Kick(playerid);
    return true;
    }
    }
    }
    if(dialogid == DialogSaidaA)
    {
    if(response)
    {
    SendClientMessage(playerid, CorBranco, "Ok. você decidiu sair sem se registrar.");
    SendClientMessage(playerid, CorBranco, "Obrigado e volte sempre...");
    Kick(playerid);
    }
    else
    {
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Bem vindo ao Brasil Start Destructions\nVocê ainda não possui registro em nossos sistemas\n\nNome: %s\n\nInsira uma senha abaixo para se Registrar:", nome);
    ShowPlayerDialog(playerid, DialogRegistro, DIALOG_STYLE_INPUT, "{FFCC00}- Registro -", string, "Registrar", "Sair");
    }
    }
    if(dialogid == DialogSaidaB)
    {
    if(response)
    {
    SendClientMessage(playerid, CorBranco, "Ok. você decidiu sair sem se Logar.");
    SendClientMessage(playerid, CorBranco, "Obrigado e volte sempre...");
    Kick(playerid);
    }
    else
    {

    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "{0000CC}Nome {FFFFFF}do{006600} Servidor\n\n\n{FFFFFF}Olá. Seja Bem vindo novamente ao Brasil Start Destructions\nVocê já possui Registro\n\nNome: %s\n\nInsira sua senha para que possa viver:", nome);
    ShowPlayerDialog(playerid, DialogLogin, DIALOG_STYLE_INPUT, "{FFCC00}- Login -", string, "Logar", "Sair");
    }
    }
    if(dialogid == DialogAdmin)
    {
    if(!response) return SendClientMessage(playerid, CorCinzaC, "Solicitação de ajuda cancelada...");
    if(strlen(inputtext) <= 5) return SendClientMessage(playerid, CorAmareloE, "A solicitação de ajuda deve conter mais de 5 caracteres...");
    GetPlayerName(playerid, nome, sizeof(nome));
    format(string, sizeof(string), "[AJUDA]%s: %s", nome, inputtext);
    SendClientMessage(playerid, CorVerdeA, "Mensagem Enviada...");
    printf(string);
    for(new i = 0; i < MAX_PLAYERS; ++i)
    {
    if(IsPlayerAdmin(i))
    {
    SendClientMessage(i, CorVerdeA, string);
    }
    }

    }
    return 1;
    }

    forward ContinuarPosicao(playerid);

      Data/hora atual: Qua Nov 14, 2018 4:56 pm