forward Bomb(Float:x, Float:y, Float:z);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
SetTimerEx("Bomb",10000,0,"f,f,f",x,y,z);
public Bomb(Float:x,Float:y,Float:z)
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
CreateExplosionForPlayer(i,x,y,z);
DestroyObject(GetPlayerClosestObject(i));
IncreaseWantedLevel(i,4);
}
}
}
SetTimerEx("Bomb",10000,0,"f,f,f",x,y,z);
SetTimerEx("Bomb",10000,0,"fff",x,y,z);
|
Hola [CG]Milito
Tu error estб aquн: pawn Код:
pawn Код:
|
CreateExplosionForPlayer(i,x,y,z);
printf("%f %f %f",x,y,z);
DestroyObject(GetPlayerClosestObject(i));
IncreaseWantedLevel(i,4);
iBomb_N
|
Intenta renombrar la funciуn a otra como
pawn Код:
їEn la prueba tu estabas conectado? y їcomo se activa el timer, comando? |
|
Ya le cambie el nombre y nada.
El timer se activa con un dialog |
//__________VARIABLE GLOBAL__________
new Float: BCX,BCY,BCZ;
//__________________________________
//new Float:x, Float:y, Float:z; ya no porque se quedan solo aqui localmente.
GetPlayerPos(playerid, BCX, BCY, BCZ);
SetTimerEx("Bomb",10000,0,"fff",BCX,BCY,BCZ);
forward Bomb(Float:BCX, Float:BCY, Float:BCZ);
public Bomb(Float:BCX,Float:BCY,Float:BCZ)
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
CreateExplosionForPlayer(i,BCX,BCY,BCZ);
DestroyObject(GetPlayerClosestObject(i));
IncreaseWantedLevel(i,4);
}
}
return true;
}
|
pawn Код:
|
|
Ya entiendo. Las variables se quedaban dentro de la callback
Pero ahora se me freezea el servidor. No se crashea solo se queda congelado. |
//__________VARIABLE GLOBAL__________
new Float: CoorBomb[3];
//__________________________________
//new Float:x, Float:y, Float:z; ya no porque se quedan solo aqui localmente.
GetPlayerPos(playerid, CoorBomb[0], CoorBomb[1], CoorBomb[2]);
//SetTimerEx("Bomb",10000,0,"f,f,f",BCX,BCY,BCZ);
SetTimer("Bomb",10*1000,false);
forward Bomb();
public Bomb()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
CreateExplosionForPlayer(i,CoorBomb[1],CoorBomb[2],CoorBomb[3]);
DestroyObject(GetPlayerClosestObject(i));
IncreaseWantedLevel(i,4);
}
}
return true;
}
//________________________________________________________
O de йsta manera.
//_____________________________________________________
//__________VARIABLE GLOBAL__________
new Float: CoorBomb[3];
//__________________________________
//new Float:x, Float:y, Float:z; ya no porque se quedan solo aqui localmente.
GetPlayerPos(playerid, CoorBomb[0], CoorBomb[1], CoorBomb[2]);
SetTimerEx("Bomb",10000,false,"d",playerid);
//SetTimer("Bomb",10*1000,false);
forward Bomb(playerid);
public Bomb(playerid)
{
if(IsPlayerConnected(playerid))
{
CreateExplosionForPlayer(playerid,CoorBomb[1],CoorBomb[2],CoorBomb[3]);
DestroyObject(GetPlayerClosestObject(playerid));
IncreaseWantedLevel(playerid,4);
}
return true;
}
//________________________________________________________
O de йsta manera.
//_____________________________________________________
new Float: CoorBomb[3][MAX_PLAYERS];//__________VARIABLE GLOBAL__________
GetPlayerPos(playerid, CoorBomb[0][playerid], CoorBomb[1][playerid], CoorBomb[2][playerid]);
SetTimerEx("Bomb",10000,false,"d",playerid);
forward Bomb(playerid);
public Bomb(playerid)
{
if(IsPlayerConnected(playerid))
{
CreateExplosionForPlayer(playerid,CoorBomb[1][playerid],CoorBomb[2][playerid],CoorBomb[3][playerid]);
DestroyObject(GetPlayerClosestObject(playerid));
IncreaseWantedLevel(playerid,4);
}
return true;
}