Hallo Com,
ich hab folgendes Problem, sobald ich ein permanent Tau aktiviere wird für eine halbe Sekunde oben links ein ein Affect angezeigt
und verschwindet wieder. Bei normalen Tau funktioniert dieser natürlich. Benutzt wird das Bitte melden Sie sich an, um diesen Link zu sehen.. Das Blend Affect System
habe ich aus den Files von Owsap rausgenommen und eingefügt.
Ich denke mal das Problem liegt an der char_item.cpp, könnte mich aber auch irren.
Der Code:
Code
- #ifdef ENABLE_NEW_BLEND
- if (item->GetSubType() == 1)
- {
- CAffect* pAffect = FindAffect(affect_type, apply_type);
- if (pAffect == NULL)
- {
- SetBlendAffect(item);
- AddAffect(affect_type, apply_type, apply_value, item->GetID(), INFINITE_AFFECT_DURATION, 0, false);
- item->SetSocket(2, 1);
- item->Lock(true);
- }
- else
- {
- if (item->GetID() == pAffect->dwFlag)
- {
- RemoveAffect(pAffect);
- item->Lock(false);
- item->SetSocket(2, 0);
- }
- else
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The effect is already working."));
- }
- }
- else
- {
- if (FindAffect(affect_type, apply_type))
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The effect is already working."));
- }
- else
- {
- if (FindAffect(AFFECT_EXP_BONUS_EURO_FREE, POINT_RESIST_MAGIC))
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The effect is already working."));
- }
- else
- {
- #ifdef ENABLE_NEW_BLEND_AFFECT
- if (SetBlendAffect(item))
- {
- AddAffect(affect_type, apply_type, apply_value, 0, apply_duration, 0, false);
- item->SetCount(item->GetCount() - 1);
- }
- #else
- AddAffect(affect_type, apply_type, apply_value, 0, apply_duration, 0, false);
- item->SetCount(item->GetCount() - 1);
- #endif
- }
- }
- }
- #else
- if (FindAffect(affect_type, apply_type))
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The effect is already working."));
- }
- else
- {
- if (FindAffect(AFFECT_EXP_BONUS_EURO_FREE, POINT_RESIST_MAGIC))
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The effect is already working."));
- }
- else
- {
- AddAffect(affect_type, apply_type, apply_value, 0, apply_duration, 0, false);
- item->SetCount(item->GetCount() - 1);
- }
- }
- #endif
- }
- break;