Fix some more plugin-breaking changes

This commit is contained in:
MarioE 2013-12-18 10:24:17 -05:00
parent 84f882472b
commit 85cf46166a
3 changed files with 33 additions and 8 deletions

View file

@ -2008,7 +2008,7 @@ namespace TShockAPI
foreach (TSPlayer tsplr in TShock.Players)
{
if (tsplr != null && tsplr.IsRaptor && tsplr.Group.HasPermission(Permissions.managewarp))
tsplr.SendRaptorWarp(TShock.Warps.FindWarp(warpName));
tsplr.SendRaptorWarp(TShock.Warps.Find(warpName));
}
}
else
@ -2090,7 +2090,7 @@ namespace TShockAPI
}
string warpName = args.Parameters[2];
var warp = TShock.Warps.FindWarp(warpName);
var warp = TShock.Warps.Find(warpName);
var plr = foundplr[0];
if (warp.Position != Point.Zero)
{
@ -2109,7 +2109,7 @@ namespace TShockAPI
else
{
string warpName = String.Join(" ", args.Parameters);
var warp = TShock.Warps.FindWarp(warpName);
var warp = TShock.Warps.Find(warpName);
if (warp != null)
{
if (args.Player.Teleport(warp.Position.X * 16, warp.Position.Y * 16))

View file

@ -126,6 +126,16 @@ namespace TShockAPI.DB
/// </summary>
/// <param name="warpName">The name.</param>
/// <returns>The warp, if it exists, or else null.</returns>
public Warp Find(string warpName)
{
return Warps.FirstOrDefault(w => String.Equals(w.Name, warpName, StringComparison.OrdinalIgnoreCase));
}
/// <summary>
/// Finds the warp with the given name.
/// </summary>
/// <param name="warpName">The name.</param>
/// <returns>The warp, if it exists, or else null.</returns>
[Obsolete]
public Warp FindWarp(string warpName)
{
return Warps.FirstOrDefault(w => String.Equals(w.Name, warpName, StringComparison.OrdinalIgnoreCase));
@ -138,7 +148,7 @@ namespace TShockAPI.DB
/// <param name="x">The X position.</param>
/// <param name="y">The Y position.</param>
/// <returns>Whether the operation suceeded.</returns>
public bool PositionWarp(string warpName, int x, int y)
public bool Position(string warpName, int x, int y)
{
try
{
@ -198,6 +208,15 @@ namespace TShockAPI.DB
/// Gets or sets the position.
/// </summary>
public Point Position { get; set; }
/// <summary>
/// Gets or sets the position.
/// </summary>
[Obsolete]
public Vector2 WarpPos
{
get { return new Vector2(Position.X, Position.Y); }
set { Position = new Point((int)value.X, (int)value.Y); }
}
public Warp(Point position, string name, bool isPrivate = false)
{
@ -205,7 +224,13 @@ namespace TShockAPI.DB
Position = position;
IsPrivate = isPrivate;
}
[Obsolete]
public Warp(Vector2 position, string name, bool isPrivate = false)
{
Name = name;
WarpPos = position;
IsPrivate = isPrivate;
}
public Warp()
{
Position = Point.Zero;

View file

@ -3481,20 +3481,20 @@ namespace TShockAPI
int y = args.Data.ReadInt32();
string warpName = args.Data.ReadString();
Warp warp = TShock.Warps.FindWarp(warpName);
Warp warp = TShock.Warps.Find(warpName);
if (warp == null)
{
TShock.Warps.Add(x, y, warpName);
foreach (TSPlayer tsplr in TShock.Players)
{
if (tsplr != null && tsplr.IsRaptor && tsplr.Group.HasPermission(Permissions.managewarp) && tsplr != args.Player)
tsplr.SendRaptorWarp(TShock.Warps.FindWarp(warpName));
tsplr.SendRaptorWarp(TShock.Warps.Find(warpName));
}
Log.Info("{0} added warp \"{1}\".", args.Player.UserAccountName, warpName);
}
else
{
TShock.Warps.PositionWarp(warpName, x, y);
TShock.Warps.Position(warpName, x, y);
foreach (TSPlayer tsplr in TShock.Players)
{
if (tsplr != null && tsplr.IsRaptor && tsplr.Group.HasPermission(Permissions.managewarp) && tsplr != args.Player)