[PEDIDO]Sistema de mensagens quando player morre
#1

oi gente queria pedir um cуdigo para colocar no meu gamemode,que substitui os нcones que aparecem ao lado,mostrando quem matou e apontando a arma que matou para o jogar,e tambйm aqueles нcones da caveira,de quando morre de helicуptero,etc. eu queria substituir tudo por mensagens,por exemplo,quando alguйm morrer de deserte eagle: fulano tal matou sicrano tal com uma desert eagle. tipo se o cara morre de helicуptero: fulano tal morreu na hйlice de um helicуptero. se morre de acidente: fulano tal morreu de acidente.
aguardo aк ajuda gente.
eu vi isso em um server americano
to no aguardo do cуdigo,desde jб muito obrigado!
Reply
#2

Utilize OnPlayerDeath.

Exemplo:

pawn Код:
new stringformat[ 200 ], nomeplayer1[MAX_PLAYER_NAME], nomeplayer2[MAX_PLAYER_NAME];
GetPlayerName(playerid, nomeplayer1, sizeof(nomeplayerid1));
GetPlayerName(killerid, nomeplayer2, sizeof(nomeplayerid2));
new ArmaMorte = GetPlayerWeapon(killerid);
format(stringformat, sizeof(stringformat), "[AVISO DE MORTE] %s foi morto por %s. Arma: %s", nomeplayer1, nomeplayer2, ArmaMorte);
SendClientMessageToAll(-1, stringformat);
Reply
#3

pawn Код:
//public OnPlayerDeath
//{
    new pharrel_s[110 char],pharrel_r[25],PlayerName[24];
    GetPlayerName(playerid, PlayerName[0], 24);
    if(killerid == INVALID_PLAYER_ID) format(pharrel_s, 42,"%s morreu. Motivo: ", PlayerName[0]);
    else
    {
        new PlayerName2[24];
        GetPlayerName(killerid, PlayerName2, 24);
        format(pharrel_s, 78,"%s foi assassinado por %s. Modo/Arma: ", PlayerName[0], PlayerName[1]);
    }
    switch(reason)
    {
       case 0..46: format(pharrel_r, 25, ReturnWeaponName(pharrel_r));
       case 49: pharrel_r = "Atropelamento";
       case 50: pharrel_r = "Helice do Helicoptero";
       case 51: pharrel_r = "Explosгo";
       case 53,54: pharrel_r = "Suicidio";
    }
    strcat(pharrel_s, pharrel_r);
    SendClientMessageToAll(0xAA0000, pharrel_r);
    //resto do seu OnPlayerDeath
    //return 1;
//}


//fim do seu GM
stock ReturnWeaponName(weaponid)
{
    new strii[24];
    switch(weaponid)
    {
        case 0: strii = "Soco";
        case 1: strii = "Soqueira";
        case 2: strii = "Taco de Golf";
        case 3: strii = "Cacetete";
        case 4: strii = "Faca";
        case 5: strii = "Taco de Baseball";
        case 6: strii = "Pб";
        case 7: strii = "Taco de Sinuca";
        case 8: strii = "Espada";
        case 9: strii = "Motocerra";
        case 10: strii = "Dildo Roxo";
        case 11: strii = "Dildo Vibrador";
        case 12: strii = "Dildo Branco";
        case 13: strii = "Dildo Elйtrico";
        case 14: strii = "Buque de Flores";
        case 15: strii = "Bengala";
        case 16: strii = "Granada Expansiva";
        case 17: strii = "Granada de Gбs";
        case 18: strii = "Coquetel Molotov";
        case 22: strii = "Pistola 9mm";
        case 23: strii = "9mm com Silencioso";
        case 24: strii = "Desert Eagle";
        case 25: strii = "12 Punheteira";
        case 26: strii = "Sawn-Off 12";
        case 27: strii = "12 de Combate";
        case 28: strii = "Micro-SMG";
        case 29: strii = "Mp5";
        case 30: strii = "Kalashnikov AK-47";
        case 31: strii = "M4";
        case 32: strii = "Tec-9";
        case 33: strii = "Rifle";
        case 34: strii = "Sniper";
        case 35: strii = "Bazooka";
        case 36: strii = "Bazooka HS";
        case 37: strii = "Lanзa-Chamas";
        case 38: strii = "Minigun";
        case 39: strii = "Explosivo Remoto";
        case 40: strii = "Detonador";
        case 41: strii = "Lata de Grafitti";
        case 42: strii = "Extintor";
        case 43: strii = "Camera Fotogrбfica";
        case 44: strii = "Oculos de Visгo Noturna";
        case 45: strii = "Oculos de Visгo Termica";
        case 46: strii = "Paraquedas";
        default: strii = "Invбlido";
    }
    return strii;
}
Reply
#4

Tire o SendDeathMessage do seu gm e coloque:
pawn Код:
new string[128], nomeplayer1[24], nomeplayer2[24];
GetPlayerName(playerid, nomeplayer1, sizeof(nomeplayerid1));
GetPlayerName(killerid, nomeplayer2, sizeof(nomeplayerid2));
new ArmaMorte[30];
GetPlayerWeaponName(killerid,ArmaMorte,sizeof(ArmaMorte));
format(stringformat, sizeof(stringformat), "[AVISO DE MORTE] %s foi morto por %s. Arma: %s", nomeplayer1, nomeplayer2, ArmaMorte);
SendClientMessageToAll(-1, stringformat);
codigo reformulado.
Reply
#5

parrel,no caso o seu code ta dando 5 erros:
pawn Код:
(2895) : error 035: argument type mismatch (argument 1)
(2922) : error 012: invalid function call, not a valid address
(2922) : error 001: expected token: ";", but found ")"
(2922) : error 029: invalid expression, assumed zero
(2922) : fatal error 107: too many error messages on one line
O que й isso? Ah,e este seu cуdigo retira os нcones que aparecem ao lado direito do player?
Aguardo resposta.
Reply
#6

Retire isso do OnPlayerDeath

pawn Код:
SendDeathMessage(killerid,playerid,reason);
Reply
#7

blz arakuta,mas ainda tem que resolver o cуdigo do pharrel,que realmente tб parecendo mt bom,mas ta dando erro.
Reply
#8

Acha a linha:
pawn Код:
case 0..46: format(pharrel_r, 25, ReturnWeaponName(pharrel_r));
e substitui por:
pawn Код:
case 0..46: format(pharrel_r, 25, ReturnWeaponName(reason));
Reply
#9

Quote:
Originally Posted by Sergio_MOW
Посмотреть сообщение
Tire o SendDeathMessage do seu gm e coloque:
pawn Код:
new string[128], nomeplayer1[24], nomeplayer2[24];
GetPlayerName(playerid, nomeplayer1, sizeof(nomeplayerid1));
GetPlayerName(killerid, nomeplayer2, sizeof(nomeplayerid2));
new ArmaMorte[30];
GetPlayerWeaponName(killerid,ArmaMorte,sizeof(ArmaMorte));
format(stringformat, sizeof(stringformat), "[AVISO DE MORTE] %s foi morto por %s. Arma: %s", nomeplayer1, nomeplayer2, ArmaMorte);
SendClientMessageToAll(-1, stringformat);
codigo reformulado.
O_O'
Reply
#10

Quote:
Originally Posted by Sergio_MOW
Посмотреть сообщение
codigo reformulado.
#euri

Pharrel,ainda estб dando erro,tб dando 4 erros:
pawn Код:
(2922) : error 012: invalid function call, not a valid address
(2922) : error 001: expected token: ";", but found ")"
(2922) : error 029: invalid expression, assumed zero
(2922) : fatal error 107: too many error messages on one line
Aguardo sua ajuda!
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)