- if (d_info[dungeon_type].flags1 & DF1_NO_MELEE)
- {
-#ifdef JP
- msg_print("¤Ê¤¼¤«¹¶·â¤¹¤ë¤³¤È¤¬¤Ç¤¤Ê¤¤¡£");
-#else
- msg_print("Something prevent you from attacking.");
-#endif
- return FALSE;
- }
- if (racial_aux(2, (1 + (plev / 3)), A_CON, 9))
- {
- int y, x, dummy = 0;
- cave_type *c_ptr;
-
- /* Only works on adjacent monsters */
- if (!get_rep_dir(&dir,FALSE)) break; /* was get_aim_dir */
- y = py + ddy[dir];
- x = px + ddx[dir];
- c_ptr = &cave[y][x];
-
- if (!c_ptr->m_idx)
- {
-#ifdef JP
-msg_print("²¿¤â¤Ê¤¤¾ì½ê¤Ë³ú¤ß¤Ä¤¤¤¿¡ª");
-#else
- msg_print("You bite into thin air!");
-#endif
-
- break;
- }
-
-#ifdef JP
-msg_print("¤¢¤Ê¤¿¤Ï¥Ë¥ä¥ê¤È¤·¤Æ²ç¤ò¤à¤¤¤¿...");
-#else
- msg_print("You grin and bare your fangs...");
-#endif
-
- dummy = plev + randint1(plev) * MAX(1, plev / 10); /* Dmg */
- if (drain_life(dir, dummy))
- {
- if (p_ptr->food < PY_FOOD_FULL)
- /* No heal if we are "full" */
- (void)hp_player(dummy);
- else
-#ifdef JP
-msg_print("¤¢¤Ê¤¿¤Ï¶õÊ¢¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£");
-#else
- msg_print("You were not hungry.");
-#endif
-
- /* Gain nutritional sustenance: 150/hp drained */
- /* A Food ration gives 5000 food points (by contrast) */
- /* Don't ever get more than "Full" this way */
- /* But if we ARE Gorged, it won't cure us */
- dummy = p_ptr->food + MIN(5000, 100 * dummy);
- if (p_ptr->food < PY_FOOD_MAX) /* Not gorged already */
- (void)set_food(dummy >= PY_FOOD_MAX ? PY_FOOD_MAX - 1 : dummy);
- }
- else
-#ifdef JP
-msg_print("¤²¤§¡£¤Ò¤É¤¤Ì£¤À¡£");
-#else
- msg_print("Yechh. That tastes foul.");
-#endif
-
- }