-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathledernierpeuple.action.php
More file actions
154 lines (129 loc) · 4.44 KB
/
ledernierpeuple.action.php
File metadata and controls
154 lines (129 loc) · 4.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php
/**
*------
* BGA framework: © Gregory Isabelli <gisabelli@boardgamearena.com> & Emmanuel Colin <ecolin@boardgamearena.com>
* LeDernierPeuple implementation : © <Your name here> <Your email address here>
*
* This code has been produced on the BGA studio platform for use on http://boardgamearena.com.
* See http://en.boardgamearena.com/#!doc/Studio for more information.
* -----
*
* ledernierpeuple.action.php
*
* LeDernierPeuple main action entry point
*
*
* In this file, you are describing all the methods that can be called from your
* user interface logic (javascript).
*
* If you define a method "myAction" here, then you can call it from your javascript code with:
* this.ajaxcall( "/ledernierpeuple/ledernierpeuple/myAction.html", ...)
*
*/
class action_ledernierpeuple extends APP_GameAction
{
// Constructor: please do not modify
public function __default()
{
if( self::isArg( 'notifwindow') )
{
$this->view = "common_notifwindow";
$this->viewArgs['table'] = self::getArg( "table", AT_posint, true );
}
else
{
$this->view = "ledernierpeuple_ledernierpeuple";
self::trace( "Complete reinitialization of board game" );
}
}
// TODO: defines your action entry points there
/**
* Method calls when the player choose a card in the deck
*/
public function chooseCard(){
self::setAjaxMode();
$cardId = self::getArg( "cardId", AT_posint, true );
$playerId = self::getArg( "playerId", AT_posint, true );
$result = $this->game->chooseCard( $playerId, $cardId );
self::ajaxResponse();
}
/**
* Method calls when the player use the card he chose
*/
public function useCard(){
self::setAjaxMode();
$pawnId = self::getArg( "pawnId", AT_posint, true );
$tileId = self::getArg( "tileId", AT_posint, true );
$partial = self::getArg( "partial", AT_bool, true );
$result = $this->game->movePawn( $pawnId, $tileId, $partial );
self::ajaxResponse();
}
/**
* Method calls when the player choose to skip his turn
*/
public function skipTurn(){
self::setAjaxMode();
$result = $this->game->skipTurn();
self::ajaxResponse();
}
/**
* Method calls when the player choose a combination for an attack
*/
public function combinationChosen(){
self::setAjaxMode();
$pawnId = self::getArg( "pawnId", AT_posint, true );
$result = $this->game->combinationChosen($pawnId);
self::ajaxResponse();
}
/**
* Method calls when the player use the card he chose
*/
public function skipPowerCard(){
self::setAjaxMode();
$result = $this->game->skipPowerCard();
self::ajaxResponse();
}
/**
* Method calls when the player choose a card in the deck
*/
public function choosePowerCard(){
self::setAjaxMode();
$cardId = self::getArg( "cardId", AT_posint, true );
$playerId = self::getArg( "playerId", AT_posint, true );
$result = $this->game->choosePowerCard( $playerId, $cardId );
self::ajaxResponse();
}
/**
* Called when the player has chosen the targeted player affected by a power card
*/
public function chooseTarget(){
self::setAjaxMode();
$pawnId = self::getArg( "pawnId", AT_posint, true );
$result = $this->game->targetChosen($pawnId);
self::ajaxResponse();
}
/**
* Called when the player selected two pawns to switch with the power card Switch
*/
public function chooseSwitchedPawns(){
self::setAjaxMode();
$firstPawnId = self::getArg( "firstPawnId", AT_posint, true );
$secondPawnId = self::getArg( "secondPawnId", AT_posint, true );
$result = $this->game->switchPawns($firstPawnId, $secondPawnId);
self::ajaxResponse();
}
/*
Example:
public function myAction()
{
self::setAjaxMode();
// Retrieve arguments
// Note: these arguments correspond to what has been sent through the javascript "ajaxcall" method
$arg1 = self::getArg( "myArgument1", AT_posint, true );
$arg2 = self::getArg( "myArgument2", AT_posint, true );
// Then, call the appropriate method in your game logic, like "playCard" or "myAction"
$this->game->myAction( $arg1, $arg2 );
self::ajaxResponse( );
}
*/
}