mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-07-01 04:53:26 +00:00
show alliance icon
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import { AllPlayers, Cell, Game, Player, PlayerType } from "../../../core/game/Game"
|
||||
import { PseudoRandom } from "../../../core/PseudoRandom"
|
||||
import { calculateBoundingBox } from "../../../core/Util"
|
||||
import { Theme } from "../../../core/configuration/Config"
|
||||
import { Layer } from "./Layer"
|
||||
import { TransformHandler } from "../TransformHandler"
|
||||
@@ -28,7 +27,6 @@ class RenderInfo {
|
||||
export class NameLayer implements Layer {
|
||||
|
||||
private canvas: HTMLCanvasElement
|
||||
private context: CanvasRenderingContext2D
|
||||
|
||||
private lastChecked = 0
|
||||
|
||||
@@ -50,11 +48,6 @@ export class NameLayer implements Layer {
|
||||
|
||||
private firstPlace: Player | null = null
|
||||
|
||||
private lastUpdate = 0
|
||||
private updateFrequency = 250
|
||||
|
||||
private lastRect = null;
|
||||
|
||||
constructor(private game: GameView, private theme: Theme, private transformHandler: TransformHandler, private clientID: ClientID) {
|
||||
this.traitorIconImage = new Image();
|
||||
this.traitorIconImage.src = traitorIcon;
|
||||
@@ -83,9 +76,6 @@ export class NameLayer implements Layer {
|
||||
public init() {
|
||||
// this.canvas = document.createElement('canvas');
|
||||
this.canvas = createCanvas()
|
||||
this.context = this.canvas.getContext("2d")
|
||||
|
||||
|
||||
|
||||
window.addEventListener('resize', () => this.resizeCanvas());
|
||||
this.resizeCanvas();
|
||||
@@ -293,7 +283,7 @@ export class NameLayer implements Layer {
|
||||
if (this.myPlayer != null) {
|
||||
return this.myPlayer
|
||||
}
|
||||
this.myPlayer = this.game.players().find(p => p.clientID() == this.clientID)
|
||||
this.myPlayer = this.game.playerViews().find(p => p.clientID() == this.clientID)
|
||||
return this.myPlayer
|
||||
}
|
||||
}
|
||||
@@ -61,6 +61,8 @@ export class PlayerInfoOverlay extends LitElement implements Layer {
|
||||
|
||||
private _isActive = false;
|
||||
|
||||
private lastMouseUpdate = 0
|
||||
|
||||
init() {
|
||||
this.eventBus.on(MouseMoveEvent, (e: MouseMoveEvent) => this.onMouseEvent(e));
|
||||
this._isActive = true;
|
||||
@@ -68,6 +70,13 @@ export class PlayerInfoOverlay extends LitElement implements Layer {
|
||||
}
|
||||
|
||||
private onMouseEvent(event: MouseMoveEvent) {
|
||||
const now = Date.now()
|
||||
if (now - this.lastMouseUpdate < 100) {
|
||||
return
|
||||
}
|
||||
this.lastMouseUpdate = now
|
||||
|
||||
|
||||
this.setVisible(false);
|
||||
this.unit = null;
|
||||
this.player = null;
|
||||
@@ -85,7 +94,6 @@ export class PlayerInfoOverlay extends LitElement implements Layer {
|
||||
if (owner && owner.isPlayer()) {
|
||||
this.player = owner;
|
||||
(this.player as PlayerView).profile().then(p => {
|
||||
console.log(`got profile ${JSON.stringify(p)}`);
|
||||
this.playerProfile = p;
|
||||
});
|
||||
this.setVisible(true);
|
||||
@@ -136,7 +144,7 @@ export class PlayerInfoOverlay extends LitElement implements Layer {
|
||||
|
||||
private renderPlayerInfo(player: Player) {
|
||||
const myPlayer = this.myPlayer();
|
||||
const isAlly = (myPlayer?.isAlliedWith(player) || player == this.myPlayer()) ?? false;
|
||||
const isAlly = myPlayer.isAlliedWith(player)
|
||||
let relationHtml = null;
|
||||
if (player.type() == PlayerType.FakeHuman && myPlayer != null) {
|
||||
let classType = '';
|
||||
|
||||
Reference in New Issue
Block a user