Como abrir puertas
#1

Hola, estoy buscando como abrir puertas con el skin osea con el skin de un policia se abra esa puerta y que se siere automaticamente
quien me puede ayudar?
Reply
#2

Pues mira lo que podrias hacer es esto no lo eh probado pero podrias intentarlo mira

primero vamos a declarar un temporizador en esta caso "SetTimer()" con el nombre que gustes, en el mio le pondre Checador, luego cremos tu objeto, y declaramos una variable global.

Код:
new Funciona = false;//false es 0 osea la puerta esta cerrada, true es 1 la puerta esta abierta, esta la colocas hasta arriba de tu script
new Puerta; // la variable que determina tu objeto

SetTimer("Checador",1003,1);
Puerta = CreateObject(254,0,0,0,0,0,0,250);// Es un objeto aleatorio no recuerdo el id de alguna puerta
//tu solamente vas a cambiar las cordenadas y el id del objeto
Muy bien ahora vamos a la funcion

Код:
forward Checador();
public Checador()
{
    new keys,ud,lr,Float:x,Float:y,Float:z; //primero tus variables
    for(new i=0;i<MAX_PLAYERS;i++)
    {
        GetPlayerKeys(i,keys,ud,lr);
        if(keys & KEY_FIRE)// es el click o control no recuerdo bien, si quieres cambiasela
        {
            if(GetPlayerSkin(i) == 288) // en esta condicion checa si el jugador tiene el skin de policia
            {
                GetObjectPos(Puerta,x,y,z);
                if(IsPlayerInRangeOfpoint(i,1,x,y,z); //De rango le vamos a poner 1 esta es tu condicion si es que esta a 1 de distancia de la puerta  
                {
                    if(Funciona == false)
                    {
                        MoveObject(Puerta,0,0,-3, 5);
                        SetTimer("CerrarPuerta",3000,0);// la puerta se cerrara en 3 seg tu decides si le aumentas o disminuyes la cantidad de tiempo
                        Funciona = true;// aqui declaramos cuando la variable cambie de 0 1 que significa que la puerta esta abierta
                    }
                }
            } else SendClientMessage(i,-1,"Lo siento tu no eres la ley para abrir esta puerta");
        }
    }  
}

forward CerrarPuerta();
public CerrarPuerta()
{
    MoveObject(Puerta,0,0,3,5)
    Funciona = false;   
}
Muy bien creo que esto deberia funcionar y si por favor que alguien mas lo arregle, de hecho para no abrir tantas llaves este codigo se puede simplificar pero ya no recuerdo como se hace XР

Espero que te sirva salu2 desde MX
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)