Пример #1
0
/****************************************************************
 * Demigod
 ****************************************************************/
static void _gain_power(int which)
{
    if (p_ptr->demigod_power[which] < 0)
    {
        int idx = mut_gain_choice(mut_demigod_pred);
        mut_lock(idx);
        p_ptr->demigod_power[which] = idx;
    }
    else if (!mut_present(p_ptr->demigod_power[which]))
    {
        mut_gain(p_ptr->demigod_power[which]);
        mut_lock(p_ptr->demigod_power[which]);
    }
}
Пример #2
0
/****************************************************************
 * Human
 ****************************************************************/
 static void _human_gain_level(int new_level)
{
    if (new_level >= 30)
    {
        if (p_ptr->demigod_power[0] < 0)
        {
            int idx = mut_gain_choice(mut_demigod_pred/*mut_human_pred*/);
            mut_lock(idx);
            p_ptr->demigod_power[0] = idx;
        }
        else if (!mut_present(p_ptr->demigod_power[0]))
        {
            mut_gain(p_ptr->demigod_power[0]);
            mut_lock(p_ptr->demigod_power[0]);
        }
    }
}