Constant Story "Joe's Bar and Grill"; Constant Headline "^Object Creation/Destruction Etc^^"; Replace DrinkSub; Include "Parser"; Include "Verblib"; Include "Grammar"; [Initialise x y; while (x <11) {x++; y=Beer.create(); move y to Bar;}; location = Inside_Bar; print "^Welcome to . . . ^^";]; Class Beer (10) with name 'beverage' 'drink' 'drinks//p' 'beer' 'beers//p', short_name "bottle of beer", description "A bottle of the extremely repulsive Budshmeizer beer aka ~Bud~ or ~Shmeizer~.", plural "beers", before [; smell: "You nearly gag from the smell."; taste: "You force yourself to swallow the small amount you tasted since there's nowhere to spit it out."; drink: if (Budbeer.num==0) "The beers are all gone."; BudBeer.num--; beer.destroy(self); "You drink the Bud and feel like puking your guts out.^ You throw the empty bottle out the window of the bar.^ There are " ,BudBeer.num, " beers left on the bar."; throw: if (child(player)==0) "But you ain't got the beer."; BudBeer.num--; Beer.destroy(self); print "You throw the bottle into the barroom where the glass smashes into a zillion pieces and any beer dregs left inside it evaporate instantly. There are ",BudBeer.num, " bottles of beer left on the bar."; puton: if (child(player)==0) "But you ain't got the beer."; if (second == Bar) "Drink or throw what you have then take another bottle if there are any left."; drop: if (child(player)==0) "But you ain't got the beer."; "Drink or throw what you have then take another bottle if there are any left.";], ; Object Inside_Bar "Inside Joe's Bar" with description "You are inside Joe's Bar and Grill. All around you multitudes of people are eating drinking swearing, fighting, expelling gas, and belching.", has light ; Object -> Bar "Bar" with name "bar", before [; examine: if(Budbeer.num >1) "This long mahogany bar circles around 3 of the 4 walls in the establishment and has room for hundreds of patrons and currently has ",BudBeer.num," bottles of beer on it."; if (Budbeer.num==1) "This long mahogany bar circles around 3 of the 4 walls in the establishment and has room for hundreds of patrons and currently has 1 bottle of beer left on it."; if (Budbeer.num==0) "This long mahogany bar circles around 3 of the 4 walls in the establishment and has room for hundreds of patrons and currently has nothing on it.";], has static supporter ; Beer BudBeer "BudShmeizer" with name 'beer' 'beers' 'drink' 'drinks' 'Bud' 'Budshmeizer' 'bottle' 'bottles' 'Shmeizer', num 10, ; [ThrowSub; if (noun ==Bar) "Don't be ridiculous you aint' Soupedup Man.";]; [ThrowInSub; "ThrowInSub here.";]; [DrinkSub; if (~~(noun ofclass Beer)) "You can't drink that.";];