Conectar-se
Quem está conectado
29 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 28 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 29/02/2012
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

como nomeiar um objeto.

em Qua 29 Fev 2012, 21:52
gente, criei uma room com uma árvore.na sprite da árvore, coloquei 2 frames de árvores diferentes.Fiz isso com itenção de economizar objetos.Para colocar as duas árvores diferentes numa room usei o código no step: if x>20{framedois=true}e coloquei uma em cada canto.

eu gostaria de saber como nomeiar cada um desses objetos de árvore, chamando uma de a1 e uma de a2.De tal modo, colocarei ações diferente em cada uma, usando apenas um objeto!
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: como nomeiar um objeto.

em Qui 01 Mar 2012, 08:42
Tem muitas formas de fazer isso. Uma delas é ir naquela tela de edição da room, apertar ctrl e clicar com o botão direito. Fazendo isso, você pode colocar um segundo create_event (na verdade, ele vai acontecer ANTES do create event do objeto em si). Nesse segundo create_event, você coloca "nome=A1" e "nome=A2", um código em cada árvore. Daí, nas ações, você põe "if nome == A1" e "if nome == A2".

Outra forma é criar um segundo objeto pra controlar as árvores. Eu prefiro esse método, mas parece que você quer é evitar o segundo objeto, então deixei pra depois, mas vamos lá. Esse objeto cria as árvores usando um código do tipo:
Código:
A1 = instance_create(ladoEsquerdo, chão, árvore);
with(A1){
   //define as variáveis exclusivas dessa árvore
   }
A2 = instance_create(ladoDireito, chão, árvore);
with(A2){
   //define as variáveis exclusivas dessa árvore
   }
Daí você administra todas as reações das árvores a partir desse objeto, que vai saber direitinho qual é a A1 e qual é a A2.
avatar
Data de inscrição : 29/02/2012
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

socorro

em Qui 01 Mar 2012, 15:54
saim escreveu:Tem muitas formas de fazer isso. Uma delas é ir naquela tela de edição da room, apertar ctrl e clicar com o botão direito. Fazendo isso, você pode colocar um segundo create_event (na verdade, ele vai acontecer ANTES do create event do objeto em si). Nesse segundo create_event, você coloca "nome=A1" e "nome=A2", um código em cada árvore. Daí, nas ações, você põe "if nome == A1" e "if nome == A2".

Outra forma é criar um segundo objeto pra controlar as árvores. Eu prefiro esse método, mas parece que você quer é evitar o segundo objeto, então deixei pra depois, mas vamos lá. Esse objeto cria as árvores usando um código do tipo:
Código:
A1 = instance_create(ladoEsquerdo, chão, árvore);
with(A1){
   //define as variáveis exclusivas dessa árvore
   }
A2 = instance_create(ladoDireito, chão, árvore);
with(A2){
   //define as variáveis exclusivas dessa árvore
   }
Daí você administra todas as reações das árvores a partir desse objeto, que vai saber direitinho qual é a A1 e qual é a A2.
vc me disse pra por nome, mas o gm pro nao reconhece e variável nome!Sua ajuda nao valeu de nada, p favor, me ajudem Suspect
avatar
Ranking : Nota B
Notas recebidas : E + B+B
Data de inscrição : 02/06/2009
Número de Mensagens : 513
Insígnias de JAM :

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

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

Re: como nomeiar um objeto.

em Qui 01 Mar 2012, 16:04
o Saim escreveu
"nome=A1"
,
isso quer dizer que Você deve criar uma variável 'nome' e por o valor "A1", imagino.
não é isso?
avatar
Data de inscrição : 29/02/2012
Número de Mensagens : 9
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuário

meu objetivo no topico.

em Qui 01 Mar 2012, 16:16
Eudes - Hyo escreveu:o Saim escreveu
"nome=A1"
,
isso quer dizer que Você deve criar uma variável 'nome' e por o valor "A1", imagino.
não é isso?

Tudo o que eu quero é economizar o máximo de objetos possível.Daí entao a ideia de usar um so objeto pra ser árvore,pedra e etc.Renomeiando, eu mudaria eventos.Não consseguí das formas q me explicaram, quero outras.
avatar
Ranking : Nota A
Notas recebidas : A
Data de inscrição : 16/10/2011
Número de Mensagens : 268
Insígnias de JAM :

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

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

Re: como nomeiar um objeto.

em Qui 01 Mar 2012, 16:32
Tudo o que eu quero é economizar o máximo de objetos possível.Daí entao a ideia de usar um so objeto pra ser árvore,pedra e etc.Renomeiando, eu mudaria eventos.Não consseguí das formas q me explicaram, quero outras.

Acho que entendi oque vc quer. Quer que cada instancia (cópia) de um mesmo objeto tenha eventos diferentes das outras, é isso?

Se for, é bem simples. No editor de rooms, quando colocar o cursor do mouse sobre uma das instâncias, vai aparecer na parte de baixo do editor "id: xxxxx". Cada instância do objeto recebe um id diferente, assim é possível que instância do mesmo objeto realizem ações diferentes das demais.

Quando você for colocar uma ação que só será realizada por determinada instância, é só colocar:

Código:
if (id == ID_DA_INSTANCIA)
{
    acontece ação;
}
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