Exemple #1
0
        void Start()
        {
            TeamRed   red   = GetComponent <TeamRed>();
            TeamGreen green = GetComponent <TeamGreen>();

            try
            {
                if (TeamId == 0 && red.red == true || green.green == false)
                {
                    Debug.Log("44sS");

                    CmdredUpdateTeam(TeamId);
                    Debug.Log("44");
                }
                else if (TeamId == 1 && red.red == true)
                {
                    Debug.Log("44");

                    return;
                }
                else
                {
                    Debug.Log("4");
                    CmdGreenUpdateTeam(TeamId);
                    Debug.Log("3");
                }
            }
            catch (NullReferenceException)
            {
                Debug.Log("1");
                CmdGreenUpdateTeam(TeamId);
                Debug.Log("2");
            }
        }
Exemple #2
0
        private bool stageUpdateBuy()
        {
            foreach (Character character in TeamBlue.Where(e => !e.IsDead))
            {
                updateCanvas = character.updateBuy() || updateCanvas;
            }

            foreach (Character character in TeamRed.Where(e => !e.IsDead))
            {
                updateCanvas = character.updateBuy() || updateCanvas;
            }
            return(updateCanvas);
        }
Exemple #3
0
        public CCharacter getParticipant(int objectId)
        {
            CCharacter result;

            if (!TeamRed.TryGetValue(objectId, out result))
            {
                TeamBlue.TryGetValue(objectId, out result);
            }
            if (result != null)
            {
                return(result);
            }
            return(null);
        }
Exemple #4
0
        public FightQueueListItem GetQueueInfo()
        {
            var result = new FightQueueListItem()
            {
                FightId    = this._fightId.ToString(),
                Type       = this.Type,
                Creator    = this.Creator,
                Blue       = TeamBlue.Select(p => p.Value.Name).ToList(),
                Red        = TeamRed.Select(p => p.Value.Name).ToList(),
                Timeout    = this.Timeout,
                TeamSize   = this.TeamSize,
                Sanguinary = this.Sanguinary,
            };

            return(result);
        }
Exemple #5
0
        //try to remove from team blue, if fails remove from team red. return false if couldnt remove from any
        public bool RemovePlayer(CCharacter player)         //improve to a teamless argument
        {
            bool result = false;

            if (TeamBlue.ContainsKey(player.ObjectId))
            {
                result = TeamBlue.Remove(player.ObjectId);
            }
            if (TeamRed.ContainsKey(player.ObjectId))
            {
                result = TeamRed.Remove(player.ObjectId);
            }
            if (result)
            {
                player.CurrentFight = null;
                return(result);
            }

            return(result);
        }
        public override void OnServerAddPlayer(NetworkConnection conn, short playerControllerId, NetworkReader extraMessageReader)
        {
            int id = 0;

            if (extraMessageReader != null)
            {
                Debug.Log("we");
                var i = extraMessageReader.ReadMessage <IntegerMessage>();
                id = i.value;
            }
            Debug.Log("disacks");

            // Transform chosenSpawnPoint = NetworkManager.singleton.startPositions[Random.Range(0, NetworkManager.singleton.startPositions.Count)];
            TeamRed      spawn  = GetComponent <TeamRed>();
            playerhealth spawns = GetComponent <playerhealth>();
            Team         tele   = GetComponent <Team>();

            if (characterSelected == 0)
            {
                GameObject player = Instantiate(characterPrefabs[id], redspawnpoints[1].position, redspawnpoints[1].rotation) as GameObject;

                NetworkServer.AddPlayerForConnection(conn, player, playerControllerID);

                Debug.Log("t44444try");

                player.GetComponent <Team>().CmdTele(player);
            }
            else
            {
                GameObject player = Instantiate(characterPrefabs[id], greenspawnpoints[0].position, greenspawnpoints[0].rotation) as GameObject;
                NetworkServer.AddPlayerForConnection(conn, player, playerControllerID);

                Debug.Log("destory53");

                player.GetComponent <Team>().CmdTele(player);

                Debug.Log("destory53");
                //Object.Destroy(player);
                spawns.SelectSpawnPoint();
            }
        }
Exemple #7
0
        public void updatePaint(PaintEventArgs e)
        {
            e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

            grid.draw(e.Graphics);

            TeamBlue.ForEach(character => character.draw(e.Graphics));
            TeamRed.ForEach(character => character.draw(e.Graphics));

            stageTimer.draw(e.Graphics);

            Player.draw(e.Graphics);
            e.Graphics.DrawString("Round: " + stageManager.CurrentRound, new Font("Roboto", 12, FontStyle.Bold), Brushes.Black, 800, 15);
            playersLeaderBoard.draw(e.Graphics);
            CharShop.draw(e.Graphics);

            if (false)
            {
                grid.drawDebug(e.Graphics);
                TeamBlue.ForEach(character => character.drawDebug(e.Graphics));
                TeamRed.ForEach(character => character.drawDebug(e.Graphics));
            }
        }
        //  public int tee = GetComponent<player_controler>().TeamIde;


        //dimples

        void OnCollisionEnter(Collision collision)
        {
            // collision for dimples
            GameObject hit = collision.gameObject;

            Debug.Log(hit);
            Collider     coli   = hit.GetComponent <Collider>();
            playerhealth health = hit.GetComponent <playerhealth>();

            Debug.Log(health);
            // collision for cyborg
            GameObject    hit2    = collision.gameObject;
            Player_health health2 = hit.GetComponent <Player_health>();
            Team          mytm    = this.GetComponent <Team>();
            Team          tm      = hit.GetComponent <Team>();
            //int help = GetComponent<player_controler>().TeamIde;
            // help = tee;
            //|| tm.TeamId != mytm.TeamId
            TeamRed   red   = GetComponent <TeamRed>();
            TeamGreen green = GetComponent <TeamGreen>();

            try
            {
                Debug.Log("haha1");
                bool yesred = hit.GetComponent <TeamRed>().red;


                //  bool yesgreen= hit.GetComponent<TeamGreen>().green;
                if (yesred == true)

                {
                    if (coli.CompareTag("Dimples") || hit.CompareTag("Dimples"))
                    {
                        try
                        {
                            TeamRed red4 = GetComponent <TeamRed>();
                            Debug.Log(red4);
                            if (yesred == true && red4 == null)
                            {
                                if (health != null)
                                {
                                    Debug.Log("green1");
                                    Debug.Log("12");
                                    health.TakeDamage(10);
                                }
                                if (health2 != null)
                                {
                                    health2.DeductHealth(10);
                                }
                                ////TeamRed green4 = GetComponent<TeamRed>();

                                Debug.Log("green7779");
                                return;
                            }
                            else
                            {
                                //TeamRed green4 = GetComponent<TeamRed>();

                                Debug.Log("green5389");
                                return;
                            }
                        }
                        catch (NullReferenceException)
                        {
                            if (health != null)
                            {
                                Debug.Log("green1");
                                Debug.Log("12");
                                health.TakeDamage(10);
                            }
                            if (health2 != null)
                            {
                                health2.DeductHealth(10);
                            }

                            Debug.Log("green89");
                        }


                        return;
                    }
                }
            }
            catch (NullReferenceException)
            {
                if (health != null)
                {
                    try
                    {
                        bool    yesgreen = hit.GetComponent <TeamGreen>().green;
                        TeamRed myred    = GetComponent <TeamRed>();
                        if (yesgreen == true && myred == false)
                        {
                            Debug.Log("green0");
                            return;
                        }
                        else
                        {
                            if (health != null)
                            {
                                Debug.Log("green1");
                                Debug.Log("12");
                                health.TakeDamage(10);
                            }
                            if (health2 != null)
                            {
                                health2.DeductHealth(10);
                            }
                        }
                    }
                    catch (NullReferenceException)
                    {
                        if (health != null)
                        {
                            Debug.Log("green2");
                            Debug.Log("dse 13 555");
                            health.TakeDamage(10);
                        }
                        if (health2 != null)
                        {
                            health2.DeductHealth(10);
                        }
                    }
                }
                if (health2 != null)
                {
                    health2.DeductHealth(10);
                }
            }



            if (tm == null || tm.TeamId != mytm.TeamId)
            {
                Debug.Log("haha2");
                Debug.Log("are you coming here4");
                Debug.Log("dse are here");
                Debug.Log("dse are 444");
                health.TakeDamage(10);
                if (health != null)
                {
                    Debug.Log("dse are 555");
                    health.TakeDamage(10);
                }
                if (health2 != null)
                {
                    health2.DeductHealth(10);
                }

                Destroy(gameObject);
            }
        }
Exemple #9
0
        private bool applyNetworkMsg()
        {
            bool updateLeaderBoard = false;

            gameNetworkManager.DataReceived.TryDequeue(out string result);
            string[] msg = result.Split(GameNetworkManager.NETWORK_MSG_SEPARATOR);

            if (msg[0].Equals(NetworkMsgPrefix.CharacterSwap.getPrefix()))
            {
                (Tile tile, Tile selectedTile) = GameNetworkUtilities.parseCharacterSwap(msg, grid);
                swapCharacters(tile, selectedTile);
            }
            if (msg[0].Equals(NetworkMsgPrefix.SetSeed.getPrefix()))
            {
                randomSeed = Convert.ToInt32(msg[1]);
            }
            else if (msg[0].Equals(NetworkMsgPrefix.StageChange.getPrefix()))
            {
                (GameStage gameStage, bool HostWins) = GameNetworkUtilities.parseStage(msg[1], msg[2]);
                stageTimer.switchStageEvent();
                if (gameStage == GameStage.FightToBuy)
                {
                    if (HostWins)
                    {
                        foreach (Character character in TeamBlue.Where(e => !e.IsDead))
                        {
                            character.takeDamage(10000, DamageType.PhysicalDamage);
                        }
                    }
                    else
                    {
                        foreach (Character character in TeamRed.Where(e => !e.IsDead))
                        {
                            character.takeDamage(10000, DamageType.PhysicalDamage);
                        }
                    }
                }
            }
            else if (msg[0].Equals(NetworkMsgPrefix.NewCharacter.getPrefix()))
            {
                TeamRed.Add(CharStatToCharacter(GameNetworkUtilities.parseCharacter(msg)));
            }
            else if (msg[0].Equals(NetworkMsgPrefix.PlayerHealthUpdate.getPrefix()))
            {
                Player otherPlayer = otherPlayers.Find(player => player.Name.Equals(msg[1]));
                otherPlayer.Health = int.Parse(msg[2]);
                updateLeaderBoard  = true;
                if (otherPlayer.Health == 0)
                {
                    endGame("You Win");
                }
            }
            else if (msg[0].Equals(NetworkMsgPrefix.NewPlayer.getPrefix()))
            {
                Player player = new Player(msg[1])
                {
                    Health = int.Parse(msg[2])
                };
                otherPlayers.Add(player);
                playersLeaderBoard.addPlayers(player);
                updateLeaderBoard = true;
            }
            else if (msg[0].Equals(NetworkMsgPrefix.SellCharacter.getPrefix()))
            {
                Tile tile = grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])];
                TeamRed.Remove(tile.CurrentCharacter);
                tile.CurrentCharacter = null;
                spellShop.updateShop();
            }
            else if (msg[0].Equals(NetworkMsgPrefix.LevelUpCharacter.getPrefix()))
            {
                grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])].CurrentCharacter.levelUp();
                spellShop.updateShop();
            }
            else if (msg[0].Equals(NetworkMsgPrefix.LevelUpSpell.getPrefix()))
            {
                grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])].CurrentCharacter.upgradeSpell(Spells.getSpell(int.Parse(msg[3])));
            }
            else if (msg[0].Equals(NetworkMsgPrefix.LearnSpell.getPrefix()))
            {
                grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])].CurrentCharacter.learnSpell(Spells.getSpell(int.Parse(msg[3])));
            }
            else if (msg[0].Equals(NetworkMsgPrefix.DefaultSkill.getPrefix()))
            {
                TeamRed[int.Parse(msg[1])].DefaultSkill = Spells.getSpell(int.Parse(msg[2]));
            }
            else if (msg[0].Equals(NetworkMsgPrefix.AddActiveSpells.getPrefix()))
            {
                Character character = grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])].CurrentCharacter;
                character.ActiveSpells.Add(Spells.getSpell(int.Parse(msg[3])));
                character.ChooseSpell.refreshPanel(character, character.ActiveSpells);
            }
            else if (msg[0].Equals(NetworkMsgPrefix.RemActiveSpells.getPrefix()))
            {
                Character character = grid.Tiles[int.Parse(msg[1]), int.Parse(msg[2])].CurrentCharacter;
                character.ActiveSpells.Remove(Spells.getSpell(int.Parse(msg[3])));
                character.ChooseSpell.refreshPanel(character, character.ActiveSpells);
            }
            else if (msg[0].Equals(NetworkMsgPrefix.ExchActiveSpells.getPrefix()))
            {
                Character character = TeamRed[int.Parse(msg[1])];
                character.ChooseSpell.spellSwap(int.Parse(msg[2]));
                character.ChooseSpell.refreshPanel(character, character.ActiveSpells);
            }
            else if (msg[0].Equals("EXIT"))
            {
                timer.Stop();
                MessageBox.Show("Disconnected", "Disconnected", MessageBoxButtons.OK, MessageBoxIcon.Error);
                gameForm.Close();
            }
            return(updateLeaderBoard);
        }