Portal SAMP
[Ajuda] sistema de equipar - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] sistema de equipar (/showthread.php?tid=75)

Páginas: 1 2


[Ajuda] sistema de equipar - Gabrielscripter - 29/09/2020

Bom os spawn das corps eu ja fiz so que me perdi numa coisa que e o /equipar se alguem poder me ajudar ai minha gm consta com 9
corporações


RE: [Ajuda] sistema de equipar - Theuzzin - 29/09/2020

Código:
CMD:equipar(playerid)
{
  if(SUAVARIAVEL[playerid][Org] == 1)
  {
    GivePlayerWeapon(playerid, 27, 500);
  }
  If(SUAVARIAVEL[playerid][Org] ==2)
  {
    GivePlayerWeapon (playerid, 25, 500);
  }
  return 1;
}



RE: [Ajuda] sistema de equipar - Smyle - 29/09/2020

Ei, tudo bem?

Não é complicado, basta você saber o que você quer. Vou te dar uma base, embora eu use outras com loops que resume tudo a quatro linhas, praticamente, essa com certeza vai funcionar.

Código:
CMD:equipar(playerid) { // eu uso zcmd, mas você pode usar o que vc quiser.

    new org = pInfo[playerid][pOrg] // Primeiramente vamos simplificar o uso de variáveis extensas. Adapte aqui pra qual variável diz qual a org do player.

    switch(org) {
        case 0: return SendClientMessage(playerid, -1, "Você não está em nenhuma org!");
        case 1: { // Checa se a org é do id 1
            if(!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) return SendClientMessage(playerid, -1, "Você não está no local certo."); // Checa se o player está no local certo de equipar. Substitua o 'x', 'y' e 'z'.
            SetPlayerArmour(playerid, 50.0); // Seta o colete pra 50 (metade)
            SetPlayerHealth(playerid, 100.0); // Abastece a vida
            GivePlayerWeapon(playerid, 5, 1); // Seta um bastão de baseball como arma branca
            GivePlayerWeapon(playerid, 24, 100); // Seta uma deagle com 100 balas
            GivePlayerWeapon(playerid, 25, 45); // Seta uma shotgun com 45 balas
            GivePlayerWeapon(playerid, 29, 150); // Seta uma MP5 com 150 balas
            GivePlayerWeapon(playerid, 31, 350); // Seta uma M4 com 350 balas
            SendClientMessage(playerid, -1, "Você equipou com sucesso."); // Manda uma mensagem ao player avisando
        }
    }
}


Depois é só repetir as checagens de organização pra quaisquer orgs que você queira checar.
Não testei o código, mas compila. Qualquer erro é só avisar q eu ajudo também. E se ajudei, +rep, please.


RE: [Ajuda] sistema de equipar - Gabrielscripter - 29/09/2020

Muito obrigado aos dois vou estar testando as duas

CMD:equipar(playerid) { // eu uso zcmd, mas você pode usar o que vc quiser.

new org = pInfo[playerid][pOrg] // Primeiramente vamos simplificar o uso de variáveis extensas. Adapte aqui pra qual variável diz qual a org do player.

switch(org) {
case 0: return SendClientMessage(playerid, -1, "Você não está em nenhuma org!");
case 1: { // Checa se a org é do id 1
if(!IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) return SendClientMessage(playerid, -1, "Você não está no local certo."); // Checa se o player está no local certo de equipar. Substitua o 'x', 'y' e 'z'.
SetPlayerArmour(playerid, 50.0); // Seta o colete pra 50 (metade)
SetPlayerHealth(playerid, 100.0); // Abastece a vida
GivePlayerWeapon(playerid, 5, 1); // Seta um bastão de baseball como arma branca
GivePlayerWeapon(playerid, 24, 100); // Seta uma deagle com 100 balas
GivePlayerWeapon(playerid, 25, 45); // Seta uma shotgun com 45 balas
GivePlayerWeapon(playerid, 29, 150); // Seta uma MP5 com 150 balas
GivePlayerWeapon(playerid, 31, 350); // Seta uma M4 com 350 balas
SendClientMessage(playerid, -1, "Você equipou com sucesso."); // Manda uma mensagem ao player avisando
}
}
}
Esse aqui deu 4 erros tem mais alguma coisa que tem que definir sem ser o cmd???

if(SUAVARIAVEL[playerid][Org] == 1)
Os dois tao com erro nessa bagulho de definir a corp/org

Nao sei pq


RE: [Ajuda] sistema de equipar - Theuzzin - 29/09/2020

Manda o error que deu aí por favor.


RE: [Ajuda] sistema de equipar - Smyle - 29/09/2020

@GabrielScripter, mande os erros que apareceram. Que a gente te ajuda a responder. É igual eu falei, provavelmente os erros do código que eu mandei são variáveis que você precisa substituir pois usei de exemplo.
Elas são:
pInfo[playerid][pOrg] <-- Variável que mostra o ID da organização do player
IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z) <- coordenadas que você precisa por, que são o local de equipar

Além disso, onde está
Código:
new org = pInfo[playerid][pOrg]
você tem que adicionar um ";" no final, ficando
Código:
new org = pInfo[playerid][pOrg];



RE: [Ajuda] sistema de equipar - Gabrielscripter - 29/09/2020

Vou mandar os erros

gamemodes\BCRPZERO.pwn(3724) : error 028: invalid subscript (not an array or too many subscripts): "pInfo"
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : warning 215: expression has no effect
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : error 001: expected token: ";", but found "]"
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : error 029: invalid expression, assumed zero
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

4 Errors.


RE: [Ajuda] sistema de equipar - Theuzzin - 29/09/2020

Você esqueceu do ; como o Smyle disse, e você tem que trocar a variável para a sua.


RE: [Ajuda] sistema de equipar - Smyle - 29/09/2020

(29/09/2020 15:26)Gabrielscripter Escreveu: Vou mandar os erros

gamemodes\BCRPZERO.pwn(3724) : error 028: invalid subscript (not an array or too many subscripts): "pInfo"
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : warning 215: expression has no effect
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : error 001: expected token: ";", but found "]"
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : error 029: invalid expression, assumed zero
C:\Users\brrp-12\Downloads\gm\gamemodes\BCRPZERO.pwn(3724) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664              Copyright © 1997-2006, ITB CompuPhase

4 Errors.

Foi literalmente o que eu disse, mas você ainda assim não trocou.

"São variáveis que você precisa substituir pois usei de exemplo.
Elas são:
pInfo[playerid][pOrg] <-- Variável que mostra o ID da organização do player
IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z) <- coordenadas que você precisa por, que são o local de equipar

Além disso, onde está
Código:
new org = pInfo[playerid][pOrg]
você tem que adicionar um ";" no final, ficando
Código:
new org = pInfo[playerid][pOrg];
"


RE: [Ajuda] sistema de equipar - Gabrielscripter - 29/09/2020

Vou tentar aq

C:\Users\brrp-12\Downloads\gm\gamemodes\bcrp2020.pwn(3723) : error 001: expected token: ";", but found ")" expression, assumed zero
12\Downloads\gm\gamemodes\bcrp2020.pwn(3727) : error 029: invalid expression, assumed zero
Continua com 3 erros