|
@@ -4,7 +4,7 @@
|
|
|
-include_lib("n2o/include/wf.hrl").
|
|
|
-include("../../server/include/requests.hrl").
|
|
|
-include("../../server/include/settings.hrl").
|
|
|
--jsmacro([take/2,attach/1,join/1,discard/3,player_info/2,reveal/3]).
|
|
|
+-jsmacro([take/2,attach/1,join/1,discard/3,player_info/2,reveal/4]).
|
|
|
|
|
|
join(Game) ->
|
|
|
ws:send(bert:encodebuf(bert:tuple(
|
|
@@ -36,19 +36,15 @@ player_info(User,GameModule) ->
|
|
|
bert:atom('client'),
|
|
|
bert:tuple(bert:atom("get_player_stats"),bert:binary(User),bert:atom(GameModule))))).
|
|
|
|
|
|
-reveal(GameId, {CDiscarded, VDiscarded}, Hand) ->
|
|
|
- wf:send(
|
|
|
- bert:encodebuf(
|
|
|
- bert:atom("client"),
|
|
|
- ber:tuple(
|
|
|
- bert:atom("game_action"),
|
|
|
- GameId,
|
|
|
- bert:atom("okey_reveal"),
|
|
|
- [{discarded, bert:tuple(bert:atom("OkeyPieces"), CDiscarded, VDiscarded)},
|
|
|
- {hand, [[case OkeyPiece of null -> bert:atom("null"); {C, V} -> bert:tuple(bert:atom("OkeyPiece"), C, V) end || OkeyPiece <- Hand]]}]
|
|
|
- )
|
|
|
- )
|
|
|
- ).
|
|
|
+reveal(GameId, Color, Value, Hand) ->
|
|
|
+ ws:send(bert:encodebuf(bert:tuple(
|
|
|
+ bert:atom('client'),
|
|
|
+ bert:tuple(
|
|
|
+ bert:atom("game_action"),
|
|
|
+ GameId,
|
|
|
+ bert:atom("okey_reveal"),
|
|
|
+ [{discarded, bert:tuple(bert:atom("OkeyPiece"), Color, Value)},
|
|
|
+ {hand, Hand}])))).
|
|
|
|
|
|
redraw_tiles([{Tile, _}| _ ] = TilesList) ->
|
|
|
wf:update(discard_combo,
|
|
@@ -216,11 +212,16 @@ event(reveal) ->
|
|
|
TilesList = get(game_okey_tiles),
|
|
|
Discarded = wf:q(discard_combo),
|
|
|
|
|
|
- case lists:keyfind(erlang:list_to_binary(Discarded), 1, TilesList) of
|
|
|
+ case lists:keyfind(wf:to_binary(Discarded), 1, TilesList) of
|
|
|
{_, {CDiscarded, VDiscarded} = Key} ->
|
|
|
- Hand = [{erlang:integer_to_list(C), erlang:integer_to_list(V)} || {_, {C, V}} <- lists:keydelete(Key, 2, TilesList)],
|
|
|
- wf:info("+++ ~p ~p", [CDiscarded, VDiscarded]),
|
|
|
- wf:info(reveal("1000001", {erlang:integer_to_list(CDiscarded), erlang:integer_to_list(VDiscarded)}, [null | Hand]));
|
|
|
+ Hand = [{C,V} || {_, {C, V}} <- lists:keydelete(Key, 2, TilesList)],
|
|
|
+ wf:info("Discarded: ~p ~p", [CDiscarded, VDiscarded]),
|
|
|
+ HandJS = "[[" ++ string:join([
|
|
|
+ wf:f("bert.tuple(bert.atom('OkeyPiece'), ~w, ~w)",[C,V])
|
|
|
+ || {C,V} <- Hand],",") ++ "],[]]",
|
|
|
+ RevealJS = reveal("1000001",wf:f("~p",[CDiscarded]),wf:f("~p",[VDiscarded]),HandJS),
|
|
|
+ wf:info("RevealJS: ~p",[lists:flatten(RevealJS)]),
|
|
|
+ wf:wire(RevealJS);
|
|
|
_ ->
|
|
|
wf:info("error discarded ~p", Discarded)
|
|
|
end;
|