SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Script para cubo aparecer
[TUTORIAL] Unity 5 - Sistema Completo de PORTAS E CHAVES
Duvida com Animacoes
VENHAM CONTEMPLAR CUBOID! E entrem para a equipe!
Formação de equipa para o Jogo Until the last
Modelagem do braço personagem Ajudem
Resolução De Tela x 2D Mobile Game
[TUTORIAL] Android - Sistema de controle third person shooter, Joystick + Swipe camera
[Alpha Android] - Night Hunter DevLog - Action RPG (25 de julho de 2017) Baixe!
(Avaliem) Menu interativo simples
Visual Stuido Duvida SIMPLES !! ME AJUDEM !! HELP
Cursos Para Areá da Informatica
Instanciar Objeto em Distancia Certa!
Eu não consigo abrir o monodevelop
Load e Save?
Gerador de mesh procedual
Erro ao alterar variável em tempo de execução !???
Baixe grátis modelos 3D - Hospital e personagens animados com expressão facial
[ENQUETE] Modelo com normal map e diferença - Aula de Bake
Perde vida e CheckPoint?
Como posso fazer para que o braço do meu personagem siga a minha câmera?
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Opiniões para carregar prefabs pesados: Resources, Asset Bundles ou cenas?
Inimigo Em C# Seguir e Atacar o Player !
Como coloco video do youtube
Audio Player C#
Algum tutorial sobre multiplayer simples é em portugues???
Meu jogo: Cuboid (v0.1.0)
VSync ??
Quanto custa $$$ ?
[dúvida] Editar um material individual.
Duvida com o Terrain da Unity5
[TUTORIAL] Unity 5 - Botão contínuo usando UI (Manter pressionado)
clicar com o botão direito do mouse em um BOTÃO
Vagas para o Naufrágio, um jogo sobrevivência que estou desenvolvendo
Ajuda para desenvolvimentos dos jogos de vocês
Como criar a mira de armas em personagens em terceira pessoa
Sistema de Trafego de Carros e Pedestres!
[RESOLVIDO] Braço esta desaparecendo alguem pode me dizer? vejam o video
[TUTORIAL] Barra de VIDA / HP contínua
inimigo atirar no player
Update desenvolvimento do meu jogo Epic Survival (Re Survival :D)
Como retornar "false" se um objeto não existir?
Como usar o script da unity "MouseLook" em outros scripts ?
Opinião sobre modelo feito no Blender
Como faz a geração de terreno aleatório???
[TUTORIAL] Camera orbital com zoom (scroll)
Bugs na textura
O que voces esperam em um jogo onde voce e um peixe???
[Equipe] Equipe para jogo tower defense low poly
COMO FAZER UM SISTEMA DE PARKOUR (SEM ANIMACAO) IDEIAS
Arrastar um botão ao manter o mouse pressionado
[DUVIDA]Como usar o setActive no photon
como reconhecer a ''face'' de uma mesh da agua
Diminuir a velocidade do veiculo Ativa um setActive
Oque acham dessa Meia Historia para meu jogo de sobrevivencia!
PESSOAL PRA VOCÊS OQUE TEM QUE TER EM UM JOGO DE SOBREVIVENCIA?
Duvidas sobre a criação de jogos para celular
Grupo de desenvolvimento no Discord
Ajuda em Script de colisao na unity
Dúvida de Botões mobile, no c#???
[RESOLVIDO] jogo buga a textura (manchas azuis e vermelhas)
ROTACIONAR NO ÂNGULO DO GAMEOBJECT
dúvida sobre resolução para mobile
[RESOLVIDO] CAMERA NÃO VISUALIZA LENS FLARE
Ajuda com scripts de inimigo e player'' interação de zumbi e player''
como abrir o app de email a partir de um jogo unity ?
[DÚVIDA] [2D] ALTERAR SPRITE SEM PRECISAR IMPORTAR DE NOVO
Script para Câmera em primeira pessoa.
[TUTORIAL] Luz Principal,Luz de Freio,Piscas para Carro,Moto,Caminhão,Ônibus,Etc...
Bug Unity ?
Criar Cidade Para Game
(DUVIDA)PlayerPrefs
[TUTORIAL] Suspensão de carro com SLIDER
[TUTORIAL] Script de arma automatica
[_____CRONOGRAMA DO CANAL_____]
Pulo 2D
Procurar um Índice em uma lista
Alguem me recomenda uma versao estavel e atualizada da unity :C
[dúvida] Comando tranform.rotatante.x não funcionando direito.
[tutorial]Teleporte com tempo.
Laser 2D
Procuro equipe para criar jogo multiplayer online de sobrevivência.
Script não detecta certos comandos como "Input" e "GetKeyDown"
Duvida com Transform.position
Rotação apontando para um Objeto.
MS Vehicles Free em vídeo de melhores assets
Marcos Elias Proton Bus Simulator AJUDA COM SISTEMA DE MAPA CONTÍNUO
Desativar Terrain
Sistema de corrida
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Como resolver
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Dúvidas Script
problemas com rb.velocity e gravidade
[TUTORIAL] Script de pulo para jogos 3D em geral (Unity - C#)
3D, Player gruda na parede
Como puxar várias animações ao mesmo tempo
[TUTORIAL] Camera orbital para android (TOUCH)
Hoje à(s) 7:27 am
Hoje à(s) 4:54 am
Hoje à(s) 1:58 am
Hoje à(s) 1:07 am
Hoje à(s) 12:05 am
Ontem à(s) 11:51 pm
Ontem à(s) 11:21 pm
Ontem à(s) 11:13 pm
Ontem à(s) 10:10 pm
Ontem à(s) 9:37 pm
Ontem à(s) 9:37 pm
Ontem à(s) 9:01 pm
Ontem à(s) 8:45 pm
Ontem à(s) 7:40 pm
Ontem à(s) 7:12 pm
Ontem à(s) 3:58 pm
Ontem à(s) 3:21 pm
Ontem à(s) 2:40 pm
Ontem à(s) 1:48 pm
Ontem à(s) 1:12 pm
Ontem à(s) 10:51 am
Ontem à(s) 10:12 am
Ontem à(s) 9:26 am
Ontem à(s) 8:27 am
Ontem à(s) 6:38 am
Ontem à(s) 2:42 am
Ontem à(s) 2:19 am
Seg Jul 24, 2017 11:25 pm
Seg Jul 24, 2017 10:51 pm
Seg Jul 24, 2017 10:49 pm
Seg Jul 24, 2017 10:04 pm
Seg Jul 24, 2017 9:53 pm
Seg Jul 24, 2017 9:28 pm
Seg Jul 24, 2017 9:09 pm
Seg Jul 24, 2017 9:00 pm
Seg Jul 24, 2017 8:54 pm
Seg Jul 24, 2017 8:12 pm
Seg Jul 24, 2017 8:11 pm
Seg Jul 24, 2017 5:04 pm
Seg Jul 24, 2017 4:50 pm
Seg Jul 24, 2017 2:20 pm
Seg Jul 24, 2017 2:09 pm
Seg Jul 24, 2017 12:54 pm
Seg Jul 24, 2017 11:15 am
Seg Jul 24, 2017 9:18 am
Dom Jul 23, 2017 10:16 pm
Dom Jul 23, 2017 9:02 pm
Dom Jul 23, 2017 7:53 pm
Dom Jul 23, 2017 5:36 pm
Dom Jul 23, 2017 5:34 pm
Dom Jul 23, 2017 4:14 pm
Dom Jul 23, 2017 2:52 pm
Dom Jul 23, 2017 12:00 pm
Dom Jul 23, 2017 10:51 am
Dom Jul 23, 2017 10:42 am
Dom Jul 23, 2017 5:35 am
Dom Jul 23, 2017 5:32 am
Dom Jul 23, 2017 5:30 am
Dom Jul 23, 2017 1:56 am
Sab Jul 22, 2017 11:48 pm
Sab Jul 22, 2017 11:30 pm
Sab Jul 22, 2017 9:42 pm
Sab Jul 22, 2017 8:31 pm
Sab Jul 22, 2017 7:30 pm
Sab Jul 22, 2017 7:19 pm
Sab Jul 22, 2017 4:05 pm
Sab Jul 22, 2017 3:04 pm
Sab Jul 22, 2017 2:35 pm
Sab Jul 22, 2017 12:54 pm
Sab Jul 22, 2017 11:10 am
Sab Jul 22, 2017 10:49 am
Sab Jul 22, 2017 9:53 am
Sab Jul 22, 2017 8:48 am
Sab Jul 22, 2017 6:19 am
Sab Jul 22, 2017 6:17 am
Sab Jul 22, 2017 3:51 am
Sab Jul 22, 2017 1:45 am
Sex Jul 21, 2017 11:57 pm
Sex Jul 21, 2017 11:33 pm
Sex Jul 21, 2017 10:37 pm
Sex Jul 21, 2017 10:33 pm
Sex Jul 21, 2017 10:24 pm
Sex Jul 21, 2017 9:29 pm
Sex Jul 21, 2017 9:25 pm
Sex Jul 21, 2017 9:17 pm
Sex Jul 21, 2017 9:15 pm
Sex Jul 21, 2017 9:08 pm
Sex Jul 21, 2017 9:07 pm
Sex Jul 21, 2017 9:00 pm
Sex Jul 21, 2017 8:57 pm
Sex Jul 21, 2017 8:52 pm
Sex Jul 21, 2017 8:49 pm
Sex Jul 21, 2017 8:47 pm
Sex Jul 21, 2017 8:38 pm
Sex Jul 21, 2017 8:29 pm
Sex Jul 21, 2017 8:24 pm
Sex Jul 21, 2017 8:23 pm
Sex Jul 21, 2017 8:03 pm
Sex Jul 21, 2017 7:19 pm
dstaroski
nilsonnolasco
rafaelllsd
NyanHeavyBR
Willian Wii
Yagogomes
marcos4503
marcos4503
marcos4503
zMicael
ManoTrevor
Duarte
Duarte
Édipo
Callyde Jr
Huser
hamerom
Zecandy
Yagogomes
Callyde Jr
GamersBR
glauco
marcos4503
Lyexe
Madness
thiagograssi
fecirineu
cody0033
Extreme Craft
julioou
Extreme Craft
marcos4503
Madness
Joaopm1
Onagro
arthearthutr
Willian Wii
Duarte
glauco
misael pinheiro
deikson
zMicael
Joaopm1
Gaimo
dstaroski
Madness
Gregory2017
Yagogomes
IanLuan
IanLuan
rafaelllsd
ManoTrevor
fecirineu
thzin
thzin
vermelhinho
vermelhinho
vermelhinho
dimmuo
Weverton Borges da Silva
hamerom
Extreme Craft
marcos4503
marcos4503
Diego Felix
Robinsandi
marcos4503
IanLuan
Gaimo
bitgames
sidney1234
Duarte
Zecandy
Gabriel César O
Gabriel César O
Joaopm1
roger224
Joaopm1
marcos4503
arthearthutr
arthearthutr
roger224
Gaimo
xXGianlucksXx
MarcosSchultz
Annko
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
thzin
Gabriel César O

FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

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

DÚVIDA FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

Mensagem por Sheyk em Seg Jun 05, 2017 12:44 pm

Olá membros Smile 

Eu tenho um pequeno problema para ser resolvido e preciso da ajuda de vocês Smile 


Quando eu faço kill no outro jogador não aparece na tela como deveria. ele tem que mostrar assim : Player 1 killed Player 2 (Um exemplo)
eu atualizei o photon para versão mais recente e não mostrou nenhum erro no console sobre o photon ou de outros scripts.

O único erro que dá no console é o que só aparece quando eu dou Play na cena.


Aparece isso no console quando entro em algum time :




avatar
Sheyk
Avançado
Avançado

PONTOS : 648
REPUTAÇÃO : 23
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

Mensagem por Sheyk em Seg Jun 05, 2017 12:50 pm

Código:
//Delta Squad @
//Sheyk @ 2017

using UnityEngine;
using System.Collections;
using Hashtable = ExitGames.Client.Photon.Hashtable; //Replace default Hashtables with Photon hashtables

public class PlayerNetwork : Photon.MonoBehaviour
{

   //This is main script that coordinate our player in game, it decides which component to enable/disable
   //Also it sync's our data with remote instances over network

   public SoldierAnimation soldierAnimation;
   public Renderer soldierBody;
   public Material teamALook;
   public Material teamBLook;
   public Material fpsHandMaterial;
   public PlayerWeapons playerWeapons;
   public GameObject firstPersonView;

   public Transform nameLabelTransform;
   public GUIText nameLabel;
   public GUIText nameLabelShadow;

   public AudioSource playerAudio;
   public AudioSource walkingAudio;

   public AudioClip hitSound;
   public AudioClip[] walkingSounds;
   public AudioClip[] ladderSounds;

   public Collider[] headHitBoxes;
   public Collider[] torsoHitBoxes;
   public Collider[] limbsHitBoxes;

   Vector3 playerPos = Vector3.zero;
   [HideInInspector]
   public Vector3 aimPos = Vector3.zero;
   Vector3 smoothAimPos = Vector3.zero;
   float positionSmoother = 17.5f;
   float d;

   [HideInInspector]
   public FPSController fpsController;
   FPSMouseLook localMouseLook;
   [HideInInspector]
   public FPSMouseLook cameraMouseLook;
   [HideInInspector]
   public Transform thisT;
   //[HideInInspector]
   //public RoomController rc;
   [HideInInspector]
   public int playerID;
   [HideInInspector]
   public bool playerKilled = false;
   
   int currentWeaponIndex = -1;
   int previousWeaponIndex = -1;
   bool isFiringRemote = false;
   int playerTeam;
   Camera mainCamera;
   Transform mainCameraT;
   Vector3 screenPos; //For name label display
   float offset;
   //Save references incase we kill this player
   string lastWeaponName = "";
   int lastBodyPart = -1;
   
   //Position Interpolation Sync
   double interpolationBackTime = 0.37d;
   
   internal struct State
    {
      internal double timestamp;
      internal Vector3 pos;
      internal Quaternion rot;
   }

   //double currentTime;
   
   // We store twenty states with "playback" information
   State[] m_BufferedState = new State[20];
   // Keep track of what slots are used
   int m_TimestampCount;
   int movementStateLocal = -1;
   int receivedMovementState = -1;
   float stepLength; //Used for playing walking sounds
   
   // Use this for initialization
   void Start ()
    {
      photonView.synchronization = ViewSynchronization.Unreliable;

      localMouseLook = GetComponent<FPSMouseLook>();
      fpsController = GetComponent<FPSController>();
      fpsController.pn = this;

      playerWeapons.playerNetwork = this;
      playerWeapons.soldierAnimation = soldierAnimation;
      playerWeapons.fpsController = fpsController;
      playerWeapons.QuickSetup(photonView.isMine);

      gameObject.name = photonView.owner.NickName;
      thisT = transform;

      playerKilled = false;

      gameObject.layer = 2; //Set layer to Ignore Raycast

      if(!photonView.isMine)
        {
         //Deactivate all scripts and object that are not used by remote instance
         localMouseLook.enabled = false;
         fpsController.enabled = false;
         playerWeapons.enabled = false;
         firstPersonView.SetActive(false);
         if(!soldierAnimation.gameObject.activeSelf)
            {
            soldierAnimation.gameObject.SetActive(true);
         }
         soldierAnimation.playerWeapons = playerWeapons;
         soldierAnimation.playerNetwork = this;
         soldierAnimation.Setup();

         SetupBoxes(headHitBoxes, HitBox.BodyPart.Head);
         SetupBoxes(torsoHitBoxes, HitBox.BodyPart.Torso);
         SetupBoxes(limbsHitBoxes, HitBox.BodyPart.Limbs);

         //Add this player to reference
         GameSettings.rc.otherPlayers.Add(this);
      }
        else
        {
         firstPersonView.SetActive(true);
         soldierAnimation.gameObject.SetActive(false);
         cameraMouseLook = playerWeapons.playerCamera.GetComponent<FPSMouseLook>();
         nameLabelTransform.gameObject.SetActive(false);
         gameObject.tag = "Player";
      }

      if(PhotonNetwork.isMasterClient)
        {
         //Set player HP
         Hashtable setPlayerData = new Hashtable();
         setPlayerData.Add("PlayerHP", (int)100);
         photonView.owner.SetCustomProperties(setPlayerData);
      }

      playerTeam = (int)photonView.owner.CustomProperties["Team"];
      playerID = photonView.owner.ID;

      if(playerTeam == 1 || playerTeam == 2)
        {
         if(playerTeam == 1)
            {
            soldierBody.sharedMaterial = teamALook;
         }
            else
            {
            soldierBody.sharedMaterial = teamBLook;
         }

         if(photonView.isMine)
            {
            fpsHandMaterial.SetTexture("_MainTex", soldierBody.sharedMaterial.GetTexture("_MainTex"));
            fpsHandMaterial.color = soldierBody.sharedMaterial.color;
         }
            else
            {
            nameLabel.text = photonView.name;
            nameLabelShadow.text = photonView.name;
            nameLabel.color = playerTeam == 1 ? GameSettings.teamAColor : GameSettings.teamBColor;
         }
      }
   }

   void SetupBoxes (Collider[] tmpBoxes, HitBox.BodyPart bp)
    {
      for(int i = 0; i < tmpBoxes.Length; i++)
        {
         tmpBoxes[i].isTrigger = true;
         tmpBoxes[i].gameObject.AddComponent<HitBox>().AssignVariables(this, bp);
         tmpBoxes[i].tag = "Body";
      }
   }

   //Sync player over network
   void OnPhotonSerializeView(PhotonStream stream, PhotonMessageInfo info)
    {
      if (stream.isWriting)
        {
         //Send data
         if(!thisT)
            return;

         stream.SendNext(thisT.position);
         stream.SendNext(playerWeapons.playerCamera.position + playerWeapons.playerCamera.forward * 100);
         stream.SendNext(playerWeapons.globalWeaponIndex);
         stream.SendNext(playerWeapons.isFiring);
         stream.SendNext(fpsController.movementState);
      }
        else
        {
         //Receive data
         playerPos = (Vector3)stream.ReceiveNext();
         aimPos = (Vector3)stream.ReceiveNext();
         currentWeaponIndex = (int)stream.ReceiveNext();
         isFiringRemote = (bool)stream.ReceiveNext();
         soldierAnimation.movementState = (int)stream.ReceiveNext();


         // Shift buffer contents, oldest data erased, 18 becomes 19, ... , 0 becomes 1
         for (int i=m_BufferedState.Length-1;i>=1;i--)
         {
            m_BufferedState[i] = m_BufferedState[i-1];
         }
         
         // Save currect received state as 0 in the buffer, safe to overwrite after shifting
         State state = new State();
         state.timestamp = info.timestamp;
         state.pos = playerPos;
         //state.rot = rot;
         m_BufferedState[0] = state;
         
         // Increment state count but never exceed buffer size
         m_TimestampCount = Mathf.Min(m_TimestampCount + 1, m_BufferedState.Length);
         
         // Check integrity, lowest numbered state in the buffer is newest and so on
         for (int i=0;i<m_TimestampCount-1;i++)
         {
            if (m_BufferedState[i].timestamp < m_BufferedState[i+1].timestamp)
               Debug.Log("State inconsistent");
         }
      }
   }
   
   // Update is called once per frame
   void Update ()
    {
      if(!photonView.isMine)
        {
         InterpolatePosition ();

         smoothAimPos = Vector3.Lerp(smoothAimPos, aimPos, Time.deltaTime * positionSmoother);

         if(aimPos != Vector3.zero)
            {
            thisT.LookAt(new Vector3(smoothAimPos.x, thisT.position.y, smoothAimPos.z));
            playerWeapons.playerCamera.LookAt(smoothAimPos);
         }

         if(isFiringRemote)
            {
            playerWeapons.FireRemote();
         }

         if(previousWeaponIndex != currentWeaponIndex)
            {
            previousWeaponIndex = currentWeaponIndex;
            playerWeapons.globalWeaponIndex = currentWeaponIndex;
            playerWeapons.SwitchWeaponRemote();
         }

         //Show name label for our teammates
         if(!playerKilled && ((playerTeam == GameSettings.ourTeam && GameSettings.currentGameMode != "FFA") || GameSettings.ourTeam == 0))
            {
            if(!nameLabelTransform.gameObject.activeSelf)
                {
               nameLabelTransform.gameObject.SetActive(true);
            }
            
            if(!mainCamera || !mainCamera.gameObject.activeInHierarchy)
                {
               if(Camera.main)
                    {
                  mainCamera = Camera.main;
                  mainCameraT = mainCamera.transform;
               }
            }
                else
                {
               offset = Vector3.Distance(mainCameraT.position, thisT.position)/50;
               screenPos = mainCamera.WorldToViewportPoint(new Vector3(thisT.position.x, thisT.position.y + 2.6f + offset, thisT.position.z));

               if(screenPos.z > 0)
                    {
                  nameLabelTransform.position = new Vector3(screenPos.x, screenPos.y);
               }
                    else
                    {
                  nameLabelTransform.position = new Vector3(-350, -350);
               }
            }

            nameLabelTransform.eulerAngles = Vector3.zero;
         }
            else
            {
            if(nameLabelTransform.gameObject.activeSelf)
                {
               nameLabelTransform.gameObject.SetActive(false);
            }
         }

         receivedMovementState = soldierAnimation.movementState;
      }
        else
        {
         //Send cameraFOV to reduce mouse sensitivity when aiming
         //localMouseLook.cameraFOV = playerWeapons.mainPlayerCamera.fieldOfView;
         //cameraMouseLook.cameraFOV = playerWeapons.mainPlayerCamera.fieldOfView;

         receivedMovementState = fpsController.movementState;
      }

      //Play footstep sound for both local and remote player instances
      if(!playerKilled)
        {
         if(movementStateLocal != receivedMovementState)
            {
            movementStateLocal = receivedMovementState;
            PlayWalkingSound();
         }
      }
        else
        {
         if(walkingAudio.isPlaying)
            {
            walkingAudio.Stop();
         }
      }
   }
   
   void InterpolatePosition ()
    {
      d = Vector3.Distance(thisT.position, m_BufferedState[0].pos);
      soldierAnimation.isMoving = d > 0.1f;

      double currentTime = PhotonNetwork.time;
      double interpolationTime = currentTime - interpolationBackTime;
      // We have a window of interpolationBackTime where we basically play
      // By having interpolationBackTime the average ping, you will usually use interpolation.
      // And only if no more data arrives we will use extrapolation
      
      // Use interpolation
      // Check if latest state exceeds interpolation time, if this is the case then
      // it is too old and extrapolation should be used
      
      if (m_BufferedState[0].timestamp > interpolationTime)
        {
         for (int i=0;i<m_TimestampCount;i++)
            {
            // Find the state which matches the interpolation time (time+0.1) or use last state
            if (m_BufferedState[i].timestamp <= interpolationTime || i == m_TimestampCount-1)
                {
               // The state one slot newer (<100ms) than the best playback state
               State rhs = m_BufferedState[Mathf.Max(i-1, 0)];
               // The best playback state (closest to 100 ms old (default time))
               State lhs = m_BufferedState[i];
               
               // Use the time between the two slots to determine if interpolation is necessary
               double length = rhs.timestamp - lhs.timestamp;
               float t = 0.0F;
               // As the time difference gets closer to 100 ms t gets closer to 1 in
               // which case rhs is only used
               if (length > 0.0001)
                    {
                  t = (float)((interpolationTime - lhs.timestamp) / length);
               }
               
               // if t=0 => lhs is used directly
               thisT.position = Vector3.Lerp(lhs.pos, rhs.pos, t);
               //transform.localRotation = Quaternion.Slerp(lhs.rot, rhs.rot, t);
               return;
            }
         }
      }
        else
        {
         // Use extrapolation. Here we do something really simple and just repeat the last
         // received state. You can do clever stuff with predicting what should happen

         State latest = m_BufferedState[0];
         
         thisT.position = latest.pos;
         //transform.localRotation = latest.rot;
         
         //print ("Moving DIrectly to latest pos " + Random.Range(111, 333).ToString());
      }
   }

   //Called from Weapon.cs when player shooting single fire weapons
   public void FireSingleRemote()
    {
      photonView.RPC("FireRemoteRPC", PhotonTargets.Others);
   }

   [PunRPC]
   void FireRemoteRPC()
    {
      playerWeapons.FireRemote();
   }

   //Reload Sync
   public void DoReload ()
    {
      photonView.RPC("DoReloadRemote", PhotonTargets.Others);
   }

   [PunRPC]
   void DoReloadRemote()
    {
      if(playerWeapons.currentSelectedWeapon)
        {
         playerWeapons.currentSelectedWeapon.ReloadNetworkSync();
      }
   }

   //Do player damage, called from HitBox.cs
   public void ApplyDamage(int[] values)
    {
      if(!playerKilled && (playerTeam != GameSettings.ourTeam || photonView.isMine || GameSettings.currentGameMode == "FFA"))
        {
         photonView.RPC("DamageRemote", PhotonTargets.All, values, PhotonNetwork.player.ID);
      }
   }

   [PunRPC]
   void DamageRemote (int[] values, int killerID)
    {
      if(photonView.isMine)
        {
         GameSettings.rc.DoHitDetector((int)values[2]);
         fpsController.fallSlowDown = 0.5f;

         PlayHitSound();
      }
        else
        {
         soldierAnimation.DoHitMovement();
      }

      if(!playerKilled)
        {
         if(PhotonNetwork.player.ID == killerID)
            {
            //Save temp references
            lastWeaponName = GameSettings.rc.ourPlayer ? GameSettings.rc.ourPlayer.playerWeapons.currentSelectedWeapon.weaponName : "";
            lastBodyPart = values[1];
         }

         if(PhotonNetwork.isMasterClient)
            {
            int currentHP = photonView.owner.CustomProperties["PlayerHP"] != null ? (int)photonView.owner.CustomProperties["PlayerHP"] : 100;
            currentHP -= GetDMG((int)values[0], (int)values[1]);
            Hashtable setPlayerData = new Hashtable();
            setPlayerData.Add("PlayerHP", currentHP); //Setup player HP by master client
            photonView.owner.SetCustomProperties(setPlayerData);

            if(currentHP < 1)
                {
               photonView.RPC("KillPlayer", PhotonTargets.All, killerID);
               playerKilled = true;
            }
         }
      }
   }

   [PunRPC]
   void KillPlayer (int killerID)
    {
      playerKilled = true;

      if(photonView.isMine)
        {
         soldierAnimation.gameObject.SetActive(true);
         firstPersonView.SetActive(false);

         localMouseLook.enabled = false;
         //fpsController.enabled = false;
         playerWeapons.enabled = false;
         playerWeapons.isFiring = false;

         GameSettings.rc.PrepareRespawn(-killerID, false);
      }

      if(PhotonNetwork.isMasterClient)
        {
         //Set killed player deaths
         if(photonView.owner != null)
            {
            int newDeaths = photonView.owner.CustomProperties["Deaths"] == null ? 1 : (int)photonView.owner.CustomProperties["Deaths"] + 1;
            Hashtable setPlayerProperties = new Hashtable();
            setPlayerProperties.Add("Deaths", newDeaths);
            photonView.owner.SetCustomProperties(setPlayerProperties);

            //Do not add kills nor team score if we killed ourselves (fell down etc.)
            if(photonView.owner.ID != killerID)
                {
               //Find killer player instance
               PhotonPlayer killerPLayer = null;
               PhotonPlayer[] allPlayers = PhotonNetwork.playerList;
               for(int i = 0; i < allPlayers.Length; i++)
                    {
                  if(allPlayers[i].ID == killerID)
                        {
                     killerPLayer = allPlayers[i];
                  }
               }

               if(killerPLayer != null)
                    {
                  //Add kills for killer
                  int newKills = killerPLayer.CustomProperties["Kills"] == null ? 1 : (int)killerPLayer.CustomProperties["Kills"] + 1;
                  setPlayerProperties = new Hashtable();
                  setPlayerProperties.Add("Kills", newKills);
                  killerPLayer.SetCustomProperties(setPlayerProperties);

                  //Update team scores
                  if(GameSettings.currentGameMode == "TDM")
                        {
                     Hashtable setRoomProperties = new Hashtable();
                     int currentTeamScore = 0;

                     if((int)killerPLayer.CustomProperties["Team"] == 1)
                            {
                        currentTeamScore = PhotonNetwork.room.CustomProperties["TeamAScore"] != null ? (int)PhotonNetwork.room.CustomProperties["TeamAScore"] + 1: 1;
                        setRoomProperties.Add("TeamAScore", currentTeamScore);
                     }
                     if((int)killerPLayer.CustomProperties["Team"] == 2)
                            {
                        currentTeamScore = PhotonNetwork.room.CustomProperties["TeamBScore"] != null ? (int)PhotonNetwork.room.CustomProperties["TeamBScore"] + 1 : 1;
                        setRoomProperties.Add("TeamBScore", currentTeamScore);
                     }

                     if(setRoomProperties.Count > 0)
                            {
                        PhotonNetwork.room.SetCustomProperties(setRoomProperties);
                     }
                  }
               }
            }
         }
      }

      if(PhotonNetwork.player.ID == killerID)
        {
         //Check what weapon we used right before
         string selectedWeaponNameTmp = "[" + lastWeaponName + "]";
         string killedPlayerName = photonView.owner.NickName;
         int killedPlayerTeam = (int)photonView.owner.CustomProperties["Team"];

         if(lastBodyPart == -35)
            {
            selectedWeaponNameTmp = "fell";
            killedPlayerName = "down";
            killedPlayerTeam = 0;
         }
            else
            {
            if(lastBodyPart == 0)
                {
               selectedWeaponNameTmp += " -> Headshot";
            }
         }
         //Notify others on kill and add cash
         GameSettings.rc.ReportKill(killedPlayerName, selectedWeaponNameTmp, killedPlayerTeam);
         GameSettings.rc.AddKillCash(lastBodyPart );
      }

      soldierAnimation.PlayKillAnimation();
   }

   int GetDMG (int weaponIndex, int bodyPart)
    {
      if(weaponIndex > -1 && weaponIndex < playerWeapons.totalWeapons.Count)
        {
         //For shotgun we divide damage for number of fractions
         int divideBy = playerWeapons.totalWeapons[weaponIndex].fireType == PlayerWeapons.FireType.Shotgun ? 5 : 1;

         if(bodyPart == 0 || bodyPart == 1)
            {
            if(bodyPart == 0)
                {
               return  playerWeapons.totalWeapons[weaponIndex].headDamage/divideBy;
            }
                else
                {
               return playerWeapons.totalWeapons[weaponIndex].torsoDamage/divideBy;
            }
         }
            else
            {
            return playerWeapons.totalWeapons[weaponIndex].limbsDamage/divideBy;
         }
      }
        else
        {
         return Mathf.Abs(weaponIndex);
      }
   }

   void PlayHitSound ()
    {
      playerAudio.Stop();
      if(playerAudio.clip != hitSound)
        {
         playerAudio.clip = hitSound;
      }
      playerAudio.Play();
   }

   void PlayWalkingSound ()
    {
      //print ("Changed walking state");

      CancelInvoke("PlayWalkingSoundInvoke");

      stepLength = 0;

      if(movementStateLocal == 0 || movementStateLocal == 1 || movementStateLocal == 2 || movementStateLocal == 4)
        {
         if(movementStateLocal == 4)
            {
            //On ladder
            stepLength = 2.5f/fpsController.ladderSpeed;
         }
            else
            {
            if(movementStateLocal == 2)
                {
               //Crouching
               stepLength = 3.5f/fpsController.crouchSpeed;
            }
                else
                {
               if(movementStateLocal == 0)
                    {
                  stepLength = 3.5f/fpsController.walkSpeed;
               }
                    else
                    {
                  stepLength = 3.5f/fpsController.runSpeed;
               }
            }
         }
      }

      if(stepLength > 0)
        {
         InvokeRepeating("PlayWalkingSoundInvoke", 0.09f, stepLength);
      }
   }

   void PlayWalkingSoundInvoke ()
    {
      walkingAudio.Stop();

      if(fpsController.isMoving || soldierAnimation.isMoving)
        {
         if(movementStateLocal == 4)
            {
            //On ladder
            walkingAudio.clip = ladderSounds[Random.Range(0, ladderSounds.Length - 1)];
         }
            else
            {
            //Walkig
            walkingAudio.clip = walkingSounds[Random.Range(0, walkingSounds.Length - 1)];
         }

         walkingAudio.Play();
      }
   }
}
avatar
Sheyk
Avançado
Avançado

PONTOS : 648
REPUTAÇÃO : 23
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

Mensagem por MarcosSchultz em Seg Jun 05, 2017 12:51 pm

da 2 cliques em cima do erro e veja qual linha está acusando o erro.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9294
REPUTAÇÃO : 1562
Idade : 20
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

Mensagem por Sheyk em Seg Jun 05, 2017 12:53 pm

Na linha 150 Smile 

Código:
      playerTeam = (int)photonView.owner.CustomProperties["Team"];
      
avatar
Sheyk
Avançado
Avançado

PONTOS : 648
REPUTAÇÃO : 23
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM

Mensagem por Sheyk em Seg Jun 05, 2017 1:00 pm

Me ajuda ai MarcosSchultz
avatar
Sheyk
Avançado
Avançado

PONTOS : 648
REPUTAÇÃO : 23
Idade : 17
Respeito as regras :

Ver perfil do usuário

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