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:
[TUTORIAL] Mensagem aparecer na tela conforme a distância do jogador (Unity 5)
Erro em script (photon)
[PEDIDOS DE TUTORIAIS]
(pedido) script para ativar e desativar um objeto,animação,etc...
Duvida em script de troca de cores de um objeto
Como faz para recuperar cena depois que unity fecha por causa de ERRO?
Como faço para deixar o objeto transparente ao passar atraz?
Script De Seleção de Objetos
Como faz para se a animação tal estiver acontecendo,acontece tal coisa?
Callback do Admob Vídeo Premiado ...
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Mudar de scene multiplayer?
[RESOLVIDO] Vector3 em uma variável
A unity não abre o projeto!!
[____NOVA ÁREA____] Projetos em andamento
Fazer 4 Objetos receberem cada um uma Tag aleatoriamente
Problema com mutiplayer
Dano no inimigo
Converter String para UTF-8
Perseguição Policial Estilo GTA!
Idéias para games
Duvida com o GameJolt
[RESOLVIDO] Acessar um valor de outro Script em c#
Videos Recompensados AdMob
Simples Corredores Hotel | Speed Level Design (Unity 2017)
Cenário
Qual o melhor lugar para vender o jogo de PC e ganhar dinheiro sem ser a STEAM?
[TUTORIAL] Camera que segue o Player ( estilo GTA )
Site de Assets Alternativo a Asset Store Unity
[____SUGESTÕES PARA O FÓRUM____]
Jogo
SpaceInvaders - Android
[____ADERIR A UMA CATEGORIA NO FÓRUM____]
[DEVLOG] Projeto Coming Back(AHOWNN town) um MMO RPG 3D Game(Protótipo)
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Direitos autorais de personagens.
Pegar item...
Acessar funçoes de outro script?
Criar os scrips no Android ?????
[TUTORIAL] SISTEMA DE CHUVA COM PARTICULAS.
como Desativar do inspector no script ?
Tem um modo facil para esperar tanto tempo e ocorrer uma açao?
Raycast em circulos(point to ckick)
Script LUZ PISCANDO
(duvida) porque esse erro estranho acontece com o modelo do scketchup
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
Como tira aquele caixinha que aparece erros ou avisos no jogo depois de fazer a build?
problema com ADMOB
Problema em dedectar a TAG
[DUVIDA] Da para colocar anúncios em jogos para PC ?
Lookat para o mais próximo
[Jogo] Flap OCO (Android & PC)
Como eu faço sprites ficarem escuras anoite?
Object Pooling
Como faz aparecer uma mensagem quando o jogador sair do jogo?
Inventario e craft estilo ark
como fazer o player aparecer do outro lado da porta quando muda de cena?
Quando fizer a build e recomendado deixar o architeture no x86 ou x86_64?
Como Chamar o Audio
Unity não reconhece meu celular
Textos de UI ficão com qualidade ruim
Como faço para a musica continuar tocando quando muda de cena?
Meu script de ser morto atropelado não funciona
[RESOLVIDO] Arrumar erros
[Asset] Simple Unity Assets - Pacote de assets para Unity.
Mostrar Pontuação No Game Over
Como eu faço um ontrigger "invertido"?
[RESOLVIDO] COMO FAZ PARA FAZER 2 TERRAINS TOTALMENTE DIFERENTES DO OUTRO?
MultiPlayer Unity Para Android!
Props Animations Asset
Mostrar Pontuação no game over
Terminei o meu jogo, mas algo deu errado.
[ASSET] Facilitação de controle de objetos
Problema em listar salas
Ranking com nome
Novo jogo - Stackx
Segurança no Unity
[TUTORIAL] Entrar no carro estilo GTA
[RESOLVIDO] Tem como melhorar a colisao? os objetos entram nos outros, caem do chao ,etc..
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
DÚVIDA RECRIAR EFEITO NA UNITY
Me ofereço como escritor
Como adicionar uma força oposta a colisão no rigidbody?
Ajuda com script
[Dúvida]Erro error CS1525: Unexpected symbol 'u' em script
[Resolvido] É possível usar a unity com outros programas ? (config do pc na dúvida ;-; )
[Dúvida]Erro "UnityEngine.AI.NavMeshAgent.Stop()' is obsolete" como resolver ?
[Dúvida]Erro "Building to the assets folder is not allowed" ao tentar fazer build
[Equipe]Preciso de ajuda de um programador
CAMERA ENTRANDO NA PAREDE
como posso fazer um corpo perder a animação
Teste De Multiplayer
Como adicionar uma força oposta a colisão no rigidbody?
Usar o unity sem internet
Cenário jogo Endless Running
Photon Unity como funcina?
UM FANTASMA APARECEU NO MEU JOGO.
Como mudar cor do botao UI
[TUTORIAL] FPSController nadar e mergulhar, junto com efeito submerso
Hoje à(s) 12:38 am
Hoje à(s) 12:25 am
Ontem à(s) 10:53 pm
Ontem à(s) 10:47 pm
Ontem à(s) 10:25 pm
Ontem à(s) 10:19 pm
Ontem à(s) 10:14 pm
Ontem à(s) 9:56 pm
Ontem à(s) 9:25 pm
Ontem à(s) 3:57 pm
Ontem à(s) 2:51 pm
Ontem à(s) 1:22 pm
Ontem à(s) 9:28 am
Ontem à(s) 1:08 am
Ontem à(s) 12:33 am
Ontem à(s) 12:23 am
Ontem à(s) 12:06 am
Qua Nov 22, 2017 11:35 pm
Qua Nov 22, 2017 11:09 pm
Qua Nov 22, 2017 10:35 pm
Qua Nov 22, 2017 10:31 pm
Qua Nov 22, 2017 10:28 pm
Qua Nov 22, 2017 9:21 pm
Qua Nov 22, 2017 8:51 pm
Qua Nov 22, 2017 5:33 pm
Qua Nov 22, 2017 4:53 pm
Qua Nov 22, 2017 4:11 pm
Qua Nov 22, 2017 1:23 pm
Qua Nov 22, 2017 10:16 am
Qua Nov 22, 2017 6:06 am
Ter Nov 21, 2017 11:26 pm
Ter Nov 21, 2017 6:24 pm
Ter Nov 21, 2017 6:08 pm
Ter Nov 21, 2017 5:35 pm
Ter Nov 21, 2017 3:51 pm
Ter Nov 21, 2017 1:06 pm
Ter Nov 21, 2017 11:15 am
Ter Nov 21, 2017 7:27 am
Ter Nov 21, 2017 7:20 am
Ter Nov 21, 2017 3:46 am
Seg Nov 20, 2017 11:22 pm
Seg Nov 20, 2017 9:49 pm
Seg Nov 20, 2017 7:16 pm
Seg Nov 20, 2017 6:41 pm
Seg Nov 20, 2017 6:41 pm
Seg Nov 20, 2017 6:06 pm
Seg Nov 20, 2017 2:31 pm
Seg Nov 20, 2017 1:23 pm
Seg Nov 20, 2017 1:18 pm
Seg Nov 20, 2017 1:00 pm
Seg Nov 20, 2017 10:54 am
Dom Nov 19, 2017 10:05 pm
Dom Nov 19, 2017 9:52 pm
Dom Nov 19, 2017 8:15 pm
Dom Nov 19, 2017 8:07 pm
Dom Nov 19, 2017 7:13 pm
Dom Nov 19, 2017 7:01 pm
Dom Nov 19, 2017 6:43 pm
Dom Nov 19, 2017 6:15 pm
Dom Nov 19, 2017 5:13 pm
Dom Nov 19, 2017 4:21 pm
Dom Nov 19, 2017 2:43 pm
Dom Nov 19, 2017 1:26 pm
Dom Nov 19, 2017 4:10 am
Dom Nov 19, 2017 2:00 am
Sab Nov 18, 2017 10:35 pm
Sab Nov 18, 2017 5:50 pm
Sab Nov 18, 2017 1:30 pm
Sab Nov 18, 2017 10:30 am
Sab Nov 18, 2017 7:29 am
Sex Nov 17, 2017 10:05 pm
Sex Nov 17, 2017 5:10 pm
Sex Nov 17, 2017 4:43 pm
Sex Nov 17, 2017 3:20 pm
Sex Nov 17, 2017 2:01 pm
Sex Nov 17, 2017 11:46 am
Sex Nov 17, 2017 8:33 am
Sex Nov 17, 2017 12:31 am
Qui Nov 16, 2017 11:18 pm
Qui Nov 16, 2017 11:12 pm
Qui Nov 16, 2017 10:48 pm
Qui Nov 16, 2017 10:47 pm
Qui Nov 16, 2017 10:46 pm
Qui Nov 16, 2017 10:20 pm
Qui Nov 16, 2017 10:15 pm
Qui Nov 16, 2017 10:09 pm
Qui Nov 16, 2017 8:13 pm
Qui Nov 16, 2017 8:10 pm
Qui Nov 16, 2017 8:07 pm
Qui Nov 16, 2017 7:56 pm
Qui Nov 16, 2017 5:39 pm
Qui Nov 16, 2017 5:21 pm
Qui Nov 16, 2017 3:33 pm
Qui Nov 16, 2017 2:56 pm
Qui Nov 16, 2017 1:37 pm
Qui Nov 16, 2017 1:20 pm
Qui Nov 16, 2017 11:24 am
Qua Nov 15, 2017 9:32 pm
Qua Nov 15, 2017 9:00 pm
Unoog
PatifeCraft
Regis garcia
matheus1415
recagonlei
recagonlei
recagonlei
ffabim
Fagner
Felipe Costa
MarcosSchultz
recagonlei
TylerDurden
felipehobs1
Zecandy
Gazoles
dazentt55
dimmuo
azool
John Rambo
recagonlei
EricKBMS
oilson
Felipe Costa
dstaroski
Phph09
DUT
Phph09
gabrielraphael
glauco
John Rambo
junkflash30
glauco
recagonlei
MarcosSchultz
Callyde Jr
Ronnisz
Callyde Jr
Phph09
rafaelllsd
RW.
recagonlei
recagonlei
dimmuo
glauco
Phph09
DUT
junkflash30
DUT
ronito
recagonlei
DUT
DUT
Phph09
Phph09
rafaelllsd
glauco
DUT
RW.
otavio00augusto
DUT
DUT
DUT
jamaisfiih
dimmuo
jamaisfiih
Zecandy
DUT
Phph09
Phph09
jamaisfiih
Josivaldo Augusto
BRGC
MRX
recagonlei
recagonlei
sabbath
recagonlei
luiz12345
dstaroski
rafaelllsd
recagonlei
rafaelllsd
recagonlei
recagonlei
recagonlei
PauloFR
PauloFR
PauloFR
Diego Felix
ronito
ronito
Phph09
recagonlei
jamaisfiih
MRX
dstaroski
rafaelllsd
ronito

(FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

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

DÚVIDA (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Sab Jul 23, 2016 1:55 pm

OLÁ GALERA, EU GOSTARIA DE SABER COMO EU POSSO CRIAR UM MODO DE JOGO; exemplo: eu quero criar uma sala em que apenas sniper são permitidos e as outras armas não...

lá no lobby quando vou criar uma sala aparece uma tela de configurações da sala. Exemplo : tempo, quantos jogadores e etc...
eu queria por ali mais uma opção que seria qual tipo de arma será permitido...

tipo assim

[Todas]
[Apenas Sniper]
[Apenas pistola]
[Apenas Rifles]
[Apenas granadas]
[Apenas faca] 

ME AJUDEM POR FAVOR  Very Happy Very Happy Very Happy Very Happy Very Happy
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Sab Jul 23, 2016 2:40 pm

Você já tem todo o loby pronto? Por que essa escolha de salas da para apenas separar em cenas ué
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Sab Jul 23, 2016 2:43 pm

Sim, já está pronto.
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Sab Jul 23, 2016 3:17 pm

Poste para que possamos trabalhar em cima disso
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Sab Jul 23, 2016 3:19 pm

postar oque mano ?
o script ?
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Sab Jul 23, 2016 3:21 pm

O script do loby, informando como você o fez, para que possamos entender como fazer a separação das salas em cima disso, pois os sistemas não são todos iguais, então precisamos saber o que você tem.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Sab Jul 23, 2016 3:38 pm

Código:
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using Hashtable = ExitGames.Client.Photon.Hashtable; //Replace default Hashtables with Photon hashtables

public class ConnectMenu : Photon.MonoBehaviour
{

   //This is main menu where users will browse and create new rooms

   public enum CurrentWindow { Main, PlayNow, Options, Profile, None }
   [HideInInspector]
   public CurrentWindow currentWindow = CurrentWindow.Main;

   public GameObject roomControllerPrefab;
   public GameObject buySpotPrefab;
   public Texture2D background;
   public Texture2D defaultMapPreview;

   [System.Serializable]
   public class AvailableMaps
    {
      public string mapName;
      public Texture mapPreview;
   }

   public AvailableMaps[] availableMaps;

   Vector2 browseWindowSize = new Vector2(750, 500);
   Vector2 roomBrowserScroll = Vector2.zero;
   string buildVersion = "0.1";

   //Networking
   CloudRegionCode selectedRegion = CloudRegionCode.eu; //Photon Cloud Region we will connect to
   int totalPlayers = 0;
   int totalRooms = 0;

#if UNITY_ANDROID || UNITY_IOS || UNITY_WP8 || UNITY_WP8_1
    //Network version for Mobile
    string networkVersion = "v2.7.7";
#else
    //Network version for Desktop
    string networkVersion = "v1.7.5";
#endif


    bool createRoom = false;
   string roomName = "";

   //Available room creation settings
   int[] playerLimits = { 2, 4, 6, 8, 10, 12, 14, 16 };
   string[] gameModes = { "TDM", "FFA" };
   int[] roundDurations = { 600, 900 }; //Each field must correspond to gameMode index, time in seconds
   int[] killLimits = { 25, 50, 75, 100 };

   int selectedPlayerLimit = 0;
   int selectedGameMode = 0;
   int selectedMap = 0;
   int selectedKillLimit = 1;

   bool loadingMap = false;
   bool refreshingRooms = false;
   int roomFieldCurrentlyHovering = -1;
   int selectedRoom = -1;
   int currentPing = -1;

   RoomInfo[] availableRooms = new RoomInfo[0];

   string playerName = "";
   string tmpPlayerName;

   OptionsSettings os;

   string playerNamePrefsName = "PlayerName";
   string playerLimitPrefsName = "SelectedPlayerLimit";
   string gameModePrefsName = "SelectedGameMode";
   string selectedMapPrefsName = "SelectedMap";

   // Use this for initialization
   void Start ()
    {
      //Limit game Frames PEr Seconds
      DontDestroyOnLoad(gameObject);

      currentWindow = CurrentWindow.Main;

      os = GetComponent<OptionsSettings>();
      os.cm = this;

      if(GameSettings.errorText != "")
        {
         loadingMap = true;
      }

      PhotonNetwork.PhotonServerSettings.PreferredRegion = selectedRegion;

#if UNITY_ANDROID || UNITY_IOS || UNITY_WP8 || UNITY_WP8_1
        //Enable connection timeout on mobile
        PhotonNetwork.BackgroundTimeout = 45;
#endif

        Cursor.lockState = CursorLockMode.None;
      Cursor.visible = true;

      roomName = "Gaming Room " + Random.Range(11111, 99999).ToString();
       
        //aq fica a parte de nickname
        //Load stored values if there any
        if (GameObject.FindObjectOfType<LoginRegisterUser>().newuser == "0"){
            currentWindow = CurrentWindow.Profile;

        }
        //playerName = GameObject.FindObjectOfType<LoginRegisterUser>().username;

      /*playerName = "Player " + Random.Range(11111, 99999).ToString();
      if(PlayerPrefs.HasKey(playerNamePrefsName))
        {
         playerName = PlayerPrefs.GetString(playerNamePrefsName);
      }
        else
        {
         currentWindow = CurrentWindow.Profile;
         tmpPlayerName = playerName;
      }*/

      selectedPlayerLimit = PlayerPrefs.HasKey(playerLimitPrefsName) ? PlayerPrefs.GetInt(playerLimitPrefsName) : (int)playerLimits.Length/2;
      selectedPlayerLimit = selectedPlayerLimit > -1 && selectedPlayerLimit < playerLimits.Length ? selectedPlayerLimit : (int)playerLimits.Length/2;

      selectedGameMode = PlayerPrefs.HasKey(gameModePrefsName) ? PlayerPrefs.GetInt(gameModePrefsName) : 0;
      selectedGameMode = selectedGameMode > -1 && selectedGameMode < gameModes.Length ? selectedGameMode : 0;

      selectedMap = PlayerPrefs.HasKey(selectedMapPrefsName) ? PlayerPrefs.GetInt(selectedMapPrefsName) : 0;
      selectedMap = selectedMap > -1 && selectedMap < availableMaps.Length ? selectedMap : 0;

#if (UNITY_ANDROID || UNITY_IOS || UNITY_WP8 || UNITY_WP8_1) && !UNITY_EDITOR
        //Limit screen resolution on Android
        int highestVal = 1000; //Width or height cant be more than this value
      if(Screen.width == Screen.height)
        {
         Screen.SetResolution(highestVal, highestVal, true);
      }
        else
        {
         if(Screen.width > Screen.height)
            {
            float aspectRatio = (float)Screen.height/(float)Screen.width;
            Screen.SetResolution(highestVal, (int)(highestVal *  aspectRatio), true);
         }
            else
            {
            float aspectRatio = (float)Screen.width/(float)Screen.height;
            Screen.SetResolution((int)(highestVal *  aspectRatio), highestVal, true);
         }
      }

      //Also limit framerate
      Application.targetFrameRate = 60;
#else
        Application.targetFrameRate = 150;
         //AudioListener.volume = 0.5f;
#endif

    }
   
   // Update is called once per frame
   void Update ()
    {
      os.enabled = currentWindow == CurrentWindow.Options;
   }

   void OnGUI ()
    {
      GUI.skin = GameSettings.guiSkin;

      //GUI.DrawTexture(new Rect(0, 0, Screen.width, Screen.height), background);

      GUI.Label(new Rect(15, Screen.height - 35, 300, 30), buildVersion);

      if(loadingMap)
        {
         if(GameSettings.errorText == "")
            {
            GUI.Label(new Rect(Screen.width/2 - 150, Screen.height/2 - 15, 300, 30), "Connecting, please wait...", GameSettings.createRoomOptionsStyle);
         }
            else
            {
            GUI.color = Color.red;
            GUI.Label(new Rect(Screen.width/2 - 150, Screen.height/2 - 15, 700, 30), GameSettings.errorText, GameSettings.createRoomOptionsStyle);
         }

         GUI.color = Color.white;
         if(SceneManager.GetActiveScene().buildIndex == 0)
            {
            if(GUI.Button(new Rect(Screen.width - 265, Screen.height - 45, 250, 30), "Main Menu"))
                {
               this.StopAllCoroutines();
               if(PhotonNetwork.room != null)
                    {
                  PhotonNetwork.LeaveRoom();
               }
               GameSettings.errorText = "";
               loadingMap = false;
            }
         }
      }
        else
        {
         //Initial Screens
         if(currentWindow == CurrentWindow.Main)
            {
            GUI.Label(new Rect(Screen.width/2 - 150, Screen.height/2 - 160, 300, 100), "<color=#FFC240>ALPHA</color>", GameSettings.headerStyle);

            if(GUI.Button(new Rect(Screen.width/2 - 125, Screen.height/2 - 45, 250, 30), "Play Now"))
                {
               currentWindow = CurrentWindow.PlayNow;
               createRoom = false;

               if(availableRooms.Length == 0)
                    {
                  this.StopAllCoroutines();
                  this.StartCoroutine(RefreshRooms());
               }
            }

            if(GUI.Button(new Rect(Screen.width/2 - 125, Screen.height/2, 250, 30), "Options"))
                {
               currentWindow = CurrentWindow.Options;
            }

            if(GUI.Button(new Rect(Screen.width/2 - 125, Screen.height/2 + 45, 250, 30), "Profile"))
                {
               currentWindow = CurrentWindow.Profile;
               tmpPlayerName = playerName;
            }
         }

         if(currentWindow == CurrentWindow.PlayNow)
            {
            GUI.Window (0, new Rect(Screen.width/2 - browseWindowSize.x/2, Screen.height/2 - browseWindowSize.y/2,  browseWindowSize.x, browseWindowSize.y), BrowseRoomsWindow, "");
         }

         if(currentWindow == CurrentWindow.Options)
            {

         }

         if(currentWindow == CurrentWindow.Profile)
            {
            GUI.Window (0, new Rect(Screen.width/2 - 150, Screen.height/2 - 100,  300, 200), ProfileWindow, "");
         }

#if !UNITY_ANDROID && !UNITY_IOS && !UNITY_WP8 && !UNITY_WP8_1
         if(GUI.Button(new Rect(Screen.width - 105, 5, 100, 20), "Fullscreen"))
            {
            os.SetFullscreen();
         }
#endif

            //Replace button name nad url with your own site and uncomment it so players can visit your site from game
            /*if(GUI.Button(new Rect(5, 5, 150, 20), "nsdevstore.com"))
            {
            Application.OpenURL("http://nsdevstore.com/");
         }*/
        }
    }

   void ProfileWindow(int windowID)
    {
      GUI.Label(new Rect(15, 0, 300, 35), "User Profile");

      if(GUI.Button(new Rect(300 - 30, 5, 25, 25), "", GameSettings.closeButtonStyle))
        {
         currentWindow = CurrentWindow.Main;

         if(!PlayerPrefs.HasKey(playerNamePrefsName))
            {
            PlayerPrefs.SetString(playerNamePrefsName, playerName);
         }
      }

      GUI.Label(new Rect(15, 40, 300, 30), "Player Name");
      tmpPlayerName = GUI.TextField(new Rect(15, 70, 300 - 30, 25), tmpPlayerName, 19);

      //ToDO remove this before final build
      string tmpNameCheck = (tmpPlayerName.ToLower()).Replace(" ", "");

      GUI.enabled = tmpNameCheck.Length > 0;

        //salvando o nome novo

      /*if(GUI.Button(new Rect(160, 160, 125, 25), "Save"))
        {
         playerName = tmpPlayerName;
         PlayerPrefs.SetString(playerNamePrefsName, playerName);
         currentWindow = CurrentWindow.Main;
      }*/

      GUI.enabled = true;
   }

   void BrowseRoomsWindow(int windowID)
    {
      if(!createRoom)
        {
         GUI.Label(new Rect(15, 0, 450, 35), "Browse Rooms - " + totalPlayers.ToString() + " players - " + totalRooms.ToString() + " rooms - " + PhotonNetwork.PhotonServerSettings.PreferredRegion.ToString());
      }
        else
        {
         GUI.Label(new Rect(15, 0, 300, 35), "Create Room");
      }

      if(GUI.Button(new Rect(browseWindowSize.x - 30, 5, 25, 25), "", GameSettings.closeButtonStyle))
        {
         currentWindow = CurrentWindow.Main;
      }

      if(!createRoom)
        {
         if(refreshingRooms )
            {
            GUI.enabled = false;
         }
            else
            {
            GUI.enabled = true;
         }

         if(GUI.Button(new Rect(browseWindowSize.x - 360, browseWindowSize.y - 40, 165, 25), "Create New Room"))
            {
            createRoom = true;
         }

         //Refresh rooms
         if(GUI.Button(new Rect(browseWindowSize.x - 180, browseWindowSize.y - 40, 75, 25), "Refresh"))
            {
            this.StopAllCoroutines();
            this.StartCoroutine(RefreshRooms());
         }

         if(refreshingRooms || selectedRoom == -1)
            {
            GUI.enabled = false;
         }
            else
            {
            GUI.enabled = true;
         }

         if(GUI.Button(new Rect(browseWindowSize.x - 90, browseWindowSize.y - 40, 75, 25), "Connect"))
            {
            StartCoroutine(JoinCreateRoom(availableRooms[selectedRoom].name,
                                          (string)availableRooms[selectedRoom].customProperties["MapName"],
                                          availableRooms[selectedRoom].maxPlayers,
                                          (string)availableRooms[selectedRoom].customProperties["GameMode"],
                                          (float)availableRooms[selectedRoom].customProperties["RoundDuration"],
                                          availableRooms[selectedRoom].customProperties["KillLimit"] != null ? (int)availableRooms[selectedRoom].customProperties["KillLimit"] : -1
                                          ));
         }

         GUI.enabled = true;

         GUI.Label(new Rect(10, 39, 270, 21), "Room name", GameSettings.roomBrowserHeadersStyle);
         GUI.Label(new Rect(288, 39, 100, 21), "Game mode", GameSettings.roomBrowserHeadersStyle);
         GUI.Label(new Rect(396, 39, 100, 21), "Players", GameSettings.roomBrowserHeadersStyle);
         GUI.Label(new Rect(504, 39, 100, 21), "Map", GameSettings.roomBrowserHeadersStyle);
         GUI.Label(new Rect(612, 39, 100, 21), "Ping", GameSettings.roomBrowserHeadersStyle);

         GUILayout.Space(50);

         roomBrowserScroll = GUILayout.BeginScrollView(roomBrowserScroll, true, true, GUILayout.Height(browseWindowSize.y - 115));
            if(!refreshingRooms)
                {
               if(availableRooms.Length == 0)
                    {
                  GUILayout.Space(15);
                  GUILayout.BeginHorizontal();
                     GUILayout.Space(15);
               GUILayout.Label("No rooms created at the moment, be first one to create", GUILayout.Width(browseWindowSize.x - 50));
                  GUILayout.EndHorizontal();
               }
                    else
                    {
                  for(int i = 0; i < availableRooms.Length; i++)
                        {
                     if(roomFieldCurrentlyHovering != i)
                            {
                        GUI.color = new Color(1, 1, 1, 0.35f);
                     }
                            else
                            {
                        GUI.color = Color.white;
                     }
                     
                     GUILayout.BeginHorizontal("box");
                        GUI.color = selectedRoom == i ? Color.yellow : Color.white;
                        GUILayout.Label(availableRooms[i].name, GUILayout.Width(260), GUILayout.Height(20));
                        GUILayout.Space(18);
                        GUILayout.Label((string)availableRooms[i].customProperties["GameMode"], GUILayout.Width(90), GUILayout.Height(20));
                        GUILayout.Space(18);
                        GUILayout.Label(availableRooms[i].playerCount.ToString() + " / " + availableRooms[i].maxPlayers.ToString(), GUILayout.Width(90), GUILayout.Height(20));
                        GUILayout.Space(18);
                        GUILayout.Label((string)availableRooms[i].customProperties["MapName"], GUILayout.Width(90), GUILayout.Height(20));
                        GUILayout.Space(18);
                        GUILayout.Label(currentPing.ToString(), GUILayout.Width(90), GUILayout.Height(20));
                     GUILayout.EndHorizontal();
                     
                     if(GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
                            {
                        roomFieldCurrentlyHovering = i;
                        if(Input.GetMouseButtonDown(0))
                                {
                           selectedRoom = i;
                        }
                     }
                  }

                  GUILayout.BeginVertical();
                     GUILayout.FlexibleSpace();
                  GUILayout.EndVertical();

                  if(GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
                        {
                     roomFieldCurrentlyHovering = -1;
                  }
               }
            }
         GUILayout.EndScrollView();

         if(Event.current.mousePosition.y < 60 || Event.current.mousePosition.y > (60 + browseWindowSize.y - 115))
            {
            roomFieldCurrentlyHovering = -1;
         }
      }else{
         GUI.Label(new Rect(15, 40, 300, 30), "Room Name");
         roomName = GUI.TextField(new Rect(15, 70, (int)(browseWindowSize.x * 0.75f), 25), roomName, 55);

         GUI.Label(new Rect(15,100, 300, 30), "Player Limit");
         GUI.enabled = selectedPlayerLimit > 0;
         if(GUI.Button(new Rect(15, 130, 25, 25), "<"))
            {
            selectedPlayerLimit --;
         }
         GUI.enabled = true;
         GUI.Label(new Rect(45,130, 75, 25), playerLimits[selectedPlayerLimit].ToString(), GameSettings.createRoomOptionsStyle);
         GUI.enabled = selectedPlayerLimit < playerLimits.Length - 1;
         if(GUI.Button(new Rect(125, 130, 25, 25), ">"))
            {
            selectedPlayerLimit ++;
         }

         GUI.enabled = true;

         GUI.Label(new Rect(15,160, 300, 30), "Game Mode");
         GUI.enabled = selectedGameMode > 0;
         if(GUI.Button(new Rect(15, 190, 25, 25), "<"))
            {
            selectedGameMode --;
         }
         GUI.enabled = true;
         GUI.Label(new Rect(45,190, 75, 25), gameModes[selectedGameMode], GameSettings.createRoomOptionsStyle);
         GUI.enabled = selectedGameMode < gameModes.Length - 1;
         if(GUI.Button(new Rect(125, 190, 25, 25), ">"))
            {
            selectedGameMode ++;
         }

         if(gameModes[selectedGameMode] == "FFA")
            {
            GUI.enabled = true;

            GUI.Label(new Rect(185,160, 300, 30), "Kill Limit");
            GUI.enabled = selectedKillLimit > 0;
            if(GUI.Button(new Rect(185, 190, 25, 25), "<"))
                {
               selectedKillLimit --;
            }
            GUI.enabled = true;
            GUI.Label(new Rect(210,190, 75, 25), killLimits[selectedKillLimit].ToString(), GameSettings.createRoomOptionsStyle);
            GUI.enabled = selectedKillLimit < killLimits.Length - 1;
            if(GUI.Button(new Rect(290, 190, 25, 25), ">"))
                {
               selectedKillLimit ++;
            }
         }
         
         GUI.enabled = true;

         GUI.Label(new Rect(15,220, 300, 30), "Game Map");
         GUI.enabled = selectedMap > 0;
         if(GUI.Button(new Rect(15, 250, 25, 25), "<"))
            {
            selectedMap --;
         }
         GUI.enabled = true;
         GUI.Label(new Rect(45 , 250, 240, 30), availableMaps[selectedMap].mapName, GameSettings.createRoomOptionsStyle);
         GUI.enabled = selectedMap < availableMaps.Length - 1;
         if(GUI.Button(new Rect(290, 250, 25, 25), ">"))
            {
            selectedMap ++;
         }
         GUI.enabled = true;
         GUI.DrawTexture(new Rect(15, 285, 300, 150), availableMaps[selectedMap].mapPreview ? availableMaps[selectedMap].mapPreview : defaultMapPreview);

         if(GUI.Button(new Rect(browseWindowSize.x - 90, browseWindowSize.y - 40, 75, 25), "Create"))
            {
            StartCoroutine(JoinCreateRoom(
               roomName, availableMaps[selectedMap].mapName, playerLimits[selectedPlayerLimit], gameModes[selectedGameMode], (float)roundDurations[selectedGameMode], gameModes[selectedGameMode] == "FFA" ? killLimits[selectedKillLimit] : -1
            ));

            //Remember player settings when creating new room
            PlayerPrefs.SetInt(playerLimitPrefsName, selectedPlayerLimit);
            PlayerPrefs.SetInt(gameModePrefsName, selectedGameMode);
            PlayerPrefs.SetInt(selectedMapPrefsName, selectedMap);
         }

         if(GUI.Button(new Rect(15, browseWindowSize.y - 40, 75, 25), "Back"))
            {
            createRoom = false;
         }
      }

      if(refreshingRooms)
        {
         GUI.Box(new Rect(browseWindowSize.x/2 - 75, browseWindowSize.y/2 - 30, 150, 30), "Refreshing...");
      }
      //GUI.DragWindow (new Rect (0, 0, 10000, 35));
   }

   //Networking Part ********************************************************************************************************************************************
   IEnumerator RefreshRooms ()
    {
      refreshingRooms = true;
      selectedRoom = -1;

        while (PhotonNetwork.connected)
        {
            if (PhotonNetwork.connectionState != ConnectionState.Disconnecting)
            {
                PhotonNetwork.Disconnect();
            }
         yield return null;
      }

        while (!PhotonNetwork.connected)
        {
            if(PhotonNetwork.connectionState != ConnectionState.InitializingApplication && PhotonNetwork.connectionState != ConnectionState.Connecting &&
                PhotonNetwork.connectionState != ConnectionState.Disconnecting && PhotonNetwork.connectionState != ConnectionState.Connected)
            {
                PhotonNetwork.ConnectUsingSettings(networkVersion);
            }
            yield return null;
        }

        yield return new WaitForSeconds(0.75f);

      currentPing = PhotonNetwork.GetPing();

      availableRooms = PhotonNetwork.GetRoomList();

      //print (availableRooms.Length.ToString() + " available rooms");

      totalPlayers = PhotonNetwork.countOfPlayers;
      totalRooms = availableRooms.Length;

      refreshingRooms = false;
   }

   IEnumerator JoinCreateRoom (string newRoomName, string newMapName, int newMaxPlayers, string newGameMode, float roundDuration, int newKillLimit)
    {
      loadingMap = true;

      print ("Begin joining/creating new room");

      while(!PhotonNetwork.connected)
        {
         if(PhotonNetwork.connectionState != ConnectionState.InitializingApplication && PhotonNetwork.connectionState != ConnectionState.Connecting &&
              PhotonNetwork.connectionState != ConnectionState.Disconnecting && PhotonNetwork.connectionState != ConnectionState.Connected)
            {

            PhotonNetwork.ConnectUsingSettings(networkVersion);
         }
         yield return null;
      }
      
      yield return new WaitForSeconds(0.5f);

      PhotonNetwork.playerName = playerName;
      
      //Create Room
      if(PhotonNetwork.connected)
        {
         Hashtable roomProperties = new Hashtable();
         roomProperties["MapName"] = newMapName;
         roomProperties["GameMode"] = newGameMode;
         roomProperties["RoundDuration"] = roundDuration;
         if(newKillLimit > 0)
            {
            roomProperties["KillLimit"] = newKillLimit; //Used only for FFA mode
         }
         string[] exposedProps = new string[newKillLimit > 0 ? 4 : 3];
         exposedProps[0] = "MapName";
         exposedProps[1] = "GameMode";
         exposedProps[2] = "RoundDuration";
         if(newKillLimit > 0)
            {
            exposedProps[3] = "KillLimit";
         }

         RoomOptions roomOptions = new RoomOptions();
         roomOptions.cleanupCacheOnLeave = true;
         roomOptions.isOpen = true;
         roomOptions.isVisible = true;
         roomOptions.maxPlayers = (byte)newMaxPlayers;
         roomOptions.customRoomProperties = roomProperties;
         roomOptions.customRoomPropertiesForLobby = exposedProps;
         
         PhotonNetwork.JoinOrCreateRoom(newRoomName, roomOptions, null);
      }else{
         GameSettings.errorText = "Unable to connect to Photon Server, please try again";
         yield return null;      
      }
   }

   void OnJoinedRoom()
    {
      //Load room map
      print ("Done joining/creating new room");
      PhotonNetwork.isMessageQueueRunning = false;
        SceneManager.LoadSceneAsync((string)PhotonNetwork.room.customProperties["MapName"]);
   }

   void OnPhotonCreateGameFailed()
    {
      GameSettings.errorText = "Unable to create / join new room, please try again";
      this.StopAllCoroutines();
   }
   
   void OnPhotonJoinRoomFailed()
    {
      GameSettings.errorText = "Unable to create / join new room, please try again";
      this.StopAllCoroutines();
   }

   void OnFailedToConnectToPhoton()
    {
      GameSettings.errorText = "Connection problem, pelase try again";
      this.StopAllCoroutines();
   }

   void OnLevelWasLoaded(int index)
    {
      if(index > 0)
        {
         //Spawn all required objects
         Transform allPoints = GameObject.Find("_ReferencePoints").transform;

         Transform welcomeCameraRef = allPoints.Find("WelcomeCamera");
         GameObject roomControllerObject = Instantiate(roomControllerPrefab,  welcomeCameraRef.position,  welcomeCameraRef.rotation) as GameObject;
         RoomController roomController = roomControllerObject.GetComponent<RoomController>();

         Transform buySpots = allPoints.Find("BuySpots");

         foreach(Transform child in buySpots)
            {
            GameObject buySpotObj = Instantiate(buySpotPrefab, child.position, child.rotation) as GameObject;
            AmmoSpot bs = buySpotObj.GetComponent<AmmoSpot>();
            bs.rc = roomController;
            bs.thisT = buySpotObj.transform;
         }

         Transform ladders = allPoints.Find("Ladders");

         foreach(Transform child in  ladders)
            {
            child.gameObject.AddComponent<LadderScript>();
         }

         Transform spawnPoints = allPoints.Find("SpawnPoints");

         foreach(Transform child in spawnPoints)
            {
            if(child.name.StartsWith("TeamASpawn"))
                {
               roomController.teamASpawnPoints.Add (child);
            }
            if(child.name.StartsWith("TeamBSpawn"))
                {
               roomController.teamBSpawnPoints.Add (child);   
            }
         }

         Destroy(gameObject);
      }
   }
}
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Sab Jul 23, 2016 3:40 pm

ta ae  Very Happy
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Dom Jul 24, 2016 7:52 pm

Ok, o único lugar do script que vi algum load foi aqui:
Código:
void OnJoinedRoom()
   {
      //Load room map
      print ("Done joining/creating new room");
      PhotonNetwork.isMessageQueueRunning = false;
      SceneManager.LoadSceneAsync((string)PhotonNetwork.room.customProperties["MapName"]);
   }

aonde o SceneManager faz o load na cena informada pelas suas propriedades do PhotonNetwork...

Você pode mudar esta cena para cada tipo de mapa, basta separar ali. E em cada mapa fazer um gerenciamento diferente de armas.

Não pude testar muito por que estão faltando muitas coisas para que eu consiga testar este script, como o PhotonNetwork, dentre outras coisas.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Dom Jul 24, 2016 8:00 pm

pode fazer um exemplo de como separar ai pra min por favor, eu não entendi direito...
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Ter Jul 26, 2016 3:05 am

Eu, quero fazer isso para por modos bacanas que vem em minha mente...

Por enquanto o jogo só tem dois modos que são eles : TDM e FFA.
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Ter Jul 26, 2016 2:00 pm

Como você informa a cena que vai ser carregada a esta variável?

((string)PhotonNetwork



Você precisa chamar aquela void, mas algum outro script que chama ela, pois não há nenhuma referência dela no script atual.

Neste outro script que está chamando a void e informando a cena que vai ser carregada que você precisa fazer o gerenciamento. Precisaria ver como é este outro script
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Dom Jul 31, 2016 5:58 pm

Código:
 }else{
 GUI.Label(new Rect(15, 40, 300, 30), "Room Name");
 roomName = GUI.TextField(new Rect(15, 70, (int)(browseWindowSize.x * 0.75f), 25), roomName, 55);

 GUI.Label(new Rect(15,100, 300, 30), "Player Limit");
 GUI.enabled = selectedPlayerLimit > 0;
 if(GUI.Button(new Rect(15, 130, 25, 25), "<"))
            {
 selectedPlayerLimit --;
 }
 GUI.enabled = true;
 GUI.Label(new Rect(45,130, 75, 25), playerLimits[selectedPlayerLimit].ToString(), GameSettings.createRoomOptionsStyle);
 GUI.enabled = selectedPlayerLimit < playerLimits.Length - 1;
 if(GUI.Button(new Rect(125, 130, 25, 25), ">"))
            {
 selectedPlayerLimit ++;
 }

 GUI.enabled = true;

 GUI.Label(new Rect(15,160, 300, 30), "Game Mode");
 GUI.enabled = selectedGameMode > 0;
 if(GUI.Button(new Rect(15, 190, 25, 25), "<"))
            {
 selectedGameMode --;
 }
 GUI.enabled = true;
 GUI.Label(new Rect(45,190, 75, 25), gameModes[selectedGameMode], GameSettings.createRoomOptionsStyle);
 GUI.enabled = selectedGameMode < gameModes.Length - 1;
 if(GUI.Button(new Rect(125, 190, 25, 25), ">"))
            {
 selectedGameMode ++;
 }

 if(gameModes[selectedGameMode] == "FFA")
            {
 GUI.enabled = true;

 GUI.Label(new Rect(185,160, 300, 30), "Kill Limit");
 GUI.enabled = selectedKillLimit > 0;
 if(GUI.Button(new Rect(185, 190, 25, 25), "<"))
                {
 selectedKillLimit --;
 }
 GUI.enabled = true;
 GUI.Label(new Rect(210,190, 75, 25), killLimits[selectedKillLimit].ToString(), GameSettings.createRoomOptionsStyle);
 GUI.enabled = selectedKillLimit < killLimits.Length - 1;
 if(GUI.Button(new Rect(290, 190, 25, 25), ">"))
                {
 selectedKillLimit ++;
 }
 }
 
 GUI.enabled = true;

 GUI.Label(new Rect(15,220, 300, 30), "Game Map");
 GUI.enabled = selectedMap > 0;
 if(GUI.Button(new Rect(15, 250, 25, 25), "<"))
            {
 selectedMap --;
 }
 GUI.enabled = true;
 GUI.Label(new Rect(45 , 250, 240, 30), availableMaps[selectedMap].mapName, GameSettings.createRoomOptionsStyle);
 GUI.enabled = selectedMap < availableMaps.Length - 1;
 if(GUI.Button(new Rect(290, 250, 25, 25), ">"))
            {
 selectedMap ++;
 }
 GUI.enabled = true;
 GUI.DrawTexture(new Rect(15, 285, 300, 150), availableMaps[selectedMap].mapPreview ? availableMaps[selectedMap].mapPreview : defaultMapPreview);

 if(GUI.Button(new Rect(browseWindowSize.x - 90, browseWindowSize.y - 40, 75, 25), "Create"))
            {
 StartCoroutine(JoinCreateRoom(
 roomName, availableMaps[selectedMap].mapName, playerLimits[selectedPlayerLimit], gameModes[selectedGameMode], (float)roundDurations[selectedGameMode], gameModes[selectedGameMode] == "FFA" ? killLimits[selectedKillLimit] : -1
 ));

 //Remember player settings when creating new room
 PlayerPrefs.SetInt(playerLimitPrefsName, selectedPlayerLimit);
 PlayerPrefs.SetInt(gameModePrefsName, selectedGameMode);
 PlayerPrefs.SetInt(selectedMapPrefsName, selectedMap);
 }

 if(GUI.Button(new Rect(15, browseWindowSize.y - 40, 75, 25), "Back"))
            {
 createRoom = false;
 }
 }


seria essa parte do gerenciamento da cena ?
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por MarcosSchultz em Dom Jul 31, 2016 11:34 pm

Está aqui no GUI.Label

Código:
availableMaps[selectedMap].mapName

Você deve ter em alguma array no código, um lugar aonde você linka todos os "availableMaps"

e através dos botões, você seleciona o mapa que você quer, por este trecho que você postou. E o interessante desta parte é que já tem uma variável que define o modo de jogo 

Código:
gameModes[selectedGameMode]

Você está utilizando ela para alguma coisa?



Bom, em todos os casos, você pode criar cenas específicas no meio deste monte de cenas que devem estar nessa array ali, e separar em uma segunda array, para a seleção. Mas fica complicado dar detalhes sem poder ver o código todo.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9808
REPUTAÇÃO : 1690
Idade : 21
Á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) COMO CRIAR UM MODO DE JOGO ?

Mensagem por artplayer em Seg Ago 01, 2016 10:49 am

Eu espero de coração que você esteja escrevendo teu FPS se baseando em um servidor autoritário, ou um dia você terá que reescrever ele.  Crying or Very sad
avatar
artplayer
ProgramadorMaster

Masculino PONTOS : 1184
REPUTAÇÃO : 245
Idade : 33
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: (FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

Mensagem por Sheyk em Seg Ago 01, 2016 12:11 pm

Very Happy Very Happy cheers bounce Basketball
avatar
Sheyk
Avançado
Avançado

PONTOS : 769
REPUTAÇÃO : 23
Idade : 18
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