Warning: session_start(): open(/var/lib/php/sessions/sess_ig3k3hfi5qplpofrg971o57krd, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
// The "Maker & Taker" Game
sclass MakerAndTakerGame {
Bool makerSaysUp; // null: We're just starting
// true: Price has gone 1 step up since last round
// false: Price has gone 1 step down
int takersCurrentBet; // +1 to bet long, -1 to bet short, +2 to bet extra long etc, 0 to stop betting for now
int takersScore; // Sum of taker's wins + losses
bool takersTurn = true; // Taker always starts
int roundsPlayed; // How many rounds (a round is one take and one make) we had
void step {
if (takersTurn) take(); else make();
}
// This defines the crypto's movement over time.
// true = one step up, false = one step down. Multiple steps at once
// ("cell skips") are anomalies and are not supported here.
swappable bool nextCryptoMove() { fail("Put something here"); }
void make {
makerSaysUp = nextMoveIsUp();
takersScore += takersCurrentBet*(makerSaysUp ? 1 : -1);
++roundsPlayed;
takersTurn = true;
}
// Taker's secret sauceee
swappable void magicJuice {}
void take {
// Do strategy XYZ super-smart mega calculation stuff.
// (you can, but don't have to, make use of the value of makerSaysUp.)
// Set takersCurrentBet to a really smart value.
// If you're done betting, just say takersCurrentBet = 0 and you're out
// immediately.
magicJuice();
takersTurn = false;
}
}