Slot Machine (#520)(an instance of generic thing made by Calkins)VERB SOURCE CODE: pull:
if (this.location != player.location)
player:tell("You aren't close enough to play with ", this.name, ".");
return;
endif
q = $quota_utils:get_quota(player);
spin = abs(time()) % 11;
for i in [1..spin]
random(8);
endfor
cost = this.cost;
n = length(this.icons);
win = (cost * n) * n;
player:tell("The heavy metal level comes down with a resounding >>KA-CHUNK<<.");
player:tell("Pictures spin past the window and come to a stop one by one:");
suspend(1);
i1 = this.icons[random(n)];
player:tell(" ", i1);
suspend(1);
i2 = this.icons[random(n)];
player:tell(" ", i2);
suspend(1);
i3 = this.icons[random(n)];
player:tell(" ", i3);
if ((i1 == i2) && (i1 == i3))
if (i1 == "@boot")
this.location:announce_all("A klaxton blasts once from ", this.name, " and
", player.name, " cries out and collapses.");
$quota_utils:set_quota(player, q - cost);
boot_player(player);
player:tell("Have a nice day!");
else
this.location:announce_all("A bell rings on ", this.name, " and a lucky ",
player.name, " collects ", win, " bytes of new quota!");
player:tell("You scoop up your prize! You quota is now: ", q + win);
$quota_utils:set_quota(player, q + win);
endif
else
player:tell("The machine comes to a stop, having eaten ", cost, " bytes of your
quota.");
endif
.
PROPERTY DATA:       icons       cost |