!---------------------------------------------------------------------------- !********************************* MISCELLANOUS OR UNCATEGORIZED MESSAGES #1 !---------------------------------------------------------------------------- routine PrintText06(val1,val2) { select val1 case 1 { !Usage: (6,1,obj) !obj can be left off, when needed. ! Let player know that we're redirecting their request. Message(&parse,2) !"(assuming you mean...)" print " to "; VerbWord; if (val2) : print " "; The(val2); ")" else: ")" !Just end the sentence. } case 2 { !Usage: (6,2,text) !This is like (6,1,obj) except text gets printed. Message(&parse,2) !"(assuming you mean...)" print " to "; VerbWord; " "; val2; ")" } case 3 { !Custom messages when CLOSING something. select val2 case barn_doors { !Usage: (6,3,obj) if (location = house) { "You walk over to the big barn doors and pull them closed." } else { "You push the big barn doors closed." } } case ornate_door, simple_door { !Usage: (6,3,obj) "It's already closing"; rnd = random(2) select rnd case 1: " on its own." case 2: ", without your help." } } case 4 { !Usage: (6,4,obj) !Print the implied "(into the object)" print "(into "; The(val2); ")" } case 5 { !Usage: (6,5) !We put the wagon wheel back on the wagon. "You heft the wheel above your head, steady it, and let it slide down onto the end of the exposed axle. With a twist of its locking dowel, the wheel is stable and secured." } case 6 { !Usage: (6,6,obj) !Text for auto-open: "(Opening the (val2) first)" !Note that we also have a version (and then opening...) !It's in PrintMessage 6,17,obj -or- 6,19,obj. if (location = orchard) and (val2 = barn_southexit) { print "(turning the pulley to open the panel first)" } else { print "(opening "; The(val2); " first)" } } case 7 { select val2 case 1 { !Usage: (6,7,1) !Player pours grain into the feeding trough. The bull is happy. "At a point distanced enough from the bull to avoid potential mishaps, you approach "; print The(trough); ". You rip open the top of the burlap bag, "; "tip it over, and pour out the grain.\n" "The bull takes notice, and you back away. When it begins to feed on the grain, it seems far more content." } case 2 { !Usage: (6,7,2) !User searches or looks inside the trough. !This is also called at the end of looking *at* the trough. SetListCount(trough) if (grain in trough) { "Some grain has been poured into one end of the trough."; if (list_count > 1) { " Also inside the trough, "; } } elseif child(trough) { print "Inside "; The(trough); ", "; } if (list_count > 0) { if (grain not in trough) or (list_count > 1) { "you see"; ListObjects(trough) } else { print newline !Just end the line. } } else { VMessage(&DoLookIn, 2) ! "It's empty." } } } case 8 { select val2 case 0 { !Usage: (6,8,0) !Player is trying to "hit" the bull, but it's not distracted. "The bull is watching you. The moment you move toward it, it lowers its head as if to charge your way. You back off, and it seems satisfied for the moment." } case 1 { !Usage: (6,8,1) !The player straps the harness onto the bull. "Surreptitiously, you approach the bull. You rather expect the effort to fail, as it takes some time to strap the harness around the bull's neck and shoulders. Perhaps this animal is accustomed to wearing a harness, though it seems doubtful.\n" "Although it was probably made for one in a pair of oxen, the harness fits well enough on the beast." } case 2,3,5 { !Usage: (6,8,*) ! The player smacks/throws-at bull, but no rope/harness. ! This goes for both case #2 and case #3 "The bull looks up from the trough, flinches, throws its head to the side"; if (verbroutine = &DoThrowAt) { ", "; !Just a comma if we're throwing something. } else { !Only say this if the player was physically close. " (nearly catching you with one of its pointed, curved horns), "; } "and "; } case 3 { !Usage: (6,8,3) !smacks or throws-at bull, and holding rope. "yanks hard at the rope you're still holding. You're nearly pulled from your feet, but you manage to let it go. It "; } case 2,3 { !This goes for both case #2 and case #3 "trots off a safe distance down the hill. After a moment, and with a snort of warning, it returns to the trough"; } case 2 { "." !Just end the sentence. Nothing else to say. } case 3 { ", dragging the rope along." } case 4 { !Usage: (6,8,4) ! One of the messages when hitting or throwing at bull. "Everything looks good. The bull is wearing the harness, with a rope tied to it and the wagon's hitch. It's a strong rope. The bull can certainly turn the wagon upright, but... no, wait.\n" "With a missing wheel, that wagon isn't going far. You need to fix that, before angering the bull." } case 5 { !Usage: (6,8,5) !The bull charges away. "charges. You step away just before the rope is pulled taut. "; Contains(player, rope) { "Instinctively, you let go. "; } ! No line ending. We have a custscene that gets ! called, after the call to this. } case 6 { !Usage: (6,8,6) PrintMessage(3,2,25) !"A good throw" or other random. print "You hit "; The(bull); " with "; The(object); ". "; } case 7 { !Usage: (6,8,7) "It thrashes its head side to side, bucks like mad, then comes charging your way. You narrowly avoid its sharp horns as you outrun it back to the yard. "; print "For now, you leave "; The(object); " behind." } } case 9 { !Usage: (6,9,obj) !Text for auto-close: "(Closing the (val2) first)" print "(closing "; The(val2); " first)" } case 10 { !Usage: (6,10,obj) ! Let the player know that we're dropping the object first. if (val2 = chain) { print "("; "letting go of "; } else { print "("; "dropping "; } print The(val2); " first)" } case 11 { !Usage: (6,11,x) ! Let the player know that we're unsheating the sword first. "(unsheathing "; if (val2 = 1) print Art(sword); else: "it"; " first)" } case 12 { !Usage: (6,12,obj) ! Prints an implicit "(with the object)" message. print "(with "; if (val2 = sword, flask): print Art(val2); else: print The(val2); ")" } case 13 { !Usage: (6,13) ! Let the player know that we're sheathing the sword first. print "(sheathing "; Art(sword); " first)" } case 14 { !Usage: (6,14,obj) ! Let the player know that we're untying the rope first. print "(untying "; The(rope); " from "; The(val2); " first)" } case 15,20 { !Usage: (6,15,obj) ! Say "picking it/them up first" for things where we do implicit. ! This would be when the player specified to do something with an ! object they're not holding. But, in some cases, we want the ! player to pick up things they didn't specify, so we use case ! number 20, and that causes the item to be mentioned by name. if (val1 = 20) { print "(picking up "; The(val2); " first)" } else { print "(picking"; MatchPlural(val2,"it","them"); " up first)" } } case 16 { !Usage: (6,16,obj) ! Let the player know that we're pushing the object first. ! This'll also be used when going nw from the east_tunnel. print "(pushing "; The(val2); " first)" } case 17,19 { !Usage: (6,17/19,obj) !This is like 6,6,obj, except that we say "and then..." first. print "(and then "; "opening"; if (val1 = 17): print " "; The(val2); ")" else: print MatchPlural(val2,"it","them"); ")" } case 18 { !Usage (6,18,obj) !Text for auto-unlocking: "(Unlocking the (val2) first)" !Usually don't call this, since "unlocking first" is custom. !But if we didn't want to specify the xobject *or* if we're !talking about the barn doors, then we can safely call this. if (val2 = barn_doors) { print "(unbarring "; } else { print "(unlocking "; } print The(val2); " first)" } !case 19 { ! Don't put anything here. This is part of the case 17 one. !} !case 20 { ! Don't put anything here either. It's part of case 15 one. !} case 21 { !Usage: (6,21,obj) ! Let the player know that we're removing the chain first. print "(removing "; The(chain); " from "; The(val2); " first)" } case 22 { !Usage: (6,22,msg) ! Give the player a message in the form "(and then )" print "(and then "; val2; ")" } case 23 { !Usage: (6,23,obj) ! Let the player know that we're lowering the chain first. print "(lowering "; The(chain); " into "; The(val2); " first)" } }