GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Retorno da GMBR!!!
por theguitarmester Ter 19 Mar 2024, 22:38

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


usando 39dll.dll receber id de players e comandos

2 participantes

Ir para baixo

usando 39dll.dll receber id de players e comandos Empty usando 39dll.dll receber id de players e comandos

Mensagem por charlles.rafael Qua 31 Jul 2013, 11:14

ola gente , eu gostaria de saber como eu recebo dados do servidor e mandar os dados pra instancia certa
eu estou fazendo assim: quando selecionado o personagem , o jogador é mandado pra room rm_principal ai quando entra outro jogador o servidor identifica isso e cria o objeto (oteste) mas quando entra um terceiro as informações do terceiro vai pro char do 3 e 2 , tipo nao to conseguindo fazer as instancias ser diferenciadas, acaba mandando pra todos os objetos (oteste) tudo recebido pelo servidor, como faço pra eu receber os dados do servidor e mandar pra instancia certa?? eu to usando a dll  39ll.dll, se  alguem puder me ajudar a receber os dados ou algum código que faça isso por favor me ajudem

o código que recebe os dados do servidor é esse:
Código:
var msg,a,s,d,i,g      r,e,t,u;
msg = readbyte()


switch(msg)
{
    case 1://caso for novo jogador
        
        a = readushort()//recebe x
        s = readushort()//recebe y
        d = readstring()//recebe nome
        g = readbyte()//le id
        global.playerid = g
        
        
        if (d != oEu.nome)
        {
        
        i = instance_create(x,y,oteste)
        i.x = a//recebe x
        i.y = s//recebe y
        i.nome = d//recebe nome
        i.playerid = g
        room_instance_add(rm_teste,x,y,oteste)

        }
        
    
    break
    
    case 2://atualiza informações de novo jogador
        
        
        e = readushort()//recebe x
        r = readushort()//recebe y
        t = readstring()//recebe nome
        u = readbyte()//id
        
        if (!instance_exists(oteste)) //criar oteste se nao ouver
        {
        i = instance_create(x,y,oteste)
        i.x = e//recebe x
        i.y = r//recebe y
        i.nome = t//recebe nome
        i.playerid = u//recebe id
        room_instance_add(rm_teste,x,y,oteste)
        }else
        {
            //i= oteste.playerid
        
            with (oteste)//  <<< daqui pra baixo que acho que ta errado
            {
                if( i.playerid = u)
                {
                    self.x = e
                    self.y = r
    
                }
            }
        }
        
      
    break
    
}

espero que posam me ajudar

obs: como eu faço pra quando o player logar ele identificar todos os outros logados??


Última edição por charlles.rafael em Sex 02 Ago 2013, 10:29, editado 1 vez(es)
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : usando 39dll.dll receber id de players e comandos Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

usando 39dll.dll receber id de players e comandos Empty Re: usando 39dll.dll receber id de players e comandos

Mensagem por Kapoty Qua 31 Jul 2013, 13:32

O problema deve estar nesta parte:

Código:
 with (oteste)//  <<< daqui pra baixo que acho que ta errado
            {
                if( i.playerid = u)
                {
                    self.x = e
                    self.y = r
    
                }
            }

Este objeto "oteste" não está checando se o seu id é o id recebido, acho que o certo seria assim:

Código:
if oteste.playerid = u {
oteste.x=e;
oteste.y=r;
}
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : usando 39dll.dll receber id de players e comandos Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

usando 39dll.dll receber id de players e comandos Empty Re: usando 39dll.dll receber id de players e comandos

Mensagem por charlles.rafael Qua 31 Jul 2013, 18:28

ola Kapoty, tipo eu ja tentei isso e consegui fazer funcionar assim:
Código:
with (oteste)
            {
                
            
            if( self.playerid = u)
                {
                    self.x = e
                    self.y = r
                }
            }

mas ainda tem um problema, quando eu conecto mais de 2 pessoas a 3 pessoa nao identifica a primeiro e se conecto uma 4 pessoa a 4 não identifica a 2 pessoa e assim por diante, acho que o erra ta no codigo que passei la em cima se alguem puder me ajudar, tipo eu preciso de uma condicao pra verificar se o que eu to mandando ja existe e se nao existir ai si cria um novo objeto (oteste)

obrigado Kapoty por tentar me ajudar blz Happy

obs: estranho é que o jogador 1 e 2 identificao o resto normalmente (estranho ne) se alguém puder me ajudar Very Happy
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : usando 39dll.dll receber id de players e comandos Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

usando 39dll.dll receber id de players e comandos Empty Re: usando 39dll.dll receber id de players e comandos

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos