FuncApplet.cpp
add this under DECLAREAPPLET( AppMain_WndNavigator , new CWndNavigator );
add this under
#ifdef __VER >= 15 // __2ND_PASSWORD_SYSTEM AddAppletFunc( AppMain_Wnd2ndPassword , APP_2ND_PASSWORD_NUMBERPAD , _T( "Wnd2ndPassword" ) , _T( "Icon_Applet.dds" ) , GETTEXT( TID_2ND_PASSWORD_WINDOW_OPEN ), 0 );
#endif // __2ND_PASSWORD_SYSTEM
WndField.cpp
add this under this function
BOOL CWndBarunaPiercing::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
WndField.h
Resdata.h
#define APP_REFRESHER 2035
#define WIDC_HP 2014
#define WIDC_MP 2015
#define WIDC_FP 2016
Resdata.inc
add this under DECLAREAPPLET( AppMain_WndNavigator , new CWndNavigator );
PHP Code:
DECLAREAPPLET( AppMain_WndRefresher , new CWndRefresher );
add this under
#ifdef __VER >= 15 // __2ND_PASSWORD_SYSTEM AddAppletFunc( AppMain_Wnd2ndPassword , APP_2ND_PASSWORD_NUMBERPAD , _T( "Wnd2ndPassword" ) , _T( "Icon_Applet.dds" ) , GETTEXT( TID_2ND_PASSWORD_WINDOW_OPEN ), 0 );
#endif // __2ND_PASSWORD_SYSTEM
Code:
#ifdef __AUTO_FOODER
AddAppletFunc( AppMain_WndRefresher, APP_REFRESHER, " _T( "WndRefresher" ), _T( "Icon_Partyfinder.dds" ) , _T("Auto Refesher"), 'V' );
#endif
WndField.cpp
add this under this function
BOOL CWndBarunaPiercing::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
Code:
#ifdef __AUTO_FOODER
CWndRefresher::CWndRefresher()
{
bStart = FALSE;
for( int i = 0; i < 3; i++ )
{
m_pItemElem[i] = NULL;
m_pTexture[i] = NULL;
//ZeroMemory( m_pItemElem[i], sizeof( m_pItemElem ));
//ZeroMemory( m_pTexture[i], sizeof( m_pTexture ));
}
}
CWndRefresher::~CWndRefresher()
{
for( int i = 0; i < 3; i++ )
{
if( m_pItemElem[i] != NULL )
{
if( !g_pPlayer->m_vtInfo.IsTrading( m_pItemElem[i] ))
m_pItemElem[i]->SetExtra(0);
}
}
}
BOOL CWndRefresher::Initialize( CWndBase* pWndParent, DWORD dwType )
{
return CWndNeuz::InitDialog( g_Neuz.GetSafeHwnd(), APP_REFRESHER, 0, CPoint( 0, 0 ), pWndParent );
}
BOOL CWndRefresher::OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase )
{
return CWndNeuz::OnCommand( nID, dwMessage, pWndBase );
}
void CWndRefresher::OnSize( UINT nType, int cx, int cy )
{
CWndNeuz::OnSize( nType, cx, cy );
}
void CWndRefresher::OnLButtonUp( UINT nFlags, CPoint point )
{
}
void CWndRefresher::OnLButtonDown( UINT nFlags, CPoint point )
{
}
void CWndRefresher::OnDraw( C2DRender* p2DRender )
{
LPWNDCTRL wndCtrl[3];
wndCtrl[0] = GetWndCtrl( WIDC_CUSTOM7 );
wndCtrl[1] = GetWndCtrl( WIDC_CUSTOM1 );
wndCtrl[2] = GetWndCtrl( WIDC_CUSTOM2 );
for( int i = 0; i < 3; i++ )
{
if( m_pItemElem[i] != NULL && m_pTexture[i] != NULL )
{
m_pTexture[i]->Render( p2DRender, CPoint( wndCtrl[i]->rect.left, wndCtrl[i]->rect.top));
}
}
}
HRESULT CWndRefresher::RestoreDeviceObjects()
{
CWndNeuz::RestoreDeviceObjects();
return S_OK;
}
HRESULT CWndRefresher::InvalidateDeviceObjects()
{
CWndNeuz::InvalidateDeviceObjects();
return S_OK;
}
HRESULT CWndRefresher::DeleteDeviceObjects()
{
CWndNeuz::DeleteDeviceObjects();
InvalidateDeviceObjects();
return S_OK;
}
void CWndRefresher::OnInitialUpdate( void )
{
CWndNeuz::OnInitialUpdate();
CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
// pButton->EnableWindow(FALSE);
pButton2->EnableWindow(FALSE);
MoveParentCenter();
}
BOOL CWndRefresher::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
{
LPWNDCTRL wndCtrl[3];
wndCtrl[0] = GetWndCtrl( WIDC_CUSTOM7 );
wndCtrl[1] = GetWndCtrl( WIDC_CUSTOM1 );
wndCtrl[2] = GetWndCtrl( WIDC_CUSTOM2 );
for( int i = 0; i < sizeof(wndCtrl)/sizeof(LPWNDCTRL); i++ )
{
if( !wndCtrl[i] )
{
continue;
}
if( wndCtrl[i]->rect.PtInRect( point ))
{
CItemElem* pTempElem;
pTempElem = (CItemElem*) g_pPlayer->GetItemId( pShortcut->m_dwId );
ItemProp* pItemProp = pTempElem->GetProp();
if( pItemProp->dwItemKind2 == IK2_FOOD || pItemProp->dwItemKind2 == IK2_POTION || pItemProp->dwItemKind2 == IK2_REFRESHER )
{
if( m_pItemElem[i])
{
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = NULL;
}
m_pItemElem[i] = (CItemElem*)pTempElem;
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem[i]->GetProp()->szIcon ), 0xffff00ff );
if( m_pTexture[i])
m_pItemElem[i]->SetExtra(1);
}else{
return FALSE;
}
}
}
return TRUE;
}
BOOL CWndRefresher::Process()
{
CWndButton* hp = (CWndButton*)GetDlgItem(WIDC_HP);
CWndButton* mp = (CWndButton*)GetDlgItem(WIDC_MP);
CWndButton* fp = (CWndButton*)GetDlgItem(WIDC_FP);
for( int i = 0; i < 3; ++i ){
if( bStart && m_pItemElem[0] && m_pItemElem[0]->GetProp() && hp->GetCheck() )
{
if( ((FLOAT)g_pPlayer->GetMaxHitPoint() / g_pPlayer->GetHitPoint() ) > 2.0F || m_pItemElem[0]->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
{
if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(m_pItemElem[0]->GetProp() )))
{
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem[0]->m_dwObjId ), NULL_ID, m_pItemElem[0]->GetProp()->dwParts );
}
}
}
if( bStart && m_pItemElem[1] && m_pItemElem[1]->GetProp() && mp->GetCheck() )
{
if( ((FLOAT)g_pPlayer->GetMaxManaPoint() / g_pPlayer->GetManaPoint() ) > 2.0F || m_pItemElem[1]->GetProp()->nAdjParamVal1 + g_pPlayer->GetManaPoint() <= g_pPlayer->GetMaxManaPoint() )
{
if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(m_pItemElem[1]->GetProp() )))
{
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem[1]->m_dwObjId ), NULL_ID, m_pItemElem[1]->GetProp()->dwParts );
}
}
}
if( bStart && m_pItemElem[2] && m_pItemElem[2]->GetProp() && fp->GetCheck() )
{
if( ((FLOAT)g_pPlayer->GetMaxFatiguePoint() / g_pPlayer->GetFatiguePoint() ) > 2.0F || m_pItemElem[2]->GetProp()->nAdjParamVal1 + g_pPlayer->GetFatiguePoint() <= g_pPlayer->GetMaxFatiguePoint() )
{
if( g_pPlayer->m_cooltimeMgr.CanUse( g_pPlayer->m_cooltimeMgr.GetGroup(m_pItemElem[2]->GetProp() )))
{
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem[2]->m_dwObjId ), NULL_ID, m_pItemElem[2]->GetProp()->dwParts );
}
}
}
}
return TRUE;
}
BOOL CWndRefresher::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
{
switch (nID)
{
case WIDC_BUTTON_REFRESH_START:// Start Refreshing
{
bStart = TRUE;
CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
pButton2->EnableWindow(TRUE);
CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
pButton1->EnableWindow(FALSE);
break;
}
case WIDC_BUTTON_REFRESH_STOP:// Stop Refreshing
{
bStart = FALSE;
CWndButton* pButton2 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_STOP);
pButton2->EnableWindow(FALSE);
CWndButton* pButton1 = (CWndButton*)GetDlgItem(WIDC_BUTTON_REFRESH_START);
pButton1->EnableWindow(TRUE);
break;
}
}
return CWndNeuz::OnChildNotify( message, nID, pLResult );
}
#endif // __AUTO_FOODER
WndField.h
Code:
#ifdef __AUTO_FOODER
class CWndRefresher : public CWndNeuz
{
public:
CItemElem* m_pItemElem[3];
CTexture* m_pTexture[3];
BOOL bStart;
BOOL bStartmp;
BOOL bStartfp;
CWndRefresher( void );
~CWndRefresher( void );
virtual HRESULT RestoreDeviceObjects();
virtual HRESULT InvalidateDeviceObjects();
virtual HRESULT DeleteDeviceObjects();
public:
CRect m_Rect[3];
virtual BOOL Initialize( CWndBase* pWndParent = NULL, DWORD nType = MB_OK );
virtual BOOL OnChildNotify( UINT message, UINT nID, LRESULT* pLResult );
virtual void OnDraw( C2DRender* p2DRender );
virtual void OnInitialUpdate();
virtual BOOL Process();
virtual BOOL OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase );
virtual BOOL OnDropIcon( LPSHORTCUT pShortcut, CPoint point );
virtual void OnSize( UINT nType, int cx, int cy );
virtual void OnLButtonUp( UINT nFlags, CPoint point );
virtual void OnLButtonDown( UINT nFlags, CPoint point );
};
#endif
#define APP_REFRESHER 2035
#define WIDC_HP 2014
#define WIDC_MP 2015
#define WIDC_FP 2016
Resdata.inc
Code:
APP_REFRESHER "WndTile00.tga" "" 1 250 230 0x2410000 26
{
// Title String
""
}
{
// Help Key
""
}
{
WTYPE_CUSTOM WIDC_CUSTOM7 "" 0 28 22 62 54 0x40000 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
""
}
WTYPE_CUSTOM WIDC_CUSTOM1 "" 0 28 64 62 96 0x40000 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
""
}
WTYPE_CUSTOM WIDC_CUSTOM2 "" 0 28 104 62 136 0x40000 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
""
}
WTYPE_BUTTON WIDC_BUTTON_REFRESH_START "ButtStart.bmp" 0 38 160 102 180 0x220010 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
"Start Auto refresh"
}
WTYPE_BUTTON WIDC_BUTTON_REFRESH_STOP "Buttstop.bmp" 0 146 160 210 180 0x220010 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
"Stop Auto refresh"
}
WTYPE_BUTTON WIDC_HP "ButtCheck.bmp" 1 80 32 238 52 0x220018 0 0 0 0 46 112 169
{
// Title String
"Start Hp Food"
}
{
// ToolTip
""
}
WTYPE_BUTTON WIDC_MP "ButtCheck.bmp" 1 80 72 238 92 0x220018 0 0 0 0 46 112 169
{
// Title String
"Start Mp Food"
}
{
// ToolTip
""
}
WTYPE_BUTTON WIDC_FP "ButtCheck.bmp" 1 80 116 238 136 0x220018 0 0 0 0 46 112 169
{
// Title String
"Start Fp Food"
}
{
// ToolTip
""
}
WTYPE_STATIC WIDC_STATIC1 "WndChgElemItem.bmp" 0 28 22 62 54 0x2220002 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
"ใส่อาหารให้ HP ลงไป"
}
WTYPE_STATIC WIDC_STATIC11 "WndChgElemItem.bmp" 0 28 64 62 94 0x2220002 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
"ใส่อาหารเพิ่ม MP ลงไป"
}
WTYPE_STATIC WIDC_STATIC12 "WndChgElemItem.bmp" 0 28 106 62 138 0x2220002 0 0 0 0 46 112 169
{
// Title String
""
}
{
// ToolTip
"ใส่อาหารเพิ่ม FP ลงไป"
}
}