Skocz do zawartości
[Brak rozwiązania] Problem z OnTakeDamage
Przestarzałe tematy

Rekomendowane odpowiedzi

Witam, mam problem z SDKHooks a dokładniej OnTakeDamage.

Spoiler

public Action OnTakeDamage(int client, int &attacker, int &inflictor, float &damage, int &damagetype)
{
    if (!IsValidClient(client) || !IsValidClient(attacker))
        return Plugin_Continue;
    
    char sWeapon[64];
    GetClientWeapon(attacker, sWeapon, sizeof(sWeapon));
    if(StrContains(sWeapon, "weapon_knife") != -1 || StrContains(sWeapon, "bayonet") != -1)
    {
        damage *= 0.1;
        return Plugin_Changed;
    }
    return Plugin_Continue;
}

Czemu nie mnoży damage z noża o 0.1? Dodam, że wcześniej ten sam kod działał. Z góry dzięki za pomoc 🙂

 

bool IsValidClient:

Spoiler

bool IsValidClient(int client) 
{
    if (client <= 0)return false;
    if (client > MaxClients)return false;
    if (!IsClientConnected(client))return false;
    if (IsFakeClient(client))return false;
    if (IsClientSourceTV(client))return false;
    return IsClientInGame(client);
} 

 

po usunięciu Boola wyskakuje taki błąd w linijce z GetClientWeapon: Client index -1 is invalid

Edytowane przez deshayier
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 3 tygodnie później...
  • Moderator poziom 2

Wiadomość wygenerowana automatycznie

 

Brak rozwiązania problemu

Jeżeli się z tym nie zgadzasz, raportuj ten post

Sygnatura użytkownika

» Steam: https://steamcommunity.com/id/pawelsteam/\

» Discord: Paweł#8244

» PluginyCS: https://pluginycs.pl/profile/Pawel

» Przyjmuję zlecenia na paczki oraz pluginy.  «

Odnośnik do odpowiedzi
Udostępnij na innych stronach

Ostatnio przeglądający ten temat (5 użytkowników)

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
×
×
  • Dodaj nową pozycję...