bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-gnubg] bug 4705: cannot take/drop after set matchid


From: Jim Segrave
Subject: Re: [Bug-gnubg] bug 4705: cannot take/drop after set matchid
Date: Sun, 17 Aug 2003 20:33:59 +0200
User-agent: Mutt/1.4.1i

On Sun 17 Aug 2003 (19:53 +0200), Martin Janke wrote:
> Hi,
> 
> when setting up a match which is in "double offered" state (like "set
> matchid MBngAAAAAAAA"), it is not possible to continue with "take" or
> "drop". (see also in bug tracker).
> 
> Without knowing much about programming and C I tried to have a look
> myself. Here's how far I got:
> 
> - CommandTake calls LinkToDouble, which returns Null if there's no
> previous record of type MOVE_DOUBLE. In this case (after SetMachtID),
> the previous record is of type MOVE_SETBOARD, because SetMatchID calls
> CommandSetBoard. Hence LinkToDouble returns Null and CommandTake also
> returns before doing its job.
> 
> Hope that wasn't completely wrong and that it helps.

That's more or less it in a nutshell. Gnubg's internal structure for a
game consists of a few record types - gameinfo to describe a game,
setdice, setboard, setcube to create initial positions, move, double,
take, and resign. Take records can only exist as part of a pair, there
must be a double record to go with it. So you can't set up a position
with the cube being offered, you can only set up the position where
the opponent is about to double, start the match and manually play a
double for the opponent. Changing this would be a major overhaul at a
very low level in gnubg.

-- 
Jim Segrave           address@hidden





reply via email to

[Prev in Thread] Current Thread [Next in Thread]