diff --git a/DataCollection/gamedata.json b/DataCollection/gamedata.json
index f6e1109..a68c87e 100755
--- a/DataCollection/gamedata.json
+++ b/DataCollection/gamedata.json
@@ -149,7 +149,7 @@
"you_could_purchase_this":"^T6You could purchase this ranch:^B6P^R1",
"ranch_already_owned":"You already own a ranch, however.",
"sub_only":"Only Horse Isle subscribers may purchase a ranch however.",
- "ranch_desc_others":"
^H%DESCRIPTION%
"
+ "ranch_desc_others":"
^H%DESCRIPTION%
",
"unowned_ranch_click":"Unowned Ranch",
"click_message":"%USERNAME%'s %TITLE%",
diff --git a/Horse Isle Server/HorseIsleServer/Game/GameExceptions.cs b/Horse Isle Server/HorseIsleServer/Game/GameExceptions.cs
index 3d9a159..b848853 100755
--- a/Horse Isle Server/HorseIsleServer/Game/GameExceptions.cs
+++ b/Horse Isle Server/HorseIsleServer/Game/GameExceptions.cs
@@ -11,4 +11,5 @@ namespace HISP.Game
// Drawingroom
public class DrawingroomException : Exception { };
public class DrawingroomFullException : DrawingroomException { };
+
}
diff --git a/Horse Isle Server/HorseIsleServer/Game/Horse/HorseInfo.cs b/Horse Isle Server/HorseIsleServer/Game/Horse/HorseInfo.cs
index b54d399..4dfef0d 100755
--- a/Horse Isle Server/HorseIsleServer/Game/Horse/HorseInfo.cs
+++ b/Horse Isle Server/HorseIsleServer/Game/Horse/HorseInfo.cs
@@ -129,6 +129,8 @@ namespace HISP.Game.Horse
return 0;
}
}
+
+
public int TackOffset
{
get
diff --git a/Horse Isle Server/HorseIsleServer/Game/Meta.cs b/Horse Isle Server/HorseIsleServer/Game/Meta.cs
index 122dba0..ed608f0 100755
--- a/Horse Isle Server/HorseIsleServer/Game/Meta.cs
+++ b/Horse Isle Server/HorseIsleServer/Game/Meta.cs
@@ -51,24 +51,36 @@ namespace HISP.Game
string usersNorth = "";
string usersEast = "";
string usersSouth = "";
+
foreach (User nearbyUser in nearbyUsers)
{
- if (nearbyUser.X < x)
+ if (nearbyUser.X == x && nearbyUser.Y == y) // not yourself
+ continue;
+
+ int xDiff = x - nearbyUser.X;
+ int yDiff = y - nearbyUser.Y;
+ double angle = (Math.Atan2(yDiff, xDiff) * 180.0 / Math.PI);
+ angle -= 45;
+ angle = (angle % 360 + 360) % 360;
+
+ if (angle >= 270 && angle <= 360 )
{
usersWest += " " + nearbyUser.Username + " ";
}
- else if (nearbyUser.X > x)
+ else if (angle >= 90 && angle <= 180)
{
usersEast += " " + nearbyUser.Username + " ";
}
- else if (nearbyUser.Y > y)
+ else if (angle >= 180 && angle <= 270)
{
usersSouth += " " + nearbyUser.Username + " ";
}
- else if (nearbyUser.Y < y)
+ else if (angle >= 0 && angle <= 90)
{
usersNorth += " " + nearbyUser.Username + " ";
}
+
+
}
if (usersEast != "")
diff --git a/Horse Isle Server/HorseIsleServer/Game/World.cs b/Horse Isle Server/HorseIsleServer/Game/World.cs
index 0b13fda..7aa5cd5 100755
--- a/Horse Isle Server/HorseIsleServer/Game/World.cs
+++ b/Horse Isle Server/HorseIsleServer/Game/World.cs
@@ -198,7 +198,7 @@ namespace HISP.Game
Database.SetServerTime(ServerTime.Minutes, ServerTime.Days, ServerTime.Years);
// Ranch Windmill Payments
- if(hours % 12 == 0)
+ if(ServerTime.Minutes % 720 == 0) // every 12 hours
{
Logger.DebugPrint("Paying windmill owners . . . ");
foreach (Ranch ranch in Ranch.Ranches)
@@ -220,7 +220,7 @@ namespace HISP.Game
{
ServerTime.Days += 1;
ServerTime.Minutes = 0;
-
+
Database.DoIntrestPayments(ConfigReader.IntrestRate);
}
diff --git a/Horse Isle Server/HorseIsleServer/Server/Converters.cs b/Horse Isle Server/HorseIsleServer/Server/Converters.cs
index e61fdcd..de777c8 100755
--- a/Horse Isle Server/HorseIsleServer/Server/Converters.cs
+++ b/Horse Isle Server/HorseIsleServer/Server/Converters.cs
@@ -1,8 +1,5 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
+
namespace HISP.Server
{
@@ -34,6 +31,11 @@ namespace HISP.Server
return arr;
}
+ public static Double PointsToDistance(int x1, int y1, int x2, int y2)
+ {
+ return Math.Sqrt(Math.Pow(x1 - (-y1), 2) + Math.Pow(x2 - (-y2), 2));
+ }
+
public static DateTime UnixTimeStampToDateTime(double unixTimeStamp)
{
// Unix timestamp is seconds past epoch
diff --git a/Horse Isle Server/HorseIsleServer/Server/GameDataJson.cs b/Horse Isle Server/HorseIsleServer/Server/GameDataJson.cs
index 699d59c..4a981d5 100755
--- a/Horse Isle Server/HorseIsleServer/Server/GameDataJson.cs
+++ b/Horse Isle Server/HorseIsleServer/Server/GameDataJson.cs
@@ -671,7 +671,7 @@ namespace HISP.Server
Messages.RanchYouCouldPurchaseThisRanch = gameData.messages.meta.ranch.you_could_purchase_this;
Messages.RanchYouAllreadyOwnARanch = gameData.messages.meta.ranch.ranch_already_owned;
Messages.RanchSubscribersOnly = gameData.messages.meta.ranch.sub_only;
- Messages.RanchDescriptionOthersFormat = gameData.meta.ranch.ranch_desc_others;
+ Messages.RanchDescriptionOthersFormat = gameData.messages.meta.ranch.ranch_desc_others;
Messages.RanchUnownedRanchClicked = gameData.messages.meta.ranch.unowned_ranch_click;
Messages.RanchClickMessageFormat = gameData.messages.meta.ranch.click_message;
diff --git a/Horse Isle Server/HorseIsleServer/Server/GameServer.cs b/Horse Isle Server/HorseIsleServer/Server/GameServer.cs
index 7ac9e27..fed2a95 100755
--- a/Horse Isle Server/HorseIsleServer/Server/GameServer.cs
+++ b/Horse Isle Server/HorseIsleServer/Server/GameServer.cs
@@ -61,8 +61,6 @@ namespace HISP.Server
Database.IncAllUsersFreeTime(1);
}
-
-
if (totalMinutesElapsed % 25 == 0)
{
@@ -84,6 +82,11 @@ namespace HISP.Server
}
}
+ foreach(GameClient client in ConnectedClients)
+ if (client.LoggedIn)
+ if (!client.LoggedinUser.MetaPriority)
+ UpdateArea(client);
+
Treasure.AddValue();
Database.IncPlayerTirednessForOfflineUsers();
DroppedItems.Update();