Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

[CoD Nowy] Jak dodać item nanosuit


Linux`
 Udostępnij

Rekomendowane odpowiedzi

W tym prostym poradniku opisze w jaki sposób dodamy item znany z amxx, nanosuit.

 

Tak więc na początku tworzymy prosty item, bez żadnych umiejętności, czyli:

#include <sourcemod>
#include <sdkhooks>
#include <sdktools>
#include <cstrike>
#include <codmod>

new const String:nazwa[] = "Nanosuit";
new const String:opis[] = "Posiadasz odpornosc na umiejetnosci wszystkich klas oraz itemow";

public OnPluginStart()
{
    CreateConVar(nazwa, "1.0", "Linux`");
    cod_register_item(nazwa, opis, 0, 0);
}

Następnie musimy otworzyć wszystkie nasze klasy bądż itemy (w zależności od tego na co chcemy mieć odporność) i dodać odpowiedni warunek, nad wykonaniem wybranej funkcji:

if(cod_get_user_item(ofiara) == cod_get_itemid("Nanosuit"))

oczywiście zamiast indexu (ofiara) wpisujemy id naszej ofiary a następnie blokujemy funkcje (return, continue, return Plugin_Continue), wszystko w zależności od tego gdzie dodajemy warunek. Niżej przykładowa klasa Komandos z odpornością na item:

#include <sourcemod>
#include <sdkhooks>
#include <sdktools>
#include <cstrike>
#include <codmod>

new const String:nazwa[] = "Komandos";
new const String:opis[] = "Posiada natychmiastowe zabicie z noza (+ppm)";
new const String:bronie[] = "#weapon_deagle";
new const inteligencja = 0;
new const zdrowie = 40;
new const obrazenia = 0;
new const wytrzymalosc = 0;
new const kondycja = 60;

new bool:ma_klase[65];
public OnPluginStart()
{
    CreateConVar(nazwa, "1.0", "Linux`");
    cod_register_class(nazwa, opis, bronie, inteligencja, zdrowie, obrazenia, wytrzymalosc, kondycja);
}
public OnClientPutInServer(client)
{
    SDKHook(client, SDKHook_OnTakeDamage, OnTakeDamage);
}
public OnClientDisconnect(client)
{
    SDKUnhook(client, SDKHook_OnTakeDamage, OnTakeDamage);
}
public cod_class_enabled(client)
{
    ma_klase[client] = true;
}
public cod_class_disabled(client)
{
    ma_klase[client] = false;
}
public Action:OnTakeDamage(victim, &attacker, &inflictor, &Float:damage, &damagetype)
{
    if(!IsValidClient(victim) || !IsValidClient(attacker))
        return Plugin_Continue;

    if(!ma_klase[attacker] || GetClientTeam(victim) == GetClientTeam(attacker))
        return Plugin_Continue;

    if(cod_get_user_item(victim) == cod_get_itemid("Nanosuit"))
        return Plugin_Continue;

    new String:weapon[32];
    GetClientWeapon(attacker, weapon, sizeof(weapon));
    if(StrEqual(weapon, "weapon_knife") && damagetype & DMG_SLASH && GetClientButtons(attacker) & IN_ATTACK2)
    {
        new obrazenia_gracza = GetClientHealth(victim)+1;
        cod_inflict_damage(victim, attacker, 0, obrazenia_gracza);
    }

    return Plugin_Changed;
}

Oczywiście tym sposobem, możemy również dodać odporność na rakiety, miny itp. A w wypadku odporności na klasę funkcja będzie wyglądać tak:

if(cod_get_user_class(ofiara) == cod_get_classid("Nazwa Klasy"))

Silnik wraz z paczką modyfikacji, można nabyć wyłącznie poprzez kontakt ze mną. Więcej o tym w sygnaturze.

Edytowane przez Linux`

Call Of Duty Mod Nowy v1.1 CS:GO

 

https://mygo.pl/topic/4986-call-of-duty-mod-nowy-v11/

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×
×
  • Dodaj nową pozycję...