[Pedido] Sistema de blindagem.
#1

Bom queria um sistema de blindagem que funcione o seguinte, o player digita /blindar ae aparece uma textdraw marcando a blindagem 100% quando ele blindar o veiculo, ae conforme ele for batendo o veiculo vai perdendo os pontos da blindagem ate chegar 0%, quando chegar no 0 ae comeca a gastar a lataria do veiculo que eu uso GetVehicleHealth, e isso ficarei muito agradecido se alguem poder me ajudar.

Observaзao: tem varios sistemas de blindagem que ja vi mas nenhum igual a esse que to pedindo, o do RedKil e parecido mas tentei adicionar no gm e nao deu certo e isso ae vlw.
Reply
#2

FS de Blindagem:

pawn Код:
#include <a_samp>

enum blindagem_info
{
    Blindagem,
    Text:BLINDAGEMTXT[MAX_VEHICLES],
}
new BlindagemInfo[MAX_VEHICLES][blindagem_info];
public OnPlayerCommandText(playerid, cmdtext[])
{
    new index, cmd[128];
    cmd = strtok(cmdtext, index);
    if(strcmp(cmd, "/blindar", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            Blindado(playerid);
        }
        return 1;
    }
    return 0;
}
public OnFilterScriptInit()
{
    for(new u; u != MAX_VEHICLES; ++u)
    {
        BlindagemInfo[u][BLINDAGEMTXT] = TextDrawCreate(201.000000,417.000000, "~n~BLINDAGEM:0%");
        TextDrawAlignment(BlindagemInfo[u][BLINDAGEMTXT], 0);
        TextDrawBackgroundColor(BlindagemInfo[u][BLINDAGEMTXT], 0x000000ff);
        TextDrawFont(BlindagemInfo[u][BLINDAGEMTXT], 1);
        TextDrawLetterSize(BlindagemInfo[u][BLINDAGEMTXT],0.299999,1.000000);
        TextDrawColor(BlindagemInfo[u][BLINDAGEMTXT], 0xffffffff);
        TextDrawSetOutline(BlindagemInfo[u][BLINDAGEMTXT], 1);
        TextDrawSetProportional(BlindagemInfo[u][BLINDAGEMTXT], 1);
        TextDrawSetShadow(BlindagemInfo[u][BLINDAGEMTXT], 1);
        BlindagemInfo[u][Blindagem] = 0;
    }
    return 1;
}
stock Blindado(playerid)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    BlindagemInfo[vehicleid][Blindagem] = 100;
    return 1;
}
public OnFilterScriptExit()
{

}
public OnPlayerUpdate(playerid)
{
    new string[60];
    new vehicleid = GetPlayerVehicleID(playerid);
    format(string,sizeof(string),"~n~BLINDAGEM:%d%%",BlindagemInfo[vehicleid][Blindagem]);
    TextDrawSetString(BlindagemInfo[vehicleid][BLINDAGEMTXT],string);
    return 1;
}
public OnVehicleDamageStatusUpdate(vehicleid, playerid)
{
    if(BlindagemInfo[vehicleid][Blindagem] >= 1)
    {
        new string[60];
        BlindagemInfo[vehicleid][Blindagem] --;
        RepairVehicle(vehicleid);
        format(string,sizeof(string),"~n~BLINDAGEM:%d%%",BlindagemInfo[vehicleid][Blindagem]);
        TextDrawSetString(BlindagemInfo[vehicleid][BLINDAGEMTXT],string);
    }
    return 1;
}
public OnPlayerStateChange(playerid,newstate,oldstate)
{
    if(newstate == PLAYER_STATE_DRIVER)
    {
        TextDrawShowForPlayer(playerid,BlindagemInfo[GetPlayerVehicleID(playerid)][BLINDAGEMTXT]);
    }
    return 1;
}
strtok(const string[], &index)
{
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
        index++;
    }
    new offset = index;
    new result[20];
    while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
    {
        result[index - offset] = string[index];
        index++;
    }
    result[index - offset] = EOS;
    return result;
}
Reply
#3

Ja tentei adicionar essa FS no gm e nao deu certo a textdraw nao aparece de geito algum.
Reply
#4

verifique seus textdraw's
poderб ter problema com algum e isso faz com que outros nao aparecam, eu ja passei por esse problema faz bastante tempo mas ainda lembro o quanto era mau nao poder adicionar coisas com textdraw
Reply
#5

Alguem me ajuda ae por favor.
Reply
#6

Bom queria um sistema de blindagem que funcione o seguinte, o player digita /blindar ae aparece uma textdraw marcando a blindagem 100% quando ele blindar o veiculo, ae conforme ele for batendo o veiculo vai perdendo os pontos da blindagem ate chegar 0%, quando chegar no 0 ae comeca a gastar a lataria do veiculo que eu uso GetVehicleHealth, e isso ficarei muito agradecido se alguem poder me ajudar.

Observaзao: tem varios sistemas de blindagem que ja vi mas nenhum igual a esse que to pedindo, o do RedKil e parecido mas tentei adicionar no gm e nao deu certo e isso ae vlw.
Reply
#7

https://sampforum.blast.hk/showthread.php?tid=364511

so que parece que ja e automatico nao tem essa de ativar comando .

Edit

nao havia lido s0bre a parte que voзe ja viu esse mais se voзe nao esta dando conta de adicionar um simples fs no
gamemode eu lamento.
Reply
#8

Quote:
Originally Posted by Q.I
Посмотреть сообщение
https://sampforum.blast.hk/showthread.php?tid=364511

so que parece que ja e automatico nao tem essa de ativar comando .

Edit

nao havia lido s0bre a parte que voзe ja viu esse mais se voзe nao esta dando conta de adicionar um simples fs no
gamemode eu lamento.
Nao e que nao dei conta eu adicionei as parada tudo certim, mas a textdraw nao quis aparecer so aparece quando eu coloco a fs,
Reply
#9

Deve ter algum draw bugando outro, tenta criar seu prуprio vale mais a pena do que pegar pronto, se der erro ai vem aqui e tira as duvidas depois de ter pesquisado!
Reply
#10

o freak, coloca a fs do redkill, e em vez de ativar automбtico configura para quando usar o comando, vc sabe pawn suficiente pra isso nй?
se с souber eu arrumo pra vc
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)