Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
[Resolvido]Por que o random me odeia?
+2
makgamer
Dialga111
6 participantes
Página 1 de 1
[Resolvido]Por que o random me odeia?
Oie, não sei se alguém lembra, mas eu sou o cara que tava criando um jogo de luta com 26 personagens no outro tópico (seleção de personagens)
Bom, estou com outro probleminha: ao selecionar o personagem eu vou para uma room e crio o personagem inimigo. Porém, o inimigo tem que ser escolhido aleatoreamente, entre os 26 personagens (sim, você pode lutar contra si mesmo). E é aí que mora o problema.
Tentei o seguinte:
-ao clicar no personagem na tela de seleçao, vai para a room do personagem, que tem o personagem e o objeto inimigo (que não tem sprite). Ainda ao clicar, a variável global.inimigo recebe um valor aleatório
Sim, eu declarei a variavel global em um objeto controle na primeira room.
Então, aí, no objeto inimigo, no evento create eu coloquei um script assim:
Tá, até aí tudo bem, mas sempre que eu testo sai o inimigo_Y, e nunca nenhum outro! Não consigo entender o q estou fazendo de errado ou o qual é o jeito certo. Já usei as variáveis random, random_set_seed, randomize e random_range, mas dá sempre a mesma coisa (aliás, se alguém puder me explicar qual é a diferença entre elas, ficarei muito grato)
Por favor, me ajudem!
Bom, estou com outro probleminha: ao selecionar o personagem eu vou para uma room e crio o personagem inimigo. Porém, o inimigo tem que ser escolhido aleatoreamente, entre os 26 personagens (sim, você pode lutar contra si mesmo). E é aí que mora o problema.
Tentei o seguinte:
-ao clicar no personagem na tela de seleçao, vai para a room do personagem, que tem o personagem e o objeto inimigo (que não tem sprite). Ainda ao clicar, a variável global.inimigo recebe um valor aleatório
- Código:
global.inimigo = random_range(1,26)
Sim, eu declarei a variavel global em um objeto controle na primeira room.
Então, aí, no objeto inimigo, no evento create eu coloquei um script assim:
- Spoiler:
- if not global.inimigo=1
{
if not global.inimigo=2
{
if not global.inimigo=3
{
if not global.inimigo=4
{
if not global.inimigo=5
{
if not global.inimigo=6
{
if not global.inimigo=7
{
if not global.inimigo=8
{
if not global.inimigo=9
{
if not global.inimigo=10
{
if not global.inimigo=11
{
if not global.inimigo=12
{
if not global.inimigo=13
{
if not global.inimigo=14
{
if not global.inimigo=15
{
if not global.inimigo=16
{
if not global.inimigo=17
{
if not global.inimigo=18
{
if not global.inimigo=19
{
if not global.inimigo=20
{
if not global.inimigo=21
{
if not global.inimigo=22
{
if not global.inimigo=23
{
if not global.inimigo=24
{
if not global.inimigo=25
{
instance_create(600,176,inimigo_A)
}
else
instance_create(600,176,inimigo_B)
}
else
instance_create(600,176,inimigo_C)
}
else
instance_create(600,176,inimigo_D)
}
else
instance_create(600,176,inimigo_E)
}
else
instance_create(600,176,inimigo_F)
}
else
instance_create(600,176,inimigo_G)
}
else
instance_create(100,100,inimigo_H)
}
else
instance_create(100,100,inimigo_I)
}
else
instance_create(600,176,inimigo_J)
}
else
instance_create(600,176,inimigo_K)
}
else
instance_create(600,176,inimigo_L)
}
else
instance_create(600,176,inimigo_M)
}
else
instance_create(600,176,inimigo_N)
}
else
instance_create(600,176,inimigo_O)
}
else
instance_create(600,176,inimigo_P)
}
else
instance_create(600,176,inimigo_Q)
}
else
instance_create(600,176,inimigo_R)
}
else
instance_create(600,176,inimigo_S)
}
else
instance_create(600,176,inimigo_T)
}
else
instance_create(600,176,inimigo_U)
}
else
instance_create(600,176,inimigo_V)
}
else
instance_create(600,176,inimigo_W)
}
else
instance_create(600,176,inimigo_X)
}
else
instance_create(600,176,inimigo_Y)
}
else
instance_create(600,176,inimigo_Z)
Tá, até aí tudo bem, mas sempre que eu testo sai o inimigo_Y, e nunca nenhum outro! Não consigo entender o q estou fazendo de errado ou o qual é o jeito certo. Já usei as variáveis random, random_set_seed, randomize e random_range, mas dá sempre a mesma coisa (aliás, se alguém puder me explicar qual é a diferença entre elas, ficarei muito grato)
Por favor, me ajudem!
Dialga111- Data de inscrição : 13/03/2010
Reputação : 0
Número de Mensagens : 33
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
oO
que isso?????
n é tao dificil...
cria uma variavel global.personagem com o valor 0
ai na hora que vai por aleatoriamente coloca
na hora do random ele vai escolher entre fulano1,fulano2 ou fulano3
e na hora da porrada ele vai criar a escolha no random
que isso?????
n é tao dificil...
cria uma variavel global.personagem com o valor 0
ai na hora que vai por aleatoriamente coloca
- Código:
global.personagem = choose("fulano","fulando2","fulano3")
- Código:
if global.personagem = fulano2 then instance_create(x,y,enemy_fulano2)
if global.personagem = fulano then instance_create(x,y,enemy_fulano1)
if global.personagem = fulano3 then instance_create(x,y,enemy_fulano3)
na hora do random ele vai escolher entre fulano1,fulano2 ou fulano3
e na hora da porrada ele vai criar a escolha no random
makgamer- Games Ranking :
Notas recebidas : D
Data de inscrição : 29/03/2009
Reputação : 7
Número de Mensagens : 941
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 2.0
- Unity
- Java
- C#
- Javascript
- RPG Maker
- C ou C++
- Outros
Re: [Resolvido]Por que o random me odeia?
original no help do
random(x) Returns a random real number between 0 and x. The number is always smaller than x.
random_range(x1,x2) Returns a random real number between x1 (inclusive) and x2 (exclusive).
random_set_seed(seed) Sets the seed (an integer) that is used for the random number generation. Can be used to repeat the same random sequence. (Note though that also some actions and the system itself uses random numbers.)
colocado no google tradutor:
random (x) Retorna um número real aleatório entre 0 e x. O número é sempre menor do que x.
random_range (x1, x2) Retorna um número real aleatório entre x1 (inclusive) e x2 (exclusive).
random_set_seed (semente) Define a semente (um inteiro) que é usado para a geração de números aleatórios. Pode ser usado para repetir a mesma seqüência aleatória. (Note que apesar de algumas ações e também o próprio sistema usa números aleatórios).
random(x) Returns a random real number between 0 and x. The number is always smaller than x.
random_range(x1,x2) Returns a random real number between x1 (inclusive) and x2 (exclusive).
random_set_seed(seed) Sets the seed (an integer) that is used for the random number generation. Can be used to repeat the same random sequence. (Note though that also some actions and the system itself uses random numbers.)
colocado no google tradutor:
random (x) Retorna um número real aleatório entre 0 e x. O número é sempre menor do que x.
random_range (x1, x2) Retorna um número real aleatório entre x1 (inclusive) e x2 (exclusive).
random_set_seed (semente) Define a semente (um inteiro) que é usado para a geração de números aleatórios. Pode ser usado para repetir a mesma seqüência aleatória. (Note que apesar de algumas ações e também o próprio sistema usa números aleatórios).
reddragon- Data de inscrição : 19/03/2008
Reputação : 0
Número de Mensagens : 267
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
makgamer, a função choose só me deixa escolher um máximo de 16 valores, eu preciso de 26 :/ tem como ter mais?
reddragon, valeu pela explicação, eu tinha olhado no help mas num tinha entendido direito x.x
reddragon, valeu pela explicação, eu tinha olhado no help mas num tinha entendido direito x.x
Dialga111- Data de inscrição : 13/03/2010
Reputação : 0
Número de Mensagens : 33
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
tipow... pro CHOOSE aceitar Mais Valores é só fazer assim: (por exemplo)
choose(choose(valor1,valor2),choose(valor3,valor4),choose(valor5,valor6))
e assim por diante ;)
FLWs Té +
choose(choose(valor1,valor2),choose(valor3,valor4),choose(valor5,valor6))
e assim por diante ;)
FLWs Té +
Re: [Resolvido]Por que o random me odeia?
talvez assim:
floor é um comando de arredondamento porque o comando random um numero Real positivo, isto é, fracionado. mas o floor arredondando ele para baixo e somando com 1 conseguimos o intervalo de random que você quer.
- Código:
i = floor(1 + random(25))
switch(i){
case 1:
instance_create(x,y,enemy_fulano1)
break;
case 2:
instance_create(x,y,enemy_fulano2)
break;
case 3:
instance_create(x,y,enemy_fulano3)
break;
case 4:
instance_create(x,y,enemy_fulano4)
break;
.
.
.
.
case 26:
instance_create(x,y,enemy_fulano26)
break;
}
floor é um comando de arredondamento porque o comando random um numero Real positivo, isto é, fracionado. mas o floor arredondando ele para baixo e somando com 1 conseguimos o intervalo de random que você quer.
reddragon- Data de inscrição : 19/03/2008
Reputação : 0
Número de Mensagens : 267
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
Tenta colocar isso:
- Código:
global.inimigo = irandom_range(1,26)
victor_aco- Data de inscrição : 25/03/2010
Reputação : 2
Número de Mensagens : 666
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
:O que momento lindo deu certooooo
vlw gente!!!
se algum admin quiser, ja pode trancar o tópico, problema resolvido!
VLW PESSOAS!
vlw gente!!!
se algum admin quiser, ja pode trancar o tópico, problema resolvido!
VLW PESSOAS!
Dialga111- Data de inscrição : 13/03/2010
Reputação : 0
Número de Mensagens : 33
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Por que o random me odeia?
Tópico resolvido.
Janx- Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios :
x 0 x 0 x 0
x 0 x 2 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Resolvido] Ajuda com Random
» Direção random[RESOLVIDO]
» [Resolvido]Duvida com random?
» [Resolvido]Duvida com random
» [RESOLVIDO]como criar um sistema de random??
» Direção random[RESOLVIDO]
» [Resolvido]Duvida com random?
» [Resolvido]Duvida com random
» [RESOLVIDO]como criar um sistema de random??
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos