Maxim Sokhatsky 11 лет назад
Родитель
Сommit
65d0e5ec1d

+ 6 - 1
apps/face/src/okey.erl

@@ -6,7 +6,12 @@
 -include_lib("avz/include/avz.hrl").
 -include_lib("kvs/include/user.hrl").
 
--define(GAMEID, 1000001).
+-define(GAMEID, game_form()).
+
+game_form() ->
+    case wf:qs(<<"game">>) of
+        undefined -> 1000001;
+        X -> wf:to_integer(X) end.
 
 -record(player, {id, label, info, take, discard, history = []}).
 

+ 2 - 1
apps/server/include/game_okey.hrl

@@ -189,7 +189,8 @@
          }).
 
 -record(okey_round_ended, {
-          good_shot         :: boolean(),
+%          good_shot         :: boolean(),
+          round,
           reason            :: atom(),
           results           :: #'OkeyGameResults'{},
           next_action       :: atom() | binary()

+ 5 - 1
apps/server/src/modules/standalone.erl

@@ -22,6 +22,7 @@
 %% Include files
 %% --------------------------------------------------------------------
 -include_lib("server/include/basic_types.hrl").
+-include_lib("kvs/include/user.hrl").
 -include_lib("db/include/table.hrl").
 -include_lib("db/include/scoring.hrl").
 -include_lib("db/include/transaction.hrl").
@@ -1018,7 +1019,10 @@ prepare_ends_note_points(SeriesResult, Points, Players) ->
 prepare_users_prize_points(Points, Players) ->
     [{user_id_to_string(get_user_id(PlayerId, Players)), K, G} || {PlayerId, K, G} <- Points].
 
-is_paid(UserId) -> nsm_accounts:user_paid(UserId).
+is_paid(UserId) -> 
+    case kvs:get(user,UserId) of
+        {ok,#user{status=paid}} -> true;
+        _ -> false end.
 
 deduct_quota(GameId, GameType, GameMode, Amount, MulFactor, UsersIds) ->
     RealAmount = Amount * MulFactor,

+ 10 - 5
apps/server/src/okey/game_okey_table.erl

@@ -1292,6 +1292,7 @@ round_results(
         tournament_type=GameKind,
         game_mode=GameMode,
         speed=Speed,
+        cur_round=Round,
         rounds=Rounds,
         game_id=GameId,
         players=Players}) ->
@@ -1329,6 +1330,7 @@ round_results(
     end || SeatNum <- lists:seq(1, ?SEATS_NUM)],
 
     #okey_round_ended{
+        round = Round,
         reason = Reason,
         results = Results,
         next_action = next_round}.
@@ -1337,11 +1339,14 @@ create_okey_series_ended(Results, Players, Confirm,
     #okey_state{tournament_type=GameKind,game_mode=GameMode,speed=Speed,rounds=Rounds}=GameState) ->
     {Date,Time} = calendar:local_time(),
     [begin
-        #player{user_id = UserId} = fetch_player(PlayerId, Players),
-        Event = #series_event{result=Status,user=UserId,date=Date,time=Time,score=Score,
-            speed=Speed,rounds=Rounds,feed_id={GameMode,Speed,Rounds,UserId},
-            id=game_log:timestamp()},
-        game_log:series_event(UserId,Event,GameState)
+        #player{user_id = UserId,is_bot=IsBot} = fetch_player(PlayerId, Players),
+        case IsBot of
+            false ->
+                Event = #series_event{result=Status,user=UserId,date=Date,time=Time,score=Score,
+                    speed=Speed,rounds=Rounds,feed_id={GameMode,Speed,Rounds,UserId},
+                    id=game_log:timestamp()},
+                game_log:series_event(UserId,Event,GameState);
+            _ -> skip end
     end || {PlayerId, Position, Score, Status} <- Results],
     #okey_series_ended{standings = Results}.
 

+ 2 - 2
apps/server/src/sup/okey_sup.erl

@@ -46,7 +46,7 @@ okey_standalone_specs(GamesNum, VirtUsersPerTable) ->
                                       {set_timeout, infinity},
                                       {speed, fast},
                                       {game_type, standard},
-                                      {rounds, 10},
+                                      {rounds, 1},
                                       {reveal_confirmation, true},
                                       {next_series_confirmation, no_exit},
                                       {pause_mode, normal},
@@ -54,7 +54,7 @@ okey_standalone_specs(GamesNum, VirtUsersPerTable) ->
                                       {gosterge_finish_allowed, undefined}
                                      ],
                        CommonParams = [{speed, fast},
-                                       {rounds,10},
+                                       {rounds,1},
                                        {double_points, 1},
                                        {game_mode,standard},
                                        {slang, false},