This is a documentation for Board Game Arena: play board games online !
Counter: Revizyonlar arasındaki fark
Gezinti kısmına atla
Arama kısmına atla
Tilalilalou (mesaj | katkılar) Değişiklik özeti yok |
|||
(2 kullanıcıdan 4 ara revizyon gösterilmiyor) | |||
11. satır: | 11. satır: | ||
"ebg/counter" /// <==== HERE], | "ebg/counter" /// <==== HERE], | ||
== | == Setup a counter == | ||
<pre> | <pre> | ||
player.handSizeCounter = new ebg.counter(); | |||
</pre | player.handSizeCounter.create('hand_size_player_' + player_id); | ||
</pre> | |||
== Update counter == | |||
<pre> | |||
player.handSizeCounter.setValue(player.handSize); | |||
</pre> | |||
== Players panels == | == Players panels == | ||
25. satır: | 28. satır: | ||
=== Adding stuff to player's panel === | === Adding stuff to player's panel === | ||
First, create a new JS template string in your template (tpl) file. | |||
From the ''Gomoku'' example: | |||
<pre> | <pre> | ||
var jstpl_player_board = '\<div class="cp_board">\ | var jstpl_player_board = '\<div class="cp_board">\ | ||
34. satır: | 38. satır: | ||
</pre> | </pre> | ||
Then, | Then, add this piece of code in the '''setup''' function of your JS file to add this template to each player panel: | ||
<pre> | <pre> | ||
48. satır: | 52. satır: | ||
</pre> | </pre> | ||
Often, you have to distinguish between the current player and other players. In this case, create another JS template (ex: jstpl_otherplayer_board) and use it where "player_id" is different than "this.player_id". | |||
16.46, 1 Şubat 2019 itibarı ile sayfanın şu anki hâli
Dependency
Don't forget to add "ebg/counter" as a dependency:
// in you game js define([ "dojo","dojo/_base/declare", "ebg/core/gamegui", "ebg/counter" /// <==== HERE],
Setup a counter
player.handSizeCounter = new ebg.counter(); player.handSizeCounter.create('hand_size_player_' + player_id);
Update counter
player.handSizeCounter.setValue(player.handSize);
Players panels
Adding stuff to player's panel
First, create a new JS template string in your template (tpl) file.
From the Gomoku example:
var jstpl_player_board = '\<div class="cp_board">\ <div id="stoneicon_p${id}" class="gmk_stoneicon gmk_stoneicon_${color}"></div><span id="stonecount_p${id}">0</span>\ </div>';
Then, add this piece of code in the setup function of your JS file to add this template to each player panel:
// Setting up player boards for( var player_id in gamedatas.players ) { var player = gamedatas.players[player_id]; // Setting up players boards if needed var player_board_div = $('player_board_'+player_id); dojo.place( this.format_block('jstpl_player_board', player ), player_board_div ); }
Often, you have to distinguish between the current player and other players. In this case, create another JS template (ex: jstpl_otherplayer_board) and use it where "player_id" is different than "this.player_id".