This is a documentation for Board Game Arena: play board games online !
Game interface logic (yourgamename.js)
Jump to navigation
Jump to search
Client side (Javascript functions)
- this.player_id
- Id of the player on whose browser the code is running.
- this.isSpectator
- Flag set to true if the user at the table is a spectator (not a player).
- this.gamedatas
- Contains your initial set of datas to init the game, created at game start or game refresh (F5)
- You can update it as needed to keep an up to date reference of the game on the client side.
- slideToObject
- function( mobile_obj, target_obj, duration, delay )
- Return an dojo.fx animation that is sliding a DOM object from its current position over another one
- Animate a slide of the DOM object referred to by domNodeToSlide from its current position to the xpos, ypos relative to the object referred to by domNodeToSlideTo.
- slideToObjectPos
- function( mobile_obj, target_obj, target_x, target_y, duration, delay )
- Return an dojo.fx animation that is sliding a DOM object from its current position over another one at the given coordinates relative to the target object.
- updateCounters(counters)
- Useful for updating game counters in the player panel (such as resources).
- 'counters' arg is an associative array [counter_name_value => [ 'counter_name' => counter_name_value, 'counter_value' => counter_value_value], ... ]
- All counters must be referenced in this.gamedatas.counters and will be updated.
- DOM objects referenced by 'counter_name' will have their innerHTML updated with 'counter_value'.
- addTooltip( node, _( helpString ), _( actionString ), delay );
- Add a simple text tooltip to the DOM node. Only one of 'helpString' or 'actionString' must be used. _() must be used for the text to be marked for translation.
- addTooltipHtml( node, html, delay );
- Add an HTML tooltip to the DOM node (for more elaborate content such as presenting a bigger version of a card).
- addTooltipToClass( cssClass, _( helpString ), _( actionString ), delay );
- Add a simple text tooltip to all the DOM nodes set with this cssClass. Only one of 'helpString' or 'actionString' must be used. _() must be used for the text to be marked for translation.
- NB: all concerned nodes must have IDs to get tooltips
- addTooltipHtmlToClass( cssClass, html, delay );
- Add an HTML tooltip to to all the DOM nodes set with this cssClass (for more elaborate content such as presenting a bigger version of a card).
- NB: all concerned nodes must have IDs to get tooltips
- addEventToClass
- function( cssClassName, eventName, functionName )
- Same as dojo.connect(), but for all the nodes set with the specified cssClassName
- addStyleToClass
- function( cssClassName, cssProperty, propertyValue )
- Same as dojo.style(), but for all the nodes set with the specified cssClassName
- isCurrentPlayerActive()
- Returns true if the player on whose browser the code is running is currently active (it's his turn to play)
- checkAction
- function( action, nomessage )
- Check if player can do the specified action by taking into account: _ current game state & _ interface locking
- return true if action is authorized
- return false and display an error message if not (display no message if nomessage is specified)
- showMessage
- function( msg, type )
- Show an information message during a few seconds at the top of the page
- Type can be 'error' or 'info'
- this.scoreCtrl[ player_id ].incValue( score_delta );
- Adds score_delta (positive or negative integer) to the current score value for player