-
Member
Other Players Rotations
Hi, in previous version i could see other players rotations right side of pictures. but with this update i cant see. I asked other friends they can see but i cant. I copied all plugins but still not working. Can you help me about to solve this please?
-
Member
Same here. All works well but can not see other people's CoE rotations.
Noobz
-
Contributor
Edit your COE plugin with Notepad
Search
if (player.ActorId == 0) continue;
Instead
if (!player.HasValidActor) continue;
Last edited by SeaDragon; 06-06-2018 at 12:00 PM.
-
which plugin?
my ConventionOfElementsBuffListPlugin uses
if (!player.HasValidActor) continue;
properly instead of ActorId
Do not send me private messages unless it is absolutely necessary or the content is sensitive or when I ask you to do that...
-
Contributor
Originally Posted by
KillerJohn
which plugin?
my ConventionOfElementsBuffListPlugin uses
if (!player.HasValidActor) continue;
properly instead of ActorId
Some people use old modified COE plugin, such as me.
-
Member
i cant find this if (!player.HasValidActor) on my coe buffList Plugin
I need help
-
Contributor
Originally Posted by
afrojax
i cant find this if (!player.HasValidActor) on my coe buffList Plugin
I need help
change
if (player.ActorId == 0) continue;
to
if (!player.HasValidActor) continue;
Sorry for my English
-
Member
now i cant find this in my File
look
using System.Collections.Generic;
using System.Linq;
using System;
using Turbo.Plugins.Default;
namespace Turbo.Plugins.inferno.CoE
{
public class COEBuffListPlugin : BasePlugin, IInGameTopPainter
{
public bool HideWhenUiIsHidden { get; set; }
public BuffPainter BuffPainter { get; set; }
private BuffRuleCalculator _ruleCalculator;
public COEBuffListPlugin()
{
Enabled = true;
}
public override void Load(IController hud)
{
base.Load(hud);
HideWhenUiIsHidden = false;
BuffPainter = new BuffPainter(Hud, true)
{
Opacity = 0.6f,
TimeLeftFont = Hud.Render.CreateFont("tahoma", 8, 255, 255, 255, 255, true, false, 255, 0, 0, 0, true),
};
_ruleCalculator = new BuffRuleCalculator(Hud);
_ruleCalculator.SizeMultiplier = 0.7f;
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 1, MinimumIconCount = 0, DisableName = true }); // Arcane
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 0, DisableName = true }); // Cold
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 3, MinimumIconCount = 0, DisableName = true }); // Fire
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 4, MinimumIconCount = 0, DisableName = true }); // Holy
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 5, MinimumIconCount = 0, DisableName = true }); // Lightning
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 6, MinimumIconCount = 0, DisableName = true }); // Physical
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 7, MinimumIconCount = 0, DisableName = true }); // Poison
}
private IEnumerable<BuffRule> GetCurrentRules(HeroClass heroClass)
{
for (int i = 1; i <= 7; i++)
{
switch (heroClass)
{
case HeroClass.Barbarian: if (i == 1 || i == 4 || i == 7) continue; break;
case HeroClass.Crusader: if (i == 1 || i == 2 || i == 7) continue; break;
case HeroClass.DemonHunter: if (i == 1 || i == 4 || i == 7) continue; break;
case HeroClass.Monk: if (i == 1 || i == 7) continue; break;
case HeroClass.Necromancer: if (i == 1 || i == 3 || i == 4 || i == 5) continue; break;
case HeroClass.WitchDoctor: if (i == 1 || i == 4 || i == 5) continue; break;
case HeroClass.Wizard: if (i == 4 || i == 6 || i == 7) continue; break;
}
yield return _ruleCalculator.Rules[i - 1];
}
}
public void PaintTopInGame(ClipState clipState)
{
if (clipState != ClipState.BeforeClip) return;
if (HideWhenUiIsHidden && Hud.Render.UiHidden) return;
foreach (var player in Hud.Game.Players)
{
if (player.IsMe)
{
var buff = player.Powers.GetBuff(430674);
if ((buff == null) || (buff.IconCounts[0] <= 0)) break;
var classSpecificRules = GetCurrentRules(player.HeroClassDefinition.HeroClass);
_ruleCalculator.CalculatePaintInfo(player, classSpecificRules);
if (_ruleCalculator.PaintInfoList.Count == 0) return;
if (!_ruleCalculator.PaintInfoList.Any(info => info.TimeLeft > 0)) return;
var highestElementalBonus = player.Offense.HighestElementalDamageBonus;
for (int i = 0; i < _ruleCalculator.PaintInfoList.Count; i++)
{
var info = _ruleCalculator.PaintInfoList[0];
if (info.TimeLeft <= 0)
{
_ruleCalculator.PaintInfoList.RemoveAt(0);
_ruleCalculator.PaintInfoList.Add(info);
}
else break;
}
for (int orderIndex = 0; orderIndex < _ruleCalculator.PaintInfoList.Count; orderIndex++)
{
var info = _ruleCalculator.PaintInfoList[orderIndex];
var best = false;
switch (info.Rule.IconIndex)
{
case 1: best = player.Offense.BonusToArcane == highestElementalBonus; break;
case 2: best = player.Offense.BonusToCold == highestElementalBonus; break;
case 3: best = player.Offense.BonusToFire == highestElementalBonus; break;
case 4: best = player.Offense.BonusToHoly == highestElementalBonus; break;
case 5: best = player.Offense.BonusToLightning == highestElementalBonus; break;
case 6: best = player.Offense.BonusToPhysical == highestElementalBonus; break;
case 7: best = player.Offense.BonusToPoison == highestElementalBonus; break;
}
if (best) info.Size *= 1.35f;
if (best && orderIndex > 0)
{
info.TimeLeft = (orderIndex - 1) * 4 + _ruleCalculator.PaintInfoList[0].TimeLeft;
}
else info.TimeLeftNumbersOverride = false;
}
var portraitRect = player.PortraitUiElement.Rectangle;
var x = portraitRect.Right * 8.05f;
var y = portraitRect.Top + portraitRect.Height * 2.05f;
BuffPainter.PaintHorizontal(_ruleCalculator.PaintInfoList, x, y, _ruleCalculator.StandardIconSize, 0);
break;
}
} // end foreach
} // end PaintTopInGame
} // end class
}
-
Contributor
Originally Posted by
afrojax
now i cant find this in my File
look
using System.Collections.Generic;
using System.Linq;
using System;
using Turbo.Plugins.Default;
namespace Turbo.Plugins.inferno.CoE
{
public class COEBuffListPlugin : BasePlugin, IInGameTopPainter
{
public bool HideWhenUiIsHidden { get; set; }
public BuffPainter BuffPainter { get; set; }
private BuffRuleCalculator _ruleCalculator;
public COEBuffListPlugin()
{
Enabled = true;
}
public override void Load(IController hud)
{
base.Load(hud);
HideWhenUiIsHidden = false;
BuffPainter = new BuffPainter(Hud, true)
{
Opacity = 0.6f,
TimeLeftFont = Hud.Render.CreateFont("tahoma", 8, 255, 255, 255, 255, true, false, 255, 0, 0, 0, true),
};
_ruleCalculator = new BuffRuleCalculator(Hud);
_ruleCalculator.SizeMultiplier = 0.7f;
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 1, MinimumIconCount = 0, DisableName = true }); // Arcane
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 2, MinimumIconCount = 0, DisableName = true }); // Cold
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 3, MinimumIconCount = 0, DisableName = true }); // Fire
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 4, MinimumIconCount = 0, DisableName = true }); // Holy
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 5, MinimumIconCount = 0, DisableName = true }); // Lightning
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 6, MinimumIconCount = 0, DisableName = true }); // Physical
_ruleCalculator.Rules.Add(new BuffRule(430674) { IconIndex = 7, MinimumIconCount = 0, DisableName = true }); // Poison
}
private IEnumerable<BuffRule> GetCurrentRules(HeroClass heroClass)
{
for (int i = 1; i <= 7; i++)
{
switch (heroClass)
{
case HeroClass.Barbarian: if (i == 1 || i == 4 || i == 7) continue; break;
case HeroClass.Crusader: if (i == 1 || i == 2 || i == 7) continue; break;
case HeroClass.DemonHunter: if (i == 1 || i == 4 || i == 7) continue; break;
case HeroClass.Monk: if (i == 1 || i == 7) continue; break;
case HeroClass.Necromancer: if (i == 1 || i == 3 || i == 4 || i == 5) continue; break;
case HeroClass.WitchDoctor: if (i == 1 || i == 4 || i == 5) continue; break;
case HeroClass.Wizard: if (i == 4 || i == 6 || i == 7) continue; break;
}
yield return _ruleCalculator.Rules[i - 1];
}
}
public void PaintTopInGame(ClipState clipState)
{
if (clipState != ClipState.BeforeClip) return;
if (HideWhenUiIsHidden && Hud.Render.UiHidden) return;
foreach (var player in Hud.Game.Players)
{
if (player.IsMe)
{
var buff = player.Powers.GetBuff(430674);
if ((buff == null) || (buff.IconCounts[0] <= 0)) break;
var classSpecificRules = GetCurrentRules(player.HeroClassDefinition.HeroClass);
_ruleCalculator.CalculatePaintInfo(player, classSpecificRules);
if (_ruleCalculator.PaintInfoList.Count == 0) return;
if (!_ruleCalculator.PaintInfoList.Any(info => info.TimeLeft > 0)) return;
var highestElementalBonus = player.Offense.HighestElementalDamageBonus;
for (int i = 0; i < _ruleCalculator.PaintInfoList.Count; i++)
{
var info = _ruleCalculator.PaintInfoList[0];
if (info.TimeLeft <= 0)
{
_ruleCalculator.PaintInfoList.RemoveAt(0);
_ruleCalculator.PaintInfoList.Add(info);
}
else break;
}
for (int orderIndex = 0; orderIndex < _ruleCalculator.PaintInfoList.Count; orderIndex++)
{
var info = _ruleCalculator.PaintInfoList[orderIndex];
var best = false;
switch (info.Rule.IconIndex)
{
case 1: best = player.Offense.BonusToArcane == highestElementalBonus; break;
case 2: best = player.Offense.BonusToCold == highestElementalBonus; break;
case 3: best = player.Offense.BonusToFire == highestElementalBonus; break;
case 4: best = player.Offense.BonusToHoly == highestElementalBonus; break;
case 5: best = player.Offense.BonusToLightning == highestElementalBonus; break;
case 6: best = player.Offense.BonusToPhysical == highestElementalBonus; break;
case 7: best = player.Offense.BonusToPoison == highestElementalBonus; break;
}
if (best) info.Size *= 1.35f;
if (best && orderIndex > 0)
{
info.TimeLeft = (orderIndex - 1) * 4 + _ruleCalculator.PaintInfoList[0].TimeLeft;
}
else info.TimeLeftNumbersOverride = false;
}
var portraitRect = player.PortraitUiElement.Rectangle;
var x = portraitRect.Right * 8.05f;
var y = portraitRect.Top + portraitRect.Height * 2.05f;
BuffPainter.PaintHorizontal(_ruleCalculator.PaintInfoList, x, y, _ruleCalculator.StandardIconSize, 0);
break;
}
} // end foreach
} // end PaintTopInGame
} // end class
}
GLQ_ConventionOfElementsBuffListPlugin.cs - Pastebin.com
Try my revised version
-
Post Thanks / Like - 1 Thanks
afrojax (1 members gave Thanks to SeaDragon for this useful post)
-
Member
I found much easier way to fix for people like me who has no idea about coding when you copying older plugins folder to new one do not select replace option. just select skip. this worked for me. Thank you for all replies. All you are doing so great works. y the way KJ, you got many thanks but one more from me to you. You are making our gaming life easier and fun (and also Enigma). Many thanks!
-
Member
player.actorID being depreciated confused me as well, I wish that was listed in the changelog.
Code:
uint ActorId { get; } // deprecated
Thanks for the replacement SeaDragon.