Register for your free account! | Forgot your password?

You last visited: Today at 20:25

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



v19 Taskbar Cooldown Fix

Discussion on v19 Taskbar Cooldown Fix within the Flyff PServer Guides & Releases forum part of the Flyff Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2013
Posts: 57
Received Thanks: 36
v19 Taskbar Cooldown Fix

Einfach die void CWndTaskBar::OnDraw Funktion in der WndTaskbar.cpp mit dieser ersetzen:
PHP Code:
void CWndTaskBar::OnDrawC2DRenderp2DRender )
{
    if( 
NULL == g_pPlayer )
        return;

    
DWORD dwCur g_tmCurrent;
    
CRect rect GetWindowRect();
    
CRect rectSkillQueue;

    
CD3DFontpOldFont p2DRender->GetFont();
    
p2DRender->SetFontCWndBase::m_Theme.m_pFontWndTitle );
     
    if( 
m_nPosition == TASKBAR_TOP || m_nPosition == TASKBAR_BOTTOM )
    {
        
rectSkillQueue.SetRectrect.Width() - 32 60rect.Width(), rect.Height() );
    }
    else
    if( 
m_nPosition == TASKBAR_LEFT || m_nPosition == TASKBAR_RIGHT )
    {
        
rectSkillQueue.SetRect0rect.Height() - 32 6rect.Width(), rect.Height() );
    }

    
// µå·¡±× ÇÏÀ̶óÀÌÆ® ½½·Ô Ç¥½Ã
    
if( m_GlobalShortcut.IsEmpty() == FALSE )
    {
        
DWORD dwColor;
        if( 
m_dwHighAlpha 128 )
            
dwColor D3DCOLOR_ARGBm_dwHighAlpha00255 );
        else
            
dwColor D3DCOLOR_ARGB128 - ( m_dwHighAlpha 128 ), 00255 );

        
LPWNDCTRL pApplet GetWndCtrlWIDC_CUSTOM1 );
        
LPWNDCTRL pItem   GetWndCtrlWIDC_CUSTOM2 );
        
LPWNDCTRL pSkill  GetWndCtrlWIDC_CUSTOM3 );

        
CRect rectApplet pApplet->rect;
        
CRect rectItem pItem->rect;
        
CRect rectSkill pSkill->rect;

        
rectApplet.top 42;
        
rectApplet.bottom 47;
        
rectApplet.left -= 6;
        
rectApplet.right += 6;
        
rectItem.top 42;
        
rectItem.bottom 47;
        
rectItem.left -= 6;
        
rectItem.right += 6;
        
rectSkill.top 42;
        
rectSkill.bottom 47;
        
rectSkill.left -= 3;
        
rectSkill.right += 4;
     
        switch( 
m_GlobalShortcut.m_dwShortcut )
        {
            case 
SHORTCUT_APPLET:
            case 
SHORTCUT_ITEM:
            case 
SHORTCUT_MOTION:
                
p2DRender->RenderFillRectrectAppletdwColor );
                
p2DRender->RenderFillRectrectItemdwColor );
                break;
            case 
SHORTCUT_SKILL:
                if( 
m_GlobalShortcut.m_dwType == )
                {
                    
DWORD dwSkill g_pPlayer->GetSkill0m_GlobalShortcut.m_dwId )->dwSkill;
                    
DWORD dwComboStyleSrc prj.GetSkillPropdwSkill )->dwComboStyle;
                    if( 
dwComboStyleSrc == CT_STEP  || dwComboStyleSrc == CT_GENERAL  )        // ½ºÅÜÀ̳ª Á¦³×·²À̸é ÇÕ°Ý
                        
p2DRender->RenderFillRectrectItemdwColor );     
                    
p2DRender->RenderFillRectrectSkilldwColor );
                }
                else
                    
p2DRender->RenderFillRectrectItemdwColor );
                break;
        }     
    }

    
// ¾ÖÇ÷¿ ¾ÆÀÌÄÜ Ãâ·Â
    
CPoint point POINT_APPLET;
    for( 
int i 0m_nMaxSlotAppleti++ )
    {
        
LPSHORTCUT lpShortcut = &m_aSlotApplet] ;
        if( !
lpShortcut->IsEmpty() )
        {
            if( 
lpShortcut->m_pTexture )
                
p2DRender->RenderTexturepointlpShortcut->m_pTexture );
            if( 
lpShortcut->m_dwShortcut == SHORTCUT_ITEM )
            {
                
CItemBasepItemBase g_pPlayer->GetItemIdlpShortcut->m_dwId );
                
CItemElempItemElem = (CItemElem*)pItemBase;
                if( 
pItemElem )
                {
                    if( 
pItemElem->GetProp()->dwPackMax )
                    {
                        
TCHAR szTemp32 ];
#if __VER >= 8    // __JEFF_VER_8
                        
_stprintfszTemp"%d"g_pPlayer?g_pPlayer->m_Inventory.GetItemCountpItemElem->m_dwItemId ): );
#else    // __JEFF_VER_8
                        
_stprintfszTemp"%d"pItemElem->m_nItemNum );
#endif    // __JEFF_VER_8
                        
CSize size m_p2DRender->m_pFont->GetTextExtentszTemp );
                        
p2DRender->TextOutpoint.32 size.cxpoint.32 size.cyszTemp0xfff6cc4d );
                        
p2DRender->TextOutpoint.31 size.cxpoint.31 size.cyszTemp0xfff6cc4d );
                    }
                    
DWORD dwGroup g_pPlayer->m_cooltimeMgr.GetGrouppItemElem->GetProp() );
                    if( 
dwGroup )
                    {
                        
DWORD dwEnd g_pPlayer->m_cooltimeMgr.GetTimedwGroup );        // À̺¥Æ® Á¾·á ½Ã°¢
                        
if( dwEnd != && dwEnd dwCur )
                        {
                            
DWORD dwBase g_pPlayer->m_cooltimeMgr.GetBasedwGroup );    // À̺¥Æ® ½ÃÀÛ ½Ã°¢
                            
RenderRadarp2DRenderpointdwCur dwBasedwEnd dwBase );
                        }
                    }
                }
                else
                {
#if __VER >= 8    // __JEFF_VER_8
                    
ItemProppItemProp    prj.GetItemProplpShortcut->m_dwItemId );
                    if( 
pItemProp && pItemProp->dwPackMax )    // º´ÇÕ °¡´ÉÇÑ ¾ÆÀÌÅÛÀ̸é?
                    
{
                        
DWORD dwId    g_pPlayer->m_Inventory.FindlpShortcut->m_dwItemId );
                        if( 
dwId != NULL_ID )    // °°Àº Á¾·ùÀÇ ¾ÆÀÌÅÛÀÌ ÀÖ´Ù¸é?
                        
{
                            
lpShortcut->m_dwId    dwId;
                            
g_DPlay.SendAddAppletTaskBarilpShortcut );
                        }
                        else
                        {
                            
lpShortcut->Empty();
                            
g_DPlay.SendRemoveAppletTaskBar);
                        }
                    }
                    else
                    {
                        
lpShortcut->Empty();
                        
g_DPlay.SendRemoveAppletTaskBar);
                    }
#else    // __JEFF_VER_8
                    
lpShortcut->Empty();
                    
g_DPlay.SendRemoveAppletTaskBar);
#endif    // __JEFF_VER_8
                
}
            }
            else
            if( 
lpShortcut->m_dwShortcut == SHORTCUT_APPLET )
            {
                
AppletFuncpAppletFunc g_WndMng.GetAppletFunclpShortcut->m_dwId );
                if( 
pAppletFunc && pAppletFunc->m_cHotkey )
                {
                    
CPoint ptHotkeypoint.8point.);
                    
DRAW_HOTKEYp2DRenderptHotkeypAppletFunc->m_cHotkey );
                }
            }
            else if( 
lpShortcut->m_dwShortcut == SHORTCUT_SKILL && lpShortcut->m_dwType != //±Ø´Ü½ºÅ³Àº ÄðŸÀÓ °ü·Ã Render¸¦ ÇÏÁö ¾Ê´Â´Ù.
            
{
                
RenderCollTimepointlpShortcut->m_dwIdp2DRender );
            }
        
#if __VER >= 12 // __LORD
            
else if( lpShortcut->m_dwShortcut == SHORTCUT_LORDSKILL)
            {
                    
RenderLordCollTimepointlpShortcut->m_dwIdp2DRender );
            }
        
#endif
            
else
            if( 
lpShortcut->m_dwShortcut == SHORTCUT_MOTION )
            {
                if( 
lpShortcut->m_dwId == MOT_BASE_ESCAPE )
                {
                    
ItemProppItem prj.GetItemPropg_AddSMMode.dwSMItemID[SM_ESCAPE] );
                 
                    if( 
pItem && g_pPlayer )
                    {
                        
CTimeSpan ctg_pPlayer->m_dwSMTime[SM_ESCAPE] );
                     
                        if( 
ct.GetTotalSeconds() )
                        {
                            
point.-= 1;
                            
point.+= 1;
                            
RenderRadarm_p2DRenderpoint, (DWORD)( pItem->dwCircleTime ct.GetTotalSeconds() ), pItem->dwCircleTime );
                        }
                    }
                }
            } 
        }
        
point += CPointICON_SIZE);
    }
    
// ¾ÆÀÌÅÛ ¾ÆÀÌÄÜ Ãâ·Â
    
point POINT_ITEM;
    for( 
0MAX_SLOT_ITEMi++ )
    {
        
LPSHORTCUT lpShortcut = &m_paSlotItem] ;
        if( !
lpShortcut->IsEmpty() )
        {
            if( 
lpShortcut->m_pTexture )
                
p2DRender->RenderTexturepointlpShortcut->m_pTexture );
            if( 
lpShortcut->m_dwShortcut == SHORTCUT_ITEM )
            {
                
CItemBasepItemBase g_pPlayer->GetItemIdlpShortcut->m_dwId );
                
CItemElempItemElem = (CItemElem*)pItemBase;
                if( 
pItemElem  )
                {
                    if( 
pItemElem->GetProp()->dwPackMax )
                    {
                        
TCHAR szTemp32 ];
#if __VER >= 8    // __JEFF_VER_8
                        
_stprintfszTemp"%d"g_pPlayer?g_pPlayer->m_Inventory.GetItemCountpItemElem->m_dwItemId ): );
#else    // __JEFF_VER_8
                        
_stprintfszTemp"%d"pItemElem->m_nItemNum );
#endif    // __JEFF_VER_8
                        
CSize size m_p2DRender->m_pFont->GetTextExtentszTemp );
                        
p2DRender->TextOutpoint.32 size.cxpoint.32 size.cyszTemp0xfff6cc4d );
                        
p2DRender->TextOutpoint.31 size.cxpoint.31 size.cyszTemp0xfff6cc4d );
                    }
                }

                
DWORD dwGroup g_pPlayer->m_cooltimeMgr.GetGrouppItemElem->GetProp() );
                if( 
dwGroup )
                {
                    
DWORD dwEnd g_pPlayer->m_cooltimeMgr.GetTimedwGroup );        // À̺¥Æ® Á¾·á ½Ã°¢
                    
if( dwEnd != && dwEnd dwCur )
                    {
                        
DWORD dwBase g_pPlayer->m_cooltimeMgr.GetBasedwGroup );    // À̺¥Æ® ½ÃÀÛ ½Ã°¢
                        
RenderRadarp2DRenderpointdwCur dwBasedwEnd dwBase );
                    }
                }
            }
            else if( 
lpShortcut->m_dwShortcut == SHORTCUT_SKILL && lpShortcut->m_dwType != //±Ø´Ü½ºÅ³Àº ÄðŸÀÓ °ü·Ã Render¸¦ ÇÏÁö ¾Ê´Â´Ù.
            
{
                
RenderCollTimepointlpShortcut->m_dwIdp2DRender );
            }
        
#if __VER >= 12 // __LORD
            
else if( lpShortcut->m_dwShortcut == SHORTCUT_LORDSKILL)
            {
                    
RenderLordCollTimepointlpShortcut->m_dwIdp2DRender );
            }
        
#endif
            
else
            if( 
lpShortcut->m_dwShortcut == SHORTCUT_MOTION )
            {
                if( 
lpShortcut->m_dwId == MOT_BASE_ESCAPE )
                {
                    
ItemProppItem prj.GetItemPropg_AddSMMode.dwSMItemID[SM_ESCAPE] );

                    if( 
pItem && g_pPlayer )
                    {
                        
CTimeSpan ctg_pPlayer->m_dwSMTime[SM_ESCAPE] );
                     
                        if( 
ct.GetTotalSeconds() )
                        {
                            
point.-= 1;
                            
point.+= 1;
                            
RenderRadarm_p2DRenderpoint, (DWORD)( pItem->dwCircleTime ct.GetTotalSeconds() ), pItem->dwCircleTime );
                        }
                    }
                }
            }

             
        }
        
// hotkey Ãâ·Â
        
CHAR cHotkey = ( == ) ? '0' '1' i;
        
CPoint ptHotkeypoint.8point.);
        
//DRAW_HOTKEY( p2DRender, ptHotkey, cHotkey );
        
point += CPointICON_SIZE);
    }
 
    
point CPointPOINT_QUEUE_X ICON_SIZE 5POINT_QUEUE_Y );
    
p2DRender->RenderTexturepointm_pTexture );

    
// ½ºÅ³ Å¥
    
point POINT_QUEUE;
    
//p2DRender->TextOut( point.x - 5, point.y - 16, "ACTION SLOT" );
    
for( 0m_nCurQueueNumi++ )
    {
        
LPSHORTCUT lpShortcut = &m_aSlotQueue] ;
        if( !
lpShortcut->IsEmpty() )
        {
            if( 
lpShortcut->m_pTexture )
            {
                
p2DRender->RenderTexturepointlpShortcut->m_pTexture );
//                LPSKILL pSkill = g_pPlayer->GetSkill( lpShortcut->m_dwType, lpShortcut->m_dwId );
//                if( g_pPlayer->m_nReUseDelay[ lpShortcut->m_dwId ] > 0 )
//                    p2DRender->TextOut( point.x, point.y, g_pPlayer->m_nReUseDelay[ lpShortcut->m_dwId ] );

            
}
        }
        
point += CPointSKILL_SIZE);
    }

    if( !( 
g_pPlayer->IsSMModeSM_ACTPOINT ) ) )
    {
    
#define LV2MAXAP    10        // 2´Ü°è ½ºÅ³ÀÌ ´ÙÂ÷´Âµ¥ ÇÊ¿äÇÑ action point
    #define LV3MAXAP    25     
    #define LV4MAXAP    50
    #define LV5MAXAP    100

        
point POINT_QUEUE;
        
point.+= SKILL_SIZE;    // ½ºÅ³ 2¹ø°ĺÎÅÍ ½¦À̵åµÈ´Ù.
        
{
            
int nAP2Size;    // ¾×¼ÇÆ÷ÀÎÆ®¸¦ ÇÏÀ̶óÀÌÆ®¾çÀ¸·Î º¯È¯ÇÑ°ª.
            
if( m_nActionPoint >= LV4MAXAP )    // LV4MAXAP¸¦ ³Ñ¾î¼¸é 5´Ü°è ½ÃÀÛ.
                
nAP2Size = (SKILL_SIZE 3) + (((m_nActionPoint LV4MAXAP) * SKILL_SIZE) / (LV5MAXAP LV4MAXAP));
            else if( 
m_nActionPoint >= LV3MAXAP )
                
nAP2Size = (SKILL_SIZE 2) + (((m_nActionPoint LV3MAXAP) * SKILL_SIZE) / (LV4MAXAP LV3MAXAP));
            else if( 
m_nActionPoint >= LV2MAXAP )
                
nAP2Size = (SKILL_SIZE 1) + (((m_nActionPoint LV2MAXAP) * SKILL_SIZE) / (LV3MAXAP LV2MAXAP));
            else
                
nAP2Size = (m_nActionPoint SKILL_SIZE) / LV2MAXAP;
         
            
p2DRender->m_pd3dDevice->SetRenderStateD3DRS_ALPHABLENDENABLETRUE );
            
p2DRender->m_pd3dDevice->SetRenderStateD3DRS_ALPHATESTENABLEFALSE );
            
point.+= nAP2Size;
            
nAP2Size = (SKILL_SIZE 4) - nAP2Size;
            
p2DRender->RenderFillRectCRect(point.xpoint.y,  point.nAP2Sizepoint.SKILL_SIZE 2),
                                        
D3DCOLOR_ARGB0x7f00) );
         
            if( 
m_nCurQueueNum )
            {
                
int show 1;
             
                if( 
m_nActionPoint >= LV2MAXAP )
                    
show 2;
                if( 
m_nActionPoint >= LV3MAXAP )
                    
show 3;
                if( 
m_nActionPoint >= LV4MAXAP )
                    
show 4;
                if( 
m_nActionPoint >= LV5MAXAP )
                    
show 5;
             
                if( 
m_nCurQueueNum <= show )
                    
show m_nCurQueueNum;
             
                
CPoint Point CPointPOINT_QUEUE_XPOINT_QUEUE_Y+);

                
RenderOutLineLampPOINT_QUEUE_XPOINT_QUEUE_Y+1showSKILL_SIZE );
            }
        }
    }

    
CWndButtonpWndButton = (CWndButton*)GetDlgItemWIDC_UP );
    
rect pWndButton->GetWindowRectTRUE );
    
rect.top rect.bottom 2;
    
p2DRender->TextOutrect.leftrect.topm_nSlotIndex 10xffffffff );
    
p2DRender->SetFontpOldFont );


Dann noch sichergehen das m_nActionPoint in eurer WndTaskbar.h definiert ist und alles sollte funktionieren.
PHP Code:
int              m_nActionPoint
Credits : 100% Hostille
Sanctuary' is offline  
Thanks
2 Users
Old 09/14/2014, 07:10   #2
 
elite*gold: 0
Join Date: Mar 2009
Posts: 14
Received Thanks: 3
lol...thanke
wns24987 is offline  
Thanks
1 User
Old 09/14/2014, 12:57   #3
 
elite*gold: 0
Join Date: Oct 2013
Posts: 57
Received Thanks: 36
It's for the cooldown animation in the taskbar..
Sanctuary' is offline  
Old 09/14/2014, 13:30   #4
 
elite*gold: 0
Join Date: Mar 2013
Posts: 226
Received Thanks: 97
Danke, auch wenn das nicht deine Arbeit war...^^
.S0ulSeller is offline  
Thanks
1 User
Old 09/14/2014, 13:32   #5
 
elite*gold: 0
Join Date: Mar 2009
Posts: 477
Received Thanks: 218
So basically the skill cooldown will rotate with this fix?
Burdenz2007 is offline  
Old 09/15/2014, 03:08   #6
 
elite*gold: 0
Join Date: Sep 2014
Posts: 1
Received Thanks: 0
Thanks for giving credits

As for those curious as to what this fixes, this fixes the display of the cooldown on items and(or) skills in the taskbar like retail.

All the public releases have this disabled for *** knows what reason, but yea this will fix that.

As for activation problems it's more then likely due to the same reason. Simply keep following it, what i did find interesting when i "fixed" this is how the define was hidden between ifndef which shows this was done intentionally.
Elusively is offline  
Old 10/27/2014, 14:53   #7
 
elite*gold: 7
Join Date: Oct 2007
Posts: 431
Received Thanks: 253
Quote:
Originally Posted by Sanctuary' View Post
Einfach die void CWndTaskBar::OnDraw Funktion in der WndTaskbar.h
Du meintest oben wohl WndTaskBar.cpp und nicht .h^^

Habe das gemacht (verwende derzeit Virtuos Files), allerdings spuckt er Errors aus, dass m_nActionPoint nicht definiert ist. Ich habe wie du beschrieben hattest in der WndTaskBar.h geschaut, ob es definiert ist und dort steht folgender Eintrag:


Wenn ich nun das #ifndef __NEW_TASKBAR_V19 rausnehme, dann sind die Fehlermeldungen weg. Jetzt könnte man meinen, ich hätte __NEW_TASKBAR_V19 nicht definiert, ich habe das in allen relevanten VersionCommon.h geprüft und überall ist es definiert.

Als ich das #ifndef überall entfernt hatte, was mit der V19 Taskbar zutun hat, bekomme ich zwar keine Fehlermeldungen, aber im Spiel wird immernoch kein Cooldown angezeigt.

Kann mir jemand helfen?

EDIT: Er wird nur bei Skills nicht angezeigt!
Rodopushin is offline  
Old 10/28/2014, 01:19   #8
 
elite*gold: 0
Join Date: Jan 2010
Posts: 238
Received Thanks: 30
Quote:
Originally Posted by xXXKillianXXx View Post
Du meintest oben wohl WndTaskBar.cpp und nicht .h^^

Habe das gemacht (verwende derzeit Virtuos Files), allerdings spuckt er Errors aus, dass m_nActionPoint nicht definiert ist. Ich habe wie du beschrieben hattest in der WndTaskBar.h geschaut, ob es definiert ist und dort steht folgender Eintrag:


Wenn ich nun das #ifndef __NEW_TASKBAR_V19 rausnehme, dann sind die Fehlermeldungen weg. Jetzt könnte man meinen, ich hätte __NEW_TASKBAR_V19 nicht definiert, ich habe das in allen relevanten VersionCommon.h geprüft und überall ist es definiert.

Als ich das #ifndef überall entfernt hatte, was mit der V19 Taskbar zutun hat, bekomme ich zwar keine Fehlermeldungen, aber im Spiel wird immernoch kein Cooldown angezeigt.

Kann mir jemand helfen?

EDIT: Er wird nur bei Skills nicht angezeigt!
Du weist schon das "#ifndef" für "if not defined" steht oder? Sprich: #wennnichtdefiniert __NEW_TASKBAR_V19

Auf gut deutsch: er benutzt die Variable/Pointer/whatever wenn die neue Taskbar NICHT definiert ist.
Spheromany is offline  
Old 10/28/2014, 01:39   #9
 
elite*gold: 294
Join Date: Jun 2009
Posts: 407
Received Thanks: 587
Quote:
Originally Posted by jayjei14 View Post
what does it mean for this fix?
it is for radar or for activation potion?
Activition potion, like this, is an extremely easy fix.


Anyway, this can't be exactly copied or pasted. Just analyze the differences with CWndTaskbarInterface and work with it. GG, fixed cooldown.
Avalion is offline  
Old 10/28/2014, 02:56   #10
 
elite*gold: 7
Join Date: Oct 2007
Posts: 431
Received Thanks: 253
Quote:
Originally Posted by Spheromany View Post
Du weist schon das "#ifndef" für "if not defined" steht oder? Sprich: #wennnichtdefiniert __NEW_TASKBAR_V19

Auf gut deutsch: er benutzt die Variable/Pointer/whatever wenn die neue Taskbar NICHT definiert ist.
Ja, hab ich nichtmehr dran gedacht. Kleiner Denkfehler von mir, aber egal wie ich es mache, ob nun ifdef oder ifndef, ob mit oder ohne den Code, bei Skills wird der Cooldown tortzdem nicht angezeigt
Rodopushin is offline  
Old 10/28/2014, 11:52   #11
 
elite*gold: 0
Join Date: Mar 2009
Posts: 477
Received Thanks: 218
So anyone Tested this code? Does it really works?
Burdenz2007 is offline  
Old 10/30/2014, 13:42   #12
 
max982's Avatar
 
elite*gold: 0
Join Date: Nov 2010
Posts: 119
Received Thanks: 35
There's a much easier way to do this.
max982 is offline  
Old 02/04/2019, 04:57   #13
 
adeilson123's Avatar
 
elite*gold: 0
Join Date: Mar 2011
Posts: 129
Received Thanks: 257
fix

Code:
int	CUserTaskBar::SetNextSkill( CUser *pUser )
{
	m_nUsedSkillQueue ++;		// Å¥À妽º ´ÙÀ½À¸·Î...
	
#ifdef __V19_TASKBAR
	int nAP = 100;
#else//__V19_TASKBAR
	int nAP = m_nActionPoint;
	if( !( pUser->IsSMMode( SM_ACTPOINT ) ) )
	{
		switch( m_nUsedSkillQueue )
		{
		case 1:	nAP -= 6;	break;		// ¾×¼Ç Æ÷ÀÎÆ® ¼Ò¸ð·®. ´ÙÀ½½½·ÔÀ» »ç¿ëÇÒ¼öÀÖ´ÂÁö ¹Ì¸® ¾Ë¾Æº¸±â À§ÇÔ.
		case 2:	nAP -= 8;	break;
		case 3:	nAP -= 11;	break;
		case 4:	nAP -= 30;	break;
		}
	}
#endif//__V19_TASKBAR
	LPSHORTCUT pShortcut = &m_aSlotQueue[ m_nUsedSkillQueue ];
	BOOL bResult = nAP < 0;
	if( ( m_nUsedSkillQueue >= MAX_SLOT_QUEUE) || pShortcut->IsEmpty() || (nAP < 0) )	// Å¥ÁøÇàÀÌ ³¡±îÁö °¬°Å³ª || Å¥°¡ ºñ¾ú°Å³ª || AP°¡ ¾ø°Å³ª.
	{
		OnEndSkillQueue( pUser );
		return 0;		// Å¥½ÇÇà ³¡.
	} else
	{
#ifndef __V19_TASKBAR
		if( nAP < 0 )	nAP = 0;
		m_nActionPoint = nAP;
#endif//__V19_TASKBAR
		pUser->AddSetActionPoint( nAP );		// ¾×¼ðÆ÷ÀÎÆ® Ŭ¶ó¿¡ °»½Å.
		OBJID idTarget = pUser->m_idSetTarget;
		TRACE( "´ÙÀ½½ºÅ³»ç¿ë ½Ãµµ%d, ", pShortcut->m_dwId );
		if( pUser->CMD_SetUseSkill( idTarget, pShortcut->m_dwId, SUT_QUEUEING ) == 0 )		// ½ÇÇàÇÒ ¸í·ÉÀ» ¼ÂÆÃ. À̵¿ + ½ºÅ³»ç¿ëÀÌ ÇÕÃÄÁø ¸í·É.
		{
			TRACE( "´ÙÀ½½ºÅ³»ç¿ë ½ÇÆÐ %d, ", pShortcut->m_dwId );
			SetNextSkill( pUser );	// ½ºÅ³»ç¿ë¿¡ ½ÇÆÐÇß´Ù¸é ´ÙÀ½ ½ºÅ³ »ç¿ëÇϵµ·Ï ³Ñ¾î°¨.
		}
		return 1;
	}

	return 1;
}
adeilson123 is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
V19 taskbar zu v15
02/06/2014 - Flyff Private Server - 5 Replies
Hallo, ich möchte gerne die v19 bar in die alte v15 zurück verwandlen der rest gefällt mir sehr gut. Ich habe mir bereits eine v15 progressbar und source geholt und habe die auch schon in nen v19 design gemacht. Ich bettel hier nicht um code sondern ich möchte nur anhaltspunkte sprich was fidne ich wo grob. Das wäre sehr nett.
(REDISTRIBUTE)REMOVE ANY ITEM COOLDOWN (GLOBAL COOLDOWN)
08/07/2011 - WoW PServer Exploits, Hacks & Tools - 24 Replies
FIRST POSTED ON DEATHSOFT BY zebra_masTer...10X TO HIM K. U need little knowledge in Cheat Enige and u need this programm. browse id of spell that u want remoove cooldown in Wowhead: Epic like your faction leader. We will use Moonfire (rank 12) id is 26988 SCAN Wow.exe with Cheat Enige For value 26988 (it moonfire) in the right colume u will se numbers MARK ALL THAT AR N O T GREEN than press the RED Arrow. After few sec's you will see number in the buttom colum mark all with = and...
How to search No Skill Cooldown/No Pot Cooldown??
04/19/2009 - Cabal Online - 1 Replies
I cant find out how to search no skill cooldown and no pot cooldown with UCE. plz tell me how to do it.
[Request] 2h cooldown and 1h cooldown ;)
02/26/2008 - Kal Online - 2 Replies
hello, can some1 please tell me how to change cooldown for a 1hander and a 2hander? :p



All times are GMT +2. The time now is 20:25.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.