playermanager: fix player spawn overriding appearance change. (#2536)

This commit is contained in:
Ganom
2020-04-30 15:39:07 -04:00
committed by GitHub
parent 4fa0885e12
commit a84880b0e7

View File

@@ -25,7 +25,6 @@ import net.runelite.api.Player;
import net.runelite.api.events.AnimationChanged; import net.runelite.api.events.AnimationChanged;
import net.runelite.api.events.PlayerAppearanceChanged; import net.runelite.api.events.PlayerAppearanceChanged;
import net.runelite.api.events.PlayerDespawned; import net.runelite.api.events.PlayerDespawned;
import net.runelite.api.events.PlayerSpawned;
import net.runelite.api.kit.KitType; import net.runelite.api.kit.KitType;
import net.runelite.client.eventbus.EventBus; import net.runelite.client.eventbus.EventBus;
import net.runelite.client.events.AttackStyleChanged; import net.runelite.client.events.AttackStyleChanged;
@@ -59,7 +58,6 @@ public class PlayerManager
this.itemManager = itemManager; this.itemManager = itemManager;
this.eventBus = eventBus; this.eventBus = eventBus;
eventBus.subscribe(PlayerDespawned.class, this, this::onPlayerDespawned); eventBus.subscribe(PlayerDespawned.class, this, this::onPlayerDespawned);
eventBus.subscribe(PlayerSpawned.class, this, this::onPlayerSpawned);
eventBus.subscribe(AnimationChanged.class, this, this::onAnimationChanged); eventBus.subscribe(AnimationChanged.class, this, this::onAnimationChanged);
eventBus.subscribe(PlayerAppearanceChanged.class, this, this::onAppearenceChanged); eventBus.subscribe(PlayerAppearanceChanged.class, this, this::onAppearenceChanged);
} }
@@ -198,15 +196,15 @@ public class PlayerManager
private void onAppearenceChanged(PlayerAppearanceChanged event) private void onAppearenceChanged(PlayerAppearanceChanged event)
{ {
final PlayerContainer player = playerMap.get(event.getPlayer().getName()); PlayerContainer player = playerMap.get(event.getPlayer().getName());
if (player == null) if (player == null)
{ {
return; player = new PlayerContainer(event.getPlayer());
playerMap.put(event.getPlayer().getName(), player);
} }
update(player); update(player);
player.reset();
player.setFriend(client.isFriended(player.getName(), false)); player.setFriend(client.isFriended(player.getName(), false));
player.setClan(client.isClanMember(player.getName())); player.setClan(client.isClanMember(player.getName()));
} }
@@ -217,12 +215,6 @@ public class PlayerManager
playerMap.remove(player.getName()); playerMap.remove(player.getName());
} }
private void onPlayerSpawned(PlayerSpawned event)
{
final Player player = event.getPlayer();
playerMap.put(player.getName(), new PlayerContainer(player));
}
private void onAnimationChanged(AnimationChanged event) private void onAnimationChanged(AnimationChanged event)
{ {
final Actor actor = event.getActor(); final Actor actor = event.getActor();