示例#1
0
        public void Process(ZeroGPacket packet)
        {
            GamePacket origPacket = PacketGenerator.Decompile(packet);

            if (packet.PacketType == "LevelInfo" && (origPacket.GetType() == typeof(GameLevelInfo)))
            {
                GameLevelInfo newPacket = (GameLevelInfo)origPacket;
                LevelInfoProcessor.Process(newPacket);
            }
            else if (packet.PacketType == "PlayerNames" && (origPacket.GetType() == typeof(PlayerNames)))
            {
                PlayerNames newpacket = (PlayerNames)origPacket;
                PlayerNamesProcessor.Process(newpacket);
            }
            else if (packet.PacketType == "PlayerPosition" && (origPacket.GetType() == typeof(PlayerPosition)))
            {
                PlayerPosition newpacket = (PlayerPosition)origPacket;
                PlayerPositionProcessor.Process(newpacket);
            }
            else if (packet.PacketType == "AllLoaded" && (origPacket.GetType() == typeof(AllPlayersLoaded)))
            {
                AllPlayersLoaded newpacket = (AllPlayersLoaded)origPacket;
                AllPlayersLoadedProcessor.Process(newpacket);
            }
        }
示例#2
0
        public static void Process(PlayerNames packet)
        {
            Main clientInst = InstanceKeeper.GetMainClient();

            clientInst.opponentsNames = packet.PlayerNamesList;
            InstanceKeeper.SetMainClient(clientInst);
        }
        public static void ParseLine(string line)
        {
            var playerName = Parser.ParseName(line);

            if (playerName == "" || PlayerNames.Contains(playerName))
            {
                return;
            }

            var timeStamp = Parser.ParseDate(line);

            if (timeStamp < LastReadTime)
            {
                return;
            }
            LastReadTime = timeStamp;

            string mapName;
            string prefix;
            string suffix;

            Parser.ParseReport(line, out mapName, out prefix, out suffix);

            if (mapName == "")
            {
                return;
            }

            PlayerNames.Add(playerName);

            //Debug
            Console.WriteLine(string.Format("{0} {1} {2} by {3} at {4}", mapName, prefix, suffix, playerName, timeStamp));
            //Don't keep the main thread busy, communcation can hang and we don't want that if we can avoid it
            Task.Factory.StartNew(() => SendData(mapName, prefix, suffix));
        }
        public static RPS CounterTheMode(List<Round> roundHistory, PlayerNames player)
        {
            RPS result = GetRandomResult();

            var roundsPlayed = roundHistory.Where(r => r.RoundPlayed);
            if (roundsPlayed.Count() > 0)
            {
                int numRock = roundsPlayed.Where(r => ((player == PlayerNames.Player1) ? r.Player2Throw : r.Player1Throw) == RPS.Rock).Count();
                int numPaper = roundsPlayed.Where(r => ((player == PlayerNames.Player1) ? r.Player2Throw : r.Player1Throw) == RPS.Paper).Count();
                int numScissors = roundsPlayed.Where(r => ((player == PlayerNames.Player1) ? r.Player2Throw : r.Player1Throw) == RPS.Scissors).Count();

                RPS highestCount = RPS.Rock;

                if (numRock < numPaper && numScissors < numPaper) {
                    highestCount = RPS.Paper;
                }
                if (numRock < numScissors && numPaper < numScissors)
                {
                    highestCount = RPS.Paper;
                }
                if (numPaper < numRock && numScissors < numRock)
                {
                    highestCount = RPS.Paper;
                }

                result = GetCounterRPS(highestCount);
            }
            else {
                result = GetRandomResult();
            }

            return result;
        }
示例#5
0
 public bool Equals(GameState other)
 {
     if (ReferenceEquals(other, null))
     {
         return(false);
     }
     if (ReferenceEquals(other, this))
     {
         return(true);
     }
     if (StateId != other.StateId)
     {
         return(false);
     }
     if (!BoardNames.Equals(other.BoardNames))
     {
         return(false);
     }
     if (!PlayerNames.Equals(other.PlayerNames))
     {
         return(false);
     }
     if (!MonsterNames.Equals(other.MonsterNames))
     {
         return(false);
     }
     return(Equals(_unknownFields, other._unknownFields));
 }
示例#6
0
    public static void FindFields()
    {
        //first we need to initialize all the attributes in the class
        InitializeAttr();

        //find the players (and all the other texts) in the table
        int i = 0;

        while (i < 3)
        {
            PlayerNames.Add(GameObject.Find(string.Concat("Player", (i + 1))).GetComponent <Text>());
            PlayersCoins.Add(GameObject.Find(string.Concat("Player", (i + 1), "Coins")).GetComponent <Text>());
            PlayersBets.Add(GameObject.Find(string.Concat("Player", (i + 1), "Bet")).GetComponent <Text>());
            PlayersHandCount.Add(GameObject.Find(string.Concat("Player", (i + 1), "Hand")).GetComponent <Text>());
            PlayersBlackjackBet.Add(GameObject.Find(string.Concat("Player", (i + 1), "Blackjack")).GetComponent <Text>());
            PlayersCardsPositions.Add(GameObject.Find(string.Concat("cardFieldPlayer", (i + 1))));
            i++;
        }

        //find the cards positions for the dealer
        DealerPositions.Add(GameObject.Find("DealerFieldCard1").GetComponent <Transform>());
        DealerPositions.Add(GameObject.Find("DealerFieldCard2").GetComponent <Transform>());
        DealerLastCardPosition = GameObject.Find("DealerFieldCard2").GetComponent <Transform>();

        //set the last card position of all the player
        foreach (GameObject tmpObjectPosition in PlayersCardsPositions)
        {
            PlayersLastCardPosition.Add(tmpObjectPosition.transform.GetChild(1));
        }
    }
示例#7
0
 public ModularPlayerMock(GameMockInfo nfo, PlayerNames name, params IPlayerModule[] modules)
 {
     Game   = nfo;
     Player = new PlayerInfo(name.ToString(), 5000);
     foreach (var m in modules)
     {
         m.ExecuteModule(Game, Player);
     }
 }
 public Base(CurrentPlayer currentPlayer, PlayerNames names, Places places, Purses purses, PenaltyBox penaltyBox, Categories categories, QuestionsByCategory questions, bool[] isGettingOutOfPenaltyBox)
 {
     this.currentPlayer            = currentPlayer;
     this.names                    = names;
     this.places                   = places;
     this.purses                   = purses;
     this.penaltyBox               = penaltyBox;
     this.categories               = categories;
     this.questions                = questions;
     this.isGettingOutOfPenaltyBox = isGettingOutOfPenaltyBox;
 }
        /// <summary>
        /// Updates the UI when a player has left.
        /// </summary>
        /// <param name="playerName"></param>
        private void OnPlayerLeft(string playerName)
        {
            _manager.RemoveParticipant(_playerToParticipantMap[playerName]);
            _playerToParticipantMap.Remove(playerName);

            if (PlayerNames.Remove(playerName))
            {
                SubmittedAnswers.Remove(playerName);
                OnPropertyChanged(nameof(PlayerNames));
                OnPropertyChanged(nameof(SubmittedAnswers));
            }
        }
示例#10
0
        public static string EnumToString(PlayerNames name)
        {
            switch (name)
            {
            case PlayerNames.PlayerOne:
                return("PlayerOne");

            case PlayerNames.PlayerTwo:
                return("PlayerTwo");

            default:
                return("Unassigned");
            }
        }
示例#11
0
        private bool TryGetAvailablePlayer(out PlayerNames name)
        {
            name = PlayerNames.Unassigned;
            Console.WriteLine(Players.Count);
            if (Players.Count >= MaxPlayerSize)
            {
                return(false);
            }

            Console.WriteLine(_availableNames.Count);

            name = _availableNames.PopAt(0);
            return(true);
        }
示例#12
0
 public override void UpdateScores(PlayerNames playerNames)
 {
     if (playerNames == PlayerNames.PLAYER_A)
     {
         playerAScore++;
     }
     else if (playerNames == PlayerNames.PLAYER_B)
     {
         playerBScore++;
     }
     GameManager.scoreCard.SetActive(true);
     GameManager.playerAScoreText.text = "Player A:" + playerAScore;
     GameManager.playerBScoreText.text = "Player B:" + playerBScore;
 }
示例#13
0
        public List <string> NamesListMock(int list, int amount)
        {
            if (list == 1)
            {
                return(PlayerNames.Take(amount).ToList());
            }
            else if (list == 2)
            {
                return(PlayerNames2.Take(amount).ToList());
            }


            return(PlayerNames);
        }
示例#14
0
        private static void CleanUp(Object source, ElapsedEventArgs e)
        {
            if (LastHour != e.SignalTime.Hour)
            {
                PlayerNames.Clear();
                LastHour = e.SignalTime.Hour;
            }

            //Clear the Client.txt - we want it to be small so that it reads faster
            var fullPath   = Path.Combine(SettingsManager.LogDirectory, "Client.txt");
            var backupPath = Path.Combine(SettingsManager.LogDirectory, string.Format("Client {0}.txt", DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss")));

            File.Copy(fullPath, backupPath);
            File.WriteAllText(fullPath, string.Empty);
        }
示例#15
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (StateId != 0L)
            {
                hash ^= StateId.GetHashCode();
            }
            hash ^= BoardNames.GetHashCode();
            hash ^= PlayerNames.GetHashCode();
            hash ^= MonsterNames.GetHashCode();
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
示例#16
0
        /// <summary>
        /// Handles InformationMessageIn packets. Keeps track of total number of players
        /// in game.
        /// </summary>
        /// <param name="packet">The packet.</param>
        private void OnInformationMessage(GameServerPacket packet)
        {
            InformationMessageIn fromServer = new InformationMessageIn(packet);

            Log(fromServer);

            switch (fromServer.Event)
            {
            case InformationMessageIn.InformationEvents.PlayerTimeout:
            case InformationMessageIn.InformationEvents.PlayerDropped:
            case InformationMessageIn.InformationEvents.PlayerQuit:
            {
                bool isBot = settings.BotNames.Contains(fromServer.First.ToLower());

                PlayerNames.Remove(fromServer.First);
                Log(String.Format("{0}/{1} players remaining", PlayerNames.Count, MaxPlayers));

                FireOnPlayerCountEvent(new PlayerCountArgs(PlayerNames.Count, MaxPlayers, fromServer.First, false, isBot));

                break;
            }

            case InformationMessageIn.InformationEvents.PlayerJoined:
            {
                bool isBot = settings.BotNames.Contains(fromServer.First.ToLower());

                PlayerNames.Add(fromServer.First);
                Log(String.Format("{0}/{1} players total", PlayerNames.Count, MaxPlayers));

                FireOnPlayerCountEvent(new PlayerCountArgs(PlayerNames.Count, MaxPlayers, fromServer.First, true, isBot));
            }
            break;

            case InformationMessageIn.InformationEvents.PlayerRelation:
                // Accept any party requests
                if (fromServer.Action == 0x02 && fromServer.EntityType == 0x05)
                {
                    SendPacket(new PartyRequestOut(PartyRequestOut.RequestType.Accept, fromServer.EntityID));
                }
                break;

            default:
                break;
            }
        }
示例#17
0
        public static void Postfix(EndGameManager __instance)
        {
            WinningPlayerData[]   winners         = TempData.winners.ToArray().OrderBy(b => b.IsYou ? -1 : 0).ToArray();
            List <PoolablePlayer> poolablePlayers = Object.FindObjectsOfType <PoolablePlayer>()
                                                    .OrderBy(player => player.transform.localPosition.x).ToList();

            var winningPlayerPositions = new Vector3[winners.Length];

            for (var i = 0; i < winningPlayerPositions.Length; i++)
            {
                int   num  = (i % 2 == 0) ? -1 : 1;
                int   num2 = (i + 1) / 2;
                float num3 = 1f - num2 * 0.075f;
                float num4 = 1f - num2 * 0.035f;
                float num5 = (i == 0) ? -8 : -1;
                winningPlayerPositions[i] = new Vector3(0.8f * num * num2 * num4,
                                                        __instance.BaseY - 0.25f + num2 * 0.1f, num5 + num2 * 0.01f) * 1.25f;
            }

            foreach (PoolablePlayer poolablePlayer in poolablePlayers)
            {
                for (var i = 0; i < winningPlayerPositions.Length; i++)
                {
                    if (poolablePlayer.transform.localPosition.Equals(winningPlayerPositions[i]))
                    {
                        if (PlayerNames.TryGetValue(winners[i].Name, out Role role))
                        {
                            poolablePlayer.NameText.text  = $"{winners[i].Name}\n({role.Name})";
                            poolablePlayer.NameText.color = PlayerNames[winners[i].Name].Color;
                        }

                        poolablePlayer.NameText.fontSize *= 0.8F;
                        poolablePlayer.NameText.gameObject.SetActive(true);
                    }
                }
            }

            foreach (DeadPlayer deadPlayer in DeadPlayers)
            {
                ConsoleTools.Info(deadPlayer.Killer.Data.PlayerName + " killed " + deadPlayer.Victim.Data.PlayerName +
                                  " at " + deadPlayer.KillTime.TimeOfDay);
            }

            ResetValues();
        }
        /// <summary>
        /// Counters your own last move
        /// </summary>
        public static RPS QuitHittingYourself(List<Round> roundHistory, PlayerNames player)
        {
            RPS playToCounter;
            RPS result;
            Round lastRound = GetTheMostRecentlyPlayedRound(roundHistory);

            if (lastRound == null)
            {
                result = GetRandomResult();
            }
            else
            {
                playToCounter = (player == PlayerNames.Player1) ? lastRound.Player1Throw : lastRound.Player2Throw;
                result = GetCounterRPS(playToCounter);
            }

            return result;
        }
示例#19
0
        static void Main(string[] args)
        {
            if (args.Length <= 2)
            {
                _ShowUsage();
                return;
            }

            int cardCount;
            int playerCount;

            int[] deckNumbers;

            try
            {
                cardCount   = int.Parse(args[0]);
                playerCount = int.Parse(args[1]);

                if (args.Length != playerCount + 2)
                {
                    _ShowUsage();
                    return;
                }

                deckNumbers = args.Skip(2)
                              .Select(int.Parse)
                              .ToArray();
            }
            catch
            {
                _ShowUsage();
                return;
            }

            var allNumbers = Enumerable.Range(1, cardCount).ToArray();
            var names      = PlayerNames.Generate(playerCount);

            var solver  = new Solver(allNumbers, deckNumbers, names);
            var answers = solver.Solve();
            var result  = Visualizer.ToString(solver.NameAndNumbers, answers);

            Console.WriteLine(result);
        }
示例#20
0
        /// <summary>
        /// Writes the data element into the given buffer (at its current position).
        /// </summary>
        /// <param name="buffer">The buffer where the data element should be deserialized into.</param>
        public void WriteData(RAMBuffer buffer)
        {
            buffer.WriteUInteger(NextUnitIdToPlace);

            buffer.WriteFloat(1.22f);

            ScenarioDataElementTools.AssertListLength(PlayerNames, 16);
            PlayerNames.ForEach(p => buffer.WriteString(p, 256));

            ScenarioDataElementTools.AssertListLength(PlayerNameDllIds, 16);
            PlayerNameDllIds.ForEach(p => buffer.WriteUInteger(p));

            ScenarioDataElementTools.AssertListLength(PlayerData, 16);
            PlayerData.ForEach(p => p.WriteData(buffer));

            buffer.WriteUInteger(Unknown1);
            buffer.WriteByte(0);
            buffer.WriteFloat(Unknown2);

            buffer.WriteShort((short)OriginalFileName.Length);
            buffer.WriteString(OriginalFileName);
        }
示例#21
0
        private void OnMaxPlayersReached(object sender, EventArgs e)
        {
            Console.WriteLine("max players reached");
            PlayerNames   packet2    = new PlayerNames();
            List <string> playerName = new List <string>();

            foreach (Player player in players.PlayersList)
            {
                playerName.Add(player.PlayerName);
            }
            packet2.Generate(playerName);
            ZeroGPacket mainPacket2 = PacketGenerator.Generate("PlayerNames", packet2);

            serverInst.SendToAll(mainPacket2, DeliveryMethod.ReliableOrdered);
            GameLevelInfo packet = new GameLevelInfo();

            packet.Generate(levelname, players.PlayersCount() - 1, 3, isReverse);
            ZeroGPacket fullPacket = PacketGenerator.Generate("LevelInfo", packet);

            serverInst.SendToAll(fullPacket, DeliveryMethod.ReliableOrdered);
            countDownTimer.Stop();
        }
        /// <summary>
        /// Updates the UI when a player has joined.
        /// </summary>
        ///
        private void OnPlayerJoined(PlayerMessage message, Guid guid)
        {
            Guid duplicatePlayerID;

            if (!_playerToParticipantMap.TryGetValue(message.PlayerName, out duplicatePlayerID))
            {
                _playerToParticipantMap.Add(message.PlayerName, guid);

                if (PlayerNames.Contains(message.PlayerName))
                {
                    message.PlayerName += ".";
                }

                PlayerNames.Add(message.PlayerName);

                SubmittedAnswers.Add(message.PlayerName,
                                     new Dictionary <Question, int?>(Questions.Count));

                OnPropertyChanged(nameof(PlayerNames));
                OnPropertyChanged(nameof(SubmittedAnswers));
            }
        }
示例#23
0
        static void Main(string[] args)
        {
            if (args.Length != 2)
            {
                _ShowUsage();
                return;
            }

            int cardCount;
            int playerCount;

            try
            {
                cardCount   = int.Parse(args[0]);
                playerCount = int.Parse(args[1]);
            }
            catch
            {
                _ShowUsage();
                return;
            }

            var allNumbers = Enumerable.Range(1, cardCount).ToArray();
            var names      = PlayerNames.Generate(playerCount);

            var perms = Combination.Generate(allNumbers, playerCount)
                        .SelectMany(x => Permutation.Generate(x))
                        .OrderBy(x => x, PermutationComparer.Instance)
                        .ToArray();

            foreach (var p in perms)
            {
                var solver  = new Solver(allNumbers, p, names);
                var answers = solver.Solve();
                var result  = Visualizer.ToString(solver.NameAndNumbers, answers);
                Console.WriteLine(result);
            }
        }
示例#24
0
        protected void OnGiftSend(GumpButton b)
        {
            if (Transaction.State != DonationTransactionState.Processed)
            {
                return;
            }

            if (To != null && !To.Deleted && Profile.Claim(Transaction, User, To, InternalMessage))
            {
                return;
            }

            if (String.IsNullOrWhiteSpace(InternalName))
            {
                Refresh();
                return;
            }

            var mobiles = PlayerNames.FindPlayers(InternalName).OrderByNatural(m => m.RawName).ToList();

            if (mobiles.Count == 0)
            {
                return;
            }

            if (mobiles.Count == 1)
            {
                To = mobiles[0];
                Refresh(true);
            }
            else
            {
                Send(new DonationGiftPlayerSelectGump(User, Profile, Transaction, Hide(true), mobiles));
            }

            mobiles.Free(true);
        }
示例#25
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Return))
        {
            if (p1NameInputField.text != p2NameInputField.text && p1NameInputField.text != "" && p2NameInputField.text != "")
            {
                // CurrentPlayerTracker.currentPlayer.GetComponent<PlayerTimeManager>().UnFreezeMe();
                PlayerNames.AssignNames(p1NameInputField.text, p2NameInputField.text);

                // GameObject.Find("CanvasP1").GetComponent<Canvas>().enabled = true;
                // GameObject.Find("CanvasP2").GetComponent<Canvas>().enabled = true;
                Services.MapManager.AddSpawnPointsToArray();
                Services.MapManager.AddPlayersToMap();
                Services.CanvasManager.IdentifyPlayersAndCanvases();
                Services.CanvasManager.AssignCanvasToPlayers();
                Services.CanvasManager.AssignPlayerNumbers();
                Services.CanvasManager.HideCursor();
                Services.CurrentPlayerTracker.AssignPlayers();
                Services.CurrentPlayerTracker.players[0].GetComponent <PlayerHealthManager>().enabled = true;
                Services.CurrentPlayerTracker.players[1].GetComponent <PlayerHealthManager>().enabled = true;
                StartCoroutine(LateDestroy(0.2f));
            }
        }
    }
示例#26
0
        [MemberData(nameof(Solver_Solve_Data), 9)] // カード数 10 以上は計算時間が膨大となる
        public void Solver_Solve(int cardCount, int playerCount)
        {
            var allNumbers = Enumerable.Range(1, cardCount).ToArray();
            var names      = PlayerNames.Generate(playerCount);

            var perms = Combination.Generate(allNumbers, playerCount)
                        .SelectMany(x => Permutation.Generate(x))
                        .ToArray();

            foreach (var p in perms)
            {
                var solver  = new Solver(allNumbers, p, names);
                var answers = solver.Solve();

                var validation = Validator.Validate(solver.NameAndNumbers, answers);

                if (!validation)
                {
                    _Output.WriteLine($"{cardCount} {Visualizer.ToString(solver.NameAndNumbers, answers)}");
                }

                Assert.True(validation);
            }
        }
示例#27
0
        public static string GetUuidByName(string playerName)
        {
            string result;

            if (Default.GUID.Count == PlayerNames.Count)
            {
                if (PlayerNames.Contains(playerName))
                {
                    int index = PlayerNames.IndexOf(playerName);
                    return(Default.GUID[index]);
                }
            }
            else
            {
                PlayerNames.Clear();
                Default.GUID.Clear();
            }
            result = Guid.NewGuid().ToString();
            PlayerNames.Add(playerName);
            Default.GUID.Add(result);
            Default.Save();
            return(result);
            //Console.WriteLine(result);
        }
        /// <summary>
        /// All Rock
        /// </summary>
        public static RPS RockStar(List<Round> roundHistory, PlayerNames player)
        {
            RPS result = RPS.Rock;

            return result;
        }
示例#29
0
 private void StartGame_Click(object sender, RoutedEventArgs e)
 {
     var players = new PlayerNames();
       foreach (var player in playersListBox.SelectedItems)
     players.Add(player as string);
       _options.Save();
       Frame.Navigate(typeof(GamePage), players.ToString());
 }
 public RPS ThrowRPS(List<Round> history, PlayerNames player)
 {
     return playerStrategy(history, player);
 }
示例#31
0
 private void LoadSettings()
 {
     if (Windows.Storage.ApplicationData.Current.LocalSettings.Values.ContainsKey("PlayAgainstComputer"))
       {
     _playAgainstComputer = (bool)ApplicationData.Current.LocalSettings.Values["PlayAgainstComputer"];
     _computerSkill = (ComputerSkillLevel)ApplicationData.Current.LocalSettings.Values["ComputerSkillLevel"];
     _numberOfPlayers = (int)ApplicationData.Current.LocalSettings.Values["NumberOfPlayers"];
     _computerPlaysWithOpenHand = (bool)ApplicationData.Current.LocalSettings.Values["ComputerPlaysWithOpenHand"];
     _playerNames = CardLib.PlayerNames.FromString(ApplicationData.Current.LocalSettings.Values["PlayerNames"] as string);
       }
 }
        /// <summary>
        /// All Scissors
        /// </summary>
        public static RPS EdwardScissorHands(List<Round> roundHistory, PlayerNames player)
        {
            RPS result = RPS.Scissors;

            return result;
        }
示例#33
0
        public void StartNewGame(PlayerNames playernNames)
        {
            if (playernNames == null || playernNames.Count == 0)
            return;

              _gameOptions = new GameOptions();
              NumberOfPlayers = _gameOptions.NumberOfPlayers;
              ComputerPlaysWithOpenHand = _gameOptions.ComputerPlaysWithOpenHand;
              ComputerSkill = _gameOptions.ComputerSkill;

              CreateGameDeck();
              CreatePlayers(playernNames);
              InitializeGame();
              GameStarted = true;
        }
示例#34
0
 private void CreatePlayers(PlayerNames players)
 {
     Players = new List<Player>();
       for (var i = 0; i < _gameOptions.NumberOfPlayers; i++)
       {
     if (i < players.Count)
       InitializePlayer(new Player { Index = i, PlayerName = players[i] });
     else
       InitializePlayer(new ComputerPlayer { Index = i, Skill = _gameOptions.ComputerSkill });
       }
 }
示例#35
0
 public void Configure(EntityTypeBuilder <Opponent> builder)
 {
     builder.ToTable("opponents");
     builder.HasOne(p => p.Game)
     .WithMany(b => b.Opponents)
     .HasForeignKey(o => o.GameId)
     .HasPrincipalKey(o => o.Id);
     builder.Property(o => o.Id).HasSnakeCaseColumnName();
     builder.Property(o => o.GameId).HasSnakeCaseColumnName();
     builder.Property(o => o.BlockNumber)
     .HasConversion(o => o.Value, o => new BlockNumber(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.GameNumber)
     .HasConversion(o => o.Value, o => new GameNumber(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.DrawNumber)
     .HasConversion(o => o.Value, o => new DrawNumber(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.PlayerClassification)
     .HasSnakeCaseColumnName()
     .HasEnumerationConversion();
     builder.Property(o => o.SeedLevel)
     .HasConversion(o => o.Value, o => new SeedLevel(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.AssignOrder)
     .HasConversion(o => o.Value, o => new AssignOrder(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.FramePlayerClassification)
     .HasEnumerationConversion()
     .HasSnakeCaseColumnName();
     builder.Property(o => o.IsManuallySettingFrame).HasSnakeCaseColumnName();
     builder.Property(o => o.IsManuallyAssigned).HasSnakeCaseColumnName();
     builder.Property(o => o.EntryNumber)
     .HasConversion(o => o.Value, o => new EntryNumber(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.SeedNumber)
     .HasConversion(o => o.Value, o => new SeedNumber(o))
     .HasSnakeCaseColumnName();
     builder.Property(o => o.TeamCodes)
     .HasConversion(o => o.ToJson(), o => TeamCodes.FromJson(o))
     .HasSnakeCaseColumnName()
     .Metadata
     .SetValueComparer(ValueComparerFactory.CreateListComparer <TeamCodes, TeamCode>());
     builder.Property(o => o.TeamAbbreviatedNames)
     .HasConversion(o => o.ToJson(), o => TeamAbbreviatedNames.FromJson(o))
     .HasSnakeCaseColumnName()
     .Metadata
     .SetValueComparer(ValueComparerFactory.CreateListComparer <TeamAbbreviatedNames, TeamAbbreviatedName>());
     builder.Property(o => o.PlayerCodes)
     .HasConversion(o => o.ToJson(), o => PlayerCodes.FromJson(o))
     .HasSnakeCaseColumnName()
     .Metadata
     .SetValueComparer(ValueComparerFactory.CreateListComparer <PlayerCodes, PlayerCode>());
     builder.Property(o => o.PlayerNames)
     .HasConversion(o => o.ToJson(), o => PlayerNames.FromJson(o))
     .HasSnakeCaseColumnName()
     .Metadata
     .SetValueComparer(ValueComparerFactory.CreateListComparer <PlayerNames, PlayerName>());
     builder.Property(o => o.FromGameNumber)
     .HasConversion(o => o.Value, o => new GameNumber(o))
     .HasSnakeCaseColumnName();
 }
示例#36
0
 public abstract void Execute(Vector3 selectedPosition, Command command, int angle = 0, PlayerNames playerNames = PlayerNames.NONE);
示例#37
0
 public virtual void UpdateScores(PlayerNames playerNames)
 {
 }
示例#38
0
        private void ListeningClient()
        {
            Command cmd;
            cmd.command = Commands.connect;
            cmd.extraDataLength = (ushort)System.Text.Encoding.Default.GetByteCount(playerName);

            byte[] buffer = Network.SerializeStruct<Command>(cmd);
            byte[] extra;

            clientStream = client.GetStream();
            clientStream.Write(buffer, 0, buffer.Length);
            extra = System.Text.Encoding.Default.GetBytes(playerName);
            clientStream.Write(extra, 0, extra.Length);
            buffer = new byte[Network.CommandSize];
            MineInfo tMineInfo;
            while (true) {
                clientStream.Read(buffer, 0, Network.CommandSize);
                cmd = Network.DeSerializeStruct<Command>(buffer);

                 Console.WriteLine("Command received : {0}", cmd.command.ToString());
                 switch (cmd.command) {
                     case Commands.sendPlayer:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         player = General.ParseEnumValue<Players>((ushort)(((int)extra[0]) + 1));
                         extra = null;
                         break;
                     case Commands.sendSettings:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         settings = Network.DeSerializeStruct<Settings>(extra);
                         extra = null;
                         this.Invoke(new networkCommands(this.SetupSettingsDisplay));
                         this.Invoke(new networkCommands(this.DrawMinefield));
                         break;
                     case Commands.sendInfo:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         informations = Network.DeSerializeStruct<Informations>(extra);
                         extra = null;
                         this.Invoke(new networkCommands(this.SetupSettingsDisplay));
                         break;
                     case Commands.sendName:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         playerNames = Network.DeSerializeStruct<PlayerNames>(extra);
                         extra = null;
                         this.Invoke(new networkCommands(this.SetupSettingsDisplay));
                         break;
                     case Commands.play:
                         this.Invoke(new networkCommands(this.Play));
                         break;
                     case Commands.played:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         tMineInfo = Network.DeSerializeStruct<MineInfo>(extra);
                         extra = null;
                         this.Invoke(new networkMineCommands(this.ReceivePlayed),new Object[] {tMineInfo});
                         break;
                     case Commands.sendText:
                         extra = new byte[cmd.extraDataLength];
                         clientStream.Read(extra, 0, cmd.extraDataLength);
                         this.Invoke(new networkTextCommands(this.writeToChat),new object[] { System.Text.Encoding.Default.GetString(extra)});
                         extra = null;
                         break;
                 }
            }
        }
        /// <summary>
        /// Just throw a random result
        /// </summary>
        public static RPS RandomResult(List<Round> roundHistory, PlayerNames player)
        {
            RPS result = GetRandomResult();

            return result;
        }
示例#40
0
    private void ParsingCommand(string cmd)
    {
        this.AddLogString(cmd);
        this.inputstore = cmd;
        string[] array = cmd.Split(new char[]
        {
            ' '
        });
        if (array[0] == "map")
        {
            if (array.Length != 2)
            {
                return;
            }
            MapLoader mapLoader = (MapLoader)UnityEngine.Object.FindObjectOfType(typeof(MapLoader));
            PlayerPrefs.SetInt("localplay", 1);
            mapLoader.Load(array[1]);
        }
        else if (array[0] == "devmap")
        {
            if (array.Length != 2)
            {
                return;
            }
            MapLoader mapLoader2 = (MapLoader)UnityEngine.Object.FindObjectOfType(typeof(MapLoader));
            PlayerPrefs.SetInt("localplay", 2);
            mapLoader2.DevLoad(array[1]);
        }
        else if (array[0] == "team")
        {
            if (array.Length != 3)
            {
                return;
            }
            int num  = 0;
            int num2 = 0;
            if (!int.TryParse(array[1], out num))
            {
                return;
            }
            if (!int.TryParse(array[2], out num2))
            {
                return;
            }
            if (num < 0 || num >= 2)
            {
                return;
            }
            if (num2 < 0 || num2 >= 8)
            {
                return;
            }
            UnityEngine.Object[] array2 = UnityEngine.Object.FindObjectsOfType(typeof(Spawn));
            List <Spawn>         list   = new List <Spawn>();
            List <Spawn>         list2  = new List <Spawn>();
            UnityEngine.Object[] array3 = array2;
            for (int i = 0; i < array3.Length; i++)
            {
                Spawn spawn = (Spawn)array3[i];
                if (spawn.Team == 0)
                {
                    list.Add(spawn);
                }
                else if (spawn.Team == 1)
                {
                    list2.Add(spawn);
                }
            }
            GameObject gameObject = null;
            if (num == 0)
            {
                if (num2 >= list.Count)
                {
                    return;
                }
                gameObject = list[num2].gameObject;
            }
            else if (num == 1)
            {
                if (num2 >= list2.Count)
                {
                    return;
                }
                gameObject = list2[num2].gameObject;
            }
            MonoBehaviour.print("spawn");
            GameObject  gameObject2 = GameObject.Find("LocalPlayer");
            vp_FPCamera vp_FPCamera = (vp_FPCamera)UnityEngine.Object.FindObjectOfType(typeof(vp_FPCamera));
            gameObject2.transform.position = gameObject.transform.position;
            vp_FPCamera.SetRotation(new Vector2(0f, gameObject.transform.eulerAngles.y), true, true);
        }
        else if (array[0] == "sky")
        {
            if (array.Length != 2)
            {
                return;
            }
        }
        else if (array[0] == "sun_shadowbias" || array[0] == "sun_shadows")
        {
            if (array.Length != 2)
            {
                return;
            }
            UnityEngine.Object[] array4 = UnityEngine.Object.FindObjectsOfType(typeof(Light));
            Light light = null;
            UnityEngine.Object[] array5 = array4;
            for (int j = 0; j < array5.Length; j++)
            {
                Light light2 = (Light)array5[j];
                if (light2.type == LightType.Directional)
                {
                    light = light2;
                    break;
                }
            }
            if (light == null)
            {
                return;
            }
            if (array[0] == "sun_shadowbias")
            {
                float shadowBias = 0f;
                if (!float.TryParse(array[1], out shadowBias))
                {
                    return;
                }
                light.shadowBias = shadowBias;
            }
            if (array[0] == "sun_shadows")
            {
                int num3 = 0;
                if (!int.TryParse(array[1], out num3))
                {
                    return;
                }
                switch (num3)
                {
                case 0:
                    light.shadows = LightShadows.None;
                    break;

                case 1:
                    light.shadows = LightShadows.Hard;
                    break;

                case 2:
                    light.shadows = LightShadows.Soft;
                    break;
                }
            }
        }
        if (array[0] == "shadow_cascades")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num4 = 0;
            if (!int.TryParse(array[1], out num4))
            {
                return;
            }
            switch (num4)
            {
            case 0:
                QualitySettings.shadowCascades = 0;
                break;

            case 1:
                QualitySettings.shadowCascades = 2;
                break;

            case 2:
                QualitySettings.shadowCascades = 4;
                break;
            }
        }
        if (array[0] == "shadow_distance")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num5 = 0;
            if (!int.TryParse(array[1], out num5))
            {
                return;
            }
            QualitySettings.shadowDistance = (float)num5;
        }
        if (array[0] == "shadow_projection")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num6 = 0;
            if (!int.TryParse(array[1], out num6))
            {
                return;
            }
            int num7 = num6;
            if (num7 != 0)
            {
                if (num7 == 1)
                {
                    QualitySettings.shadowProjection = ShadowProjection.StableFit;
                }
            }
            else
            {
                QualitySettings.shadowProjection = ShadowProjection.CloseFit;
            }
        }
        if (array[0] == "fx_ssao")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.ssao == null)
            {
                global::Console.ssao = (ScreenSpaceAmbientOcclusion)UnityEngine.Object.FindObjectOfType(typeof(ScreenSpaceAmbientOcclusion));
            }
            if (global::Console.ssao == null)
            {
                return;
            }
            int num8 = 0;
            if (!int.TryParse(array[1], out num8))
            {
                return;
            }
            if (num8 > 0)
            {
                global::Console.ssao.enabled = true;
            }
            else
            {
                global::Console.ssao.enabled = false;
            }
        }
        if (array[0] == "fx_sharpness")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.sharpness == null)
            {
                global::Console.sharpness = (ContrastEnhance)UnityEngine.Object.FindObjectOfType(typeof(ContrastEnhance));
            }
            if (global::Console.sharpness == null)
            {
                return;
            }
            int num9 = 0;
            if (!int.TryParse(array[1], out num9))
            {
                return;
            }
            if (num9 > 0)
            {
                global::Console.sharpness.enabled = true;
            }
            else
            {
                global::Console.sharpness.enabled = false;
            }
        }
        if (array[0] == "fx_noise")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.noise == null)
            {
                global::Console.noise = (NoiseAndGrain)UnityEngine.Object.FindObjectOfType(typeof(NoiseAndGrain));
            }
            if (global::Console.noise == null)
            {
                return;
            }
            int num10 = 0;
            if (!int.TryParse(array[1], out num10))
            {
                return;
            }
            if (num10 > 0)
            {
                global::Console.noise.enabled = true;
            }
            else
            {
                global::Console.noise.enabled = false;
            }
        }
        if (array[0] == "fx_tone")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.tone == null)
            {
                global::Console.tone = (Tonemapping)UnityEngine.Object.FindObjectOfType(typeof(Tonemapping));
            }
            if (global::Console.tone == null)
            {
                return;
            }
            int num11 = 0;
            if (!int.TryParse(array[1], out num11))
            {
                return;
            }
            if (num11 > 0)
            {
                global::Console.tone.enabled = true;
            }
            else
            {
                global::Console.tone.enabled = false;
            }
        }
        if (array[0] == "fx_vig")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.vig == null)
            {
                global::Console.vig = (VignetteAndChromaticAberration)UnityEngine.Object.FindObjectOfType(typeof(VignetteAndChromaticAberration));
            }
            if (global::Console.vig == null)
            {
                return;
            }
            int num12 = 0;
            if (!int.TryParse(array[1], out num12))
            {
                return;
            }
            if (num12 > 0)
            {
                global::Console.vig.enabled = true;
            }
            else
            {
                global::Console.vig.enabled = false;
            }
        }
        if (array[0] == "fx_dl")
        {
            if (array.Length != 2)
            {
                return;
            }
            if (global::Console.dl == null)
            {
                global::Console.dl = GameObject.Find("Directional light");
            }
            if (global::Console.dl == null)
            {
                return;
            }
            int num13 = 0;
            if (!int.TryParse(array[1], out num13))
            {
                return;
            }
            if (num13 > 0)
            {
                global::Console.dl.SetActive(true);
            }
            else
            {
                global::Console.dl.SetActive(false);
            }
        }
        if (array[0] == "fx_shadowweapon")
        {
            if (array.Length != 2)
            {
                return;
            }
            GameObject gameObject3 = GameObject.Find("maplight");
            if (gameObject3)
            {
                gameObject3.SetActive(false);
            }
        }
        if (array[0] == "fx_lightweapon")
        {
            if (array.Length != 2)
            {
                return;
            }
            GameObject gameObject4 = GameObject.Find("lights");
            if (gameObject4)
            {
                gameObject4.SetActive(false);
            }
        }
        if (array[0] == "devconnect")
        {
            PlayerPrefs.SetInt("localplay", 0);
            array[0] = "connect";
        }
        if (array[0] == "connect")
        {
            if (array.Length < 3)
            {
                Client.cs.Connect();
                return;
            }
            Client.IP = array[1];
            int.TryParse(array[2], out Client.PORT);
            if (array.Length == 4)
            {
                Client.PASSWORD = array[3];
            }
            else
            {
                Client.PASSWORD = string.Empty;
            }
            Client.cs.Connect();
        }
        if (array[0] == "deadcam")
        {
            DeadCam.SetActive(true);
        }
        if (array[0] == "test")
        {
            Award.SetPoints(100);
            Award.SetCustomPoints(23, 0);
        }
        if (array[0] == "sens")
        {
            if (array.Length != 2)
            {
                return;
            }
            float num14;
            if (!float.TryParse(array[1], out num14))
            {
                return;
            }
            vp_FPCamera.SetMouseSensitivity(num14);
            Options.sens = num14;
            PlayerPrefs.SetFloat("sens", num14);
        }
        if (array[0] == "zoomsens")
        {
            if (array.Length != 2)
            {
                return;
            }
            float num15;
            if (!float.TryParse(array[1], out num15))
            {
                return;
            }
            vp_FPCamera.SetZoomSensitivity(num15);
            Options.zoomsens = num15;
            PlayerPrefs.SetFloat("zoomsens", num15);
        }
        if (array[0] == "disconnect")
        {
            GameObject gameObject5 = GameObject.Find("LocalPlayer");
            GameObject gameObject6 = GameObject.Find("Sky");
            GameObject gameObject7 = GameObject.Find("Sky Manager");
            GameObject gameObject8 = GameObject.Find("GUI");
            GameObject gameObject9 = GameObject.Find("Core");
            if (gameObject5)
            {
                UnityEngine.Object.Destroy(gameObject5);
            }
            if (gameObject6)
            {
                UnityEngine.Object.Destroy(gameObject6);
            }
            if (gameObject7)
            {
                UnityEngine.Object.Destroy(gameObject7);
            }
            if (gameObject8)
            {
                UnityEngine.Object.Destroy(gameObject8);
            }
            if (gameObject9)
            {
                UnityEngine.Object.Destroy(gameObject9);
            }
            Client.cs.CloseClient();
            Application.LoadLevel("main");
            Screen.lockCursor = false;
            Cursor.visible    = true;
        }
        if (array[0] == "crosshair_size")
        {
            if (array.Length != 2)
            {
                return;
            }
            int crosshairSize;
            if (!int.TryParse(array[1], out crosshairSize))
            {
                return;
            }
            Crosshair.SetCrosshairSize(crosshairSize);
        }
        if (array[0] == "crosshair_color")
        {
            if (array.Length != 4)
            {
                return;
            }
            int r;
            if (!int.TryParse(array[1], out r))
            {
                return;
            }
            int g;
            if (!int.TryParse(array[2], out g))
            {
                return;
            }
            int b;
            if (!int.TryParse(array[3], out b))
            {
                return;
            }
            Crosshair.SetCrosshairColor(r, g, b);
        }
        if (array[0] == "disableskymanager")
        {
        }
        if (array[0] == "atest")
        {
            Award.SetDeath(26, 0);
        }
        if (array[0] == "chat")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num16;
            if (!int.TryParse(array[1], out num16))
            {
                return;
            }
            if (num16 == 0)
            {
                Message.blockchat = true;
            }
            else
            {
                Message.blockchat = false;
            }
        }
        if (array[0] == "hud")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num17 = 0;
            if (!int.TryParse(array[1], out num17))
            {
                return;
            }
            if (num17 == 0 || num17 == 2)
            {
                HUD.ForceHide(true);
                Crosshair.ForceHide(true);
                Message.ForceHide(true);
                ScoreTop.SetActive(false);
                PlayerNames.SetActive(false);
                GameObject gameObject10 = GameObject.Find("WeaponCamera");
                if (num17 == 2)
                {
                    gameObject10.GetComponent <Camera>().cullingMask = -2147483648;
                    Crosshair.ForceHide(false);
                }
                else
                {
                    gameObject10.GetComponent <Camera>().cullingMask = 0;
                }
            }
            else if (num17 == 3)
            {
                HUD.ForceHide(true);
                Crosshair.ForceHide(true);
                Message.ForceHide(false);
                ScoreTop.SetActive(true);
                PlayerNames.SetActive(true);
                GameObject gameObject11 = GameObject.Find("WeaponCamera");
                gameObject11.GetComponent <Camera>().cullingMask = 0;
            }
            else
            {
                HUD.ForceHide(false);
                Crosshair.ForceHide(false);
                Message.ForceHide(false);
                ScoreTop.SetActive(true);
                PlayerNames.SetActive(true);
                GameObject gameObject12 = GameObject.Find("WeaponCamera");
                gameObject12.GetComponent <Camera>().cullingMask = -2147483648;
            }
        }
        if (array[0] == "spectator")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num18 = 0;
            if (!int.TryParse(array[1], out num18))
            {
                return;
            }
            if (num18 == 1)
            {
                SpecCam.show = true;
                Client.cs.send_chooseteam(255);
                GameObject gameObject13 = GameObject.Find("WeaponCamera");
                gameObject13.GetComponent <Camera>().cullingMask = 0;
            }
            else
            {
                SpecCam.show = false;
                Client.cs.send_chooseteam(3);
                GameObject gameObject14 = GameObject.Find("WeaponCamera");
                gameObject14.GetComponent <Camera>().cullingMask = -2147483648;
            }
        }
        if (array[0] == "m_steps")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num19 = 0;
            if (!int.TryParse(array[1], out num19))
            {
                return;
            }
            if (num19 > 20)
            {
                num19 = 20;
            }
            if (num19 < 1)
            {
                num19 = 1;
            }
            vp_FPCamera.MouseSmoothSteps = num19;
        }
        if (array[0] == "m_weight")
        {
            if (array.Length != 2)
            {
                return;
            }
            float num20 = 0f;
            if (!float.TryParse(array[1], out num20))
            {
                return;
            }
            if (num20 > 1f)
            {
                num20 = 1f;
            }
            if (num20 < 0f)
            {
                num20 = 0f;
            }
            vp_FPCamera.MouseSmoothWeight = num20;
        }
        if (array[0] == "extralod")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num21 = 0;
            if (!int.TryParse(array[1], out num21))
            {
                return;
            }
            if (num21 == 0)
            {
                PlayerControll.extralod = false;
            }
            else
            {
                PlayerControll.extralod = true;
            }
        }
        if (array[0] == "showfps")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num22 = 0;
            if (!int.TryParse(array[1], out num22))
            {
                return;
            }
            if (num22 == 0)
            {
                global::Console.showfps = false;
            }
            else
            {
                global::Console.showfps = true;
            }
        }
        if (array[0] == "ping")
        {
            if (PlayerPrefs.GetString("devpass") != "6f66a0d73e9894e62fe0ee48c209911b")
            {
                return;
            }
            if (array.Length != 2)
            {
                return;
            }
            int num23 = 0;
            if (!int.TryParse(array[1], out num23))
            {
                return;
            }
            PlayerPrefs.SetInt("ShowPing", num23);
            if (num23 == 1)
            {
                global::Ping.cs.ShowPing(true);
            }
            else
            {
                global::Ping.cs.ShowPing(false);
            }
        }
        if (array[0] == "nord")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num24 = 0;
            if (!int.TryParse(array[1], out num24))
            {
                return;
            }
            if (num24 == 0)
            {
                PlayerControll.nord = false;
            }
            else
            {
                PlayerControll.nord = true;
            }
        }
        if (array[0] == "devunlock")
        {
        }
        if (array[0] == "devnext")
        {
        }
        if (array[0] == "forcewin")
        {
            Client.cs.send_consolecmd(array[0], string.Empty);
        }
        if (array[0] == "name")
        {
            if (array.Length != 2)
            {
                return;
            }
            MonoBehaviour.print(array[0] + array[1]);
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "kill")
        {
            Client.cs.send_consolecmd(array[0], string.Empty);
        }
        else if (array[0] == "rcon")
        {
            if (array.Length != 2)
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "kick")
        {
            if (array.Length != 2)
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "banlist")
        {
            Client.cs.send_consolecmd(array[0], string.Empty);
        }
        else if (array[0] == "ban")
        {
            if (array.Length != 2)
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "password")
        {
            if (array.Length != 2)
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "startmoney")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num25;
            if (!int.TryParse(array[1], out num25))
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "fraglimit")
        {
            if (array.Length != 2)
            {
                return;
            }
            int num26;
            if (!int.TryParse(array[1], out num26))
            {
                return;
            }
            Client.cs.send_consolecmd(array[0], array[1]);
        }
        else if (array[0] == "rr" || array[0] == "restart")
        {
            Client.cs.send_consolecmd(array[0], string.Empty);
        }
        else if (array[0] == "live")
        {
            Client.cs.send_consolecmd(array[0], string.Empty);
        }
        else if (array[0] == "skin_test")
        {
            if (array.Length != 2)
            {
                return;
            }
            Texture2D   textureByName = TEX.GetTextureByName(array[1]);
            vp_FPWeapon vp_FPWeapon   = (vp_FPWeapon)UnityEngine.Object.FindObjectOfType(typeof(vp_FPWeapon));
            if (vp_FPWeapon.m_WeaponCoreModel != null && textureByName != null)
            {
                Component[] componentsInChildren = vp_FPWeapon.m_WeaponCoreModel.GetComponentsInChildren(typeof(Renderer));
                for (int k = 0; k < componentsInChildren.Length; k++)
                {
                    Renderer renderer = (Renderer)componentsInChildren[k];
                    if (!(renderer.name == "merc_hands"))
                    {
                        if (!(renderer.name == "warcorp_hands"))
                        {
                            renderer.materials[0].SetTexture(0, textureByName);
                        }
                    }
                }
            }
        }
    }
示例#41
0
        private void OnNeighborAdd(Cube cube1, Cube.Side side1, Cube cube2, Cube.Side side2)
        {
            Log.Debug("Neighbor add: {0}.{1} <-> {2}.{3}", cube1.UniqueId, side1, cube2.UniqueId, side2);

              CubeWrapper wrapper1 = (CubeWrapper)cube1.userData;
              CubeWrapper wrapper2 = (CubeWrapper)cube2.userData;

              if (wrapper1 != null && wrapper2 != null) {
            if ((wrapper1.mType == CubeType.SELECTOR && wrapper2.mType == CubeType.SELECTABLE) || (wrapper2.mType == CubeType.SELECTOR && wrapper1.mType == CubeType.SELECTABLE)) {
              Cube.Side selectorSide;
              Cube.Side selectableSide;
              CubeWrapper selectorWrapper;
              CubeWrapper selectableWrapper;

              if (wrapper1.mType == CubeType.SELECTOR) {
            selectorSide = side1;
            selectableSide = side2;
            selectorWrapper = wrapper1;
            selectableWrapper = wrapper2;
              }

              else {
            selectorSide = side2;
            selectableSide = side1;
            selectorWrapper = wrapper2;
            selectableWrapper = wrapper1;
              }

              if (selectorSide == Cube.Side.BOTTOM) {
            switch (currentPhase) {
                        case (PhaseType.MODESELECT):
                            if (selectableSide == Cube.Side.TOP) {
                                currentMode = GameModes.FREELIB;
                                currentPhase = PhaseType.NAMESELECT;
                                readyToChangeState = true;
                            }
                            else if (selectableSide == Cube.Side.BOTTOM) {
                                currentMode = GameModes.FREETHEME;
                                currentPhase = PhaseType.NAMESELECT;
                                readyToChangeState = true;
                            }

                            break;

                        case (PhaseType.NAMESELECT):

                            currentPlayer = nameSelector(selectableSide, selectableWrapper);
                            currentPhase = PhaseType.THEMESELECT;
                            readyToChangeState = true;
                            break;

                        case (PhaseType.BEATSELECT):

                            string sample = beatSelector(selectableSide, selectableWrapper);
                            sampleMusic = Sounds.CreateSound(sample);

                            if (mMusic.IsPlaying) mMusic.Pause();

                            sampleMusic.Play(1, -1);
                            currentPhase = PhaseType.BEATSELECT2;
                            readyToChangeState = true;
                            break;

                        case (PhaseType.THEMESELECT):

                            currentTheme = themeSelector(selectableSide, selectableWrapper);
                            currentPhase = PhaseType.BEATSELECT;
                            readyToChangeState = true;
                            break;

                        default:
                            break;

            }
             	  }
            }
              }
        }
        /// <summary>
        /// All Paper
        /// </summary>
        public static RPS TheBureaucrat(List<Round> roundHistory, PlayerNames player)
        {
            RPS result = RPS.Paper;

            return result;
        }
示例#43
0
 public IPlayer GetPlayer(PlayerNames name)
 {
     return(!Players.ContainsKey(name) ? null : Players[name]);
 }