From 7ce72410087ca1e11841430bdb397ae95319ee47 Mon Sep 17 00:00:00 2001 From: Andy Spencer Date: Mon, 2 Feb 2015 17:59:32 +0000 Subject: [PATCH] Add .last command to show previous trick --- spades.awk | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/spades.awk b/spades.awk index 50952f1..fe39906 100644 --- a/spades.awk +++ b/spades.awk @@ -33,6 +33,7 @@ function sp_reset(type) if (type >= 1) { sp_state = "bid" # {new,join,bid,pass,play} sp_broken = 0 # Whether spades are broken + sp_last = "" # The result of the last hand delete sp_hands # [p] Each players cards delete sp_looked # [i] Whether a player has looked a their cards delete sp_bids # [i] Each players bid @@ -83,6 +84,7 @@ function sp_save(file, game) # Per round game["state"] = sp_state; game["broken"] = sp_broken; + game["last"] = sp_last; json_copy(game, "looked", sp_looked); json_copy(game, "bids", sp_bids); json_copy(game, "nil", sp_nil); @@ -123,6 +125,7 @@ function sp_load(file, game) # Per round sp_state = game["state"]; sp_broken = game["broken"]; + sp_last = game["last"]; sp_acopy(sp_looked, game["looked"]); sp_acopy(sp_bids, game["bids"]); sp_acopy(sp_nil, game["nil"]); @@ -334,6 +337,7 @@ function sp_play(card, winner, pi) sp_tricks[pi]++ say(sp_pile[winner] " wins with " sp_pretty(winner, FROM) \ " (" sp_pretty(sp_piles, FROM) ")") + sp_last = sp_pile[winner] " took " sp_piles sp_next(sp_pile[winner]) sp_reset(0) } @@ -428,6 +432,7 @@ AUTH == OWNER && say(".bid [n] -- bid for tricks") say(".pass [card] -- pass a card to your partner") say(".play [card] -- play a card") + say(".last -- show who took the previous trick") say(".turn -- check whose turn it is") say(".bids -- check what everyone bid") say(".tricks -- check how many trick have been taken") @@ -735,6 +740,13 @@ sp_state == "play" && } } +/^\.last/ && sp_state == "play" { + if (!sp_last) + say("No tricks have been taken!"); + else + say(sp_pretty(sp_last, FROM)); +} + /^\.bids/ && sp_state == "bid" || /^\.turn/ && sp_state ~ "(bid|pass|play)" { _bids = sp_bidders() -- 2.43.2