Crear una explosiуn con intervalos de segundos.
#1

Hola,

Quisiera saber como hacer una explosiуn, se haga en una coordenada X y unos segundos, (1 o 2) se cree otra en una coordenada Y, desde el lugar donde estй el jugador.

El comando lo tengo hecho
pawn Код:
if(strcmp(cmdtext, "/bum", true) == 0)
    {
        new Float:x, Float:y, Float:z;
        GetPlayerPos(playerid, x, y, z);
    CreateExplosion(x, y, z, 12, 9.0);
    CreateExplosion(x+5, y, z, 12, 13.0);
    CreateExplosion(x+10, y, z, 12, 26.0);
    return 1;
    }
Pero explotan todos a la vez Dx (Y tambiйn si pueden darme un ID de una explosiуn mбs grande porque esa es una miniatura).
Gracias.
Reply
#2

Algo como esto:

pawn Код:
if(strcmp(cmdtext, "/bum", true) == 0)
{
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateExplosion(x, y, z, 12, 9.0);
    SetTimerEx("SegundaExplosion", 2000, 0, "d", playerid);
    return 1;
}
   
forward SegundaExplosion(playerid);
public SegundaExplosion(playerid)
{
    CreateExplosion(x+5, y, z, 12, 13.0);
    SetTimerEx("TerceraExplosion", 1000, 0, "d", playerid);
    return 1;
}

forward TerceraExplosion(playerid);
public TerceraExplosion(playerid)
{
    CreateExplosion(x+10, y, z, 12, 26.0);
    return 1;
}
ї?
Reply
#3

Lo hiciste mal Zume serнa asн:
pawn Код:
if(strcmp(cmdtext, "/bum", true) == 0)
{
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateExplosion(x, y, z, 12, 9.0);
    SetTimerEx("SegundaExplosion", 2000, 0, "fff", x,y,z);
    return 1;
}
   
forward SegundaExplosion(Float:x,Float:y,Float:z);
public SegundaExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+5, y, z, 12, 13.0);
    SetTimerEx("TerceraExplosion", 1000, 0, "fff", x,y,z);
    return 1;
}

forward TerceraExplosionFloat:x,Float:y,Float:z);
public TerceraExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+10, y, z, 12, 26.0);
    return 1;
}
Reply
#4

Quote:
Originally Posted by JustBored
Посмотреть сообщение
Lo hiciste mal Zume serнa asн:
pawn Код:
if(strcmp(cmdtext, "/bum", true) == 0)
{
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateExplosion(x, y, z, 12, 9.0);
    SetTimerEx("SegundaExplosion", 2000, 0, "fff", x,y,z);
    return 1;
}
   
forward SegundaExplosion(Float:x,Float:y,Float:z);
public SegundaExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+5, y, z, 12, 13.0);
    SetTimerEx("TerceraExplosion", 1000, 0, "fff", x,y,z);
    return 1;
}

forward TerceraExplosionFloat:x,Float:y,Float:z);
public TerceraExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+10, y, z, 12, 26.0);
    return 1;
}
LOL Se me pasaron los demбs argumentos de la callback xDD mil disculpas, gracias.
Reply
#5

Quote:
Originally Posted by JustBored
Посмотреть сообщение
Lo hiciste mal Zume serнa asн:
pawn Код:
if(strcmp(cmdtext, "/bum", true) == 0)
{
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateExplosion(x, y, z, 12, 9.0);
    SetTimerEx("SegundaExplosion", 2000, 0, "fff", x,y,z);
    return 1;
}
   
forward SegundaExplosion(Float:x,Float:y,Float:z);
public SegundaExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+5, y, z, 12, 13.0);
    SetTimerEx("TerceraExplosion", 1000, 0, "fff", x,y,z);
    return 1;
}

forward TerceraExplosionFloat:x,Float:y,Float:z);
public TerceraExplosion(Float:x,Float:y,Float:z)
{
    CreateExplosion(x+10, y, z, 12, 26.0);
    return 1;
}
Код:
 : error 029: invalid expression, assumed zero
 : error 017: undefined symbol "SegundaExplosion"
 : error 029: invalid expression, assumed zero
 : error 017: undefined symbol "SegundaExplosion"
 : error 017: undefined symbol "x"
: error 017: undefined symbol "x"
 : warning 225: unreachable code
: error 029: invalid expression, assumed zero
: error 017: undefined symbol "x"
 error 029: invalid expression, assumed zero
 fatal error 107: too many error messages on one line
Dx
Reply
#6

Los forward y public debes ponerlos fuera del OnPlayerCommandText no?
Reply
#7

Quote:
Originally Posted by Zume-Zero
Посмотреть сообщение
Los forward y public debes ponerlos fuera del OnPlayerCommandText no?
xDDD olvide lo que era un forward, pero aun asн me tira error.

EDIT: Arreglado, un parentesнs mal cerrado, Gracias

EDIT2: Funciono bien, una ъltima duda
pawn Код:
CreateExplosion(x+10, y, z, 12, 26.0);
El 12 es la ID de la explosiуn?
Reply
#8

Quote:
Originally Posted by xSeveNx
Посмотреть сообщение
xDDD olvide lo que era un forward, pero aun asн me tira error.

EDIT: Arreglado, un parentesнs mal cerrado, Gracias

EDIT2: Funciono bien, una ъltima duda
pawn Код:
CreateExplosion(x+10, y, z, 12, 26.0);
El 12 es la ID de la explosiуn?
Emm....
Si, seria como el tipo de explosiуn.

Para mбs informaciуn consulta aquн: https://sampwiki.blast.hk/wiki/CreateExplosion
Y aquн: https://sampwiki.blast.hk/wiki/Explosion_List
Reply
#9

Gracias.

Otra duda, si quiero crear, digamos 5 explosiones mбs y veo que son con timers, provocarнa un lag?
Reply
#10

Emm...
Creo que si pones mucho en un mismo lugar y con muchas explosiones, si xD
O dependiendo del tipo de explosiones que pongas...

Saludos
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)