Contador (Placar) de morte bugado
#1

Oiie
Tipo a bronca ea seguinte meu contador de morte ta bugado e +/- isso
qdo o cara da gang " A " mata um, conta um ponto no placar para a gang " A "
mais quando o cara da gang " B " mata uma pessoa cona no placar um ponto para a gang " A " '-'

q bagui sinistro

pawn Код:
if(gTeam[killerid] == TEAM_RECIFE)
    {
        recifescore += 1;
    }
    else if(gTeam[killerid] == TEAM_OLINDA)
    {
        olindascore += 1;
    }
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
pawn Код:
public AtualizandoPlacar()
{
    new string[256];
    format(string,sizeof(string)," ~g~Placar Geral~w~: ~R~Recife + Interior ~g~%d ~y~X ~g~%d ~B~Paulista + Olinda         ~w~Equipe [BDM] Brinque com uma equipe dessa !",recifescore, olindascore);
    TextDrawSetString(scores, string);
}

oque ta errado ?

e bom citar que na hora de copilar
nгo da nen um erro '-'
Reply
#2

O problema estб nas variбveis TEAM_OLINDA e TEAM_RECIFE.


Poste as definiзхes das mesmas, ou seja, qual й o valor delas.


Tambйm poste como voce faz para que a variбvel gTeam fique igual б TEAM_OLINDA ou igual б TEAM_RECIFE.
Reply
#3

seria isso ?

pawn Код:
#define TEAM_RECIFE 0
#define TEAM_OLINDA 1
pawn Код:
static gTeam[MAX_PLAYERS];
pawn Код:
new recifescore;
new olindascore;
Reply
#4

Quote:
Originally Posted by EoProzinhO
Посмотреть сообщение
seria isso ?

pawn Код:
#define TEAM_RECIFE 0
#define TEAM_OLINDA 1
pawn Код:
static gTeam[MAX_PLAYERS];
pawn Код:
new recifescore;
new olindascore;
Isso mesmo, troque para:

pawn Код:
#define TEAM_RECIFE 10
#define TEAM_OLINDA 11

Se mesmo assim continuar bugando, poste aqui o cуdigo que voce usa para colocar um jogador no TEAM_RECIFE ou TEAM_OLINDA.

Espero ter ajudado
Reply
#5

FUUUUUUUUUUUUUUUUUUUUUU

EU BUTEI E DEU FAIL, AGORA NUN CONTA AS MORTE PRA NEN UM TIME :@
EU USO ISSO PRA POR NOS TEAM

ESSE NO INICIO QDO O KARA SE REGISTRA

pawn Код:
PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
                ShowPlayerDialog(playerid, 60, DIALOG_STYLE_LIST, "Bem vindo, escolha uma Gang:", "Gang's de RECIFE\nGang's de Olinda + Paulista", "Selecionar", "");
ESSE LA NO FINAL

pawn Код:
if(levelrecife[playerid] >= 1 || PlayerInfo[playerid][pRECIFE] >= 1)
    {
    //RECIFE
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,-2815.6680,905.3254,44.9172);
    GameTextForPlayer(playerid,"Gang's do RECIFE + Interior", 1000,1);
    GivePlayerWeapon(playerid,24,999999);
    GivePlayerWeapon(playerid,27,999999);
    GivePlayerWeapon(playerid,29,999999);
    GivePlayerWeapon(playerid,30,999999);
    GivePlayerWeapon(playerid,34,999999);
    GivePlayerWeapon(playerid,0,999999);
    SetPlayerArmour(playerid, 100.0);
    SetPlayerColor(playerid, 0x33AA33AA);
    SetPlayerSkin(playerid, 299);
    SetPlayerHealth(playerid, 100.0);
    SetPlayerVirtualWorld(playerid, 0);
    TogglePlayerControllable(playerid,1);
    SendClientMessage(playerid, COLOR_WHITE, "Use /comandosrecife, para ver os comandos de sua Gang !");
    SendClientMessage(playerid, COLOR_RED, " Seja bem vindo, ao ultimo dia do resto de suas vidas ! (h)!");
    levelrecife[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    dini_IntSet(udb_encode(sendername), "levelrecife", levelrecife[playerid]);
    }

    if(levelolinda[playerid] >= 1 || PlayerInfo[playerid][pOLINDA] >= 1)
    {
    // olinda
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,-1644.0254,1204.4635,7.2500);
    GameTextForPlayer(playerid,"Gang's de OLINDA + Paulista!", 1000,1);
    GivePlayerWeapon(playerid,24,999999);
    GivePlayerWeapon(playerid,27,999999);
    GivePlayerWeapon(playerid,29,999999);
    GivePlayerWeapon(playerid,30,999999);
    GivePlayerWeapon(playerid,34,999999);
    GivePlayerWeapon(playerid,0,999999);
    SetPlayerArmour(playerid, 100.0);
    SetPlayerColor(playerid, COLOR_BLUE);
    SetPlayerSkin(playerid, 60);
    SetPlayerHealth(playerid, 100.0);
    SetPlayerVirtualWorld(playerid, 0);
    TogglePlayerControllable(playerid,1);
    SendClientMessage(playerid, COLOR_WHITE, "Use /comandosolinda, ou /comandospaulista  para ver os comandos de sua Gang !");
    SendClientMessage(playerid, COLOR_BLUE, "A GUERRA SO TERMINA, QUANDO O ULTIMO HOMEN MORRE (cebola TOIC )!");
    levelpaulista[playerid] = 1;
    levelolinda[playerid] = 1;
    GetPlayerName(playerid, sendername, sizeof(sendername));
    dini_IntSet(udb_encode(sendername), "levelolinda", levelolinda[playerid]);
    }
Reply
#6

Ainda nгo foi isso =/

Era pra postar a respeito da variбvel gTeam.


Bem, acho que isto deve resolver o seu problema, se nгo resolver, espere outro membro do fуrum para ajudб-lo:



Troque:

pawn Код:
if(gTeam[killerid] == TEAM_RECIFE)
    {
        recifescore += 1;
    }
    else if(gTeam[killerid] == TEAM_OLINDA)
    {
        olindascore += 1;
    }
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);

Por:

pawn Код:
if(levelrecife[playerid] >= 1)
    {
        recifescore += 1;
    }
    else if(levelolinda[playerid] >= 1)
    {
        olindascore += 1;
    }
    SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);

Espero ter ajudado
Reply
#7

errados.
pawn Код:
if(gTeam[killerid] == TEAM_RECIFE) recifescore ++;
if(gTeam[killerid] == TEAM_OLINDA) olindascore ++;
pawn Код:
public AtualizandoPlacar()
{
    new string[256];
    format(string,sizeof(string)," ~g~Placar Geral~w~: ~R~Recife + Interior ~g~%d ~y~X ~g~%d ~B~Paulista + Olinda         ~w~Equipe [BDM] Brinque com uma equipe dessa !",3, 2);
    ShowAndSetStringInTextDraw(scores, string);
    return true;
}
Bote no final do seu gm:

pawn Код:
stock ShowAndSetStringInTextDraw(Text:textdawid, textu[])
{
    TextDrawSetString(textdawid, textu);
    TextDrawShowForAll(textdawid);
    return 1;
}
Modo de usar:

pawn Код:
ShowAndSetStringInTextDraw(seutexdraw, "[iPs]Team Owna");
Reply
#8

Acho que tu coloco errado
pawn Код:
public AtualizandoPlacar()
{
    new string[256];
    format(string,sizeof(string)," ~g~Placar Geral~w~: ~R~Recife + Interior ~g~%d ~y~X ~g~%d ~B~Paulista + Olinda         ~w~Equipe [BDM] Brinque com uma equipe dessa !",recifescore+interiorscore, olindascore+paulistascore);
    ShowAndSetStringInTextDraws(lal, string);
    return true;
}
No caso seria

recifescore+interiorscore, olindascore+paulistascore

Porque ele quer somar o recife + interior...
Reply
#9

Quote:
Originally Posted by Ricop522
Посмотреть сообщение
Acho que tu coloco errado
pawn Код:
public AtualizandoPlacar()
{
    new string[256];
    format(string,sizeof(string)," ~g~Placar Geral~w~: ~R~Recife + Interior ~g~%d ~y~X ~g~%d ~B~Paulista + Olinda         ~w~Equipe [BDM] Brinque com uma equipe dessa !",recifescore+interiorscore, olindascore+paulistascore);
    ShowAndSetStringInTextDraws(lal, string);
    return true;
}
No caso seria

recifescore+interiorscore, olindascore+paulistascore

Porque ele quer somar o recife + interior...
nen e champz. e pq eu to com esse bug do placar
e to sem tempo de criar +2 gang
qdo eu normalizar eu crio as duas

ai no caso o interior ta como se fosse recife
e paulista como se fosse olinda no caso

RECIFE + INTERIOR
OLINDA + PAULISTA

INTENDEU ? RS
Reply
#10

Quote:
Originally Posted by EoProzinhO
Посмотреть сообщение
nen e champz. e pq eu to com esse bug do placar
e to sem tempo de criar +2 gang
qdo eu normalizar eu crio as duas

ai no caso o interior ta como se fosse recife
e paulista como se fosse olinda no caso

RECIFE + INTERIOR
OLINDA + PAULISTA

INTENDEU ? RS
"You're rly making a mountain out of a molehill."

___________________
Ok, nгo entendi basicamente nada do que vocк quer, entгo, vo fazer o que presumo que seja:
  • Do Inicio: Topo do GM
    pawn Код:
    //--Equipes--//
    #define TEAM_RECIFE 0
    #define TEAM_OLINDA 1
P.s: Vou deixar de fora funзхes bбsicas de um "GangWar", como a definiзгo das "Skins" na seleзгo de classe, e as cores. Realmente acredito que vocк jб tenha acrescentado. Lembrando que tais funзхes tambйm podem estar relacionadas com o Bug. (Digamos que vocк selecionou os personagens na classe de seleзгo de forma incorreta, e 1 personagem da equipe 0 й na verdade da equipe 1, o OnPlayerDeath vai ler e imprimir os pontos de forma correta, jogador 0 para equipe 0, jogador 1 para equipe 1, mais para vocк vai estar errado). E claro, que vocк definiu ambos as pontuaзхes para "0" na inicializaзгo do Mod.
  • Criando suas variбveis GLOBAIS: Se й global й obvio que й no topo
    pawn Код:
    new gTeam[MAX_PLAYERS], recifescore=0, olindascore=0;
    //Vocк poderia usar "Packed Strings" para reduzir o tamanho de MAX_PLAYERS, ja que acredito
    //que seu servidor nгo tenha mais de 150 jogadores. Porйm, isso nгo vem ao caso.


    //Acredito que vocк ja tenha feito isso tambйm:
    //OnPlayerConnect:
    TextDrawShowForPlayer(playerid, scores);
    //E seus "seguidores", como "OnPlayerDisconnect"...
    //Entгo, vamos continuar com a funзгo que, de acordo com vocк, esta causando os problemas.
  • Indicar o servidor as mortes: OnPlayerDeath
    pawn Код:
    if( gTeam[playerid] == TEAM_RECIFE )
    olindascore ++;

    if( gTeam[playerid] == TEAM_OLINDA )
    recifescore ++;

    AtualizandoPlacar();
  • Atualizaзгo do TextDraw: ...
    pawn Код:
    public AtualizandoPlacar()
    {
    new string[140]; //NГO EXISTE A NECESSIDADE DE 256 CЙLULAS.
    format(string,sizeof(string),
    " ~g~Placar Geral~w~: ~R~Recife + Interior ~g~%d ~y~X ~g~%d ~B~Paulista + Olinda         ~w~Equipe [BDM] Brinque com uma equipe dessa !" ,recifescore,olindascore);
    TextDrawSetString(scores, string);
    return 1;
    }
P.s: Script nгo testado.
Reply


Forum Jump:


Users browsing this thread: 5 Guest(s)