Jump to content
Araştır
  • Diğer seçenekler ...
Sonuçları bul ...
Sonuçları bul ...
byCoder

Npc'ler ve pus'dan item alamamak

Önerilen Mesajlar

Selamlar,

2023 Source üzerinde denemeler gerçekleştiriyorum.

Şöyle bir problemim var NPC'ler ve PUS'dan item çekince işlem gerçekleşmiyor.

NOT : Karakterlerin HP'leri 1000'e sabitlenmiş.

Sourcede nereleri kontrol etmem gerekiyor ?

-- mesaja ek olarak --
NPC'lerden item çekme olayını düzelttim.

ŞUANKİ GÜNCEL PROBLEMİM1:
Pus'dan alınan itemin INVENTORY'e eklenmemesi (Letterden item çekme çalışıyor)

Karakterlerin HP'sinin 1000'e sabitlenmiş olması.

İletiyi paylaş


Link to post
Sitelerde Paylaş

Sabit 1k HP Problemini atacagım kod ile çözebilirsin.

void CUser::SetMaxHp(int iFlag)
{
_CLASS_COEFFICIENT* p_TableCoefficient = nullptr;
p_TableCoefficient = g_pMain->m_CoefficientArray.GetData(m_sClass);
if (!p_TableCoefficient) return;

int temp_sta = getStatTotal(STAT_STA);

if (GetZoneID() == ZONE_SNOW_BATTLE && iFlag == 0)
if (GetFame() == COMMAND_CAPTAIN || isKing())
m_iMaxHp = 300;
else
m_iMaxHp = 100;

else if (GetZoneID() == ZONE_CHAOS_DUNGEON && iFlag == 0)
m_iMaxHp = 1000;
else
{
m_iMaxHp = (short)(((p_TableCoefficient->HP * GetLevel() * GetLevel() * temp_sta)
+ 0.1 * (GetLevel() * temp_sta) + (temp_sta / 5)) + m_sMaxHPAmount + m_sItemMaxHp + 20);

// A player's max HP should be capped at (currently) 14,000 HP.
if (m_iMaxHp > MAX_PLAYER_HP && !isGM())
m_iMaxHp = MAX_PLAYER_HP;

if (iFlag == 1)
m_sHp = m_iMaxHp;
else if (iFlag == 2)
m_iMaxHp = 100;
}

if (m_iMaxHp {
m_sHp = m_iMaxHp;
HpChange(m_sHp);
}
}

İletiyi paylaş


Link to post
Sitelerde Paylaş

×
×
  • Yeni Oluştur...