AYUDA CON LA MUERTE DE CADA JUGADOR
#1

hola disculpen la molestia de mi novatada pero tengo muchas dudad jajaj
bueno antes que nada gracias por ayudarme a solucionar todoas mis dudas
en fin
tengo duda de como puedo hacer para que cuando reciban dinero por cada muerte que haga cada jugador
ejemplo si el jugador A mato al jugador B quiero que el jugador A reciba 1500 +1 PUNTO EN SCORE y que el jugador B le quiten 450 -1 PUNTO EN SCORE
y cuando reviva el jugador B no le suba dinero ni nada que le quiten los 450
ejemplo si el jugador B tenia 500 y lo matan que su dinero quede en 50
es decir que el si el jugador A mato 15 veces que tenga en su score 15 pero si lo matan que le quiten un punto a su score por que el codigo que tengo hace lo siguiente
"si el jugador tiene 15 en score y lo matan le quitan todo su score y le ponen -1 eso no quiero"

por que tengo este codigo pero lo que hace es que esta muy raro cuando aveces cuando el jugador A mata al jugador B el jugador A RECIBE DINERO PERO RECIBE MUCHO Y VICEVERSA CUANDO EL JUGADOR B MUERE LE QUITAN MUCHO Y CUANDO REVIVE LE SUBEN CUAL ES EL ERRO AYUDENME!!
AGREGO QUE UN COMPAСERO ME AYUDO CON ESTE CODIGO PERO PARACE QUE NO ME FUNCIONO

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{

    if(playerid != INVALID_PLAYER_ID && killerid != INVALID_PLAYER_ID && IsPlayerConnected(killerid) && IsPlayerConnected(playerid) )
      {
//------------------------------------------------------------------------------
      //[PARAMETROS PARA EL ASESINO]
       GivePlayerMoney(killerid,GetPlayerMoney(killerid)+GANANCIA_MUERTE);//el asesino recibe la ganancia definida arriba en los macros, al matar la victima.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);//se le suma +1 de score al asesino
//------------------------------------------------------------------------------
      //[PARAMETROS PARA LA VICTIMA]
       SetPlayerScore(playerid, -1);
       ResetPlayerWeapons(playerid);
       if(GetPlayerMoney(playerid)>= -400)GivePlayerMoney(playerid,GetPlayerMoney(playerid)-400); //aqui le quita -200  a la victima
       SetPlayerWantedLevel(playerid,0);
       SendDeathMessage(killerid, playerid, reason);
       Spawn[playerid]=1;
       return 1;
    }
  //[SI LA VICTIMA MUERE POR SI MISMO, SIN ASESINOS]
    SetPlayerScore(playerid,-1);
    ResetPlayerWeapons(playerid);
    if(GetPlayerMoney(playerid)>= -300)GivePlayerMoney(playerid,GetPlayerMoney(playerid)-PERDIDA_MUERTE); //aqui le quita -200  a la victima
    SendDeathMessage(killerid, playerid, reason);
    Spawn[playerid]=1;
    return 1;
}
Reply
#2

Se me hace muy exagerado xD

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{

    if(IsPlayerConnected(killerid)
    {
      GivePlayerMoney(killerid,GetPlayerMoney(killerid)+GANANCIA_MUERTE);//el asesino recibe la ganancia definida arriba en los macros, al matar la victima.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);//se le suma +1 de score al asesino
     }
     if(IsPlayerConnected(playerid)
     {
       SetPlayerScore(playerid, -1);
       ResetPlayerWeapons(playerid);
       if(GetPlayerMoney(playerid)>= -400)GivePlayerMoney(playerid,GetPlayerMoney(playerid)-400); //aqui le quita -200  a la victima
       SetPlayerWantedLevel(playerid,0);
       SendDeathMessage(killerid, playerid, reason);
       Spawn[playerid]=1;
     }
return 1;
}
Reply
#3

pawn Код:
/*
#define GANANCIA_MUERTE 1500
#define PERDIDA_MUERTE 450
*/

public OnPlayerDeath(playerid, killerid, reason)
{

    if(killerid != INVALID_PLAYER_ID)
      {
//------------------------------------------------------------------------------
      //[PARAMETROS PARA EL ASESINO]
       GivePlayerMoney(killerid,GetPlayerMoney(killerid)+GANANCIA_MUERTE);//el asesino recibe la ganancia definida arriba en los macros, al matar la victima.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);//se le suma +1 de score al asesino
//------------------------------------------------------------------------------
      //[PARAMETROS PARA LA VICTIMA]
       SetPlayerScore(playerid,GetPlayerScore(playerid)-1); //le quita -1 de score a la victima
       ResetPlayerWeapons(playerid);
       if(GetPlayerMoney(playerid) >= PERDIDA_MUERTE)
       GivePlayerMoney(playerid,GetPlayerMoney(playerid) - PERDIDA_MUERTE); //le quita -450 a la victima
       SetPlayerWantedLevel(playerid,0);
       SendDeathMessage(killerid, playerid, reason);
       Spawn[playerid]=1;
       return 1;
    }
  //[SI LA VICTIMA MUERE POR SI MISMO, SIN ASESINOS]
    SetPlayerScore(playerid,GetPlayerScore(playerid)-1); //le resta -1 de score
    ResetPlayerWeapons(playerid);
    if(GetPlayerMoney(playerid) >= PERDIDA_MUERTE )
    GivePlayerMoney(playerid,GetPlayerMoney(playerid)-PERDIDA_MUERTE); //aqui le quita -450  a la victima
    SendDeathMessage(killerid, playerid, reason);
    Spawn[playerid]=1;
    return 1;
}
Reply
#4

hola lunnaticz en tu codigo me tumba el siguiente error
pawn Код:
C:\Documents and Settings\Geek Man\Escritorio\SERVIDOR\SERVIDOR\gamemodes\TerritorySkyLine.pwn(457) : error 001: expected token: ")", but found "{"
C:\Documents and Settings\Geek Man\Escritorio\SERVIDOR\SERVIDOR\gamemodes\TerritorySkyLine.pwn(462) : error 001: expected token: ")", but found "{"
C:\Documents and Settings\Geek Man\Escritorio\SERVIDOR\SERVIDOR\gamemodes\TerritorySkyLine.pwn(555) : warning 202: number of arguments does not match definition
C:\Documents and Settings\Geek Man\Escritorio\SERVIDOR\SERVIDOR\gamemodes\TerritorySkyLine.pwn(1177) : warning 203: symbol is never used: "djson_GameModeExit"
C:\Documents and Settings\Geek Man\Escritorio\SERVIDOR\SERVIDOR\gamemodes\TerritorySkyLine.pwn(1177) : warning 203: symbol is never used: "djson_GameModeInit"
Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.
que sera
Reply
#5

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{

    if(IsPlayerConnected(killerid)
    {
      GivePlayerMoney(killerid,GetPlayerMoney(killerid)+GANANCIA_MUERTE);//el asesino recibe la ganancia definida arriba en los macros, al matar la victima.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);//se le suma +1 de score al asesino
     }
     if(IsPlayerConnected(playerid)
     {
       SetPlayerScore(playerid, -1);
       GivePlayerMoney(playerid,-400);//aqui le quita -200  a la victima
       SetPlayerWantedLevel(playerid,0);
       SendDeathMessage(killerid, playerid, reason);
       Spawn[playerid]=1;
     }
return 1;
}
Pueden ser llaves anteriores :B
Reply
#6

Pasa las lineas de error asi te podemos ayudar.
Reply
#7

no no me marcar error al menos los codigos que yo puse esos quiero que me ayuden a modificar para que ya quede bien
Reply
#8

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{

    if(IsPlayerConnected(killerid)
    {
      GivePlayerMoney(killerid,GetPlayerMoney(killerid)+GANANCIA_MUERTE);//el asesino recibe la ganancia definida arriba en los macros, al matar la victima.
       SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);//se le suma +1 de score al asesino
     }
     if(IsPlayerConnected(playerid)
     {
       SetPlayerScore(playerid, -1);
       GivePlayerMoney(playerid,-400);//aqui le quita -200  a la victima
       SetPlayerWantedLevel(playerid,0);
       SendDeathMessage(killerid, playerid, reason);
       Spawn[playerid]=1;
     }
return 1;
}
Reply
#9

Quote:
Originally Posted by chucho
Посмотреть сообщение
no no me marcar error al menos los codigos que yo puse esos quiero que me ayuden a modificar para que ya quede bien
Usa el cуdigo que puse yo, por que el de lunna esta igual al tuyo (el solo lo intentу hacer mбs pequeсo) en cambio el mio hace exactamente lo que pusiste en la descripciуn de tu post
Reply
#10

Quote:
Originally Posted by Daniel-92
Посмотреть сообщение
Usa el cуdigo que puse yo, por que el de lunna esta igual al tuyo (el solo lo intentу hacer mбs pequeсo) en cambio el mio hace exactamente lo que pusiste en la descripciуn de tu post
Exactamente, sуlo me ahorrй el trabajo de leer с_с jiji

Suerte & sos bueno Daniel :B
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)