Exemplo n.º 1
0
bool fear_set_p(int v)
{
    int old_lvl, new_lvl;
    bool notice = FALSE;

    /* Hack -- Force good values */
    v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;

    if (p_ptr->is_dead) return FALSE;

    old_lvl = _get_level(p_ptr->afraid);
    new_lvl = _get_level(v);

    if (new_lvl > old_lvl)
    {
        msg_format("You feel <color:%c>%s</color>.", _get_level_color(new_lvl), _get_level_name(new_lvl));
        if (old_lvl <= FEAR_SCARED && one_in_(6) && !fear_save_p(v/5))
            do_dec_stat(A_CHR);
        if (p_ptr->special_defense & KATA_MASK)
        {
            msg_print("Your posture gets loose.");
            p_ptr->special_defense &= ~KATA_MASK;
            p_ptr->update |= PU_BONUS;
            p_ptr->update |= PU_MONSTERS;
            p_ptr->redraw |= PR_STATE;
            p_ptr->redraw |= PR_STATUS;
            p_ptr->action = ACTION_NONE;
        }
        notice = TRUE;
        p_ptr->counter = FALSE;
        virtue_add(VIRTUE_VALOUR, -1);
    }
    else if (new_lvl < old_lvl)
    {
        if (new_lvl == FEAR_BOLD)
            msg_print("Your fears finally subside.");
        else
        {
            msg_format("You are no longer %s, but you still feel %s.",
                        _get_level_name(old_lvl), _get_level_name(new_lvl));
        }
        notice = TRUE;
    }

    p_ptr->afraid = v;
    p_ptr->redraw |= PR_EFFECTS;
    if (!notice) return FALSE;
    if (disturb_state) disturb(0, 0);
    handle_stuff();
    return TRUE;
}
Exemplo n.º 2
0
static void _log(
	const gchar *log_domain,
	GLogLevelFlags log_level,
	const gchar *message,
	gpointer nothing G_GNUC_UNUSED)
{
	gint64 timenow = qev_time / G_USEC_PER_SEC;
	gchar date[1024];

	#ifdef QEV_LOG_DEBUG
		struct tm *now;
		now = localtime(&timenow);
		strftime(date, sizeof(date), "%H:%M:%S", now);
	#else
		snprintf(date, sizeof(date), "%" G_GINT64_FORMAT, timenow);
	#endif

	qev_lock_write_lock(&_lock);

	fprintf(_log_file, "%s - %s [%s] %s\n",
		log_domain, _get_level(log_level),
		date, message);

	qev_lock_write_unlock(&_lock);

	#ifdef QEV_TESTING
		__gcov_flush();
	#endif
}
Exemplo n.º 3
0
static char _get_level_color(int v)
{
    int lvl = _get_level(v);
    switch (lvl)
    {
    case FEAR_UNEASY: return 'U';
    case FEAR_NERVOUS: return 'y';
    case FEAR_SCARED: return 'R';
    case FEAR_TERRIFIED: return 'r';
    case FEAR_PETRIFIED: return 'v';
    }

    return 'W';
}
Exemplo n.º 4
0
static cptr _get_level_name(int v)
{
    int lvl = _get_level(v);
    switch (lvl)
    {
    case FEAR_UNEASY: return "uneasy";
    case FEAR_NERVOUS: return "nervous";
    case FEAR_SCARED: return "scared";
    case FEAR_TERRIFIED: return "terrified";
    case FEAR_PETRIFIED: return "petrified";
    }

    return "bold";
}
Exemplo n.º 5
0
int  fear_level_p(void)
{
    return _get_level(p_ptr->afraid);
}