SA-MP Forums Archive
respawn - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: respawn (/showthread.php?tid=278946)



respawn - chucho - 24.08.2011

hola tengo una pequeсa duda resulta que cuando a un jugador lo matan algunas ocaciones no vuelve a respawnear que podra server espero y me ayuden gracias

esto es loq ue tengo en la linea de codigo lo siento

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    IsInShml[playerid] = 0;

    if(killerid != INVALID_PLAYER_ID)
      {

      //[PARAMETROS PARA EL ASESINO]
       GivePlayerMoney(killerid, GANANCIA_MUERTE);a.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);

       SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
       ResetPlayerWeapons(playerid);
       GivePlayerMoney(playerid,- PERDIDA_MUERTE);
       SetPlayerWantedLevel(playerid,0);

       Spawn[playerid]= 1;

    }

    SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
    ResetPlayerWeapons(playerid);
    GivePlayerMoney(playerid, -PERDIDA_MUERTE);
    SendDeathMessage(killerid, playerid, reason);
    Spawn[playerid]= 1;

    new
    name[24],
    string[71];

    Kills[playerid] = 0;
    if(killerid != INVALID_PLAYER_ID)
    {
        Kills[killerid] ++;
        GetPlayerName(killerid, name, sizeof(name));
        switch(Kills[killerid])
        {
            case 2:
            {
                format(string, sizeof(string), "%s)", name);
                SendClientMessageToAll(COLOR_GREEN2, string);
                GivePlayerMoney(killerid,2500);
            }
            case 3:
            {
                format(string, sizeof(string), "%s )", name);
                SendClientMessageToAll(COLOR_GREEN2, string);
                GivePlayerMoney(killerid,3500);
            }
            case 5:
            {
                format(string, sizeof(string), "%s T", name);
                SendClientMessageToAll(COLOR_AMARILLO, string);
                GivePlayerMoney(killerid,4000);
            }
            case 8:
            {
                format(string, sizeof(string), "%s E", name);
                SendClientMessageToAll(COLOR_AMARILLO, string);
                GivePlayerMoney(killerid,5500);
            }
            case 12:
            {
                format(string, sizeof(string), "%s )", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,6500);
            }
            case 18:
            {
                format(string, sizeof(string), "%s le! (", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,7500);
            }
            case 25:
            {
                format(string, sizeof(string), "%sal! ", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,8500);
            }
            case 35:
            {
                format(string, sizeof(string), "%s (+ 12000)", name);
                SendClientMessageToAll(COLOR_ROJO2, string);
                GivePlayerMoney(killerid,12000);
            }
        }
    }

    for(new i=0; i<19; i++) TextDrawHideForPlayer(playerid,HealthBar[i]);



        if(Team[playerid] != -1){
        SetTimerEx("StopFlash", 120000, false, "i", Team[playerid]);
        return GangZoneFlashForAll(Gang[Team[playerid]][Zone], Gang[Team[killerid]][Flash]);
    }return 1;
}

forward StopFlash(gangid);
public StopFlash(gangid)
{
    GangZoneStopFlashForAll(Gang[gangid][Zone]);
        return 1;
   }



Re: respawn - dis77urbio - 24.08.2011

Te recomiendo que cuando tengas un problema, postees toda la callback donde tengas el problema y asi poder ayudarte. En este caso OnPlayerDeath


Respuesta: respawn - TiNcH010 - 24.08.2011

Exacto.
Tambiйn puede setear una variable cuando el jugador muere (OnPlayerDeath) y al spawnear (OnPlayerSpawn) "active" esa tal variable y bugea.
O puede ser otro bug tambien, por que no xD


Respuesta: respawn - chucho - 24.08.2011

ya puse los codigos


Re: respawn - Mr.GeEk - 24.08.2011

Pruebalo asн.. y me dices
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    IsInShml[playerid] = 0;

    if(killerid != INVALID_PLAYER_ID)
      {

      //[PARAMETROS PARA EL ASESINO]
       GivePlayerMoney(killerid, GANANCIA_MUERTE);a.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);

       SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
       ResetPlayerWeapons(playerid);
       GivePlayerMoney(playerid,- PERDIDA_MUERTE);
       SetPlayerWantedLevel(playerid,0);

    }

    SetPlayerScore(playerid,GetPlayerScore(playerid)-1);
    ResetPlayerWeapons(playerid);
    GivePlayerMoney(playerid, -PERDIDA_MUERTE);
    SendDeathMessage(killerid, playerid, reason);
    Spawn[playerid]= 1;

    new
    name[24],
    string[71];

    Kills[playerid] = 0;
    if(killerid != INVALID_PLAYER_ID)
    {
        Kills[killerid] ++;
        GetPlayerName(killerid, name, sizeof(name));
        switch(Kills[killerid])
        {
            case 2:
            {
                format(string, sizeof(string), "%s)", name);
                SendClientMessageToAll(COLOR_GREEN2, string);
                GivePlayerMoney(killerid,2500);
            }
            case 3:
            {
                format(string, sizeof(string), "%s )", name);
                SendClientMessageToAll(COLOR_GREEN2, string);
                GivePlayerMoney(killerid,3500);
            }
            case 5:
            {
                format(string, sizeof(string), "%s T", name);
                SendClientMessageToAll(COLOR_AMARILLO, string);
                GivePlayerMoney(killerid,4000);
            }
            case 8:
            {
                format(string, sizeof(string), "%s E", name);
                SendClientMessageToAll(COLOR_AMARILLO, string);
                GivePlayerMoney(killerid,5500);
            }
            case 12:
            {
                format(string, sizeof(string), "%s )", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,6500);
            }
            case 18:
            {
                format(string, sizeof(string), "%s le! (", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,7500);
            }
            case 25:
            {
                format(string, sizeof(string), "%sal! ", name);
                SendClientMessageToAll(COLOR_NARANJA, string);
                GivePlayerMoney(killerid,8500);
            }
            case 35:
            {
                format(string, sizeof(string), "%s (+ 12000)", name);
                SendClientMessageToAll(COLOR_ROJO2, string);
                GivePlayerMoney(killerid,12000);
            }
        }
       Spawn[playerid]= 1;
    }

    for(new i=0; i<19; i++) TextDrawHideForPlayer(playerid,HealthBar[i]);



        if(Team[playerid] != -1){
        SetTimerEx("StopFlash", 120000, false, "i", Team[playerid]);
        return GangZoneFlashForAll(Gang[Team[playerid]][Zone], Gang[Team[killerid]][Flash]);
    }return 1;
}

forward StopFlash(gangid);
public StopFlash(gangid)
{
    GangZoneStopFlashForAll(Gang[gangid][Zone]);
        return 1;
   }



Respuesta: respawn - chucho - 31.08.2011

amm no ya lo puse igual y nada sigue igual


Re: respawn - Mr.GeEk - 31.08.2011

postea el callback OnPlayerSpaw(playerid)