[Duda] Sistema De fuego
#1

Buenas samp forum yo tengo un sistema de fuego pero nomas pueden crear administradores poniendo /fuego y tengo una duda como puedo hacer para que cada X tiempo se cree el mismo efecto que fuego en algun lugar
Digamos
Que cada 1 hora en el ayuntamiento se cree el fuego que tengo algo asi

Buenos si no entiendo me dicen y le explico de nuevo
No quiero que me lo hagan quiero que me den todos los cуdigo de wiki los link que me puedan ayudar hacer eso ya que quiero aprender hacerlo :P
Saludos Y Gracias de ante mano
Reply
#2

Asн tu querer un sistema de fuego con un comando (/fuego) que disparadores un fuego en azar posiciуn cada hora?

Lo siento, soy nuevo en espaсol.
Reply
#3

Digamos que yo tengo un sistema de fuego normal que crea fuego pero nomas administradores
Quiero hacer que mes de que yo este poniendo /fuego en cada sitio un sistema que cree fuego cada por ejemplo 1 hora cre el fuego en donde yo quiera como ayuntamiento al frente o algo asн
Es lo Mismo que dijiste tu en verdad jejejej
Reply
#4

tu ya haber un comando de fuego, por que no copiar el comando a un temporizador que es conjucto a establacer cada X milisegundos?
Reply
#5

Mira este es el sistema que tengo
Quote:

#define MAX_FUEGOS 250
new FuegoInfo[MAX_FUEGOS][rInfo];
stock CreateFuego(Object,Float,Float:y,Float:z,Float:A ngle)
{
for(new i = 0; i < sizeof(FuegoInfo); i++)
{
if(FuegoInfo[i][sCreated] == 0)
{
FuegoInfo[i][sCreated]=1;
FuegoInfo[i][sX]=x;
FuegoInfo[i][sY]=y;
FuegoInfo[i][sZ]=z-0.7;
FuegoInfo[i][sObject] = CreateDynamicObject(Object, x, y, z-0.9, 0, 0, Angle);
return 1;
}
}
return 0;
}
stock DeleteAllFuego()
{
for(new i = 0; i < sizeof(FuegoInfo); i++)
{
if(FuegoInfo[i][sCreated] == 1)
{
FuegoInfo[i][sCreated]=0;
FuegoInfo[i][sX]=0.0;
FuegoInfo[i][sY]=0.0;
FuegoInfo[i][sZ]=0.0;
DestroyDynamicObject(FuegoInfo[i][sObject]);
}
}
return 0;
}
stock DeleteClosestFuego(playerid)
{
for(new i = 0; i < sizeof(FuegoInfo); i++)
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, FuegoInfo[i][sX], FuegoInfo[i][sY], FuegoInfo[i][sZ]))
{
if(FuegoInfo[i][sCreated] == 1)
{
FuegoInfo[i][sCreated]=0;
FuegoInfo[i][sX]=0.0;
FuegoInfo[i][sY]=0.0;
FuegoInfo[i][sZ]=0.0;
DestroyDynamicObject(FuegoInfo[i][sObject]);
return 1;
}
}
}
return 0;
}
CMD:fuego(playerid,params[]) //Cambiй esto
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pJDS] >= 1)
{
if(!sscanf(params,"i",params[0])) //Usй SSCANF para simplificar todo
{
new rb = params[0]; //Y cambiй strval por params
if (rb == 1)
{
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Floatlocx,Floatlocy,Floatlocz,Floatloca;
GetPlayerPos(playerid, plocx, plocy, plocz);
GetPlayerFacingAngle(playerid,ploca);
CreateFuego(18691,plocx,plocy,plocz,ploca);
CreateFuego(18688,plocx,plocy,plocz,ploca);
GameTextForPlayer(playerid,"/w/Fuego /b/Colocado!",3000,1);
return 1;
}
else if (rb == 2)
{
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Floatlocx,Floatlocy,Floatlocz,Floatloca;
GetPlayerPos(playerid, plocx, plocy, plocz);
GetPlayerFacingAngle(playerid,ploca);
CreateFuego(18688,plocx,plocy,plocz,ploca);
CreateFuego(18689,plocx,plocy,plocz,ploca);
GameTextForPlayer(playerid,"/w/Fuego /b/Colocado!",3000,1);
return 1;
}
else if (rb == 3)
{
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Floatlocx,Floatlocy,Floatlocz,Floatloca;
GetPlayerPos(playerid, plocx, plocy, plocz);
GetPlayerFacingAngle(playerid,ploca);
CreateFuego(18694,plocx,plocy,plocz,ploca);
CreateFuego(18679,plocx,plocy,plocz,ploca);
CreateExplosion(plocx,plocy,plocz, 1, 80);
GameTextForPlayer(playerid,"/w/Fuego /b/Colocado!",3000,1);
return 1;
}
}
} else SendClientMessage(playerid,-1,"Uso: /fuego [ID(1-3)]");
}
return 1;
}

El comando es /fuego y eliges uno digamos /fuego 1/2/3
yo quiero que se cree el 3 cada 1 hora donde yo quiera
Quote:

PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
new Floatlocx,Floatlocy,Floatlocz,Floatloca;
GetPlayerPos(playerid, plocx, plocy, plocz);
GetPlayerFacingAngle(playerid,ploca);
CreateFuego(18694,plocx,plocy,plocz,ploca);
CreateFuego(18679,plocx,plocy,plocz,ploca);
CreateExplosion(plocx,plocy,plocz, 1, 80);
GameTextForPlayer(playerid,"/w/Fuego /b/Colocado!",3000,1);

este :P
Reply
#6

Necesitas las coordenadas del lugar donde quieres que aparezca el fuego y un timer que se ejecute cada hora

pawn Код:
// en OnGameModeInit
SetTimer("CrearFuegoCadaHora", 3600, true);

// en cualquier parte

forward CrearFuegoCadaHora();
public CrearFuegoCadaHora()
{
    new Floatlocx = COORDENADAS X; // Sustituir por las coordenadas deseadas...
    new Floatlocy = COORDENADAS Y; // Sustituir por las coordenadas deseadas...
    new Floatlocz = COORDENADAS Z; // Sustituir por las coordenadas deseadas...
    new Floatloca = ANGULO; // Sustituir por las coordenadas deseadas...

    CreateFuego(18694,plocx,plocy,plocz,ploca);
    CreateFuego(18679,plocx,plocy,plocz,ploca);
    CreateExplosion(plocx,plocy,plocz, 1, 80);
}
.
Reply
#7

Lo del angulo que es la rotaciуn o k y como aсado mas ?ї
quiero ponerlo en muchos sitio pero cambiandole el timpo a los otros
PD: Muchas Gracias Por ayudarme Miguel
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)