private void OnGreetPlayer(GreetPlayerEventArgs args) { try { var player = TShock.Players[args.Who]; foreach (var c in Change.GetChanges(player.Name)) { if (c.Account == -2) { player.GiveItem(c.NetID, c.Stack, c.Perfix); player.SendSuccessMessage("您的商品已退回,请查收"); c.Delete(); } if (c.Account == -1) { Bank ba = Data.GetBank(player.Name); ba.Money += c.Prize; ba.Save(); player.SendSuccessMessage($"您的商品:[i/s{c.Stack}:{c.NetID}]," + $"价格:{c.Prize}已售出,货款已到账,请查收"); c.Delete(); } } } catch { } }
private void OnGreetPlayer(GreetPlayerEventArgs args) { try { var player = TShock.Players[args.Who]; foreach (var c in Change.GetChanges(player.Name)) { if (c.Account == -2) { player.GiveItem(c.NetID, c.Stack, c.Perfix); player.SendSuccessMessage("您的商品已退回,请查收"); //player.SendSuccessMessage("Your item has been returned,please check."); c.Delete(); } if (c.Account == -1) { Bank ba = Data.GetBank(player.Name); ba.Money += c.Prize; ba.Save(); player.SendSuccessMessage($"您的商品:[i/s{c.Stack}:{c.NetID}]," + $"价格:{c.Prize}已售出,货款已到账,请查收"); //player.SendSuccessMessage($"Your item:[i/s{c.Stack}:{c.NetID}]has been selled," + $"prize:{c.Prize},the prize has been add to your money,please check."); c.Delete(); } } } catch { } }
private void OnGreetPlayer(GreetPlayerEventArgs e) { if (getConfig.motd_enabled && TShock.Players[e.Who] != null) { ShowMOTD(TShock.Players[e.Who]); } }
private void OnGreet(GreetPlayerEventArgs args) { if (TShock.Players[args.Who] == null) { return; } if (!TShock.Players[args.Who].IsLoggedIn) { return; } int id = TShock.Players[args.Who].User.ID; if (!indexid.ContainsKey(args.Who)) { indexid.Add(args.Who, id); } if (players.ContainsKey(id)) { if (!players[id].hasGreeted) { players[id].Greet(args.Who); } players[id].pastGreet = true; } }
private static void GreetPlayer(GreetPlayerEventArgs args) { if (TShock.Players[args.Who] == null) { return; } if (PlayerKilling.ContainsKey(TShock.Players[args.Who])) { PlayerKilling.Remove(TShock.Players[args.Who]); } PlayerKilling.Add(TShock.Players[args.Who], null); TimeCache[args.Who] = 0; SentDamageCache[args.Who] = new Dictionary <KillType, int> { { KillType.Mob, 0 }, { KillType.Boss, 0 }, { KillType.Player, 0 } }; RecvDamageCache[args.Who] = 0; }
private void OnGreetPlayer(GreetPlayerEventArgs args) { var player = TShock.Players[args.Who]; if (player == null || !player.Active || string.IsNullOrWhiteSpace(player.Name)) { return; } //AddClone checks to see if it exists before actually adding to db DB.AddClone(new CloneInfo() { Character = player.Name, IP = player.IP, UUID = player.UUID }); var clones = DB.GetClones(player.IP, player.UUID); var notifies = TShock.Players.Where(e => e != null && e.Active && e.IsLoggedIn && e.HasPermission("clones.check") && !disabledNotify.Contains(e.Account.ID)).ToList(); if (clones.Count > 5) { notifies.ForEach(e => e.SendInfoMessage($"{player.Name} has a lot of clones, including: {string.Join(", ", clones.GetRange(clones.Count - 3, 3))}. Use /clones for more clones.")); } else { notifies.ForEach(e => e.SendInfoMessage($"{player.Name} also goes by: {string.Join(", ", clones)}")); } }
void OnGreet(GreetPlayerEventArgs args) { RPlayers.Add(new RecPlayer(args.Who)); var player = TShock.Players[args.Who]; var RecPlayer = RPlayers.AddToList(new RecPlayer(args.Who)); }
private void OnGreet(GreetPlayerEventArgs args) { lock (players) { players[args.Who] = new RegionPlayer(TShock.Players[args.Who], regions); } }
public void OnGreetPlayer(GreetPlayerEventArgs e) { int count = 0; string ids = "<"; TSPlayer ply = TShock.Players[e.Who]; using (var reader = MessengerDB.QueryReader("SELECT * FROM Messages")) { while (reader.Read()) { if ((reader.Get <string>("Receiver") == ply.Name) && (reader.Get <string>("Status") == "Unread")) { count++; ids = ids + reader.Get <int>("ID") + " | "; } } } if (count != 0) { ply.SendMessage("[Messenger] You have " + count + " unread message(s). Use /msg " + ids.Remove(ids.Length - 3) + ">", Color.LightBlue); } }
private void OnGreet(GreetPlayerEventArgs args) { BHPlayers.Add(new BHPlayer(args.Who)); var player = TShock.Players[args.Who]; var RecPlayer = BHPlayers.AddToList(new BHPlayer(args.Who)); }
private void OnGreetPlayer(GreetPlayerEventArgs args) { if (TShock.Players[args.Who].IsLoggedIn) { OnPlayerPostLogin(new PlayerPostLoginEventArgs(TShock.Players[args.Who])); } }
private void OnJoin(GreetPlayerEventArgs e) { if (TShock.Players[e.Who] != null) { UpdateList(e.Who); } }
void OnGreet(GreetPlayerEventArgs args) { if (Config.JoinLogID != 0) { Logs.JoinLeave(TShock.Players[args.Who]); } }
public void OnGreet(GreetPlayerEventArgs args) { if (TShock.Players[args.Who].User == null) { // Player hasn't logged in or has no account. return; } WarpbackData wb = WarpbackData.Get(TShock.Players[args.Who]); if (wb.Available) { bool haslens = !config.greetRequiresItem; if (!haslens) { foreach (NetItem thing in TShock.Players[args.Who].PlayerData.inventory) { if (config.returnItemTypes.Contains(thing.NetId)) { haslens = true; } } } if (haslens) { SendInfoMessageIfPresent(TShock.Players[args.Who], config.msgOnGreet); } } }
public void OnJoin(GreetPlayerEventArgs args) { Players.Add(new Mplayer(args.Who)); var player = TShock.Players[args.Who]; var Mplayer = Utils.GetPlayers(args.Who); var readTableIP = SQLEditor.ReadColumn("muteList", "IP", new List <SqlValue>()); if (readTableIP.Contains(player.IP)) { Mplayer.muted = true; Mplayer.muteTime = -1; foreach (TSPlayer tsplr in TShock.Players) { if ((tsplr.Group.HasPermission("mute")) || (tsplr.Group.Name == "superadmin")) { tsplr.SendInfoMessage("A player that is on the perma-mute list is about to enter the server, and has been muted."); } } } else { Mplayer.muteTime = -1; Mplayer.muted = false; } }
/// <summary> /// Creates a new player object when a player joins /// </summary> /// <param name="args">The greet player arguments</param> public void OnGreetPlayer(GreetPlayerEventArgs args) { lock (Players) { Players[args.Who] = new Player(args.Who, Manager); } }
public void onGreetPlayer(GreetPlayerEventArgs e) { try { dPlayers[e.Who] = new dPlayer(e.Who); } catch { } }
private void OnPlayerGreet(GreetPlayerEventArgs args) { TSPlayer plr = TShock.Players[args.Who]; int proj = Projectile.NewProjectile(plr.TPlayer.position.X, plr.TPlayer.position.Y - 32, 0f, -8f, 170, 0, (float)0); Main.projectile[proj].Kill(); }
public void OnGreetPlayer(GreetPlayerEventArgs e) { if (TShock.Players[e.Who].Group.HasPermission("tshock.world.modify")) { string name = TShock.Players[e.Who].Name; int count = GetUnreadEmailsByName(name); TShock.Players[e.Who].SendInfoMessage("You have " + count + " unread messages."); } }
private void onGreet(GreetPlayerEventArgs e) { if (e.Handled) { return; } Task.Run(async() => { if (Client.State == ConnectionState.Connected) { try { TSPlayer p = TShock.Players[e.Who]; if (p != null) { foreach (string s in Config.TerrariaChannels) { Channel c = Client.CurrentServer.FindChannels(s, exactMatch: true).FirstOrDefault(); Message m = await c?.SendMessage($"`{p.Name}` has joined."); if (m?.State == MessageState.Failed) { Client.Log.Warning("OnGreet", $"Broadcasting to channel {c.Name} failed"); } } foreach (ConfigFile.ServerBot bot in Config.ServerBots.FindAll(b => b.Id > 0)) { User botUser = Client.CurrentServer.GetUser(bot.Id); if (botUser == null || !botUser.IsBot /* Apparently bots can be "Offline" while being connected?? || botUser.Status == UserStatus.Offline*/) { // We only support active bots, mang Client.Log.Warning("OnGreet", $"Broadcasting to bot {bot.Id} failed (null: {botUser == null} | IsBot: {botUser?.IsBot} | Status: {botUser?.Status?.Value})"); return; } var roleColor = Client.CurrentServer.CurrentUser.Roles.OrderBy(r => r.Position).LastOrDefault()?.Color; var color = roleColor == null ? Color.Yellow : new Color(roleColor.R, roleColor.G, roleColor.B); string name = Client.CurrentServer.CurrentUser.Nickname ?? Client.CurrentServer.CurrentUser.Name; Message m = await botUser.SendMessage( $"{TShock.Utils.ColorTag($"{name}>", color)} {TShock.Utils.ColorTag($"{p.Name} has joined.", Color.Yellow)}"); if (m?.State == MessageState.Failed) { Client.Log.Warning("OnGreet", $"Broadcasting to bot {bot.Id} failed (null: {botUser == null} | IsBot: {botUser?.IsBot} | Status: {botUser?.Status?.Value})"); } } } } catch (Exception ex) { TShock.Log.Error(ex.ToString()); } } }); }
void GreetPlayer(GreetPlayerEventArgs args) { if (TShock.Players[args.Who] != null) { JObject json = new JObject(); json.Add("name", TShock.Players[args.Who].Name); json.Add("index", TShock.Players[args.Who].Index); socket.Emit("playerjoin", json.ToString()); } }
internal void OnGreetPlayer(GreetPlayerEventArgs args) { lock (C3Players) C3Players.Add(new C3Player(args.Who)); if (C3Config.ShowWelcomeMessage) { TShock.Players[args.Who].SendMessage("This server is running C3Mod, created by Twitchy. C3Mod is now open source.", Color.Cyan); } }
private void OnGreetPlayer(GreetPlayerEventArgs args) { var player = TShock.Players[args.Who]; if (player == null || !player.Active || !player.RealPlayer) { return; } player.SetData("buildmode", false); }
public void OnGreet(GreetPlayerEventArgs args) { if (TShock.Players[args.Who] == null) { return; } TSPlayer player = TShock.Players[args.Who]; player.SendMessage(getStaff(), Color.Cyan); return; }
private void onGreet(GreetPlayerEventArgs args) { var plr = TShock.Players[args.Who]; if (plr == null) { return; } plr.SetData <bool>("awaitGD", false); }
private static void OnGreetPlayer(GreetPlayerEventArgs args) { // Possible to set Medium Core with SSC? // such as: TSPlayer.Players[player.Index].TPlayer.difficulty? lock (CTGplayer) { CTGplayer.Add(new Player(args.Who)); Tools.GetPlayerByIndex(args.Who).team = 1; TShock.Players[args.Who].SetTeam(1); } }
private void OnGreet(GreetPlayerEventArgs args) { var player = TShock.Players[args.Who]; if (player == null || !player.Active) { return; } player.SetData("mapteleport", false); }
void OnGreet(GreetPlayerEventArgs args) { var plr = TShock.Players[args.Who]; if (plr == null || !plr.Active) { return; } plr.SetData("buildmode", false); }
private void OnGreetPlayer(GreetPlayerEventArgs args) { var player = TShock.Players[args.Who]; if (player == null || !player.Active || string.IsNullOrWhiteSpace(player.Name)) { return; } Discord.Send($"{player.Name} has joined."); Discord.SendLog($"{player.Name} has joined. IP: {player.IP}"); }
private void OnGreetPlayer(GreetPlayerEventArgs args) { var player = TShock.Players[args.Who]; if (player == null) { return; } playerSessionId[player.Index] = Guid.NewGuid().ToString("N"); playerDb.Query("INSERT INTO " + dbPrefix + "PlayerLog (SessionId, Name, UUID, Login, Logout) VALUES (@0, @1, @2, @3, null)", playerSessionId[player.Index], player.Name, player.UUID, DateTime.Now); }