You last visited: Today at 05:31
Advertisement
[Source] Auto Buff in GW Arena
Discussion on [Source] Auto Buff in GW Arena within the Flyff PServer Guides & Releases forum part of the Flyff Private Server category.
08/02/2012, 16:12
#1
elite*gold: 12
Join Date: Jun 2011
Posts: 2,512
Received Thanks: 1,062
[Source] Auto Buff in GW Arena
Tach,
hab mal euch mal was schönes für GW Server.
Auto Buffen in GW Arena, sobald mal unten Spawnt.
Hier mal nen Screen:
Nun zum Source teil:
DPSrvr.cpp (Worldserver)
Komplette Funktion ersetzen:
Code:
void CDPSrvr::OnGCJoin( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
{
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
if( IsValidObj( pUser ) )
{
if( !CNpcChecker::GetInstance()->IsCloseNpc( MMI_GUILDWAR_JOIN, pUser->GetWorld(), pUser->GetPos() ) )
return;
g_GuildCombatMng.GuildCombatEnter( pUser );
}
#ifdef __GW_BUFF
pUser->DoBuff(SI_ASS_CHEER_HEAPUP, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_QUICKSTEP, 20, pUser);
pUser->DoBuff(SI_ASS_HEAL_PATIENCE, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_CATSREFLEX, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_CANNONBALL, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_MENTALSIGN, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_BEEFUP, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_ACCURACY, 20, pUser);
pUser->DoBuff(SI_RIN_SUP_SPIRITUREFORTUNE, 10, pUser);
pUser->DoBuff(SI_ASS_CHEER_HASTE, 20, pUser);
pUser->AddText("Have Fun!");
#endif
}
ctrl.cpp
Ganz unten Hinzufügen.
Code:
#ifdef __GW_BUFF
void CCtrl::DoBuff( DWORD dwSkill, int nLevel, CCtrl *pTarget)
{
ItemProp* pSkillProp;
AddSkillProp* pAddSkillProp;
GetSkillProp( &pSkillProp, &pAddSkillProp, dwSkill, nLevel, "DoActiveSkill" );
if( pAddSkillProp->dwSkillTime > 1000)
pAddSkillProp->dwSkillTime = 9999999;
DoApplySkill( pTarget, pSkillProp, pAddSkillProp, 0, 0, FALSE, 0 );
}
#endif
ctrl.h
Unter:
Code:
void DoActiveSkill( DWORD dwSkill, int nLevel, CCtrl *pTarget, bool bIgnoreProb = false ); // ActiveSkill¹ßµ¿
#endif // __VER >= 8 // __S8_PK
Das Hier:
Code:
#ifdef __GW_BUFF
void DoBuff( DWORD dwSkill, int nLevel, CCtrl *pTarget);
#endif
eveschool.cpp
Unter:
Das Hier:
Code:
#ifdef __GW_BUFF
#include "defineSkill.h"
#endif
Unter:
Code:
pUser->AddText( prj.GetText(TID_GAME_GUILDCOMBAT_ZOOM_USE) );
Das Hier:
Code:
#ifdef __GW_BUFF
pUser->DoBuff(SI_ASS_CHEER_HEAPUP, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_QUICKSTEP, 20, pUser);
pUser->DoBuff(SI_ASS_HEAL_PATIENCE, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_CATSREFLEX, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_CANNONBALL, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_MENTALSIGN, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_BEEFUP, 20, pUser);
pUser->DoBuff(SI_ASS_CHEER_ACCURACY, 20, pUser);
pUser->DoBuff(SI_RIN_SUP_SPIRITUREFORTUNE, 10, pUser);
pUser->DoBuff(SI_ASS_CHEER_HASTE, 20, pUser);
pUser->AddText("Lets do this!");
#endif
VersionCommon.h (Worldserver)
Fertig
Buffen bei Login:
DpDatabaseClient.cpp
Ganz Oben bei den #include sachen fügen wir dies hinzu:
Code:
#include "defineSkill.h"
Unter:
Code:
#if __VER >= 15 // __CAMPUS
u_long idCampus = pUser->GetCampusId();
if( idCampus )
{
CCampus* pCampus = CCampusHelper::GetInstance()->GetCampus( idCampus );
if( pCampus && pCampus->IsMember( pUser->m_idPlayer ) )
pUser->AddUpdateCampus( pCampus );
else
pUser->SetCampusId( 0 );
}
#endif // __CAMPUS
Das Hier:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
Buffs nach jedem Tod
DPSrvr.cpp (Worldserver)
Wir suchen diese Funktion:
Code:
void CDPSrvr::OnRevivalLodestar( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
Dann suchen wir in der Funktion:
Code:
pUser->m_nDead = PROCESS_COUNT * 5; // Á×Àº ÈÄ 5Ãʰ£Àº ¹«Àû
float fRate = pUser->SubDieDecExp(); // Á×¾î¼* ºÎȰÇÏ¸é °âÄ¡ ±ðÀÓ,.
pUser->m_pActMover->ClearState();
Darunter fügen wir dies ein:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
Buffen ohne Buffpang in der nähe haben zu müssen ( Per CSPet / Pet )
DPSrvr.cpp (Worldserver)
Wir suchen diese Funktion:
Code:
void CDPSrvr::OnNPCBuff( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
Und in dieser Funktion finden wir das:
Code:
if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return;
Einfach auskommentieren.
Buffen nach Usen von Scroll of Resurrection:
DPSrvr.cpp
Wir suchen diese Funktion:
Code:
void CDPSrvr::OnRevival( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
Dort finden wir dies:
Code:
pUser->m_nDead = PROCESS_COUNT * 5; // Á×Àº ÈÄ 5Ãʰ£Àº ¹«Àû
Darunter:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
Credits:
Buffen in GW Arena: Malibu
DoBuff Funktion: Mentus ;D
Restliche Buff Edits: Eragøn & sagenessamerda
Greez Malibu~
08/02/2012, 16:32
#2
elite*gold: 10
Join Date: Sep 2010
Posts: 348
Received Thanks: 298
Auch bedacht, dass wenn man reinkommt mit Dark Illusion, dann gebufft wird Dark Illusion weg ist?
Und das nervt richtig für einen Jester!
08/02/2012, 16:37
#3
elite*gold: 12
Join Date: Jun 2011
Posts: 2,512
Received Thanks: 1,062
Quote:
Originally Posted by
lolix3
Auch bedacht, dass wenn man reinkommt mit Dark Illusion, dann gebufft wird Dark Illusion weg ist?
Und das nervt richtig für einen Jester!
Nop, werds nochmal ändern q:
Edit:
Habs geändert ;D
08/02/2012, 17:12
#4
elite*gold: 0
Join Date: Jun 2011
Posts: 274
Received Thanks: 104
Wusst nu nich ob nen' eigenen Thread für machen oder einfach hier reinpacken, aber hat halt auch mit Buffs zu tun..
Buffs beim Login:
DpDatabaseClient.cpp
das hier:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
über dem:
( befindet sich ca. in der Zeile 1301 )
einfügen
Buffs direkt nach dem Tod:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
DpSrvr.cpp im WS
das suchen:
Code:
void CDPSrvr::OnRevivalLodestar( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
unter:
Code:
pUser->m_pActMover->ClearState();
einfügen
Das hier weiß ich gerade nicht mehr aus dem Kopf, aber war auch irgendetwas mit buffen.
DPSrvr.cpp
das suchen:
Code:
void CDPSrvr::OnRevival( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
unter dem hier:
Code:
pUser->m_nDead = PROCESS_COUNT * 5; // Á×Àº ÈÄ 5Ãʰ£Àº ¹«Àû
das einfügen:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
Und das hier ging ziemlich unter aber wurde schon einmal von wem postet:
Buffs ohne Pang in der Nähe haben zu müssen ( zB buffen via buff-pet, eat-pet )
DPSrvr.cpp:
das hier suchen:
Code:
if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return;
austauschen mit dem oder einfach auskommentieren:
Code:
#ifdef __Buff_only_with_Pang
if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return;
#else
/* if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return; */
#endif
//edit:
Kannst gerne reineditieren, aber halt Credits an:
Eragøn & sagenessamerda
habe es nur noch mal gepostet weil beides ziemlich unterging und ichs zufällig in ner alten Source wiederfand.
// edit 2:
Was vergessen, man muss noch in DpDatabaseClient.cpp etwas einfügen
bei den includes
#include "defineSkill.h"
& achja
pAddSkillProp->dwSkillTime = 144000000; die Zahl steht für die Zeit, kann man beliebig ändern.
08/02/2012, 17:13
#5
elite*gold: 12
Join Date: Jun 2011
Posts: 2,512
Received Thanks: 1,062
Quote:
Originally Posted by
Shiaru
Wusst nu nich ob nen' eigenen Thread für machen oder einfach hier reinpacken, aber hat halt auch mit Buffs zu tun..
Buffs beim Login:
DpDatabaseClient.cpp
das hier:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
über dem:
( ca. Zeile 1301 ) einfügen
Buffs direkt nach dem Tod:
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
ItemProp* pSkillProp = prj.GetSkillProp( SKID );
AddSkillProp* pAddSkillProp = prj.GetAddSkillProp( pSkillProp->dwSubDefine, 20 );
if( pAddSkillProp )
{
DWORD dwReferTarget1Backup = pSkillProp->dwReferTarget1;
pSkillProp->dwReferTarget1 = NULL_ID;
DWORD dwReferTarget2Backup = pSkillProp->dwReferTarget2;
pSkillProp->dwReferTarget2 = NULL_ID;
DWORD dwSkillTimeBackup = pAddSkillProp->dwSkillTime;
pAddSkillProp->dwSkillTime = 144000000;
pUser->DoApplySkill( pUser, pSkillProp, pAddSkillProp );
g_UserMng.AddDoApplySkill( pUser, pUser->GetId(), SKID, 20 );
}
}
DpSrvr.cpp im WS
unter:
Code:
pUser->m_pActMover->ClearState();
einfügen
Und das hier ging ziemlich unter aber wurde schon einmal von wem postet:
Buffs ohne Pang in der Nähe haben zu müssen ( zB buffen via buff-pet, eat-pet )
DPSrvr.cpp:
das hier suchen:
Code:
if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return;
austauschen mit dem oder einfach auskommentieren:
Code:
#ifdef __Buff_only_with_Pang
if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return;
#else
/* if( !CNpcChecker::GetInstance()->IsCloseNpc(MMI_NPC_BUFF, pUser->GetWorld(), pUser->GetPos() ) )
return; */
#endif
Wenns dir recht ist pack ichs oben in den Thread mit rein, unter deinem Namen q:
08/02/2012, 17:28
#6
elite*gold: 0
Join Date: May 2012
Posts: 94
Received Thanks: 13
Genau sowas habe ich gesucht ! Fettes Thx..
08/02/2012, 17:59
#7
elite*gold: 12
Join Date: Jun 2011
Posts: 2,512
Received Thanks: 1,062
#Thread Updates
#Neue Buff sachen hinzugefügt.
08/02/2012, 18:24
#8
elite*gold: 0
Join Date: Nov 2011
Posts: 395
Received Thanks: 233
Wo hast du denn jetzt bitte den Fehler mit dem Jester behoben? ;D
08/02/2012, 18:28
#9
elite*gold: 12
Join Date: Jun 2011
Posts: 2,512
Received Thanks: 1,062
Quote:
Originally Posted by
Unleashed!
Wo hast du denn jetzt bitte den Fehler mit dem Jester behoben? ;D
Hab es an einer anderen stelle Buffen lassen.
Man hat die Buffs bekommen bei void CGuildCombat::JoinWar( CUser* pUser, int nMap , BOOL bWar) bekommen.
Das war als man unten gespawnt ist.
Jetzt ist die Funktion bei: void CGuildCombat::JoinObserver( CUser* pUser )
Der Respawn oben.
Habs getestet, funktioniert auch oo
Ps: Ist alles durch denken & probieren entstanden o;
08/03/2012, 00:40
#10
elite*gold: 0
Join Date: Jun 2012
Posts: 194
Received Thanks: 417
Will ja nichts sagen, aber die Credits für die Buff Funktion "DoBuff" gehen an mich.
08/03/2012, 11:53
#11
elite*gold: 40
Join Date: Aug 2011
Posts: 453
Received Thanks: 281
ohne Source keine DoBuff funktion
also gehen die credits immer an offi
ihr sagt immer credits credits credits
aber ohne deren zeug wäre hier niemand etwas, ich mit einbezogen
08/03/2012, 12:25
#12
elite*gold: 0
Join Date: Jun 2012
Posts: 194
Received Thanks: 417
Quote:
Originally Posted by
DonaldFuck
ohne Source keine DoBuff funktion
also gehen die credits immer an offi
ihr sagt immer credits credits credits
aber ohne deren zeug wäre hier niemand etwas, ich mit einbezogen
Wenn man die Credits schon angibt, dann richtig.
Durch die pServer Szene ist FlyFF überhaupt es was geworden und lebt immernoch weiter.
Aber nunja, du hast schon Recht. Ohne deren Source könnten wir nichts machen.
08/03/2012, 12:36
#13
elite*gold: 4
Join Date: Mar 2010
Posts: 3,148
Received Thanks: 1,535
anstatt
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
würd ich das ja eher so machen
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
switch(ida)
{
case 1: SKID = SI_ASS_CHEER_ASTE; break;
case 2: SKID = SI_ASS_CHEER_ACCURACY; break;
case 3: SKID = SI_ASS_CHEER_CATSREFLEX;
case 4: SKID = SI_ASS_CHEER_QUICKSTEP; break;
case 5: SKID = SI_ASS_CHEER_BEEFUP; break;
case 6: SKID = SI_ASS_CHEER_MENTALSIGN; break;
case 7: SKID = SI_ASS_CHEER_CANNONBALL; break;
case 8: SKID = SI_ASS_CHEER_HEAPUP; break;
case 9: SKID = SI_ASS_HEAL_PATIENCE; break;
default: break;
}
spart wesentlich platz und ist übersichtlicher
08/03/2012, 12:45
#14
elite*gold: 0
Join Date: Jun 2012
Posts: 194
Received Thanks: 417
Quote:
Originally Posted by
Jopsi332
anstatt
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
if ( ida == 1 )
SKID = SI_ASS_CHEER_HASTE;
else if ( ida == 2 )
SKID = SI_ASS_CHEER_ACCURACY;
else if ( ida == 3 )
SKID = SI_ASS_CHEER_CATSREFLEX;
else if ( ida == 4 )
SKID = SI_ASS_CHEER_QUICKSTEP;
else if ( ida == 5 )
SKID = SI_ASS_CHEER_BEEFUP;
else if ( ida == 6 )
SKID = SI_ASS_CHEER_MENTALSIGN;
else if ( ida == 7 )
SKID = SI_ASS_CHEER_CANNONBALL;
else if ( ida == 8 )
SKID = SI_ASS_CHEER_HEAPUP;
else if ( ida == 9 )
SKID = SI_ASS_HEAL_PATIENCE;
else
break;
würd ich das ja eher so machen
Code:
for( int ida = 1; ida <= 9; ida++ )
{
int SKID;
switch(ida)
{
case 1: SKID = SI_ASS_CHEER_ASTE; break;
case 2: SKID = SI_ASS_CHEER_ACCURACY; break;
case 3: SKID = SI_ASS_CHEER_CATSREFLEX;
case 4: SKID = SI_ASS_CHEER_QUICKSTEP; break;
case 5: SKID = SI_ASS_CHEER_BEEFUP; break;
case 6: SKID = SI_ASS_CHEER_MENTALSIGN; break;
case 7: SKID = SI_ASS_CHEER_CANNONBALL; break;
case 8: SKID = SI_ASS_CHEER_HEAPUP; break;
case 9: SKID = SI_ASS_HEAL_PATIENCE; break;
default: break;
}
spart wesentlich platz und ist übersichtlicher
Achso, wieso zum Teufel eine Schleife?
PHP Code:
#ifdef __GW_BUFF
pUser -> DoBuff ( SI_ASS_CHEER_HEAPUP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_QUICKSTEP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_HEAL_PATIENCE , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_CATSREFLEX , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_CANNONBALL , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_MENTALSIGN , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_BEEFUP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_ACCURACY , 20 , pUser );
pUser -> DoBuff ( SI_RIN_SUP_SPIRITUREFORTUNE , 10 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_HASTE , 20 , pUser );
pUser -> AddText ( "Have Fun!" );
#endif
Es gibt doch die DoBuff Funktion? Dann benutzt sie auch, lol.
Der ganze Source der da steht ist Crap. Ihr müsst einfach nur
PHP Code:
#ifdef __GW_BUFF
pUser -> DoBuff ( SI_ASS_CHEER_HEAPUP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_QUICKSTEP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_HEAL_PATIENCE , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_CATSREFLEX , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_CANNONBALL , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_MENTALSIGN , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_BEEFUP , 20 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_ACCURACY , 20 , pUser );
pUser -> DoBuff ( SI_RIN_SUP_SPIRITUREFORTUNE , 10 , pUser );
pUser -> DoBuff ( SI_ASS_CHEER_HASTE , 20 , pUser );
pUser -> AddText ( "Have Fun!" );
#endif
Das hier, dort adden, wo es im Tut beschrieben ist (auch dort wo die andere Scheiße steht von wegen for( int i = 0; ..... ). Aber nicht diese Scheiße mit der Schleife, das ist Crap.
08/03/2012, 12:50
#15
elite*gold: 4
Join Date: Mar 2010
Posts: 3,148
Received Thanks: 1,535
ich habs nur schnell überflogen und diese riesen if elseif dinger gesehen. das war das einzige was mir so ins augegefallen ist was man schnell abändern könnte. aber sonst hastu vollkommen recht ^^
Similar Threads
Auto pot + Auto Skill +Auto Buff 3x1
04/07/2009 - SRO PServer Guides & Releases - 26 Replies
:pimp:
Hello Guys This Program have all options in 1
1st U need the Auto Target Media.PK2
http://www.elitepvpers.com/forum/private-sro-explo its-hacks-bots-guides/212252-new-media-pk2-arcange l.html
2nd Log in Run the bot you will find it Down this Topic
Download:mofo:
[Exploits][Arena]Krieger Buff in der Lorderon Arena
01/20/2008 - WoW Exploits, Hacks, Tools & Macros - 7 Replies
Dieser Trick geht nur in der Lorderon Arena, weil dort die Kammer (der Vorbereitungsraum) groß genug ist. Der Krieger hat 2 Schlachtschreie.
Der eine gibt +1080 Gesundheit und der andere Angriffskraft.
Krieger+Druide, Krieger+Paladin oder Krieger+Priester sind Combos in welcher der Heiler keine Angriffskraft braucht aber die Gesundheit.
Erst stehen beide nahbeieinander und der Krieger bufft - Gesundheit dann geht er in die hinterste Ecke und der Heiler ganz nah an das Tor. So kann der...
All times are GMT +2. The time now is 05:32 .