Pawno-Script

Todos Nos Ayudamos

Conectarse

Recuperar mi contraseña

Últimos temas

» [GM] Stunts Universe 100% Español (Stunts/Races/Drift)
Vie Ene 31, 2014 5:43 pm por Hunter_white

» [FS] Animaciones
Miér Dic 18, 2013 7:06 pm por Raby

» Policias vs Terroristas
Jue Ago 01, 2013 1:46 am por Dani Duende

» [FS] Sistema de reportes por dialog
Vie Mayo 24, 2013 5:29 pm por Eric_espinosa

» Abrir portones con las teclas
Vie Mayo 24, 2013 4:48 pm por Eric_espinosa

» [FilterScript] Armas en la espalda o cinturon.
Dom Nov 11, 2012 10:44 am por Axel_x360

» [Servdor] "Los Simuladores RP", gran apertura!! V1.2
Miér Oct 24, 2012 6:09 pm por Shampier17

» [FS] Sistema Neon (0.3c)
Dom Oct 07, 2012 8:01 pm por felipepalacios

» [Tutorial] Cargar Objetos
Vie Oct 05, 2012 4:28 pm por Venedetto

Diciembre 2016

LunMarMiérJueVieSábDom
   1234
567891011
12131415161718
19202122232425
262728293031 

Calendario Calendario

Navegación

Estadísticas

Nuestros miembros han publicado un total de 91 mensajes en 79 argumentos.

Tenemos 128 miembros registrados.

El último usuario registrado es migueleex.

¿Quién está en línea?

En total hay 1 usuario en línea: 0 Registrados, 0 Ocultos y 1 Invitado

Ninguno


La mayor cantidad de usuarios en línea fue 43 el Lun Abr 11, 2016 1:48 am.


    Abrir portones con las teclas

    Comparte

    Reex
    Administrador
    Administrador

    Mensajes : 64
    Fecha de inscripción : 21/01/2011
    Localización : Argentina

    Abrir portones con las teclas

    Mensaje  Reex el Jue Ene 27, 2011 12:31 am

    1. Creamos el porton, va a ser con un timer para que se cierre, entoncess quedaria asi ej:

    al principio de todo


    Código:
    #define COLOR_GREY 0xAFAFAFAA
    #define COLOR_RED 0xFF6347AA

    new porton;
    forward portont(playerid);

    en OnGameModeInit creamos el porton y lo definimos

    Código:
    porton = CreateObject(980, 1590.098145, -1638.104614, 15.224251, 0.000000, 0.000000, 0.000000);

    2.vamos al callback OnPlayerKeyStateChange

    Código:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {

    3. definimos la tecla con la que vamos a abrir el porton, en este caso la letra H:

    Código:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
        if(newkeys == KEY_CROUCH)
        {


    - el KEY_CROUCH significa la letra H si quieren saber las id de las otras teclas vayan al wiki samp....

    4. ahora comenzamos a crear el porton, si lo keremos hacerdesde una alguna posicion hacemos a algo como esto:

    Código:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
        if(newkeys == KEY_CROUCH)
        {
            if (PlayerToPoint(30, playerid,1580.8282,-1629.1621,13.3828))
          {

    Nota: si no tienen la funcion definida aqui la dejo:

    Código:
    forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);//esto va al principio

    public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
    {
    if(IsPlayerConnected(playerid))
    {
    new Float:oldposx, Float:oldposy, Float:oldposz;
    new Float:tempposx, Float:tempposy, Float:tempposz;
    GetPlayerPos(playerid, oldposx, oldposy, oldposz);
    tempposx = (oldposx -x);
    tempposy = (oldposy -y);
    tempposz = (oldposz -z);
    //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
    if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
    {
    return 1;
    }
    }
    return 0;
    }

    5. seguimos, ahora si vamos acrear el porton

    Código:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
        if(newkeys == KEY_CROUCH)
        {
            if (PlayerToPoint(30, playerid,1580.8282,-1629.1621,13.3828))
            {
                SetTimer("portont", 12000, 0);
                MoveObject(porton, 1590.098145, -1638.104614, 9, 3.0);
                SendClientMessage(playerid, COLOR_RED,"Las Rejas estas abiertas y se serraran en 7 segundos");
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY,"Estas demasiado lejos para abrir la puerta.");
            }
            return 1;
        }
        return 1;
    }

    ahora les explico el moveobject al lado dice porton, porton es la puerta que definimos, asi la puede mover, la puerta se va a mover hacia abajo porque cambiamos la coordenada Z que es el umero 9 ants era -15.224251 el 3.0 de lo ultimo es la velocidad a la que se va a mover el porton, el settimer es el tiempo que ahy que esperar para que se cierre el porton, ustedes pueden modificarlo...

    6. ahora a definir el timer de la puerta

    Código:
    public portont(playerid)
    {
          MoveObject(porton,1590.098145, -1638.104614, 15.224251, 2.5);
          return 1;
    }

    ahy las coordenadas son la posicion original de la puerta...

    y listo creo que eso es todo, si ahy algun error o falta algo solo avisenme....

    aqui dejo un FS de prueba, la puerta esta en lspd:

    Click Aqui

    Creditos: Nahuel

    Eric_espinosa
    Mod.Global
    Mod.Global

    Mensajes : 2
    Fecha de inscripción : 24/05/2013

    Re: Abrir portones con las teclas

    Mensaje  Eric_espinosa el Vie Mayo 24, 2013 4:48 pm

    olle como se crea el puerton?

      Fecha y hora actual: Jue Dic 08, 2016 6:59 pm