28#ifndef GROOVIE_LOGIC_PENTE_H
29#define GROOVIE_LOGIC_PENTE_H
31#include "common/random.h"
32#include "common/system.h"
40struct pentePlayerTable;
49 void animateCapturesCheckWinner(
byte *vars);
50 void opQueryPiece(
byte *vars);
52 void addLine(
int x,
int y,
int linesCounter);
53 void buildLookupTable();
55 void penteInit(uint width, uint height, uint length);
56 int &getPlayerTable(
bool staufTurn, pentePlayerTable *&pt);
57 void scoreLine(uint16 lineIndex,
bool isStaufTurn,
bool revert);
58 void calcTouchingPieces(
byte moveX,
byte moveY,
bool revert);
59 void updateScore(
byte x,
byte y,
bool whose_turn);
60 void revertScore(
byte x,
byte y);
61 byte scoreCaptureSingle(
byte x,
byte y,
int slopeX,
int slopeY);
62 uint scoreCapture(
byte x,
byte y);
63 void animateCapture(
short move,
byte *bitMaskG,
short *outCapture1,
short *outCapture2);
64 void revertCapture(
byte x,
byte y,
byte y2);
65 int scoreMoveAndRevert(
byte x,
byte y,
char depth,
int parentScore,
bool &gameOver);
66 int scoreMoveAndRevert(
byte x,
byte y,
char depth,
int parentScore);
67 int aiRecurseTail(
int parentScore);
68 int aiRecurse(
char depth,
int parentScore);
69 uint16 aiGetBestMove(
byte depth);
72 void testRandomGame(uint32 seed);
76 byte _animateCapturesBitMask;
78 short _nextCapturedSpot;
Out move(In first, In last, Out dst)
Definition: algorithm.h:109