void LOGIN_BATCH::SECILI_PROFILI_YUKLE (QString profil)
{

    QStringList profiller;

    for ( int i = 0 ; i < m_ui->combo_box_sql_profilleri->count() ; i++ ) {
         profiller << m_ui->combo_box_sql_profilleri->itemText(i);
    }

    if ( profil.isEmpty() EQ true ) {
        if ( m_user_info->secili_sql_profili.isEmpty() EQ true ) {
            if (profiller.size() >= 2) {
                m_ui->combo_box_sql_profilleri->setCurrentIndex(profiller.size() - 2);
            }
        }
        else {
            m_ui->combo_box_sql_profilleri->setCurrentIndex(m_ui->combo_box_sql_profilleri->findText(m_user_info->secili_sql_profili));
        }
    }
    else {
        m_ui->combo_box_sql_profilleri->setCurrentIndex(m_ui->combo_box_sql_profilleri->findText(profil));
    }

    QString kayitli_profil_ismi = m_ui->combo_box_sql_profilleri->currentText();

    READ_SETTINGS( m_user_info, kayitli_profil_ismi );

    QSettings settings ("ADAK_SETTINGS", ADAK_PROGRAM_SHORTNAME(ADAK_DISPLAY_ID()));
    settings.setValue( "secili_kullanici_sunucusu", kayitli_profil_ismi );

    RESET_PROGRAM_CORE( m_user_info );

    m_ui->line_edit_kullanici_kodu->setText(m_user_info->kullanici_kodu);
    m_ui->line_edit_kullanici_adi->setText(m_user_info->kullanici_adi);

    if ( m_user_info->secili_sql_profili EQ "Yeni Sunucu" ) {
        if ( OPEN_YENI_SUNUCU_TANIMLAMA_BATCH( true, m_user_info, this ) EQ true ) {

            FILL_SQL_PROFILLERI();

            m_ui->text_edit_status->clear();
            //! baglanti status try_connect_db'de de var
            QString baglanti_status;

            baglanti_status.append(QObject::tr("Bağlantı Kuruldu"));

            QString status_str = QString("IP/Adres        : <b>%1</b><br>Port: <b>%2</b><br>SQL Motoru: <b>%3</b><br>");

            if (GET_SQL_DB_DRIVER_ENUM( m_user_info->sql_motoru) EQ SQLITE) {
                status_str = QString("SQL Motoru      : <b>SQLite</b><br>");
            }
            else {
                status_str = QString(status_str)
                             .arg(m_user_info->sql_sunucu)
                             .arg(m_user_info->sql_port)
                             .arg(m_user_info->sql_motoru);
            }

            status_str.append( baglanti_status );
            SET_DB_CONNECTION_STATUS( status_str );

            //! End baglanti
        }
    }

    if ( m_user_info->secili_sql_profili NE kayitli_profil_ismi ) {
         m_ui->combo_box_sql_profilleri->setCurrentIndex(m_ui->combo_box_sql_profilleri->findText( m_user_info->secili_sql_profili ));
    }

    WRITE_SETTINGS( m_user_info );

    REORGANIZE_SCREEN();
}
void CBaseMonster::settings_read(CInifile const * ini, LPCSTR section, SMonsterSettings &data)
{
	READ_SETTINGS(data.m_fSoundThreshold, "SoundThreshold", r_float, ini, section);

	if (ability_run_attack()) {
		READ_SETTINGS(data.m_run_attack_path_dist,	"RunAttack_PathDistance",	r_float, ini, section);
		READ_SETTINGS(data.m_run_attack_start_dist, "RunAttack_StartDistance",	r_float, ini, section);
	}

	READ_SETTINGS(data.m_dwDayTimeBegin,	"DayTime_Begin",		r_u32, ini, section);
	READ_SETTINGS(data.m_dwDayTimeEnd,		"DayTime_End",			r_u32, ini, section);

	READ_SETTINGS(data.m_fDistToCorpse,		"distance_to_corpse",	r_float, ini, section);
	READ_SETTINGS(data.satiety_threshold,	"satiety_threshold",	r_float, ini, section);

	READ_SETTINGS(data.m_fDamagedThreshold, "DamagedThreshold",		r_float, ini, section);

	READ_SETTINGS(data.m_dwIdleSndDelay,	"idle_sound_delay",		r_u32, ini, section);
	READ_SETTINGS(data.m_dwEatSndDelay,		"eat_sound_delay",		r_u32, ini, section);
	READ_SETTINGS(data.m_dwAttackSndDelay,	"attack_sound_delay",	r_u32, ini, section);

	READ_SETTINGS(data.m_dwDistantIdleSndDelay,	"distant_idle_sound_delay",	r_u32, ini, section);
	READ_SETTINGS(data.m_fDistantIdleSndRange,	"distant_idle_sound_range",	r_float, ini, section);

	READ_SETTINGS(data.m_fEatFreq,			"eat_freq",				r_float, ini, section);
	READ_SETTINGS(data.m_fEatSlice,			"eat_slice",			r_float, ini, section);
	READ_SETTINGS(data.m_fEatSliceWeight,	"eat_slice_weight",		r_float, ini, section);

	READ_SETTINGS(data.m_legs_number,		"LegsCount",			r_u8,	 ini, section);
	READ_SETTINGS(data.m_max_hear_dist,		"max_hear_dist",		r_float, ini, section);

	// Load attack postprocess 
	if (ini->line_exist(section,"attack_effector")) {

		LPCSTR ppi_section = ini->r_string(section, "attack_effector");

		READ_SETTINGS(data.m_attack_effector.ppi.duality.h,			"duality_h",		r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.duality.v,			"duality_v",		r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.gray,				"gray",				r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.blur,				"blur",				r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.noise.intensity,	"noise_intensity",	r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.noise.grain,		"noise_grain",		r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ppi.noise.fps,			"noise_fps",		r_float, ini, ppi_section);

		VERIFY(!fis_zero(data.m_attack_effector.ppi.noise.fps));

		if (ini->line_exist(ppi_section,"color_base")) 
			sscanf(ini->r_string(ppi_section,"color_base"),	"%f,%f,%f", &data.m_attack_effector.ppi.color_base.r, &data.m_attack_effector.ppi.color_base.g, &data.m_attack_effector.ppi.color_base.b);		
		if (ini->line_exist(ppi_section,"color_base")) 
			sscanf(ini->r_string(ppi_section,"color_gray"),	"%f,%f,%f", &data.m_attack_effector.ppi.color_gray.r, &data.m_attack_effector.ppi.color_gray.g, &data.m_attack_effector.ppi.color_gray.b);
		if (ini->line_exist(ppi_section,"color_base")) 
			sscanf(ini->r_string(ppi_section,"color_add"),	"%f,%f,%f", &data.m_attack_effector.ppi.color_add.r,  &data.m_attack_effector.ppi.color_add.g,	&data.m_attack_effector.ppi.color_add.b);

		READ_SETTINGS(data.m_attack_effector.time,					"time",				r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.time_attack,			"time_attack",		r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.time_release,			"time_release",		r_float, ini, ppi_section);

		READ_SETTINGS(data.m_attack_effector.ce_time,				"ce_time",			r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ce_amplitude,			"ce_amplitude",		r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ce_period_number,		"ce_period_number",	r_float, ini, ppi_section);
		READ_SETTINGS(data.m_attack_effector.ce_power,				"ce_power",			r_float, ini, ppi_section);
	}
}