Ad Code

Responsive Advertisement

COMO CRIAR UM SPAWN ALEATÓRIO SAMP

 Introdução:

Bem-vindo ao meu tutorial passo a passo sobre como criar spawns aleatórios. Este tutorial foi criado como se eu fosse totalmente novo no peão de scripts, desta forma, tornei o tutorial compreensível para todos os tipos de usuários, de Noobs a Pro's.


O tutorial:

Etapa 1: Obtendo as coordenadas
Para criar spawns aleatórios, é claro que precisamos obter as coordenadas que usaremos para nossos spawns aleatórios. Esta é a maneira mais fácil de obter estes:
  1. Entre no jogo.
  2. Vá para o local onde deseja que um dos spawns esteja.
  3. Digite "/ salvar" (sem o "")
  4. Repita os passos acima até que você tenha todos os seus spawns.
Nota: É importante que seu personagem esteja voltado para a maneira que você deseja que ele desova. É muito chato quando seu personagem nasce de frente para uma parede!
Nota2: Aconselho você a adicionar uma palavra atrás de "/ save" para que você saiba facilmente quais são para os spawns aleatórios.
(Exemplo: / save randomspawn)


Passo 2: Encontrando as coordenadas
No passo 1 nós salvamos nossos spawns e agora é hora de retirá-los do arquivo padrão onde o comando "/ save" salva as posições.

Navegar também
Código:
... \ Meus documentos \ Arquivos de usuário do GTA San Andreas \ SAMP
Pesquise o arquivo
Código:
savepositions.txt
E abra.

Agora pesquise no arquivo até encontrar suas posições que estão marcadas com qualquer palavra que você adicionou ao seu comando "/ save" (no tutorial isso será randomspawn).


Passo 3: Convertendo as coordenadas
No passo 2 localizamos as posições, agora teremos que fazer com que elas se encaixem em nosso array.

NOTA IMPORTANTE: Esta ferramenta pode converter as coordenadas automaticamente !! Graças a JaTochNietDan

Copie todas as posições dos seus pontos de spawn e cole-os dentro do seu modo de jogo (ou onde você quiser que os spawns aleatórios estejam)
Código:
AddPlayerClass (101,1249.7258, -2047.9263,59.9209,90.2055,0,0,0,0,0,0); // Randomspawn
AddPlayerClass (101,1241.2084, -2057.6521,60.0190,94.9352,0,0,0,0,0,0); // Randomspawn
AddPlayerClass (101,1241.0105, -2052.6873,59.9975,2.8144,0,0,0,0,0,0); // Randomspawn
AddPlayerClass (101.718.4906, -1477.3024,5.4688,357.9947,0,0,0,0,0,0); // Randomspawn
AddPlayerClass (101,722.3772, -1477.2856,5.4688,272.3814,0,0,0,0,0,0); // Randomspawn
Isso é o que temos, mas precisaremos convertê-lo em um array. Mas primeiro!
O que é o que?

Código:
AddPlayerClass (skinid, x, y, z, ângulo, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)
Nota: Verifique o wiki para mais informações: Click me

Para nossos spawns aleatórios, precisaremos apenas das coordenadas x, y, z e do ângulo.
Código:
1249.7258, -2047.9263, 59.9209, 90.2055 // Randomspawn
1241.2084, -2057.6521, 60.0190, 94.9352 // Randomspawn
1241.0105, -2052.6873, 59.9975, 2.8144 // Randomspawn
718.4906, -1477.3024, 5.4688, 357.9947 // Randomspawn
722.3772, -1477.2856, 5.4688, 272.3814 // Randomspawn
Agora que extraímos as coordenadas x, y, z e o ângulo da função AddPlayerClass, podemos facilmente converter isso em um array!

Código:
novo Float: RandomSpawns [] [] = 
{
	{1249.7258, -2047.9263, 59.9209, 90.2055}, // Randomspawn
	{1241.2084, -2057.6521, 60.0190, 94.9352}, // Randomspawn
	{1241.0105, -2052.6873, 59.9975, 2.8144}, // Randomspawn
	{718.4906, -1477.3024, 5.4688, 357.9947}, // Randomspawn
	{722.3772, -1477.2856, 5.4688, 272.3814} // Randomspawn
};
Importante: O array deve estar localizado fora de qualquer função !!
Nossa que isso?
É hora de explicar, você não acha:

Código:
novo Float: RandomSpawns [] [] = 
{
};
  1. novo é a palavra padrão para indicar a criação de uma nova variável, array, ....
  2. Float indica que os dados dentro da matriz serão Floats.
  3. RandomSpawns é o nome da matriz (você pode alterar isso se quiser, mas lembre-se de alterá-lo em todos os lugares em que iremos usá-lo!)
  4. O primeiro [] é deixado em branco para que não tenhamos que alterar o número quando adicionarmos mais spawns, isso basicamente permite dados ilimitados.
  5. O segundo [] é deixado em branco para que não tenhamos que alterar o número quando quisermos adicionar mais dados a um spawn. (Exemplo: x, y, z, ângulo, pele, arma)
  6. O resto do código deve ser bem fácil de entender.

Código:
{1249.7258, -2047.9263, 59.9209, 90.2055}, // Randomspawn
Código:
{x, y, z, ângulo}, // Randomspawn
Nota: A última linha não contém um "," no final que indica que esta é a última linha do array.


Etapa 4: Criando o código de spawn
Nas etapas anteriores fizemos tudo contendo as coordenadas, agora é hora de usá-las!

O array deve estar no mesmo script onde colocaremos este trecho de código!

Achar
Código:
public OnPlayerSpawn (playerid)
{
    return 1;
}

Depois de encontrar esta função, é hora de criar a desova aleatória real.
Código:
public OnPlayerSpawn (playerid)
{
	novo Random = random (sizeof (RandomSpawns));
	SetPlayerPos (playerid, RandomSpawns [Random] [0], RandomSpawns [Random] [1], RandomSpawns [Random] [2]);
    SetPlayerFacingAngle (playerid, RandomSpawns [Random] [3]);
	return 1;
}
  1. random (sizeof (RandomSpawns)) é uma função que escolhe aleatoriamente um número de uma determinada quantidade. O sizeof (RandomPlayerSpawns) gera automaticamente a quantidade de dados dentro da matriz, neste exemplo, 5.
  2. SetPlayerPos: Clique em mim
  3. RandomSpawns [Random] [0] representa a coordenada x que corresponde ao número que nossa variável "Random" contém.
  4. RandomSpawns [Random] [1] representa a coordenada y.
  5. RandomSpawns [Random] [2] representa a coordenada z.
  6. SetPlayerFacingAngle: Clique em mim
  7. RandomSpawns [Random] [3] representa o ângulo.



Palavras finais:
Parabéns! Você criou um spawn aleatório e as informações fornecidas devem permitir que você altere o que quiser sem problemas.

Postar um comentário

0 Comentários

© 2022 PawnScript All Rights Reversed