Cуmo crear una reja que....
#1

Hola, querнa preguntar cуmo puedo hacer una puerta o reja que al apretar una tecla o teclear un comando se abra. Gracias, por si algo utilizo la sintбxis normal del pawn, (porque soy bien nub) gracias de antemano.
Reply
#2

Para mover el objeto
Para que al tocar la tecla se mueva
Reply
#3

Hola!
Es algo asн:
Quote:

public OnGameModeInit()
{
new OBJETOID = CreateObject(MODELID,X,Y,Z,rX,rY,rZ);
return 1;
}

Quote:

public OnPlayerKeyChange(playerid,newkeys,oldkeys)
{
if(newkeys == KEY_YES)//Si apreta la tecla Y
{
if(ObjetoMovido == 0)//Si la reja estб cerrada.
{
MoveObject(OBJETOID,X,Y,Z, 5.0, rX,rY,rZ);//Movemos el objeto
//Cambiar las posiciones por la puerta abierta (El 5.0 es la velocidad)
ObjetoMovido = 1;//Le damos a la variable un valor de 1 que significa que estб abierto.
SetTimer("CerrarPuerta",10000,0);//Creamos un timer, luego de 10 segundos de que se abra, se cerrarб
}
}
return 1;
}

Podes ponerlo al final de tu GM
Quote:

forward CerrarPuerta();
public CerrarPuerta()
{
if(ObjetoMovido == 1)
{
MoveObject(OBJETOID,X,Y,Z,5.0, rX,rY,rZ);//Movemos el objeto
//Cambiar las posiciones por la puerta cerrada(El 5.0 es la velocidad)
ObjetoMovido = 0;//Le damos a la variable un valor de 0 que significa que la reja estб cerrada.
}
return 1;
}

Reply
#4

Quote:
Originally Posted by FelipeBlanco
Посмотреть сообщение
Hola!
Es algo asн:



Podes ponerlo al final de tu GM
Si vas a usar un timer, "ObjetoMovido" sobra, es innecesario.
Reply
#5

Goncho28, en teorнa "sobra" pero no en todas las zonas, sino solo en "CerrarPuerta", ya que el temporizador nunca se crearб si "ObjetoMovido" es verdadero.

En la otra zona se usa para evitar que se pueda enviar la funciуn de "cerradura" cuando ya se esta cerrando.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)