LPMUD/
LPMUD/BIN/
LPMUD/DOC/
LPMUD/MUDLIB/
LPMUD/MUDLIB/BANISH/
LPMUD/MUDLIB/D/
LPMUD/MUDLIB/DOC/
LPMUD/MUDLIB/DOC/DOMAINS/
LPMUD/MUDLIB/DOC/EFUN/
LPMUD/MUDLIB/DOC/EXAMPLES/
LPMUD/MUDLIB/DOC/EXAMPLES/ARMOUR/
LPMUD/MUDLIB/DOC/EXAMPLES/CONTAIN/
LPMUD/MUDLIB/DOC/EXAMPLES/FOOD/
LPMUD/MUDLIB/DOC/EXAMPLES/MAGIC/
LPMUD/MUDLIB/DOC/EXAMPLES/MONSTER/
LPMUD/MUDLIB/DOC/EXAMPLES/ROOM/
LPMUD/MUDLIB/DOC/EXAMPLES/WEAPONS/
LPMUD/MUDLIB/FUNCTION/
LPMUD/MUDLIB/INCLUDE/
LPMUD/MUDLIB/INCLUDE/FN_SPECS/
LPMUD/MUDLIB/INCLUDE/SKILLS/
LPMUD/MUDLIB/INFO/
LPMUD/MUDLIB/INHERIT/BASE/
LPMUD/MUDLIB/LOG/
LPMUD/MUDLIB/MANUALS/312/
LPMUD/MUDLIB/NEWS/
LPMUD/MUDLIB/OBJ/PARTY/
LPMUD/MUDLIB/OBJ/SHADOWS/
LPMUD/MUDLIB/OBJECTS/COMPONEN/
LPMUD/MUDLIB/OPEN/
LPMUD/MUDLIB/OPEN/LIBRARY/
LPMUD/MUDLIB/OPEN/PARTY/
LPMUD/MUDLIB/PLAYERS/
LPMUD/MUDLIB/PLAYERS/ZIL/
LPMUD/MUDLIB/ROOM/
LPMUD/MUDLIB/ROOM/CITY/ARENA/
LPMUD/MUDLIB/ROOM/CITY/CREATOR/
LPMUD/MUDLIB/ROOM/CITY/GARDEN/MONST/
LPMUD/MUDLIB/ROOM/CITY/OBJ/
LPMUD/MUDLIB/ROOM/CITY/PUB/
LPMUD/MUDLIB/ROOM/CITY/SHOP/
LPMUD/MUDLIB/ROOM/DEATH/
LPMUD/MUDLIB/ROOM/REGISTRY/
LPMUD/MUDLIB/SECURE/
LPMUD/MUDLIB/SECURE/UDP_CMD_/
LPMUD/MUDLIB/SKILLS/
LPMUD/MUDLIB/SKILLS/FIGHTER/
LPMUD/MUDLIB/SKILLS/THIEF/
LPMUD/MUDLIB/USR/
LPMUD/MUDLIB/USR/CREATORS/
LPMUD/MUDLIB/USR/PLAYERS/
/* goodberry */

inherit "inherit/food";

reset(arg) {
  ::reset(arg);
  if(arg) return;
  set_name("goodberry");
  set_alias("berry");
  set_short("Goodberry");
  set_long("This small berry is glowing red. It looks really juicy.\n"+ 
           "You can't wait to eat it.\n");
  set_weight(1);
  set_strength(3 * (random(4)+1));
  /* 3 - 12 hp of healing */
}

init(){
  ::init();
  add_action("put","put");
}

status put(string str){
  object ob;
  string bottle;
  int strength;

  if(str && sscanf(str,"goodberry in %s",bottle) == 1){
    if((ob = present(bottle, this_player()))) {
      if(ob->query_alco_drink() || ob->query_soft_drink()){
        write("The berry starts to ferment!\n");
        if(ob->query_full()){
          write("You fortify the "+(string)ob->query_name()+"!\n");
          say((string)this_player()->query_name()+" adds a berry to the "+
              (string)ob->query_name()+"!\n");
          strength = (int)ob->query_strength();
        }
        destruct(ob);
        ob = clone_object("inherit/alco_drink");
        ob->set_name("goodberry liquor");
        ob->set_alt_name("liquor");
        ob->set_short("Goodberry Liquor");
        ob->set_long("This is an attempt at moonshining some "+
                     "Berry Liquor!\n");
        ob->set_strength(strength+8+random(8));
        move_object(ob,this_player());
        destruct(this_object());
        return 1;
      }        
    }
  }
  return 0;
}

query_domain_safe() { return 1; }


status cast_spell(object caster,object target,object prev,int dmg) {
  write("You change the berry into a Goodberry.\n");  
  say("The berry "+ caster->query_name() 
     +" is holding begins to glow softly.\n");   
  return 1;  
}  

/* Native Mode Move */

#include <move.h>