/*
 *  Arcanum Editor - ROM area editor
 *  Copyright (C) 1999  Lucas Wall <kthulhu@usa.net>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 *
 *  If you make changes to the source and want to make the public you can
 *  mail the diferences to me <kthulhu@usa.net> and I'll add them to the
 *  main distribution. Of course your name will be added to the program with
 *  information about the changes you made.
 *
 *
 *  Packed on Thu Aug 19 03:02:00 1999
 *
 */


/*
 * File: MobEd.h
 *
 * Changes:
 *
 * 19/08/99 Lucas Wall <kthulhu@usa.net>
 *          First source release. Its quite messy and has no
 *          comments. I never planed to release the source code... :-)
 *
 */


#if !defined(AFX_MOBED_H__BA7AAC03_0C8D_11D3_803E_00002168229C__INCLUDED_)
#define AFX_MOBED_H__BA7AAC03_0C8D_11D3_803E_00002168229C__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// MobEd.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CMobEd dialog

#include "ArcaedDoc.h"

class CMobEd : public CDialog
{
// Construction
public:
	void MakeMobprogList();
	int m_act_flags, m_aff_flags;
	CString m_selrace;
	CString m_seldamtype;
	int m_off_flags, m_imm_flags, m_res_flags;
	int m_vuln_flags, m_form_flags, m_parts_flags;
	CString m_start_pos, m_default_pos, m_sex;
	CString m_size;
	CShopData *m_shopdata;
	CArray< CMobProg *, CMobProg * > m_mobprog;
	CString m_clan;
	int m_rank;
	CArray< CString, CString& > m_mercmsg;
	CArray< CSkillData*, CSkillData* > m_skills;
	CArray< CSkillPrac *, CSkillPrac *> m_trskill;
	CString m_class;

	int m_index;
	CArcaedDoc *m_doc;
	CImageList m_imagelist;
	HACCEL m_accel;

	void SetFlags();
	virtual void OnOK();
	int MobProgEd( CMobProg *mobprog );
	
	CMobEd(CWnd* pParent = NULL);   // standard constructor
	 ~CMobEd();

// Dialog Data
	//{{AFX_DATA(CMobEd)
	enum { IDD = IDD_MOBED };
	CButton	m_MobProgUp;
	CButton	m_MobProgDown;
	CListCtrl	m_MobProgs;
	CButton	m_ShopEdit;
	CButton	m_ShopDel;
	CComboBox	m_StartPos;
	CComboBox	m_Size;
	CComboBox	m_Sex;
	CComboBox	m_DefaultPos;
	CSpinButtonCtrl	m_WealthSpin;
	CButton	m_FlagsVuln;
	CButton	m_FlagsRes;
	CButton	m_FlagsParts;
	CButton	m_FlagsOff;
	CButton	m_FlagsImm;
	CButton	m_FlagsForm;
	CButton	m_FlagsAffect;
	CButton	m_FlagsAct;
	CListCtrl	m_Flags;
	CSpinButtonCtrl	m_AcSlashSpin;
	CSpinButtonCtrl	m_AcPierceSpin;
	CSpinButtonCtrl	m_AcExoticSpin;
	CSpinButtonCtrl	m_AcBashSpin;
	CComboBox	m_DamType;
	CSpinButtonCtrl	m_ManaDBonusSpin;
	CSpinButtonCtrl	m_ManaDTypeSpin;
	CSpinButtonCtrl	m_ManaDNumberSpin;
	CSpinButtonCtrl	m_HitDTypeSpin;
	CSpinButtonCtrl	m_HitDNumberSpin;
	CSpinButtonCtrl	m_HitDBonusSpin;
	CSpinButtonCtrl	m_DamDTypeSpin;
	CSpinButtonCtrl	m_DamDNumberSpin;
	CSpinButtonCtrl	m_DamDBonusSpin;
	CSpinButtonCtrl	m_LevelSpin;
	CSpinButtonCtrl	m_HitRollSpin;
	CSpinButtonCtrl	m_GroupSpin;
	CSpinButtonCtrl	m_AlignmentSpin;
	CComboBox	m_Race;
	CSpinButtonCtrl	m_VnumSpin;
	CString	m_Description;
	CString	m_LongDescr;
	CString	m_Name;
	CString	m_ShortDescr;
	int		m_Vnum;
	int		m_Alignment;
	int		m_Group;
	int		m_HitRoll;
	int		m_Level;
	int		m_DamDBonus;
	int		m_DamDNumber;
	int		m_DamDType;
	int		m_HitDBonus;
	int		m_HitDNumber;
	int		m_HitDType;
	int		m_ManaDBonus;
	int		m_ManaDNumber;
	int		m_ManaDType;
	int		m_AcBash;
	int		m_AcExotic;
	int		m_AcPierce;
	int		m_AcSlash;
	int		m_Wealth;
	CString	m_Material;
	CString	m_SpecFun;
	//}}AFX_DATA


// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CMobEd)
	public:
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(CMobEd)
	virtual BOOL OnInitDialog();
	afx_msg void OnSelchangeMobedRace();
	afx_msg void OnSelchangeMobedDamtype();
	afx_msg void OnMobedFlags();
	afx_msg void OnClickMobedFlags(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnSelchangeMobedStartpos();
	afx_msg void OnSelchangeMobedDefaultpos();
	afx_msg void OnSelchangeMobedSex();
	afx_msg void OnSelchangeMobedSize();
	afx_msg void OnMobedShopdel();
	afx_msg void OnMobedShopedit();
	afx_msg void OnRclickMobedMobprog(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnMobedMercedit();
	afx_msg void OnMobedDefault();
	afx_msg void OnClickMobedMobprog(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnMobedMobprogUp();
	afx_msg void OnMobedMobprogDown();
	afx_msg void OnEditCopiarmob();
	afx_msg void OnEditPegarmob();
	afx_msg void OnMobedTrainer();
	//}}AFX_MSG
	afx_msg void OnMobprogPopAgregar();
	afx_msg void OnMobprogPopBorrar();
	afx_msg void OnMobprogPopEditar();
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_MOBED_H__BA7AAC03_0C8D_11D3_803E_00002168229C__INCLUDED_)