Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!husc6!yale!sshefter From: sshefter@yale.UUCP Newsgroups: net.sources.games Subject: hack mods (1 of 6) Message-ID: <2632@yale-celed.yale.UUCP> Date: Mon, 30-Mar-87 15:52:59 EST Article-I.D.: yale-cel.2632 Posted: Mon Mar 30 15:52:59 1987 Date-Received: Wed, 1-Apr-87 00:38:48 EST Reply-To: sshefter@yale-celed.UUCP (Bret A. Shefter) Distribution: world Organization: Yale University Computer Science Dept, New Haven CT Lines: 107 From yale!cmcl2!seismo!columbia!rutgers!sri-spam!sri-unix!hplabs!sdcrdcf!ucla-cs!srt Wed Nov 5 12:40:07 EST 1986 At the request of the DSA (Dungeon Shopkeepers Association), the Wizard of Yendor recently hired a security force in hopes of cutting down on the rash of recent thefts. Unfortunately, the Wizard is notoriously cheap and the Keystone Kops he hired aren't much of a deterrent. But they are quite active! -- Scott ------ The following diffs add Keystone Kops to hack. Hopefully they are pretty close to the correct lines numbers for a "vanilla" hack, but since I modified my hack for an Apollo, I can't be certain. If the numbers are off, please post any corrections (DON'T send them to me). Unfortunately, you can't have #ifdefs in def.objects.h, so you have to manually change the name in line 54 to "dead Kop". (Sorry, I had to prepend semicolons so the server wouldn't think I was quoting an article.) in hack.mon.c ;212a213 ;> #ifndef KOPS ;213a215,217 ;> #else KOPS ;> (index("KBIuy", mdat->mlet) && !rn2(4)) || ;> #endif KOPS ;585a586,596 ;> #ifdef KOPS ;> if(mtmp->data->mlet == 'K') { ;> /* When a Kop dies, he probably comes back. */ ;> register int fate = rnd(3); ;> if(fate == 1) { ;> /* returns near the stairs */ ;> mkmon_at('K',xdnstair,ydnstair); ;> } else if(fate == 2) { ;> /* randomly */ ;> mkmon_at('K',0,0); ;> } ;> } ;> #endif KOPS ; ;in hack.monst.c ; ;12a13,15 ;> #ifdef KOPS ;> { "Keystone Kop", 'K',1,6,7,1,4,0 }, ;> #else KOPS ;13a17 ;> #endif KOPS ; ;in hack.makemon.c: ;40a41,44 ;> #ifdef KOPS ;> /* Avoid Kops. Any better way? */ ;> if(ptr->mlet == 'K') continue; ;> #endif KOPS ; ;in hack.shk.c: ; ;143a144,148 ;> #ifdef KOPS ;> /* Keystone Kops srt@ucla */ ;> pline("An alarm sounds throughout the dungeon!"); ;> pline("The Kops are after you!"); ;> #endif KOPS ;153a159,180 ;> #ifdef KOPS ;> { ;> coord enexto(); ;> coord mm; ;> register int cnt = dlevel + rnd(3); ;> /* Create a swarm near the staircase */ ;> mm.x = xdnstair; ;> mm.y = ydnstair; ;> while(cnt--) { ;> mm = enexto(mm.x, mm.y); ;> (void) mkmon_at('K', mm.x, mm.y); ;> } ;> /* Create a swarm near the shopkeeper */ ;> cnt = dlevel + rnd(3); ;> mm.x = shopkeeper->mx; ;> mm.y = shopkeeper->my; ;> while(cnt--) { ;> mm = enexto(mm.x, mm.y); ;> (void) mkmon_at('K', mm.x, mm.y); ;> } ;> } ;> #endif KOPS ; ;in hack.fight.c ; ;72a73,75 ;> #ifdef KOPS ;> if(letter(pd->mlet) && rn2(3) && pd->mlet != 'K'){ ;> #else KOPS ;73a77 ;> #endif KOPS Scott R. Turner ARPA: (now) srt@UCLA-LOCUS.ARPA (soon) srt@LOCUS.UCLA.EDU UUCP: ...!{cepu,ihnp4,trwspp,ucbvax}!ucla-cs!srt DRAGNET: ...!{channing,streisand,joe-friday}!srt@dragnet-relay.arpa