romegames 1
romegames
kaptanmikro1 1
kaptanmikro1
Reklam vermek için turkmmo@gmail.com

[C++] EDİTLİ İTEM GİYME ENGELİ

  • Konuyu başlatan Konuyu başlatan [DEV]AB
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 40
  • Görüntüleme Görüntüleme 6K
Sistemin mantığı şudur hp , max sp , ortalama zarar , beceri hasarı , hp üretimi , sp üretimi ve saldırı değeri efsunları hariç diğer kalan efsunlar 20 den fazla olduğunda edit süsü verilerek itemin giyilmemesini sağlamak. başta saydığım efsunlar içinde ayrıca kendi max değeri kadar engellenmiştir.

char_item.cpp açılır.

Kod:
if (FN_check_item_sex(this, item) == false)

aratılır ve kod bloğunun altına bu kodlar eklenir.

Kod:
    for (int i = 0; i < 5; ++i)
    {
    const TPlayerItemAttribute& edit = item->GetAttribute(i);

    if (edit.sValue > 20 && edit.bType != APPLY_MAX_HP && edit.bType != APPLY_MAX_SP && edit.bType != APPLY_SKILL_DAMAGE_BONUS && edit.bType != APPLY_NORMAL_HIT_DAMAGE_BONUS && edit.bType != APPLY_HP_REGEN && edit.bType != APPLY_SP_REGEN && edit.bType != APPLY_ATT_GRADE_BONUS)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 3000 && edit.bType == APPLY_MAX_HP)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 25 && edit.bType == APPLY_SKILL_DAMAGE_BONUS)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 60 && edit.bType == APPLY_NORMAL_HIT_DAMAGE_BONUS)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 30 && edit.bType == APPLY_HP_REGEN)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 30 && edit.bType == APPLY_SP_REGEN)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 50 && edit.bType == APPLY_ATT_GRADE_BONUS)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
    }
    if (edit.sValue > 80 && edit.bType == APPLY_MAX_SP)
    {
        ChatPacket(CHAT_TYPE_INFO, LC_TEXT("EDIT_ENGEL"));
        return false;
        }
    }

game src ile işimiz bukadar. son olarak locale_string.txt açılır ve içine bunlar eklenir.

Kod:
"EDIT_ENGEL";
"Edit orana sahip bir itemi giyemezsin !";

##KANIT##

VrNoQP.png
 
Son düzenleme:

En Çok Reaksiyon Alan Mesajlar

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst