SA-MP Forums Archive
[Ajuda] newkeys - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] newkeys (/showthread.php?tid=547393)



newkeys - JoshNudock - 22.11.2014

Alguйm pode me ajudar? pois estou fazendo este cуdigo para abrir os portхes, mais nгo funciona, era para abrir os portхes tipo se fosse um comando, mais nгo que abrir, alguйm pode me ajudar pf? resolver este problema?

pawn Код:
if (newkeys == 2) {
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(4, playerid, 231.3871, 169.3880, 1003.0234)) // Porta DP
        {
            MoveObject(pdp, 230.7000000, 169.8000000, 999.4000200, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 11 && PlayerToPoint(14, playerid, -1422.8918, 495.0181, 3.0391)) // Portгo da Marinha 01
        {
            MoveObject(pdmar1, -1422.0850, 494.9070, -2.5910, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 11 && PlayerToPoint(10, playerid, -1528.8422, 482.3220, 6.9490)) // Portгo da Marinha 02
        {
            MoveObject(pdmar, -1540.5001, 482.3700, 9.7745, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 10 && PlayerToPoint(15.0, playerid, 1590.1999500, -1637.9000200, 14.9900000)) // Garagem PMLS 02
        {
            MoveObject(PDGARAGE, 1598, -1637.9000200, 14.9900000, 2);
            SetTimer("pd3", 5000, false);
        }
        if (GetPlayerOrg(playerid) == 4 && PlayerToPoint(24, playerid, 1636.5000000, 1833.5000000, 12.5000000)) // Portгo SAMU
        {
            SetTimer("PortaoMedicos2M", 5000, false);
            MoveObject(PortaoMedicos2, 1636.6999512, 1845.3000488, 12.5000000, 3, 0.0000000, 0.0000000, 270.0000000);
        }
        if (PlayerToPoint(50.0, playerid, 2357.3999023, 1004.4000244, 11.3999996)) {
            SetTimer("PortaoFunilariaM", 5000, false);
            MoveObject(PortaoFunilaria, 2357.3999023438, 1004.4000244141, 11.39999961853, 2, 0.0000000, 0.0000000, 90.0000000);
        }
        if (PortaoEscola[playerid] == 1 && PlayerToPoint(35.0, playerid, 1131.6000000, 1363.2998000, 12.6000000)) // Auto Escola
        {
            MoveObject(PortaoAutoEscola, 1131.6000000, 1363.2998000, 12.6000000, 3);
            SetTimer("AutoEscola", 7000, false);
        }
        if (IsAPM(playerid) && PlayerToPoint(40.0, playerid, 134.9607, 1942.4006, 19.3244)) // Portгo Presнdio de seguranзa mбxima
        {
            MoveObject(PortaoPresidio, 124.0000000, 1942.9004000, 21.1000000, 3);
            SetTimer("PresidioPortao", 6000, false);
        }
        if (PortaoShopCar[playerid] == 1 && PlayerToPoint(30.0, playerid, 2106.8999000, 2198.2000000, 11.5000000)) // Portгo Conce
        {
            PortaoShopCar[playerid] = 1;
            MoveObject(PortaoConce, 2106.8999000, 2189.5000000, 11.5000000, 3);
            SetTimer("ConcePortao", 6000, false);
            //SetTimer("conce", 150000, false);
        }
        if (GetPlayerOrg(playerid) == 3 && PlayerToPoint(10.0, playerid, -310.5000000, 2701.6001000, 64.3000000)) // Portгo Exйrcito
        {
            MoveObject(PortaoExe, -310.5000000, 2713.2000000, 64.5000000, 3);
            SetTimer("ExercitoPortao", 5800, false);
        }
        if (GetPlayerOrg(playerid) == 7 && PlayerToPoint(16.0, playerid, 1524.3267, 2773.1541, 10.6719)) // Portгo do Prefeito
        {
            MoveObject(PortaoGov, 1525.5000000, 2761.7000000, 12.4000000, 3);
            SetTimer("GovernoPortao", 5900, false);
        }
        if (GetPlayerOrg(playerid) == 2 && PlayerToPoint(16.0, playerid, 1333.8000000, 1142.1000000, 10.6000000)) // Portгo da Policia Civil
        {
            MoveObject(PortaoPC, 1333.8000000, 1142.1000000, 10.5000000, 3);
            SetTimer("PCPortaoAbrindo", 5100, false);
        }
        if (GetPlayerOrg(playerid) == 6 && PlayerToPoint(20.0, playerid, -1003.3812, -1715.4420, 77.5703)) // Portгo do GRI
        {
            MoveObject(PortaoGRI, -1016.5000000, -1711.4000000, 79.4000000, 3);
            SetTimer("GRIPortaoAbrindo", 5000, false);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 2293.9956, 2499.2417, 3.3127)) // Portгo 01 PM-LV
        {
            MoveObject(pdgate1, 2294.079, 2497.147, 15.04, 3.5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 2319.2886, 2447.4146, 3.2734)) // Portгo 02 PM-LV
        {
            MoveObject(pdgate, 2319.592041, 2434.819580, 4.973688, 3.5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 1944.5251, 2215.1514, 10.8013)) // Porta DP
        {
            MoveObject(pdpc1, 1945.553, 2226.228, 12.571, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 9 && PlayerToPoint(10, playerid, 2488.6462, 2351.2375, 10.8281)) // Portгo Reporter
        {
            MoveObject(PR, 2471.228760, 2350.419678, 12.593704, 5);
            MoveObject(PREx, 2503.286377, 2350.442627, 12.601921, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pEmprego] == 14 && PlayerToPoint(10, playerid, 2525.9551, 2423.5425, 10.8281)) // Portгo Taxi
        {
            MoveObject(PortaoT, 2512.693, 2423.958, 11.495, 5);
            MoveObject(PortaoT2, 2539.325, 2423.904, 11.495, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pEmprego] == 14 && PlayerToPoint(10, playerid, 2478.6450, 2513.1750, 10.8121)) // Portгo Taxi
        {
            MoveObject(PortaoTex, 2479.064, 2513.290, 6.628, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pMembro] == 10 || PlayerInfo[playerid][pLider] == 10 || PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3 && PlayerToPoint(6, playerid, 246.4088, 72.1410, 1003.6406)) // DP-PF
        {
            MoveObject(pddp, 245.60, 72.55, 999.58, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 250.1900, 63.1539, 1003.6406)) // DP-PF
        {
            MoveObject(pddpEx, 250.60, 64.0, 999.58, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && GetPlayerOrg(playerid) == 2 && GetPlayerOrg(playerid) == 3 && GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 228.1836, 151.1390, 1003.0234)) // DP-LV
        {
            MoveObject(pdpci1, 228.1679, 151.9974, 999.5209, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && GetPlayerOrg(playerid) == 2 && GetPlayerOrg(playerid) == 3 && GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 228.1709, 161.1424, 1003.0234)) // DP-LV
        {
            MoveObject(pdpci2, 228.2171, 161.9765, 999.5209, 5);
            SetTimer("GateClose", 5000, 0);
        }
        return 1;
    }



Re: newkeys - focaximubh - 22.11.2014

Quote:
Originally Posted by JoshNudock
Посмотреть сообщение
Alguйm pode me ajudar? pois estou fazendo este cуdigo para abrir os portхes, mais nгo funciona, era para abrir os portхes tipo se fosse um comando, mais nгo que abrir, alguйm pode me ajudar pf? resolver este problema?

pawn Код:
if (newkeys == 2) {
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(4, playerid, 231.3871, 169.3880, 1003.0234)) // Porta DP
        {
            MoveObject(pdp, 230.7000000, 169.8000000, 999.4000200, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 11 && PlayerToPoint(14, playerid, -1422.8918, 495.0181, 3.0391)) // Portгo da Marinha 01
        {
            MoveObject(pdmar1, -1422.0850, 494.9070, -2.5910, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 11 && PlayerToPoint(10, playerid, -1528.8422, 482.3220, 6.9490)) // Portгo da Marinha 02
        {
            MoveObject(pdmar, -1540.5001, 482.3700, 9.7745, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 10 && PlayerToPoint(15.0, playerid, 1590.1999500, -1637.9000200, 14.9900000)) // Garagem PMLS 02
        {
            MoveObject(PDGARAGE, 1598, -1637.9000200, 14.9900000, 2);
            SetTimer("pd3", 5000, false);
        }
        if (GetPlayerOrg(playerid) == 4 && PlayerToPoint(24, playerid, 1636.5000000, 1833.5000000, 12.5000000)) // Portгo SAMU
        {
            SetTimer("PortaoMedicos2M", 5000, false);
            MoveObject(PortaoMedicos2, 1636.6999512, 1845.3000488, 12.5000000, 3, 0.0000000, 0.0000000, 270.0000000);
        }
        if (PlayerToPoint(50.0, playerid, 2357.3999023, 1004.4000244, 11.3999996)) {
            SetTimer("PortaoFunilariaM", 5000, false);
            MoveObject(PortaoFunilaria, 2357.3999023438, 1004.4000244141, 11.39999961853, 2, 0.0000000, 0.0000000, 90.0000000);
        }
        if (PortaoEscola[playerid] == 1 && PlayerToPoint(35.0, playerid, 1131.6000000, 1363.2998000, 12.6000000)) // Auto Escola
        {
            MoveObject(PortaoAutoEscola, 1131.6000000, 1363.2998000, 12.6000000, 3);
            SetTimer("AutoEscola", 7000, false);
        }
        if (IsAPM(playerid) && PlayerToPoint(40.0, playerid, 134.9607, 1942.4006, 19.3244)) // Portгo Presнdio de seguranзa mбxima
        {
            MoveObject(PortaoPresidio, 124.0000000, 1942.9004000, 21.1000000, 3);
            SetTimer("PresidioPortao", 6000, false);
        }
        if (PortaoShopCar[playerid] == 1 && PlayerToPoint(30.0, playerid, 2106.8999000, 2198.2000000, 11.5000000)) // Portгo Conce
        {
            PortaoShopCar[playerid] = 1;
            MoveObject(PortaoConce, 2106.8999000, 2189.5000000, 11.5000000, 3);
            SetTimer("ConcePortao", 6000, false);
            //SetTimer("conce", 150000, false);
        }
        if (GetPlayerOrg(playerid) == 3 && PlayerToPoint(10.0, playerid, -310.5000000, 2701.6001000, 64.3000000)) // Portгo Exйrcito
        {
            MoveObject(PortaoExe, -310.5000000, 2713.2000000, 64.5000000, 3);
            SetTimer("ExercitoPortao", 5800, false);
        }
        if (GetPlayerOrg(playerid) == 7 && PlayerToPoint(16.0, playerid, 1524.3267, 2773.1541, 10.6719)) // Portгo do Prefeito
        {
            MoveObject(PortaoGov, 1525.5000000, 2761.7000000, 12.4000000, 3);
            SetTimer("GovernoPortao", 5900, false);
        }
        if (GetPlayerOrg(playerid) == 2 && PlayerToPoint(16.0, playerid, 1333.8000000, 1142.1000000, 10.6000000)) // Portгo da Policia Civil
        {
            MoveObject(PortaoPC, 1333.8000000, 1142.1000000, 10.5000000, 3);
            SetTimer("PCPortaoAbrindo", 5100, false);
        }
        if (GetPlayerOrg(playerid) == 6 && PlayerToPoint(20.0, playerid, -1003.3812, -1715.4420, 77.5703)) // Portгo do GRI
        {
            MoveObject(PortaoGRI, -1016.5000000, -1711.4000000, 79.4000000, 3);
            SetTimer("GRIPortaoAbrindo", 5000, false);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 2293.9956, 2499.2417, 3.3127)) // Portгo 01 PM-LV
        {
            MoveObject(pdgate1, 2294.079, 2497.147, 15.04, 3.5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 2319.2886, 2447.4146, 3.2734)) // Portгo 02 PM-LV
        {
            MoveObject(pdgate, 2319.592041, 2434.819580, 4.973688, 3.5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && PlayerToPoint(10, playerid, 1944.5251, 2215.1514, 10.8013)) // Porta DP
        {
            MoveObject(pdpc1, 1945.553, 2226.228, 12.571, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 9 && PlayerToPoint(10, playerid, 2488.6462, 2351.2375, 10.8281)) // Portгo Reporter
        {
            MoveObject(PR, 2471.228760, 2350.419678, 12.593704, 5);
            MoveObject(PREx, 2503.286377, 2350.442627, 12.601921, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pEmprego] == 14 && PlayerToPoint(10, playerid, 2525.9551, 2423.5425, 10.8281)) // Portгo Taxi
        {
            MoveObject(PortaoT, 2512.693, 2423.958, 11.495, 5);
            MoveObject(PortaoT2, 2539.325, 2423.904, 11.495, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pEmprego] == 14 && PlayerToPoint(10, playerid, 2478.6450, 2513.1750, 10.8121)) // Portгo Taxi
        {
            MoveObject(PortaoTex, 2479.064, 2513.290, 6.628, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (PlayerInfo[playerid][pMembro] == 10 || PlayerInfo[playerid][pLider] == 10 || PlayerInfo[playerid][pMembro] == 3 || PlayerInfo[playerid][pLider] == 3 && PlayerToPoint(6, playerid, 246.4088, 72.1410, 1003.6406)) // DP-PF
        {
            MoveObject(pddp, 245.60, 72.55, 999.58, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 250.1900, 63.1539, 1003.6406)) // DP-PF
        {
            MoveObject(pddpEx, 250.60, 64.0, 999.58, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && GetPlayerOrg(playerid) == 2 && GetPlayerOrg(playerid) == 3 && GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 228.1836, 151.1390, 1003.0234)) // DP-LV
        {
            MoveObject(pdpci1, 228.1679, 151.9974, 999.5209, 5);
            SetTimer("GateClose", 5000, 0);
        }
        if (GetPlayerOrg(playerid) == 1 && GetPlayerOrg(playerid) == 2 && GetPlayerOrg(playerid) == 3 && GetPlayerOrg(playerid) == 10 && PlayerToPoint(6, playerid, 228.1709, 161.1424, 1003.0234)) // DP-LV
        {
            MoveObject(pdpci2, 228.2171, 161.9765, 999.5209, 5);
            SetTimer("GateClose", 5000, 0);
        }
        return 1;
    }
se nгo me engano й necessбrio o oldkeys tambйm tipo

if(newkeys == KEY_FIRE && oldkeys == KEY_FIRE)
irб indicar que vocк pressionou e soltou.... caso contrбrio й necessбrio manter pressionado o KEY_FIRE


Re: newkeys - n0minal - 22.11.2014

Keys
IsPlayerInRangeOfPoint

Nгo use: if(newkeys == 2), pois usando deteзгo de keys assim seu sistema pode causar enganos ao vocк apertar mais de uma tecla ao mesmo tempo, entгo й mais aconselhбvel usar if(newkeys & 'ID da key)...

Quanto ao seu sistema, o portгo nгo estб abrindo pois a distвncia da abertura quase nem existe, olha as coordenadas:

1333.8000000, 1142.1000000, 10.6000000 // Portгo da Policia Civil

MoveObject(PortaoPC, 1333.8000000, 1142.1000000, 10.5000000, 3);

й quase a mesma coordenada, verifica isso ai amigo... Caso mesmo assim nгo funcione, verifique se o GetPlayerOrg(playerid) estб retornando o valor correto...


@edit:

Quote:
Originally Posted by focaximubh
Посмотреть сообщение
se nгo me engano й necessбrio o oldkeys tambйm tipo

if(newkeys == KEY_FIRE && oldkeys == KEY_FIRE)
irб indicar que vocк pressionou e soltou.... caso contrбrio й necessбrio manter pressionado o KEY_FIRE
precisa nгo


Re: newkeys - focaximubh - 22.11.2014

vlw por me corrigir eu tava pensando isso aqui agora '----'


Re: newkeys - JoshNudock - 22.11.2014

Primeira parte:

E se eu tentar assim..

pawn Код:
if (newkeys == KEY_CTRL_BACK) {

}
Funcional?

--

Quote:

KEY_CTRL_BACK** 262144 ~k~~GROUP_CONTROL_BWD~ ~k~~GROUP_CONTROL_BWD~ H H

https://sampwiki.blast.hk/wiki/Keys
Nгo entendi se KEY_CTRL_BACK й o id da tecla..


Re: newkeys - n0minal - 22.11.2014

Sim, isso й o ID da tecla, vocк tambйm pode utlizar nъmeros, dб no mesmo, mas pelo nome fica mais fбcil identificar, aconselho a vocк fazer assim:


Quote:

if (newkeys & KEY_CTRL_BACK)
{
//resto do cуdigo aqui
}




Re: newkeys - JoshNudock - 22.11.2014

Segunda parte:

Quote:
Originally Posted by n0minal
Посмотреть сообщение
o portгo nгo estб abrindo pois a distвncia da abertura quase nem existe, olha as coordenadas:

1333.8000000, 1142.1000000, 10.6000000 // Portгo da Policia Civil

MoveObject(PortaoPC, 1333.8000000, 1142.1000000, 10.5000000, 3);

й quase a mesma coordenada, verifica isso ai amigo... Caso mesmo assim nгo funcione, verifique se o GetPlayerOrg(playerid) estб retornando o valor correto...
Nгo entendi muito bem n0nimal, pois ali no caso eu peguei as coordenas do objeto direto(criado pelo MTA)..


Re: newkeys - n0minal - 22.11.2014

Vocк praticamente moveu o objeto para o mesmo lugar onde ele estava amigo:

De: (1333.8000000, 1142.1000000, 10.6000000)

Para: (1333.8000000, 1142.1000000, 10.5000000)

Isso sу moveu o portгo 0.1 coordenadas pra cima, ou seja, quase nada...


Re: newkeys - JoshNudock - 22.11.2014

Entгo n0minal, deu certo, uns abri outros nгo, mais isso й as coordenadas dos objetos..

mais estou com outro problema, tipo, era pra abrir o portгo tambйm quando a pessoa estiver no portгo, mais sу abre quando a pessoa estб fora do veiculo, entгo fiz isso:

pawn Код:
if (newkeys & KEY_CTRL_BACK && GetPlayerState(playerid) == PLAYER_STATE_DRIVER){
serб que funfa? ou oque eu mudo ae?

* quero que abri fora e dentro do carro..


Re: newkeys - JoshNudock - 22.11.2014

up!

nгo funfa com isso ae acima, agora nг pegou nada, alguem pf?

alguma logica ae?......