Skocz do zawartości

Rekomendowane odpowiedzi

Oczywiście. Robi się to dokładnie tak jak we wszystkich innych pluginach podmieniających modele broni

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
5 godzin temu, Vasto_Lorde napisał:

Oczywiście. Robi się to dokładnie tak jak we wszystkich innych pluginach podmieniających modele broni

 

A na jakiej zasadzie? Widziałem jakiś plugin podmieniający modele lecz nie kipi on pięknym działaniem.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
#include <sourcemod>
#include <cstrike>
#include <sdkhooks>
#include <codmod>
 
new const String:nazwa[] = "Snajper";
new const String:opis[] = "Zadaje 120 procent obrazen z awp (+inteligencja)";
new const String:bronie[] = "#weapon_awp#weapon_deagle";
new const inteligencja = 5;
new const zdrowie = 20;
new const obrazenia = 0;
new const wytrzymalosc = 20;
new const kondycja = 25;
 
char sModelKlasyCT[] = "SCIEZKA DO MODELU KLASY"; // plik .mdl
char sModelKlasyT[] = "SCIEZKA DO MODELU KLASY DLA TERRO";
 
char sPlikiModelu[][] = {
    "PLIK1",
    "PLIK2"  // I TAK DALEJ PLIKI OBU MODELI KLAS
}
/* przyklad modeli
char modelstraznika[][] =  {
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.phy",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.phy",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.vvd"
};
*/
 
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);
    HookEvent("player_spawn", player_spawn);
}
public Action player_spawn(Handle event, const char[] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(GetEventInt(event, "userid"));
    if(ma_klase[client]) // ustawianie modelu klasy
    {
        if(GetClientTeam(client) == CS_TEAM_CT)
            SetEntityModel(client, sModelKlasyCT);
        else if (GetClientTeam(client) == CS_TEAM_T)
            SetEntityModel(client, sModelKlasyT);
    }
}
public OnMapStart()
{
    for(int i; i < sizeof(sPlikiModelu); i++) // pobieranie modeli (plikow modelu)
        AddFileToDownloadsTable(sPlikiModelu[i]);
 
    PrecacheModel(sModelKlasy); // precache modelu
    AddFileToDownloadsTable(sModelKlasy); // pobieranie modelu
}
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(client, &attacker, &inflictor, &Float:damage, &damagetype)
{
    if(!IsValidClient(attacker) || !ma_klase[attacker])
        return Plugin_Continue;
 
    if(!IsValidClient(client) || GetClientTeam(client) == GetClientTeam(attacker))
        return Plugin_Continue;
 
    new String:weapon[32];
    GetClientWeapon(attacker, weapon, sizeof(weapon));
    if(StrEqual(weapon, "weapon_awp") && damagetype & DMG_BULLET)
        cod_inflict_damage(client, attacker, RoundFloat(damage*0.2)+RoundFloat(cod_get_user_maks_intelligence(attacker)*0.5));
 
    return Plugin_Continue;
}

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
6 minut temu, Sqower napisał:
#include <sourcemod>
#include <cstrike>
#include <sdkhooks>
#include <codmod>
 
new const String:nazwa[] = "Snajper";
new const String:opis[] = "Zadaje 120 procent obrazen z awp (+inteligencja)";
new const String:bronie[] = "#weapon_awp#weapon_deagle";
new const inteligencja = 5;
new const zdrowie = 20;
new const obrazenia = 0;
new const wytrzymalosc = 20;
new const kondycja = 25;
 
char sModelKlasyCT[] = "SCIEZKA DO MODELU KLASY"; // plik .mdl
char sModelKlasyT[] = "SCIEZKA DO MODELU KLASY DLA TERRO";
 
char sPlikiModelu[][] = {
    "PLIK1",
    "PLIK2"  // I TAK DALEJ PLIKI OBU MODELI KLAS
}
/* przyklad modeli
char modelstraznika[][] =  {
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.phy",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard1/guard1_arms.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.phy",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3.vvd",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.dx90.vtx",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.mdl",
    "models/player/custom_player/kuristaja/jailbreak/guard3/guard3_arms.vvd"
};
*/
 
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);
    HookEvent("player_spawn", player_spawn);
}
public Action player_spawn(Handle event, const char[] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(GetEventInt(event, "userid"));
    if(ma_klase[client]) // ustawianie modelu klasy
    {
        if(GetClientTeam(client) == CS_TEAM_CT)
            SetEntityModel(client, sModelKlasyCT);
        else if (GetClientTeam(client) == CS_TEAM_T)
            SetEntityModel(client, sModelKlasyT);
    }
}
public OnMapStart()
{
    for(int i; i < sizeof(sPlikiModelu); i++) // pobieranie modeli (plikow modelu)
        AddFileToDownloadsTable(sPlikiModelu[i]);
 
    PrecacheModel(sModelKlasy); // precache modelu
    AddFileToDownloadsTable(sModelKlasy); // pobieranie modelu
}
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(client, &attacker, &inflictor, &Float:damage, &damagetype)
{
    if(!IsValidClient(attacker) || !ma_klase[attacker])
        return Plugin_Continue;
 
    if(!IsValidClient(client) || GetClientTeam(client) == GetClientTeam(attacker))
        return Plugin_Continue;
 
    new String:weapon[32];
    GetClientWeapon(attacker, weapon, sizeof(weapon));
    if(StrEqual(weapon, "weapon_awp") && damagetype & DMG_BULLET)
        cod_inflict_damage(client, attacker, RoundFloat(damage*0.2)+RoundFloat(cod_get_user_maks_intelligence(attacker)*0.5));
 
    return Plugin_Continue;
}

 

 

Można to wykorzystać do ustawienia modelu na broni np mp7?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.


×
×
  • Dodaj nową pozycję...