rex_miniboard
Plugin, ACE table, Discussion thread
Dependence: One of them
Dependence: One of them
Introduction
A board-container to group chess and move them together.
A board-container to group chess and move them together.
Usage
Setup layout
User should put one of board-layout plugin
If the project has more then one kind of mini boards, and each kind of mini board has different board-layout, they need to assign board-layout object manually by "Action:Setup layout".
User should put one of board-layout plugin
- rex_board_squareTx - orthogonal/isometric/staggered layout
- rex_board_hexTx - hexagonal layout
If the project has more then one kind of mini boards, and each kind of mini board has different board-layout, they need to assign board-layout object manually by "Action:Setup layout".
Chess group
Sample capx
A mini board object is a chess group. It could be put on the main board (rex_board object).
Call "Action:Create chess" or "Action:Add chess" to add chess into this mini board (chess group). The parameters of Logic X, Logic Y, Logic Z is similar with rex_board plugin, but still have some differences.
Sample capx
A mini board object is a chess group. It could be put on the main board (rex_board object).
Call "Action:Create chess" or "Action:Add chess" to add chess into this mini board (chess group). The parameters of Logic X, Logic Y, Logic Z is similar with rex_board plugin, but still have some differences.
- This mini board will have a ( logic X, logic Y ) position when put it on the main board. The parameters of ( logic X, logic Y ) are the related logical position. It could be less then 0. For example,
If a chess is at ( -1, -1 ) in mini board, then put this mini board at ( 5, 5 ) on the main board, this chess will be put at ( 4, 4) at the end.
- Parameter of logic Z is the logical Z position when put on the main board, it could be 0 or other values.
Since one logical position only could have one chess, "Condition:On chess kicked" will be triggered when a chess has been added into a logical position which already occupied by other chess.
An chess instance only could be added into a mini board.
An chess instance only could be added into a mini board.
Destroy
All chess in this mini board will be destroyed when the mini board is destroyed.
All chess in this mini board will be destroyed when the mini board is destroyed.
Release chess
"Action:Release all chess" will release the reference of chess in this mini board. These chess will still exist.
"Action:Release all chess" will release the reference of chess in this mini board. These chess will still exist.
Put on the main board
Sample capx
Call "Action:Put" could put this mini board on the main board (i.e. add chess which are in mini board into main board) , if the put-able checking for all chess are return true. Put-able checking will be discussed later.
If the mini board had been put on a main board already, it will be put out from this main board, and put this mini board into the target main board.
If this mini board is at a main board. "Condition:On the board" will return true, and ( "Expression:LX", "Expression:LY" ) is the logical position of this mini board.
Sample capx
Call "Action:Put" could put this mini board on the main board (i.e. add chess which are in mini board into main board) , if the put-able checking for all chess are return true. Put-able checking will be discussed later.
If the mini board had been put on a main board already, it will be put out from this main board, and put this mini board into the target main board.
If this mini board is at a main board. "Condition:On the board" will return true, and ( "Expression:LX", "Expression:LY" ) is the logical position of this mini board.
Pull out from main board
Call "Action:Pull out" could put out this mini board from main board, i.e. remove the logical position of chess in this mini board.
Do nothing if this mini board is not on any main board.
Call "Action:Pull out" could put out this mini board from main board, i.e. remove the logical position of chess in this mini board.
Do nothing if this mini board is not on any main board.
Put-able checking
When call "Action:Put", it will check if all chess are "put-able" on the target main board, or user could check it by "Condition:Can put".
There are 3 kinds of check conditions.
When call "Action:Put", it will check if all chess are "put-able" on the target main board, or user could check it by "Condition:Can put".
There are 3 kinds of check conditions.
- None: always return true.
- Inside: it will check if the target logical position is inside the target main board.
- Empty: it will check if the target logical position is an empty cell. i.e. no other chess at this logical position.
- Putable: it will trigger "Condition:On put-able request" for each chess to check them at custom events. See the next section for more detail.
On put-able request
When put-able checking sets to "Putable", it will trigger "Condition:On put-able request" for each chess.
Use these expressions under "Condition:On put-able request" to do custom checking -
The result will be put-able for this mini board only if all chess are put-able.
When put-able checking sets to "Putable", it will trigger "Condition:On put-able request" for each chess.
Use these expressions under "Condition:On put-able request" to do custom checking -
- "Expression:RequestChessUID" is the UID of checking chess.
- ( "Expression:RequestLX" , "Expression:RequestLY" , "Expression:RequestLZ" ) is the target logical position of the main board.
The result will be put-able for this mini board only if all chess are put-able.
Triggers of request result
"Condition:On putting accepted" will be triggered when putting request accepted after called "Action:Put", otherwise "Condition:On putting rejected" will be triggered. Or get the request result by "Condition:Is putting accepted".
"Condition:On putting accepted" will be triggered when putting request accepted after called "Action:Put", otherwise "Condition:On putting rejected" will be triggered. Or get the request result by "Condition:Is putting accepted".
"Action:Put" -> "Condition:On putting accepted" , or
"Action:Put" -> "Condition:On putting rejected"
Pin chess
Chess in the mini board will be moved with the mini board, if "Pin mode" in properties table sets to "Yes".
Set "Pin mode" to "No" if user need to control the position of each chess manually,
Chess in the mini board will be moved with the mini board, if "Pin mode" in properties table sets to "Yes".
Set "Pin mode" to "No" if user need to control the position of each chess manually,
Logical and physical position
Get logical position of chess in the mini board by ( "Expression:UID2LX", "Expression:UID2LY", "Expression:UID2LZ" ).
Get physical position of chess by ( "Expression:UID2PX", "Expression:UID2PY" ).
These values will be valid if the chess is in the mini board.
Get logical position of chess in the mini board by ( "Expression:UID2LX", "Expression:UID2LY", "Expression:UID2LZ" ).
Get physical position of chess by ( "Expression:UID2PX", "Expression:UID2PY" ).
These values will be valid if the chess is in the mini board.
Layer
Call "Action:Move all to layer" to move this miniboard and all chess to another layer.
Call "Action:Move all to layer" to move this miniboard and all chess to another layer.
SOL
Pick chess which are in mini board
- "Condition:Pick chess", or "Action:Pick chess"
- "Condition:Pick all chess" or "Action:Pick all chess"
Pick mini board by chess
"Condition:Pick mini board" could be used to pick mini board by chess.
"Condition:Pick mini board" could be used to pick mini board by chess.
Color
"Color" in properties table is only used to identify the different mini board in layout editor. It will not be used in run-time.
"Color" in properties table is only used to identify the different mini board in layout editor. It will not be used in run-time.