Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
CS:GO

[CoD Nowy] Jak dodać item nanosuit

cs:go

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 Linux'

    Pan Pomocny

  • Power User

Reputacja: 549
Wszechwiedzący

  • Postów:1 501
  • Steam:steam
  • Imię:Sebastian
  • Lokalizacja:AmxMod i SourceMod
Offline

Napisano 17.04.2016 19:21

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

 

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

#include <sourcemod>
#include <codmod>

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

public Plugin:myinfo =
{
    name = nazwa,
    author = "Linux`",
    description = "Cod Item",
    version = "1.0",
    url = "http://steamcommunity.com/id/linux2006"
};
public OnPluginStart()
{
    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 <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 Plugin:myinfo =
{
    name = nazwa,
    author = "Linux`",
    description = "Cod Klasa",
    version = "1.0",
    url = "http://steamcommunity.com/id/linux2006"
};
public OnPluginStart()
{
    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)
        cod_inflict_damage(victim, attacker, GetClientHealth(victim)+1);

    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.


  • +
  • -
  • 0

b35020692_qesnxqa.png






Również z jednym lub większą ilością słów kluczowych: cs:go

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych