Цитата:
Цитата:
еще так можно накодить: - он может выбрать карту; - ставит/делает ставку; - если оба выбора сделаны кнопка "Играть" становится активной; - пользователь может менять карту; - убавлять/менять ставку; - соответственно "Играть" тоже должна менять статус "Активна/не активна". Закомментированные методы для примере в зависимости от реальных потребностей. var game = { _players: [], addPlayer: function() { this._players.push( new Player() ); }, start: function() { // start game // some init } }; function Player() { this.card = null; this.bet = null; } Player.prototype = { // addCard: function() { // }, changeCard: function() { game.buttons.play.updateState( this ); }, // removeCard: function() { // }, makeBet: function() { game.buttons.play.updateState( this ); }, // changeBet: function() { // }, // removeBet: function() { // } }; game.buttons = { play: { updateState: function( player ) { if ( player.card && player.bet ) { // some action return; } } } }; Цитата:
- есть игра, куда можно добавить игрока; - игрок, у которого есть карта и ставка, а также методы их (карту и ставку) меняющие; - есть кнопки, в частности кнопка играть (play), у которой имеется метод "обновить состояние" (updateState), который опирается на текущее состояние карты и ставки игрока, и в зависимости от этого меняет свое (кнопки) вкл/выкл. Т.е. все то, что ты описал :) |
Ха)))
Я переживу без плюсика )) А вот хороший паттерн обижать ненадо. Пример работы, http://www.z254505.infobox.ru/cardGame.html исходник http://www.z254505.infobox.ru/cardGame.zip upd: 25го исправлены небольшие недостатки в примере, вроде возможности нажать на невидимую кнопку game. |
Курю ваши примеры второй день - ооочень абстрактно пока для меня, но я настойчивый)
|
Часовой пояс GMT +3, время: 15:35. |