Пример #1
0
        protected override void SetPlayerData(Player p, string target, string nick)
        {
            if (Colors.Strip(nick).Length >= 30)
            {
                p.Message("Nick must be under 30 letters."); return;
            }
            Player who = PlayerInfo.FindExact(target);

            if (nick.Length == 0)
            {
                MessageFrom(target, who, "had their custom nick reset");
                nick = target.RemoveLastPlus();
            }
            else
            {
                // TODO: select color from database?
                string color = who != null ? who.color : Group.GroupIn(target).Color;
                MessageFrom(target, who, "had their nick set to " + color + nick);
            }

            if (who != null)
            {
                who.DisplayName = nick;
            }
            if (who != null)
            {
                TabList.Update(who, true);
            }
            PlayerDB.SetNick(target, nick);
        }
Пример #2
0
        private void ListSorter(object sender, RoutedEventArgs e)
        {
            TabList.UnselectAll();
            var text = (sender as Button).Content;

            ResetAllButtonBorders();
            ResetTabInfoFields();
            switch (text)
            {
            case "Bass":
                TabList.ItemsSource    = crudManager.RetrieveBassTabs();
                BassButton.BorderBrush = Brushes.AliceBlue;
                break;

            case "Drums":
                TabList.ItemsSource     = crudManager.RetrieveDrumTabs();
                DrumsButton.BorderBrush = Brushes.AliceBlue;
                break;

            case "Guitar":
                TabList.ItemsSource      = crudManager.RetrieveGuitarTabs();
                GuitarButton.BorderBrush = Brushes.AliceBlue;
                break;

            case "All":
                PopulateListBox();
                ResetButton.BorderBrush = Brushes.AliceBlue;
                break;
            }
        }
Пример #3
0
        internal static void ToggleAfk(Player p, string message, bool isAuto = false)
        {
            if (p.joker)
            {
                message = "";
            }
            p.AutoAfk    = false;
            p.IsAfk      = !p.IsAfk;
            p.afkMessage = p.IsAfk ? message : null;
            TabList.Update(p, true);

            var oldLastAction = p.LastAction;

            p.LastAction = DateTime.UtcNow;

            bool cantSend = p.muted || (Server.chatmod && !p.voice);

            if (p.IsAfk)
            {
                if (cantSend)
                {
                    p.Message("You are now marked as being AFK.");
                }
                else
                {
                    if (message == null || message.Trim() == "")
                    {
                        ShowMessage(p, "-λNICK%S- is AFK");
                    }
                    else
                    {
                        if (isAuto)
                        {
                            ShowMessage(p, "-λNICK%S- is AFK " + message);
                        }
                        else
                        {
                            ShowMessage(p, "-λNICK%S- is AFK: " + message);
                        }
                    }
                    p.CheckForMessageSpam();
                }
                p.AFKCooldown = DateTime.UtcNow.AddSeconds(2);
                OnPlayerActionEvent.Call(p, PlayerAction.AFK, null, cantSend);
            }
            else
            {
                if (cantSend)
                {
                    p.Message("You are no longer marked as being AFK.");
                }
                else
                {
                    TimeSpan idleTime = DateTime.UtcNow - oldLastAction;
                    ShowMessage(p, string.Format("-λNICK%S- is no longer AFK ({0})", idleTime.Shorten()));
                    p.CheckForMessageSpam();
                }
                OnPlayerActionEvent.Call(p, PlayerAction.UnAFK, null, cantSend);
            }
        }
 protected void FillTabList(TabList control)
 {
     control.TabListPages.Clear();
     control.TabListPages.Add(this.CreateDemoTabPage1());
     control.TabListPages.Add(this.CreateDemoTabPage2());
     control.TabListPages.Add(this.CreateDemoTabPage3());
 }
Пример #5
0
        protected void HandlePlayerAction(Player p, PlayerAction action, string message, bool stealth)
        {
            if (!(action == PlayerAction.Referee || action == PlayerAction.UnReferee))
            {
                return;
            }
            if (p.level != Map)
            {
                return;
            }

            if (action == PlayerAction.UnReferee)
            {
                PlayerActions.Respawn(p);
                PlayerJoinedGame(p);
                p.Game.Referee = false;
            }
            else
            {
                PlayerLeftGame(p);
                p.Game.Referee = true;
                Entities.GlobalDespawn(p, false, false);
            }

            Entities.GlobalSpawn(p, false, "");
            TabList.Update(p, true);
        }
Пример #6
0
 void JoinTeam(Player p, CtfTeam team)
 {
     Get(p).HasFlag = false;
     team.Members.Add(p);
     Map.Message(p.ColoredName + " &Sjoined the " + team.ColoredName + " &Steam");
     p.Message("You are now on the " + team.ColoredName + " team!");
     TabList.Update(p, true);
 }
Пример #7
0
        void JoinTeam(Player p, TWTeam team)
        {
            team.Members.Add(p);
            Map.Message(p.ColoredName + " &Sjoined the " + team.ColoredName + " &Steam");

            p.UpdateColor(team.Color);
            p.Message("You are now on the " + team.ColoredName + " team!");
            TabList.Update(p, true);
        }
Пример #8
0
        /**
         * Given an organization id, get its tabs and retrieve the complete data for each of them
         * Fire an event for each one to notify the presenter that they are ready to render
         */
        public async Task LoadTabs(int orgId)
        {
            TabList tabs = await _esdService.GetTabs(orgId);

            foreach (Tab tab in tabs.Tabs)
            {
                if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.EQUIPMENT))
                {
                    _equipmentList = await _esdService.GetOrganizationEquipment(orgId);

                    EquipmentTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.FACILITIES))
                {
                    _facilityList = await _esdService.GetOrganizationFacilities(orgId);

                    FacilityTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.GENERAL))
                {
                    OrganizationGeneralInfo generalInfo = await _esdService.GetOrganizationGeneralInfo(orgId);

                    GeneralTabLoaded?.Invoke(generalInfo);
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.LOCATIONS))
                {
                    _locationList = await _esdService.GetOrganizationLocations(orgId);

                    LocationTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.PEOPLE))
                {
                    _peopleList = await _esdService.GetOrganizationPeople(orgId);

                    PeopleTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.PHYSICIANS))
                {
                    _physicianList = await _esdService.GetOrganizationPhysicians(orgId);

                    PhysiciansTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.TRAINING))
                {
                    _trainingList = await _esdService.GetOrganizationTrainings(orgId);

                    TrainingTabLoaded?.Invoke();
                }
                else if (tab.Name.ToUpper() == Enum.GetName(typeof(TabName), TabName.TREATMENT))
                {
                    _treatmentList = await _esdService.GetOrganizationTreatments(orgId);

                    TreatmentTabLoaded?.Invoke();
                }
            }
        }
Пример #9
0
 static void UpdatePlayerColor(Player p, string color)
 {
     if (p.Game.lastSpawnColor == color)
     {
         return;
     }
     p.Game.lastSpawnColor = color;
     Entities.GlobalRespawn(p, false);
     TabList.Add(p, p, Entities.SelfID);
 }
Пример #10
0
        void JoinTeam(Player p, TWTeam team)
        {
            team.Members.Add(p);
            Map.Message(p.ColoredName + " %Sjoined the " + team.ColoredName + " %Steam");

            p.color = team.Color;
            p.SetPrefix();

            p.Message("You are now on the " + team.ColoredName + " team!");
            TabList.Update(p, true);
        }
Пример #11
0
 void Start()
 {
     tabsn = 0;
     foreach (GameObject tab in TabList.GetTabs())
     {
         GameObject child = Instantiate(tab, new Vector3(transform.position.x, transform.position.y + tabsn * Stage.width), Quaternion.identity) as GameObject;
         child.transform.parent = transform;
         tabsn++;
     }
     tabActual = PlayerPrefs.GetFloat(ppname, 0);
 }
Пример #12
0
        void RestoreColor(Player p)
        {
            TWData data = TryGet(p);

            if (data == null)
            {
                return;
            }

            p.color = data.OrigCol;
            p.SetPrefix();
            TabList.Update(p, true);
        }
Пример #13
0
        void RestoreColor(Player p)
        {
            TWData data = TryGet(p);

            // TODO: p.Socket.Disconnected check should be elsewhere
            if (data == null || p.Socket.Disconnected)
            {
                return;
            }

            p.UpdateColor(PlayerInfo.DefaultColor(p));
            TabList.Update(p, true);
        }
Пример #14
0
        internal static void ToggleAfk(Player p, string message)
        {
            if (p.joker)
            {
                message = "";
            }
            p.AutoAfk    = false;
            p.IsAfk      = !p.IsAfk;
            p.afkMessage = p.IsAfk ? message : null;
            TabList.Update(p, true);
            p.LastAction = DateTime.UtcNow;

            bool cantSend = p.muted || (Server.chatmod && !p.voice);

            if (p.IsAfk)
            {
                if (cantSend)
                {
                    Player.Message(p, "You are now marked as being AFK.");
                }
                else
                {
                    Chat.MessageWhere("-{0}%S- is AFK {1}",
                                      pl => Entities.CanSee(pl, p) && !pl.listignored.Contains(p.name) && !pl.ignoreAll,
                                      p.ColoredName, message);
                    Player.RaisePlayerAction(p, PlayerAction.AFK, message);
                    p.CheckForMessageSpam();
                }

                p.AFKCooldown = DateTime.UtcNow.AddSeconds(2);
                p.RaiseONAFK();
                Player.RaiseAFK(p);
                OnPlayerAFKEvent.Call(p);
            }
            else
            {
                if (cantSend)
                {
                    Player.Message(p, "You are no longer marked as being AFK.");
                }
                else
                {
                    Chat.MessageWhere("-{0}%S- is no longer AFK",
                                      pl => Entities.CanSee(pl, p) && !pl.listignored.Contains(p.name) && !pl.ignoreAll,
                                      p.ColoredName);
                    Player.RaisePlayerAction(p, PlayerAction.UnAFK, message);
                    p.CheckForMessageSpam();
                }
            }
        }
Пример #15
0
        void RestoreColor(Player p)
        {
            TWData data = TryGet(p);

            // TODO: p.Socket.Disconnected check should be elsewhere
            if (data == null || p.Socket.Disconnected)
            {
                return;
            }

            p.color = data.OrigCol;
            p.SetPrefix();
            TabList.Update(p, true);
        }
Пример #16
0
        private void TabList_DoubleClick(object sender, EventArgs e)
        {
            if (TabList.SelectedItem == null)
            {
                return;
            }

            if (TabList.IndexFromPoint(TabList.PointToClient(MousePosition)) == ListBox.NoMatches)
            {
                return;
            }

            DialogResult = DialogResult.OK;
            Close();
        }
        public ConfigurationTool(SessionManager sessionManager, KinectProcessor kinectProcessor)
        {
            InitializeComponent();

            _sessionManager = sessionManager;

            _coordinateMapper = kinectProcessor.CoordinateMapper;
            kinectProcessor.Reader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived;
            _localSessions = new List<TabData>();
            _tabList = new TabList();

            // Start timer for flag updating thread
            _timer = new Timer(TimerTick, null, 0, 100);
            _thread = new Thread(updateFlags);
        }
Пример #18
0
        public override void Use(Player p, string message)
        {
            p.Game.Aka = !p.Game.Aka;
            Player[] players = PlayerInfo.Online.Items;
            Player.Message(p, "AKA mode is now: " + (p.Game.Aka ? "&aOn" : "&cOff"));

            foreach (Player pl in players)
            {
                if (pl.level != p.level || p == pl || !Entities.CanSeeEntity(p, pl))
                {
                    continue;
                }
                p.DespawnEntity(pl.id);
                p.SpawnEntity(pl, pl.id, pl.pos[0], pl.pos[1], pl.pos[2], pl.rot[0], pl.rot[1], "");
            }
            TabList.Add(p, p, Entities.SelfID);
        }
Пример #19
0
        protected void RefreshTabList()
        {
            string oldSelection = (TabList.SelectedItem as string) ?? "Scripts";

            TabList.BeginUpdate();
            TabList.Items.Clear();
            TabList.Items.Add("Scripts");
            TabList.Items.AddRange((
                                       from k in _Panels.Keys
                                       where k != "Scripts" orderby k select k
                                       ).ToArray());
            try {
                TabList.SelectedItem = oldSelection;
            } catch {
            }
            TabList.EndUpdate();
        }
Пример #20
0
        public override void Use(Player p, string message)
        {
            p.Game.Aka = !p.Game.Aka;
            Player[] players = PlayerInfo.Online.Items;
            Player.Message(p, "AKA mode is now: " + (p.Game.Aka ? "&aOn" : "&cOff"));

            foreach (Player other in players)
            {
                if (other.level != p.level || p == other || !p.CanSeeEntity(other))
                {
                    continue;
                }

                Entities.Despawn(p, other);
                Entities.Spawn(p, other);
            }
            TabList.Add(p, p, Entities.SelfID);
        }
Пример #21
0
        internal static void ToggleAfk(Player p, string message)
        {
            if (p.joker)
            {
                message = "";
            }
            p.AutoAfk    = false;
            p.IsAfk      = !p.IsAfk;
            p.afkMessage = p.IsAfk ? message : null;
            TabList.Update(p, true);
            p.LastAction = DateTime.UtcNow;

            bool cantSend = p.muted || (Server.chatmod && !p.voice);

            if (p.IsAfk)
            {
                if (cantSend)
                {
                    Player.Message(p, "You are now marked as being AFK.");
                }
                else
                {
                    ShowMessage(p, "-" + p.ColoredName + "%S- is AFK " + message);
                    p.CheckForMessageSpam();
                }
                p.AFKCooldown = DateTime.UtcNow.AddSeconds(2);
                OnPlayerActionEvent.Call(p, PlayerAction.AFK, message);
            }
            else
            {
                if (cantSend)
                {
                    Player.Message(p, "You are no longer marked as being AFK.");
                }
                else
                {
                    ShowMessage(p, "-" + p.ColoredName + "%S- is no longer AFK");
                    p.CheckForMessageSpam();
                }
                OnPlayerActionEvent.Call(p, PlayerAction.UnAFK, message);
            }
        }
Пример #22
0
        protected override void SetPlayerData(Player p, string target, string nick)
        {
            if (Colors.Strip(nick).Length >= 30)
            {
                p.Message("Nick must be under 30 letters."); return;
            }
            Player who; string editee; bool globalMessage;

            GetPlayerDataMessageInfo(p, target, out who, out editee, out globalMessage);

            string message;

            if (nick.Length == 0)
            {
                message = p.ColoredName + " &Sremoved " + editee + " nick";
                nick    = target.RemoveLastPlus();
            }
            else
            {
                // TODO: select color from database?
                string color = who != null ? who.color : Group.GroupIn(target).Color;
                message = p.ColoredName + " &Schanged " + editee + " nick to " + color + nick;
            }
            if (globalMessage)
            {
                Chat.MessageAll(message);
            }
            else
            {
                Chat.MessageFrom(p, message);
            }

            if (who != null)
            {
                who.DisplayName = nick;
            }
            if (who != null)
            {
                TabList.Update(who, true);
            }
            PlayerDB.SetNick(target, nick);
        }
Пример #23
0
        internal static void ToggleAfk(Player p, string message)
        {
            if (p.joker)
            {
                message = "";
            }
            p.AutoAfk    = false;
            p.IsAfk      = !p.IsAfk;
            p.afkMessage = p.IsAfk ? message : null;
            TabList.Update(p, true);
            p.LastAction = DateTime.UtcNow;

            bool cantSend = !p.CanSpeak();

            if (p.IsAfk)
            {
                if (cantSend)
                {
                    p.Message("You are now marked as being AFK.");
                }
                else
                {
                    ShowMessage(p, "-λNICK%S- is AFK " + message);
                    p.CheckForMessageSpam();
                }
                p.AFKCooldown = DateTime.UtcNow.AddSeconds(2);
                OnPlayerActionEvent.Call(p, PlayerAction.AFK, null, cantSend);
            }
            else
            {
                if (cantSend)
                {
                    p.Message("You are no longer marked as being AFK.");
                }
                else
                {
                    ShowMessage(p, "-λNICK%S- is no longer AFK");
                    p.CheckForMessageSpam();
                }
                OnPlayerActionEvent.Call(p, PlayerAction.UnAFK, null, cantSend);
            }
        }
Пример #24
0
        public override void Use(Player p, string message, CommandData data)
        {
            ZSData data_ = ZSGame.Get(p);

            data_.AkaMode = !data_.AkaMode;
            Player[] players = PlayerInfo.Online.Items;
            p.Message("AKA mode is now: " + (data_.AkaMode ? "&aOn" : "&cOff"));

            foreach (Player other in players)
            {
                if (other.level != p.level || p == other || !p.CanSeeEntity(other))
                {
                    continue;
                }

                Entities.Despawn(p, other);
                Entities.Spawn(p, other);
            }
            TabList.Add(p, p, Entities.SelfID);
        }
Пример #25
0
        protected override void SetOnlineData(Player p, Player who, string nick)
        {
            if (nick.Length == 0)
            {
                Chat.MessageFrom(who, "λNICK %Shad their custom nick reset");
                who.DisplayName = who.truename;
            }
            else
            {
                if (Colors.Strip(nick).Length >= 30)
                {
                    p.Message("Nick must be under 30 letters."); return;
                }

                Chat.MessageFrom(who, "λNICK %Shad their nick set to " + who.color + nick);
                who.DisplayName = nick;
            }

            PlayerDB.Save(who);
            TabList.Update(who, true);
        }
Пример #26
0
        public override void Use(Player p, string message)
        {
            if (Player.IsSuper(p))
            {
                MessageInGameOnly(p); return;
            }

            if (p.Game.Referee)
            {
                Player.SendChatFrom(p, p.ColoredName + " %Sis no longer a referee", false);
                p.Game.Referee = !p.Game.Referee;
                if (p.level == Server.zombie.CurLevel)
                {
                    Server.zombie.PlayerJoinedLevel(p, Server.zombie.CurLevel, Server.zombie.CurLevel);
                }

                if (p.HasCpeExt(CpeExt.HackControl))
                {
                    p.Send(Hacks.MakeHackControl(p));
                }
                Command.all.Find("spawn").Use(p, "");
            }
            else
            {
                Player.SendChatFrom(p, p.ColoredName + " %Sis now a referee", false);
                Server.zombie.PlayerLeftServer(p);
                Entities.GlobalDespawn(p, false, true);
                p.Game.Referee = !p.Game.Referee;

                if (p.HasCpeExt(CpeExt.HackControl))
                {
                    p.Send(Packet.HackControl(true, true, true, true, true, -1));
                }
            }

            Entities.GlobalSpawn(p, false, "");
            TabList.Add(p, p, Entities.SelfID);
            p.SetPrefix();
        }
Пример #27
0
        void HandlePlayerAction(Player p, PlayerAction action, string message, bool stealth)
        {
            if (!(action == PlayerAction.Referee || action == PlayerAction.UnReferee))
            {
                return;
            }
            if (p.level != Game.Map)
            {
                return;
            }

            if (action == PlayerAction.UnReferee)
            {
                Game.PlayerJoinedLevel(p, Game.Map, Game.Map);
                Command.all.FindByName("Spawn").Use(p, "");
                p.Game.Referee = false;

                if (p.Supports(CpeExt.HackControl))
                {
                    p.Send(Hacks.MakeHackControl(p, p.level.GetMotd(p)));
                }
            }
            else
            {
                HandlePlayerDisconnect(p, null);
                p.Game.Referee = true;
                Entities.GlobalDespawn(p, false, false);

                if (p.Supports(CpeExt.HackControl))
                {
                    p.Send(Packet.HackControl(true, true, true, true, true, -1));
                }
            }

            Entities.GlobalSpawn(p, false, "");
            TabList.Update(p, true);
            p.SetPrefix();
        }
Пример #28
0
        static void GiveMoney(ZombieGame game, Player[] alive)
        {
            Player[] online = PlayerInfo.Online.Items;
            Random   rand   = new Random();

            foreach (Player pl in online)
            {
                if (!pl.level.name.CaselessEq(game.CurLevelName))
                {
                    continue;
                }
                pl.Game.ResetInvisibility();
                int reward = GetMoneyReward(pl, alive, rand);

                if (reward == -1)
                {
                    pl.SendMessage("You may not hide inside a block! No " + Server.moneys + " for you."); reward = 0;
                }
                else if (reward > 0)
                {
                    pl.SendMessage(Colors.gold + "You gained " + reward + " " + Server.moneys);
                }

                pl.SetMoney(pl.money + reward);
                pl.Game.ResetZombieState();
                if (pl.Game.Referee)
                {
                    pl.SendMessage("You gained one " + Server.moneys + " because you're a ref. Would you like a medal as well?");
                    pl.SetMoney(pl.money + 1);
                }

                Entities.GlobalDespawn(pl, false);
                Entities.GlobalSpawn(pl, false);
                TabList.Add(pl, pl, Entities.SelfID);
                HUD.UpdateTertiary(pl);
            }
        }
Пример #29
0
    public void AddTab(string _title, QuestDetailModel.TabType _type)
    {
        int _index = TabList.Count;

        var model = new QuestDetailTabModel((uint)_index);

        model.OnShowedNext += () =>
        {
            if (_index + 1 >= m_tabs.Count)
            {
                return;
            }

            m_tabs[_index + 1].Appear();
        };

        QuestDetailTabContext newTab = new QuestDetailTabContext(model);

        newTab.TitleOn       = string.Format(GameTextUtil.GetText("stmina_bahutext"), _title);
        newTab.TitleOff      = _title;
        newTab.m_Type        = _type;
        newTab.m_Index       = _index;
        newTab.DidSelectTab += OnSelectTab;
        if (_index == tabIndex)
        {
            newTab.IsSelected = true;
        }
        else
        {
            newTab.IsSelected = false;
        }
        TabList.Add(newTab);
        tabMax = TabList.Count;

        m_tabs.Add(model);
    }
Пример #30
0
        public override void Use(Player p, string message, CommandData data)
        {
            if (message.Length > 0 && p.possess.Length > 0)
            {
                p.Message("Stop your current possession first."); return;
            }
            bool silent = false;

            if (message.CaselessEq("silent"))
            {
                if (!CheckExtraPerm(p, data, 1))
                {
                    return;
                }
                silent = true;
            }

            Command adminchat = Command.Find("AdminChat");
            Command opchat    = Command.Find("OpChat");

            Entities.GlobalDespawn(p, false);

            p.hidden = !p.hidden;
            if (p.hidden)
            {
                p.hideRank = data.Rank;
                AnnounceOps(p, "To Ops -λNICK%S- is now &finvisible");

                if (!silent)
                {
                    string leaveM = "&c- λFULL %S" + PlayerDB.GetLogoutMessage(p);
                    Chat.MessageFrom(p, leaveM, null, true);
                }

                if (!p.opchat)
                {
                    opchat.Use(p, "", data);
                }
                Server.hidden.AddUnique(p.name);
            }
            else
            {
                AnnounceOps(p, "To Ops -λNICK%S- is now &fvisible");
                p.hideRank = LevelPermission.Banned;

                if (!silent)
                {
                    string joinM = "&a+ λFULL %S" + PlayerDB.GetLoginMessage(p);
                    Chat.MessageFrom(p, joinM, null, true);
                }

                if (p.opchat)
                {
                    opchat.Use(p, "", data);
                }
                if (p.adminchat)
                {
                    adminchat.Use(p, "", data);
                }
                Server.hidden.Remove(p.name);
            }

            Entities.GlobalSpawn(p, false);
            TabList.Add(p, p, Entities.SelfID);
            Server.hidden.Save(false);
        }
Пример #31
0
 internal static void RespawnPlayer(Player p)
 {
     Entities.GlobalRespawn(p, false);
     TabList.Add(p, p, Entities.SelfID);
 }
Пример #32
0
 public ServiceStatus(string password)
 {
     Users = new UserList ();
     Tabs = new TabList ();
     Password = password;
 }