←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
[ROZWIĄZANE] Jak dodać widoczność w klasie...


Najlepsza odpowiedź (Kalifta) 18.08.2013 14:10

Ja to olałem i działa, radzę ci tak samo :)

Przejdź do postu
Zablokowany

  • +
  • -
juzekbuzek233 - zdjęcie juzekbuzek233 17.08.2013

Witam...

Mam klase Ninja ale nie wiem gdzie zmienić aby była ona bardziej widoczna.. gdyż obecnie wcale jej nie widać... to samo tyczy się grawitacji.. która linijka i liczba za to odpowiada

 

Spoiler

#include <amxmodx>
#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <cstrike>
#include <colorchat>
#include <fun>
        
new const nazwa[]   = "Ninja [Premium]";
new const opis[]    = "Posiada 1/1 z kosy (PPM), mniejsza grawitacje i jest slabo widoczny";
new const bronie    = (1<<CSW_KNIFE);
new const zdrowie   = 30;
new const kondycja  = 30;
new const inteligencja = 0;
new const wytrzymalosc = 0;
    
new bool:ma_klase[33];

#define DMG_BULLET (1<<1)

public plugin_init()
{
    register_plugin(nazwa, "1.0", "xxx");

    cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);   
    RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
    RegisterHam(Ham_TakeDamage, "player", "TakeDamage");

}

public cod_class_enabled(id)
{
    if(!(get_user_flags(id) & ADMIN_LEVEL_H))
    {
        ColorChat(id, GREY, "[%s] Nie masz uprawnien, aby uzywac tej klasy.", nazwa);
        return COD_STOP;
    }

    set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 9);

     entity_set_float(id, EV_FL_gravity, 350.0/800.0);
    cs_set_user_defuse(id, 1);
    ma_klase[id] = true;
    ColorChat(id, GREY, "[COD:MW3] Klasa %s stworzona przez xxx", nazwa);
   
    return COD_CONTINUE;
}

public cod_class_disabled(id)
{
    set_rendering(id,kRenderFxNone, 0, 180, 0, kRenderTransAlpha, 255);
    
     entity_set_float(id, EV_FL_gravity, 1.0);
    ma_klase[id] = false;
}

public fwSpawn_Grawitacja(id)
{
    if(ma_klase[id])
        entity_set_float(id, EV_FL_gravity, 350.0/800.0);
}

public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
{
        if(!is_user_connected(idattacker))
                return HAM_IGNORED;
        
        if(!ma_klase[idattacker])
                return HAM_IGNORED;
                
        if(get_user_weapon(idattacker) == CSW_KNIFE && damagebits & DMG_BULLET && !(get_user_button(idattacker) & IN_ATTACK))
                cod_inflict_damage(idattacker, this, float(get_user_health(this))-damage+1.0, 0.0, idinflictor, damagebits);
                
        return HAM_IGNORED;
}
 

 
Oraz jak dodać ogarniczenie statystyk... chodzi mi dokładniej o to jak np. dla jednej klasy zrobić max intela 200 a dla innej np. 150 ?
 
Która część silnika za to odpowiada i gdzie to należy zmienić...
Załączony plik  QTM_CodMod.sma   45,72 KB   8 Ilość pobrań
 
Dam nawet 10 plusów. Proszę o pomoc.
Odpowiedz

Daj buziaka - zdjęcie Daj buziaka 17.08.2013

set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 9);

 

to odpowiada za niewidzialność klasy.

 

entity_set_float(id, EV_FL_gravity, 350.0/800.0);

 

to odpowiada za grawitacje.

Odpowiedz

(Kalifta) - zdjęcie (Kalifta) 18.08.2013

Spoiler

 

Limit masz tutaj:

        limit_int = limit_poziomu/2;
	limit_zdr = limit_poziomu/2;
	limit_kon = limit_poziomu/2;
	limit_wyt = limit_poziomu/2;

Zmieniasz go tak:

        limit_int = 500;
	limit_zdr = 1000;
	limit_kon = 150;
	limit_wyt = 400;

Liczby zmieniasz na dowolne, jakie tam chcesz.

Odpowiedz

  • +
  • -
juzekbuzek233 - zdjęcie juzekbuzek233 18.08.2013

Jak tak zmieniłem to przy kompilowaniu wyskakuje tak: QTM_CodMod.sma(1026) : warning 204: symbol is assigned a value that is never used: "limit_poziomu"

 

ale da sie skompilować... jak to naprawić?

Odpowiedz

Najlepsza odpowiedź (Kalifta) - zdjęcie (Kalifta) 18.08.2013

Ja to olałem i działa, radzę ci tak samo :)

Odpowiedz
Zablokowany