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:
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
(DÚVIDA) como eu posso fazer para a Câmera ativar um objeto ao ver?
Como apagar Proceduram material da pista, quando for recarregar a cena?
Problema com contator
[RESOLVIDO] Trocar controles de keyboard para gui
[DÚVIDA] Script teleporte, como esperar determinados segundos para teleportar
Jogo Mobile - Utomate Fighter
[TUTORIAL] Efeito Outlined (Sublinhado) com shader
Como Eu fasso um Um sistema de dia e noite
Será que vale a pena colocar todas as ideias do jogo em um papel?
Duvidas sobre jogos 2d
Desativar arma quando pegar outra
Efeito arma giratória
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
IsLocalPlayer não existe, o que substitui ele?
Script de Chute Futebol
Polygon Collider anexado a sprite com areas transparentes
[TUTORIAL] Seleçao de personagens no Photon.
Botão para acionar velocidade e botão para retornar a posição inicial
como fazer sistema de seleção de personagem para moba no photon?
Sombras na "tampa" de buracos no blender
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
Gradiente de cores
Personagem olhar para frente ao andar.
[TUTORIAL] Criando um simples Multiplayer [UNITY 5]
[Dúvida] Multiplayer Client Object Spawn
Tangram ou Quebra Cabeça
[RESOLVIDO] Problema Com o transform.LookAt!
Jogo com Battle Royale já em desenvolvimento
[TUTORIAL] Unity 5 - Skid Marks (marcas de derrapagem)
Inimigo jogar o jogador de volta.
Como fazer um gráfico em forma de pizza na unity?
Texturização no Blender
Tudo fica bugado ao mudar o projeto de PC para Android
erro de dll's
Como alterar todos os materiais de um mesh renderer?
Destruir Polygon Collider 2D e Readiciona-lo, porém não há uma precisão no colisor gerado!
[TUTORIAL] Mudando material
[RESOLVIDO] Remover child
[RESOLVIDO] Como compilar pra android ?
Inimigo seguir o jogador sem usar o NavMesh
Resolução
(DUVIDA) Pq os Graficos Não Diminuem Corretamente?
[RESOLVIDO] Script não ativa bool do animator
[FORMAÇÃO DE EQUIPE]Equipe para jogo De Carros
Como evitar que o QualitySettings afete a qualidade da textura de um texto do canvas?
[TUTORIAL] Deixar o Texto (UI) mais bonito - HD
Código não compila
Há alguma forma de Fazer o apk Funcionar somente se for baixado pela Play Store ?
[Alpha Android] - Winthia Chronicles (Alpha Devlog, 21 de março de 2018). V 1.6
Configurar MS vehicle system free para UFPS
CRIAR MENSAGEM NA TELA PARA PERSOAGEM
[RESOLVIDO] Dúvida sobre animação do personagem
Duvida sobre Cenas
[RESOLVIDO] Duvida sobre versao da unity e sobre o lerp
[RESOLVIDO] problemas ao animar o game object
[DÚVIDA] Sair som e acender luz de um BOTÃO UI ao pressionar uma tecla
Dificuldade em criação de mapa simples no Unity
Procuro Modelador 3D, To criando uma equipe.vamos?
[TUTORIAL] Inteligência Artificial
[Devlog] ZByte Defender 10/04 (Alpha Aberta) + Download
[____ADMINISTRAÇÃO____] Alterações IMPORTANTES no fórum.
[TUTORIAL] Decrescer o valor do Emission Particlesystem
Limitar quantidades de vezes chamadas na void Update
[TUTORIAL] Sistema de inventário Sobrevivência
Sistema de Particulas não inicia com o jogo
[TUTORIAL] Serialização - JSON
Como posso resolver um bug reporter que não me deixa abrir o projeto?
[TUTORIAL]Sistema de Pet Virtual [Tamagotchi] Completo (ANDROID/PC)
Como arrumar efeitos do UFPS?
Servidor de discord para desenvolvedores.
Setar objeto filho de outro objeto via scrit
[RESOLVIDO] NavMesh nao funciona direito com terrain ?
[PEDIDO]Criar uma vestimenta para esse modelo que fiz no blender (Com-rig)
Duvida sobre blender para unity
Script para Sistema de Entregas e no final ganhar dinheiro
Formação de equipe
Criar jogo estilo clash of clans
Form API POST WebService unity
Por que a engine Unity 3D ficou pesado(FPS pior) depois da versão 5?
[TUTORIAL] Screenshoot do jogo no editor (em resoluções mais altas)
[DÚVIDA] Fazer pontuação quando objeto passar por um collider
Como marcar um limite do direcional light em cada parte da cidade?
[Duvida] Multiplayer Moviment Client [Bug?!]
desenvolvimento do meu projeto, fase final
Movimentação 2D em personagem 3D
Ajuda com Substance Designer
Duvida usar posicao do mouse para mudar direcao de Ray
Ajuda Brush de Árvore Terreno
Command 888
Preciso de programador
Sistema de probabilidade de Spawn para Waves
Ajuda com o recuo da arma Jogo de Fps no unity
FPS Asset package completo
Duvida sobre como instanciar 3 objetos de uma vez mas com um tempo entre cada instancia
Shadow of the colossus materiais e models
Duvida Nav Mesh
Dificuldade na Criação de fase bônus
Hoje à(s) 6:48 pm
Hoje à(s) 6:39 pm
Hoje à(s) 5:24 pm
Hoje à(s) 3:52 pm
Hoje à(s) 3:42 pm
Hoje à(s) 2:25 pm
Hoje à(s) 1:21 pm
Hoje à(s) 10:41 am
Ontem à(s) 9:54 pm
Ontem à(s) 9:01 pm
Ontem à(s) 12:22 pm
Ontem à(s) 8:36 am
Ontem à(s) 1:32 am
Sex Abr 20, 2018 7:05 pm
Sex Abr 20, 2018 6:21 pm
Sex Abr 20, 2018 3:12 pm
Sex Abr 20, 2018 3:07 pm
Sex Abr 20, 2018 12:58 pm
Sex Abr 20, 2018 6:39 am
Sex Abr 20, 2018 6:24 am
Sex Abr 20, 2018 1:05 am
Qui Abr 19, 2018 10:35 am
Qui Abr 19, 2018 10:34 am
Qui Abr 19, 2018 10:33 am
Qui Abr 19, 2018 9:33 am
Qui Abr 19, 2018 6:45 am
Qui Abr 19, 2018 6:02 am
Qua Abr 18, 2018 10:30 pm
Qua Abr 18, 2018 9:13 pm
Qua Abr 18, 2018 8:57 pm
Qua Abr 18, 2018 6:33 pm
Qua Abr 18, 2018 6:18 pm
Qua Abr 18, 2018 5:48 pm
Qua Abr 18, 2018 3:28 pm
Qua Abr 18, 2018 2:59 pm
Qua Abr 18, 2018 1:41 pm
Ter Abr 17, 2018 9:55 pm
Ter Abr 17, 2018 8:05 pm
Ter Abr 17, 2018 8:01 pm
Ter Abr 17, 2018 8:00 pm
Ter Abr 17, 2018 7:53 pm
Ter Abr 17, 2018 3:35 pm
Ter Abr 17, 2018 2:22 pm
Ter Abr 17, 2018 1:07 pm
Seg Abr 16, 2018 10:28 pm
Seg Abr 16, 2018 9:03 pm
Seg Abr 16, 2018 6:36 pm
Seg Abr 16, 2018 6:33 pm
Seg Abr 16, 2018 6:31 pm
Seg Abr 16, 2018 1:19 pm
Seg Abr 16, 2018 12:40 pm
Seg Abr 16, 2018 12:09 pm
Seg Abr 16, 2018 10:01 am
Seg Abr 16, 2018 1:07 am
Dom Abr 15, 2018 8:28 am
Dom Abr 15, 2018 12:06 am
Sab Abr 14, 2018 4:29 pm
Sab Abr 14, 2018 2:52 pm
Sab Abr 14, 2018 1:23 pm
Sab Abr 14, 2018 11:23 am
Sab Abr 14, 2018 11:10 am
Sab Abr 14, 2018 9:56 am
Sex Abr 13, 2018 10:20 pm
Sex Abr 13, 2018 10:01 pm
Sex Abr 13, 2018 8:12 pm
Sex Abr 13, 2018 7:22 pm
Sex Abr 13, 2018 4:50 pm
Sex Abr 13, 2018 3:12 pm
Sex Abr 13, 2018 1:30 pm
Sex Abr 13, 2018 12:59 pm
Sex Abr 13, 2018 12:20 pm
Sex Abr 13, 2018 12:16 pm
Sex Abr 13, 2018 12:02 pm
Qui Abr 12, 2018 10:14 pm
Qui Abr 12, 2018 7:01 pm
Qui Abr 12, 2018 12:09 pm
Qua Abr 11, 2018 9:02 pm
Qua Abr 11, 2018 2:00 pm
Ter Abr 10, 2018 11:33 pm
Ter Abr 10, 2018 8:26 pm
Ter Abr 10, 2018 5:57 pm
Ter Abr 10, 2018 2:30 pm
Seg Abr 09, 2018 9:12 pm
Seg Abr 09, 2018 8:37 pm
Seg Abr 09, 2018 5:36 pm
Dom Abr 08, 2018 5:38 pm
Dom Abr 08, 2018 4:53 pm
Dom Abr 08, 2018 3:51 am
Sab Abr 07, 2018 11:00 pm
Sab Abr 07, 2018 8:39 pm
Sab Abr 07, 2018 7:28 pm
Sab Abr 07, 2018 5:27 pm
Sab Abr 07, 2018 12:05 am
Sex Abr 06, 2018 8:07 pm
Sex Abr 06, 2018 6:27 pm
Sex Abr 06, 2018 4:42 pm
Sex Abr 06, 2018 4:30 pm
Sex Abr 06, 2018 2:43 pm
Sex Abr 06, 2018 12:45 pm
Dom3000
glauco
guimaraf
guimaraf
otavio00augusto
Souris
felipehobs1
dstaroski
Daniel Pires da Silva
SuperGamer
Zack2
dstaroski
Before Dawn
DreamKiller
YmKx
dstaroski
dstaroski
Callyde Jr
Phph09
Phph09
felipehobs1
dstaroski
dstaroski
dstaroski
Daniel Pires da Silva
Phph09
Callyde Jr
luizmauro123
MarcosUAC
MarcosUAC
guimaraf
rafaelllsd
oilson
Yagogomes
Fluttershy28
hetrodo_gamer
Dom3000
MarcosSchultz
Dom3000
AmaralGabriel2
TioUV
dstaroski
Zack2
glauco
Daniel Pires da Silva
fabriciorsz34
Daniel Pires da Silva
Souris
Souris
fabriciorsz34
Cássio Ambelouer
Phph09
felipehobs1
Callyde Jr
Phph09
Ronmaster
nando07
Souris
Callyde Jr
Dom3000
Dom3000
Mateus2583
MarcosSchultz
ffabim
Daniel Pires da Silva
Fluttershy28
YmKx
natanael.olimpio
Souris
dstaroski
Phph09
BRGC
Phph09
Callyde Jr
BRGC
Zack2
heliab125
Souris
gcs13
natanael.olimpio
Daniel Pires da Silva
dstaroski
srhuculak
MarcosSchultz
Callyde Jr
Patrick
Souris
PedroSilva
Souris
YmKx
Callyde Jr
Phph09
Callyde Jr
rafaelllsd
gcs13
360flip
brunopereira06
YmKx
360flip

(FPS MULTIPLAYER) COMO CRIAR UM MODO DE JOGO ?

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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 918
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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 918
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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 918
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 : 10368
REPUTAÇÃO : 1834
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 : 1356
REPUTAÇÃO : 250
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 : 918
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 Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Voltar ao Topo


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