Mercurial > hg > early-roguelike
comparison arogue7/things.c @ 219:f9ef86cf22b2
Advanced Rogue 7: convert to ANSI-style function declarations.
Almost 1500 lines of compiler warnings remain, and the GCC developers
are already working on a new version with even more warnings turned on
by default.
author | John "Elwin" Edwards |
---|---|
date | Fri, 19 Feb 2016 21:02:28 -0500 |
parents | b786053d2f37 |
children |
comparison
equal
deleted
inserted
replaced
218:56e748983fa8 | 219:f9ef86cf22b2 |
---|---|
21 #include "curses.h" | 21 #include "curses.h" |
22 #include <ctype.h> | 22 #include <ctype.h> |
23 #include <string.h> | 23 #include <string.h> |
24 #include "rogue.h" | 24 #include "rogue.h" |
25 | 25 |
26 int pick_one(struct magic_item *magic, int nitems); | |
27 char *blesscurse(int flags); | |
28 char *p_kind(struct object *obj); | |
29 int extras(void); | |
30 | |
26 /* | 31 /* |
27 * print out the number of charges on a stick | 32 * print out the number of charges on a stick |
28 */ | 33 */ |
29 char * | 34 char * |
30 charge_str(obj) | 35 charge_str(struct object *obj) |
31 register struct object *obj; | |
32 { | 36 { |
33 static char buf[20]; | 37 static char buf[20]; |
34 | 38 |
35 if (!(obj->o_flags & ISKNOW)) | 39 if (!(obj->o_flags & ISKNOW)) |
36 buf[0] = '\0'; | 40 buf[0] = '\0'; |
44 * inv_name: | 48 * inv_name: |
45 * return the name of something as it would appear in an | 49 * return the name of something as it would appear in an |
46 * inventory. | 50 * inventory. |
47 */ | 51 */ |
48 char * | 52 char * |
49 inv_name(obj, drop) | 53 inv_name(struct object *obj, bool drop) |
50 register struct object *obj; | |
51 bool drop; | |
52 { | 54 { |
53 register char *pb; | 55 register char *pb; |
54 | 56 |
55 pb = prbuf; | 57 pb = prbuf; |
56 pb[0] = '\0'; | 58 pb[0] = '\0'; |
322 /* | 324 /* |
323 * weap_name: | 325 * weap_name: |
324 * Return the name of a weapon. | 326 * Return the name of a weapon. |
325 */ | 327 */ |
326 char * | 328 char * |
327 weap_name(obj) | 329 weap_name(struct object *obj) |
328 register struct object *obj; | |
329 { | 330 { |
330 switch (obj->o_type) { | 331 switch (obj->o_type) { |
331 case WEAPON: | 332 case WEAPON: |
332 return(weaps[obj->o_which].w_name); | 333 return(weaps[obj->o_which].w_name); |
333 when MISSILE: | 334 when MISSILE: |
355 | 356 |
356 /* | 357 /* |
357 * drop: | 358 * drop: |
358 * put something down | 359 * put something down |
359 */ | 360 */ |
360 drop(item) | 361 bool |
361 struct linked_list *item; | 362 drop(struct linked_list *item) |
362 { | 363 { |
363 register char ch; | 364 register char ch; |
364 register struct linked_list *obj, *nobj; | 365 register struct linked_list *obj, *nobj; |
365 register struct object *op; | 366 register struct object *op; |
366 | 367 |
462 } | 463 } |
463 | 464 |
464 /* | 465 /* |
465 * do special checks for dropping or unweilding|unwearing|unringing | 466 * do special checks for dropping or unweilding|unwearing|unringing |
466 */ | 467 */ |
467 dropcheck(op) | 468 bool |
468 register struct object *op; | 469 dropcheck(struct object *op) |
469 { | 470 { |
470 int save_max; | 471 int save_max; |
471 | 472 |
472 if (op == NULL) | 473 if (op == NULL) |
473 return TRUE; | 474 return TRUE; |
564 | 565 |
565 /* | 566 /* |
566 * return a new thing | 567 * return a new thing |
567 */ | 568 */ |
568 struct linked_list * | 569 struct linked_list * |
569 new_thing(thing_type, allow_curse) | 570 new_thing(int thing_type, bool allow_curse) |
570 int thing_type; | |
571 bool allow_curse; | |
572 { | 571 { |
573 register struct linked_list *item; | 572 register struct linked_list *item; |
574 register struct object *cur; | 573 register struct object *cur; |
575 register int j; | 574 register int j; |
576 register int blesschance, cursechance; | 575 register int blesschance, cursechance; |
777 | 776 |
778 /* | 777 /* |
779 * provide a new item tailored to specification | 778 * provide a new item tailored to specification |
780 */ | 779 */ |
781 struct linked_list * | 780 struct linked_list * |
782 spec_item(type, which, hit, damage) | 781 spec_item(int type, int which, int hit, int damage) |
783 int type, which, hit, damage; | |
784 { | 782 { |
785 register struct linked_list *item; | 783 register struct linked_list *item; |
786 register struct object *obj; | 784 register struct object *obj; |
787 | 785 |
788 item = new_item(sizeof *obj); | 786 item = new_item(sizeof *obj); |
856 } | 854 } |
857 | 855 |
858 /* | 856 /* |
859 * pick an item out of a list of nitems possible magic items | 857 * pick an item out of a list of nitems possible magic items |
860 */ | 858 */ |
861 pick_one(magic, nitems) | 859 int |
862 register struct magic_item *magic; | 860 pick_one(struct magic_item *magic, int nitems) |
863 int nitems; | |
864 { | 861 { |
865 register struct magic_item *end; | 862 register struct magic_item *end; |
866 register int i; | 863 register int i; |
867 register struct magic_item *start; | 864 register struct magic_item *start; |
868 | 865 |
887 /* blesscurse returns whether, according to the flag, the object is | 884 /* blesscurse returns whether, according to the flag, the object is |
888 * blessed, cursed, or neither | 885 * blessed, cursed, or neither |
889 */ | 886 */ |
890 | 887 |
891 char * | 888 char * |
892 blesscurse(flags) | 889 blesscurse(int flags) |
893 int flags; | |
894 { | 890 { |
895 if (flags & ISKNOW) { | 891 if (flags & ISKNOW) { |
896 if (flags & ISCURSED) return("cursed "); | 892 if (flags & ISCURSED) return("cursed "); |
897 if (flags & ISBLESSED) return("blessed "); | 893 if (flags & ISBLESSED) return("blessed "); |
898 return("normal "); | 894 return("normal "); |
901 } | 897 } |
902 | 898 |
903 /* | 899 /* |
904 * p_kind returns the type of potion for some types of identified potions; | 900 * p_kind returns the type of potion for some types of identified potions; |
905 * otherwise, it returns the color. | 901 * otherwise, it returns the color. |
902 * We assume that obj points to a potion | |
906 */ | 903 */ |
907 | 904 |
908 char * | 905 char * |
909 p_kind(obj) | 906 p_kind(struct object *obj) |
910 struct object *obj; /* We assume that obj points to a potion */ | |
911 { | 907 { |
912 if (obj->o_which == P_ABIL) return(abilities[obj->o_kind]); | 908 if (obj->o_which == P_ABIL) return(abilities[obj->o_kind]); |
913 else return(p_colors[obj->o_which]); | 909 else return(p_colors[obj->o_which]); |
914 } | 910 } |
915 | 911 |
916 /* | 912 /* |
917 * extras: | 913 * extras: |
918 * Return the number of extra items to be created | 914 * Return the number of extra items to be created |
919 */ | 915 */ |
920 extras() | 916 int |
917 extras(void) | |
921 { | 918 { |
922 reg int i; | 919 reg int i; |
923 | 920 |
924 i = rnd(100); | 921 i = rnd(100); |
925 if (i < 4) /* 4% for 2 more */ | 922 if (i < 4) /* 4% for 2 more */ |