AJUDA! SOC!

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

AJUDA! SOC!

Mensagem por guiagge em Dom 15 Ago 2010, 20:32

Bom, esses dias postei um tópico pedindo ajuda com a Soc. Hehehe. Ninguém me respondeu.
Os motivos devem ter sido muitos:
Spoiler:
Antes de mais nada, isso não é simples, então são poucos os que poderiam me ajudar...
Depois, postei o tópico e 5 minutos depois e sumiu dos "Últimos assuntos".
E só pra finalizar, acho que não ia adiantar nada mesmo (para se aprender mesmo algo é preciso fuçar mesmo, quebrar a cabeça, e não só pedir pronto (mesmo que seja quase pronto)).
Enfim, isso não interressa mais, porque consegui fazer o cliente se comunicar com o servidor!
Mas surgiu um problema (como sempre) ... É que fiz um exemplo bem tosco, e nesse o cliente só serve para mandar uma mensagem quando o jogador entra, e outra quando o jogador aperta "Z". Quando ele entra, o servidor cria uma instância do objeto "jogador_obj" e armazena o número dela na array jogador, a posição da ID de quem enviou a mensagem (jogador[id]=criar_instancia(...)). Já quando ele aperta "Z", o servidor manda a instância "jogador[id]" se mover para uma posição randômica. E aí é que vem o problema: quando dois jogadores estam conectados ao servidor, eles só "controlam" a instância que foi criada depois.

Gostaria de saber como criar uma instância diferente para cada jogador que entrar e como fazer a instância certa se mover.


Última edição por guiagge em Dom 22 Ago 2010, 19:47, editado 1 vez(es)

guiagge

Número de Mensagens : 90
Idade : 21
Data de inscrição : 24/09/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: AJUDA! SOC!

Mensagem por Kabeção em Seg 16 Ago 2010, 11:25

Crie uma variavel com um nome que representara o jogador.
Por exemplo:
Código:
globalvar p;
p = 1;
Quando um novo jogador entrar adicione +1 em p e utilize as arrays com isso.
jogador[p]=criar_instancia(...);
liva[p]...

O servidor devia guardar as informações para cada jogador usando esse indice também:
Código:
Player - 1
Nome: 'Kabecao'
Vida: 20
Level: 5

Player - 2
Nome: 'guiagge'
Vida: 30
Level: 15

Na hora de conectar, para testes, peça para o cliente informar seu id (1,2,3...) ao invés do nick e a senha.
Quando se trabalha com servidor e cliente, você deve sempre atribuir um valor único (indice) para identificar o cliente.

As instancias do GM são um exemplo, mesmo que você crie 10 objetos iguais cada um deles tem uma id diferente para poder identifica-los.

Kabeção

Ranking : Sem avaliações
Número de Mensagens : 2314
Data de inscrição : 08/06/2008
Reputação : 100
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 0
   : 1

http://blackcapapps.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: AJUDA! SOC!

Mensagem por guiagge em Dom 22 Ago 2010, 19:57

Valeu Kabeção pela ajuda. Mas meu código não estava funcionando por problemas nos scripts da Soc.
Já estou até desistindo de usar essa maldita dll! (do meu projeto eu não desisto não!)
Estava usando a versão 3.1 que encontrei na GMC, mas não conseguia envia mensagens.
Baixei aquela que estava nas aulas do Jõao Neto, e consegui (apesar de ter tido que trocar o nome de umas variáveis no "message_receive").
E agora é isso... o maldito script coloca como id 8 para todo jogador que entra (ao invés de ir numerando apartir do 2)...


Por favor, me ajudem! Alguém sabe de uma versão decente pra download? Por favor me passe o link!
Se forem me falar para mudar para 39dll, antes me passem um bom tutorial sobre a dita cuja!
Desde já agradeço.

guiagge

Número de Mensagens : 90
Idade : 21
Data de inscrição : 24/09/2008
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: AJUDA! SOC!

Mensagem por Conteúdo patrocinado Hoje à(s) 00:28


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum