Conectar-se
Quem está conectado
25 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 25 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 08/10/2011
Número de Mensagens : 106
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

checar menor variável

em Sex 07 Fev 2014, 12:41
No jogo que estou fazendo os NPCs devem se mover apenas quando chegar o seu turno, além disso eu queria eles se movessem um de cada vez, exemplo: tem 2 obj_x, o primeiro obj_x deve se mover e só depois de terminar seu movimento o outro obj_x começa o seu.

Eu usei uma variável sele=id, assim a de todos será diferente só que eu preciso de um código que cheque quem tem o menor valor em sele, ele se moverá primeiro, depois o que tem o segundo menor valor e assim por diante.

obs: Os NPCs serão criados também durante o jogo.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 13:37
Jogue os valores numa lista, ordene e voilà. O primeiro será o menor.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 08/10/2011
Número de Mensagens : 106
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 14:45
Você poderia me passar um exemplo de como faz uma lista? E como checar quem é o primeiro?
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 15:00
Dê uma lida aqui, tem um bocado de funções de lista. Não está completo, mas já é um bom começo.
O manual aborda o assunto de forma simples, também.

Pra cortar o suspense, a função que ordena a lista é ds_list_sort. Assim que você ler a descrição dela (no manual, porque no tutorial não tem), vai saber o que fazer.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 08/10/2011
Número de Mensagens : 106
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 15:54
Eu estou usando GM lite e essa função é bloqueada  .
Mas valew pela ajuda, acho que só vou desacelerar os NPCs para quando eles se moverem todos juntos não ficar muito estranho.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 16:14
Reputação da mensagem: 100% (1 votos)
você pode fazer um loop with, também.
Código:
var min;
min := 99999999999; // um valor muito alto, pra garantir que alguma coisa será menor
with (objetos){ // e aqui começa seu loop
if (variável < min){ // se a variável do objeto for menor que o valor de "min"
min := variavel; // diminui o valor de min
} // se não for, não faz nada
}
Usando um código assim, "min" vai armazenar o menor valor entre as variáveis. Se for um script, você ainda pode retornar esse valor (return(min)), o que facilita sua vida, na hora de usar o script.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 08/10/2011
Número de Mensagens : 106
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: checar menor variável

em Sex 07 Fev 2014, 23:53
@Edit:

Eu estava pensando no seu código e acabei descobrindo outro jeito de fazer:

Eu criei uma variável global.lista=21.

no create do NPC:
Spoiler:

global.lista-=1
sele=global.lista
volta_sele=global.lista

step:
Spoiler:
if sele=global.lista
{códigos de movimento
sele=21
global.lista+=1}

E sempre que o turno acaba global.lista volta a ser 21 e global.lista -= instance_number(npc) e sele=volta_sele
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: checar menor variável

em Dom 09 Fev 2014, 22:49
Bom... Eu não entendi muito bem o que você queria, então não entendi muito bem o que você fez nem a relação com o meu código... Mas se funcionou, é o que importa! Smile
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum