Sollte jedoch jmd es schaffen für einen Überlauf zu sorgen wird die ganze funktion nicht mehr arbeiten anstatt das sonst was passiert, der Server abschmiert oder ähnliches.
hmm danke fürs Feedback habe meinen Code nochmal etwas überarbeitet.
@Incestus Ich würde den Preis immer nur an einer Stelle definieren das wird sonst ziemlich schnell zu einer Fehlerquelle wenn man das nochmal bearbeitet.
Mach das if( 0 nCost ) endlich weg O_O Wenn einer einen Overflow hat meinmst du der gibt sich damit zufrieden Penyas zu erstellen? Ich würdfe da einfach ein Root benutzer erstellen und die kiste Hops nehmen.
Wenn man das nicht kann einfach die Rechte auf Z überschrieben und dann via /gg penyas erstellen.
zu dieser abfrage:
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
Mach das if( 0 nCost ) endlich weg O_O Wenn einer einen Overflow hat meinmst du der gibt sich damit zufrieden Penyas zu erstellen? Ich würdfe da einfach ein Root benutzer erstellen und die kiste Hops nehmen.
Wenn man das nicht kann einfach die Rechte auf Z überschrieben und dann via /gg penyas erstellen.
zu dieser abfrage:
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
die ist unübersichtlich und schlecht zu warten!
Anstatt ihn schlechte vorwürfe zu machen, verbessere lieber seine Fehlern.
@TE
Hast du es schonmal ausprobiert ? Funktioniert das auch ?
Anstatt ihn schlechte vorwürfe zu machen, verbessere lieber seine Fehlern.
@TE
Hast du es schonmal ausprobiert ? Funktioniert das auch ?
Was soll man da verbessern wenn er die if abfrage komplett raushauen soll? Ich hab sogar gründe genannt wieso diese unnötig ist also pscht kleiner junge.
Was soll man da verbessern wenn er die if abfrage komplett raushauen soll? Ich hab sogar gründe genannt wieso diese unnötig ist also pscht kleiner junge.
Das hier ist um einiges ausgebauter. (Fragt beispielsweise ab, ob das Item auch im ersten Slot liegt, damit die User nicht immer fragen "Wie funktioniert das denn?")
Code:
BOOL TextCmd_GenRandomOption( CScanner & s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem ){
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ){
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET ){
pUser->AddText( "Bitte deaktiviere dein Pet." );
}else{
if( pUser->GetGold() >= 100000 ){
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
pUser->AddGold( -100000 );
pUser->AddText( "Dir wurden 100.000 Penya für das Erwecken abgezogen." );
}else{
pUser->AddText( "Du musst mindestens 100.000 Penya haben um erwecken zu können." );
}
}
}else{
pUser->AddText ( "Das zu erweckende Item muss im ersten Slot sein." );
}
}
#endif // __WORLDSERVER
return TRUE;
}
pUser->AddText ( "Das zu erweckende Item muss im ersten Slot sein." );
Das failt mal extrem. Das prüft nur was für eine Option das hat (Awakeable oder wie ich das nennen soll) und nicht ob es im ersten slot ist.
Außerdem wird alles geprüft und natürlich fragt man erst am ende ab ob er Geld hat.
Ich mach das auch immer so. Ich verkauf was auf Amazon.de und erst bevor ich kurz vorm absenden des Packets bin frag ich den käufer ob er genug geld hat. Wenn nicht war alles umsonst.
Egal ob der Code vom @TE scheise ist. Ich muss ehrlcih sagen das seiner den von Sedrika um längen in den schatten stellt.
Das hier ist um einiges ausgebauter. (Fragt beispielsweise ab, ob das Item auch im ersten Slot liegt, damit die User nicht immer fragen "Wie funktioniert das denn?")
BOOL TextCmd_GenRandomOption( CScanner & s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
CItemElem* pItemElem = pUser->m_Inventory.GetAt( 0 );
if( pItemElem ){
int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
if( nRandomOptionKind >= 0 ){
if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET ){
pUser->AddText( "Bitte deaktiviere dein Pet." );
}else{
if( pUser->GetGold() >= 100000 ){
g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
pUser->AddGold( -100000 );
pUser->AddText( "Dir wurden 100.000 Penya für das Erwecken abgezogen." );
}else{
pUser->AddText( "Du musst mindestens 100.000 Penya haben um erwecken zu können." );
}
}
}else{
pUser->AddText ( "Das zu erweckende Item muss im ersten Slot sein." );
}
}
#endif // __WORLDSERVER
return TRUE;
}
.. von Sedrika (Knutschaaa )
Das funktioniert so nicht die else Abfrage ist dafür an der falschen Position. Das solltest du vlt mal selber testen
Die Idee ist aber gut habe sowas mal in meinen code eingebaut, müsste aber im entefeckt auch noch weiter ausgeschrieben werden und auf die awakebarkeit statt nur überhaupt nach einem Item zu schauen.
Awakening bot 08/17/2012 - Flyff Trading - 17 Replies Verkaufe hier einen awakening bot von Qeggl.
Wenn sie diesen bot kaufen bekommen sie einen 1a flyff awakening bot mit folgenden funktionen:
- Unlimited awakes.
- Zu erreichende Mindestawake.
- Ein anrecht darauf die neuen versionen zu bekommen sobald sie released werden.
- support meinerseits.
- optimal in jeder fenstergröße zu benutzen.
Awakening Bot!? 05/22/2012 - Flyff Private Server - 27 Replies Hey liebe E*PvPers
ich wollte mal nachfragen, ob es inzwichen wieder ein Awakening Bot gibt?^^
Wenn ja, kann jemand den Namen bzw. link Posten???
Hab jetzt schon google benutzt... aber leider nix gefunden, was noch funktioniert, bzw zu langsam ist...^^
Falls es etwas gibt, lasst es mich bitte wissen, am besten per PN oder Answer hier im Forum ;)
[LONGJUYT2] Steine kosten und Perlen kosten ! 07/27/2009 - Metin2 Private Server - 96 Replies SçhµЛkLeЯ (22:38):
pearls free... stones free ?
亮 (22:39):
no
white pearl 5.000.000 blue 10.000.000 red 15.000.000 all stones 5.000.000
SçhµЛkLeЯ (22:42):
what for a npc ?
亮 (22:42):
weapontrader