Beispiel #1
0
 private void OnLogin(PlayerPostLoginEventArgs args)
 {
     lock (players)
     {
         players[args.Player.Index].OriginalGroup = args.Player.Group;
     }
 }
Beispiel #2
0
 public void OnPostLogin(PlayerPostLoginEventArgs args)
 {
     if (!permas.ContainsKey(args.Player.User.ID))
     {
         if (loadDBInfo(args.Player.User.ID))
         {
             if (permas[args.Player.User.ID].bufflist.Count > 0)
             {
                 args.Player.SendInfoMessage("Your permabuffs from your previous session ({0}) are still active!", string.Join(", ", permas[args.Player.User.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))));
             }
         }
         else
         {
             createDBInfo(args.Player.User.ID);
         }
     }
     else
     {
         permas.Remove(args.Player.User.ID);
         loadDBInfo(args.Player.User.ID);
         if (permas[args.Player.User.ID].bufflist.Count > 0)
         {
             args.Player.SendInfoMessage("Your permabuffs from your previous session ({0}) are still active!", string.Join(", ", permas[args.Player.User.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))));
         }
     }
 }
Beispiel #3
0
 public void OnPostLogin(PlayerPostLoginEventArgs args)
 {
     if (!permas.ContainsKey(args.Player.User.ID))
     {
         if (loadDBInfo(args.Player.User.ID))
         {
             if (permas[args.Player.User.ID].bufflist.Count > 0)
             {
                 args.Player.SendMessage("Your list of rewarded buffs: " + string.Join(", ", permas[args.Player.User.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))), args.Player.Group.R, args.Player.Group.G, args.Player.Group.B);
             }
         }
         else
         {
             createDBInfo(args.Player.User.ID);
         }
     }
     else
     {
         permas.Remove(args.Player.User.ID);
         loadDBInfo(args.Player.User.ID);
         if (permas[args.Player.User.ID].bufflist.Count > 0)
         {
             args.Player.SendMessage("Your list of rewarded buffs: " + string.Join(", ", permas[args.Player.User.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))), args.Player.Group.R, args.Player.Group.G, args.Player.Group.B);
         }
     }
 }
Beispiel #4
0
 private void OnPostLogin(PlayerPostLoginEventArgs e)
 {
     if (config.userLoginHP.ContainsKey(e.Player.User.ID) && config.userLoginHP[e.Player.User.ID] != -1)
     {
         SetStat(config.userLoginHP[e.Player.User.ID], e.Player, "hp");
     }
 }
 public void OnPostLogin(PlayerPostLoginEventArgs args)
 {
     if (!DB.PlayerBuffs.ContainsKey(args.Player.Account.ID))
     {
         if (DB.LoadUserBuffs(args.Player.Account.ID))
         {
             if (DB.PlayerBuffs[args.Player.Account.ID].bufflist.Count > 0)
             {
                 args.Player.SendInfoMessage("Your permabuffs from your previous session ({0}) are still active!", string.Join(", ", DB.PlayerBuffs[args.Player.Account.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))));
             }
         }
         else
         {
             DB.AddNewUser(args.Player.Account.ID);
         }
     }
     else
     {
         DB.PlayerBuffs.Remove(args.Player.Account.ID);
         DB.LoadUserBuffs(args.Player.Account.ID);
         if (DB.PlayerBuffs[args.Player.Account.ID].bufflist.Count > 0)
         {
             args.Player.SendInfoMessage("Your permabuffs from your previous session ({0}) are still active!", string.Join(", ", DB.PlayerBuffs[args.Player.Account.ID].bufflist.Select(p => TShock.Utils.GetBuffName(p))));
         }
     }
 }
Beispiel #6
0
        private void OnPlayerPostLogin(PlayerPostLoginEventArgs args)
        {
            if (!args.Player.Group.HasPermission("reports.report.check"))
            {
                return;
            }

            //Pull unhandled reports from the db
            var newCount       = 0;
            var unhandledCount = 0;

            using (var reader = Db.QueryReader("SELECT * FROM Reports"))
            {
                while (reader.Read())
                {
                    bool unread    = reader.Get <int>("State") == 0;
                    bool unhandled = reader.Get <int>("State") == 1;

                    if (unread)
                    {
                        newCount++;
                    }
                    if (unhandled)
                    {
                        unhandledCount++;
                    }
                }
            }
            if (newCount > 0)
            {
                args.Player.SendWarningMessage("There are {0} unread, and {1} unhandled report{2} to view. Use /checkreports",
                                               newCount, unhandledCount, Suffix(unhandledCount));
            }
        }
Beispiel #7
0
 void PlayerHooks_PlayerPostLogin(PlayerPostLoginEventArgs e)
 {
     if (ClanManager.ClanMembers.ContainsKey(e.Player.Index))
     {
         ClanManager.UnLoadMember(e.Player);
     }
     ClanManager.LoadMember(e.Player);
 }
Beispiel #8
0
 private void OnLogin(PlayerPostLoginEventArgs args)
 {
     if (args?.Player == null)
     {
         return;
     }
     BTPlayers[args.Player.Index] = new BTPlayer(args.Player.Index);
 }
Beispiel #9
0
        private void OnLogin(PlayerPostLoginEventArgs args)
        {
            string greet = DB.SetInfo(args.Player);

            if (!string.IsNullOrWhiteSpace(greet))
            {
                TSPlayer.All.SendMessage($"[{args.Player.User.Name}] " + greet, config.ToColor());
            }
        }
Beispiel #10
0
 public void OnPostLogin(PlayerPostLoginEventArgs e)
 {
     if (TShock.Players[e.Player.Index].Group.HasPermission("tshock.world.modify"))
     {
         string name  = TShock.Players[e.Player.Index].Name;
         int    count = GetUnreadEmailsByName(name);
         TShock.Players[e.Player.Index].SendMessage("You have " + count + " unread messages.", Color.Fuchsia);
     }
 }
        private void OnPostLogin(PlayerPostLoginEventArgs e)
        {
            var playerInfo = Database.Get(e.Player.User);

            if (playerInfo != null)
            {
                e.Player.SetData(PlayerInfo.DataKey, playerInfo);
            }
        }
Beispiel #12
0
        private static void PostLogin(PlayerPostLoginEventArgs args)
        {
            if (args.Player == null)
            {
                return;
            }
            if (args.Player.Name != args.Player.UserAccountName) //returns if player logs in as different name
            {
                return;
            }

            var player = Players.GetByUsername(args.Player.UserAccountName);

            if (player != null)
            {
                player.tsPlayer = args.Player;
            }
            else
            {
                player = new TrPlayer(args.Player.UserAccountName, 0, DateTime.UtcNow.ToString("G"),
                                      DateTime.UtcNow.ToString("G"), 0)
                {
                    tsPlayer = args.Player
                };
                Players.Add(player);

                if (!dbManager.InsertPlayer(player))
                {
                    TShock.Log.ConsoleError("[TimeRanks] Failed to create storage for {0}.", player.name);
                }
                else
                {
                    TShock.Log.ConsoleInfo("[TimeRanks] Created storage for {0}.", player.name);
                }
            }

            if (args.Player.Group.Name == config.StartGroup && config.Groups.Count > 1)                                             //starting rank/new player
            {
                TShock.Users.SetUserGroup(TShock.Users.GetUserByName(args.Player.UserAccountName), config.Groups.Keys.ToList()[0]); //AutoStarts the player to the config's first rank.
            }
            if (player.LastOnline.TotalSeconds > player.RankInfo.derankCost && player.RankInfo.derankCost > 0)                      //if not a new/starting player and passes inactivity limit. 0 = no limit
            {
                var groupIndex = TimeRanks.config.Groups.Keys.ToList().IndexOf(player.Group) - 1;
                if (groupIndex < 0)
                {
                    return;
                }
                player.time = 0; //resets player's activeness time back to 0, excluding first rank

                var user = TShock.Users.GetUserByName(player.name);

                TShock.Users.SetUserGroup(user, TimeRanks.config.Groups.Keys.ElementAt(groupIndex));
                args.Player.SendInfoMessage("You have been demoted to " + player.Group + " due to inactivity!");
                TShock.Log.ConsoleInfo(user.Name + " has been dropped a rank due to inactivity");
            }
        }
Beispiel #13
0
 void OnPostLogin(PlayerPostLoginEventArgs e)
 {
     if (!IrcClient.IsConnected)
     {
         Connect();
     }
     else if (!String.IsNullOrEmpty(Config.ServerLoginAdminMessageFormat))
     {
         SendMessage(Config.AdminChannel, String.Format(Config.ServerLoginAdminMessageFormat, e.Player.Name, e.Player.UserAccountName, e.Player.IP));
     }
 }
Beispiel #14
0
        private void PlayerHooks_PlayerPostLogin(PlayerPostLoginEventArgs e)
        {
            TSPlayer ply = e.Player;

            if (ply == null)
            {
                return;
            }

            DbManager.LoadPlayerInfo(ply);
        }
Beispiel #15
0
        private void OnPlayerPostLogin(PlayerPostLoginEventArgs e)
        {
            var metadata = _memberManager.Get(e.Player.User.Name);

            if (metadata == null)
            {
                return;
            }

            e.Player.SetData(DataKey, metadata);
        }
Beispiel #16
0
        void OnLogin(PlayerPostLoginEventArgs args)
        {
            // Note to self: During login, TSPlayer.Active is set to False
            if (args.Player == null)
            {
                return;
            }

            if (Memory.Contains(args.Player.Name))
            {
                args.Player.SetData(RecipeData.KEY, Memory.Pop(args.Player.Name));
            }
        }
        private async void OnPlayerPostLoginAsync(PlayerPostLoginEventArgs args)
        {
            if (Main.ServerSideCharacter)
            {
                try
                {
                    args.Player.Disable(reason: "");
                    args.Player.SendData(PacketTypes.NpcTalk, "", 0);
                    for (int index = 0; index < 41; index++)
                    {
                        args.Player.SendData(PacketTypes.NpcShopItem, "", index, 0, 0, 0, 0);
                    }
                    args.Player.Disable(reason: "");
                    args.Player.SetBuff(149, 430, true);
                    await Task.Delay(600);

                    args.Player.Disable(reason: "");
                    args.Player.SendData(PacketTypes.PlayerAnimation, "", 0, 0);
                    //args.Player.SendServerCharacter();
                    args.Player.Spawn();
                    args.Player.SetBuff(149, 430, true);
                    await Task.Delay(600);

                    args.Player.Disable(reason: "");
                    args.Player.SendData(PacketTypes.PlayerAnimation, "", 0, 0);
                    //args.Player.SendServerCharacter();
                    args.Player.Spawn();
                    args.Player.SetBuff(149, 430, true);
                    await Task.Delay(600);

                    args.Player.Disable(reason: "");
                    args.Player.SendData(PacketTypes.PlayerAnimation, "", 0, 0);
                    args.Player.SendServerCharacter();
                    args.Player.Spawn();
                    NetMessage.SendData(50, -1, -1, NetworkText.Empty, args.Player.Index, 0f, 0f, 0f, 0);
                    NetMessage.SendData(50, args.Player.Index, -1, NetworkText.Empty, args.Player.Index, 0f, 0f, 0f, 0);
                }

                catch (Exception e)

                {
                    Console.WriteLine($"DisableOnJoin threw an exception: {e}");
                }
            }
        }
Beispiel #18
0
        async void OnPlayerPostLogin(PlayerPostLoginEventArgs e)
        {
            BankAccount account;

            if ((account = await Bank.GetAsync(e.Player.User.Name)) == null && e.Player.Group.HasPermission(Permissions.Permit))
            {
                BankAccount newAccount = await BankAccount.Create(e.Player.User.Name);

                if (newAccount == null || !(await Bank.AddAsync(newAccount)))
                {
                    TShock.Log.ConsoleError($"CurrencyBank: Unable to create bank account for \"{e.Player.User.Name}\".");
                }
                else
                {
                    TShock.Log.ConsoleInfo($"CurrencyBank: Bank account created for \"{e.Player.User.Name}\".");
                }
            }
        }
Beispiel #19
0
        private void OnPostLogin(PlayerPostLoginEventArgs args)
        {
            int id = args.Player.User.ID;

            if (!indexid.ContainsKey(args.Player.Index))
            {
                indexid.Add(args.Player.Index, args.Player.User.ID);
            }
            else
            {
                indexid[args.Player.Index] = id;
            }

            if (players.ContainsKey(id))
            {
                if (players[id].pastGreet)
                {
                    players[id].Greet(args.Player.Index);
                }
            }
        }
Beispiel #20
0
        async void OnLogin(PlayerPostLoginEventArgs e)
        {
            try
            {
                Contributor con = await Contributors.GetAsync(e.Player.User.ID);

                if (con != null)
                {
                    // Start listening to events
                    con.Listen(this, e.Player);

                    // Store the contributor object
                    e.Player.SetData(Contributor.DataKey, con);

                    await con.UpdateNotifications();
                }
            }
            catch
            {
                // Catch any exception that is thrown here to prevent pointless error messages
            }
        }
Beispiel #21
0
 private static void PlayerPostLogin(PlayerPostLoginEventArgs args)
 {
     database.CheckUpdateInclude(args.Player.User.ID);
     database.UpdateKillingSpree(args.Player.User.ID, 0, 0, 0);
 }
 /// <summary>
 /// Adds a player who just logged in to the plugin-stored collection of players.
 /// </summary>
 /// <param Name="e"></param>
 private void OnPlayerPostLogin(PlayerPostLoginEventArgs e)
 {
     PvPers[e.Player.Index] = new PvPPlayer(e.Player.Index);
 }
Beispiel #23
0
        private async void OnPostLoginAsync(PlayerPostLoginEventArgs e)
        {
            await Task.Delay(500);

            Database.LoginCommands(e.Player);
        }
Beispiel #24
0
 private void OnPlayerPostLogin(PlayerPostLoginEventArgs e)
 {
     pvpers[e.Player.Index] = new PvPPlayer(e.Player.Index);
     //pvpers[e.Player.Index].TryGetUser();
 }
Beispiel #25
0
 private static void PlayerPostLogin(PlayerPostLoginEventArgs args)
 {
     database.CheckUpdateInclude(args.Player.User.ID);
 }
Beispiel #26
0
 private void OnLogin(PlayerPostLoginEventArgs args)
 {
     SetTeam(args.Player);
 }
Beispiel #27
0
 public void OnLogin(PlayerPostLoginEventArgs args)
 {
     DB.Login(args.Player.User.ID);
 }
Beispiel #28
0
 private void OnPostLogin(PlayerPostLoginEventArgs args)
 {
     Players[args.Player.Index] = new StarverPlayer(args.Player.Index);
 }
Beispiel #29
0
 private static void PlayerPostLogin(PlayerPostLoginEventArgs args)
 {
     database.CheckUpdateInclude(args.Player.User.ID);
     TimeCache[args.Player.Index] = 0;
 }
Beispiel #30
0
 private void OnPlayerPostLogin(PlayerPostLoginEventArgs args)
 {
     Discord.SendLog($"User {args.Player.User.Name} has logged in as {args.Player.Name} of group {args.Player.Group.Prefix}");
 }