Exemplo n.º 1
0
 public LocalNetworkedPVPMover(Combatant player, UnityEngine.AudioSource ominousTick, EngineRoomNetworkManager engineRoomNetworkManager, GameGrid parentGrid, int seed, bool isServer) : base(player, ominousTick)
 {
     this.engineRoomNetworkManager = engineRoomNetworkManager;
     this.isServer = isServer;
     engineRoomNetworkManager.AttachToSenderMover(this, isServer);
     this.parentGrid = parentGrid;
 }
Exemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        //Time.timeScale = 0;
        localMulti = GameObject.Find("Free Play Mission").GetComponent <FreePlayMission>();
        getReady   = GameObject.Find("EngineRoomMissionManager").GetComponent <MissionManager>();

        ernm        = GameObject.Find("EngineRoomNetworkManager").GetComponent <EngineRoomNetworkManager>();
        onlineMulti = GameObject.Find("Online Multiplayer Mission").GetComponent <NetworkedMission>();

        //campaign2 = GameObject.Find("mission2").GetComponent<Mission>();
    }
Exemplo n.º 3
0
    // Update is called once per frame
    void Update()
    {
        if (!setup)
        {
            bool doStart = true;
            //There are three scenarios: Either we're against an AI, in local co-op, or online. Each one needs a different seed.
            //If against an AI, look at its info and extract a scene from it.
            AIParams pars = MissionManager.instance.mission.GetAIParams();
            if (pars != null)
            {
                AIPlayer ai = grid2.LoadAI(pars.robotic, pars.robotSpeed, pars.loop, pars.text);
                randomSeed = ai.seed;
            }
            //elseif connecting then get the seed from the host. (To Be Implemented)
            else //Single player
            {
                randomSeed = UnityEngine.Random.Range(1, 65535);
            }
            if (MissionManager.instance.mission.GameType() == EngineRoomGameType.LOCAL_PVP)
            {
                grid1.SetLocalPVPMover(true);
                grid2.SetLocalPVPMover(false);
            }
            if (MissionManager.instance.mission.GameType() == EngineRoomGameType.SERVER_PVP)
            {
                EngineRoomNetworkManager ernm = MissionManager.instance.engineRoomNetworkManager;
                ernm.SetupLocalClient();
                ernm.SetupServer();
                grid2.SetRemotePVPPlayer();
                grid1.SetLocalPVPPlayer();
            }
            if (MissionManager.instance.mission.GameType() == EngineRoomGameType.CLIENT_PVP)
            {
                EngineRoomNetworkManager ernm = MissionManager.instance.engineRoomNetworkManager;
                ernm.SetupClient();
                grid2.SetRemotePVPPlayer();
                grid1.SetLocalPVPPlayer();
                doStart = false; //Client waits to start until server says what the seed is.
            }

            if (doStart)
            {
                grid1.SetSeedAndStart(randomSeed);
                grid2.SetSeedAndStart(randomSeed);
            }

            setup = true;
        }

        if (isDying)
        {
            deathExplosionTime += Time.deltaTime;
            if (deathExplosionTime > 4)
            {
                p1Menu.SetActive(true);
                p2Menu.SetActive(true);
                endMenu.SetActive(true);


                if (grid1.player.IsAlive() && !grid2.player.IsAlive())
                {
                    p1Text.sprite = victory;
                    p2Text.sprite = defeat;
                }
                if (grid2.player.IsAlive() && !grid1.player.IsAlive())
                {
                    p2Text.sprite = victory;
                    p1Text.sprite = defeat;
                }
                if (!grid1.player.IsAlive() && !grid2.player.IsAlive())
                {
                    p1Text.sprite = defeat;
                    p2Text.sprite = defeat;
                }
                if (grid1.player.IsAlive() && grid2.player.IsAlive())
                {
                    p1Text.sprite = victory;
                    p2Text.sprite = victory;
                }
                //Time.timeScale = 0;
                isDying = false;
            }
        }
    }
Exemplo n.º 4
0
 public RemoteNetworkedPVPMover(EngineRoomNetworkManager ernm, bool isServer, Combatant toOverwrite)
 {
     ernm.AttachToListenerMover(this, isServer);
     this.toOverwrite = toOverwrite;
 }