Home | History | Annotate | Download | only in rogue

Lines Matching refs:obj

180 	object *obj;
193 obj = gr_object();
194 rand_place(obj);
232 object *obj;
234 obj = alloc_object();
235 obj->row = row; obj->col = col;
236 obj->what_is = GOLD;
237 obj->quantity = get_rand((2 * cur_level), (16 * cur_level));
239 obj->quantity += obj->quantity / 2;
242 (void)add_to_pack(obj, &level_objects, 0);
246 place_at(object *obj, int row, int col)
248 obj->row = row;
249 obj->col = col;
251 (void)add_to_pack(obj, &level_objects, 0);
257 object *obj = NULL;
260 obj = pack->next_object;
262 while (obj && ((obj->row != row) || (obj->col != col))) {
263 obj = obj->next_object;
265 if (!obj) {
269 return(obj);
275 object *obj;
277 obj = rogue.pack.next_object;
279 while (obj && (obj->ichar != ch)) {
280 obj = obj->next_object;
282 return(obj);
288 object *obj;
291 obj = objlist->next_object;
294 free_object(obj);
299 name_of(const object *obj)
303 switch(obj->what_is) {
305 retstring = obj->quantity > 1 ? "scrolls " : "scroll ";
308 retstring = obj->quantity > 1 ? "potions " : "potion ";
311 if (obj->which_kind == RATION) {
318 retstring = is_wood[obj->which_kind] ? "staff " : "wand ";
321 switch(obj->which_kind) {
323 retstring=obj->quantity > 1 ? "darts " : "dart ";
326 retstring=obj->quantity > 1 ? "arrows " : "arrow ";
329 retstring=obj->quantity > 1 ? "daggers " : "dagger ";
332 retstring=obj->quantity > 1?"shurikens ":"shuriken ";
335 retstring = id_weapons[obj->which_kind].title;
357 object *obj;
359 obj = alloc_object();
362 obj->what_is = FOOD;
365 obj->what_is = gr_what_is();
367 switch(obj->what_is) {
369 gr_scroll(obj);
372 gr_potion(obj);
375 gr_weapon(obj, 1);
378 gr_armor(obj);
381 gr_wand(obj);
384 get_food(obj, 0);
387 gr_ring(obj, 1);
390 return(obj);
420 gr_scroll(object *obj)
426 obj->what_is = SCROL;
429 obj->which_kind = PROTECT_ARMOR;
431 obj->which_kind = HOLD_MONSTER;
433 obj->which_kind = CREATE_MONSTER;
435 obj->which_kind = IDENTIFY;
437 obj->which_kind = TELEPORT;
439 obj->which_kind = SLEEP;
441 obj->which_kind = SCARE_MONSTER;
443 obj->which_kind = REMOVE_CURSE;
445 obj->which_kind = ENCH_ARMOR;
447 obj->which_kind = ENCH_WEAPON;
449 obj->which_kind = AGGRAVATE_MONSTER;
451 obj->which_kind = CON_MON;
453 obj->which_kind = MAGIC_MAPPING;
458 gr_potion(object *obj)
464 obj->what_is = POTION;
467 obj->which_kind = RAISE_LEVEL;
469 obj->which_kind = DETECT_OBJECTS;
471 obj->which_kind = DETECT_MONSTER;
473 obj->which_kind = INCREASE_STRENGTH;
475 obj->which_kind = RESTORE_STRENGTH;
477 obj->which_kind = HEALING;
479 obj->which_kind = EXTRA_HEALING;
481 obj->which_kind = BLINDNESS;
483 obj->which_kind = HALLUCINATION;
485 obj->which_kind = CONFUSION;
487 obj->which_kind = POISON;
489 obj->which_kind = LEVITATION;
491 obj->which_kind = HASTE_SELF;
493 obj->which_kind = SEE_INVISIBLE;
498 set_weapon_damage(object *obj)
500 switch(obj->which_kind) {
503 obj->damage = "1d1";
506 obj->damage = "1d2";
509 obj->damage = "1d3";
512 obj->damage = "1d4";
515 obj->damage = "2d3";
518 obj->damage = "3d4";
521 obj->damage = "4d5";
527 gr_weapon(object *obj, int assign_wk)
533 obj->what_is = WEAPON;
535 obj->which_kind = get_rand(0, (WEAPONS - 1));
537 if ((obj->which_kind == ARROW) || (obj->which_kind == DAGGER) ||
538 (obj->which_kind == SHURIKEN) || (obj->which_kind == DART)) {
539 obj->quantity = get_rand(3, 15);
540 obj->quiver = get_rand(0, 126);
542 obj->quantity = 1;
544 obj->hit_enchant = obj->d_enchant = 0;
554 obj->is_cursed = 1;
558 obj->hit_enchant += increment;
560 obj->d_enchant += increment;
564 set_weapon_damage(obj);
568 gr_armor(object *obj)
573 obj->what_is = ARMOR;
574 obj->which_kind = get_rand(0, (ARMORS - 1));
575 obj->class = obj->which_kind + 2;
576 if ((obj->which_kind == PLATE) || (obj->which_kind == SPLINT)) {
577 obj->class--;
579 obj->is_protected = 0;
580 obj->d_enchant = 0;
586 obj->is_cursed = 1;
587 obj->d_enchant -= blessing;
589 obj->d_enchant += blessing;
594 gr_wand(object *obj)
596 obj->what_is = WAND;
597 obj->which_kind = get_rand(0, (WANDS - 1));
598 obj->class = get_rand(3, 7);
602 get_food(object *obj, boolean force_ration)
604 obj->what_is = FOOD;
607 obj->which_kind = RATION;
609 obj->which_kind = FRUIT;
623 get_armor_class(const object *obj)
625 if (obj) {
626 return(obj->class + obj->d_enchant);
634 object *obj;
637 obj = free_list;
639 } else if (!(obj = md_malloc(sizeof(object)))) {
644 obj->quantity = 1;
645 obj->ichar = 'L';
646 obj->picked_up = obj->is_cursed = 0;
647 obj->in_use_flags = NOT_USED;
648 obj->identified = UNIDENTIFIED;
649 obj->damage = "1d1";
650 return(obj);
654 free_object(object *obj)
656 obj->next_object = free_list;
657 free_list = obj;
676 object *obj;
680 obj = level_objects.next_object;
682 while (obj) {
683 row = obj->row;
684 col = obj->col;
686 rc = get_mask_char(obj->what_is);
699 obj = obj->next_object;
715 object *obj;
717 obj = alloc_object();
718 obj->what_is = AMULET;
719 rand_place(obj);
723 rand_place(object *obj)
728 place_at(obj, row, col);
735 object *obj;
753 obj = alloc_object();
757 obj->what_is = POTION;
761 obj->what_is = SCROL;
765 obj->what_is = AMULET;
768 get_food(obj, 0);
771 gr_weapon(obj, 0);
775 gr_armor(obj);
779 gr_wand(obj);
784 obj->what_is = RING;
792 obj->which_kind = wk;
793 if (obj->what_is == RING) {
794 gr_ring(obj, 0);
801 free_object(obj);
805 get_desc(obj, buf, sizeof(buf));
807 (void)add_to_pack(obj, &rogue.pack, 1);