Misc Fixes

This commit is contained in:
hondacrx
2019-08-17 14:03:21 -04:00
parent 701a26e208
commit 58b142f26e
5 changed files with 33 additions and 17 deletions
+11 -11
View File
@@ -78,13 +78,13 @@ public static class MathFunctions
}
#endregion
static double eps(double a, double b)
static double eps(float a, float b)
{
double aa = Math.Abs(a) + 1.0;
if (double.IsPositiveInfinity(aa))
return double.Epsilon;
float aa = Math.Abs(a) + 1.0f;
if (float.IsPositiveInfinity(aa))
return 0.00001f;
return double.Epsilon * aa;
return 0.00001f * aa;
}
public static float lerp(float a, float b, float f)
@@ -98,27 +98,27 @@ public static class MathFunctions
}
#region Fuzzy
public static bool fuzzyEq(double a, double b)
public static bool fuzzyEq(float a, float b)
{
return (a == b) || (Math.Abs(a - b) <= eps(a, b));
}
public static bool fuzzyGt(double a, double b)
public static bool fuzzyGt(float a, float b)
{
return a > b + eps(a, b);
}
public static bool fuzzyLt(double a, double b)
public static bool fuzzyLt(float a, float b)
{
return a < b - eps(a, b);
}
public static bool fuzzyNe(double a, double b)
public static bool fuzzyNe(float a, float b)
{
return !fuzzyEq(a, b);
}
public static bool fuzzyLe(double a, double b)
public static bool fuzzyLe(float a, float b)
{
return a < b + eps(a, b);
}
public static bool fuzzyGe(double a, double b)
public static bool fuzzyGe(float a, float b)
{
return a > b - eps(a, b);
}
+18 -3
View File
@@ -1,9 +1,24 @@
using System;
using System.Collections.Generic;
using System.Text;
/*
* Copyright (C) 2012-2019 CypherCore <http://github.com/CypherCore>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
using Framework.Constants;
using Game.Entities;
using Game.Guilds;
using System.Collections.Generic;
namespace Game.DataStorage
{
+1 -1
View File
@@ -2873,7 +2873,7 @@ namespace Game.Entities
{
return GetCreatureTemplate().InhabitType.HasAnyFlag(InhabitType.Air);
}
public bool IsDungeonBoss() { return (GetCreatureTemplate().FlagsExtra.HasAnyFlag(CreatureFlagsExtra.DungeonBoss); }
public bool IsDungeonBoss() { return (GetCreatureTemplate().FlagsExtra.HasAnyFlag(CreatureFlagsExtra.DungeonBoss)); }
public void SetReactState(ReactStates st)
{
+1 -1
View File
@@ -6585,7 +6585,7 @@ namespace Game.Entities
m_AELootView[loot.GetGUID()] = guid;
if (loot_type == LootType.Corpse && !guid.IsItem())
SetUnitFlags(UnitFlags.Looting);
AddUnitFlag(UnitFlags.Looting);
}
else
SendLootError(loot.GetGUID(), guid, LootError.DidntKill);
+2 -1
View File
@@ -4211,7 +4211,8 @@ namespace Game.Entities
packet.PlayerGUID = GetGUID();
SendPacket(packet);
if (GetRace() == Race.NightElf)
// If the player has the Wisp racial then cast the Wisp aura on them
if (HasSpell(20585))
CastSpell(this, 20584, true);
CastSpell(this, 8326, true);