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
 

ceglacl - zdjęcie

ceglacl

Rejestracja: 21.08.2014
Aktualnie: Nieaktywny
Poza forum Ostatnio: 17.10.2015 11:58
-----

Moje tematy

Regeneracja HP dla klasy

31.10.2014 22:04

Cześć! To mój pierwszy post tutaj, więc proszę o wyrozumiałość, nie widziałem takiego tematu więc piszę.

 

w bibliotekach dodaj

#include <fun>

pod tym wyżej dodaj

#define TASK_WYSZKOLENIE_SANITARNE 736

pod

new const wytrzymalosc = 0;

dodaj

new bool:ma_klase[33];

do public cod_class_enabled(id) dpdaj

set_task(X.0, "WyszkolenieSanitarne", id+TASK_WYSZKOLENIE_SANITARNE); /// w Miejsce X wpisz czas

na koniec dodaj

 
public WyszkolenieSanitarne(id)
{
id -= TASK_WYSZKOLENIE_SANITARNE;


if(!is_user_connected(id))
return PLUGIN_CONTINUE;


if(ma_klase[id])
{
set_task(X.0, "WyszkolenieSanitarne", id+TASK_WYSZKOLENIE_SANITARNE); /// w miejsce X wpisz czas


if(is_user_alive(id))
{
new cur_health = get_user_health(id);
new max_health = 100+cod_get_user_health(id);
new new_health = cur_health+Z<max_health? cur_health+Z: max_health; // w miejsce Z wpisz ilosc HP
set_user_health(id, new_health);
}
}
return PLUGIN_CONTINUE;
}

 

Oczywiście nie zbędne jest

 

public cod_class_enabled(id)
{
ma_klase[id] = true;
}


public cod_class_disabled(id)
{
ma_klase[id] = false;
}

Dziękuje, kod zaczerpnąłem z Wyszkolenia Sanitarnego :)

[ROZWIĄZANE] Jak zrobic wartosc losowa ?

22.10.2014 19:31

Witam! Hmmm... wytłumaczy mi ktos jak zrobic wartosc losowa, np 1/5 z braku wartosc ? Np przy perku twardy baniak ?

3 Sloty na perki/

18.09.2014 09:20

WItam, jak zrobić 3 sloty na perk?

Podpalenie do klasy

06.09.2014 15:55

Mam pytanie, jak dodać podpalenie 1/x dla klasy ?

[ROZWIĄZANE] Problem z klasa Ninja (nie kompiluje się)

21.08.2014 15:53

Otóż mam problem z tą klasą,nie chce się skompilowac c co jest nie tak ?

Cytat

 

#include <amxmodx>

#include <amxmisc>
#include <codmod>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
#include <xs>
        
new const nazwa[]   = "Ninja(60lvl)";
new const opis[]    = "Posiada 95% niewidke na nożu,400 gravitki, 4 skoki, atak z dystansu.";
new const bronie    = 0;
new const zdrowie   = 0;
new const kondycja  = 25;
new const inteligencja = 0;
new const wytrzymalosc = 0;
 
new bool:ma_klase[33];
 
g_knatt[33];
    
new skoki[33];
 
public plugin_init()
{
register_plugin(nazwa, "1.0", "amxx.pl");
 
cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc);
 
register_event("CurWeapon", "eventKnife_Niewidzialnosc", "be", "1=1");
   
RegisterHam(Ham_Spawn, "player", "fwSpawn_Grawitacja", 1);
 
   
register_forward(FM_CmdStart, "fwCmdStart_MultiJump");
 
register_forward(FM_TraceLine, "fw_TraceLine");
register_forward(FM_TraceHull, "fw_TraceHull");
 
}
 
public cod_class_enabled(id)
{
new dostepna = 60; //Od którego poziomu ma być klasa
new level = cod_get_user_level(id);
if(level < dostepna)
{
client_print(id, print_chat, "[%s]Klasa dostepna od %i poziomu.", nazwa, dostepna) //Informacja jeśli ktoś wybierze klasę a nie ma wybranego poziomu wbitego
return COD_STOP;
}
 
  entity_set_float(id, EV_FL_gravity, 400.0/800.0);
ma_klase[id] = true;
 
}
 
public cod_class_disabled(id)
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
    
  entity_set_float(id, EV_FL_gravity, 1.0);
ma_klase[id] = false;
 
g_knatt[id] = 0
}
 
public eventKnife_Niewidzialnosc(id)
{
if(!ma_klase[id])
return;
 
if( read_data(2) == CSW_KNIFE )
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 10);
}
else
{
set_rendering(id,kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255);
}
}
 
public fwSpawn_Grawitacja(id)
{
if(ma_klase[id])
entity_set_float(id, EV_FL_gravity, 400.0/800.0);
}
 
 
public fwCmdStart_MultiJump(id, uc_handle)
{
if(!is_user_alive(id) || !ma_klase[id])
return FMRES_IGNORED;
 
new flags = pev(id, pev_flags);
 
if((get_uc(uc_handle, UC_Buttons) & IN_JUMP) && !(flags & FL_ONGROUND) && !(pev(id, pev_oldbuttons) & IN_JUMP) && skoki[id])
{
skoki[id]--;
new Float:velocity[3];
pev(id, pev_velocity,velocity);
velocity[2] = random_float(265.0,285.0);
set_pev(id, pev_velocity,velocity);
}
else if(flags & FL_ONGROUND)
skoki[id] = 3;
 
return FMRES_IGNORED;
}
 
public fw_TraceLine(Float:vecStart[3], Float:vecEnd[3], conditions, id, ptr)
{
if(!is_user_connected(id)) return FMRES_IGNORED;
 
if (!ma_klase[id]) return FMRES_IGNORED;
 
static Float:flFraction, wead_id;
wead_id = get_user_weapon(id);
 
if (wead_id != CSW_KNIFE) return FMRES_IGNORED;
 
static Float:vecAngles[3], Float:vecForward[3], attack_mod, Float:Distance;
pev(id, pev_v_angle, vecAngles);
engfunc(EngFunc_MakeVectors, vecAngles);
 
global_get(glb_v_forward, vecForward);
 
attack_mod = floatround((vecStart[0]-vecEnd[0])/vecForward[0]);
 
if (attack_mod == -48) Distance = 500+(cod_get_user_intelligence(id)*5.0)
else if (attack_mod == -32) Distance = 500+(cod_get_user_intelligence(id)*5.0)
else
{
g_knatt[id] = 0;
return FMRES_IGNORED;
}
 
if (Distance == 0) return FMRES_IGNORED;
 
if ((attack_mod == -48 && Distance < 48.0) || (attack_mod == -32 && Distance < 32.0))
g_knatt[id] = 2;
else g_knatt[id] = 1;
 
get_tr2(ptr, TR_flFraction, flFraction);
 
if ((g_knatt[id] == 1 && flFraction >= 1.0) || g_knatt[id] == 2)
{
xs_vec_mul_scalar(vecForward, Distance, vecForward);
xs_vec_add(vecStart, vecForward, vecEnd);
 
engfunc(EngFunc_TraceLine, vecStart, vecEnd, conditions, id, ptr);
return FMRES_SUPERCEDE;
}
else g_knatt[id] = 0;
 
return FMRES_SUPERCEDE;
}
public fw_TraceHull(Float:vecStart[3], Float:vecEnd[3], conditions, hull, id, ptr)
{
if (!ma_klase[id]) return FMRES_IGNORED;
 
if (g_knatt[id])
{
if (g_knatt[id] == 1) return FMRES_IGNORED;
else return FMRES_SUPERCEDE;
}
 
return FMRES_IGNORED;
}