SA-MP Forums Archive
Duda de novato - 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: Duda de novato (/showthread.php?tid=608449)



Duda de novato - Necrotino1 - 01.06.2016

Hola, hago este post por que estuve revisando en el foro si alguien tenia el mismo problema que yo pero al parecer no encontre algo similar a mi caso. Explico mi situacion, estoy creando una callback sencilla que cuando el usuario muere lo manda a unas coordenadas. El caso es que no funciona y no se por que, les dejo codigo por favor si alguien me dice que esta mal se lo agradecere.

Код:
main(){}
// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#include <a_samp>

#if defined FILTERSCRIPT

main()
{
	print("\n----------------------------------");
	print(" Blank Gamemode by your name here");
	print("----------------------------------\n");
}

public OnPlayerDeath
{

SetPlayerPos(playerid, 1172, -1323, 15);
GameTextForPlayer(playerid, "Has muerto", 5000, 1)
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);

return 1;

}

#endif
Por cierto, este es todo el codigo pawn que tengo. Si hay algo mal con el codigo por favor dнganmelo tambien


Re: Duda de novato - F1N4L - 01.06.2016

Poner esto en OnPlayerSpawn.
El jugador va a morir y luego volverб a aparecer...


Respuesta: Re: Duda de novato - Necrotino1 - 01.06.2016

Quote:
Originally Posted by F1N4L
Посмотреть сообщение
Poner esto en OnPlayerSpawn.
El jugador va a morir y luego volverб a aparecer...
Osea que si reemplazo el OnPlayerDeath por OnPlayerSpawn debe de funcionar todo eso al morir?


Re: Duda de novato - NullBot - 01.06.2016

tienes > public OnPlayerDeath

modificalo por:
public OnPlayerDeath(playerid, killerid, reason)


Re: Duda de novato - Z3x0 - 03.06.2016

CODIGO


• Pon Esto En Tu GM Tal Cual, Sustituyendo lo Que Tenias Anteriormente

PHP код:
public OnPlayerDeath(playeridkilleridreason)
{
     
SendDeathMessage(killeridplayeridreason);
    return 
1;
}
public 
OnPlayerSpawn(playerid)
{
    
SetPlayerPos(playerid1172, -132315); //Las Coordenadas Estan Mal Te Recomiendo Usar /Save Para Sacarlas
    
GameTextForPlayer(playerid"Has muerto"50001)
    
SetPlayerInterior(playerid0);
    
SetPlayerVirtualWorld(playerid0);
//Usa 'Tabulaciones' Para Un Mejor Orden y Optimizacion De Codigo
[SIZE="6"][/SIZE


CON ESTO DARIA POR TERMINADO EL CODIGO "+1"



Respuesta: Duda de novato - Eloy - 03.06.2016

Recuerda que si quieres crear una nueva Callback debes primero crear su forward.

Ej:

Forward OnPlayerDeath(playerid, killerid, reason)

Luego creas tu Callback

public OnPlayerDeath(playerid, killerid, reason)
{
//Funciones
return 0;
}


Re: Respuesta: Duda de novato - Onfroi - 03.06.2016

Quote:
Originally Posted by Eloy
Посмотреть сообщение
Recuerda que si quieres crear una nueva Callback debes primero crear su forward.

Ej:

Forward OnPlayerDeath(playerid, killerid, reason)

Luego creas tu Callback

public OnPlayerDeath(playerid, killerid, reason)
{
//Funciones
return 0;
}
OnPlayerDeath ya es una funcion definida por a_samp.inc, no hay que hacer esto.

https://sampwiki.blast.hk/wiki/OnPlayerDeath


Respuesta: Duda de novato - Revelation - 04.06.2016

Es lo ъnico que se me ocurriу. xd

PHP код:
#include <a_samp>
new Murio[MAX_PLAYERS];
public 
OnPlayerDeath(playeridkilleridreason)
{
Murio[playerid] = 1;
GameTextForPlayer(playerid"~r~Has muerto"50001)
SetPlayerInterior(playerid0);
SetPlayerVirtualWorld(playerid0);
return 
1;
}
public 
OnPlayerSpawn(playerid)
{
if(
Murio[playerid] == 1) return SetPlayerPos(playerid1172, -132315); //Te dijeron que tus coordenadas estбn mal, sacalas con /save xd
Murio[playerid] = 0;
return 
1;

O simplemente agregas la coordenada ya bien hecha en OnPlayerSpawn y ya xd


Re: Respuesta: Duda de novato - NullBot - 04.06.2016

Quote:
Originally Posted by Revelation
Посмотреть сообщение
Es lo ъnico que se me ocurriу. xd

PHP код:
#include <a_samp>
new Murio[MAX_PLAYERS];
public 
OnPlayerDeath(playeridkilleridreason)
{
Murio[playerid] = 1;
GameTextForPlayer(playerid"~r~Has muerto"50001)
SetPlayerInterior(playerid0);
SetPlayerVirtualWorld(playerid0);
return 
1;
}
public 
OnPlayerSpawn(playerid)
{
if(
Murio[playerid] == 1) return SetPlayerPos(playerid1172, -132315); //Te dijeron que tus coordenadas estбn mal, sacalas con /save xd
Murio[playerid] = 0;
return 
1;

O simplemente agregas la coordenada ya bien hecha en OnPlayerSpawn y ya xd
esta mal esto, porque le pusistre return, y recuerda que esto sigue un hilo, entonces nunca va a llegar a Murio[playerid] = 0;
PHP код:
if(Murio[playerid] == 1) return SetPlayerPos(playerid1172, -132315); //Te dijeron que tus coordenadas estбn mal, sacalas con /save xd
Murio[playerid] = 0;
//asн serнa:
public OnPlayerSpawn(playerid

if(
Murio[playerid] == 1
   
SetPlayerPos(playerid1172, -132315); //Te dijeron que tus coordenadas estбn mal, sacalas con /save xd 
Murio[playerid] = 0
return 
1