Article View: net.sources.games
Article #861hack mods (1 of 6)
From: sshefter
Date: Mon, 30 Mar 1987 20:52
Date: Mon, 30 Mar 1987 20:52
107 lines
4102 bytes
4102 bytes
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
Technical Details
Message-ID:
<2632@yale-celed.yale.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!rutgers!husc6!yale!sshefterShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!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