Ticket #814: afraid-turn.patch

File afraid-turn.patch, 1.5 KB (added by rhinocesaurus, 11 years ago)

Patch

  • src/attack.c

     
    459459        if (m_ptr->ml) health_track(cave_m_idx[y][x]); 
    460460 
    461461 
    462         /* Handle player fear */ 
    463         if (p_ptr->state.afraid) 
    464         { 
    465                 /* Message */ 
    466                 message_format(MSG_AFRAID, 0, "You are too afraid to attack %s!", m_name); 
    467  
    468                 /* Done */ 
    469                 return; 
    470         } 
    471  
    472  
    473462        /* Disturb the monster */ 
    474463        wake_monster(m_ptr); 
    475464 
  • src/cmd2.c

     
    20072007 */ 
    20082008static bool do_cmd_walk_test(int y, int x) 
    20092009{ 
    2010         /* Hack -- walking obtains knowledge XXX XXX */ 
    2011         if (!(cave_info[y][x] & (CAVE_MARK))) return (TRUE); 
    2012  
    2013         /* Allow attack on visible monsters */ 
     2010        /* Allow attack on visible monsters if unafraid */ 
    20142011        if ((cave_m_idx[y][x] > 0) && (mon_list[cave_m_idx[y][x]].ml)) 
    20152012        { 
    2016                 return TRUE; 
     2013                /* Handle player fear */ 
     2014                if(p_ptr->state.afraid) 
     2015                { 
     2016                        /* Extract monster name (or "it") */ 
     2017                        char m_name[80]; 
     2018                        monster_type *m_ptr; 
     2019 
     2020                        m_ptr = &mon_list[cave_m_idx[y][x]]; 
     2021                        monster_desc(m_name, sizeof(m_name), m_ptr, 0); 
     2022 
     2023                        /* Message */ 
     2024                        message_format(MSG_AFRAID, 0, 
     2025                                "You are too afraid to attack %s!", m_name); 
     2026 
     2027                        /* Nope */ 
     2028                        return (FALSE); 
     2029                } 
     2030                 
     2031                return (TRUE); 
    20172032        } 
    20182033 
     2034        /* Hack -- walking obtains knowledge XXX XXX */ 
     2035        if (!(cave_info[y][x] & (CAVE_MARK))) return (TRUE); 
     2036 
    20192037        /* Require open space */ 
    20202038        if (!cave_floor_bold(y, x)) 
    20212039        {