This is a documentation for Board Game Arena: play board games online !

Game interface logic (yourgamename.js)

From Board Game Arena
Revision as of 11:16, 5 January 2013 by Sourisdudesert (talk | contribs) (Created page with "== 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 t...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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