[Ajuda] Dinheiro secundбrio e GangZones
#1

1є dinheiro secundбrio, queria colocar um dinheiro secundбrio no meu GM mais nгo sei como fazer se alguйm tiver um tutorial passa ai.(pesquisei e nгo achei algo que valesse a pena tentar).

2° GangZones, nгo й como criar eu ja fiz as GangsZones de boa com comando e tudo mais! mas o problema й que eu usei o Xtreme para pegar as Coordenadas ai fica algo muito sem nexo, gostaria de saber se tem outra forma de pegar essas coordenadas de focar que fique certinho queria seguir o alinhamento do Map coisa que no Xtreme as vezes й impossнvel.
Reply
#2

Quanto ao primeiro pedido:
Aqui estб um sistema de Cash Points, ele foi feito para ser comprado com money do GTA, mas vocк pode alterar para que seja a moeda fixa do seu servidor.
Link: https://sampforum.blast.hk/showthread.php?tid=369308

Quanto ao segundo pedido:
Nгo entendi direito mas acho que й isso que vc quer:
https://sampforum.blast.hk/showthread.php?tid=222283
https://sampwiki.blast.hk/wiki/Areacheck
Reply
#3

Tem um programa que faz as gang zones feito pelo RyDeRґ e

Pasterbin ( Ai manolo e sу compila e usar o comando /gzone logado na rcon )
pawn Код:
#include <a_samp>

#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1  // Credits go to DracoBlue

// Message Colors
#define COLOR_ERROR             0xFB0000FF
#define COLOR_MSG               0xFFFFFF00

// GangZone Colors
#define BLACK                   0x000000C7
#define WHITE                   0xFFFFFFBE
#define ORANGE                  0xFF8000B8
#define RED                     0xFF0000C7
#define BLUE                    0x0000FFC5
#define VIOLET                  0x8000FFC9
#define GREEN                   0x00FF00D0
#define YELLOW                  0xFFFF00CC
#define PINK                    0xFF80FFC7
#define SEABLUE                 0x5BB9E6CA
#define BROWN                   0x562C2CD2

// Max Zones You Can Create
#define MAX_ZONES               100

new
    bool: GangZone[MAX_PLAYERS],
    bool: Spawned[MAX_PLAYERS],
    bool: GetPos[MAX_PLAYERS],
    CreatedZone[MAX_ZONES],
    gColor,
    Float: pMaxX = 0.0,
    Float: pMaxY = 0.0,
    Float: pMinX = 0.0,
    Float: pMinY = 0.0,
    Float: pZ = 0.0,
    gCount;

public OnFilterScriptInit()
{
    print("---------------------------------------");
    print(" GangZone Creator by RyDeR - Loaded - ");
    print("---------------------------------------");
    return 1;
}

public OnFilterScriptExit()
{
    new i;
    while(i != MAX_PLAYERS)
    {
        Spawned[i] = false;
        GangZone[i] = false;
        ++i;
    }
    new g;
    while(g != MAX_ZONES)
    {
        --CreatedZone[g];
        --g;
    }
    return 1;
}

dcmd_gzone(playerid, params[])
{
    #pragma unused params
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_ERROR, ">> Only the server owner can make gangzones!");
    if(Spawned[playerid] == false) return SendClientMessage(playerid, COLOR_ERROR, ">> You didn't spawn yet!");
    if(GangZone[playerid] == true) return SendClientMessage(playerid, COLOR_ERROR, ">> You are already creating a gangzone!");
    if(IsPlayerInAnyVehicle(playerid)) RemovePlayerFromVehicle(playerid);
    ShowDefaultDialog(playerid);
    return 1;
}

ShowDefaultDialog(playerid)
{
    return ShowPlayerDialog(playerid, 9540, DIALOG_STYLE_LIST, "GangZone Creator by RyDeR", "Create Gangzone", "Select", "Exit");
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch(dialogid)
    {
        case 9540:
        {
            if(response == 0) return 1;
            switch(listitem)
            {
                case 0:
                {
                    ShowPlayerDialog(playerid, 9541, DIALOG_STYLE_LIST, "Choose the color of the gangzone", "Black\nWhite\nOrange\nRed\nBlue\nViolet\nGreen\nYellow\nPink\nSeablue\nBrown", "Select", "Back");
                }
            }
        }
        case 9541:
        {
            if(response == 0) return ShowDefaultDialog(playerid);
            switch(listitem)
            {
                case 0:  gColor = BLACK;
                case 1:  gColor = WHITE;
                case 2:  gColor = ORANGE;
                case 3:  gColor = RED;
                case 4:  gColor = BLUE;
                case 5:  gColor = VIOLET;
                case 6:  gColor = GREEN;
                case 7:  gColor = YELLOW;
                case 8:  gColor = PINK;
                case 9:  gColor = SEABLUE;
                case 10: gColor = BROWN;
            }
            ShowPlayerDialog(playerid, 9542, DIALOG_STYLE_MSGBOX, "Gangzone Info", "GangZone Created! Use arrow keys to make the zone bigger or less\nUsing Fire Key + Arrow keys you minus the height or width.\nPress enter when you are done!", "Agree", "Back");
        }
        case 9542:
        {
            if(response == 0) return ShowPlayerDialog(playerid, 9541, DIALOG_STYLE_LIST, "Choose the color of the gangzone", "Black\nWhite\nOrange\nRed\nBlue\nViolet\nGreen\nYellow\nPink\nSeablue\nBrown", "Select", "Back");
            GangZone[playerid] = true;
            GetPos[playerid] = false;
        }
        case 9545:
        {
            if(response == 0)
            {
                GangZoneDestroy(GangZone[gCount]);
                return 1;
            }
            new
                string[128],
                string2[256],
                File:SaveIt;

            if(!strlen(inputtext)) return ShowPlayerDialog(playerid, 9546, DIALOG_STYLE_MSGBOX, "Error", "You have to give a name to save it.", "Try again", "Don't Save");
            format(string, 128, "%s.rZone", inputtext);
            format(string2, sizeof(string2), "//At The Top Of The Script:\r\nnew %s;\r\n\r\n//Under OnGameModeInit\r\n%s = GangZoneCreate(%f, %f, %f, %f);\r\n\r\n//Under OnPlayerSpawn:\r\nGangZoneShowForPlayer(playerid, %s, %d);", inputtext, inputtext, pMinX, pMinY, pMaxX, pMaxY, inputtext, gColor);
            SaveIt = fopen(string, io_write);
            fwrite(SaveIt, string2);
            fclose(SaveIt);
            ShowPlayerDialog(playerid, 9547, DIALOG_STYLE_MSGBOX, "Progess Complete!", "Your gangzone has been saved. Check the scriptfiles directory!", "Another", "Exit");
            new
                g;
               
            while(g <sizeof(gCount))
            {
                ++CreatedZone[g];
                ++g;
            }
        }
        case 9546:
        {
            if(response == 0)
            {
                GangZoneDestroy(GangZone[gCount]);
                return 1;
            }
            ShowPlayerDialog(playerid, 9545, DIALOG_STYLE_INPUT, "Save or delete zone", "To save this give the name for it.\nIf you want to delete this click on 'exit'", "Save", "Delete");
        }
        case 9547:
        {
            if(response == 0) return 1;
            ShowDefaultDialog(playerid);
        }
    }
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    dcmd(gzone, 5, cmdtext);
    return 0;
}

public OnPlayerUpdate(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        if(GangZone[playerid] == true)
        {
            new
                Keys,
                UpDown,
                LeftRight;
               
            if(GetPos[playerid] == false) GetPlayerPos(playerid, pMaxX, pMaxY, pZ), GetPlayerPos(playerid, pMinX, pMinY, pZ), GetPos[playerid] = true;
            GetPlayerKeys(playerid, Keys, UpDown, LeftRight);
            TogglePlayerControllable(playerid, false);
           
            if(LeftRight == KEY_LEFT)
            {
                pMinX -= 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(LeftRight & KEY_LEFT && Keys & KEY_FIRE)
            {
                pMinX += 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(LeftRight == KEY_RIGHT)
            {
                pMaxX += 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(LeftRight & KEY_RIGHT && Keys & KEY_FIRE)
            {
                pMaxX -= 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(UpDown == KEY_UP)
            {
                pMaxY += 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(UpDown & KEY_UP && Keys & KEY_FIRE)
            {
                pMaxY -= 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(UpDown == KEY_DOWN)
            {
                pMinY -= 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(UpDown & KEY_DOWN && Keys & KEY_FIRE)
            {
                pMinY += 8.0;
                GangZoneDestroy(CreatedZone[gCount]);
                CreatedZone[gCount] = GangZoneCreate(pMinX, pMinY, pMaxX, pMaxY);
                GangZoneShowForPlayer(playerid, CreatedZone[gCount], gColor);
            }
            else if(Keys & KEY_SECONDARY_ATTACK)
            {
                TogglePlayerControllable(playerid, true);
                GangZone[playerid] = false;
                GetPos[playerid] = false;
                ShowPlayerDialog(playerid, 9545, DIALOG_STYLE_INPUT, "Save or delete zone", "To save this give the name for it.\nIf you want to delete this click on 'exit'", "Save", "Delete");
            }
        }
    }
    return 1;
}

public OnPlayerConnect(playerid)
{
    GangZone[playerid] = false;
    Spawned[playerid] = false;
    GetPos[playerid] = false;
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    GangZone[playerid] = false;
    Spawned[playerid] = false;
    GetPos[playerid] = false;
    GangZoneDestroy(GangZone[gCount]);
    return 1;
}

public OnPlayerSpawn(playerid)
{
    Spawned[playerid] = true;
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    Spawned[playerid] = false;
    return 1;
}
Reply
#4

@AnonymouSs o primeiro й isso mesmo VLW, mais o segundo nгo й isso, й o seguinte quando vocк cria a GZ usando o Xtreme vocк pega seleciona a area que quer com GZ ai й um quadrado que na maioria das vezes nгo ta alinhado devido ao MAP do GTA eu queria uma outra forma de vez ser o Xtreme eu li uma vez em topico que nгo acho mais que o cara pegava a posiзгo com o /save pegava umas 3 a 4 posiзгo nгo me lembro ai fazia uma junзгo com elas e formava o GZ quero apenas fazer a posiзгo do GZ.
Reply
#5

Quote:
Originally Posted by StrondaXxT
Посмотреть сообщение
@AnonymouSs o primeiro й isso mesmo VLW, mais o segundo nгo й isso, й o seguinte quando vocк cria a GZ usando o Xtreme vocк pega seleciona a area que quer com GZ ai й um quadrado que na maioria das vezes nгo ta alinhado devido ao MAP do GTA eu queria uma outra forma de vez ser o Xtreme eu li uma vez em topico que nгo acho mais que o cara pegava a posiзгo com o /save pegava umas 3 a 4 posiзгo nгo me lembro ai fazia uma junзгo com elas e formava o GZ quero apenas fazer a posiзгo do GZ.
Cara usa o criador do RyDeRґ facilita de mais
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)