this.pot_size_text = document.createTextNode("");
pot_size.append(this.pot_size_text);
+ this.dealer_chip = create_svg_element(this.svg, "ellipse", ["dealer-chip"], [["cx", "250"], ["cy", "250"], ["rx", "10"], ["ry", "5"]]);
+ const defs = create_svg_element(this.svg, "defs", [], []);
+ const dealer_chip_gradient = create_svg_element(defs, "radialGradient", [], [["id", "dealer-chip-gradient"]]);
+ const stop1 = create_svg_element(dealer_chip_gradient, "stop", [], [["offset", "0%"], ["stop-color", "red"]]);
+ const stop2 = create_svg_element(dealer_chip_gradient, "stop", [], [["offset", "30%"], ["stop-color", "white"]]);
+ const stop3 = create_svg_element(dealer_chip_gradient, "stop", [], [["offset", "50%"], ["stop-color", "red"]]);
+ const stop4 = create_svg_element(dealer_chip_gradient, "stop", [], [["offset", "95%"], ["stop-color", "white"]]);
+
this.bet_controls = new BetControls(this)
this.close_control = create_svg_element(this.svg, "rect", ["close-control"], [["x", "460"], ["y", "5"], ["width", "35"], ["height", "35"], ["rx", "2"]])
redraw_players() {
this.bet_controls.redraw()
this.pot_size_text.textContent = this.pot || "";
+ if (this.seats.has(this.dealer)) {
+ const seat = this.seats.get(this.dealer);
+ const angle = this.player_angle(seat);
+ const x = 250 - 100 * Math.sin(angle);
+ const y = 245 + 52 * Math.cos(angle);
+ this.dealer_chip.setAttribute("cx", x);
+ this.dealer_chip.setAttribute("cy", y);
+ }
for (const [username, [user, stack, active, bet]] of this.user_icons) {
if (!this.seats.has(username)) {
this.svg.removeChild(user);