tReformat playerboard and set income value from JS - hadarawgs - Hadara adaptation for boardgamearena.com
 (HTM) git clone git://git.z3bra.org/hadarawgs.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) LICENSE
       ---
 (DIR) commit 88b19b09ed37ca88f2c9fbaa31a78296bc7e1cf8
 (DIR) parent fa7bd95aa6954d61d3e305f83c69d6e96a58ab7a
 (HTM) Author: Willy Goiffon <dev@z3bra.org>
       Date:   Sun,  1 Mar 2020 15:55:43 +0100
       
       Reformat playerboard and set income value from JS
       
       Diffstat:
         M hadarawgs.css                       |      12 +++++++-----
         M hadarawgs.game.php                  |       9 ++++-----
         M hadarawgs.js                        |       5 +++++
         M hadarawgs_hadarawgs.tpl             |      22 +++++++++-------------
       
       4 files changed, 25 insertions(+), 23 deletions(-)
       ---
 (DIR) diff --git a/hadarawgs.css b/hadarawgs.css
       t@@ -23,16 +23,18 @@
        .icon_pegasus::after { content: " - pegasus"; }
        .icon_scarab::after  { content: " - scarab";  }
        
       -.resources-container {
       +.playerboard_resources {
                text-align: center;
                font-weight: bold;
                display: inline-block;
        }
        
       -.resource-income   { padding: 2px; background-color: #ffff66; }
       -.resource-military { padding: 2px; background-color: #ffaaaa; }
       -.resource-culture  { padding: 2px; background-color: #aaaaff; }
       -.resource-food     { padding: 2px; background-color: #aaffaa; }
       +.playerboard_income   { padding: 2px; background-color: #ffff66; }
       +.playerboard_military { padding: 2px; background-color: #ffaaaa; }
       +.playerboard_culture  { padding: 2px; background-color: #aaaaff; }
       +.playerboard_food     { padding: 2px; background-color: #aaffaa; }
       +
       +.smalltext { font-size: 80%; }
        
        /*
            Example of CSS sprites (a black token and a white token, 20x20px each, embedded in the same "tokens.png" 40x20px image):
 (DIR) diff --git a/hadarawgs.game.php b/hadarawgs.game.php
       t@@ -94,7 +94,7 @@ class hadarawgs extends Table
        
                foreach( $players as $player_id => $player ) {
                        $animal = array_shift($default_animals);
       -                $values[] = "( '$player_id' , '$animal' )";
       +                $values[] = "( $player_id , '$animal' )";
                }
        
                $sql .= implode( $values, ',' );
       t@@ -127,9 +127,8 @@ class hadarawgs extends Table
                $result['players'] = self::getCollectionFromDb( $sql );
        
                // TODO: Gather all information about current game situation (visible by player $current_player_id).
       -        foreach ($result['players'] as $player) {
       -                $player['board'] = $this->getPlayerBoard($player['id']);
       -        }
       +        $sql = "SELECT * FROM playerboard";
       +        $result['boards'] = self::getCollectionFromDb( $sql );
          
                return $result;
            }
       t@@ -161,7 +160,7 @@ class hadarawgs extends Table
            */
        
                function getPlayerBoard($player_id) {
       -                $sql = "SELECT * FROM playerboard where id = $player_id";
       +                $sql = "SELECT id, animal, income, income_max FROM playerboard where id = $player_id";
                        return self::getCollectionFromDb($sql);
                }
        
 (DIR) diff --git a/hadarawgs.js b/hadarawgs.js
       t@@ -51,9 +51,14 @@ function (dojo, declare) {
                    // Setting up player boards
                    for( var player_id in gamedatas.players )
                    {
       +                var el;
                        var player = gamedatas.players[player_id];
                                 
                        // TODO: Setting up players boards if needed
       +                el = document.getElementById('income_p' + player_id);
       +                el.innerHTML = gamedatas.boards[player_id]['income'];
       +                el = document.getElementById('income_max_p' + player_id);
       +                el.innerHTML = gamedatas.boards[player_id]['income_max'];
                    }
                    
                    // TODO: Set up your game interface here, according to "gamedatas"
 (DIR) diff --git a/hadarawgs_hadarawgs.tpl b/hadarawgs_hadarawgs.tpl
       t@@ -5,22 +5,18 @@
                <div id="board_p{PLAYER_ID}" class="playerboard whiteblock">
                        <h3 style="color:#{PLAYER_COLOR}">{PLAYER_NAME}</h3>
                        <div class="icon_{PLAYER_ANIMAL}">animal</div>
       -                <div class="resources-container">
       -                        <div class="resource-income">
       -                                <span class="resource-income-icon token token_income"></span>
       -                                <span class="resource-income-value">0/0</span>
       +                <div class="playerboard_resources">
       +                        <div class="playerboard_income">
       +                                <span id="income_p{PLAYER_ID}">-</span><span class="smalltext">/<span id="income_max_p{PLAYER_ID}">-</span></span>
                                </div>
       -                        <div class="resource-military">
       -                                <span class="resource-military-icon token"></span>
       -                                <span class="resource-military-value">0/0</span>
       +                        <div class="playerboard_military">
       +                                <span id="military_p{PLAYER_ID}">-</span><span class="smalltext">/<span id="military_max_p{PLAYER_ID}">-</span></span>
                                </div>
       -                        <div class="resource-culture">
       -                                <span class="resource-culture-icon token"></span>
       -                                <span class="resource-culture-value">0/0</span>
       +                        <div class="playerboard_culture">
       +                                <span id="culture_p{PLAYER_ID}">-</span><span class="smalltext">/<span id="culture_max_p{PLAYER_ID}">-</span></span>
                                </div>
       -                        <div class="resource-food">
       -                                <span class="resource-food-icon token"></span>
       -                                <span class="resource-food-value">0/0</span>
       +                        <div class="playerboard_food">
       +                                <span id="food_p{PLAYER_ID}">-</span><span class="smalltext">/<span id="food_max_p{PLAYER_ID}">-</span></span>
                                </div>
                        </div>
                </div>